@deepdesk/deepdesk-sdk 19.2.1-beta.0 → 19.2.1-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +5 -5
- package/dist/index.d.mts +4 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.esm.js +7 -7
- package/dist/index.iife.js +41 -40
- package/package.json +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
var Ti=Object.defineProperty,zu=Object.defineProperties;var Wu=Object.getOwnPropertyDescriptors;var Vn=Object.getOwnPropertySymbols;var wi=Object.prototype.hasOwnProperty,Ei=Object.prototype.propertyIsEnumerable;var Ci=(t,e,n)=>e in t?Ti(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,y=(t,e)=>{for(var n in e||(e={}))wi.call(e,n)&&Ci(t,n,e[n]);if(Vn)for(var n of Vn(e))Ei.call(e,n)&&Ci(t,n,e[n]);return t},b=(t,e)=>zu(t,Wu(e));var M=(t,e)=>{var n={};for(var o in t)wi.call(t,o)&&e.indexOf(o)<0&&(n[o]=t[o]);if(t!=null&&Vn)for(var o of Vn(t))e.indexOf(o)<0&&Ei.call(t,o)&&(n[o]=t[o]);return n};var J=(t,e)=>{for(var n in e)Ti(t,n,{get:e[n],enumerable:!0})};var v=(t,e,n)=>new Promise((o,s)=>{var r=d=>{try{a(n.next(d))}catch(l){s(l)}},i=d=>{try{a(n.throw(d))}catch(l){s(l)}},a=d=>d.done?o(d.value):Promise.resolve(d.value).then(r,i);a((n=n.apply(t,e)).next())});import Ri from"classnames";import qu,{createContext as Xu,useContext as As,useEffect as Ju,useState as Qu}from"react";import Vu,{useContext as ju}from"react";import $u from"classnames";var an=Vu.createContext({});function x(t,e){let r=ju(an),{debug:n}=r,s=M(r,["debug"])[t];return Object.entries(e).reduce((i,[a,d])=>{let l=s==null?void 0:s[a];return b(y({},i),{[a]:$u(d,l,n?`${t}__${a}`:!1)})},{})}var ki={root:"dd-4s9wq"};import{jsx as jn,jsxs as Gu}from"react/jsx-runtime";var $n=()=>Gu("svg",{className:ki.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[jn("defs",{children:jn("style",{children:".cls-1 { fill: #b3b3b3; }"})}),jn("title",{children:"Failed loading image"}),jn("path",{className:"cls-1",d:"M15 130.896V16.994c0-1.097.898-1.994 2.007-1.994h150.986A2 2 0 0 1 170 16.994v69.147L133.015 51 87.26 120.377l-35.863-17.758L15 130.896zM2 0C.895 0 0 .887 0 2v166c0 1.105.887 2 2 2h181c1.105 0 2-.887 2-2V2c0-1.105-.887-2-2-2H2zm49 72c11.046 0 20-9.178 20-20.5S62.046 31 51 31s-20 9.178-20 20.5S39.954 72 51 72z",fillRule:"evenodd"})]});var Ls={root:"dd-c9KvZ",imageWrapper:"dd-sE7D9",image:"dd-bEGMz",content:"dd-oFIQa",title:"dd-mSgoo",contentIsCropped:"dd-Uvjv4",lineClamp:"dd-ApQo-"};import{jsx as It}from"react/jsx-runtime";var Gn=Xu(Ls),Zu=({title:t,src:e})=>{let n=As(Gn),[o,s]=Qu(!1);return Ju(()=>{s(!1)},[e]),It("div",{className:n.imageWrapper,children:e&&!o?It("img",{className:n.image,alt:t,src:e,onError:()=>s(!0)}):It($n,{})})},Yu=({className:t,lineClamp:e=!1,cropText:n=!1,children:o})=>{let s=As(Gn);return It("div",{className:Ri(s.content,t,{[s.contentIsCropped]:n,[s.lineClamp]:e}),children:o})},ep=r=>{var i=r,{as:t="h1",cropText:e=!1,className:n,children:o}=i,s=M(i,["as","cropText","className","children"]);let a=As(Gn);return qu.createElement(t,y({className:Ri(a.title,n,{[a.contentIsCropped]:e})},s),o)},qn=({children:t})=>{let e=x("Card",Ls);return It("div",{className:e.root,children:It(Gn.Provider,{value:e,children:t})})};qn.Image=Zu;qn.Content=Yu;qn.Title=ep;var D=qn;import tp from"classnames";var Pi={root:"dd-llBx9"};import{jsx as sp}from"react/jsx-runtime";var np={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},op=o=>{var s=o,{className:t,keyCode:e}=s,n=M(s,["className","keyCode"]);let r=x("KeyboardHint",Pi);return sp("span",y({"data-key":np[e],className:tp(t,r.root)},n))},Ms=op;import rp from"classnames";var Ii={root:"dd-e6HXZ"};import{jsx as lp}from"react/jsx-runtime";var ip=o=>{var s=o,{className:t,children:e}=s,n=M(s,["className","children"]);let r=x("Label",Ii);return lp("span",b(y({},n),{className:rp(t,r.root),children:e}))},ap=ip;var Li={root:"dd-FiMI7",subTitleContainer:"dd-98jc7",subtitle:"dd-3MnW8",suggestions:"dd-0SGL8"};import{jsx as Ns,jsxs as cp}from"react/jsx-runtime";var dp=s=>{var r=s,{title:t,children:e,type:n}=r,o=M(r,["title","children","type"]);let i=x("Section",Li);return cp("section",b(y({},o),{className:i.root,"data-section-type":n,children:[t&&Ns("div",{className:i.subTitleContainer,children:Ns("span",{className:i.subtitle,children:t})}),Ns("div",{className:i.suggestions,children:e})]}))},Ae=dp;import hp from"classnames";import{useRef as yp}from"react";import{createContext as up,useCallback as pp,useContext as gp,useEffect as mp}from"react";import{jsx as fp}from"react/jsx-runtime";var Ai=up(null),Mi=({scrollContainerRef:t,children:e})=>{let n=pp(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 fp(Ai.Provider,{value:n,children:e})},Xn=t=>{let e=gp(Ai);mp(()=>{let n=t.current;n&&e(n)},[])};var Ni={root:"dd-uoTXh"};import{jsx as Oi}from"react/jsx-runtime";var vp=({className:t,children:e})=>{let n=x("SectionList",Ni),o=yp(null);return Oi(Mi,{scrollContainerRef:o,children:Oi("div",{ref:o,className:hp(n.root,t),children:e})})},ln=vp;import dn from"classnames";import Sp,{createContext as xp,useCallback as bp,useContext as rt}from"react";var Os={root:"dd-1g-A9",fadein:"dd-McXxq",isClickable:"dd-CTG8E",isSelected:"dd-yhg27",actions:"dd-Nlm6p",actionsIsFixed:"dd-OK-kw",actionButton:"dd-zbXsQ",dropdownList:"dd-AvwWP",dropdownButton:"dd-piaJi",dropdownItem:"dd-qgkTO",dropdownItemButton:"dd-sTE2D",actionButtonIsPrimary:"dd-mhkWS",actionButtonIsDisabled:"dd-0eKLQ",labels:"dd-QKJu6",label:"dd-aMplE",buttonsContainer:"dd-uRYN4",button:"dd-9UE-x",buttonPrimary:"dd-aYDCB",buttonSecondary:"dd--cpPL",buttonWithIcon:"dd-MQVt5",icon:"dd-Jr-ww",buttonDisabled:"dd-agTuH"};import{jsx as de,jsxs as Di}from"react/jsx-runtime";var $e=xp(Os),Cp=o=>{var s=o,{fixed:t,children:e}=s,n=M(s,["fixed","children"]);let r=rt($e);return de("div",b(y({},n),{className:dn(r.actions,{[r.actionsIsFixed]:t}),children:e}))};function Tp(d){var l=d,{as:t,className:e,icon:n,title:o,children:s,disabled:r,variant:i}=l,a=M(l,["as","className","icon","title","children","disabled","variant"]);let c=rt($e);return Di(t||"button",b(y({type:"button",className:dn(c.button,{[c.buttonWithIcon]:n,[c.buttonDisabled]:r,[c.buttonPrimary]:i==="primary",[c.buttonSecondary]:i==="secondary"},e),title:o,"aria-label":o},a),{children:[n&&de("span",{className:c.icon,children:n}),s]}))}var wp=({children:t})=>{let e=rt($e);return de("div",{className:e.buttonsContainer,children:t})},Ep=({className:t,primary:e,disabled:n,label:o,children:s})=>{let r=rt($e);return Di("div",{className:dn(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:n}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[o,de("ul",{className:r.dropdownList,children:s})]})},kp=({index:t,label:e,onClick:n})=>{let o=rt($e);return de("li",{className:o.dropdownItem,children:de("button",{className:o.dropdownItemButton,type:"button","data-index":t,onClick:n,children:e})})},Rp=({className:t,primary:e,disabled:n,onClick:o,label:s})=>{let r=rt($e);return de("button",{type:"button",className:dn(t,r.actionButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:n}),onClick:o!=null?o:(i=>i.stopPropagation()),disabled:n,"aria-hidden":n,children:s})},Pp=({labels:t})=>{let e=rt($e);return de("div",{className:e.labels,children:t.map(n=>de("span",{className:e.label,children:n},n))})},Ge=Sp.forwardRef((a,i)=>{var d=a,{className:t,selected:e,onClick:n,children:o,as:s="div"}=d,r=M(d,["className","selected","onClick","children","as"]);let l=x("Suggestion",Os),c=bp(p=>{p.preventDefault(),n&&n(p)},[n]);return de(s,b(y({},r),{ref:i,className:dn(t,l.root,{[l.isSelected]:e,[l.isClickable]:!!n}),onClick:c,children:de($e.Provider,{value:l,children:o})}))});Ge.Labels=Pp;Ge.Actions=Cp;Ge.ActionButton=Rp;Ge.DropdownButton=Ep;Ge.DropdownItem=kp;Ge.ButtonsContainer=wp;Ge.Button=Tp;var I=Ge;import Ip from"classnames";var _i={root:"dd-W35K-",isWithDivider:"dd-sscOy"};import{jsx as Ap}from"react/jsx-runtime";var Lp=({withDivider:t,children:e})=>{let n=x("SuggestionList",_i);return Ap("div",{"data-testid":"suggestions-overlay-list",className:Ip(n.root,{[n.isWithDivider]:t}),children:e})},Z=Lp;import Mp from"classnames";var Fi={root:"dd-oWarc",isCollapsed:"dd-tfZI0"};import{jsx as Ds}from"react/jsx-runtime";var Np=({className:t,isCollapsed:e,title:n,onClick:o})=>{let s=x("ToggleButton",Fi);return Ds("button",{type:"button",className:Mp(s.root,t,{[s.isCollapsed]:e}),onClick:o,title:n,children:Ds("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:Ds("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},Lt=Np;var Hi=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,Jn=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var Bi=/x-deepdesk-(([a-z0-9\-_])+-version)/,Qn=["cues","custom-data","custom-data-banner","knowledge-assist"],Ui=Intl.DateTimeFormat().resolvedOptions().timeZone,Me=(g=>(g.SEARCH="search",g.TEMPLATE="template",g.ELASTIC_SEARCH="search-autocomplete",g.GPT="gpt",g.TRIE="trie",g.TRIE_WITH_TYPOS="trie-with-typos",g.SEMANTIC="semantic",g.TEXT_RECOMMENDATION="text_recommendation",g.URL_RECOMMENDATION="url_recommendation",g.LINK_RECOMMENDATION="link_recommendation",g.PERSONAL_COLLECTION="personal-collection",g.PERSONAL_COLLECTION_SEARCH="personal-collection-search",g.SEARCH_OVERLAY="search-overlay",g.SEARCH_PREVIEW="search-preview",g.SEARCH_URL="search-url",g.STYLE="style",g))(Me||{}),At=(i=>(i.ENTER="enter",i.TAB="tab",i.ARROW="arrow",i.HOTKEY="hotkey",i.MOUSE="mouse",i.SPACE="space",i))(At||{});import{createContext as _m,Fragment as Fm,useContext as mr,useEffect as Hm,useRef as yl,useState as yt}from"react";import{useDispatch as Bm,useSelector as Um}from"react-redux";import{createAsyncThunk as _s,createSlice as Op}from"@reduxjs/toolkit";var Zn=(n=>(n.NL_NL="nl-NL",n.EN_US="en-US",n))(Zn||{});var Dp={isLoggedIn:null,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1,loginError:null},Q=t=>t.auth.isLoggedIn;var Ki=t=>t.auth.verifyFetchState,zi=t=>t.auth.showLoginOverlay,Wi=t=>t.auth.loginError,Ne=_s("auth/validate",(t,e)=>v(null,null,function*(){return e.extra.deepdeskAPI.isLoggedIn()})),Vi=_s("auth/requestLogin",(n,o)=>v(null,[n,o],function*({email:t},e){let{deepdeskAPI:s}=e.extra;return s.requestLoginByEmail(t)})),cn=_s("auth/verifyLoginToken",(n,o)=>v(null,[n,o],function*({token:t},e){let{deepdeskAPI:s}=e.extra;return s.verifyLoginToken(t)})),ji=Op({name:"auth",initialState:Dp,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload},setLoginError(t,e){t.loginError=e.payload},clearLoginError(t){t.loginError=null}},extraReducers:t=>{t.addCase(Ne.pending,e=>{e.loginFetchState="loading"}),t.addCase(Ne.fulfilled,(e,{payload:n})=>{e.isLoggedIn=n,e.loginFetchState="done"}),t.addCase(Ne.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(cn.pending,e=>{e.verifyFetchState="loading"}),t.addCase(cn.rejected,e=>{e.verifyFetchState="error"}),t.addCase(cn.fulfilled,(e,n)=>{n.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:Mt,setShowLoginOverlay:$i,setLoginError:Fs,clearLoginError:Yn}=ji.actions,Gi=ji.reducer;import{createAction as jp,createSelector as ea,createSlice as $p}from"@reduxjs/toolkit";import{diffChars as Gp}from"diff";function qi(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function qe(t,e,n=10){let o=typeof t,s=typeof e;if(n===0)throw new Error("Max depth deepEqual, possible circular references?");return o!==s?!1:t==null||o==="string"||o==="number"||o==="boolean"?t===e:Array.isArray(t)&&Array.isArray(e)?t.length!==e.length?!1:t.every((r,i)=>qe(r,e[i],n-1)):qi(t)&&qi(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>qe(t[i],e[i],n-1)):!1}function _p(t){return Math.max(...t.map(e=>e.length))}function Fp(t,e){let n=t.reduce((o,s)=>{if(s){let r=o[s]?o[s]+1:1;return b(y({},o),{[s]:r})}return o},{});return Object.keys(n).reduce((o,s)=>(n[s]<e&&o.push(s),o),[])}function Xi(t,e){let o=[...t.map(({text:s})=>s.split(/\b(\w+)\b/))];for(let s=0;s<_p(o);s++){let r=Fp(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 Hp=2;function Ji(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let n=Xi(t,Hp);return n&&n.text!==e?n:t[0]}import{createAction as Up,createAsyncThunk as Nt,createSlice as Kp}from"@reduxjs/toolkit";var Bp={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},k=Bp;var Qi={current:null,isSupported:null},j=Up("resetConversation"),Zi=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.externalId)||null},Se=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},Ot=t=>t.conversation.isSupported,Hs=Nt("conversation/isSupported",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.isConversationSupported(t.externalId,t.options)}),eo=Nt("conversation/create",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.createConversation(t)}),to=Nt("conversation/byExternalId",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.getConversationByExternalId(t.externalId,t.options)}),no=Nt("conversation/update",(t,e)=>{let{deepdeskAPI:n}=e.extra,o=Se(e.getState());if(!o)throw new Error("No current conversation to update");return n.updateConversation(o,t)}),Bs=Nt("conversation/upsert",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.getConversationByExternalId(t.externalId).catch(()=>null).then(o=>{if(!o)return n.createConversation(t);let{agentId:s,agentName:r,agentEmail:i,agentNickname:a,metadata:d}=t;return n.updateConversation(o.id,{agentId:s,agentEmail:i,agentName:r,agentNickname:a,metadata:d})})}),Us=Nt("conversation/postMessages",(t,e)=>{let{deepdeskAPI:n}=e.extra,o=Se(e.getState());if(!o)throw new Error("No current conversation to update messages");return n.postMessages(o,t.map(s=>y({},s)))}),zp=[eo.rejected,to.rejected,no.rejected,Us.rejected].map(t=>t==null?void 0:t.toString());function Wp(t){return zp.includes(t.type)}var Vp=Kp({name:"conversation",initialState:Qi,reducers:{},extraReducers:t=>{t.addCase(Hs.fulfilled,(e,n)=>{e.isSupported=n.payload}).addCase(eo.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(to.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(Bs.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(no.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(j,()=>Qi).addMatcher(Wp,(e,n)=>{var o;throw k.info("Conversation action rejected",n.type,((o=n.error)==null?void 0:o.message)||"No message"),new Error(n.error.message)})}}),Yi=Vp.reducer;var it={text:"",html:null,selection:{start:0,end:0},beforeInputChange:null,mixedSuggestion:null,textSuggestions:[],pinnedSuggestions:[],selectedSuggestionIndex:-1,metrics:{numCharsTyped:0,numCharsPasted:0,numCharsCut:0,numCharsDeleted:0,numPaste:0,agentStartedTypingTimestamp:null,externalTimeTotalSeconds:null,pastes:[],deletions:[],offeredTextSuggestions:[],textSuggestions:[],cuts:[]}};function Ks(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 oo=jp("input/applyImageSuggestion"),ta=$p({name:"input",initialState:it,reducers:{setInput(t,e){var r,i;let{beforeInputChange:n}=t,{text:o,html:s}=e.payload;if(t.text=o,t.html=s!=null?s:null,o==="")t.metrics=it.metrics,t.textSuggestions=[],t.mixedSuggestion=null;else if(n!==null&&t.text!==n.text){let{key:a,shiftKey:d,ctrlKey:l,metaKey:c,altKey:p}=n.keyDown;switch(a){case"Enter":d&&(t.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:u}=t,m=Gp(n.text,u);n.text.length-u.length>1&&t.metrics.deletions.push(...m.filter(f=>f.removed).map(f=>f.value)),t.metrics.numCharsDeleted+=n.text.length-u.length;break}case"Shift":case"Meta":case"Tab":break;case"C":case"V":case"X":case"c":case"v":case"x":if(l||c)break;default:if(!l&&!c&&!p){t.metrics.numCharsTyped+=1;let u=((r=n.selection)==null?void 0:r.start)!==void 0&&((i=n.selection)==null?void 0:i.end)!==void 0?n.text.substring(n.selection.start,n.selection.end):null;u&&u.length>0&&(t.metrics.numCharsDeleted+=u.length,t.metrics.deletions.push(u))}}t.metrics.agentStartedTypingTimestamp||(t.metrics.agentStartedTypingTimestamp=Date.now())}t.beforeInputChange=null},sendMessage(t,e){t.pinnedSuggestions=t.pinnedSuggestions.filter(n=>!t.metrics.textSuggestions.some(o=>o.text===n.text&&o.source===n.source))},setSelection(t,e){e.payload!==null&&(qe(t.selection,e.payload)||(t.selection=e.payload))},commitSuggestion(t,e){let n=e.payload,{text:o,suggestion:{source:s,abVariant:r,abTestName:i,trainingJobs:a,sourceText:d,searchTerm:l,assistantCode:c,text:p},eventMetrics:{inputType:u},replace:m}=n,f=s==="search"||s==="personal-collection-search",h=o.slice(t.text.substring(0,t.selection.start).length);(f||m==="selection")&&(h=o),n.suggestion.source==="search-overlay"&&(h=p),t.metrics.textSuggestions.push({text:h,source:s,assistantCode:c,abVariant:r,abTestName:i,inputType:u,sourceText:d,trainingJobs:a||[],searchTerm:f?t.text:l}),t.textSuggestions=[],t.selectedSuggestionIndex=-1},offeredTextSuggestion(t,e){let{text:n,suggestion:{source:o}}=e.payload;t.metrics.offeredTextSuggestions.find(r=>r.text===n)||t.metrics.offeredTextSuggestions.push({text:n,source:o})},registerKeyDown(t,e){let{key:n}=e.payload;["Control","Meta","Shift","Alt"].includes(n)||(t.beforeInputChange={text:t.text,selection:t.selection,keyDown:e.payload})},registerKeyUp(t,e){},registerCut(t,e){let{metrics:n}=t,o=e.payload;t.metrics=b(y({},t.metrics),{numCharsCut:n.numCharsCut+o.length,cuts:[...n.cuts,o]})},registerPaste(t,e){let{metrics:n}=t,{text:o,selectionText:s}=e.payload,r=n.numCharsDeleted+(s!=null&&s.length?s.length:0),i=s!=null&&s.length?[...n.deletions,s]:n.deletions;t.metrics=b(y({},t.metrics),{numCharsDeleted:r,deletions:i,numCharsPasted:n.numCharsPasted+o.length,numPaste:n.numPaste+1,pastes:[...n.pastes,o]})},selectNextTextSuggestion(t){let e=t.textSuggestions.length+t.pinnedSuggestions.length;t.selectedSuggestionIndex=t.selectedSuggestionIndex<e-1?t.selectedSuggestionIndex+1:t.selectedSuggestionIndex},selectPreviousTextSuggestion(t){t.selectedSuggestionIndex=t.selectedSuggestionIndex>=0?t.selectedSuggestionIndex-1:t.selectedSuggestionIndex},selectTextSuggestionByIndex(t,e){t.selectedSuggestionIndex=e.payload},setTextSuggestions(t,e){if(t.selectedSuggestionIndex=-1,t.textSuggestions=e.payload,e.payload.length===0){t.mixedSuggestion=null;return}let n=t.text.substring(0,t.selection.end),o=Ji(e.payload,n);t.mixedSuggestion=o!=null&&o.text.includes(n)?o:null},setPinnedSuggestions(t,e){t.pinnedSuggestions=e.payload},removePinnedSuggestions(t,e){t.pinnedSuggestions=t.pinnedSuggestions.filter(o=>o.source!==e.payload.source||e.payload.assistantCode&&o.assistantCode!==e.payload.assistantCode?!0:e.payload.text?o.text!==e.payload.text:!1);let n=t.textSuggestions.length+t.pinnedSuggestions.length;t.selectedSuggestionIndex>n-1&&(t.selectedSuggestionIndex=-1)},setMetrics(t,{payload:e}){t.metrics=e},resetMetrics(t){t.metrics=it.metrics}},extraReducers:t=>{t.addCase(j,e=>{e.mixedSuggestion=it.mixedSuggestion,e.textSuggestions=it.textSuggestions,e.selectedSuggestionIndex=it.selectedSuggestionIndex,e.metrics=it.metrics})}}),Dt=t=>t.input.text.substring(0,t.input.selection.end),qp=t=>t.input.mixedSuggestion,Xp=t=>t.input.pinnedSuggestions,Jp=t=>t.input.textSuggestions,un=t=>t.input.selectedSuggestionIndex,at=ea([Jp,Xp],(t,e)=>[...t,...e]),_t=ea([at,qp,un],(t,e,n)=>n>-1?t[n]:e),na=t=>t.input.selection,{commitSuggestion:re,offeredTextSuggestion:oa,registerCut:sa,registerKeyDown:ra,registerKeyUp:ia,registerPaste:aa,selectNextTextSuggestion:la,selectPreviousTextSuggestion:da,selectTextSuggestionByIndex:so,setInput:ro,setMetrics:ca,setPinnedSuggestions:Ft,removePinnedSuggestions:lt,setSelection:io,setTextSuggestions:Xe,resetMetrics:ua,sendMessage:dt}=ta.actions,pa=ta.reducer;import{createAsyncThunk as eg,createSelector as tg,createSlice as ng}from"@reduxjs/toolkit";import{createAsyncThunk as ao,createSlice as Qp}from"@reduxjs/toolkit";function ga(t){try{return Intl.DateTimeFormat(void 0,{timeZone:t}),!0}catch(e){return!1}}var Zp={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,customData:void 0,platformVariables:void 0,fetchState:"idle",showNicknameDialog:!1},Ht=t=>{var e;return(e=t.info.agentInfo)!=null?e:null},ma=t=>{var e;return(e=t.info.visitorInfo)!=null?e:null},fa=t=>{var e;return(e=t.info.customData)!=null?e:null},gn=({info:{visitorInfo:t,agentInfo:e}})=>{var n,o;return{timezone:t!=null&&t.visitorTimeZone&&ga(t.visitorTimeZone)?t.visitorTimeZone:Ui,agentName:(n=e==null?void 0:e.agentNickname)!=null?n:"",visitorName:(o=t==null?void 0:t.visitorName)!=null?o:""}},Yp=[["agentNickname","nickname"],["agentDefaultLocale","defaultLocale"],["agentEmail","email"]],ha=ao("info/setAgentNickname",(n,o)=>v(null,[n,o],function*({agentNickname:t},e){var i;let{deepdeskAPI:s}=e.extra,r=yield s.patchMe({nickname:t});return{agentNickname:(i=r==null?void 0:r.nickname)!=null?i:t}})),pn=ao("info/setAgentInfo",(t,e)=>v(null,null,function*(){var r,i,a;let{deepdeskAPI:n}=e.extra,o=yield n.getMe(),s=[];if(t.agentId&&t.skipSync!==!0&&s.push(n.postIdentity({externalId:t.agentId})),t.skipSync!==!0){let d=Yp.reduce((l,[c,p])=>!o[p]&&c in t?b(y({},l),{[p]: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}})),zs=ao("info/setAgentSettings",(t,e)=>v(null,null,function*(){let{deepdeskAPI:n}=e.extra,o=yield n.getMe(),s=y(y({},typeof o.uiConfig=="object"?o.uiConfig:{}),t);return yield n.patchMe({uiConfig:s}),s})),Ws=ao("info/getAgentSettings",(t,e)=>v(null,null,function*(){let{deepdeskAPI:n}=e.extra;return(yield n.getMe()).uiConfig})),ya=Qp({name:"info",initialState:Zp,reducers:{setVisitorInfo(t,e){t.visitorInfo=y(y({},t.visitorInfo),e.payload)},setCustomData(t,e){t.customData=e.payload},setPlatformVariables(t,e){t.platformVariables=e.payload},setShowNicknameDialog(t,e){t.showNicknameDialog=e.payload}},extraReducers:t=>{t.addCase(pn.pending,(e,n)=>{e.fetchState="loading",e.agentInfo=y(y({},e.agentInfo),n.meta.arg)}).addCase(pn.rejected,e=>{e.fetchState="error"}).addCase(pn.fulfilled,(e,n)=>{e.fetchState="done",e.agentInfo=n.payload}).addCase(zs.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase(Ws.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase(j,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:va,setCustomData:Sa,setPlatformVariables:xa,setShowNicknameDialog:ba}=ya.actions,Ca=ya.reducer;function ue(t,e){return e?t==null?(k.warn("replaceVars called with non-string text; upstream contract violation",{keys:Object.keys(e)}),t):Object.entries(e).reduce((n,[o,s])=>n.replaceAll(o,s),t):t}var lo={list:[],fetchState:"idle",isOpen:!1,page:"search",aggregates:{}},Ta=t=>t.search.isOpen,wa=t=>t.search.page,Vs=t=>t.search.list,Ea=t=>t.search.aggregates,og=tg([Vs,(t,e)=>e],(t,e)=>t.filter(n=>n.type===e)),ka=t=>e=>og(e,t),ct=eg("search/getAll",(t,e)=>v(null,null,function*(){var d;let{deepdeskAPI:n}=e.extra,o=e.getState(),s=(d=o.conversation.current)==null?void 0:d.profileCode,{platformVariables:r}=o.info;if(!s)throw new Error("Profile should be provided in order to be able to search");let{results:i,aggregates:a}=yield n.search({profile:s,query:t.query,tags:t.tags,size:t.size,current:t.current,filters:{type:t.type},params:gn(o)});return{results:i.map(l=>b(y(y({},l),l.title&&r?{title:ue(l.title,r)}:{}),{text:ue(l.text,r!=null?r:{}),source:`search-${l.type.toLowerCase()}`,searchTerm:t.query})),aggregates:a}})),Ra=ng({name:"search",initialState:lo,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=lo.fetchState,t.list=lo.list}},extraReducers:t=>{t.addCase(ct.pending,e=>{e.fetchState="loading"}).addCase(ct.rejected,(e,n)=>{e.fetchState="error",k.error(n.error)}).addCase(ct.fulfilled,(e,n)=>{e.fetchState="done",e.list=n.payload.results,e.aggregates=n.payload.aggregates||{}}).addCase(j,()=>lo)}}),{resetSearch:co,setIsOpen:pe,setPage:Bt}=Ra.actions,Pa=Ra.reducer;var js="SetOutputs",Ut="ShowLoginOverlay",mn="UserLoggedIn",sg="UserLoggedOut",Oe="ApplySuggestion",$s="ApplyImageSuggestion",rg="ShowCommandPalette",uo="ShowNicknameDialog",po="ReduxAction",ig="RemovePinnedSuggestion",ag=t=>({[js]:e=>{t.dispatch(b(y({},e),{isBroadcasted:!0}))},[po]:e=>{e.isBroadcasted||t.dispatch(b(y({},e),{isBroadcasted:!0}))},[ig]:e=>{t.dispatch(lt(e))},[rg]:e=>{t.dispatch(pe(e.isOpen)),e.page&&t.dispatch(Bt(e.page))},[uo]:e=>{t.dispatch(ba(e.showNicknameDialog))},[Ut]:e=>{t.dispatch($i(e))},[mn]:()=>{t.dispatch(Ne())},[sg]:()=>{t.dispatch(Ne())},[$s]:e=>{t.dispatch(oo({suggestion:e.suggestion}))},[Oe]:e=>{t.dispatch(re(b(y({},e),{eventMetrics:{inputType:"mouse"},replace:"selection"})))}}),Ia=ag;import{useDispatch as dg}from"react-redux";import{createAsyncThunk as lg}from"@reduxjs/toolkit";function Gs(t){return lg("analytics/logEvent",(e,n)=>{var r,i,a;let o=(i=(r=n.getState())==null?void 0:r.conversation.current)==null?void 0:i.id,s=(a=n.getState())==null?void 0:a.info.agentInfo;return n.extra.deepdeskAPI.sendEvent(e.name,b(y({conversationId:o},s),{data:e.data}))})(t)}function z(){let t=dg();return(e,n)=>v(null,null,function*(){yield t(Gs({name:e,data:n}))})}import{useRef as cg,useState as qs}from"react";import{useDispatch as ug}from"react-redux";function go(t,e){let n=cg(t);n.current=t;let[o,s]=qs(void 0),[r,i]=qs(void 0),[a,d]=qs("idle"),l=ug();return{error:r,state:a,data:o,call:u=>v(null,null,function*(){d("loading"),yield l(n.current(u)).unwrap().then(m=>{s(m),d("done"),e!=null&&e.onSuccess&&(e==null||e.onSuccess(m))}).catch(m=>{i(m),d("error"),e!=null&&e.onError&&(e==null||e.onError(m))})}),reset:()=>{d("idle"),s(void 0),i(void 0)}}}import La,{useContext as pg}from"react";import{jsx as gg}from"react/jsx-runtime";var Aa=La.createContext(null),De=({broadcastEvents:t,children:e})=>{let n=La.useMemo(()=>t,[]);return gg(Aa.Provider,{value:n,children:e})},oe=()=>{let t=pg(Aa);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createContext as kg,useContext as Rg}from"react";var Xs=function(t,e){return Xs=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])},Xs(t,e)};function fn(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");Xs(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}var ie=function(){return ie=Object.assign||function(e){for(var n,o=1,s=arguments.length;o<s;o++){n=arguments[o];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ie.apply(this,arguments)};function Ma(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 mo(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 fo(t,e){var n=e&&e.cache?e.cache:xg,o=e&&e.serializer?e.serializer:vg,s=e&&e.strategy?e.strategy:fg;return s(t,{cache:n,serializer:o})}function mg(t){return t==null||typeof t=="number"||typeof t=="boolean"}function Na(t,e,n,o){var s=mg(o)?o:n(o),r=e.get(s);return typeof r=="undefined"&&(r=t.call(this,o),e.set(s,r)),r}function Oa(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 Js(t,e,n,o,s){return n.bind(e,t,o,s)}function fg(t,e){var n=t.length===1?Na:Oa;return Js(t,this,n,e.cache.create(),e.serializer)}function hg(t,e){return Js(t,this,Oa,e.cache.create(),e.serializer)}function yg(t,e){return Js(t,this,Na,e.cache.create(),e.serializer)}var vg=function(){return JSON.stringify(arguments)},Sg=(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})(),xg={create:function(){return new Sg}},ho={variadic:hg,monadic:yg};var yo;(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"})(yo||(yo={}));var vo=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var le;(function(t){t[t.literal=0]="literal",t[t.argument=1]="argument",t[t.number=2]="number",t[t.date=3]="date",t[t.time=4]="time",t[t.select=5]="select",t[t.plural=6]="plural",t[t.pound=7]="pound",t[t.tag=8]="tag"})(le||(le={}));var So;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(So||(So={}));function Qs(t){return t.type===le.literal}function Zs(t){return t.type===le.argument}function hn(t){return t.type===le.number}function yn(t){return t.type===le.date}function vn(t){return t.type===le.time}function Sn(t){return t.type===le.select}function xn(t){return t.type===le.plural}function Da(t){return t.type===le.pound}function bn(t){return t.type===le.tag}function xo(t){return!!(t&&typeof t=="object"&&t.type===So.number)}function Cn(t){return!!(t&&typeof t=="object"&&t.type===So.dateTime)}function Ys(t){t.forEach(function(e){if(delete e.location,Sn(e)||xn(e))for(var n in e.options)delete e.options[n].location,Ys(e.options[n].value);else hn(e)&&xo(e.style)||(yn(e)||vn(e))&&Cn(e.style)?delete e.style.location:bn(e)&&Ys(e.children)})}function _a(t,e){e===void 0&&(e={}),e=ie({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var n=new vo(t,e).parse();if(n.err){var o=SyntaxError(yo[n.err.kind]);throw o.location=n.err.location,o.originalMessage=n.err.message,o}return e!=null&&e.captureLocation||Ys(n.val),n.val}var ut;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(ut||(ut={}));var Tn=(function(t){fn(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 er=(function(t){fn(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('", "'),'"'),ut.INVALID_VALUE,r)||this}return e})(Tn);var Fa=(function(t){fn(e,t);function e(n,o,s){return t.call(this,'Value for "'.concat(n,'" must be of type ').concat(o),ut.INVALID_VALUE,s)||this}return e})(Tn);var Ha=(function(t){fn(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,'"'),ut.MISSING_VALUE,o)||this}return e})(Tn);var Y;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})(Y||(Y={}));function bg(t){return t.length<2?t:t.reduce(function(e,n){var o=e[e.length-1];return!o||o.type!==Y.literal||n.type!==Y.literal?e.push(n):o.value+=n.value,e},[])}function Cg(t){return typeof t=="function"}function wn(t,e,n,o,s,r,i){if(t.length===1&&Qs(t[0]))return[{type:Y.literal,value:t[0].value}];for(var a=[],d=0,l=t;d<l.length;d++){var c=l[d];if(Qs(c)){a.push({type:Y.literal,value:c.value});continue}if(Da(c)){typeof r=="number"&&a.push({type:Y.literal,value:n.getNumberFormat(e).format(r)});continue}var p=c.value;if(!(s&&p in s))throw new Ha(p,i);var u=s[p];if(Zs(c)){(!u||typeof u=="string"||typeof u=="number")&&(u=typeof u=="string"||typeof u=="number"?String(u):""),a.push({type:typeof u=="string"?Y.literal:Y.object,value:u});continue}if(yn(c)){var m=typeof c.style=="string"?o.date[c.style]:Cn(c.style)?c.style.parsedOptions:void 0;a.push({type:Y.literal,value:n.getDateTimeFormat(e,m).format(u)});continue}if(vn(c)){var m=typeof c.style=="string"?o.time[c.style]:Cn(c.style)?c.style.parsedOptions:o.time.medium;a.push({type:Y.literal,value:n.getDateTimeFormat(e,m).format(u)});continue}if(hn(c)){var m=typeof c.style=="string"?o.number[c.style]:xo(c.style)?c.style.parsedOptions:void 0;m&&m.scale&&(u=u*(m.scale||1)),a.push({type:Y.literal,value:n.getNumberFormat(e,m).format(u)});continue}if(bn(c)){var f=c.children,h=c.value,g=s[h];if(!Cg(g))throw new Fa(h,"function",i);var S=wn(f,e,n,o,s,r),T=g(S.map(function(A){return A.value}));Array.isArray(T)||(T=[T]),a.push.apply(a,T.map(function(A){return{type:typeof A=="string"?Y.literal:Y.object,value:A}}))}if(Sn(c)){var C=c.options[u]||c.options.other;if(!C)throw new er(c.value,u,Object.keys(c.options),i);a.push.apply(a,wn(C.value,e,n,o,s));continue}if(xn(c)){var C=c.options["=".concat(u)];if(!C){if(!Intl.PluralRules)throw new Tn(`Intl.PluralRules is not available in this environment.
|
|
1
|
+
var Ti=Object.defineProperty,zu=Object.defineProperties;var Wu=Object.getOwnPropertyDescriptors;var Vn=Object.getOwnPropertySymbols;var wi=Object.prototype.hasOwnProperty,Ei=Object.prototype.propertyIsEnumerable;var Ci=(t,e,n)=>e in t?Ti(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,y=(t,e)=>{for(var n in e||(e={}))wi.call(e,n)&&Ci(t,n,e[n]);if(Vn)for(var n of Vn(e))Ei.call(e,n)&&Ci(t,n,e[n]);return t},b=(t,e)=>zu(t,Wu(e));var M=(t,e)=>{var n={};for(var o in t)wi.call(t,o)&&e.indexOf(o)<0&&(n[o]=t[o]);if(t!=null&&Vn)for(var o of Vn(t))e.indexOf(o)<0&&Ei.call(t,o)&&(n[o]=t[o]);return n};var J=(t,e)=>{for(var n in e)Ti(t,n,{get:e[n],enumerable:!0})};var v=(t,e,n)=>new Promise((o,s)=>{var r=d=>{try{a(n.next(d))}catch(l){s(l)}},i=d=>{try{a(n.throw(d))}catch(l){s(l)}},a=d=>d.done?o(d.value):Promise.resolve(d.value).then(r,i);a((n=n.apply(t,e)).next())});import Ri from"classnames";import qu,{createContext as Xu,useContext as As,useEffect as Ju,useState as Qu}from"react";import Vu,{useContext as ju}from"react";import $u from"classnames";var an=Vu.createContext({});function x(t,e){let r=ju(an),{debug:n}=r,s=M(r,["debug"])[t];return Object.entries(e).reduce((i,[a,d])=>{let l=s==null?void 0:s[a];return b(y({},i),{[a]:$u(d,l,n?`${t}__${a}`:!1)})},{})}var ki={root:"dd-4s9wq"};import{jsx as jn,jsxs as Gu}from"react/jsx-runtime";var $n=()=>Gu("svg",{className:ki.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[jn("defs",{children:jn("style",{children:".cls-1 { fill: #b3b3b3; }"})}),jn("title",{children:"Failed loading image"}),jn("path",{className:"cls-1",d:"M15 130.896V16.994c0-1.097.898-1.994 2.007-1.994h150.986A2 2 0 0 1 170 16.994v69.147L133.015 51 87.26 120.377l-35.863-17.758L15 130.896zM2 0C.895 0 0 .887 0 2v166c0 1.105.887 2 2 2h181c1.105 0 2-.887 2-2V2c0-1.105-.887-2-2-2H2zm49 72c11.046 0 20-9.178 20-20.5S62.046 31 51 31s-20 9.178-20 20.5S39.954 72 51 72z",fillRule:"evenodd"})]});var Ls={root:"dd-c9KvZ",imageWrapper:"dd-sE7D9",image:"dd-bEGMz",content:"dd-oFIQa",title:"dd-mSgoo",contentIsCropped:"dd-Uvjv4",lineClamp:"dd-ApQo-"};import{jsx as Lt}from"react/jsx-runtime";var Gn=Xu(Ls),Zu=({title:t,src:e})=>{let n=As(Gn),[o,s]=Qu(!1);return Ju(()=>{s(!1)},[e]),Lt("div",{className:n.imageWrapper,children:e&&!o?Lt("img",{className:n.image,alt:t,src:e,onError:()=>s(!0)}):Lt($n,{})})},Yu=({className:t,lineClamp:e=!1,cropText:n=!1,children:o})=>{let s=As(Gn);return Lt("div",{className:Ri(s.content,t,{[s.contentIsCropped]:n,[s.lineClamp]:e}),children:o})},ep=r=>{var i=r,{as:t="h1",cropText:e=!1,className:n,children:o}=i,s=M(i,["as","cropText","className","children"]);let a=As(Gn);return qu.createElement(t,y({className:Ri(a.title,n,{[a.contentIsCropped]:e})},s),o)},qn=({children:t})=>{let e=x("Card",Ls);return Lt("div",{className:e.root,children:Lt(Gn.Provider,{value:e,children:t})})};qn.Image=Zu;qn.Content=Yu;qn.Title=ep;var D=qn;import tp from"classnames";var Pi={root:"dd-llBx9"};import{jsx as sp}from"react/jsx-runtime";var np={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},op=o=>{var s=o,{className:t,keyCode:e}=s,n=M(s,["className","keyCode"]);let r=x("KeyboardHint",Pi);return sp("span",y({"data-key":np[e],className:tp(t,r.root)},n))},Ms=op;import rp from"classnames";var Ii={root:"dd-e6HXZ"};import{jsx as lp}from"react/jsx-runtime";var ip=o=>{var s=o,{className:t,children:e}=s,n=M(s,["className","children"]);let r=x("Label",Ii);return lp("span",b(y({},n),{className:rp(t,r.root),children:e}))},ap=ip;var Li={root:"dd-FiMI7",subTitleContainer:"dd-98jc7",subtitle:"dd-3MnW8",suggestions:"dd-0SGL8"};import{jsx as Ns,jsxs as cp}from"react/jsx-runtime";var dp=s=>{var r=s,{title:t,children:e,type:n}=r,o=M(r,["title","children","type"]);let i=x("Section",Li);return cp("section",b(y({},o),{className:i.root,"data-section-type":n,children:[t&&Ns("div",{className:i.subTitleContainer,children:Ns("span",{className:i.subtitle,children:t})}),Ns("div",{className:i.suggestions,children:e})]}))},Ae=dp;import hp from"classnames";import{useRef as yp}from"react";import{createContext as up,useCallback as pp,useContext as gp,useEffect as mp}from"react";import{jsx as fp}from"react/jsx-runtime";var Ai=up(null),Mi=({scrollContainerRef:t,children:e})=>{let n=pp(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 fp(Ai.Provider,{value:n,children:e})},Xn=t=>{let e=gp(Ai);mp(()=>{let n=t.current;n&&e(n)},[])};var Ni={root:"dd-uoTXh"};import{jsx as Oi}from"react/jsx-runtime";var vp=({className:t,children:e})=>{let n=x("SectionList",Ni),o=yp(null);return Oi(Mi,{scrollContainerRef:o,children:Oi("div",{ref:o,className:hp(n.root,t),children:e})})},ln=vp;import dn from"classnames";import Sp,{createContext as xp,useCallback as bp,useContext as rt}from"react";var Os={root:"dd-1g-A9",fadein:"dd-McXxq",isClickable:"dd-CTG8E",isSelected:"dd-yhg27",actions:"dd-Nlm6p",actionsIsFixed:"dd-OK-kw",actionButton:"dd-zbXsQ",dropdownList:"dd-AvwWP",dropdownButton:"dd-piaJi",dropdownItem:"dd-qgkTO",dropdownItemButton:"dd-sTE2D",actionButtonIsPrimary:"dd-mhkWS",actionButtonIsDisabled:"dd-0eKLQ",labels:"dd-QKJu6",label:"dd-aMplE",buttonsContainer:"dd-uRYN4",button:"dd-9UE-x",buttonPrimary:"dd-aYDCB",buttonSecondary:"dd--cpPL",buttonWithIcon:"dd-MQVt5",icon:"dd-Jr-ww",buttonDisabled:"dd-agTuH"};import{jsx as de,jsxs as Di}from"react/jsx-runtime";var $e=xp(Os),Cp=o=>{var s=o,{fixed:t,children:e}=s,n=M(s,["fixed","children"]);let r=rt($e);return de("div",b(y({},n),{className:dn(r.actions,{[r.actionsIsFixed]:t}),children:e}))};function Tp(d){var l=d,{as:t,className:e,icon:n,title:o,children:s,disabled:r,variant:i}=l,a=M(l,["as","className","icon","title","children","disabled","variant"]);let c=rt($e);return Di(t||"button",b(y({type:"button",className:dn(c.button,{[c.buttonWithIcon]:n,[c.buttonDisabled]:r,[c.buttonPrimary]:i==="primary",[c.buttonSecondary]:i==="secondary"},e),title:o,"aria-label":o},a),{children:[n&&de("span",{className:c.icon,children:n}),s]}))}var wp=({children:t})=>{let e=rt($e);return de("div",{className:e.buttonsContainer,children:t})},Ep=({className:t,primary:e,disabled:n,label:o,children:s})=>{let r=rt($e);return Di("div",{className:dn(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:n}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[o,de("ul",{className:r.dropdownList,children:s})]})},kp=({index:t,label:e,onClick:n})=>{let o=rt($e);return de("li",{className:o.dropdownItem,children:de("button",{className:o.dropdownItemButton,type:"button","data-index":t,onClick:n,children:e})})},Rp=({className:t,primary:e,disabled:n,onClick:o,label:s})=>{let r=rt($e);return de("button",{type:"button",className:dn(t,r.actionButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:n}),onClick:o!=null?o:(i=>i.stopPropagation()),disabled:n,"aria-hidden":n,children:s})},Pp=({labels:t})=>{let e=rt($e);return de("div",{className:e.labels,children:t.map(n=>de("span",{className:e.label,children:n},n))})},Ge=Sp.forwardRef((a,i)=>{var d=a,{className:t,selected:e,onClick:n,children:o,as:s="div"}=d,r=M(d,["className","selected","onClick","children","as"]);let l=x("Suggestion",Os),c=bp(p=>{p.preventDefault(),n&&n(p)},[n]);return de(s,b(y({},r),{ref:i,className:dn(t,l.root,{[l.isSelected]:e,[l.isClickable]:!!n}),onClick:c,children:de($e.Provider,{value:l,children:o})}))});Ge.Labels=Pp;Ge.Actions=Cp;Ge.ActionButton=Rp;Ge.DropdownButton=Ep;Ge.DropdownItem=kp;Ge.ButtonsContainer=wp;Ge.Button=Tp;var I=Ge;import Ip from"classnames";var _i={root:"dd-W35K-",isWithDivider:"dd-sscOy"};import{jsx as Ap}from"react/jsx-runtime";var Lp=({withDivider:t,children:e})=>{let n=x("SuggestionList",_i);return Ap("div",{"data-testid":"suggestions-overlay-list",className:Ip(n.root,{[n.isWithDivider]:t}),children:e})},Z=Lp;import Mp from"classnames";var Fi={root:"dd-oWarc",isCollapsed:"dd-tfZI0"};import{jsx as Ds}from"react/jsx-runtime";var Np=({className:t,isCollapsed:e,title:n,onClick:o})=>{let s=x("ToggleButton",Fi);return Ds("button",{type:"button",className:Mp(s.root,t,{[s.isCollapsed]:e}),onClick:o,title:n,children:Ds("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:Ds("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},At=Np;var Hi=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,Jn=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var Bi=/x-deepdesk-(([a-z0-9\-_])+-version)/,Qn=["cues","custom-data","custom-data-banner","knowledge-assist"],Ui=Intl.DateTimeFormat().resolvedOptions().timeZone,Me=(g=>(g.SEARCH="search",g.TEMPLATE="template",g.ELASTIC_SEARCH="search-autocomplete",g.GPT="gpt",g.TRIE="trie",g.TRIE_WITH_TYPOS="trie-with-typos",g.SEMANTIC="semantic",g.TEXT_RECOMMENDATION="text_recommendation",g.URL_RECOMMENDATION="url_recommendation",g.LINK_RECOMMENDATION="link_recommendation",g.PERSONAL_COLLECTION="personal-collection",g.PERSONAL_COLLECTION_SEARCH="personal-collection-search",g.SEARCH_OVERLAY="search-overlay",g.SEARCH_PREVIEW="search-preview",g.SEARCH_URL="search-url",g.STYLE="style",g))(Me||{}),Mt=(i=>(i.ENTER="enter",i.TAB="tab",i.ARROW="arrow",i.HOTKEY="hotkey",i.MOUSE="mouse",i.SPACE="space",i))(Mt||{});import{createContext as _m,Fragment as Fm,useContext as mr,useEffect as Hm,useRef as yl,useState as vt}from"react";import{useDispatch as Bm,useSelector as Um}from"react-redux";import{createAsyncThunk as _s,createSlice as Op}from"@reduxjs/toolkit";var Zn=(n=>(n.NL_NL="nl-NL",n.EN_US="en-US",n))(Zn||{});var Dp={isLoggedIn:null,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1,loginError:null},Q=t=>t.auth.isLoggedIn;var Ki=t=>t.auth.verifyFetchState,zi=t=>t.auth.showLoginOverlay,Wi=t=>t.auth.loginError,Ne=_s("auth/validate",(t,e)=>v(null,null,function*(){return e.extra.deepdeskAPI.isLoggedIn()})),Vi=_s("auth/requestLogin",(n,o)=>v(null,[n,o],function*({email:t},e){let{deepdeskAPI:s}=e.extra;return s.requestLoginByEmail(t)})),cn=_s("auth/verifyLoginToken",(n,o)=>v(null,[n,o],function*({token:t},e){let{deepdeskAPI:s}=e.extra;return s.verifyLoginToken(t)})),ji=Op({name:"auth",initialState:Dp,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload},setLoginError(t,e){t.loginError=e.payload},clearLoginError(t){t.loginError=null}},extraReducers:t=>{t.addCase(Ne.pending,e=>{e.loginFetchState="loading"}),t.addCase(Ne.fulfilled,(e,{payload:n})=>{e.isLoggedIn=n,e.loginFetchState="done"}),t.addCase(Ne.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(cn.pending,e=>{e.verifyFetchState="loading"}),t.addCase(cn.rejected,e=>{e.verifyFetchState="error"}),t.addCase(cn.fulfilled,(e,n)=>{n.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:Nt,setShowLoginOverlay:$i,setLoginError:Fs,clearLoginError:Yn}=ji.actions,Gi=ji.reducer;import{createAction as jp,createSelector as ea,createSlice as $p}from"@reduxjs/toolkit";import{diffChars as Gp}from"diff";function qi(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function qe(t,e,n=10){let o=typeof t,s=typeof e;if(n===0)throw new Error("Max depth deepEqual, possible circular references?");return o!==s?!1:t==null||o==="string"||o==="number"||o==="boolean"?t===e:Array.isArray(t)&&Array.isArray(e)?t.length!==e.length?!1:t.every((r,i)=>qe(r,e[i],n-1)):qi(t)&&qi(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>qe(t[i],e[i],n-1)):!1}function _p(t){return Math.max(...t.map(e=>e.length))}function Fp(t,e){let n=t.reduce((o,s)=>{if(s){let r=o[s]?o[s]+1:1;return b(y({},o),{[s]:r})}return o},{});return Object.keys(n).reduce((o,s)=>(n[s]<e&&o.push(s),o),[])}function Xi(t,e){let o=[...t.map(({text:s})=>s.split(/\b(\w+)\b/))];for(let s=0;s<_p(o);s++){let r=Fp(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 Hp=2;function Ji(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let n=Xi(t,Hp);return n&&n.text!==e?n:t[0]}import{createAction as Up,createAsyncThunk as Ot,createSlice as Kp}from"@reduxjs/toolkit";var Bp={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},k=Bp;var Qi={current:null,isSupported:null},j=Up("resetConversation"),Zi=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.externalId)||null},Se=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},Dt=t=>t.conversation.isSupported,Hs=Ot("conversation/isSupported",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.isConversationSupported(t.externalId,t.options)}),eo=Ot("conversation/create",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.createConversation(t)}),to=Ot("conversation/byExternalId",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.getConversationByExternalId(t.externalId,t.options)}),no=Ot("conversation/update",(t,e)=>{let{deepdeskAPI:n}=e.extra,o=Se(e.getState());if(!o)throw new Error("No current conversation to update");return n.updateConversation(o,t)}),Bs=Ot("conversation/upsert",(t,e)=>{let{deepdeskAPI:n}=e.extra;return n.getConversationByExternalId(t.externalId).catch(()=>null).then(o=>{if(!o)return n.createConversation(t);let{agentId:s,agentName:r,agentEmail:i,agentNickname:a,metadata:d}=t;return n.updateConversation(o.id,{agentId:s,agentEmail:i,agentName:r,agentNickname:a,metadata:d})})}),Us=Ot("conversation/postMessages",(t,e)=>{let{deepdeskAPI:n}=e.extra,o=Se(e.getState());if(!o)throw new Error("No current conversation to update messages");return n.postMessages(o,t.map(s=>y({},s)))}),zp=[eo.rejected,to.rejected,no.rejected,Us.rejected].map(t=>t==null?void 0:t.toString());function Wp(t){return zp.includes(t.type)}var Vp=Kp({name:"conversation",initialState:Qi,reducers:{},extraReducers:t=>{t.addCase(Hs.fulfilled,(e,n)=>{e.isSupported=n.payload}).addCase(eo.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(to.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(Bs.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(no.fulfilled,(e,n)=>{var o;e.current=n.payload,e.isSupported=!!((o=n.payload)!=null&&o.profileCode)}).addCase(j,()=>Qi).addMatcher(Wp,(e,n)=>{var o;throw k.info("Conversation action rejected",n.type,((o=n.error)==null?void 0:o.message)||"No message"),new Error(n.error.message)})}}),Yi=Vp.reducer;var it={text:"",html:null,suggestionTextStart:0,selection:{start:0,end:0},beforeInputChange:null,mixedSuggestion:null,textSuggestions:[],pinnedSuggestions:[],selectedSuggestionIndex:-1,metrics:{numCharsTyped:0,numCharsPasted:0,numCharsCut:0,numCharsDeleted:0,numPaste:0,agentStartedTypingTimestamp:null,externalTimeTotalSeconds:null,pastes:[],deletions:[],offeredTextSuggestions:[],textSuggestions:[],cuts:[]}};function Ks(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 oo=jp("input/applyImageSuggestion"),ta=$p({name:"input",initialState:it,reducers:{setInput(t,e){var i,a;let{beforeInputChange:n}=t,{text:o,html:s,suggestionTextStart:r}=e.payload;if(t.text=o,t.html=s!=null?s:null,t.suggestionTextStart=o===""?0:Math.max(0,r!=null?r:0),o==="")t.metrics=it.metrics,t.textSuggestions=[],t.mixedSuggestion=null;else if(n!==null&&t.text!==n.text){let{key:d,shiftKey:l,ctrlKey:c,metaKey:p,altKey:u}=n.keyDown;switch(d){case"Enter":l&&(t.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:m}=t,h=Gp(n.text,m);n.text.length-m.length>1&&t.metrics.deletions.push(...h.filter(f=>f.removed).map(f=>f.value)),t.metrics.numCharsDeleted+=n.text.length-m.length;break}case"Shift":case"Meta":case"Tab":break;case"C":case"V":case"X":case"c":case"v":case"x":if(c||p)break;default:if(!c&&!p&&!u){t.metrics.numCharsTyped+=1;let m=((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;m&&m.length>0&&(t.metrics.numCharsDeleted+=m.length,t.metrics.deletions.push(m))}}t.metrics.agentStartedTypingTimestamp||(t.metrics.agentStartedTypingTimestamp=Date.now())}t.beforeInputChange=null},sendMessage(t,e){t.pinnedSuggestions=t.pinnedSuggestions.filter(n=>!t.metrics.textSuggestions.some(o=>o.text===n.text&&o.source===n.source))},setSelection(t,e){e.payload!==null&&(qe(t.selection,e.payload)||(t.selection=e.payload))},commitSuggestion(t,e){let n=e.payload,{text:o,suggestion:{source:s,abVariant:r,abTestName:i,trainingJobs:a,sourceText:d,searchTerm:l,assistantCode:c,text:p},eventMetrics:{inputType:u},replace:m}=n,h=s==="search"||s==="personal-collection-search",f=o.slice(t.text.substring(0,t.selection.start).length);(h||m==="selection")&&(f=o),n.suggestion.source==="search-overlay"&&(f=p),t.metrics.textSuggestions.push({text:f,source:s,assistantCode:c,abVariant:r,abTestName:i,inputType:u,sourceText:d,trainingJobs:a||[],searchTerm:h?t.text:l}),t.textSuggestions=[],t.selectedSuggestionIndex=-1},offeredTextSuggestion(t,e){let{text:n,suggestion:{source:o}}=e.payload;t.metrics.offeredTextSuggestions.find(r=>r.text===n)||t.metrics.offeredTextSuggestions.push({text:n,source:o})},registerKeyDown(t,e){let{key:n}=e.payload;["Control","Meta","Shift","Alt"].includes(n)||(t.beforeInputChange={text:t.text,selection:t.selection,keyDown:e.payload})},registerKeyUp(t,e){},registerCut(t,e){let{metrics:n}=t,o=e.payload;t.metrics=b(y({},t.metrics),{numCharsCut:n.numCharsCut+o.length,cuts:[...n.cuts,o]})},registerPaste(t,e){let{metrics:n}=t,{text:o,selectionText:s}=e.payload,r=n.numCharsDeleted+(s!=null&&s.length?s.length:0),i=s!=null&&s.length?[...n.deletions,s]:n.deletions;t.metrics=b(y({},t.metrics),{numCharsDeleted:r,deletions:i,numCharsPasted:n.numCharsPasted+o.length,numPaste:n.numPaste+1,pastes:[...n.pastes,o]})},selectNextTextSuggestion(t){let e=t.textSuggestions.length+t.pinnedSuggestions.length;t.selectedSuggestionIndex=t.selectedSuggestionIndex<e-1?t.selectedSuggestionIndex+1:t.selectedSuggestionIndex},selectPreviousTextSuggestion(t){t.selectedSuggestionIndex=t.selectedSuggestionIndex>=0?t.selectedSuggestionIndex-1:t.selectedSuggestionIndex},selectTextSuggestionByIndex(t,e){t.selectedSuggestionIndex=e.payload},setTextSuggestions(t,e){if(t.selectedSuggestionIndex=-1,t.textSuggestions=e.payload,e.payload.length===0){t.mixedSuggestion=null;return}let n=at({input:t}),o=Ji(e.payload,n);t.mixedSuggestion=o!=null&&o.text.includes(n)?o:null},setPinnedSuggestions(t,e){t.pinnedSuggestions=e.payload},removePinnedSuggestions(t,e){t.pinnedSuggestions=t.pinnedSuggestions.filter(o=>o.source!==e.payload.source||e.payload.assistantCode&&o.assistantCode!==e.payload.assistantCode?!0:e.payload.text?o.text!==e.payload.text:!1);let n=t.textSuggestions.length+t.pinnedSuggestions.length;t.selectedSuggestionIndex>n-1&&(t.selectedSuggestionIndex=-1)},setMetrics(t,{payload:e}){t.metrics=e},resetMetrics(t){t.metrics=it.metrics}},extraReducers:t=>{t.addCase(j,e=>{e.mixedSuggestion=it.mixedSuggestion,e.textSuggestions=it.textSuggestions,e.selectedSuggestionIndex=it.selectedSuggestionIndex,e.metrics=it.metrics})}}),at=t=>{let{text:e,selection:n,suggestionTextStart:o}=t.input;return e.slice(o,n.end)},qp=t=>t.input.mixedSuggestion,Xp=t=>t.input.pinnedSuggestions,Jp=t=>t.input.textSuggestions,un=t=>t.input.selectedSuggestionIndex,lt=ea([Jp,Xp],(t,e)=>[...t,...e]),_t=ea([lt,qp,un],(t,e,n)=>n>-1?t[n]:e),na=t=>t.input.selection,{commitSuggestion:re,offeredTextSuggestion:oa,registerCut:sa,registerKeyDown:ra,registerKeyUp:ia,registerPaste:aa,selectNextTextSuggestion:la,selectPreviousTextSuggestion:da,selectTextSuggestionByIndex:so,setInput:ro,setMetrics:ca,setPinnedSuggestions:Ft,removePinnedSuggestions:dt,setSelection:io,setTextSuggestions:Xe,resetMetrics:ua,sendMessage:ct}=ta.actions,pa=ta.reducer;import{createAsyncThunk as eg,createSelector as tg,createSlice as ng}from"@reduxjs/toolkit";import{createAsyncThunk as ao,createSlice as Qp}from"@reduxjs/toolkit";function ga(t){try{return Intl.DateTimeFormat(void 0,{timeZone:t}),!0}catch(e){return!1}}var Zp={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,customData:void 0,platformVariables:void 0,fetchState:"idle",showNicknameDialog:!1},Ht=t=>{var e;return(e=t.info.agentInfo)!=null?e:null},ma=t=>{var e;return(e=t.info.visitorInfo)!=null?e:null},fa=t=>{var e;return(e=t.info.customData)!=null?e:null},gn=({info:{visitorInfo:t,agentInfo:e}})=>{var n,o;return{timezone:t!=null&&t.visitorTimeZone&&ga(t.visitorTimeZone)?t.visitorTimeZone:Ui,agentName:(n=e==null?void 0:e.agentNickname)!=null?n:"",visitorName:(o=t==null?void 0:t.visitorName)!=null?o:""}},Yp=[["agentNickname","nickname"],["agentDefaultLocale","defaultLocale"],["agentEmail","email"]],ha=ao("info/setAgentNickname",(n,o)=>v(null,[n,o],function*({agentNickname:t},e){var i;let{deepdeskAPI:s}=e.extra,r=yield s.patchMe({nickname:t});return{agentNickname:(i=r==null?void 0:r.nickname)!=null?i:t}})),pn=ao("info/setAgentInfo",(t,e)=>v(null,null,function*(){var r,i,a;let{deepdeskAPI:n}=e.extra,o=yield n.getMe(),s=[];if(t.agentId&&t.skipSync!==!0&&s.push(n.postIdentity({externalId:t.agentId})),t.skipSync!==!0){let d=Yp.reduce((l,[c,p])=>!o[p]&&c in t?b(y({},l),{[p]: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}})),zs=ao("info/setAgentSettings",(t,e)=>v(null,null,function*(){let{deepdeskAPI:n}=e.extra,o=yield n.getMe(),s=y(y({},typeof o.uiConfig=="object"?o.uiConfig:{}),t);return yield n.patchMe({uiConfig:s}),s})),Ws=ao("info/getAgentSettings",(t,e)=>v(null,null,function*(){let{deepdeskAPI:n}=e.extra;return(yield n.getMe()).uiConfig})),ya=Qp({name:"info",initialState:Zp,reducers:{setVisitorInfo(t,e){t.visitorInfo=y(y({},t.visitorInfo),e.payload)},setCustomData(t,e){t.customData=e.payload},setPlatformVariables(t,e){t.platformVariables=e.payload},setShowNicknameDialog(t,e){t.showNicknameDialog=e.payload}},extraReducers:t=>{t.addCase(pn.pending,(e,n)=>{e.fetchState="loading",e.agentInfo=y(y({},e.agentInfo),n.meta.arg)}).addCase(pn.rejected,e=>{e.fetchState="error"}).addCase(pn.fulfilled,(e,n)=>{e.fetchState="done",e.agentInfo=n.payload}).addCase(zs.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase(Ws.fulfilled,(e,n)=>{e.agentSettings=n.payload}).addCase(j,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:va,setCustomData:Sa,setPlatformVariables:xa,setShowNicknameDialog:ba}=ya.actions,Ca=ya.reducer;function ue(t,e){return e?t==null?(k.warn("replaceVars called with non-string text; upstream contract violation",{keys:Object.keys(e)}),t):Object.entries(e).reduce((n,[o,s])=>n.replaceAll(o,s),t):t}var lo={list:[],fetchState:"idle",isOpen:!1,page:"search",aggregates:{}},Ta=t=>t.search.isOpen,wa=t=>t.search.page,Vs=t=>t.search.list,Ea=t=>t.search.aggregates,og=tg([Vs,(t,e)=>e],(t,e)=>t.filter(n=>n.type===e)),ka=t=>e=>og(e,t),ut=eg("search/getAll",(t,e)=>v(null,null,function*(){var d;let{deepdeskAPI:n}=e.extra,o=e.getState(),s=(d=o.conversation.current)==null?void 0:d.profileCode,{platformVariables:r}=o.info;if(!s)throw new Error("Profile should be provided in order to be able to search");let{results:i,aggregates:a}=yield n.search({profile:s,query:t.query,tags:t.tags,size:t.size,current:t.current,filters:{type:t.type},params:gn(o)});return{results:i.map(l=>b(y(y({},l),l.title&&r?{title:ue(l.title,r)}:{}),{text:ue(l.text,r!=null?r:{}),source:`search-${l.type.toLowerCase()}`,searchTerm:t.query})),aggregates:a}})),Ra=ng({name:"search",initialState:lo,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=lo.fetchState,t.list=lo.list}},extraReducers:t=>{t.addCase(ut.pending,e=>{e.fetchState="loading"}).addCase(ut.rejected,(e,n)=>{e.fetchState="error",k.error(n.error)}).addCase(ut.fulfilled,(e,n)=>{e.fetchState="done",e.list=n.payload.results,e.aggregates=n.payload.aggregates||{}}).addCase(j,()=>lo)}}),{resetSearch:co,setIsOpen:pe,setPage:Bt}=Ra.actions,Pa=Ra.reducer;var js="SetOutputs",Ut="ShowLoginOverlay",mn="UserLoggedIn",sg="UserLoggedOut",Oe="ApplySuggestion",$s="ApplyImageSuggestion",rg="ShowCommandPalette",uo="ShowNicknameDialog",po="ReduxAction",ig="RemovePinnedSuggestion",ag=t=>({[js]:e=>{t.dispatch(b(y({},e),{isBroadcasted:!0}))},[po]:e=>{e.isBroadcasted||t.dispatch(b(y({},e),{isBroadcasted:!0}))},[ig]:e=>{t.dispatch(dt(e))},[rg]:e=>{t.dispatch(pe(e.isOpen)),e.page&&t.dispatch(Bt(e.page))},[uo]:e=>{t.dispatch(ba(e.showNicknameDialog))},[Ut]:e=>{t.dispatch($i(e))},[mn]:()=>{t.dispatch(Ne())},[sg]:()=>{t.dispatch(Ne())},[$s]:e=>{t.dispatch(oo({suggestion:e.suggestion}))},[Oe]:e=>{t.dispatch(re(b(y({},e),{eventMetrics:{inputType:"mouse"},replace:"selection"})))}}),Ia=ag;import{useDispatch as dg}from"react-redux";import{createAsyncThunk as lg}from"@reduxjs/toolkit";function Gs(t){return lg("analytics/logEvent",(e,n)=>{var r,i,a;let o=(i=(r=n.getState())==null?void 0:r.conversation.current)==null?void 0:i.id,s=(a=n.getState())==null?void 0:a.info.agentInfo;return n.extra.deepdeskAPI.sendEvent(e.name,b(y({conversationId:o},s),{data:e.data}))})(t)}function z(){let t=dg();return(e,n)=>v(null,null,function*(){yield t(Gs({name:e,data:n}))})}import{useRef as cg,useState as qs}from"react";import{useDispatch as ug}from"react-redux";function go(t,e){let n=cg(t);n.current=t;let[o,s]=qs(void 0),[r,i]=qs(void 0),[a,d]=qs("idle"),l=ug();return{error:r,state:a,data:o,call:u=>v(null,null,function*(){d("loading"),yield l(n.current(u)).unwrap().then(m=>{s(m),d("done"),e!=null&&e.onSuccess&&(e==null||e.onSuccess(m))}).catch(m=>{i(m),d("error"),e!=null&&e.onError&&(e==null||e.onError(m))})}),reset:()=>{d("idle"),s(void 0),i(void 0)}}}import La,{useContext as pg}from"react";import{jsx as gg}from"react/jsx-runtime";var Aa=La.createContext(null),De=({broadcastEvents:t,children:e})=>{let n=La.useMemo(()=>t,[]);return gg(Aa.Provider,{value:n,children:e})},oe=()=>{let t=pg(Aa);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createContext as kg,useContext as Rg}from"react";var Xs=function(t,e){return Xs=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])},Xs(t,e)};function fn(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");Xs(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}var ie=function(){return ie=Object.assign||function(e){for(var n,o=1,s=arguments.length;o<s;o++){n=arguments[o];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ie.apply(this,arguments)};function Ma(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 mo(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 fo(t,e){var n=e&&e.cache?e.cache:xg,o=e&&e.serializer?e.serializer:vg,s=e&&e.strategy?e.strategy:fg;return s(t,{cache:n,serializer:o})}function mg(t){return t==null||typeof t=="number"||typeof t=="boolean"}function Na(t,e,n,o){var s=mg(o)?o:n(o),r=e.get(s);return typeof r=="undefined"&&(r=t.call(this,o),e.set(s,r)),r}function Oa(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 Js(t,e,n,o,s){return n.bind(e,t,o,s)}function fg(t,e){var n=t.length===1?Na:Oa;return Js(t,this,n,e.cache.create(),e.serializer)}function hg(t,e){return Js(t,this,Oa,e.cache.create(),e.serializer)}function yg(t,e){return Js(t,this,Na,e.cache.create(),e.serializer)}var vg=function(){return JSON.stringify(arguments)},Sg=(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})(),xg={create:function(){return new Sg}},ho={variadic:hg,monadic:yg};var yo;(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"})(yo||(yo={}));var vo=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var le;(function(t){t[t.literal=0]="literal",t[t.argument=1]="argument",t[t.number=2]="number",t[t.date=3]="date",t[t.time=4]="time",t[t.select=5]="select",t[t.plural=6]="plural",t[t.pound=7]="pound",t[t.tag=8]="tag"})(le||(le={}));var So;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(So||(So={}));function Qs(t){return t.type===le.literal}function Zs(t){return t.type===le.argument}function hn(t){return t.type===le.number}function yn(t){return t.type===le.date}function vn(t){return t.type===le.time}function Sn(t){return t.type===le.select}function xn(t){return t.type===le.plural}function Da(t){return t.type===le.pound}function bn(t){return t.type===le.tag}function xo(t){return!!(t&&typeof t=="object"&&t.type===So.number)}function Cn(t){return!!(t&&typeof t=="object"&&t.type===So.dateTime)}function Ys(t){t.forEach(function(e){if(delete e.location,Sn(e)||xn(e))for(var n in e.options)delete e.options[n].location,Ys(e.options[n].value);else hn(e)&&xo(e.style)||(yn(e)||vn(e))&&Cn(e.style)?delete e.style.location:bn(e)&&Ys(e.children)})}function _a(t,e){e===void 0&&(e={}),e=ie({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var n=new vo(t,e).parse();if(n.err){var o=SyntaxError(yo[n.err.kind]);throw o.location=n.err.location,o.originalMessage=n.err.message,o}return e!=null&&e.captureLocation||Ys(n.val),n.val}var pt;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(pt||(pt={}));var Tn=(function(t){fn(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 er=(function(t){fn(e,t);function e(n,o,s,r){return t.call(this,'Invalid values for "'.concat(n,'": "').concat(o,'". Options are "').concat(Object.keys(s).join('", "'),'"'),pt.INVALID_VALUE,r)||this}return e})(Tn);var Fa=(function(t){fn(e,t);function e(n,o,s){return t.call(this,'Value for "'.concat(n,'" must be of type ').concat(o),pt.INVALID_VALUE,s)||this}return e})(Tn);var Ha=(function(t){fn(e,t);function e(n,o){return t.call(this,'The intl string context variable "'.concat(n,'" was not provided to the string "').concat(o,'"'),pt.MISSING_VALUE,o)||this}return e})(Tn);var Y;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})(Y||(Y={}));function bg(t){return t.length<2?t:t.reduce(function(e,n){var o=e[e.length-1];return!o||o.type!==Y.literal||n.type!==Y.literal?e.push(n):o.value+=n.value,e},[])}function Cg(t){return typeof t=="function"}function wn(t,e,n,o,s,r,i){if(t.length===1&&Qs(t[0]))return[{type:Y.literal,value:t[0].value}];for(var a=[],d=0,l=t;d<l.length;d++){var c=l[d];if(Qs(c)){a.push({type:Y.literal,value:c.value});continue}if(Da(c)){typeof r=="number"&&a.push({type:Y.literal,value:n.getNumberFormat(e).format(r)});continue}var p=c.value;if(!(s&&p in s))throw new Ha(p,i);var u=s[p];if(Zs(c)){(!u||typeof u=="string"||typeof u=="number")&&(u=typeof u=="string"||typeof u=="number"?String(u):""),a.push({type:typeof u=="string"?Y.literal:Y.object,value:u});continue}if(yn(c)){var m=typeof c.style=="string"?o.date[c.style]:Cn(c.style)?c.style.parsedOptions:void 0;a.push({type:Y.literal,value:n.getDateTimeFormat(e,m).format(u)});continue}if(vn(c)){var m=typeof c.style=="string"?o.time[c.style]:Cn(c.style)?c.style.parsedOptions:o.time.medium;a.push({type:Y.literal,value:n.getDateTimeFormat(e,m).format(u)});continue}if(hn(c)){var m=typeof c.style=="string"?o.number[c.style]:xo(c.style)?c.style.parsedOptions:void 0;m&&m.scale&&(u=u*(m.scale||1)),a.push({type:Y.literal,value:n.getNumberFormat(e,m).format(u)});continue}if(bn(c)){var h=c.children,f=c.value,g=s[f];if(!Cg(g))throw new Fa(f,"function",i);var S=wn(h,e,n,o,s,r),T=g(S.map(function(A){return A.value}));Array.isArray(T)||(T=[T]),a.push.apply(a,T.map(function(A){return{type:typeof A=="string"?Y.literal:Y.object,value:A}}))}if(Sn(c)){var C=c.options[u]||c.options.other;if(!C)throw new er(c.value,u,Object.keys(c.options),i);a.push.apply(a,wn(C.value,e,n,o,s));continue}if(xn(c)){var C=c.options["=".concat(u)];if(!C){if(!Intl.PluralRules)throw new Tn(`Intl.PluralRules is not available in this environment.
|
|
2
2
|
Try polyfilling it using "@formatjs/intl-pluralrules"
|
|
3
|
-
`,ut.MISSING_INTL_API,i);var E=n.getPluralRules(e,{type:c.pluralType}).select(u-(c.offset||0));C=c.options[E]||c.options.other}if(!C)throw new er(c.value,u,Object.keys(c.options),i);a.push.apply(a,wn(C.value,e,n,o,s,u-(c.offset||0)));continue}}return bg(a)}function Tg(t,e){return e?ie(ie(ie({},t||{}),e||{}),Object.keys(t).reduce(function(n,o){return n[o]=ie(ie({},t[o]),e[o]||{}),n},{})):t}function wg(t,e){return e?Object.keys(t).reduce(function(n,o){return n[o]=Tg(t[o],e[o]),n},ie({},t)):t}function tr(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,n){t[e]=n}}}}}function Eg(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:fo(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.NumberFormat).bind.apply(e,mo([void 0],n,!1)))},{cache:tr(t.number),strategy:ho.variadic}),getDateTimeFormat:fo(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.DateTimeFormat).bind.apply(e,mo([void 0],n,!1)))},{cache:tr(t.dateTime),strategy:ho.variadic}),getPluralRules:fo(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.PluralRules).bind.apply(e,mo([void 0],n,!1)))},{cache:tr(t.pluralRules),strategy:ho.variadic})}}var nr=(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 p=c.reduce(function(u,m){return!u.length||m.type!==Y.literal||typeof u[u.length-1]!="string"?u.push(m.value):u[u.length-1]+=m.value,u},[]);return p.length<=1?p[0]||"":p},this.formatToParts=function(l){return wn(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=Ma(i,["formatters"]);this.ast=t.__parse(e,ie(ie({},d),{locale:this.resolvedLocale}))}else this.ast=e;if(!Array.isArray(this.ast))throw new TypeError("A message must be provided as a String or AST.");this.formats=wg(t.formats,o),this.formatters=s&&s.formatters||Eg(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=_a,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 Pg(t,e){return e.split(".").reduce((n,o)=>n?n[o]:void 0,t)}var Ig="dummy",or=kg(null);function R(t){var o;let e=Rg(or);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=Pg(n,s);return i?new nr(i).format(r):(e!==Ig&&console.warn(`${s} does not exist in messages of ${e}`),`[${s}]`)}}import{createAction as Ua,createAsyncThunk as Ka,createSlice as Ag}from"@reduxjs/toolkit";import{Marked as Lg}from"marked";var bo=(t,e)=>{let n=[],o=new Lg,s=r=>{r.type==="code"&&r.lang===e&&n.push(r.text)};return o.use({walkTokens:s}),o.parse(t),n};var Ba={cues:[],threads:{},pending:[]},za=t=>{var e;return(e=t.assistants)==null?void 0:e.cues};var Wa=t=>e=>{var n,o;return(o=(n=e.assistants)==null?void 0:n.threads[t])!=null?o:null},Co=Ua("assistants/callToAction"),En=Ka("assistants/evaluateKnowledgeAssistant",(t,e)=>v(null,null,function*(){var l,c,p;let{threadId:n}=t,{onNewThreadId:o}=t,{deepdeskAPI:s}=e.extra,r=e.getState(),{platformVariables:i}=r.info;n||(n=(yield s.createAssistantThread({assistantCode:t.assistantCode})).id,o&&o(n)),yield s.postMessageToAssistantThread({assistantCode:t.assistantCode,threadId:n,message:t.input});let a=yield e.dispatch(xe(b(y({skipState:!0},t),{input:{},threadId:n})));if(a.error)throw new Error(a.error.message);let d=(l=a.payload.output[0])!=null?l:{response:"",sources:[]};return{threadId:n,question:t.input,evaluationId:a.payload.evaluationId,answer:{answer:(c=ue(d.response,i!=null?i:{}))!=null?c:"",sources:(p=d.sources)!=null?p:[]}}})),mT=Ua("assistants/extractedTextSuggestions");function Mg(t,e){var n,o;return Array.isArray(t.output)?t.output:typeof t.output=="string"?[{code:e,name:e,response:t.output}]:[b(y({code:e,name:e},t.output&&typeof t.output=="object"?t.output:{}),{response:(o=(n=t.output)==null?void 0:n.response)!=null?o:""})]}var xe=Ka("assistants/evaluate",(t,e)=>v(null,null,function*(){var h;let{deepdeskAPI:n,dynamicThunkObject:o}=e.extra,{transcript:s,input:r={},threadId:i}=t,a=e.getState(),{platformVariables:d}=a.info,l=(h=a.conversation.current)==null?void 0:h.externalId,c;if(s==="in-memory-transcript"){if(!o.conversationQuery)throw new Error("Can't include in-memory-transcript, setConversationQuery is not defined");c=yield o.conversationQuery()}else Array.isArray(s)&&(c=s);if(t.includeMetadata){if(!a.conversation.current)throw new Error("Can't include metadata, no current conversation");let{metadata:g}=a.conversation.current;Object.assign(r,{metadata:g})}let p=yield n.evaluateAssistant(t.assistantCode,{input:r,transcript:c,externalConversationId:l,threadId:i});if(p.evaluationStatus!=="success")return e.rejectWithValue(`Assistant ${t.assistantCode} evaluation failed: ${p.evaluationStatus}`);let m=Mg(p,t.assistantCode).map(g=>b(y({},g),{name:ue(g.name,d),response:ue(g.response,d)||""})),f=[];return m.forEach(g=>{if(!g.response)return;let S=bo(g.response,"reply");S.length!==0&&f.push(...S.map(T=>({text:T,type:"text",source:"assistant",assistantCode:g.code,sourceLabel:g.name})))}),f.length>0&&e.dispatch(Ft(f)),b(y({},p),{output:m})})),Va=Ag({name:"assistants",initialState:Ba,reducers:{resetCues(t){t.cues=[]},removeCueByCode(t,e){t.cues=t.cues.filter(n=>n.code!==e.payload.code)},removeThreadById(t,e){delete t.threads[e.payload]},receiveChunk(t,e){let{code:n,name:o,payload:s,evaluationId:r}=e.payload,i=t.cues.findIndex(a=>a.code===n);i!==-1?t.cues[i].response+=s.text:t.cues.push({code:n,name:o,evaluationId:r,response:s.text})},userNotification(t,e){let n=t.cues.filter(d=>d.code!==e.payload.code),{code:o,name:s,evaluationId:r,payload:i}=e.payload,{callToAction:a}=i;t.cues=[...n,{code:o,name:s,evaluationId:r,response:i.message,editable:i.editableMessage,callToAction:a&&{label:a.displayName,event:a.onClickEvent,value:a.eventPayload}}]}},extraReducers:t=>{t.addCase(xe.pending,(e,n)=>{e.pending.includes(n.meta.arg.assistantCode)&&k.warn(`Assistant ${n.meta.arg.assistantCode} already evaluating`),e.pending.push(n.meta.arg.assistantCode)}).addCase(xe.rejected,(e,n)=>{var s;k.warn((s=n.error)==null?void 0:s.message);let o=e.pending.indexOf(n.meta.arg.assistantCode);o!==-1&&e.pending.splice(o,1)}).addCase(xe.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}=n.payload,i=r.map(l=>l.code),a=e.cues.filter(l=>!i.includes(l.code)),d=r.map(l=>b(y({},l),{evaluationId:s}));e.cues=[...a,...d]}).addCase(En.fulfilled,(e,n)=>{let r=n.payload,{threadId:o}=r,s=M(r,["threadId"]);e.threads[o]=[...e.threads[o]||[],s]}).addCase(j,()=>Ba)}}),{removeCueByCode:To,resetCues:fT,removeThreadById:ja,receiveChunk:$a,userNotification:Ga}=Va.actions,qa=Va.reducer;import{createSlice as Ng}from"@reduxjs/toolkit";import{useSelector as Og}from"react-redux";var Dg={locale:"en-US",deanonymize:!1,fallbackImage:!1,isEmbedded:!1,showImages:!1,showSearch:!1,showImageSearch:!1,showStyleSuggestions:!1,showStyleSuggestionList:!1,showMidSentenceSuggestions:!1,showSuggestionsBeforePattern:!1,showSuggestionsAfterPattern:!1,showTabCompletion:!0,showTextSuggestions:!0,showEntitiesCommand:!1,showSummaryCommand:!1,showKnowledgeSearch:!1,textSuggestionsCount:3,recommendTextSuggestions:!0,searchTriggerKey:"k",visible:!0,insertLink:!1,addToPersonalCollection:!1,inlineSuggestions:!1,autoSelectSuggestion:!1,suggestionsPlacement:"above",floatingMenu:!1,detectSubmit:!1,automaticHandlingTime:!1,enableSuggestionFeedback:!1,enableFeedbackForm:!0,adminUrl:void 0,productName:"Deepdesk",hasKeyboardInput:!0},Xa=Ng({name:"settings",initialState:Dg,reducers:{set(t,e){Object.entries(e.payload).forEach(n=>{let[o,s]=n;typeof s!="undefined"&&(t[o]=s)})}}}),{set:wo}=Xa.actions,pt=t=>e=>e.settings[t],w=t=>Og(pt(t)),Ja=Xa.reducer;function be(t){let e=document.createElement("textarea");e.value=t,e.style.position="fixed",e.style.left="-999999px",e.style.top="-999999px",document.body.appendChild(e),e.focus(),e.select(),document.execCommand("copy"),e.remove()}import ir from"classnames";import{useState as Hg}from"react";import{jsx as Qa}from"react/jsx-runtime";var sr=t=>Qa("svg",b(y({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Qa("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 Za}from"react/jsx-runtime";var Ya=t=>Za("svg",b(y({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Za("path",{fillRule:"evenodd",d:"M7.65336736,21.1256786 C7.2933164,21.6534897 6.68712411,22 6,22 L4,22 C2.8954305,22 2,21.1045695 2,20 L2,11 C2,9.8954305 2.8954305,9 4,9 L6,9 C6.198171,9 6.38961023,9.02882212 6.57035446,9.08250314 C7.6444817,7.51807482 11.2554748,3.57449216 12.2202699,2.37298955 L12.5204954,1.99910538 L13,1.99910538 C13.6147967,1.99901314 14.1422801,2.04513312 14.748281,2.22159137 C16.091867,2.61282321 17,3.52709845 17,4.99910538 C17,5.51921677 16.9079007,6.07373891 16.7382242,6.68923415 C16.6259612,7.09646424 16.4872151,7.50766133 16.2970775,8.01801005 C16.2391583,8.17347129 16.007193,8.78168345 15.9547911,8.92337824 C15.9451954,8.94932503 15.9359266,8.9745589 15.9269768,8.99910538 L19,8.99910538 C20.8695981,8.99910538 22,10.316625 22,11.9991054 C22,17.9426745 20.7551411,21.9991054 18,21.9991054 L11.0344006,21.9985135 C10.3408482,22.0111947 9.50544052,21.9186578 8.66312366,21.6172857 C8.29521907,21.4856533 7.9567386,21.3218904 7.65336736,21.1256786 Z M8,17.9991054 C8,18.9013355 8.45196659,19.4175764 9.33687634,19.7341879 C9.91062406,19.9394688 10.5253746,20.0075638 10.963066,19.9997143 C10.9703499,19.9995545 10.9703499,19.9995545 11,19.9991054 L18,19.9991054 C19.015127,19.9991054 20,16.7898506 20,11.9991054 C20,11.3589955 19.6912225,10.9991054 19,10.9991054 L15,10.9991054 C13.8054549,10.9991054 13.5555377,10.0754586 13.8046536,9.07541689 C13.8632547,8.84017106 13.9489218,8.5812741 14.0789589,8.22965366 C14.1358033,8.07594642 14.3689242,7.46470447 14.4229225,7.31976744 C14.5944107,6.85947528 14.7161494,6.4986824 14.8101464,6.1577119 C14.9359344,5.70142019 15,5.31568707 15,4.99910538 C15,4.54813166 14.7621788,4.30870189 14.1891338,4.1418399 C13.9483736,4.07173418 13.7113931,4.0330943 13.4599624,4.01423587 C11.914268,5.86195611 8.40663864,9.70054105 8.14171093,10.3190878 C8.04443154,10.5462133 8,10.7589101 8,10.9991054 L8,17.9991054 Z M4,11 L4,20 L6,20 L6,11 L4,11 Z"})}));function Je(t,e){var s;let n=t.cloneNode(!0);n.style.top=`${t.offsetTop}px`,n.style.left=`${t.offsetLeft}px`,n.style.position="absolute",e.split(" ").forEach(r=>{n.classList.add(r)}),n.addEventListener("animationend",()=>n.remove()),(s=t.parentElement)==null||s.appendChild(n)}var rr={};J(rr,{enUS:()=>_g,nlNL:()=>Fg});var _g={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},Fg={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};var el={thumbs:"dd-5F1zq",fadeup:"dd-eTmY-",fadedown:"dd-sS85z",selected:"dd-rid-f",thumbsUp:"dd-4poEf",thumbsDown:"dd-3KozS"};import{useSelector as tl}from"react-redux";var Qe=t=>e=>{let{passwordlessToken:{token:n},settings:{isEmbedded:o,adminUrl:s}}=e,r=s||window.location.origin;return o&&!n?null:o&&n?`${r}/apis/admin/session/passwordless/login/?token=${n}&redirect=${encodeURIComponent(t)}`:`${r}${t}`};import{jsx as Kt,jsxs as Ug}from"react/jsx-runtime";var Bg=({assistantCode:t,assistantOutput:e,evaluationId:n,feedbackType:o,feedbackText:s})=>{let r=x("FeedbackThumbs",el),i=w("enableFeedbackForm"),a=tl(Se),d=tl(Qe(`/admin/feedback?conversationId=${a}&evaluationId=${n}&type=${o}&text=${s}&assistantCode=${t}&assistantOutput=${e}`)),l=R(rr),c=z(),[p,u]=Hg(null),m=g=>{c("Assistant response feedback",{assistantCode:t,assistantOutput:e,evaluationId:n,rating:g})},f=g=>{g.stopPropagation(),Je(g.target,r.fadeup),u("up"),m("up")},h=g=>{g.stopPropagation(),Je(g.target,r.fadedown),u("down"),m("down")};return Ug("div",{className:r.thumbs,children:[Kt(I.Button,{title:l("thumbsUp"),onClick:f,icon:Kt(Ya,{}),className:ir(r.thumbsUp,p==="up"&&r.selected),disabled:!!p}),i&&d?Kt(I.Button,{as:"a",title:l("thumbsDown"),href:d,target:"_blank",rel:"noreferrer",onClick:h,icon:Kt(sr,{}),className:ir(r.thumbsDown,p==="down"&&r.selected),disabled:!!p}):Kt(I.Button,{title:l("thumbsDown"),onClick:h,icon:Kt(sr,{}),className:ir(r.thumbsDown,p==="down"&&r.selected),disabled:!!p})]})},Eo=Bg;import tm from"dompurify";import{Fragment as ll,useMemo as nm,useRef as om,useState as sm}from"react";import il from"classnames";import{createRef as Qg,useCallback as lr,useMemo as Zg,useRef as Yg,useState as em}from"react";import{useState as Kg,useLayoutEffect as zg}from"react";var Wg=["bottom","height","left","right","top","width"],Vg=(t={},e={})=>Wg.some(n=>t[n]!==e[n]),_e=new Map,nl,ol=()=>{let t=[],e=[];_e.forEach((n,o)=>{if(o instanceof Element&&!o.isConnected){e.push(o);return}let s=o.getBoundingClientRect();Vg(s,n.rect)&&(n.rect=s,t.push(n))}),e.forEach(n=>{_e.delete(n)}),t.forEach(n=>{n.callbacks.forEach(o=>o(n.rect))}),nl=window.requestAnimationFrame(ol)};function jg(t,e){return{observe(){let n=_e.size===0;if(_e.has(t)){let o=_e.get(t);o.callbacks.push(e),o.rect&&e(o.rect)}else _e.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});n&&ol()},unobserve(){let n=_e.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||_e.delete(t),_e.size||cancelAnimationFrame(nl)}}}}function ar(t){let[e,n]=Kg(null);return zg(()=>{if(!t.current)return;let o=jg(t.current,s=>{n(s)});return o.observe(),()=>{o.unobserve()}},[t]),e}import{useContext as Gg,useLayoutEffect as qg,useState as Xg}from"react";import{createPortal as Jg}from"react-dom";import{useEffect as $g}from"react";function gt(t){$g(()=>{let e=n=>{n.isWithinRoot||t(n)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function mt(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}var sl={root:"dd-r-dgo"};var rl=({children:t,parentNode:e})=>{let[n,o]=Xg(null),s=Gg(an);return qg(()=>{let r=document.createElement("div");return mt(r),r.classList.add(sl.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?Jg(t,n):null};var Ce={ref:"dd-iz-KP",root:"dd-vEMon",positionAbove:"dd-mUCxM",positionBelow:"dd-7oZI7",positionLeft:"dd-BiWvD",positionRight:"dd-JIWea",alignStart:"dd-5ivu6",alignCenter:"dd-rnVkP",alignEnd:"dd-gZBp4"};import{jsx as dr}from"react/jsx-runtime";var ko=(t=!1)=>{let[e,n]=em(t),o=lr(()=>n(!0),[]),s=lr(()=>n(!1),[]),r=lr(()=>n(a=>!a),[]),i=Yg(null);return{opened:e,open:o,close:s,toggle:r,triggerRef:i}};function cr(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 zt=l=>{var c=l,{className:t,triggerRef:e,boundaryRef:n=Qg(),position:o="above",align:s="center",children:r,toStyle:i=cr,parentNode:a}=c,d=M(c,["className","triggerRef","boundaryRef","position","align","children","toStyle","parentNode"]);let p=ar(e),u=ar(n),m=Zg(()=>i(p,u,0),[p,u]);return dr(rl,{parentNode:a,children:dr("div",b(y({className:il(Ce.ref,{[Ce.positionAbove]:o==="above",[Ce.positionBelow]:o==="below",[Ce.positionLeft]:o==="left",[Ce.positionRight]:o==="right",[Ce.alignStart]:s==="start",[Ce.alignCenter]:s==="center",[Ce.alignEnd]:s==="end"}),style:m},d),{role:"dialog",children:dr("div",{className:il(t,Ce.root),children:r})}))})};var al={root:"dd-L7b3z",popover:"dd-OQOTB",options:"dd-Y12RE",arrow:"dd-cv33T",copyIcon:"dd-6xOsH",option:"dd-9oFX4",divider:"dd-aiZf8",fadeup:"dd-Jq9pd"};import{marked as rm}from"marked";import{jsx as kn,jsxs as Ro}from"react/jsx-runtime";function im(t){return`<button type="button" data-copy-icon class=${t}><svg version="1.1" x="0px" y="0px" viewBox="0 0 115.77 122.88" width="10px" height="10px" fill="black"><g><path d="M89.62,13.96v7.73h12.19h0.01v0.02c3.85,0.01,7.34,1.57,9.86,4.1c2.5,2.51,4.06,5.98,4.07,9.82h0.02v0.02 v73.27v0.01h-0.02c-0.01,3.84-1.57,7.33-4.1,9.86c-2.51,2.5-5.98,4.06-9.82,4.07v0.02h-0.02h-61.7H40.1v-0.02 c-3.84-0.01-7.34-1.57-9.86-4.1c-2.5-2.51-4.06-5.98-4.07-9.82h-0.02v-0.02V92.51H13.96h-0.01v-0.02c-3.84-0.01-7.34-1.57-9.86-4.1 c-2.5-2.51-4.06-5.98-4.07-9.82H0v-0.02V13.96v-0.01h0.02c0.01-3.85,1.58-7.34,4.1-9.86c2.51-2.5,5.98-4.06,9.82-4.07V0h0.02h61.7 h0.01v0.02c3.85,0.01,7.34,1.57,9.86,4.1c2.5,2.51,4.06,5.98,4.07,9.82h0.02V13.96L89.62,13.96z M79.04,21.69v-7.73v-0.02h0.02 c0-0.91-0.39-1.75-1.01-2.37c-0.61-0.61-1.46-1-2.37-1v0.02h-0.01h-61.7h-0.02v-0.02c-0.91,0-1.75,0.39-2.37,1.01 c-0.61,0.61-1,1.46-1,2.37h0.02v0.01v64.59v0.02h-0.02c0,0.91,0.39,1.75,1.01,2.37c0.61,0.61,1.46,1,2.37,1v-0.02h0.01h12.19V35.65 v-0.01h0.02c0.01-3.85,1.58-7.34,4.1-9.86c2.51-2.5,5.98-4.06,9.82-4.07v-0.02h0.02H79.04L79.04,21.69z M105.18,108.92V35.65v-0.02 h0.02c0-0.91-0.39-1.75-1.01-2.37c-0.61-0.61-1.46-1-2.37-1v0.02h-0.01h-61.7h-0.02v-0.02c-0.91,0-1.75,0.39-2.37,1.01 c-0.61,0.61-1,1.46-1,2.37h0.02v0.01v73.27v0.02h-0.02c0,0.91,0.39,1.75,1.01,2.37c0.61,0.61,1.46,1,2.37,1v-0.02h0.01h61.7h0.02 v0.02c0.91,0,1.75-0.39,2.37-1.01c0.61-0.61,1-1.46,1-2.37h-0.02V108.92L105.18,108.92z"/></g></svg></button>`}function ur(t){var n,o;let e=t.cloneNode(!0);return e.querySelectorAll("div,button").forEach(s=>s.remove()),(o=(n=e.textContent)==null?void 0:n.trim())!=null?o:""}function am(t){return t.replace(/\r\n/g,`
|
|
4
|
-
`)}var lm=({content:t,useLabel:e,copyLabel:n,onCopy:o,onUse:s})=>{let r=x("Markdown",al),i=om(null),[a,d]=sm(null),l=nm(()=>{let h=rm.parse(am(t));return tm.sanitize(h.toString()).replaceAll("</code>",`${im(r.copyIcon)}</code>`).replaceAll('<a href="','<a target="_blank" rel="noreferrer noopener" href="')},[t]),c=h=>{var T;let g=h.target,S=!!((T=i.current)!=null&&T.querySelector("code"));if(["A","BUTTON"].includes(g.tagName)){d(null);return}a||S&&g.tagName!=="CODE"||!S&&g!==i.current||(g.addEventListener("mouseleave",()=>d(null),{once:!0}),d(g))},p=()=>{if(!a)return;d(null);let h=a.querySelector("button");h&&(Je(h,r.fadeup),o==null||o(ur(a)))},u=h=>{let g=h.target,S=g instanceof HTMLElement?g:null;if(g instanceof Element?g.closest("a"):null){h.stopPropagation();return}S&&"copyIcon"in S.dataset&&(Je(S,r.fadeup),o==null||o(ur(S.parentElement)))},m=()=>{!a||!s||(d(null),s(ur(a)))},f=h=>{if(h===null)return;let g=h.getBoundingClientRect();g.left<0?h.style.transform=`translateX(${-g.left+2}px)`:g.right>window.innerWidth&&(h.style.transform=`translateX(${window.innerWidth-g.right-2}px)`)};return Ro(ll,{children:[a&&(o||s)&&Ro(zt,{triggerRef:{current:a},className:r.popover,parentNode:a,children:[Ro("div",{className:r.options,ref:f,children:[o&&(a==null?void 0:a.tagName)==="CODE"&&kn("button",{type:"button",className:r.option,onClick:p,children:n}),s&&Ro(ll,{children:[kn("div",{className:r.divider}),kn("button",{type:"button",className:r.option,onClick:m,children:e})]})]}),kn("div",{className:r.arrow})]}),kn("div",{ref:i,"data-testid":"widget-markdown-content",className:r.root,dangerouslySetInnerHTML:{__html:l},onMouseOver:c,onClick:u})]})},ft=lm;import{useRef as um}from"react";var dl={loadingBar:"dd-6as-V",placeHolderShimmer:"dd-TFYmA"};import{jsx as cm}from"react/jsx-runtime";var dm=({width:t})=>{let e=x("LoadingProgressBar",dl);return cm("div",{className:e.loadingBar,style:{width:t}})},Po=dm;import{jsx as Wt,jsxs as pm}from"react/jsx-runtime";var Io=({title:t})=>{let e=um(null);return Xn(e),Wt(I,{ref:e,children:Wt(D,{children:pm(D.Content,{children:[Wt(D.Title,{children:t}),Wt(Po,{width:"60%"}),Wt(Po,{width:"90%"}),Wt(Po,{width:"50%"})]})})})};var Vt={};J(Vt,{enUS:()=>gm,nlNL:()=>mm});var gm={inputPlaceholder:[{type:0,value:"What is your question?"}],useCue:[{type:0,value:"Add to message"}],copyCue:[{type:0,value:"Copy"}],removeCue:[{type:0,value:"Close"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}],submitLabel:[{type:0,value:"Submit"}],resetLabel:[{type:0,value:"Reset"}],showMore:[{type:0,value:"Show "},{type:1,value:"amount"},{type:0,value:" more"}]},mm={inputPlaceholder:[{type:0,value:"Wat is je vraag?"}],useCue:[{type:0,value:"Voeg toe aan bericht"}],copyCue:[{type:0,value:"Kopi\xEBren"}],removeCue:[{type:0,value:"Sluiten"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}],submitLabel:[{type:0,value:"Verzend"}],resetLabel:[{type:0,value:"Gesprek wissen"}],showMore:[{type:0,value:"Toon "},{type:1,value:"amount"},{type:0,value:" meer"}]};var Lo={form:"dd-pleCH",formInput:"dd-pGJMY",formSubmit:"dd--gkRg",actionButton:"dd-I2NEH",resetContainer:"dd-qKIDX",sources:"dd-xf9c6",source:"dd-a-vyX",tooltip:"dd-EsgcZ",linkContent:"dd-gARDA",showMoreSources:"dd-uDGi-"};import*as Te from"react";import{useFloating as fm,autoUpdate as hm,useClick as ym,useDismiss as vm,useRole as Sm,useInteractions as xm,useMergeRefs as ul,FloatingPortal as bm,FloatingFocusManager as Cm,useHover as Tm,offset as wm,flip as Em,shift as km,safePolygon as Rm}from"@floating-ui/react";var Ao={tooltip:"dd-XpCXd",tooltipTrigger:"dd-8TKeF",arrow:"dd-ZEu2Y"};import{jsx as Ze,jsxs as cl}from"react/jsx-runtime";function Pm({initialOpen:t=!1,placement:e="bottom",modal:n,tooltip:o,open:s,onOpenChange:r}={}){let[i,a]=Te.useState(t),d=s!=null?s:i,l=r!=null?r:a,c=fm({placement:e,open:d,onOpenChange:l,whileElementsMounted:hm,middleware:[wm(5),Em({crossAxis:e.includes("-"),fallbackAxisSideDirection:"end",padding:5}),km({padding:10})]}),p=c.context,u=ym(p,{enabled:s==null}),m=vm(p),f=Sm(p),h=Tm(p,{enabled:o!=null?o:!1,handleClose:Rm()}),g=xm([u,m,f,h]);return Te.useMemo(()=>b(y(y({open:d,setOpen:l},g),c),{modal:n}),[d,l,g,c,n])}var pl=Te.createContext(null),pr=()=>{let t=Te.useContext(pl);if(t==null)throw new Error("Popover components must be wrapped in <Popover />");return t},ht=o=>{var s=o,{children:t,modal:e=!1}=s,n=M(s,["children","modal"]);let r=Pm(y({modal:e},n));return Ze(pl.Provider,{value:r,children:t})};function Im(o){var s=o,{as:t,children:e}=s,n=M(s,["as","children"]);let r=pr(),i=t||"button",a=e.ref,d=ul([r.refs.setReference,a]);return Ze(i,b(y({ref:d,type:"button"},r.getReferenceProps(n)),{children:e}))}var Lm=Te.forwardRef(function(s,o){var r=s,{style:e}=r,n=M(r,["style"]);let l=pr(),{context:i}=l,a=M(l,["context"]),d=ul([a.refs.setFloating,o]);return i.open?Ze(bm,{children:Ze(Cm,{context:i,modal:a.modal,disabled:n.disableFocusManager,children:Ze("div",b(y({ref:d,style:y(b(y({},a.floatingStyles),{zIndex:1e7}),e)},a.getFloatingProps(n)),{children:n.children}))})}):null});function Am(s){var r=s,{as:t,children:e,onClick:n}=r,o=M(r,["as","children","onClick"]);let{setOpen:i}=pr();return Ze(t||"button",b(y({type:"button",onClick:l=>{n(l),i(!1),l.stopPropagation()}},o),{children:e}))}function gl({trigger:t,children:e,placement:n="top"}){return cl(ht,{tooltip:!0,placement:n,children:[cl(ht.Content,{className:Ao.tooltip,children:[e,Ze("div",{className:Ao.arrow})]}),Ze(ht.Trigger,{className:Ao.tooltipTrigger,children:t})]})}ht.Trigger=Im;ht.Content=Lm;ht.Button=Am;var $=ht;import{useRef as Om}from"react";var ml={error:"dd-CoAuB"};var gr={};J(gr,{enUS:()=>Mm,nlNL:()=>Nm});var Mm={errorPrefix:[{type:0,value:"Error:"}]},Nm={errorPrefix:[{type:0,value:"Foutmelding:"}]};import{jsx as fl,jsxs as Dm}from"react/jsx-runtime";var hl=({message:t})=>{let e=Om(null),n=x("WidgetCardError",ml),o=R(gr);return Xn(e),fl(I,{ref:e,children:fl(D,{children:Dm(D.Content,{className:n.error,children:[o("errorPrefix")," ",t]})})})};import{jsx as H,jsxs as Fe}from"react/jsx-runtime";var Km=3,zm=({sources:t,onClick:e})=>{let n=R(Vt),o=x("WidgetKnowledgeAssistant",Lo),[s,r]=yt(!1),i=s?t:t.slice(0,Km);return i.length===0?null:Fe("ul",{className:o.sources,children:[i.map(a=>H("li",{className:o.source,"data-testid":"knowledge-assist-source",children:Fe($,{tooltip:!0,placement:"top-start",children:[H($.Trigger,{as:"a",rel:"noreferrer",target:"_blank",href:a.url,onClick:d=>{d.stopPropagation(),e(a)},children:H("span",{className:o.linkContent,children:a.name})}),a.url&&H($.Content,{className:o.tooltip,children:decodeURIComponent(a.url)})]})},a.name)),i<t&&H("button",{type:"button",className:o.showMoreSources,onClick:()=>r(!0),children:n("showMore",{amount:t.length-i.length})})]})},Wm=({title:t,description:e})=>H(I,{"data-testid":"knowledge-assist-empty-state",children:H(D,{children:Fe(D.Content,{children:[H(D.Title,{children:t}),H(ft,{content:e})]})})}),Vm=({innerRef:t,item:e,hasKeyboardInput:n,onCopy:o,onUse:s,onSourceClick:r})=>{var d;let i=R(Vt),a=mr(Mo);return Fe(I,{"data-testid":"knowledge-assist-answer",ref:t,children:[H(D,{children:Fe(D.Content,{children:[H(D.Title,{children:e.question}),H(ft,{content:e.answer.answer,useLabel:i("useCue"),copyLabel:i("copyCue"),onCopy:o,onUse:n?s:void 0}),H(zm,{sources:(d=e.answer.sources)!=null?d:[],onClick:r})]})}),a.assistantCode&&Fe(I.ButtonsContainer,{children:[H("div",{}),H(Eo,{evaluationId:e.evaluationId,feedbackType:"assistant",assistantCode:a.assistantCode,assistantOutput:e.answer.answer,feedbackText:e.answer.answer})]})]})},Mo=_m(null),No=({assistantCode:t,evaluateKnowledgeAssistFn:e,initialQuestion:n,children:o})=>{let[s,r]=yt(null),[i,a]=yt(!1),[d,l]=yt(null),[c,p]=yt(!!n),[u,m]=yt(null),f=Bm(),h=z(),g=go(C=>{if(!t)throw new Error("No knowledge assistant was defined");return l(null),e({assistantCode:t,input:C,threadId:s,onNewThreadId(E){r(E)}})},{onSuccess(C){var E;h("Assistant response displayed",{evaluationId:C.evaluationId,assistantCode:t,assistantOutput:C.answer.answer,input:C.question,sources:(E=C.answer.sources)!=null?E:[]}),p(!1)},onError(C){var E;l((E=C.message)!=null?E:"Unknown error")}}),S=C=>v(null,null,function*(){a(!0),m(C),yield g.call(C),a(!1),m(null)}),T={isEnabled:!!t,assistantCode:t,isSubmitting:i,threadId:s,pendingInput:u,errorMessage:d,onSubmit:S,onReset(){s&&f(ja(s)),l(null),r(null),t&&h("Assistant thread reset",{threadId:s!=null?s:void 0,assistantCode:t})}};return Hm(()=>{n&&T.isEnabled&&S(n)},[n]),H(Mo.Provider,{value:T,children:o})},Oo=()=>{let t=R(Vt),e=x("WidgetKnowledgeAssistant",Lo),n=mr(Mo),o=yl(null),[s,r]=yt(""),i=d=>{r(d.target.value)},a=d=>{d.preventDefault(),n.onSubmit(s).then(()=>{var l;o.current&&((l=o.current)==null||l.focus(),r(""))})};return n.isEnabled?Fe("form",{className:e.form,onSubmit:a,children:[H("input",{ref:o,className:e.formInput,placeholder:t("inputPlaceholder"),type:"text",disabled:n.isSubmitting,value:s,onChange:i}),H("button",{type:"submit",disabled:n.isSubmitting||s==="",className:e.formSubmit,children:t("submitLabel")})]}):null},Do=({title:t,emptyState:e})=>{var f,h;let n=R(Vt),o=z(),s=x("WidgetKnowledgeAssistant",Lo),r=yl(null),i=mr(Mo),a=(h=Um(Wa((f=i.threadId)!=null?f:-1)))!=null?h:[],d=w("hasKeyboardInput"),l=oe(),c=(g,S)=>{be(g),i.assistantCode&&o("Assistant response copied",{assistantCode:i.assistantCode,assistantOutput:g,copiedText:g,evaluationId:S.evaluationId})},p=(g,S)=>{i.assistantCode&&o("Assistant source clicked",{evaluationId:S.evaluationId,assistantCode:i.assistantCode,source:g})},u=g=>{g.preventDefault(),i.onReset()},m=(g,S)=>{l.send(Oe,{text:g,suggestion:{source:"assistant",sourceText:g}}),i.assistantCode&&o("Assistant response used",{assistantCode:i.assistantCode,evaluationId:S.evaluationId,assistantOutput:S.answer.answer,usedText:g})};return!i.isEnabled||(a==null?void 0:a.length)===0&&!i.isSubmitting&&!e&&!i.errorMessage?null:Fe(Fm,{children:[H(Ae,{type:"knowledge",title:t,"data-testid":"knowledge",children:Fe(Z,{withDivider:!0,children:[e&&a.length===0&&!i.pendingInput&&H(Wm,y({},e)),a.map((g,S)=>H(Vm,{innerRef:S===a.length-1?r:void 0,item:g,hasKeyboardInput:d,onCopy:T=>c(T,g),onUse:T=>m(T,g),onSourceClick:T=>p(T,g)},`${g.question}_${g.answer}_${S}`)),i.pendingInput&&H(Io,{title:i.pendingInput}),i.errorMessage&&H(hl,{message:i.errorMessage})]})}),a.length>0&&H("div",{className:s.resetContainer,children:H(I.Button,{disabled:i.threadId===null||i.isSubmitting,onClick:u,children:n("resetLabel")})})]})};import{createRoot as ot}from"react-dom/client";import{Fragment as Oh}from"react";import{useSelector as El}from"react-redux";import hr from"classnames";import{useCallback as Tl,useEffect as Ym,useMemo as ef,useState as yr}from"react";import{useDispatch as tf,useSelector as nf}from"react-redux";import{useEffect as jm,useRef as $m}from"react";var Sl={root:"dd-tvkOF",content:"dd-eXA1D"};import{jsx as xl}from"react/jsx-runtime";var Gm=({isOpen:t,autoFocus:e,children:n,onClose:o,onBack:s,onKeyDown:r,overlayAriaLabel:i,contentAriaLabel:a})=>{let d=$m(null),l=x("Dialog",Sl),c=u=>{if(u.key==="Escape"){u.preventDefault(),u.stopPropagation(),s();return}r&&r(u)},p=u=>{u.target===d.current&&t&&o()};return jm(()=>{var u,m;!d.current||!t||!e||(m=(u=d.current)==null?void 0:u.querySelector("input, textarea"))==null||m.focus()},[t,e,d]),t?xl("div",{role:"dialog","data-testid":"dialog",className:l.root,"aria-label":i,ref:d,onKeyDown:c,onMouseDown:p,children:xl("div",{"data-testid":"dialog-content",className:l.content,"aria-label":a,children:n})}):null},jt=Gm;import qm from"classnames";var bl={root:"dd-ranhW"};import{jsx as Jm}from"react/jsx-runtime";var Xm=o=>{var s=o,{className:t,value:e}=s,n=M(s,["className","value"]);let r=x("TextInput",bl);return Jm("input",y({className:qm(t,r.root),type:"text",value:e},n))},Rn=Xm;var fr={};J(fr,{enUS:()=>Qm,nlNL:()=>Zm});var Qm={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"}]},Zm={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 Cl={root:"dd-lWxnE",anchorButton:"dd-TZ4in",errorMessage:"dd-fIsPg",title:"dd-pGhJx",subtitle:"dd-f5l29",text:"dd-iamoD",input:"dd-uhQZ3",actions:"dd-lubvx",button:"dd-CJsNI",primaryButton:"dd-MWBfl"};import{jsx as se,jsxs as _o}from"react/jsx-runtime";var of=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch(e){return t}},sf=({agentEmail:t,isOpen:e,origin:n="",onSuccess:o,onDismiss:s})=>{let r=R(fr),i=x("LoginTokenDialog",Cl),a=nf(Ki),d=tf(),l=w("productName"),[c,p]=yr(t||""),[u,m]=yr(0),[f,h]=yr(""),g=Tl(E=>v(null,null,function*(){E.preventDefault(),d(Vi({email:c})),m(1)}),[n,c]),S=()=>{h(""),m(0)},T=Tl(E=>v(null,null,function*(){E.preventDefault();let A=of(E.target.elements.token.value);if(!A){h(r("verifyCodeError",{login:C}));return}d(cn({token:A}))}),[n]),C=ef(()=>E=>se("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:S,children:E},"back-button"),[]);return Ym(()=>{a==="error"&&h(r("verifyCodeError",{login:C})),a==="done"&&o()},[a]),se(jt,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:l}),overlayAriaLabel:r("promptTitle",{productName:l}),onClose:s,onBack:s,children:_o("div",{className:i.root,children:[se("h1",{className:i.title,children:r("promptTitle",{productName:l})}),u===0&&_o("form",{onSubmit:g,children:[se("h2",{className:i.subtitle,children:r("requestCodeTitle")}),se("p",{className:i.text,children:r("requestCodeBody",{productName:l})}),se(Rn,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:c,onChange:E=>p(E.target.value)}),se("div",{className:i.actions,children:se("button",{type:"submit",className:hr(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),u===1&&_o("form",{onSubmit:T,children:[se("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),se("p",{className:i.text,children:r("verifyCodeBody")}),se(Rn,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),f&&se("div",{className:i.errorMessage,children:f}),_o("div",{className:i.actions,children:[se("button",{type:"button",className:hr(i.button),onClick:S,children:r("back")}),se("button",{type:"submit",className:hr(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},wl=sf;import{jsx as af}from"react/jsx-runtime";var rf=()=>{let t=El(zi),e=El(Ht),n=w("adminUrl"),o=oe(),s=()=>o.send(Ut,!1),r=()=>{o.send(Ut,!1),o.send(mn)};return af(wl,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:n,onDismiss:s,onSuccess:r})},kl=rf;import Eh from"lodash.debounce";import{Fragment as kh,useCallback as yd,useEffect as vd,useMemo as Rh,useState as Lr}from"react";import{useDispatch as Ph,useSelector as xt}from"react-redux";import{createAsyncThunk as lf,createSlice as df}from"@reduxjs/toolkit";var cf={data:null,fetchState:"idle"},Rl=t=>t.contentTypes.data,Pn=lf("contentTypes/getContentTypes",(t,e)=>v(null,null,function*(){return e.extra.deepdeskAPI.getContentTypes()})),uf=df({name:"contentTypes",initialState:cf,reducers:{},extraReducers:t=>{t.addCase(Pn.pending,e=>{e.fetchState="loading"}).addCase(Pn.rejected,e=>{e.fetchState="error"}).addCase(Pn.fulfilled,(e,n)=>{e.fetchState="done",e.data=n.payload})}}),Pl=uf.reducer;import{createAsyncThunk as pf,createSelector as gf,createSlice as mf}from"@reduxjs/toolkit";var ff={data:null,fetchState:"idle"},hf=[],vt=t=>t.profile.data,yf=t=>t.profile.data?t.profile.data.uiConfig.widget.types:hf,Ln=gf([yf],t=>t.filter(e=>e.isActive)),Il=t=>{var e;return((e=t.profile.data)==null?void 0:e.onDemandAssistants)||[]},Ll=t=>e=>Ln(e).find(n=>n.type===t),Al=t=>t.profile.data?!!t.profile.data.uiConfig.widget.types.find(e=>e.type==="custom-data"):!1,Ml=t=>{var e,n;return(n=(e=t.profile.data)==null?void 0:e.knowledgeAssistantNew)!=null?n:null},In=pf("profile/getProfile",(t,e)=>v(null,null,function*(){var r;let{deepdeskAPI:n}=e.extra,o=e.getState(),s=o.conversation.current;if(!s||!s.profileCode)throw new Error("No conversation of conversation profileCode found");return((r=o.profile.data)==null?void 0:r.code)===s.profileCode?o.profile.data:n.getProfile(s.profileCode)})),vf=mf({name:"profile",initialState:ff,reducers:{},extraReducers:t=>{t.addCase(In.pending,e=>{e.fetchState="loading"}).addCase(In.rejected,e=>{e.fetchState="error"}).addCase(In.fulfilled,(e,n)=>{e.fetchState="done",e.data=n.payload})}}),Nl=vf.reducer;import{useEffect as Ql,useState as Vf,useRef as jf,useCallback as $f}from"react";import{useState as bf}from"react";import vr from"classnames";var ae={root:"dd-U2SX4",list:"dd-cYTlj",listWrapper:"dd-GLQFR",listHorizontal:"dd-x-knl",page:"dd-1F4vk",search:"dd-nvbxc",pageNav:"dd-sRUuT",pageTitle:"dd-t-MKS",pageBackButton:"dd-cjptm",listHeader:"dd-Fg666",listHeading:"dd-w-xhJ",listMoreButton:"dd--mKep",listItem:"dd-wpvuA",listItemContent:"dd-V-mKo",listItemText:"dd-ukCHL",listItemDescription:"dd-sSyu4",listItemActions:"dd-xelho",listItemTooltip:"dd-SWFsE",listItemTooltipContent:"dd-I7J9N",truncate:"dd-IlopJ",lineClamp:"dd-Twaca",listItemTitle:"dd-lMGHq",listItemAction:"dd-xPLAs",listItemSelected:"dd-jFX0Y",sources:"dd-pZx4v",sourcesTitle:"dd-phYVd",source:"dd-DaR6h",sourceShowMore:"dd-M1-8j",icon:"dd-m6yxD",searchIcon:"dd-0AU-O",searchInputWrapper:"dd-DUFcE",searchInput:"dd-ukrlD",select:"dd--Tifv",selectType:"dd-IkZb2",selectWrapper:"dd-J14mx",image:"dd-RQgsB",imageSrc:"dd-jxh8F",imageSrcHidden:"dd-e20Jk",imageSrcStatus:"dd-j50Tt",imageTitle:"dd-qCjfW",actions:"dd-3mfWc",actionsWrapper:"dd-TjDyI",actionsBar:"dd-LiA35",actionButton:"dd-4wk0u",hasShortKeys:"dd-XilV-",actionShortcut:"dd-s4Mla",actionShortcutFixKerning:"dd-lyh5e"};var He={};J(He,{enUS:()=>Sf,nlNL:()=>xf});var Sf={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"}]},xf={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 An,jsxs as Tf}from"react/jsx-runtime";var Cf=({src:t,title:e})=>{let n=x("CommandPalette",ae),[o,s]=bf("loading"),r=R(He);return Tf("div",{className:n.image,children:[An("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:vr(n.imageSrc,{[n.imageSrcHidden]:["loading","error"].includes(o)})}),o==="loading"&&An("span",{className:vr(n.imageSrc,n.imageSrcStatus),children:r("loading")}),o==="error"&&An("span",{className:vr(n.imageSrc,n.imageSrcStatus),children:An($n,{})}),e&&An("span",{className:n.imageTitle,children:e})]})},Ol=Cf;import wf from"react";import Ef from"classnames";import{jsx as Sr,jsxs as Dl}from"react/jsx-runtime";function xr({children:t,heading:e,orientation:n,hasMore:o,onShowAll:s}){let r=R(He),i=x("CommandPalette",ae);return wf.Children.count(t)===0?null:Dl("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||o)&&Dl("div",{className:i.listHeader,children:[e&&Sr("h4",{className:i.listHeading,children:e}),o&&s&&Sr("button",{onClick:s,className:i.listMoreButton,type:"button",children:r("showAll")})]}),Sr("div",{className:Ef(i.listWrapper,n==="horizontal"&&i.listHorizontal),children:t})]})}import Ho from"classnames";import{Interweave as Ul}from"interweave";import{useEffect as Of,useMemo as Kl,useState as zl}from"react";var kf=/[.*+?^${}()|[\]\\]/g,Rf=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function Pf(t){return t.replace(kf,"\\$&")}function If(t,e){let n=t.split("").findIndex((o,s)=>o!==e[s]);return n>-1?n:Math.min(t.length,e.length)}function Lf(t){return t.search(Rf)}function _l(t,e=[]){let n=t;return e.forEach(o=>{if(!o)return;let s=new RegExp(`\\b(${Pf(o)})\\b`,"gi");n=n.replace(s,"<strong>$1</strong>")}),n}function Fl(t){return t.replace(Jn,'<mark data-type="placeholder">$1</mark>')}function Mn(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function Af(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 br(t,e,n={}){if(e){let o=If(e.toLowerCase(),t.toLowerCase()),s=Mn(t.substring(o,t.length));if(n.stripAgentPart){let d=t.substring(0,o),l=Lf(d);return`<span style="opacity: 0.5">${d.substring(l+1)}</span>${s}`}let i=e.split(Hi).length>3||e.length>30?Af(e.trim(),o):0;return`${`${i>0?"\u2026":""}${Mn(t.substring(i,o))}`}<strong>${s}</strong>`}return t}var Mf=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function Fo(t){return Mf.test(t)}function Cr(t){var n;let e=document.createElement("template");return e.innerHTML=t,(n=e.content.textContent)!=null?n:""}import Tr from"react";import{jsx as Nf}from"react/jsx-runtime";var Hl=Tr.createContext(void 0);function $t(){let t=Tr.useContext(Hl);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Bl=({children:t,page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r})=>{let i=Tr.useMemo(()=>({page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r}),[n,e,s]);return Nf(Hl.Provider,{value:i,children:t})};import{jsx as Be,jsxs as Bo}from"react/jsx-runtime";var Df=3,_f=90,Wl=({children:t})=>{let e=x("CommandPalette",ae);return Be("div",{className:e.listItemActions,children:t})};function wr(m){var f=m,{closeOnSelect:t=!0,lineClamp:e,tooltip:n,children:o,onClick:s,extra:r,onSourceClick:i,description:a,sources:d,id:l,styles:c,defaultSourcesAmount:p=Df}=f,u=M(f,["closeOnSelect","lineClamp","tooltip","children","onClick","extra","onSourceClick","description","sources","id","styles","defaultSourcesAmount"]);var Ie;let h=R(He),[g,S]=zl(!1),{selected:T,onChangeOpen:C}=$t(),[E,A]=zl(!1),N=x("CommandPalette",ae);function _(O){s(O),t&&C(!1)}let V=Kl(()=>typeof a!="string"?a:Fo(a)?Cr(a).trim():a,[a]),Pe=Kl(()=>typeof n!="string"?n:Fo(n)?Cr(n).trim():n,[n]);return Of(()=>{A(T===l)},[T]),Bo("div",{className:Ho(N.listItem,l===T&&N.listItemSelected),children:[Bo($,{placement:"right-start",tooltip:!0,onOpenChange:A,open:E,children:[Be($.Trigger,b(y({className:N.listItemAction,"aria-disabled":(Ie=u.disabled)!=null?Ie:!1,onClick:_,"data-command-palette-item":!0,"data-item-id":l},u),{children:Bo("div",{className:N.listItemContent,children:[typeof o=="string"?Be("p",{className:Ho(N.listItemText,N.truncate,c==null?void 0:c.title),children:o}):o,V&&typeof V=="string"?Be(Ul,{tagName:"p",allowList:[],content:V,className:Ho(N.listItemDescription,c==null?void 0:c.description,e?N.lineClamp:N.truncate)}):a]})})),Pe&&Pe.length>_f&&Be($.Content,{className:N.listItemTooltip,disableFocusManager:!0,children:Be(Ul,{className:N.listItemTooltipContent,allowList:["h1","h2","h3","h4","h5","h6","a","p","br"],tagName:"div",content:Pe.replace(/\n/g,"<br />")})})]}),l===T&&r,d&&d.length>0&&Bo("div",{className:N.sources,children:[Be("span",{className:N.sourcesTitle,children:h("sources")}),d.slice(0,g?d.length:p).map(O=>Be("a",{className:N.source,href:O.url,target:"_blank",title:O.url,rel:"noopener noreferrer","data-testid":"source",onClick:()=>i==null?void 0:i(O),children:O.name},O.url)),!g&&d.length>p&&Be("button",{className:Ho(N.source,N.sourceShowMore),type:"button",onClick:()=>S(!0),children:h("showMore",{amount:d.length-p})})]})]})}import{jsx as Vl,jsxs as Ff}from"react/jsx-runtime";var jl=()=>Ff("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[Vl("title",{id:"angleLeftTitle",children:"AngleLeft"}),Vl("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 $l,jsxs as Er}from"react/jsx-runtime";function kr({children:t,title:e,id:n,onDismiss:o}){let s=R(He),r=x("CommandPalette",ae),{page:i}=$t();return i!==n?null:Er("div",{className:r.page,id:`page_${n}`,tabIndex:-1,children:[o&&Er("div",{className:r.pageNav,children:[Er("button",{className:r.pageBackButton,type:"button",onClick:o,children:[$l(jl,{}),s("back")]}),e&&$l("h3",{className:r.pageTitle,children:e})]}),t]})}import{forwardRef as Bf}from"react";import{jsx as Gl,jsxs as Hf}from"react/jsx-runtime";var Gt=()=>Hf("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[Gl("path",{d:"M0 0h24v24H0z",fill:"none"}),Gl("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"})]});import{jsx as qt,jsxs as Rr}from"react/jsx-runtime";function Uf({onChange:t,onChangeType:e,placeholder:n,typePlaceholder:o,types:s,value:r,selectedType:i},a){let d=x("CommandPalette",ae);return Rr("div",{className:d.search,children:[qt("div",{className:d.searchIcon,children:qt(Gt,{})}),Rr("div",{className:d.searchInputWrapper,children:[qt("input",{ref:a,spellCheck:!1,autoComplete:"off",onChange:l=>{t(l.currentTarget.value)},onFocus:l=>{l.currentTarget.select()},className:d.searchInput,placeholder:n,value:r,type:"text",id:"command-palette-search-input",autoFocus:!0}),s&&s.length>0&&qt("div",{className:d.selectWrapper,children:Rr("select",{"data-testid":"command-palette-type-select",className:d.select,onChange:l=>e(l.target.value===o?void 0:l.target.value),value:i||o,children:[o&&qt("option",{children:o}),s.map(l=>qt("option",{value:l.value,children:l.label},l.value))]})})]})]})}var ql=Bf(Uf);import Xl from"classnames";import{jsx as zf,jsxs as Wf}from"react/jsx-runtime";var Kf=s=>{var r=s,{onClick:t,shortKeys:e,children:n}=r,o=M(r,["onClick","shortKeys","children"]);let i=x("CommandPalette",ae);return Wf("button",b(y({type:"button"},o),{onClick:t,className:Xl(i.actionButton,o.className,{[i.hasShortKeys]:e&&e.length>0}),children:[n,e==null?void 0:e.map(a=>zf("span",{className:Xl(i.actionShortcut,a===8629&&i.actionShortcutFixKerning),children:typeof a=="number"?String.fromCharCode(a):a},a))]}))},Jl=Kf;import{jsx as Zl,jsxs as qf}from"react/jsx-runtime";var Gf="[data-command-palette-item]";function St({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:p,search:u,updateDeps:m=[]}){let[f,h]=Vf(),g=jf(null),S=()=>{s&&s(n),i(void 0),r(""),a(!1)},T=()=>{var O;if(o!==n&&s){s(n);return}if(d&&i){i(void 0),(O=g.current)==null||O.focus();return}if(u.length>0){r("");return}a(!1)},C=()=>{let O=E();O.length!==0&&h(O[0].dataset.itemId)},E=()=>Array.from(document.querySelectorAll(Gf)||[]),A=O=>document.querySelector(`[data-item-id=${O}]`),N=O=>{let U=A(O);U&&h(U.dataset.itemId)},_=O=>{let U=A(O);U&&U.scrollIntoView({behavior:"smooth"})},V=()=>{if(!f)return;let O=E(),U=A(f);if(!U)return;let ve=O.indexOf(U),X=O[ve+1];X!=null&&X.dataset.itemId?N(X.dataset.itemId):C()},Pe=()=>{if(!f)return;let O=E(),U=A(f);if(!U)return;let ve=O.indexOf(U),X=O[ve-1];X!=null&&X.dataset.itemId?N(X.dataset.itemId):N(O[O.length-1].dataset.itemId)},Ie=$f(O=>{switch(O.key){case"ArrowDown":{O.preventDefault(),V();break}case"ArrowUp":{O.preventDefault(),Pe();break}case"Enter":{if(f){let U=A(f);U==null||U.click()}break}}},[f]);return Ql(()=>{C()},[u,o,d,p,...m]),Ql(()=>{f&&_(f)},[f]),Zl(jt,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:p,onBack:T,onClose:S,onKeyDown:Ie,children:qf(Bl,{selected:f,setSelected:h,isOpen:p,onChangeOpen:a,page:o,children:[o===n&&Zl(ql,{ref:g,onChange:r,onChangeType:i,placeholder:t,value:u,selectedType:d,types:l,typePlaceholder:e}),c]})})}St.Page=kr;St.List=xr;St.Image=Ol;St.ListItem=wr;St.ListItemActions=Wl;St.Button=Jl;var G=St;import{useEffect as Xf}from"react";function Yl(t,e){Xf(()=>{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 od,useRef as sh}from"react";import{useSelector as rh,useDispatch as ih}from"react-redux";import{createAsyncThunk as Jf,createSelector as Qf,createSlice as Zf}from"@reduxjs/toolkit";var ed={data:null,fetchState:"idle"},Yf=t=>{var e;return(e=t.entities.data)!=null?e:null},Uo=Qf([Yf,Ht,ma],(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}),ge=Jf("entities/getEntities",(t,e)=>v(null,null,function*(){let{deepdeskAPI:n,dynamicThunkObject:o}=e.extra;if(!o.conversationQuery)return Promise.resolve([]);let s=o.conversationQuery,r=yield s();return r.length===0?Promise.resolve([]):n.getEntities(r)})),eh=t=>t.filter((e,n)=>n===t.findIndex(o=>o.text===e.text)),th=Zf({name:"entities",initialState:ed,reducers:{},extraReducers:t=>{t.addCase(ge.pending,e=>{e.fetchState="loading"}).addCase(ge.rejected,e=>{e.fetchState="error"}).addCase(ge.fulfilled,(e,n)=>{e.fetchState="done",e.data=eh(e.data?[...e.data,...n.payload]:n.payload)}).addCase(j,()=>ed)}}),td=th.reducer;var Pr={};J(Pr,{enUS:()=>nh,nlNL:()=>oh});var nh={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},oh={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var nd={root:"dd-TYTKs",empty:"dd-AU7uT"};import{jsx as Ir,jsxs as lh}from"react/jsx-runtime";var ah=({onCopy:t})=>{let e=sh(null),n=x("EntitiesList",nd),o=rh(Uo),{setSelected:s}=$t(),r=R(Pr),i=ih();return od(()=>{i(ge())},[]),od(()=>{e.current&&(e.current.focus(),s("entity-0"))},[e]),lh("div",{className:n.root,ref:e,tabIndex:-1,children:[o&&o.length>0&&Ir(G.List,{children:o.map((a,d)=>Ir(G.ListItem,{id:`entity-${d}`,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities"),o&&o.length===0&&Ir("p",{className:n.empty,children:r("noResults")})]})},sd=ah;import{jsx as rd}from"react/jsx-runtime";var Ko=t=>rd("svg",b(y({xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512"},t),{children:rd("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 Nn={};J(Nn,{enUS:()=>dh,nlNL:()=>ch});var dh={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"}]},ch={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 id}from"react-redux";var zo={trigger:"dd-dQ-OH",content:"dd-9k0N3",item:"dd-va6pa"};import{jsx as Wo,jsxs as ph}from"react/jsx-runtime";var uh=({suggestion:t,source:e,context:n})=>{let o=R(Nn),s=id(Se),r=z(),i=w("enableSuggestionFeedback"),a=`${t.text}`,d=id(Qe(`/admin/feedback?conversationId=${s}&type=${e}&text=${a}&data=${JSON.stringify({context:n})}`)),l=()=>{r("suggestion feedback",{text:t.text,source:e,context:n})};return!i||!d?null:ph($,{placement:"top-end",children:[Wo($.Trigger,{className:zo.trigger,children:Wo(Ko,{"data-testid":"feedback-dropdown-trigger"})}),Wo($.Content,{className:zo.content,children:Wo($.Button,{className:zo.item,as:"a",onClick:l,target:"_blank",href:d,children:o("giveFeedback")})})]})},Vo=uh;var On={};J(On,{enUS:()=>gh,nlNL:()=>mh});var gh={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?"}]},mh={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 Sh}from"react";import{useDispatch as xh,useSelector as bh}from"react-redux";import{createAction as yh,createAsyncThunk as cd,createSlice as vh}from"@reduxjs/toolkit";var fh=["{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}"],hh=new RegExp(fh.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function ad(t,e){let n=t.split(hh),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 p=a.charAt(0),u=0;do l=p?e.indexOf(p,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 ld(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var ud={suggestions:[],fetchState:"idle"},dd={default:ud},pd=t=>e=>{var n,o;return(o=(n=e.textSuggestions[t])==null?void 0:n.suggestions)!=null?o:[]},jo=t=>t.textSuggestions,gd=t=>{let e=t.toLowerCase();return n=>{let o=n.text.toLowerCase();return o.startsWith(e)&&o.length>e.length}},$o=yh("textSuggestions/refresh"),me=cd("textSuggestions/recommendations",(t,e)=>v(null,null,function*(){var c,p,u;let{deepdeskAPI:n}=e.extra,o=e.getState(),{platformVariables:s}=o.info,{textSuggestionsCount:r,inlineSuggestions:i}=o.settings,a=Dt(o),d=(c=o.conversation.current)==null?void 0:c.id;if(!d)throw new Error("No current conversation to fetch text suggestions");if(!((p=o.profile.data)!=null&&p.recommendationEngine))return[];let l=[];if(t==="sticky-messages"){let m=(u=o.profile.data)==null?void 0:u.code;if(!m)throw new Error("No current profile to fetch pinned messages");l=yield n.getPinnedMessages(m)}else l=yield n.getTextSuggestions(d,gn(o),t);if(s&&(l=l.map(m=>y(b(y({},m),{text:ue(m.text,s)}),m.title?{title:ue(m.title,s)}:{}))),t==="default"){let m=i?l.filter(gd(a)):l;e.dispatch(Xe(m.slice(0,r)))}return l})),Dn=cd("textSuggestions/autocompletions",(t,e)=>v(null,null,function*(){var c,p;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(!((p=o.profile.data)!=null&&p.recommendationEngine))return[];if(!s)throw new Error("No current conversation to fetch text suggestions");let l=yield n.getAutocompleteSuggestions(s,b(y({},gn(o)),{input:t}));if(!e.getState().input.text)throw new Error("Abort");return d&&(l=l.filter(gd(t))),r&&(l=l.map(u=>b(y({},u),{text:ue(u.text,r)}))),a&&(l=l.map(u=>b(y({},u),{text:u.source!=="trie-with-typos"?ad(u.text,t):u.text}))),l=ld(l,i),e.dispatch(Xe(l)),l})),md=vh({name:"textSuggestions",initialState:dd,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(me.pending,(e,n)=>{let o=n.meta.arg,s=e[o]||ud;return b(y({},e),{[o]:b(y({},s),{fetchState:"loading"})})}).addCase(me.rejected,(e,n)=>{let o=n.meta.arg;e[o]&&(e[o].fetchState="error")}).addCase(me.fulfilled,(e,n)=>{let o=n.meta.arg;e[o]&&(e[o].fetchState="done",e[o].suggestions=n.payload)}).addCase(Dn.pending,e=>{e.default.fetchState="loading"}).addCase(Dn.rejected,e=>{e.default.fetchState="error"}).addCase(Dn.fulfilled,(e,n)=>{e.default.fetchState="done",e.default.suggestions=n.payload}).addCase(j,()=>dd)}}),{setTextSuggestions:VP}=md.actions,fd=md.reducer;import{jsx as Go,jsxs as Th}from"react/jsx-runtime";var Ch=({types:t,commands:e,onClick:n})=>{let o=xh(),s=R(On),r=bh(jo);return Sh(()=>{t.forEach(({type:i})=>{(!r[i]||r[i].suggestions.length===0)&&o(me(i))})},[]),Th("div",{children:[e.length>0&&Go(G.List,{heading:s("commands"),children:e.map((i,a)=>Go(G.ListItem,{id:`command-${a}`,closeOnSelect:!1,onClick:i.onClick,children:i.label},i.label))}),t.map(({type:i,title:a})=>{var d;return Go(G.List,{heading:a,orientation:"vertical",children:(d=r[i])==null?void 0:d.suggestions.map((l,c)=>Go(G.ListItem,{id:`${i}-${c}`,closeOnSelect:!1,description:l.title&&l.text,onClick:()=>n(l.text,l),"data-testid":"search-overlay-suggestion",children:l.title||l.text},`${l.id}-${l.text}`))},i)})]})},hd=Ch;import{jsx as we,jsxs as Mr}from"react/jsx-runtime";var Ih=200,Lh=5,Ah=4,Ar=(t,e,n)=>t.slice(0,n?10:e.toLowerCase()==="image"?Ah:Lh),Mh=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),Nh=()=>{var ve,X,st;let t=Ph(),e=oe(),n=R(On),[o,s]=Lr(!1),[r,i]=Lr(""),a=xt(wa),d=xt(vt),[l,c]=Lr(),p=xt(Q),u=w("showSearch"),m=w("enableSuggestionFeedback"),f=w("showEntitiesCommand"),h=w("showImageSearch"),g=w("searchTriggerKey"),S=xt(Rl),T=xt(Vs),C=xt(Ea),E=xt(Ta),A=((st=(X=(ve=d==null?void 0:d.uiConfig)==null?void 0:ve.search)==null?void 0:X.initialTypes)==null?void 0:st.filter(({isActive:L})=>L))||[],N=z(),_=Rh(()=>{let L=ne=>Ar(T.filter(W=>W.type===ne.toUpperCase()),ne,l),K=(S==null?void 0:S.map(ne=>({value:ne.code.toUpperCase(),label:`${ne.name}s`,list:L(ne.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[];if(K.push({value:"PERSONAL",label:n("personalSuggestions"),list:L("PERSONAL"),lineClamp:!1,listOrientation:"vertical"},{value:"URL",label:n("urlSuggestions"),list:L("URL"),lineClamp:!1,listOrientation:"vertical"},{value:"STICKYMESSAGE",label:n("pinnedMessages"),list:L("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical"}),h&&K.push({value:"IMAGE",label:n("imageSuggestions"),lineClamp:!1,list:L("IMAGE"),listOrientation:"horizontal"}),A.length===0)return K;let Le=A.map(ne=>K.find(W=>W.value.toLowerCase()===ne.type)).filter(ne=>!!ne),Pt=K.filter(ne=>!Le.find(W=>W.value===ne.value));return[...Le,...Pt]},[S,A,h,l]),V=[{label:n("entitiesClipboard"),onClick:()=>t(Bt("entities")),shouldShow:f&&Mh(n("entitiesClipboard"),r)}].filter(L=>L.shouldShow).filter(()=>!l),Pe=yd(Eh((L,K)=>{t(ct({query:L,type:K,tags:["search-overlay"],size:l?50:20}))},Ih),[l]),Ie=yd((L,K)=>{K.type==="IMAGE"?e.send($s,{suggestion:K}):e.send(Oe,{text:L,suggestion:K}),t(pe(!1))},[t]),O=L=>{be(L.text),N("entity copied",{entity:L,type:"copy"}),t(pe(!1))};function U(L){return K=>{o?window.confirm(n("warning"))&&(L(K),s(!1)):L(K)}}return vd(()=>{r?Pe(r,l):t(co())},[r,l]),vd(()=>{p&&t(Pn())},[p]),Yl(g,()=>{t(pe(!0)),N("open search",{via:"ctrl+k"})}),!u||!d?null:Mr(G,{placeholder:n("searchPlaceholder"),typePlaceholder:n("typePlaceholder"),onChangeSearch:i,onChangeOpen:U(L=>t(pe(L))),onChangeType:L=>c(L),onChangePage:U(L=>t(Bt(L))),selectedType:l,search:r,page:a,isOpen:E,types:_,updateDeps:[T],children:[Mr(G.Page,{id:"search",children:[r.length===0&&we(hd,{types:A,commands:V,onClick:Ie}),r.length>0&&Mr(kh,{children:[V.length>0&&we(G.List,{heading:n("commands"),children:V.map((L,K)=>we(G.ListItem,{closeOnSelect:!1,onClick:L.onClick,id:`commands-${K}`,children:L.label},L.label))}),_.map(({value:L,label:K,list:Le,lineClamp:Pt,listOrientation:ne})=>we(G.List,{heading:K,orientation:ne==="horizontal"?"horizontal":"vertical",onShowAll:()=>c(L),hasMore:!l&&C[L.toLowerCase()]>Ar(Le,L,l).length,children:Ar(Le,L,l).map(W=>we(G.ListItem,{id:`${L}-${W.id}`,closeOnSelect:!1,lineClamp:Pt,onClick:()=>Ie(W.text,W),description:L!=="IMAGE"?W.title&&W.text:void 0,tooltip:W.text,extra:m&&we(G.ListItemActions,{children:we(Vo,{context:r,source:"search",suggestion:W})}),children:L==="IMAGE"?we(G.Image,{title:W.title||W.text,src:W.image}):W.title||W.text},`${W.id}-${W.text}`))},L))]})]}),we(G.Page,{id:"entities",title:n("entitiesTitle"),onDismiss:U(()=>{t(Bt("search"))}),children:we(sd,{onCopy:O})})]})},Sd=Nh;import{jsx as xd,jsxs as _h}from"react/jsx-runtime";var Dh=()=>{let t=w("showSearch"),e=w("isEmbedded");return _h(Oh,{children:[t&&xd(Sd,{}),e&&xd(kl,{})]})},bd=Dh;import Uh from"classnames";import{useSelector as Kh}from"react-redux";import{jsx as Nr}from"react/jsx-runtime";var Cd=({className:t})=>Nr("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:Nr("g",{children:Nr("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
|
+
`,pt.MISSING_INTL_API,i);var E=n.getPluralRules(e,{type:c.pluralType}).select(u-(c.offset||0));C=c.options[E]||c.options.other}if(!C)throw new er(c.value,u,Object.keys(c.options),i);a.push.apply(a,wn(C.value,e,n,o,s,u-(c.offset||0)));continue}}return bg(a)}function Tg(t,e){return e?ie(ie(ie({},t||{}),e||{}),Object.keys(t).reduce(function(n,o){return n[o]=ie(ie({},t[o]),e[o]||{}),n},{})):t}function wg(t,e){return e?Object.keys(t).reduce(function(n,o){return n[o]=Tg(t[o],e[o]),n},ie({},t)):t}function tr(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,n){t[e]=n}}}}}function Eg(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:fo(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.NumberFormat).bind.apply(e,mo([void 0],n,!1)))},{cache:tr(t.number),strategy:ho.variadic}),getDateTimeFormat:fo(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.DateTimeFormat).bind.apply(e,mo([void 0],n,!1)))},{cache:tr(t.dateTime),strategy:ho.variadic}),getPluralRules:fo(function(){for(var e,n=[],o=0;o<arguments.length;o++)n[o]=arguments[o];return new((e=Intl.PluralRules).bind.apply(e,mo([void 0],n,!1)))},{cache:tr(t.pluralRules),strategy:ho.variadic})}}var nr=(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 p=c.reduce(function(u,m){return!u.length||m.type!==Y.literal||typeof u[u.length-1]!="string"?u.push(m.value):u[u.length-1]+=m.value,u},[]);return p.length<=1?p[0]||"":p},this.formatToParts=function(l){return wn(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=Ma(i,["formatters"]);this.ast=t.__parse(e,ie(ie({},d),{locale:this.resolvedLocale}))}else this.ast=e;if(!Array.isArray(this.ast))throw new TypeError("A message must be provided as a String or AST.");this.formats=wg(t.formats,o),this.formatters=s&&s.formatters||Eg(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=_a,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 Pg(t,e){return e.split(".").reduce((n,o)=>n?n[o]:void 0,t)}var Ig="dummy",or=kg(null);function R(t){var o;let e=Rg(or);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=Pg(n,s);return i?new nr(i).format(r):(e!==Ig&&console.warn(`${s} does not exist in messages of ${e}`),`[${s}]`)}}import{createAction as Ua,createAsyncThunk as Ka,createSlice as Ag}from"@reduxjs/toolkit";import{Marked as Lg}from"marked";var bo=(t,e)=>{let n=[],o=new Lg,s=r=>{r.type==="code"&&r.lang===e&&n.push(r.text)};return o.use({walkTokens:s}),o.parse(t),n};var Ba={cues:[],threads:{},pending:[]},za=t=>{var e;return(e=t.assistants)==null?void 0:e.cues};var Wa=t=>e=>{var n,o;return(o=(n=e.assistants)==null?void 0:n.threads[t])!=null?o:null},Co=Ua("assistants/callToAction"),En=Ka("assistants/evaluateKnowledgeAssistant",(t,e)=>v(null,null,function*(){var l,c,p;let{threadId:n}=t,{onNewThreadId:o}=t,{deepdeskAPI:s}=e.extra,r=e.getState(),{platformVariables:i}=r.info;n||(n=(yield s.createAssistantThread({assistantCode:t.assistantCode})).id,o&&o(n)),yield s.postMessageToAssistantThread({assistantCode:t.assistantCode,threadId:n,message:t.input});let a=yield e.dispatch(xe(b(y({skipState:!0},t),{input:{},threadId:n})));if(a.error)throw new Error(a.error.message);let d=(l=a.payload.output[0])!=null?l:{response:"",sources:[]};return{threadId:n,question:t.input,evaluationId:a.payload.evaluationId,answer:{answer:(c=ue(d.response,i!=null?i:{}))!=null?c:"",sources:(p=d.sources)!=null?p:[]}}})),mT=Ua("assistants/extractedTextSuggestions");function Mg(t,e){var n,o;return Array.isArray(t.output)?t.output:typeof t.output=="string"?[{code:e,name:e,response:t.output}]:[b(y({code:e,name:e},t.output&&typeof t.output=="object"?t.output:{}),{response:(o=(n=t.output)==null?void 0:n.response)!=null?o:""})]}var xe=Ka("assistants/evaluate",(t,e)=>v(null,null,function*(){var f;let{deepdeskAPI:n,dynamicThunkObject:o}=e.extra,{transcript:s,input:r={},threadId:i}=t,a=e.getState(),{platformVariables:d}=a.info,l=(f=a.conversation.current)==null?void 0:f.externalId,c;if(s==="in-memory-transcript"){if(!o.conversationQuery)throw new Error("Can't include in-memory-transcript, setConversationQuery is not defined");c=yield o.conversationQuery()}else Array.isArray(s)&&(c=s);if(t.includeMetadata){if(!a.conversation.current)throw new Error("Can't include metadata, no current conversation");let{metadata:g}=a.conversation.current;Object.assign(r,{metadata:g})}let p=yield n.evaluateAssistant(t.assistantCode,{input:r,transcript:c,externalConversationId:l,threadId:i});if(p.evaluationStatus!=="success")return e.rejectWithValue(`Assistant ${t.assistantCode} evaluation failed: ${p.evaluationStatus}`);let m=Mg(p,t.assistantCode).map(g=>b(y({},g),{name:ue(g.name,d),response:ue(g.response,d)||""})),h=[];return m.forEach(g=>{if(!g.response)return;let S=bo(g.response,"reply");S.length!==0&&h.push(...S.map(T=>({text:T,type:"text",source:"assistant",assistantCode:g.code,sourceLabel:g.name})))}),h.length>0&&e.dispatch(Ft(h)),b(y({},p),{output:m})})),Va=Ag({name:"assistants",initialState:Ba,reducers:{resetCues(t){t.cues=[]},removeCueByCode(t,e){t.cues=t.cues.filter(n=>n.code!==e.payload.code)},removeThreadById(t,e){delete t.threads[e.payload]},receiveChunk(t,e){let{code:n,name:o,payload:s,evaluationId:r}=e.payload,i=t.cues.findIndex(a=>a.code===n);i!==-1?t.cues[i].response+=s.text:t.cues.push({code:n,name:o,evaluationId:r,response:s.text})},userNotification(t,e){let n=t.cues.filter(d=>d.code!==e.payload.code),{code:o,name:s,evaluationId:r,payload:i}=e.payload,{callToAction:a}=i;t.cues=[...n,{code:o,name:s,evaluationId:r,response:i.message,editable:i.editableMessage,callToAction:a&&{label:a.displayName,event:a.onClickEvent,value:a.eventPayload}}]}},extraReducers:t=>{t.addCase(xe.pending,(e,n)=>{e.pending.includes(n.meta.arg.assistantCode)&&k.warn(`Assistant ${n.meta.arg.assistantCode} already evaluating`),e.pending.push(n.meta.arg.assistantCode)}).addCase(xe.rejected,(e,n)=>{var s;k.warn((s=n.error)==null?void 0:s.message);let o=e.pending.indexOf(n.meta.arg.assistantCode);o!==-1&&e.pending.splice(o,1)}).addCase(xe.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}=n.payload,i=r.map(l=>l.code),a=e.cues.filter(l=>!i.includes(l.code)),d=r.map(l=>b(y({},l),{evaluationId:s}));e.cues=[...a,...d]}).addCase(En.fulfilled,(e,n)=>{let r=n.payload,{threadId:o}=r,s=M(r,["threadId"]);e.threads[o]=[...e.threads[o]||[],s]}).addCase(j,()=>Ba)}}),{removeCueByCode:To,resetCues:fT,removeThreadById:ja,receiveChunk:$a,userNotification:Ga}=Va.actions,qa=Va.reducer;import{createSlice as Ng}from"@reduxjs/toolkit";import{useSelector as Og}from"react-redux";var Dg={locale:"en-US",deanonymize:!1,fallbackImage:!1,isEmbedded:!1,showImages:!1,showSearch:!1,showImageSearch:!1,showStyleSuggestions:!1,showStyleSuggestionList:!1,showMidSentenceSuggestions:!1,showSuggestionsBeforePattern:!1,showSuggestionsAfterPattern:!1,showTabCompletion:!0,showTextSuggestions:!0,showEntitiesCommand:!1,showSummaryCommand:!1,showKnowledgeSearch:!1,textSuggestionsCount:3,recommendTextSuggestions:!0,searchTriggerKey:"k",visible:!0,insertLink:!1,addToPersonalCollection:!1,inlineSuggestions:!1,autoSelectSuggestion:!1,suggestionsPlacement:"above",floatingMenu:!1,detectSubmit:!1,automaticHandlingTime:!1,enableSuggestionFeedback:!1,enableFeedbackForm:!0,adminUrl:void 0,productName:"Deepdesk",hasKeyboardInput:!0},Xa=Ng({name:"settings",initialState:Dg,reducers:{set(t,e){Object.entries(e.payload).forEach(n=>{let[o,s]=n;typeof s!="undefined"&&(t[o]=s)})}}}),{set:wo}=Xa.actions,gt=t=>e=>e.settings[t],w=t=>Og(gt(t)),Ja=Xa.reducer;function be(t){let e=document.createElement("textarea");e.value=t,e.style.position="fixed",e.style.left="-999999px",e.style.top="-999999px",document.body.appendChild(e),e.focus(),e.select(),document.execCommand("copy"),e.remove()}import ir from"classnames";import{useState as Hg}from"react";import{jsx as Qa}from"react/jsx-runtime";var sr=t=>Qa("svg",b(y({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Qa("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 Za}from"react/jsx-runtime";var Ya=t=>Za("svg",b(y({width:"16",height:"16",fill:"#000000"},t),{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Za("path",{fillRule:"evenodd",d:"M7.65336736,21.1256786 C7.2933164,21.6534897 6.68712411,22 6,22 L4,22 C2.8954305,22 2,21.1045695 2,20 L2,11 C2,9.8954305 2.8954305,9 4,9 L6,9 C6.198171,9 6.38961023,9.02882212 6.57035446,9.08250314 C7.6444817,7.51807482 11.2554748,3.57449216 12.2202699,2.37298955 L12.5204954,1.99910538 L13,1.99910538 C13.6147967,1.99901314 14.1422801,2.04513312 14.748281,2.22159137 C16.091867,2.61282321 17,3.52709845 17,4.99910538 C17,5.51921677 16.9079007,6.07373891 16.7382242,6.68923415 C16.6259612,7.09646424 16.4872151,7.50766133 16.2970775,8.01801005 C16.2391583,8.17347129 16.007193,8.78168345 15.9547911,8.92337824 C15.9451954,8.94932503 15.9359266,8.9745589 15.9269768,8.99910538 L19,8.99910538 C20.8695981,8.99910538 22,10.316625 22,11.9991054 C22,17.9426745 20.7551411,21.9991054 18,21.9991054 L11.0344006,21.9985135 C10.3408482,22.0111947 9.50544052,21.9186578 8.66312366,21.6172857 C8.29521907,21.4856533 7.9567386,21.3218904 7.65336736,21.1256786 Z M8,17.9991054 C8,18.9013355 8.45196659,19.4175764 9.33687634,19.7341879 C9.91062406,19.9394688 10.5253746,20.0075638 10.963066,19.9997143 C10.9703499,19.9995545 10.9703499,19.9995545 11,19.9991054 L18,19.9991054 C19.015127,19.9991054 20,16.7898506 20,11.9991054 C20,11.3589955 19.6912225,10.9991054 19,10.9991054 L15,10.9991054 C13.8054549,10.9991054 13.5555377,10.0754586 13.8046536,9.07541689 C13.8632547,8.84017106 13.9489218,8.5812741 14.0789589,8.22965366 C14.1358033,8.07594642 14.3689242,7.46470447 14.4229225,7.31976744 C14.5944107,6.85947528 14.7161494,6.4986824 14.8101464,6.1577119 C14.9359344,5.70142019 15,5.31568707 15,4.99910538 C15,4.54813166 14.7621788,4.30870189 14.1891338,4.1418399 C13.9483736,4.07173418 13.7113931,4.0330943 13.4599624,4.01423587 C11.914268,5.86195611 8.40663864,9.70054105 8.14171093,10.3190878 C8.04443154,10.5462133 8,10.7589101 8,10.9991054 L8,17.9991054 Z M4,11 L4,20 L6,20 L6,11 L4,11 Z"})}));function Je(t,e){var s;let n=t.cloneNode(!0);n.style.top=`${t.offsetTop}px`,n.style.left=`${t.offsetLeft}px`,n.style.position="absolute",e.split(" ").forEach(r=>{n.classList.add(r)}),n.addEventListener("animationend",()=>n.remove()),(s=t.parentElement)==null||s.appendChild(n)}var rr={};J(rr,{enUS:()=>_g,nlNL:()=>Fg});var _g={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},Fg={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};var el={thumbs:"dd-5F1zq",fadeup:"dd-eTmY-",fadedown:"dd-sS85z",selected:"dd-rid-f",thumbsUp:"dd-4poEf",thumbsDown:"dd-3KozS"};import{useSelector as tl}from"react-redux";var Qe=t=>e=>{let{passwordlessToken:{token:n},settings:{isEmbedded:o,adminUrl:s}}=e,r=s||window.location.origin;return o&&!n?null:o&&n?`${r}/apis/admin/session/passwordless/login/?token=${n}&redirect=${encodeURIComponent(t)}`:`${r}${t}`};import{jsx as Kt,jsxs as Ug}from"react/jsx-runtime";var Bg=({assistantCode:t,assistantOutput:e,evaluationId:n,feedbackType:o,feedbackText:s})=>{let r=x("FeedbackThumbs",el),i=w("enableFeedbackForm"),a=tl(Se),d=tl(Qe(`/admin/feedback?conversationId=${a}&evaluationId=${n}&type=${o}&text=${s}&assistantCode=${t}&assistantOutput=${e}`)),l=R(rr),c=z(),[p,u]=Hg(null),m=g=>{c("Assistant response feedback",{assistantCode:t,assistantOutput:e,evaluationId:n,rating:g})},h=g=>{g.stopPropagation(),Je(g.target,r.fadeup),u("up"),m("up")},f=g=>{g.stopPropagation(),Je(g.target,r.fadedown),u("down"),m("down")};return Ug("div",{className:r.thumbs,children:[Kt(I.Button,{title:l("thumbsUp"),onClick:h,icon:Kt(Ya,{}),className:ir(r.thumbsUp,p==="up"&&r.selected),disabled:!!p}),i&&d?Kt(I.Button,{as:"a",title:l("thumbsDown"),href:d,target:"_blank",rel:"noreferrer",onClick:f,icon:Kt(sr,{}),className:ir(r.thumbsDown,p==="down"&&r.selected),disabled:!!p}):Kt(I.Button,{title:l("thumbsDown"),onClick:f,icon:Kt(sr,{}),className:ir(r.thumbsDown,p==="down"&&r.selected),disabled:!!p})]})},Eo=Bg;import tm from"dompurify";import{Fragment as ll,useMemo as nm,useRef as om,useState as sm}from"react";import il from"classnames";import{createRef as Qg,useCallback as lr,useMemo as Zg,useRef as Yg,useState as em}from"react";import{useState as Kg,useLayoutEffect as zg}from"react";var Wg=["bottom","height","left","right","top","width"],Vg=(t={},e={})=>Wg.some(n=>t[n]!==e[n]),_e=new Map,nl,ol=()=>{let t=[],e=[];_e.forEach((n,o)=>{if(o instanceof Element&&!o.isConnected){e.push(o);return}let s=o.getBoundingClientRect();Vg(s,n.rect)&&(n.rect=s,t.push(n))}),e.forEach(n=>{_e.delete(n)}),t.forEach(n=>{n.callbacks.forEach(o=>o(n.rect))}),nl=window.requestAnimationFrame(ol)};function jg(t,e){return{observe(){let n=_e.size===0;if(_e.has(t)){let o=_e.get(t);o.callbacks.push(e),o.rect&&e(o.rect)}else _e.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});n&&ol()},unobserve(){let n=_e.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||_e.delete(t),_e.size||cancelAnimationFrame(nl)}}}}function ar(t){let[e,n]=Kg(null);return zg(()=>{if(!t.current)return;let o=jg(t.current,s=>{n(s)});return o.observe(),()=>{o.unobserve()}},[t]),e}import{useContext as Gg,useLayoutEffect as qg,useState as Xg}from"react";import{createPortal as Jg}from"react-dom";import{useEffect as $g}from"react";function mt(t){$g(()=>{let e=n=>{n.isWithinRoot||t(n)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function ft(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}var sl={root:"dd-r-dgo"};var rl=({children:t,parentNode:e})=>{let[n,o]=Xg(null),s=Gg(an);return qg(()=>{let r=document.createElement("div");return ft(r),r.classList.add(sl.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?Jg(t,n):null};var Ce={ref:"dd-iz-KP",root:"dd-vEMon",positionAbove:"dd-mUCxM",positionBelow:"dd-7oZI7",positionLeft:"dd-BiWvD",positionRight:"dd-JIWea",alignStart:"dd-5ivu6",alignCenter:"dd-rnVkP",alignEnd:"dd-gZBp4"};import{jsx as dr}from"react/jsx-runtime";var ko=(t=!1)=>{let[e,n]=em(t),o=lr(()=>n(!0),[]),s=lr(()=>n(!1),[]),r=lr(()=>n(a=>!a),[]),i=Yg(null);return{opened:e,open:o,close:s,toggle:r,triggerRef:i}};function cr(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 zt=l=>{var c=l,{className:t,triggerRef:e,boundaryRef:n=Qg(),position:o="above",align:s="center",children:r,toStyle:i=cr,parentNode:a}=c,d=M(c,["className","triggerRef","boundaryRef","position","align","children","toStyle","parentNode"]);let p=ar(e),u=ar(n),m=Zg(()=>i(p,u,0),[p,u]);return dr(rl,{parentNode:a,children:dr("div",b(y({className:il(Ce.ref,{[Ce.positionAbove]:o==="above",[Ce.positionBelow]:o==="below",[Ce.positionLeft]:o==="left",[Ce.positionRight]:o==="right",[Ce.alignStart]:s==="start",[Ce.alignCenter]:s==="center",[Ce.alignEnd]:s==="end"}),style:m},d),{role:"dialog",children:dr("div",{className:il(t,Ce.root),children:r})}))})};var al={root:"dd-L7b3z",popover:"dd-OQOTB",options:"dd-Y12RE",arrow:"dd-cv33T",copyIcon:"dd-6xOsH",option:"dd-9oFX4",divider:"dd-aiZf8",fadeup:"dd-Jq9pd"};import{marked as rm}from"marked";import{jsx as kn,jsxs as Ro}from"react/jsx-runtime";function im(t){return`<button type="button" data-copy-icon class=${t}><svg version="1.1" x="0px" y="0px" viewBox="0 0 115.77 122.88" width="10px" height="10px" fill="black"><g><path d="M89.62,13.96v7.73h12.19h0.01v0.02c3.85,0.01,7.34,1.57,9.86,4.1c2.5,2.51,4.06,5.98,4.07,9.82h0.02v0.02 v73.27v0.01h-0.02c-0.01,3.84-1.57,7.33-4.1,9.86c-2.51,2.5-5.98,4.06-9.82,4.07v0.02h-0.02h-61.7H40.1v-0.02 c-3.84-0.01-7.34-1.57-9.86-4.1c-2.5-2.51-4.06-5.98-4.07-9.82h-0.02v-0.02V92.51H13.96h-0.01v-0.02c-3.84-0.01-7.34-1.57-9.86-4.1 c-2.5-2.51-4.06-5.98-4.07-9.82H0v-0.02V13.96v-0.01h0.02c0.01-3.85,1.58-7.34,4.1-9.86c2.51-2.5,5.98-4.06,9.82-4.07V0h0.02h61.7 h0.01v0.02c3.85,0.01,7.34,1.57,9.86,4.1c2.5,2.51,4.06,5.98,4.07,9.82h0.02V13.96L89.62,13.96z M79.04,21.69v-7.73v-0.02h0.02 c0-0.91-0.39-1.75-1.01-2.37c-0.61-0.61-1.46-1-2.37-1v0.02h-0.01h-61.7h-0.02v-0.02c-0.91,0-1.75,0.39-2.37,1.01 c-0.61,0.61-1,1.46-1,2.37h0.02v0.01v64.59v0.02h-0.02c0,0.91,0.39,1.75,1.01,2.37c0.61,0.61,1.46,1,2.37,1v-0.02h0.01h12.19V35.65 v-0.01h0.02c0.01-3.85,1.58-7.34,4.1-9.86c2.51-2.5,5.98-4.06,9.82-4.07v-0.02h0.02H79.04L79.04,21.69z M105.18,108.92V35.65v-0.02 h0.02c0-0.91-0.39-1.75-1.01-2.37c-0.61-0.61-1.46-1-2.37-1v0.02h-0.01h-61.7h-0.02v-0.02c-0.91,0-1.75,0.39-2.37,1.01 c-0.61,0.61-1,1.46-1,2.37h0.02v0.01v73.27v0.02h-0.02c0,0.91,0.39,1.75,1.01,2.37c0.61,0.61,1.46,1,2.37,1v-0.02h0.01h61.7h0.02 v0.02c0.91,0,1.75-0.39,2.37-1.01c0.61-0.61,1-1.46,1-2.37h-0.02V108.92L105.18,108.92z"/></g></svg></button>`}function ur(t){var n,o;let e=t.cloneNode(!0);return e.querySelectorAll("div,button").forEach(s=>s.remove()),(o=(n=e.textContent)==null?void 0:n.trim())!=null?o:""}function am(t){return t.replace(/\r\n/g,`
|
|
4
|
+
`)}var lm=({content:t,useLabel:e,copyLabel:n,onCopy:o,onUse:s})=>{let r=x("Markdown",al),i=om(null),[a,d]=sm(null),l=nm(()=>{let f=rm.parse(am(t));return tm.sanitize(f.toString()).replaceAll("</code>",`${im(r.copyIcon)}</code>`).replaceAll('<a href="','<a target="_blank" rel="noreferrer noopener" href="')},[t]),c=f=>{var T;let g=f.target,S=!!((T=i.current)!=null&&T.querySelector("code"));if(["A","BUTTON"].includes(g.tagName)){d(null);return}a||S&&g.tagName!=="CODE"||!S&&g!==i.current||(g.addEventListener("mouseleave",()=>d(null),{once:!0}),d(g))},p=()=>{if(!a)return;d(null);let f=a.querySelector("button");f&&(Je(f,r.fadeup),o==null||o(ur(a)))},u=f=>{let g=f.target,S=g instanceof HTMLElement?g:null;if(g instanceof Element?g.closest("a"):null){f.stopPropagation();return}S&&"copyIcon"in S.dataset&&(Je(S,r.fadeup),o==null||o(ur(S.parentElement)))},m=()=>{!a||!s||(d(null),s(ur(a)))},h=f=>{if(f===null)return;let g=f.getBoundingClientRect();g.left<0?f.style.transform=`translateX(${-g.left+2}px)`:g.right>window.innerWidth&&(f.style.transform=`translateX(${window.innerWidth-g.right-2}px)`)};return Ro(ll,{children:[a&&(o||s)&&Ro(zt,{triggerRef:{current:a},className:r.popover,parentNode:a,children:[Ro("div",{className:r.options,ref:h,children:[o&&(a==null?void 0:a.tagName)==="CODE"&&kn("button",{type:"button",className:r.option,onClick:p,children:n}),s&&Ro(ll,{children:[kn("div",{className:r.divider}),kn("button",{type:"button",className:r.option,onClick:m,children:e})]})]}),kn("div",{className:r.arrow})]}),kn("div",{ref:i,"data-testid":"widget-markdown-content",className:r.root,dangerouslySetInnerHTML:{__html:l},onMouseOver:c,onClick:u})]})},ht=lm;import{useRef as um}from"react";var dl={loadingBar:"dd-6as-V",placeHolderShimmer:"dd-TFYmA"};import{jsx as cm}from"react/jsx-runtime";var dm=({width:t})=>{let e=x("LoadingProgressBar",dl);return cm("div",{className:e.loadingBar,style:{width:t}})},Po=dm;import{jsx as Wt,jsxs as pm}from"react/jsx-runtime";var Io=({title:t})=>{let e=um(null);return Xn(e),Wt(I,{ref:e,children:Wt(D,{children:pm(D.Content,{children:[Wt(D.Title,{children:t}),Wt(Po,{width:"60%"}),Wt(Po,{width:"90%"}),Wt(Po,{width:"50%"})]})})})};var Vt={};J(Vt,{enUS:()=>gm,nlNL:()=>mm});var gm={inputPlaceholder:[{type:0,value:"What is your question?"}],useCue:[{type:0,value:"Add to message"}],copyCue:[{type:0,value:"Copy"}],removeCue:[{type:0,value:"Close"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}],submitLabel:[{type:0,value:"Submit"}],resetLabel:[{type:0,value:"Reset"}],showMore:[{type:0,value:"Show "},{type:1,value:"amount"},{type:0,value:" more"}]},mm={inputPlaceholder:[{type:0,value:"Wat is je vraag?"}],useCue:[{type:0,value:"Voeg toe aan bericht"}],copyCue:[{type:0,value:"Kopi\xEBren"}],removeCue:[{type:0,value:"Sluiten"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}],submitLabel:[{type:0,value:"Verzend"}],resetLabel:[{type:0,value:"Gesprek wissen"}],showMore:[{type:0,value:"Toon "},{type:1,value:"amount"},{type:0,value:" meer"}]};var Lo={form:"dd-pleCH",formInput:"dd-pGJMY",formSubmit:"dd--gkRg",actionButton:"dd-I2NEH",resetContainer:"dd-qKIDX",sources:"dd-xf9c6",source:"dd-a-vyX",tooltip:"dd-EsgcZ",linkContent:"dd-gARDA",showMoreSources:"dd-uDGi-"};import*as Te from"react";import{useFloating as fm,autoUpdate as hm,useClick as ym,useDismiss as vm,useRole as Sm,useInteractions as xm,useMergeRefs as ul,FloatingPortal as bm,FloatingFocusManager as Cm,useHover as Tm,offset as wm,flip as Em,shift as km,safePolygon as Rm}from"@floating-ui/react";var Ao={tooltip:"dd-XpCXd",tooltipTrigger:"dd-8TKeF",arrow:"dd-ZEu2Y"};import{jsx as Ze,jsxs as cl}from"react/jsx-runtime";function Pm({initialOpen:t=!1,placement:e="bottom",modal:n,tooltip:o,open:s,onOpenChange:r}={}){let[i,a]=Te.useState(t),d=s!=null?s:i,l=r!=null?r:a,c=fm({placement:e,open:d,onOpenChange:l,whileElementsMounted:hm,middleware:[wm(5),Em({crossAxis:e.includes("-"),fallbackAxisSideDirection:"end",padding:5}),km({padding:10})]}),p=c.context,u=ym(p,{enabled:s==null}),m=vm(p),h=Sm(p),f=Tm(p,{enabled:o!=null?o:!1,handleClose:Rm()}),g=xm([u,m,h,f]);return Te.useMemo(()=>b(y(y({open:d,setOpen:l},g),c),{modal:n}),[d,l,g,c,n])}var pl=Te.createContext(null),pr=()=>{let t=Te.useContext(pl);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=M(s,["children","modal"]);let r=Pm(y({modal:e},n));return Ze(pl.Provider,{value:r,children:t})};function Im(o){var s=o,{as:t,children:e}=s,n=M(s,["as","children"]);let r=pr(),i=t||"button",a=e.ref,d=ul([r.refs.setReference,a]);return Ze(i,b(y({ref:d,type:"button"},r.getReferenceProps(n)),{children:e}))}var Lm=Te.forwardRef(function(s,o){var r=s,{style:e}=r,n=M(r,["style"]);let l=pr(),{context:i}=l,a=M(l,["context"]),d=ul([a.refs.setFloating,o]);return i.open?Ze(bm,{children:Ze(Cm,{context:i,modal:a.modal,disabled:n.disableFocusManager,children:Ze("div",b(y({ref:d,style:y(b(y({},a.floatingStyles),{zIndex:1e7}),e)},a.getFloatingProps(n)),{children:n.children}))})}):null});function Am(s){var r=s,{as:t,children:e,onClick:n}=r,o=M(r,["as","children","onClick"]);let{setOpen:i}=pr();return Ze(t||"button",b(y({type:"button",onClick:l=>{n(l),i(!1),l.stopPropagation()}},o),{children:e}))}function gl({trigger:t,children:e,placement:n="top"}){return cl(yt,{tooltip:!0,placement:n,children:[cl(yt.Content,{className:Ao.tooltip,children:[e,Ze("div",{className:Ao.arrow})]}),Ze(yt.Trigger,{className:Ao.tooltipTrigger,children:t})]})}yt.Trigger=Im;yt.Content=Lm;yt.Button=Am;var $=yt;import{useRef as Om}from"react";var ml={error:"dd-CoAuB"};var gr={};J(gr,{enUS:()=>Mm,nlNL:()=>Nm});var Mm={errorPrefix:[{type:0,value:"Error:"}]},Nm={errorPrefix:[{type:0,value:"Foutmelding:"}]};import{jsx as fl,jsxs as Dm}from"react/jsx-runtime";var hl=({message:t})=>{let e=Om(null),n=x("WidgetCardError",ml),o=R(gr);return Xn(e),fl(I,{ref:e,children:fl(D,{children:Dm(D.Content,{className:n.error,children:[o("errorPrefix")," ",t]})})})};import{jsx as H,jsxs as Fe}from"react/jsx-runtime";var Km=3,zm=({sources:t,onClick:e})=>{let n=R(Vt),o=x("WidgetKnowledgeAssistant",Lo),[s,r]=vt(!1),i=s?t:t.slice(0,Km);return i.length===0?null:Fe("ul",{className:o.sources,children:[i.map(a=>H("li",{className:o.source,"data-testid":"knowledge-assist-source",children:Fe($,{tooltip:!0,placement:"top-start",children:[H($.Trigger,{as:"a",rel:"noreferrer",target:"_blank",href:a.url,onClick:d=>{d.stopPropagation(),e(a)},children:H("span",{className:o.linkContent,children:a.name})}),a.url&&H($.Content,{className:o.tooltip,children:decodeURIComponent(a.url)})]})},a.name)),i<t&&H("button",{type:"button",className:o.showMoreSources,onClick:()=>r(!0),children:n("showMore",{amount:t.length-i.length})})]})},Wm=({title:t,description:e})=>H(I,{"data-testid":"knowledge-assist-empty-state",children:H(D,{children:Fe(D.Content,{children:[H(D.Title,{children:t}),H(ht,{content:e})]})})}),Vm=({innerRef:t,item:e,hasKeyboardInput:n,onCopy:o,onUse:s,onSourceClick:r})=>{var d;let i=R(Vt),a=mr(Mo);return Fe(I,{"data-testid":"knowledge-assist-answer",ref:t,children:[H(D,{children:Fe(D.Content,{children:[H(D.Title,{children:e.question}),H(ht,{content:e.answer.answer,useLabel:i("useCue"),copyLabel:i("copyCue"),onCopy:o,onUse:n?s:void 0}),H(zm,{sources:(d=e.answer.sources)!=null?d:[],onClick:r})]})}),a.assistantCode&&Fe(I.ButtonsContainer,{children:[H("div",{}),H(Eo,{evaluationId:e.evaluationId,feedbackType:"assistant",assistantCode:a.assistantCode,assistantOutput:e.answer.answer,feedbackText:e.answer.answer})]})]})},Mo=_m(null),No=({assistantCode:t,evaluateKnowledgeAssistFn:e,initialQuestion:n,children:o})=>{let[s,r]=vt(null),[i,a]=vt(!1),[d,l]=vt(null),[c,p]=vt(!!n),[u,m]=vt(null),h=Bm(),f=z(),g=go(C=>{if(!t)throw new Error("No knowledge assistant was defined");return l(null),e({assistantCode:t,input:C,threadId:s,onNewThreadId(E){r(E)}})},{onSuccess(C){var E;f("Assistant response displayed",{evaluationId:C.evaluationId,assistantCode:t,assistantOutput:C.answer.answer,input:C.question,sources:(E=C.answer.sources)!=null?E:[]}),p(!1)},onError(C){var E;l((E=C.message)!=null?E:"Unknown error")}}),S=C=>v(null,null,function*(){a(!0),m(C),yield g.call(C),a(!1),m(null)}),T={isEnabled:!!t,assistantCode:t,isSubmitting:i,threadId:s,pendingInput:u,errorMessage:d,onSubmit:S,onReset(){s&&h(ja(s)),l(null),r(null),t&&f("Assistant thread reset",{threadId:s!=null?s:void 0,assistantCode:t})}};return Hm(()=>{n&&T.isEnabled&&S(n)},[n]),H(Mo.Provider,{value:T,children:o})},Oo=()=>{let t=R(Vt),e=x("WidgetKnowledgeAssistant",Lo),n=mr(Mo),o=yl(null),[s,r]=vt(""),i=d=>{r(d.target.value)},a=d=>{d.preventDefault(),n.onSubmit(s).then(()=>{var l;o.current&&((l=o.current)==null||l.focus(),r(""))})};return n.isEnabled?Fe("form",{className:e.form,onSubmit:a,children:[H("input",{ref:o,className:e.formInput,placeholder:t("inputPlaceholder"),type:"text",disabled:n.isSubmitting,value:s,onChange:i}),H("button",{type:"submit",disabled:n.isSubmitting||s==="",className:e.formSubmit,children:t("submitLabel")})]}):null},Do=({title:t,emptyState:e})=>{var h,f;let n=R(Vt),o=z(),s=x("WidgetKnowledgeAssistant",Lo),r=yl(null),i=mr(Mo),a=(f=Um(Wa((h=i.threadId)!=null?h:-1)))!=null?f:[],d=w("hasKeyboardInput"),l=oe(),c=(g,S)=>{be(g),i.assistantCode&&o("Assistant response copied",{assistantCode:i.assistantCode,assistantOutput:g,copiedText:g,evaluationId:S.evaluationId})},p=(g,S)=>{i.assistantCode&&o("Assistant source clicked",{evaluationId:S.evaluationId,assistantCode:i.assistantCode,source:g})},u=g=>{g.preventDefault(),i.onReset()},m=(g,S)=>{l.send(Oe,{text:g,suggestion:{source:"assistant",sourceText:g}}),i.assistantCode&&o("Assistant response used",{assistantCode:i.assistantCode,evaluationId:S.evaluationId,assistantOutput:S.answer.answer,usedText:g})};return!i.isEnabled||(a==null?void 0:a.length)===0&&!i.isSubmitting&&!e&&!i.errorMessage?null:Fe(Fm,{children:[H(Ae,{type:"knowledge",title:t,"data-testid":"knowledge",children:Fe(Z,{withDivider:!0,children:[e&&a.length===0&&!i.pendingInput&&H(Wm,y({},e)),a.map((g,S)=>H(Vm,{innerRef:S===a.length-1?r:void 0,item:g,hasKeyboardInput:d,onCopy:T=>c(T,g),onUse:T=>m(T,g),onSourceClick:T=>p(T,g)},`${g.question}_${g.answer}_${S}`)),i.pendingInput&&H(Io,{title:i.pendingInput}),i.errorMessage&&H(hl,{message:i.errorMessage})]})}),a.length>0&&H("div",{className:s.resetContainer,children:H(I.Button,{disabled:i.threadId===null||i.isSubmitting,onClick:u,children:n("resetLabel")})})]})};import{createRoot as ot}from"react-dom/client";import{Fragment as Oh}from"react";import{useSelector as El}from"react-redux";import hr from"classnames";import{useCallback as Tl,useEffect as Ym,useMemo as ef,useState as yr}from"react";import{useDispatch as tf,useSelector as nf}from"react-redux";import{useEffect as jm,useRef as $m}from"react";var Sl={root:"dd-tvkOF",content:"dd-eXA1D"};import{jsx as xl}from"react/jsx-runtime";var Gm=({isOpen:t,autoFocus:e,children:n,onClose:o,onBack:s,onKeyDown:r,overlayAriaLabel:i,contentAriaLabel:a})=>{let d=$m(null),l=x("Dialog",Sl),c=u=>{if(u.key==="Escape"){u.preventDefault(),u.stopPropagation(),s();return}r&&r(u)},p=u=>{u.target===d.current&&t&&o()};return jm(()=>{var u,m;!d.current||!t||!e||(m=(u=d.current)==null?void 0:u.querySelector("input, textarea"))==null||m.focus()},[t,e,d]),t?xl("div",{role:"dialog","data-testid":"dialog",className:l.root,"aria-label":i,ref:d,onKeyDown:c,onMouseDown:p,children:xl("div",{"data-testid":"dialog-content",className:l.content,"aria-label":a,children:n})}):null},jt=Gm;import qm from"classnames";var bl={root:"dd-ranhW"};import{jsx as Jm}from"react/jsx-runtime";var Xm=o=>{var s=o,{className:t,value:e}=s,n=M(s,["className","value"]);let r=x("TextInput",bl);return Jm("input",y({className:qm(t,r.root),type:"text",value:e},n))},Rn=Xm;var fr={};J(fr,{enUS:()=>Qm,nlNL:()=>Zm});var Qm={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"}]},Zm={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 Cl={root:"dd-lWxnE",anchorButton:"dd-TZ4in",errorMessage:"dd-fIsPg",title:"dd-pGhJx",subtitle:"dd-f5l29",text:"dd-iamoD",input:"dd-uhQZ3",actions:"dd-lubvx",button:"dd-CJsNI",primaryButton:"dd-MWBfl"};import{jsx as se,jsxs as _o}from"react/jsx-runtime";var of=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch(e){return t}},sf=({agentEmail:t,isOpen:e,origin:n="",onSuccess:o,onDismiss:s})=>{let r=R(fr),i=x("LoginTokenDialog",Cl),a=nf(Ki),d=tf(),l=w("productName"),[c,p]=yr(t||""),[u,m]=yr(0),[h,f]=yr(""),g=Tl(E=>v(null,null,function*(){E.preventDefault(),d(Vi({email:c})),m(1)}),[n,c]),S=()=>{f(""),m(0)},T=Tl(E=>v(null,null,function*(){E.preventDefault();let A=of(E.target.elements.token.value);if(!A){f(r("verifyCodeError",{login:C}));return}d(cn({token:A}))}),[n]),C=ef(()=>E=>se("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:S,children:E},"back-button"),[]);return Ym(()=>{a==="error"&&f(r("verifyCodeError",{login:C})),a==="done"&&o()},[a]),se(jt,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:l}),overlayAriaLabel:r("promptTitle",{productName:l}),onClose:s,onBack:s,children:_o("div",{className:i.root,children:[se("h1",{className:i.title,children:r("promptTitle",{productName:l})}),u===0&&_o("form",{onSubmit:g,children:[se("h2",{className:i.subtitle,children:r("requestCodeTitle")}),se("p",{className:i.text,children:r("requestCodeBody",{productName:l})}),se(Rn,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:c,onChange:E=>p(E.target.value)}),se("div",{className:i.actions,children:se("button",{type:"submit",className:hr(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),u===1&&_o("form",{onSubmit:T,children:[se("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),se("p",{className:i.text,children:r("verifyCodeBody")}),se(Rn,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),h&&se("div",{className:i.errorMessage,children:h}),_o("div",{className:i.actions,children:[se("button",{type:"button",className:hr(i.button),onClick:S,children:r("back")}),se("button",{type:"submit",className:hr(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},wl=sf;import{jsx as af}from"react/jsx-runtime";var rf=()=>{let t=El(zi),e=El(Ht),n=w("adminUrl"),o=oe(),s=()=>o.send(Ut,!1),r=()=>{o.send(Ut,!1),o.send(mn)};return af(wl,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:n,onDismiss:s,onSuccess:r})},kl=rf;import Eh from"lodash.debounce";import{Fragment as kh,useCallback as yd,useEffect as vd,useMemo as Rh,useState as Lr}from"react";import{useDispatch as Ph,useSelector as bt}from"react-redux";import{createAsyncThunk as lf,createSlice as df}from"@reduxjs/toolkit";var cf={data:null,fetchState:"idle"},Rl=t=>t.contentTypes.data,Pn=lf("contentTypes/getContentTypes",(t,e)=>v(null,null,function*(){return e.extra.deepdeskAPI.getContentTypes()})),uf=df({name:"contentTypes",initialState:cf,reducers:{},extraReducers:t=>{t.addCase(Pn.pending,e=>{e.fetchState="loading"}).addCase(Pn.rejected,e=>{e.fetchState="error"}).addCase(Pn.fulfilled,(e,n)=>{e.fetchState="done",e.data=n.payload})}}),Pl=uf.reducer;import{createAsyncThunk as pf,createSelector as gf,createSlice as mf}from"@reduxjs/toolkit";var ff={data:null,fetchState:"idle"},hf=[],St=t=>t.profile.data,yf=t=>t.profile.data?t.profile.data.uiConfig.widget.types:hf,Ln=gf([yf],t=>t.filter(e=>e.isActive)),Il=t=>{var e;return((e=t.profile.data)==null?void 0:e.onDemandAssistants)||[]},Ll=t=>e=>Ln(e).find(n=>n.type===t),Al=t=>t.profile.data?!!t.profile.data.uiConfig.widget.types.find(e=>e.type==="custom-data"):!1,Ml=t=>{var e,n;return(n=(e=t.profile.data)==null?void 0:e.knowledgeAssistantNew)!=null?n:null},In=pf("profile/getProfile",(t,e)=>v(null,null,function*(){var r;let{deepdeskAPI:n}=e.extra,o=e.getState(),s=o.conversation.current;if(!s||!s.profileCode)throw new Error("No conversation of conversation profileCode found");return((r=o.profile.data)==null?void 0:r.code)===s.profileCode?o.profile.data:n.getProfile(s.profileCode)})),vf=mf({name:"profile",initialState:ff,reducers:{},extraReducers:t=>{t.addCase(In.pending,e=>{e.fetchState="loading"}).addCase(In.rejected,e=>{e.fetchState="error"}).addCase(In.fulfilled,(e,n)=>{e.fetchState="done",e.data=n.payload})}}),Nl=vf.reducer;import{useEffect as Ql,useState as Vf,useRef as jf,useCallback as $f}from"react";import{useState as bf}from"react";import vr from"classnames";var ae={root:"dd-U2SX4",list:"dd-cYTlj",listWrapper:"dd-GLQFR",listHorizontal:"dd-x-knl",page:"dd-1F4vk",search:"dd-nvbxc",pageNav:"dd-sRUuT",pageTitle:"dd-t-MKS",pageBackButton:"dd-cjptm",listHeader:"dd-Fg666",listHeading:"dd-w-xhJ",listMoreButton:"dd--mKep",listItem:"dd-wpvuA",listItemContent:"dd-V-mKo",listItemText:"dd-ukCHL",listItemDescription:"dd-sSyu4",listItemActions:"dd-xelho",listItemTooltip:"dd-SWFsE",listItemTooltipContent:"dd-I7J9N",truncate:"dd-IlopJ",lineClamp:"dd-Twaca",listItemTitle:"dd-lMGHq",listItemAction:"dd-xPLAs",listItemSelected:"dd-jFX0Y",sources:"dd-pZx4v",sourcesTitle:"dd-phYVd",source:"dd-DaR6h",sourceShowMore:"dd-M1-8j",icon:"dd-m6yxD",searchIcon:"dd-0AU-O",searchInputWrapper:"dd-DUFcE",searchInput:"dd-ukrlD",select:"dd--Tifv",selectType:"dd-IkZb2",selectWrapper:"dd-J14mx",image:"dd-RQgsB",imageSrc:"dd-jxh8F",imageSrcHidden:"dd-e20Jk",imageSrcStatus:"dd-j50Tt",imageTitle:"dd-qCjfW",actions:"dd-3mfWc",actionsWrapper:"dd-TjDyI",actionsBar:"dd-LiA35",actionButton:"dd-4wk0u",hasShortKeys:"dd-XilV-",actionShortcut:"dd-s4Mla",actionShortcutFixKerning:"dd-lyh5e"};var He={};J(He,{enUS:()=>Sf,nlNL:()=>xf});var Sf={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"}]},xf={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 An,jsxs as Tf}from"react/jsx-runtime";var Cf=({src:t,title:e})=>{let n=x("CommandPalette",ae),[o,s]=bf("loading"),r=R(He);return Tf("div",{className:n.image,children:[An("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:vr(n.imageSrc,{[n.imageSrcHidden]:["loading","error"].includes(o)})}),o==="loading"&&An("span",{className:vr(n.imageSrc,n.imageSrcStatus),children:r("loading")}),o==="error"&&An("span",{className:vr(n.imageSrc,n.imageSrcStatus),children:An($n,{})}),e&&An("span",{className:n.imageTitle,children:e})]})},Ol=Cf;import wf from"react";import Ef from"classnames";import{jsx as Sr,jsxs as Dl}from"react/jsx-runtime";function xr({children:t,heading:e,orientation:n,hasMore:o,onShowAll:s}){let r=R(He),i=x("CommandPalette",ae);return wf.Children.count(t)===0?null:Dl("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||o)&&Dl("div",{className:i.listHeader,children:[e&&Sr("h4",{className:i.listHeading,children:e}),o&&s&&Sr("button",{onClick:s,className:i.listMoreButton,type:"button",children:r("showAll")})]}),Sr("div",{className:Ef(i.listWrapper,n==="horizontal"&&i.listHorizontal),children:t})]})}import Ho from"classnames";import{Interweave as Ul}from"interweave";import{useEffect as Of,useMemo as Kl,useState as zl}from"react";var kf=/[.*+?^${}()|[\]\\]/g,Rf=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function Pf(t){return t.replace(kf,"\\$&")}function If(t,e){let n=t.split("").findIndex((o,s)=>o!==e[s]);return n>-1?n:Math.min(t.length,e.length)}function Lf(t){return t.search(Rf)}function _l(t,e=[]){let n=t;return e.forEach(o=>{if(!o)return;let s=new RegExp(`\\b(${Pf(o)})\\b`,"gi");n=n.replace(s,"<strong>$1</strong>")}),n}function Fl(t){return t.replace(Jn,'<mark data-type="placeholder">$1</mark>')}function Mn(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function Af(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 br(t,e,n={}){if(e){let o=If(e.toLowerCase(),t.toLowerCase()),s=Mn(t.substring(o,t.length));if(n.stripAgentPart){let d=t.substring(0,o),l=Lf(d);return`<span style="opacity: 0.5">${d.substring(l+1)}</span>${s}`}let i=e.split(Hi).length>3||e.length>30?Af(e.trim(),o):0;return`${`${i>0?"\u2026":""}${Mn(t.substring(i,o))}`}<strong>${s}</strong>`}return t}var Mf=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function Fo(t){return Mf.test(t)}function Cr(t){var n;let e=document.createElement("template");return e.innerHTML=t,(n=e.content.textContent)!=null?n:""}import Tr from"react";import{jsx as Nf}from"react/jsx-runtime";var Hl=Tr.createContext(void 0);function $t(){let t=Tr.useContext(Hl);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Bl=({children:t,page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r})=>{let i=Tr.useMemo(()=>({page:e,isOpen:n,onChangeOpen:o,selected:s,setSelected:r}),[n,e,s]);return Nf(Hl.Provider,{value:i,children:t})};import{jsx as Be,jsxs as Bo}from"react/jsx-runtime";var Df=3,_f=90,Wl=({children:t})=>{let e=x("CommandPalette",ae);return Be("div",{className:e.listItemActions,children:t})};function wr(m){var h=m,{closeOnSelect:t=!0,lineClamp:e,tooltip:n,children:o,onClick:s,extra:r,onSourceClick:i,description:a,sources:d,id:l,styles:c,defaultSourcesAmount:p=Df}=h,u=M(h,["closeOnSelect","lineClamp","tooltip","children","onClick","extra","onSourceClick","description","sources","id","styles","defaultSourcesAmount"]);var Ie;let f=R(He),[g,S]=zl(!1),{selected:T,onChangeOpen:C}=$t(),[E,A]=zl(!1),N=x("CommandPalette",ae);function _(O){s(O),t&&C(!1)}let V=Kl(()=>typeof a!="string"?a:Fo(a)?Cr(a).trim():a,[a]),Pe=Kl(()=>typeof n!="string"?n:Fo(n)?Cr(n).trim():n,[n]);return Of(()=>{A(T===l)},[T]),Bo("div",{className:Ho(N.listItem,l===T&&N.listItemSelected),children:[Bo($,{placement:"right-start",tooltip:!0,onOpenChange:A,open:E,children:[Be($.Trigger,b(y({className:N.listItemAction,"aria-disabled":(Ie=u.disabled)!=null?Ie:!1,onClick:_,"data-command-palette-item":!0,"data-item-id":l},u),{children:Bo("div",{className:N.listItemContent,children:[typeof o=="string"?Be("p",{className:Ho(N.listItemText,N.truncate,c==null?void 0:c.title),children:o}):o,V&&typeof V=="string"?Be(Ul,{tagName:"p",allowList:[],content:V,className:Ho(N.listItemDescription,c==null?void 0:c.description,e?N.lineClamp:N.truncate)}):a]})})),Pe&&Pe.length>_f&&Be($.Content,{className:N.listItemTooltip,disableFocusManager:!0,children:Be(Ul,{className:N.listItemTooltipContent,allowList:["h1","h2","h3","h4","h5","h6","a","p","br"],tagName:"div",content:Pe.replace(/\n/g,"<br />")})})]}),l===T&&r,d&&d.length>0&&Bo("div",{className:N.sources,children:[Be("span",{className:N.sourcesTitle,children:f("sources")}),d.slice(0,g?d.length:p).map(O=>Be("a",{className:N.source,href:O.url,target:"_blank",title:O.url,rel:"noopener noreferrer","data-testid":"source",onClick:()=>i==null?void 0:i(O),children:O.name},O.url)),!g&&d.length>p&&Be("button",{className:Ho(N.source,N.sourceShowMore),type:"button",onClick:()=>S(!0),children:f("showMore",{amount:d.length-p})})]})]})}import{jsx as Vl,jsxs as Ff}from"react/jsx-runtime";var jl=()=>Ff("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[Vl("title",{id:"angleLeftTitle",children:"AngleLeft"}),Vl("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 $l,jsxs as Er}from"react/jsx-runtime";function kr({children:t,title:e,id:n,onDismiss:o}){let s=R(He),r=x("CommandPalette",ae),{page:i}=$t();return i!==n?null:Er("div",{className:r.page,id:`page_${n}`,tabIndex:-1,children:[o&&Er("div",{className:r.pageNav,children:[Er("button",{className:r.pageBackButton,type:"button",onClick:o,children:[$l(jl,{}),s("back")]}),e&&$l("h3",{className:r.pageTitle,children:e})]}),t]})}import{forwardRef as Bf}from"react";import{jsx as Gl,jsxs as Hf}from"react/jsx-runtime";var Gt=()=>Hf("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[Gl("path",{d:"M0 0h24v24H0z",fill:"none"}),Gl("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"})]});import{jsx as qt,jsxs as Rr}from"react/jsx-runtime";function Uf({onChange:t,onChangeType:e,placeholder:n,typePlaceholder:o,types:s,value:r,selectedType:i},a){let d=x("CommandPalette",ae);return Rr("div",{className:d.search,children:[qt("div",{className:d.searchIcon,children:qt(Gt,{})}),Rr("div",{className:d.searchInputWrapper,children:[qt("input",{ref:a,spellCheck:!1,autoComplete:"off",onChange:l=>{t(l.currentTarget.value)},onFocus:l=>{l.currentTarget.select()},className:d.searchInput,placeholder:n,value:r,type:"text",id:"command-palette-search-input",autoFocus:!0}),s&&s.length>0&&qt("div",{className:d.selectWrapper,children:Rr("select",{"data-testid":"command-palette-type-select",className:d.select,onChange:l=>e(l.target.value===o?void 0:l.target.value),value:i||o,children:[o&&qt("option",{children:o}),s.map(l=>qt("option",{value:l.value,children:l.label},l.value))]})})]})]})}var ql=Bf(Uf);import Xl from"classnames";import{jsx as zf,jsxs as Wf}from"react/jsx-runtime";var Kf=s=>{var r=s,{onClick:t,shortKeys:e,children:n}=r,o=M(r,["onClick","shortKeys","children"]);let i=x("CommandPalette",ae);return Wf("button",b(y({type:"button"},o),{onClick:t,className:Xl(i.actionButton,o.className,{[i.hasShortKeys]:e&&e.length>0}),children:[n,e==null?void 0:e.map(a=>zf("span",{className:Xl(i.actionShortcut,a===8629&&i.actionShortcutFixKerning),children:typeof a=="number"?String.fromCharCode(a):a},a))]}))},Jl=Kf;import{jsx as Zl,jsxs as qf}from"react/jsx-runtime";var Gf="[data-command-palette-item]";function xt({placeholder:t="Start typing to search...",typePlaceholder:e="All types",defaultPage:n="search",page:o,onChangePage:s,onChangeSearch:r,onChangeType:i,onChangeOpen:a,selectedType:d,types:l,children:c,isOpen:p,search:u,updateDeps:m=[]}){let[h,f]=Vf(),g=jf(null),S=()=>{s&&s(n),i(void 0),r(""),a(!1)},T=()=>{var O;if(o!==n&&s){s(n);return}if(d&&i){i(void 0),(O=g.current)==null||O.focus();return}if(u.length>0){r("");return}a(!1)},C=()=>{let O=E();O.length!==0&&f(O[0].dataset.itemId)},E=()=>Array.from(document.querySelectorAll(Gf)||[]),A=O=>document.querySelector(`[data-item-id=${O}]`),N=O=>{let U=A(O);U&&f(U.dataset.itemId)},_=O=>{let U=A(O);U&&U.scrollIntoView({behavior:"smooth"})},V=()=>{if(!h)return;let O=E(),U=A(h);if(!U)return;let ve=O.indexOf(U),X=O[ve+1];X!=null&&X.dataset.itemId?N(X.dataset.itemId):C()},Pe=()=>{if(!h)return;let O=E(),U=A(h);if(!U)return;let ve=O.indexOf(U),X=O[ve-1];X!=null&&X.dataset.itemId?N(X.dataset.itemId):N(O[O.length-1].dataset.itemId)},Ie=$f(O=>{switch(O.key){case"ArrowDown":{O.preventDefault(),V();break}case"ArrowUp":{O.preventDefault(),Pe();break}case"Enter":{if(h){let U=A(h);U==null||U.click()}break}}},[h]);return Ql(()=>{C()},[u,o,d,p,...m]),Ql(()=>{h&&_(h)},[h]),Zl(jt,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:p,onBack:T,onClose:S,onKeyDown:Ie,children:qf(Bl,{selected:h,setSelected:f,isOpen:p,onChangeOpen:a,page:o,children:[o===n&&Zl(ql,{ref:g,onChange:r,onChangeType:i,placeholder:t,value:u,selectedType:d,types:l,typePlaceholder:e}),c]})})}xt.Page=kr;xt.List=xr;xt.Image=Ol;xt.ListItem=wr;xt.ListItemActions=Wl;xt.Button=Jl;var G=xt;import{useEffect as Xf}from"react";function Yl(t,e){Xf(()=>{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 od,useRef as sh}from"react";import{useSelector as rh,useDispatch as ih}from"react-redux";import{createAsyncThunk as Jf,createSelector as Qf,createSlice as Zf}from"@reduxjs/toolkit";var ed={data:null,fetchState:"idle"},Yf=t=>{var e;return(e=t.entities.data)!=null?e:null},Uo=Qf([Yf,Ht,ma],(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}),ge=Jf("entities/getEntities",(t,e)=>v(null,null,function*(){let{deepdeskAPI:n,dynamicThunkObject:o}=e.extra;if(!o.conversationQuery)return Promise.resolve([]);let s=o.conversationQuery,r=yield s();return r.length===0?Promise.resolve([]):n.getEntities(r)})),eh=t=>t.filter((e,n)=>n===t.findIndex(o=>o.text===e.text)),th=Zf({name:"entities",initialState:ed,reducers:{},extraReducers:t=>{t.addCase(ge.pending,e=>{e.fetchState="loading"}).addCase(ge.rejected,e=>{e.fetchState="error"}).addCase(ge.fulfilled,(e,n)=>{e.fetchState="done",e.data=eh(e.data?[...e.data,...n.payload]:n.payload)}).addCase(j,()=>ed)}}),td=th.reducer;var Pr={};J(Pr,{enUS:()=>nh,nlNL:()=>oh});var nh={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},oh={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var nd={root:"dd-TYTKs",empty:"dd-AU7uT"};import{jsx as Ir,jsxs as lh}from"react/jsx-runtime";var ah=({onCopy:t})=>{let e=sh(null),n=x("EntitiesList",nd),o=rh(Uo),{setSelected:s}=$t(),r=R(Pr),i=ih();return od(()=>{i(ge())},[]),od(()=>{e.current&&(e.current.focus(),s("entity-0"))},[e]),lh("div",{className:n.root,ref:e,tabIndex:-1,children:[o&&o.length>0&&Ir(G.List,{children:o.map((a,d)=>Ir(G.ListItem,{id:`entity-${d}`,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities"),o&&o.length===0&&Ir("p",{className:n.empty,children:r("noResults")})]})},sd=ah;import{jsx as rd}from"react/jsx-runtime";var Ko=t=>rd("svg",b(y({xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512"},t),{children:rd("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 Nn={};J(Nn,{enUS:()=>dh,nlNL:()=>ch});var dh={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"}]},ch={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 id}from"react-redux";var zo={trigger:"dd-dQ-OH",content:"dd-9k0N3",item:"dd-va6pa"};import{jsx as Wo,jsxs as ph}from"react/jsx-runtime";var uh=({suggestion:t,source:e,context:n})=>{let o=R(Nn),s=id(Se),r=z(),i=w("enableSuggestionFeedback"),a=`${t.text}`,d=id(Qe(`/admin/feedback?conversationId=${s}&type=${e}&text=${a}&data=${JSON.stringify({context:n})}`)),l=()=>{r("suggestion feedback",{text:t.text,source:e,context:n})};return!i||!d?null:ph($,{placement:"top-end",children:[Wo($.Trigger,{className:zo.trigger,children:Wo(Ko,{"data-testid":"feedback-dropdown-trigger"})}),Wo($.Content,{className:zo.content,children:Wo($.Button,{className:zo.item,as:"a",onClick:l,target:"_blank",href:d,children:o("giveFeedback")})})]})},Vo=uh;var On={};J(On,{enUS:()=>gh,nlNL:()=>mh});var gh={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?"}]},mh={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 Sh}from"react";import{useDispatch as xh,useSelector as bh}from"react-redux";import{createAction as yh,createAsyncThunk as cd,createSlice as vh}from"@reduxjs/toolkit";var fh=["{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}"],hh=new RegExp(fh.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function ad(t,e){let n=t.split(hh),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 p=a.charAt(0),u=0;do l=p?e.indexOf(p,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 ld(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var ud={suggestions:[],fetchState:"idle"},dd={default:ud},pd=t=>e=>{var n,o;return(o=(n=e.textSuggestions[t])==null?void 0:n.suggestions)!=null?o:[]},jo=t=>t.textSuggestions,gd=t=>{let e=t.toLowerCase();return n=>{let o=n.text.toLowerCase();return o.startsWith(e)&&o.length>e.length}},$o=yh("textSuggestions/refresh"),me=cd("textSuggestions/recommendations",(t,e)=>v(null,null,function*(){var c,p,u;let{deepdeskAPI:n}=e.extra,o=e.getState(),{platformVariables:s}=o.info,{textSuggestionsCount:r,inlineSuggestions:i}=o.settings,a=at(o),d=(c=o.conversation.current)==null?void 0:c.id;if(!d)throw new Error("No current conversation to fetch text suggestions");if(!((p=o.profile.data)!=null&&p.recommendationEngine))return[];let l=[];if(t==="sticky-messages"){let m=(u=o.profile.data)==null?void 0:u.code;if(!m)throw new Error("No current profile to fetch pinned messages");l=yield n.getPinnedMessages(m)}else l=yield n.getTextSuggestions(d,gn(o),t);if(s&&(l=l.map(m=>y(b(y({},m),{text:ue(m.text,s)}),m.title?{title:ue(m.title,s)}:{}))),t==="default"){let m=i?l.filter(gd(a)):l;e.dispatch(Xe(m.slice(0,r)))}return l})),Dn=cd("textSuggestions/autocompletions",(t,e)=>v(null,null,function*(){var c,p;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(!((p=o.profile.data)!=null&&p.recommendationEngine))return[];if(!s)throw new Error("No current conversation to fetch text suggestions");let l=yield n.getAutocompleteSuggestions(s,b(y({},gn(o)),{input:t}));if(!e.getState().input.text)throw new Error("Abort");return d&&(l=l.filter(gd(t))),r&&(l=l.map(u=>b(y({},u),{text:ue(u.text,r)}))),a&&(l=l.map(u=>b(y({},u),{text:u.source!=="trie-with-typos"?ad(u.text,t):u.text}))),l=ld(l,i),e.dispatch(Xe(l)),l})),md=vh({name:"textSuggestions",initialState:dd,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(me.pending,(e,n)=>{let o=n.meta.arg,s=e[o]||ud;return b(y({},e),{[o]:b(y({},s),{fetchState:"loading"})})}).addCase(me.rejected,(e,n)=>{let o=n.meta.arg;e[o]&&(e[o].fetchState="error")}).addCase(me.fulfilled,(e,n)=>{let o=n.meta.arg;e[o]&&(e[o].fetchState="done",e[o].suggestions=n.payload)}).addCase(Dn.pending,e=>{e.default.fetchState="loading"}).addCase(Dn.rejected,e=>{e.default.fetchState="error"}).addCase(Dn.fulfilled,(e,n)=>{e.default.fetchState="done",e.default.suggestions=n.payload}).addCase(j,()=>dd)}}),{setTextSuggestions:VP}=md.actions,fd=md.reducer;import{jsx as Go,jsxs as Th}from"react/jsx-runtime";var Ch=({types:t,commands:e,onClick:n})=>{let o=xh(),s=R(On),r=bh(jo);return Sh(()=>{t.forEach(({type:i})=>{(!r[i]||r[i].suggestions.length===0)&&o(me(i))})},[]),Th("div",{children:[e.length>0&&Go(G.List,{heading:s("commands"),children:e.map((i,a)=>Go(G.ListItem,{id:`command-${a}`,closeOnSelect:!1,onClick:i.onClick,children:i.label},i.label))}),t.map(({type:i,title:a})=>{var d;return Go(G.List,{heading:a,orientation:"vertical",children:(d=r[i])==null?void 0:d.suggestions.map((l,c)=>Go(G.ListItem,{id:`${i}-${c}`,closeOnSelect:!1,description:l.title&&l.text,onClick:()=>n(l.text,l),"data-testid":"search-overlay-suggestion",children:l.title||l.text},`${l.id}-${l.text}`))},i)})]})},hd=Ch;import{jsx as we,jsxs as Mr}from"react/jsx-runtime";var Ih=200,Lh=5,Ah=4,Ar=(t,e,n)=>t.slice(0,n?10:e.toLowerCase()==="image"?Ah:Lh),Mh=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),Nh=()=>{var ve,X,st;let t=Ph(),e=oe(),n=R(On),[o,s]=Lr(!1),[r,i]=Lr(""),a=bt(wa),d=bt(St),[l,c]=Lr(),p=bt(Q),u=w("showSearch"),m=w("enableSuggestionFeedback"),h=w("showEntitiesCommand"),f=w("showImageSearch"),g=w("searchTriggerKey"),S=bt(Rl),T=bt(Vs),C=bt(Ea),E=bt(Ta),A=((st=(X=(ve=d==null?void 0:d.uiConfig)==null?void 0:ve.search)==null?void 0:X.initialTypes)==null?void 0:st.filter(({isActive:L})=>L))||[],N=z(),_=Rh(()=>{let L=ne=>Ar(T.filter(W=>W.type===ne.toUpperCase()),ne,l),K=(S==null?void 0:S.map(ne=>({value:ne.code.toUpperCase(),label:`${ne.name}s`,list:L(ne.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[];if(K.push({value:"PERSONAL",label:n("personalSuggestions"),list:L("PERSONAL"),lineClamp:!1,listOrientation:"vertical"},{value:"URL",label:n("urlSuggestions"),list:L("URL"),lineClamp:!1,listOrientation:"vertical"},{value:"STICKYMESSAGE",label:n("pinnedMessages"),list:L("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical"}),f&&K.push({value:"IMAGE",label:n("imageSuggestions"),lineClamp:!1,list:L("IMAGE"),listOrientation:"horizontal"}),A.length===0)return K;let Le=A.map(ne=>K.find(W=>W.value.toLowerCase()===ne.type)).filter(ne=>!!ne),It=K.filter(ne=>!Le.find(W=>W.value===ne.value));return[...Le,...It]},[S,A,f,l]),V=[{label:n("entitiesClipboard"),onClick:()=>t(Bt("entities")),shouldShow:h&&Mh(n("entitiesClipboard"),r)}].filter(L=>L.shouldShow).filter(()=>!l),Pe=yd(Eh((L,K)=>{t(ut({query:L,type:K,tags:["search-overlay"],size:l?50:20}))},Ih),[l]),Ie=yd((L,K)=>{K.type==="IMAGE"?e.send($s,{suggestion:K}):e.send(Oe,{text:L,suggestion:K}),t(pe(!1))},[t]),O=L=>{be(L.text),N("entity copied",{entity:L,type:"copy"}),t(pe(!1))};function U(L){return K=>{o?window.confirm(n("warning"))&&(L(K),s(!1)):L(K)}}return vd(()=>{r?Pe(r,l):t(co())},[r,l]),vd(()=>{p&&t(Pn())},[p]),Yl(g,()=>{t(pe(!0)),N("open search",{via:"ctrl+k"})}),!u||!d?null:Mr(G,{placeholder:n("searchPlaceholder"),typePlaceholder:n("typePlaceholder"),onChangeSearch:i,onChangeOpen:U(L=>t(pe(L))),onChangeType:L=>c(L),onChangePage:U(L=>t(Bt(L))),selectedType:l,search:r,page:a,isOpen:E,types:_,updateDeps:[T],children:[Mr(G.Page,{id:"search",children:[r.length===0&&we(hd,{types:A,commands:V,onClick:Ie}),r.length>0&&Mr(kh,{children:[V.length>0&&we(G.List,{heading:n("commands"),children:V.map((L,K)=>we(G.ListItem,{closeOnSelect:!1,onClick:L.onClick,id:`commands-${K}`,children:L.label},L.label))}),_.map(({value:L,label:K,list:Le,lineClamp:It,listOrientation:ne})=>we(G.List,{heading:K,orientation:ne==="horizontal"?"horizontal":"vertical",onShowAll:()=>c(L),hasMore:!l&&C[L.toLowerCase()]>Ar(Le,L,l).length,children:Ar(Le,L,l).map(W=>we(G.ListItem,{id:`${L}-${W.id}`,closeOnSelect:!1,lineClamp:It,onClick:()=>Ie(W.text,W),description:L!=="IMAGE"?W.title&&W.text:void 0,tooltip:W.text,extra:m&&we(G.ListItemActions,{children:we(Vo,{context:r,source:"search",suggestion:W})}),children:L==="IMAGE"?we(G.Image,{title:W.title||W.text,src:W.image}):W.title||W.text},`${W.id}-${W.text}`))},L))]})]}),we(G.Page,{id:"entities",title:n("entitiesTitle"),onDismiss:U(()=>{t(Bt("search"))}),children:we(sd,{onCopy:O})})]})},Sd=Nh;import{jsx as xd,jsxs as _h}from"react/jsx-runtime";var Dh=()=>{let t=w("showSearch"),e=w("isEmbedded");return _h(Oh,{children:[t&&xd(Sd,{}),e&&xd(kl,{})]})},bd=Dh;import Uh from"classnames";import{useSelector as Kh}from"react-redux";import{jsx as Nr}from"react/jsx-runtime";var Cd=({className:t})=>Nr("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:Nr("g",{children:Nr("path",{d:`M163.4,233h186v-70c0-25.6-9.4-47.8-27.3-65.7C304.2,79.4,282,70,256.4,70s-47.8,9.4-65.7,27.3
|
|
5
5
|
c-17.9,17.9-27.3,40.1-27.3,65.7C163.4,163,163.4,233,163.4,233z M465.5,267.9V477c0,9.4-3.4,17.9-10.2,24.7
|
|
6
6
|
c-6.8,6.8-15.4,10.2-24.7,10.2h-349c-9.4,0-17.9-3.4-24.7-10.2c-6.8-6.8-10.2-15.4-10.2-24.7V267.9c0-9.4,3.4-17.9,10.2-24.7
|
|
7
7
|
c6.8-6.8,15.4-10.2,24.7-10.2h11.9v-70c0-44.4,16.2-82.8,47.8-115.2S212.1,0,256.4,0s82.8,16.2,115.2,47.8
|
|
8
|
-
c32.4,32.4,47.8,70,47.8,115.2v70h11.9c9.4,0,17.9,3.4,24.7,10.2C462.1,250,465.5,257.7,465.5,267.9z`})})});import{jsx as Td}from"react/jsx-runtime";var Fh={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},wd=({className:t,color:e})=>Td("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Td("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:Fh[e||"pink"]})});var Ed={root:"dd-LbeUM",text:"dd-Dpfn1",isLoggedIn:"dd-XvHAn",isLoggedOut:"dd-21y-z",icon:"dd-8rLqS",logo:"dd-slXhD",lock:"dd-ByzlR"};var Or={};J(Or,{enUS:()=>Hh,nlNL:()=>Bh});var Hh={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},Bh={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as zh}from"react-redux";import{jsx as Dr,jsxs as kd}from"react/jsx-runtime";var Rd=({onLogIn:t})=>{let e=R(Or),n=w("floatingMenu"),o=w("productName"),s=zh(),r=Kh(Q),i=x("FloatingMenu",Ed);if(r===null||n===!1)return null;let a=()=>{r===!0?s(pe(!0)):t()};return kd("button",{type:"button",className:Uh(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[Dr("div",{className:i.text,children:e(r?"search":"signin",{productName:o})}),kd("div",{className:i.icon,children:[Dr(wd,{className:i.logo,color:"pink"}),r===!1&&Dr(Cd,{className:i.lock})]})]})};import{useEffect as py,useRef as gy}from"react";import{useDispatch as my,useSelector as Ct}from"react-redux";function Ee(t){let{showMidSentenceSuggestions:e,showSuggestionsBeforePattern:n,showSuggestionsAfterPattern:o}=t.settings,{text:s,selection:r}=t.input;return r.start!==r.end?!1:r.end>=s.length?!0:e?n&&new RegExp(n).test(s.substring(r.end))||o&&new RegExp(o).test(s.substring(0,r.end))?!0:n===!1&&o===!1:!1}import{createSlice as Wh}from"@reduxjs/toolkit";var Vh={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1},qo=({ui:t})=>t.overlayCollapsed,Pd=Wh({name:"ui",initialState:Vh,reducers:{setShowTabHint(t,e){t.showTabHint=e.payload},setInputFocus(t,e){t.overlayCollapsedUserOverwrite!==!0&&(e.payload===!0&&(t.overlayCollapsed=!1),t.inputHasFocus=e.payload)},setOverlayCollapsed(t,e){e.payload.collapse===!1&&(t.openOverlayWhenTyping=!1),!(e.payload.skipWhenInputFocus&&t.inputHasFocus)&&(t.overlayCollapsed=e.payload.collapse)},setOpenOverlayWhenTyping(t,e){t.openOverlayWhenTyping=e.payload},setOverlayCollapsedUserOverwrite(t,e){t.overlayCollapsedUserOverwrite=e.payload,t.overlayCollapsed=e.payload}}}),{setShowTabHint:_n,setInputFocus:Xo,setOverlayCollapsed:Ye,setOpenOverlayWhenTyping:Id,setOverlayCollapsedUserOverwrite:Ld}=Pd.actions,Ad=Pd.reducer;var Md={styleRow:"dd-prYfH",styleSuggestion:"dd-JTmXy"};import{jsx as Jo}from"react/jsx-runtime";var jh=({match:t,selected:e,styles:n})=>Jo(I,{as:"button",selected:e,className:n.styleRow,"data-testid":"style-suggestion-item",title:t.suggestion,children:Jo("span",{className:n.styleSuggestion,children:t.suggestion})}),$h=({matches:t,selectedIndex:e})=>{let n=x("StyleSuggestionList",Md);return Jo(Z,{children:t.map((o,s)=>Jo(jh,{match:o,selected:e===s,styles:n},`${o.keyword}-${s}`))})},Qo=$h;import{useMemo as ay}from"react";import{Interweave as Fd}from"interweave";import{useEffect as Zh,useMemo as Yh,useRef as ey,useState as ty}from"react";import{useDispatch as ny,useSelector as Hd}from"react-redux";import{useEffect as Gh}from"react";function Nd(t,e,n){Gh(()=>{let o=t.current;return o?(o.addEventListener(e,n),()=>{o.removeEventListener(e,n)}):()=>{}},[t,e,n])}var Od={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 Dd,jsxs as qh}from"react/jsx-runtime";var _d=({title:t})=>qh("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18px",height:"18px",viewBox:"0 0 24 24","aria-labelledby":"closeTitle",children:[Dd("title",{id:"closeTitle",children:t}),Dd("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 _r={};J(_r,{enUS:()=>Xh,nlNL:()=>Jh});var Xh={assistant:[{type:0,value:"Assistant"}],close:[{type:0,value:"Close"}]},Jh={assistant:[{type:0,value:"Assistent"}],close:[{type:0,value:"Sluiten"}]};import{jsx as Ue,jsxs as Bd}from"react/jsx-runtime";var oy=["search","personal-collection-search","search-autocomplete"];function sy(t,e,n,o={}){var r;let s="";return oy.includes(e)?s=_l(br(t,n,{stripAgentPart:!0}),(r=o.searchKeywords)!=null?r:[n]):s=br(t,n,o),o.placeholders===!0&&(s=Fl(s)),s}var ry=()=>{},iy=({selected:t,suggestion:e})=>{let n=R(_r),o=w("inlineSuggestions"),s=Hd(Dt),[r,i]=ty(!1),a=w("enableSuggestionFeedback"),d=Hd(g=>g.input.text),l=ny(),c=x("TextSuggestion",Od),p=ey(null),u=e.source==="assistant",m=a&&!u;Zh(()=>{let g=setTimeout(()=>{l(oa({text:e.text,suggestion:e}))},500);return()=>{clearTimeout(g)}},[e]),Nd(p,"click",()=>{l(re({suggestion:e,text:e.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let f=()=>{l(lt({source:e.source,text:e.text,assistantCode:e.assistantCode}))},h=Yh(()=>sy(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:Bd("div",{className:c.root,onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),children:[Ue(I,{ref:p,as:"button","data-testid":"suggestions-overlay-item",selected:t,onClick:ry,children:e.source==="assistant"?Bd("div",{className:c.assistantContainer,children:[Ue(Fd,{containerTagName:"div",tagName:"span",className:c.formattedTextTruncated,content:h}),Ue("span",{className:c.assistantBadge,children:n("assistant")})]}):Ue(Fd,{containerTagName:"div",tagName:"span",className:c.formattedText,content:h})}),m&&r&&Ue("div",{className:c.actions,children:Ue(Vo,{source:"overlay",context:d,suggestion:e})}),u&&r&&Ue("div",{className:c.closeIconContainer,children:Ue("button",{type:"button",className:c.closeIcon,onClick:f,title:n("close"),children:Ue(_d,{title:n("close")})})})]})},Ud=iy;import{jsx as dy}from"react/jsx-runtime";var ly=({suggestions:t,selectedIndex:e,reverse:n})=>ay(()=>{let s=t.map((r,i)=>dy(Ud,{index:i,selected:i===e,suggestion:r},`${r.text}-${r.source}`));return n?s.reverse():s},[t,e,n]),Zo=ly;var Kd={root:"dd-PfvRI",paper:"dd-HYlyY"};import{createAsyncThunk as cy,createSlice as uy}from"@reduxjs/toolkit";var Yo={list:{keywordMatches:[]},fetchState:"idle"},es=t=>t.styleSuggestions.list,bt=cy("styleSuggestions/getAll",(n,o)=>v(null,[n,o],function*({text:t},e){var d;let{deepdeskAPI:s}=e.extra,r=e.getState(),{showStyleSuggestions:i}=r.settings,a=(d=r.conversation.current)==null?void 0:d.profileCode;if(!i)return Yo.list;if(!a)throw new Error("No current conversation to fetch pinned messages");return s.getStyleSuggestions({profileCode:a,message:t})})),zd=uy({name:"styleSuggestions",initialState:Yo,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(bt.pending,e=>{e.fetchState="loading"}).addCase(bt.rejected,e=>{e.fetchState="error"}).addCase(bt.fulfilled,(e,n)=>{e.fetchState="done",qe(e.list,n.payload)||(e.list=n.payload)}).addCase(dt,e=>{e.list=Yo.list}).addCase(j,()=>Yo)}}),{commitStyleSuggestion:Wd}=zd.actions,Vd=zd.reducer;var ts=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 ns,jsxs as hy}from"react/jsx-runtime";var fy=()=>{var g;let t=gy(null),e=x("InlineSuggestionsOverlay",Kd),n=Ct(Ee),o=my(),s=Ct(Q),r=Ct(Ot),i=Ct(qo),a=w("showTextSuggestions"),d=Ct(at),l=Ct(un),c=w("showStyleSuggestions"),p=w("showStyleSuggestionList"),u=Ct(es),m=c&&p?ts((g=u.keywordMatches)!=null?g:[]):[],f=m.length>0,h=a&&d.length>0;return gt(()=>{setTimeout(()=>{o(Ye({collapse:!0,skipWhenInputFocus:!0}))})}),py(()=>{let S=t.current;if(!S||!S.parentElement)return;S.parentElement.style.left="0px";let T=S.getBoundingClientRect();S.parentElement.style.left=`${Math.min(window.innerWidth-4-T.right,0)}px`}),i||s!==!0||r===!1||!n&&!f||!h&&!f?null:ns("div",{className:e.root,"data-variant":"inline",children:hy("div",{ref:t,className:e.paper,children:[f&&ns(Qo,{matches:m,selectedIndex:-1}),h&&ns(Z,{children:ns(Zo,{suggestions:d,selectedIndex:l})})]})})},jd=fy;import Sy,{useState as Hr,useEffect as xy}from"react";var $d={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 by}from"react-redux";var Fr={};J(Fr,{enUS:()=>yy,nlNL:()=>vy});var yy={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."}]},vy={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 Cy,jsx as fe,jsxs as os}from"react/jsx-runtime";var Gd=({onClose:t,onSave:e,id:n,error:o})=>{let[s,r]=Hr(""),[i,a]=Hr(!1),[d,l]=Hr(!1),c=x("Nickname",$d),p=Sy.useRef(null),u=by(S=>S.info.showNicknameDialog),m=R(Fr),f=w("adminUrl");xy(()=>{o&&a(!0)},[o]);let h=()=>{if(!p.current)return;s.trim()?p.current.setCustomValidity(""):p.current.setCustomValidity(m("nicknameDialogError")),p.current.reportValidity()},g=S=>{S.preventDefault();let T=s.trim(),C=S.currentTarget.querySelector("#nickname-input");if(!T){C.setCustomValidity(m("nicknameDialogError")),C.reportValidity();return}C.setCustomValidity(""),e(T)};return os(jt,{isOpen:u,"datatest-id":n,onClose:t||(()=>{}),onBack:t||(()=>{}),children:[fe("div",{className:c.titleWrapper,children:fe("h1",{className:c.title,children:m("title")})}),os("form",{className:c.dialogContent,onSubmit:g,children:[fe("p",{children:m("nicknameDialogTitle")}),i&&o&&fe("div",{className:c.errorMessage,children:f?(()=>{let S=m("nicknameDialogSaveError",{account:f}),T=`${f}.deepdesk.com/admin/user-settings`,C=S.indexOf(T);if(C!==-1){let E=S.substring(0,C),A=S.substring(C+T.length);return os(Cy,{children:[E,fe("a",{href:T,target:"_blank",rel:"noopener noreferrer",className:c.errorLink,children:T}),A]})}return S})():m("nicknameDialogSaveErrorWithoutLink")}),fe("input",{required:!0,minLength:1,maxLength:20,"data-testid":"nickname-input",id:"nickname-input",className:c.nicknameInput,type:"text",placeholder:m("nicknameDialogInputPlaceholder"),value:s,onChange:S=>{l(new RegExp("\\p{Extended_Pictographic}","u").test(S.target.value)),r(S.target.value)},onBlur:h,ref:p}),d&&fe("div",{className:c.errorMessage,role:"alert",children:m("nicknameDialogEmojiError")}),os("div",{className:c.buttonsWrapper,children:[o?fe("div",{className:c.closeButtonWrapper,children:fe("button",{type:"button",className:c.closeButton,onClick:()=>t==null?void 0:t(),children:m("close")})}):null,fe("div",{className:c.buttonContinueWrapper,children:fe("button",{type:"submit",className:c.continueButton,disabled:!s.trim()||new RegExp("\\p{Extended_Pictographic}","u").test(s),children:m("nicknameDialogContinueButton")})})]})]})]})};import{Provider as Ty}from"react-redux";import{jsx as ss}from"react/jsx-runtime";var wy=({children:t})=>{let n=w("locale").replace("-","");return ss(or.Provider,{value:n,children:t})},Ey=({store:t,customStyles:e={},children:n})=>ss(Ty,{store:t,children:ss(wy,{children:ss(an.Provider,{value:e,children:n})})}),Ke=Ey;import Wr from"classnames";import{useEffect as Fy,useRef as Hy,useState as By}from"react";import{useDispatch as Uy,useSelector as ze}from"react-redux";import{useState as ky}from"react";function qd(t,e){let[n,o]=ky(()=>{if(typeof window=="undefined")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return k.error(r),e}});return[n,r=>{try{let i=r instanceof Function?r(n):r;o(i),typeof window!="undefined"&&window.localStorage.setItem(t,JSON.stringify(i))}catch(i){k.error(i)}}]}var Xd=()=>/Mac/i.test(navigator.platform);import Iy from"classnames";import{Fragment as Ly,useCallback as Ur,useMemo as Qd}from"react";var Br={};J(Br,{enUS:()=>Ry,nlNL:()=>Py});var Ry={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"}]}]},Py={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 Jd={root:"dd-uTPjX",anchor:"dd-C8lsZ",anchorButton:"dd-IoSx9"};import{jsx as rs,jsxs as Zd}from"react/jsx-runtime";var Kr=(t,e,n)=>o=>rs("button",{className:t.anchorButton,type:"button",value:e,onClick:n,children:o},e),Ay=({className:t,loginUrl:e,isEmbedded:n,onSnooze:o,onLogIn:s})=>{let r=R(Br),i=oe(),a=x("Login",Jd),d=w("productName"),l=Ur(g=>{g.preventDefault(),o&&o(Number.parseInt(g.target.value,10))},[]),c=Ur(g=>{g.preventDefault(),i.send(Ut,!0)},[e]),p=Qd(()=>g=>rs("a",{onClick:T=>{T.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:g},"login"),[e]),u=Ur(g=>rs("button",{type:"button",className:a.anchorButton,onClick:c,children:g},"prompt"),[c]),{min:m,hour:f,day:h}=Qd(()=>({min:Kr(a,600,l),hour:Kr(a,3600,l),day:Kr(a,3600*12,l)}),[]);return Zd("div",{className:Iy(t,a.root),children:[r("loginPlease",{login:n?u:p,productName:d}),o&&Zd(Ly,{children:[rs("br",{}),r("snooze",{min:m,hour:f,day:h})]})]})},is=Ay;import{useDispatch as My}from"react-redux";var Yd={root:"dd-DoQhb",text:"dd-Jwnev"};import{jsx as ec,jsxs as Oy}from"react/jsx-runtime";var Ny=({title:t})=>{let e=x("SearchTrigger",Yd),n=My(),o=z();return Oy("button",{type:"button",className:e.root,onClick:()=>{n(pe(!0)),o("open search",{via:"autocomplete-overlay"})},children:[ec(Gt,{}),ec("span",{className:e.text,children:t})]})},tc=Ny;var zr={};J(zr,{enUS:()=>Dy,nlNL:()=>_y});var Dy={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"}]},_y={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 nc={root:"dd-oa7Vc",isInline:"dd-bwk31",toggleButton:"dd-MSB8Z",toggleButtonWrapper:"dd-ZkCzT",toggleButtonWrapperHidden:"dd-Sq66c",isCollapsed:"dd-vkrPk",collapsible:"dd-CWQJe",hints:"dd-IOoo3",hintsHidden:"dd-psVuT",triggers:"dd-toIoo",triggersRight:"dd-mc4l2",loginError:"dd-KCXeb",loginErrorMessage:"dd-Bv-BG",loginErrorDismiss:"dd-iSCjU"};import{jsx as q,jsxs as et}from"react/jsx-runtime";var Ky=({onLogIn:t})=>{var K;let e=x("SuggestionsOverlay",nc),n=R(zr),o=ze(Ee),s=ze(na),r=Uy(),i=Hy(null),a=w("searchTriggerKey"),d=w("productName"),l=ze(qo),c=ze(Q),p=ze(Wi),u=ze(Ot),[m,f]=By(null),h=w("showSearch"),g=w("showTextSuggestions"),S=w("adminUrl"),T=w("isEmbedded"),C=w("suggestionsPlacement"),[E,A]=qd("dd-snooze-until-ms",0),N=l||E>Date.now(),_=ze(at),V=ze(un),Pe=w("showStyleSuggestions"),Ie=w("showStyleSuggestionList"),O=ze(es),U=Pe&&Ie?ts((K=O.keywordMatches)!=null?K:[]):[],ve=U.length>0,X=_.filter(Le=>Le.source!=="gpt").length,st=()=>{N&&A(0),r(Ld(!N))},L=Le=>{let Pt=Date.now()+Le*1e3;A(Pt),k.info(`Snooze until: ${new Date(Pt)}`),r(Ye({collapse:!0}))};return Fy(()=>{X===0&&f(null)},[_,X]),gt(()=>{r(Ye({collapse:!0,skipWhenInputFocus:!0}))}),c===null||u===!1?null:c===!1?et("div",{ref:i,className:Wr(e.root,{[e.isCollapsed]:N}),children:[!N&&et("div",{className:e.triggers,children:[q("div",{style:{flex:1}}),q("div",{className:e.triggersRight,children:q(Lt,{className:e.toggleButton,title:n("collapse"),onClick:st,isCollapsed:!1})})]}),q("div",{className:e.toggleButtonWrapper,children:q(Lt,{className:e.toggleButton,title:n("open",{productName:d}),onClick:st,isCollapsed:!0})}),et("div",{className:e.collapsible,children:[p&&et("div",{className:e.loginError,children:[q("span",{className:e.loginErrorMessage,children:p}),q("button",{type:"button",className:e.loginErrorDismiss,onClick:()=>r(Yn()),"aria-label":n("dismissError"),children:n("dismiss")})]}),q(is,{loginUrl:S,isEmbedded:T,onLogIn:t,onSnooze:L})]})]}):!s||!o&&!ve?null:et("div",{ref:i,className:Wr(e.root,{[e.isCollapsed]:N}),children:[!N&&et("div",{className:e.triggers,children:[q("div",{style:{flex:1},children:h&&q("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>f(n(Xd()?"searchHintMac":"searchHintWindows",{searchTriggerKey:a.toUpperCase()})),onMouseLeave:()=>f(null),children:q(tc,{title:n("search")})})}),et("div",{className:e.triggersRight,onFocus:()=>{},children:[q("div",{className:Wr(!m&&e.hintsHidden,e.hints),children:m}),q(Lt,{className:e.toggleButton,title:n("collapse"),onClick:st,isCollapsed:!1})]})]}),q("div",{className:e.toggleButtonWrapper,children:q(Lt,{className:e.toggleButton,title:n("open",{productName:d}),onClick:st,isCollapsed:!0})}),(ve||X>0&&g)&&et("div",{className:e.collapsible,onFocus:()=>{},children:[ve&&q(Qo,{matches:U,selectedIndex:-1}),X>0&&g&&q(Z,{children:q(Zo,{suggestions:_,selectedIndex:V,reverse:C==="above"})})]})]})},oc=Ky;import Xr from"classnames";import{Interweave as Rv}from"interweave";import{useCallback as Pv,useEffect as Iv,useMemo as Cc,useRef as Lv}from"react";import{connect as Av}from"react-redux";import{useEffect as zy,useRef as Wy,useState as Vy}from"react";function as(t){return t.contentEditable==="true"}function jy(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 sc(t){let{selectionStart:e,selectionEnd:n}=as(t)?jy(t):t;return[e,n]}function rc(t){let[,e]=Vy(),n=Wy(null);return n.current=sc(t),zy(()=>{let o=()=>{var a;let[s,r]=(a=n.current)!=null?a:[],i=sc(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 ic(t,e){if(!e)return;let n=t,{value:o}=n,[s,r]=e,i=o.match(Jn);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 $y}from"react";var Gy=["div","span","mark","strong","b","i","u","em"];function Vr(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(Gy.includes(s)){let i=Array.isArray(o.props.children)?o.props.children:[o.props.children];return[...t.slice(0,t.length-1),$y(o,{children:Vr(i,e,n+1)})]}return[...t,...e]}function Tt(t){return t.tagName.toLowerCase()==="textarea"}var ac={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 ev from"classnames";import{Matcher as tv}from"interweave";import{useEffect as nv,useMemo as ov}from"react";import{useEffect as qy,useRef as Xy,useState as Jy}from"react";function lc(t,e){let n;return[(...o)=>{window.cancelAnimationFrame(n);let s=e?e(...o):o;n=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(n)]}function ls(t){let e=Xy(null),[n,o]=Jy(!1);return qy(()=>{var c;let s=!1,r=Number.parseFloat((c=window.getComputedStyle(document.body).zoom)!=null?c:"1"),[i,a]=lc((p,u)=>{let m=e.current;if(!m)return;let f=p/r,h=u/r,g=m.getBoundingClientRect(),S=f>g.x&&f<g.x+g.width&&h>g.y&&h<g.y+g.height;S&&!s?(s=!0,o(!0)):!S&&s&&(s=!1,o(!1))},({clientX:p,clientY:u})=>[p,u]),[d,l]=lc(()=>{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 ds(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function cs(t){return e=>{t.forEach(n=>{typeof n=="function"?n(e):n!=null&&(n.current=e)})}}function dc(t){return t!=null}import Qy from"classnames";import{forwardRef as Zy,useRef as Yy}from"react";var We={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 cc}from"react/jsx-runtime";var us=Zy((s,o)=>{var r=s,{className:t,children:e}=r,n=M(r,["className","children"]);let i=Yy(null),a=x("TabCompletion",We);return cc("div",b(y({ref:cs([i,o]),className:Qy(t,a.popoverContentContainer)},n),{children:cc("div",{className:a.popoverContent,children:e})}))});import{jsx as Fn,jsxs as iv}from"react/jsx-runtime";var sv=t=>e=>{let n=cr(e);return"top"in n&&(n.width=t.width-(e.left-t.left)-10),n},rv=({inputElement:t,boundaryRef:e,inputStyle:n,children:o,suggestion:s})=>{let r=x("TabCompletion",We),i=ko(),a=ov(()=>sv(t.getBoundingClientRect()),[t]),[d,l]=ls(t);return nv(()=>{l?i.open():i.close()},[l]),iv("span",{children:[Fn("mark",{ref:cs([d,i.triggerRef]),className:ev(r.matchKeyword,{[r.hover]:l}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:o}),i.opened&&Fn(zt,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:Fn(us,{style:n,children:Fn("div",{className:r.hintText,children:s})})})]})},ps=class extends tv{constructor(){super(...arguments);this.keywordMatches=[];this.preparedKeywordMatches=[];this.usedKeywordMatches=new Set}onBeforeParse(n,o){return o.keywordMatches&&o.keywordMatches!==this.keywordMatches&&(this.preparedKeywordMatches=o.keywordMatches.map(s=>b(y({},s),{keywordRegex:new RegExp(`\\b${ds(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(dc);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 Fn(rv,{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 av}from"interweave";import lv from"classnames";import{jsx as uc}from"react/jsx-runtime";var dv=({inputElement:t,children:e})=>{let n=x("TabCompletion",We),[o,s]=ls(t);return uc("mark",{ref:o,className:lv(n.matchPlaceholder,{[n.hover]:s}),children:e})},gs=class extends av{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 uc(dv,{inputElement:n.inputElement,children:e},`placeholder_${n.matchString}_${n.key}`)}asTag(){return"mark"}};import qr from"classnames";import{Matcher as Sv}from"interweave";import{createRef as xv,forwardRef as bv,useCallback as Cv,useEffect as Sc,useRef as xc,useState as bc}from"react";import{useDispatch as Tv,useSelector as wv}from"react-redux";import{jsx as pc}from"react/jsx-runtime";var gc=()=>pc("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:pc("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 cv,useEffect as fc,useMemo as uv,useState as hc}from"react";import{useDispatch as pv,useSelector as yc}from"react-redux";import gv from"lodash.debounce";var mc={root:"dd-ky-Bv",content:"dd-kV5e1"};function ms(t,e,n){var s;let o=((s=t.imageSizes)==null?void 0:s[e])||t.image||n;if(!o)return null;try{return new URL(o).toString()}catch(r){return null}}function jr(t){return t.replace("https://www.","").replace("https://","")}import{jsx as wt,jsxs as $r}from"react/jsx-runtime";var mv=3,fv=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),hv=({onSelectLink:t,onDismiss:e,placeholder:n,visitUrlText:o,linkCount:s=mv})=>{let r=x("LinkSearch",mc),[i,a]=hc(""),d=pv(),l=yc(pd("url")),c=yc(ka("URL")),p=uv(()=>c.map(fv),[c]),[u,m]=hc(p.length-1),f=w("fallbackImage"),h=C=>{let E=C.target;a(E.value)},g=(C,E)=>{C.stopPropagation(),C.preventDefault(),window.open(E,"_blank")},S=C=>{var N;let E=u-1<0?p.length-1:u-1,A=u+1===p.length?0:u+1;C.code==="Escape"&&(a(""),e()),C.code==="ArrowUp"&&m(E),C.code==="ArrowDown"&&m(A),C.code==="Enter"&&t(((N=p[u])==null?void 0:N.text)||i)},T=cv(gv(C=>{d(ct({query:C,type:"URL",tags:["link-search"]}))},300),[]);return fc(()=>{i&&T(i)},[i]),fc(()=>()=>{d(co())},[]),$r("div",{className:r.root,children:[wt(Z,{withDivider:!0,children:(i?p:l).slice(0,s).map((C,E)=>wt(I,{selected:u===E,onClick:()=>t(C.text),"data-testid":"linksearch-suggestion",children:$r(D,{children:[wt(D.Image,{src:ms(C,"small",f||void 0),title:C.title||C.text}),$r(D.Content,{className:r.content,cropText:!0,children:[wt(D.Title,{children:C.title||jr(C.text)}),C.title&&jr(C.text)]}),wt(I.Actions,{children:wt(I.ActionButton,{label:o,onClick:A=>g(A,C.text)})})]})},C.text))}),wt(Rn,{value:i,onChange:h,autoFocus:!0,placeholder:n,onKeyUp:S})]})},vc=hv;var Gr={};J(Gr,{enUS:()=>yv,nlNL:()=>vv});var yv={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"}]},vv={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 he,jsxs as fs}from"react/jsx-runtime";var Ev=bv((t,e)=>{let n=x("TabCompletion",We);return he("mark",{ref:e,className:qr(n.matchSelection)},"selection-start")}),kv=({startRef:t,boundaryRef:e,inputStyle:n,inputElement:o,children:s})=>{let r=R(Gr),i=x("TabCompletion",We),a=w("addToPersonalCollection"),d=wv(Qe("/admin/personal-collection/new")),l=xc(null),c=xc(null),[p,u]=bc(null),m=Tv(),f=ko(document.activeElement===o),[h]=bc(()=>document.createRange());f.triggerRef.current=h,Sc(()=>()=>h.detach(),[]),Sc(()=>{let S=t.current,T=l.current;!S||!T||(h.setStart(S,0),h.setEnd(T,0))},[t.current,l.current]),gt(()=>{f.close()});let g=Cv(S=>{let T=h.toString(),C=/^http(s?):\/\//.test(S)?S:`https://${S}`,E=`[${T}](${C})`;m(re({text:E,suggestion:{text:E,source:"search-url",type:"url"},eventMetrics:{inputType:"mouse"},replace:"selection"}))},[]);return fs("span",{children:[he("mark",{ref:l,className:qr(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":f.opened?"true":"false",children:s}),f.opened&&he(zt,{className:i.popoverRoot,triggerRef:f.triggerRef,boundaryRef:e,position:"above",align:"start",children:fs(us,{style:n,ref:c,children:[fs("div",{className:qr(i.selectionOptions,{[i.selectionOptionsIsHidden]:p!==null}),children:[fs("button",{type:"button",tabIndex:p===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>u("insertLink"),children:[he(gc,{}),he("span",{children:"\xA0"}),he("span",{children:r("insertLink")})]}),a&&d&&he("button",{type:"button",tabIndex:p===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>{let S=h.toString(),T=`${d}?text=${encodeURIComponent(S)}`;window.open(T,"_blank")},children:he("span",{children:r("addToPersonalCollection")})})]}),p==="insertLink"&&he(vc,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:g,onDismiss:()=>{u(null),f.close()}})]})})]},"selection-end")},hs=class extends Sv{constructor(){super(...arguments);this.charCount=0;this.foundIndex=0;this.startRef=null}onBeforeParse(n,o){return this.props=o,this.charCount=0,this.startRef=xv(),this.foundIndex=0,n}match(n){if(!this.props||this.props.selection===null||this.foundIndex===2)return null;let[o,s]=this.props.selection;if(o===s)return null;let r=this.foundIndex===0?o:s,i=r>=this.charCount&&r<=this.charCount+n.length?{index:r-this.charCount,length:0,match:"",valid:!0}:null;i&&this.foundIndex++;let a=this.foundIndex===1;return i&&a?this.charCount+=r-this.charCount:this.charCount+=n.length,i?y({isStart:a},i):null}replaceWith(n,o){return o.isStart?he(Ev,{ref:this.startRef}):he(kv,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as Mv}from"react-redux";import{jsx as Xt,jsxs as Dv}from"react/jsx-runtime";var Nv=({enabled:t,content:e,tabText:n,showTabHint:o,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:d})=>{let l=x("TabCompletion",ac),c=w("insertLink"),p=w("addToPersonalCollection"),u=w("showMidSentenceSuggestions"),m=w("inlineSuggestions"),f=rc(a),h=Lv(null),g=Mv(Q);Iv(()=>{Tt(a)&&f&&ic(a,f)},[f]);let S=Pv(E=>{if(!s||!n)return E;let A=[Xt("span",{className:l.resetIndent,children:"\u200B"},"u200B"),Xt("span",{"data-testid":"tab-completion",className:Xr(l.tabText,l.resetIndent),"data-source":d,children:n},"tabText")];return o&&A.push(Xt("span",{className:Xr(l.hint,l.resetIndent),children:Xt(Ms,{keyCode:"tab"},"tabHint")},"tabHint")),Vr(E,A)},[s,n,o]),T=Cc(()=>{let E=[];return(c||p)&&E.push(new hs("selection")),E.push(new gs("placeholders")),r&&E.push(new ps("keywords")),E},[m,c,p,r]),C=Cc(()=>{let E=window.getComputedStyle(a);return{"--dd-color":E.color,"--dd-font-size":E.fontSize,"--dd-font-family":E.fontFamily,"--dd-font-variant":E.fontVariant}},[]);return!t||!g?null:Dv("div",{ref:E=>{E!=null&&E.parentElement&&(h.current=E==null?void 0:E.parentElement)},className:l.root,style:C,children:[Xt(Rv,{tagName:"span",containerTagName:"div",className:Xr(l.container,l.agentText),disableLineBreaks:Tt(a),content:e||"\u200B",onAfterParse:S,matchers:T,selection:f,keywordMatches:i,inputElement:a,inputStyle:C,boundaryRef:h,inlineSuggestionsOnlyAtEnd:!u}),Xt("br",{})]},"tab-completion")},Ov=t=>{var g,S,T;let{input:e,ui:n,settings:o,styleSuggestions:s,conversation:r}=t,i=_t({input:e}),a=(i==null?void 0:i.text)||"",d=(i==null?void 0:i.source)||"",l=(g=e.html)!=null?g:Mn(e.text),c=a.indexOf(e.text)===0?a.slice(e.text.length):"",{showTabHint:p}=n,{isSupported:u}=r,{showTabCompletion:m,visible:f,showStyleSuggestions:h}=o;return{showTabHint:p,showStyleSuggestions:h,showTabCompletion:m&&Ee(t),content:l,tabText:c,source:d,keywordMatches:(T=(S=s.list)==null?void 0:S.keywordMatches)!=null?T:[],enabled:f&&u!==!1}},Tc=Av(Ov)(Nv);import{Fragment as bS,useEffect as oi,useState as CS}from"react";import{useDispatch as tu,useSelector as ee}from"react-redux";import{createAsyncThunk as wc,createSlice as _v}from"@reduxjs/toolkit";var Fv={token:null,interval:null},Jr=wc("passwordlessToken/getTemporaryPasswordlessToken",(t,e)=>v(null,null,function*(){let{deepdeskAPI:n}=e.extra;return{token:yield n.requestPasswordlessToken()}})),Qr=wc("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:n=1e3*60*10}=t,{dispatch:o}=e;return o(Jr()),setInterval(()=>o(Jr()),n)}),Ec=_v({name:"passwordlessToken",initialState:Fv,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Jr.fulfilled,(e,n)=>{e.token=n.payload.token}),t.addCase(Qr.fulfilled,(e,n)=>{e.interval=n.payload})}}),{stopPollPasswordlessToken:kc}=Ec.actions,Rc=Ec.reducer;import{createSelector as Hv}from"@reduxjs/toolkit";function Bv(t){return"buttonText"in t&&"eventName"in t}function Pc(t){if(t)return Bv(t)?{label:t.buttonText,event:t.eventName,value:t.payload}:t}function Uv(t){return t==null?void 0:t.map(e=>Pc(e))}function Kv(t){let e=0;for(let n=0;n<t.length;n++)e=(e<<5)-e+t.charCodeAt(n),e|=0;return e}var Ic=Hv([za],t=>t.map(n=>{let o=Pc(n.callToAction),s=Uv(n.callToActions);return b(y(y(y({text:n.response,title:n.name},o?{callToAction:o}:{}),s!=null&&s.length?{callToActions:s}:{}),n.message!==void 0?{message:n.message}:{}),{editable:n.editable,isLoading:n.isLoading,evaluationId:n.evaluationId,rule:{id:Kv(n.code),label:n.code,name:n.name,description:n.name}})}));import{useEffect as zv,useState as Wv}from"react";import Mc from"classnames";import{jsx as Lc}from"react/jsx-runtime";var Jt=()=>Lc("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:Lc("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 Ac={root:"dd-WcEru",entity:"dd-LfP8y",entityText:"dd-L-v0f",iconWrapper:"dd-9Deh1",icon:"dd-tM7E2",iconClicked:"dd-EEdDL"};import{jsx as Qt,jsxs as Nc}from"react/jsx-runtime";var Vv=({entities:t})=>{let e=x("EntitiesWidgetList",Ac),[n,o]=Wv(void 0),s=z(),r=()=>{o(void 0)},i=a=>{t&&(o(t.indexOf(a)),be(a.text),s("entity copied",{entity:a,type:"copy"}))};return zv(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[n]),!t||t.length===0?null:Qt("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,d)=>Nc("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[Qt("span",{className:e.entityText,children:a.text}),Nc("span",{className:e.iconWrapper,children:[Qt("span",{className:Mc(e.icon),children:Qt(Jt,{})}),Qt("span",{className:Mc(e.icon,n===d&&e.iconClicked),children:Qt(Jt,{})})]})]},a.text))})},Oc=Vv;import{jsx as Dc}from"react/jsx-runtime";var _c=()=>Dc("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Dc("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 Jv}from"react";import{useSelector as Qv}from"react-redux";var Fc={root:"dd-ohnXe",trigger:"dd-7i-S3",button:"dd-t53Cg",nav:"dd-qZFnm",item:"dd-FZC0F"};var Hc={root:"dd-nazq3",rotation:"dd-3EHTv"};import{jsx as $v}from"react/jsx-runtime";var jv=({size:t=12})=>{let e=x("LoadingSpinner",Hc);return $v("span",{"data-testid":"loading-spinner",style:{width:`${t}px`,height:`${t}px`},className:e.root})},Bc=jv;import{jsx as Uc}from"react/jsx-runtime";var Kc=()=>Uc("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 512 512",fill:"currentColor",children:Uc("path",{d:"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224c0-17.7-14.3-32-32-32s-32 14.3-32 32s14.3 32 32 32s32-14.3 32-32z"})});import{jsx as zc,jsxs as Gv}from"react/jsx-runtime";var Wc=t=>Gv("svg",b(y({xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 448 512","aria-labelledby":"checkTitle"},t),{children:[zc("title",{id:"checkTitle",children:"Check"}),zc("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 Zr={};J(Zr,{enUS:()=>qv,nlNL:()=>Xv});var qv={error:[{type:0,value:"Something went wrong"}]},Xv={error:[{type:0,value:"Er ging iets fout"}]};import{jsx as Ve,jsxs as Vc}from"react/jsx-runtime";var Zv=3e3,Yv=({assistantOptions:t})=>{let e=x("OnDemandAssistants",Fc),n=R(Zr),o=Jv(),s=go(xe),r=Qv(Il),i=z(),a=r.filter(c=>c.isPinned),d=r.filter(c=>!c.isPinned),l=c=>v(null,null,function*(){clearTimeout(o.current),i("trigger on demand assistant",{assistantCode:c}),yield s.call(b(y({},t),{assistantCode:c})),o.current=setTimeout(()=>s.reset(),Zv)});return r.length===0?null:Vc("div",{className:e.root,children:[a.map(({assistant:c,assistantName:p,displayName:u})=>Ve("button",{type:"button",className:e.button,disabled:s.state==="loading",onClick:()=>l(c),children:u||p},c)),d.length>0&&Vc($,{placement:"top-end",children:[Ve($.Trigger,{className:e.trigger,disabled:s.state==="loading",children:Ve(Ko,{"data-testid":"trigger"})}),Ve($.Content,{className:e.nav,"data-testid":"popover",children:d.map(({assistant:c,assistantName:p,displayName:u})=>Ve($.Button,{className:e.item,disabled:s.state==="loading",onClick:()=>l(c),children:u||p},c))})]}),s.state==="loading"&&Ve(Bc,{}),s.state==="done"&&Ve(Wc,{"data-testid":"trigger-done"}),s.state==="error"&&Ve(gl,{trigger:Ve(Kc,{}),children:n("error")})]})},jc=Yv;import{useDispatch as lS}from"react-redux";var Hn={};J(Hn,{enUS:()=>eS,nlNL:()=>tS});var eS={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"}]},tS={useCue:[{type:0,value:"Voeg toe aan bericht"}],__summarizerAssistant__:[{type:0,value:"Samenvatting"}],copyCue:[{type:0,value:"Kopi\xEBren"}],removeCue:[{type:0,value:"Sluiten"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};import{useEffect as $c,useRef as nS,useState as oS}from"react";var Yr={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 ye,jsxs as ys}from"react/jsx-runtime";var sS=500,rS=100,iS=({content:t,onChange:e,onCopy:n})=>{let o=nS(null),s=x("WidgetCue",Yr);return $c(()=>{let r=o.current;if(!r)return;r.style.setProperty("height","0px");let i=Math.min(Math.max(r.scrollHeight,rS),sS);r.style.setProperty("height",`${i}px`)},[t]),ye("textarea",{ref:o,className:s.editableCue,onCopy:n,onChange:e,value:t})},aS=({cue:t,onCallToAction:e,onRemove:n,onCopy:o,onUse:s})=>{var h;let r=x("WidgetCue",Yr),i=R(Hn),a=z(),d=w("hasKeyboardInput"),[l,c]=oS(t.text),p=g=>{let S=g?b(y({},t),{callToAction:g}):t;e&&e(l,S),n(t)},u=(g,S)=>{o&&o(g,t),S&&Je(S,r.fadeup)},m=g=>{s&&s(g,t)},f=g=>{g.preventDefault(),g.stopPropagation(),n(t)};return $c(()=>{a("Assistant response displayed",{evaluationId:t.evaluationId,assistantCode:t.rule.label,assistantOutput:t.text})},[]),ys(I,{"data-testid":"cue",children:[ye(D,{children:ys(D.Content,{children:[t.title&&ye(D.Title,{className:r.title,"data-testid":"widget-cue-title",children:t.rule.label.startsWith("__")?i(t.rule.label):t.title}),t.message&&ye("p",{className:r.ctaMessage,children:t.message}),t.editable?ye(iS,{content:l,onCopy:()=>{let g=document.getSelection();g&&u(g.toString())},onChange:g=>{var S;return c((S=g.target.value)!=null?S:"")}}):ye(ft,{content:t.text,useLabel:i("useCue"),copyLabel:i("copyCue"),onCopy:u,onUse:d?m:void 0})]})}),ys(I.ButtonsContainer,{children:[ys("div",{className:r.actions,children:[ye(I.Button,{onClick:g=>{var S;return u((S=bo(l,"reply")[0])!=null?S:l,g.target)},variant:"primary",children:i("copyCue")}),t.callToAction&&ye(I.Button,{onClick:()=>p(),variant:"primary",children:t.callToAction.label}),(h=t.callToActions)==null?void 0:h.map((g,S)=>ye(I.Button,{onClick:()=>p(g),variant:"primary",children:g.label},`${g.event}-${g.label}-${S}`)),ye(I.Button,{onClick:f,variant:"secondary",children:i("removeCue")})]}),ye(Eo,{evaluationId:t.evaluationId,assistantCode:t.rule.label,assistantOutput:t.text,feedbackText:t.text,feedbackType:"assistant"})]})]})},Gc=aS;import{Fragment as cS,jsx as ei}from"react/jsx-runtime";var dS=({cues:t})=>{let e=lS(),n=oe(),o=R(Hn),s=z(),r=l=>{e(To({code:l.rule.label})),s("Assistant response closed",{evaluationId:l.evaluationId,assistantCode:l.rule.label,assistantOutput:l.text})},i=(l,c)=>{be(l),s("Assistant response copied",{evaluationId:c.evaluationId,assistantCode:c.rule.label,assistantOutput:c.text,copiedText:l})},a=(l,c)=>{var p;c.callToAction&&(e(Co(c)),s("Assistant call to action",{evaluationId:c.evaluationId,assistantCode:c.rule.label,assistantOutput:c.text,eventName:c.callToAction.event,value:(p=c.callToAction.value)!=null?p:l}))},d=(l,c)=>{var p;n.send(Oe,{text:l,suggestion:{source:"assistant",assistantCode:(p=c.rule)==null?void 0:p.label,sourceText:l}}),s("Assistant response used",{evaluationId:c.evaluationId,assistantCode:c.rule.label,assistantOutput:c.text,usedText:l})};return ei(cS,{children:t.map(l=>l.isLoading?ei(Io,{title:l.rule.label.startsWith("__")?o(l.rule.label):l.title},l.rule.id):ei(Gc,{cue:l,onCallToAction:a,onRemove:r,onCopy:i,onUse:d},l.evaluationId))})},qc=dS;import{Fragment as uS,useEffect as pS}from"react";var Xc={root:"dd-cvTAY",label:"dd-QWQxD",value:"dd-WSUHF",copyButton:"dd-67o9H",copyButtonText:"dd-oos-l",isTrue:"dd--1g2O",isFalse:"dd-sz2ir"};import{jsx as je,jsxs as ti}from"react/jsx-runtime";function gS(t,e){return e.split(".").reduce((n,o)=>!n||typeof n!="object"||!(o in n)?null:n[o],t)}var Jc=({data:t,schema:e})=>{let n=x("WidgetCustomData",Xc),o=s=>{be(s)};return pS(()=>{k.info("Custom data",t,e)},[t]),je("dl",{className:n.root,children:e.map(s=>{let r=gS(t,s.path);return ti(uS,{children:[je("dt",{className:n.label,children:s.label}),je("dd",{className:n.value,children:s.type==="boolean"&&r?je("span",{className:n.isTrue,children:s.trueValue}):s.type==="boolean"&&!r?je("span",{className:n.isFalse,children:s.falseValue}):s.type==="array"&&Array.isArray(r)&&r.length>0?ti("button",{type:"button",onClick:()=>o(r.join(", ")),className:n.copyButton,children:[je("span",{className:n.copyButtonText,children:r.join(", ")}),je(Jt,{})]}):typeof r=="string"||typeof r=="number"?ti("button",{type:"button",onClick:()=>o(`${r}`),className:n.copyButton,children:[je("span",{className:n.copyButtonText,children:r}),je(Jt,{})]}):"-"})]},s.label)})})};import{useCallback as fS}from"react";var mS=/(https?:\/\/[^\s]+)/,Qc=t=>t.split(" ").find(e=>mS.test(e));import{jsx as Zt,jsxs as vs}from"react/jsx-runtime";var hS=({suggestion:t,lines:e,onUse:n})=>{var p;let o=t.text||t.url||t.message,s=Qc(o),r=R(Nn),i=w("showImages"),a=w("fallbackImage"),d=w("hasKeyboardInput"),l=u=>{u.preventDefault(),u.stopPropagation(),d&&n(o)},c=fS(u=>{window.open(s,"_blank"),u.stopPropagation(),u.preventDefault()},[s]);return vs(I,{onClick:d?l:void 0,"data-testid":"edit-suggestion",children:[vs(D,{children:[i&&t.image&&Zt(D.Image,{src:ms(t,"small",a||void 0),title:t.title}),vs(D.Content,{children:[t.title&&Zt(D.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((p=t.searchKeywords)==null?void 0:p.length)>0&&Zt(I.Labels,{labels:t.searchKeywords}),Zt(D.Content,{cropText:e==="single",lineClamp:e==="multiple",children:o})]})]}),vs(I.Actions,{children:[s&&Zt(I.ActionButton,{onClick:c,label:r("visitUrl")}),d&&Zt(I.ActionButton,{primary:!0,onClick:l,label:r("useSuggestion")})]})]})},Zc=hS;import{Fragment as vS,jsx as Yc}from"react/jsx-runtime";var yS=({lines:t,suggestions:e})=>{let n=oe(),o=(s,r)=>{n.send(Oe,{text:s,suggestion:b(y({},r),{source:r.source,sourceText:r.text})})};return Yc(vS,{children:e.map(s=>Yc(Zc,{suggestion:s,lines:t,onUse:r=>o(r,s)},s.text||s.url||s.message))})},eu=yS;var Bn={};J(Bn,{enUS:()=>SS,nlNL:()=>xS});var SS={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"}]},xS={waiting:[{type:0,value:"Laden\u2026"}],waitingForConversation:[{type:0,value:"Wachten op gesprek\u2026"}],notSupported:[{type:0,value:"Dit gesprek wordt niet ondersteund"}],noResults:[{type:0,value:"Geen resultaten gevonden\u2026"}],titleCues:[{type:0,value:"Assistant updates"}],actions:[{type:0,value:"Shortcuts"}],linkStudioLogin:[{type:0,value:"Mijn "},{type:1,value:"productName"}],linkSummary:[{type:0,value:"Gesprek samenvatten"}],linkKnowledgeSearch:[{type:0,value:"Knowledge assist"}],linkSearch:[{type:0,value:"Zoeken"}],close:[{type:0,value:"Sluiten"}]};var Yt={root:"dd-W9VCG",loginText:"dd--dS6t",stateText:"dd-348OC",footer:"dd-tvofr",shortcutList:"dd-MuKK-",shortcut:"dd-5CnK9",footerShortcut:"dd-dH7XJ",link:"dd-DRo0x"};import{jsx as P,jsxs as Un}from"react/jsx-runtime";var nu=(t,e)=>{let n=ee(Q);oi(()=>n?e.every(o=>!!o)?t():()=>{}:()=>{},[...e,n])},TS=({onLogIn:t})=>{let e=x("Widget",Yt),n=w("isEmbedded"),o=w("adminUrl");return P("div",{className:e.loginText,children:P("div",{children:P(is,{isEmbedded:n,loginUrl:o,onLogIn:t})})},"login")},ni=({text:t})=>{let e=x("Widget",Yt);return P("div",{className:e.stateText,children:P("div",{children:P("p",{children:t})})},"notification")},wS=()=>{let t=R(Bn),e=tu(),n=x("Widget",Yt),o=w("showSearch"),s=w("isEmbedded"),r=ee(Qe("/admin/")),i=oe(),a=w("productName"),d=z();return nu(()=>{if(s)return e(Qr()),()=>{e(kc())}},[e,s]),!o&&!r?null:Un("div",{className:n.shortcutList,children:[o&&P(I.Button,{"data-testid":"shortcut-search","aria-label":t("linkSearch"),className:n.shortcut,icon:P(Gt,{}),onClick:()=>{i.send("ShowCommandPalette",{isOpen:!0}),d("open search",{via:"widget-shortcut"})},children:t("linkSearch")}),r&&P(I.Button,{as:"a",target:"_blank",icon:P(_c,{}),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})})]})},ES=({title:t,content:e})=>{let n=R(Bn),[o,s]=CS(!0);return o?P(Ae,{"data-testid":"custom-data-banner",type:"custom-data-banner",title:t,children:P(Z,{withDivider:!0,children:Un(I,{children:[P(D,{children:P(D.Content,{children:P(ft,{content:e})})}),P(I.ButtonsContainer,{children:P(I.Button,{onClick:()=>s(!1),children:n("close")})})]})})}):null},kS=()=>{let t=tu(),e=ee(Ln),n=ee(Al),o=ee(Ic),s=ee(fa),r=ee(Uo),i=ee(jo),a=ee(vt),d=ee(Se);return oi(()=>{s&&!n&&k.warn("Custom data provided, but no schema.")},[s,n]),nu(()=>{e.forEach(({type:l})=>{l==="entities"?t(ge()):Qn.includes(l)||t(me(l))})},[t,d,a]),oi(()=>{o.length>0&&!e.some(l=>l.type==="cues")&&k.warn("Received cues, but cues are not configured in widget.")},[e,o]),P(bS,{children:e.map(({type:l,title:c,amount:p,lines:u,schema:m,property:f})=>{var h,g;switch(l){case"entities":return r&&r.length>0&&P(Ae,{type:l,title:c,"data-testid":`type-${l}`,children:P(Oc,{entities:r})},l);case"cues":return o&&o.length>0&&P(Ae,{type:l,title:c,"data-testid":`type-${l}`,children:P(Z,{withDivider:!0,children:P(qc,{cues:o})})},l);case"custom-data-banner":return s&&f&&s[f]&&P(ES,{title:c,content:String(s[f])},l);case"custom-data":return s&&m&&P(Ae,{type:l,title:c,"data-testid":`type-${l}`,children:P(Z,{withDivider:!0,children:P(Jc,{data:s,schema:m})})},l);default:return((g=(h=i[l])==null?void 0:h.suggestions)==null?void 0:g.length)>0&&P(Ae,{type:l,title:c,"data-testid":`type-${l}`,children:P(Z,{withDivider:!0,children:P(eu,{lines:u,contentType:l,suggestions:i[l].suggestions.slice(0,p)||[]})})},l)}})})},si=({children:t})=>{let e=x("Widget",Yt);return P("div",{className:e.footer,children:t})},ri=({children:t})=>{let e=x("Widget",Yt);return P("div",{className:e.root,"data-testid":"widget",children:t})},RS=({onLogIn:t,knowledgeAssistOptions:e={},assistantOptions:n={transcript:"in-memory-transcript"}})=>{let o=R(Bn),s=ee(Ot),r=ee(Q),i=ee(Zi),a=ee(vt),d=ee(Ll("knowledge-assist")),l=ee(Ml);return s===!1?P(ni,{text:o("notSupported")}):r===!1?P(TS,{onLogIn:t}):r===null?P(ni,{text:o("waiting")}):!i||!a?P(ni,{text:o("waitingForConversation")}):P(ri,{children:Un(No,{initialQuestion:e.initialQuestion,assistantCode:l!=null?l:void 0,evaluateKnowledgeAssistFn:En,children:[Un(ln,{children:[P(wS,{}),P(kS,{}),d&&P(Do,{title:d.title,emptyState:e.emptyState})]}),Un(si,{children:[d&&P(Oo,{}),P(jc,{assistantOptions:n})]})]})})},ou=RS;function zn(t){let e=new Range;return e.selectNodeContents(t),e}function su(t,e,n){try{return Et(t,e,n),!0}catch(o){return!1}}function Ss(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function xs(t){return"tagName"in t&&t.tagName==="BR"}var Kn=/[\u200B-\u200D\uFEFF]/g;function Et(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,p=/[\u200B-\u200D\uFEFF]/;if(!p.test(d))return l;for(let u=0;u<=d.length;u++)if(p.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(Kn,""),p=s+c.length,u=e>=s&&e<=p,m=n>=s&&n<=p;if(u){let f=i(l,e-s);f===0&&!m?o.setStartBefore(d):o.setStart(d,f)}m&&(o.setEnd(d,i(l,n-s)),r=!0),s=p;break}case Node.ELEMENT_NODE:{if(xs(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;Ss(d)&&l&&!Ss(l)&&!xs(l)&&s++;break}default:break}}if(a(t),o.startContainer===document)throw new Error("Offsets out of bound");return o}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,d,l=0;function c(p){let u=p===t,m=p===n,f=p===s;switch(p.nodeType){case Node.TEXT_NODE:{let h=p.textContent;m&&(a=l+h.substring(0,o).replace(Kn,"").length),f&&(d=l+h.substring(0,r).replace(Kn,"").length),l+=h.replace(Kn,"").length;break}case Node.ELEMENT_NODE:{if(xs(p)&&p.nextSibling){l++;break}!u&&Ss(p)&&p.previousSibling&&l++;for(let h=0;h<p.childNodes.length;h++){let g=m&&h===o,S=f&&h===r;if(g&&(a=l),S&&(d=l),d!==void 0||((!g||!i)&&c(p.childNodes[h]),f&&h===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 Cs(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 p=c===t,u=c===n,m=c===s;switch(u&&(a=1),c.nodeType){case Node.TEXT_NODE:{if(a!==1)return;let f=u?o:0,h=m?r:void 0;d+=c.textContent.replace(Kn,"").substring(f,h);break}case Node.ELEMENT_NODE:{if(!i&&a===1&&xs(c)&&c.nextSibling){d+=`
|
|
8
|
+
c32.4,32.4,47.8,70,47.8,115.2v70h11.9c9.4,0,17.9,3.4,24.7,10.2C462.1,250,465.5,257.7,465.5,267.9z`})})});import{jsx as Td}from"react/jsx-runtime";var Fh={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},wd=({className:t,color:e})=>Td("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Td("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:Fh[e||"pink"]})});var Ed={root:"dd-LbeUM",text:"dd-Dpfn1",isLoggedIn:"dd-XvHAn",isLoggedOut:"dd-21y-z",icon:"dd-8rLqS",logo:"dd-slXhD",lock:"dd-ByzlR"};var Or={};J(Or,{enUS:()=>Hh,nlNL:()=>Bh});var Hh={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},Bh={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as zh}from"react-redux";import{jsx as Dr,jsxs as kd}from"react/jsx-runtime";var Rd=({onLogIn:t})=>{let e=R(Or),n=w("floatingMenu"),o=w("productName"),s=zh(),r=Kh(Q),i=x("FloatingMenu",Ed);if(r===null||n===!1)return null;let a=()=>{r===!0?s(pe(!0)):t()};return kd("button",{type:"button",className:Uh(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[Dr("div",{className:i.text,children:e(r?"search":"signin",{productName:o})}),kd("div",{className:i.icon,children:[Dr(wd,{className:i.logo,color:"pink"}),r===!1&&Dr(Cd,{className:i.lock})]})]})};import{useEffect as py,useRef as gy}from"react";import{useDispatch as my,useSelector as Tt}from"react-redux";function Ee(t){let{showMidSentenceSuggestions:e,showSuggestionsBeforePattern:n,showSuggestionsAfterPattern:o}=t.settings,{text:s,selection:r}=t.input;return r.end<t.input.suggestionTextStart||r.start!==r.end?!1:r.end>=s.length?!0:e?n&&new RegExp(n).test(s.substring(r.end))||o&&new RegExp(o).test(s.substring(0,r.end))?!0:n===!1&&o===!1:!1}import{createSlice as Wh}from"@reduxjs/toolkit";var Vh={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1},qo=({ui:t})=>t.overlayCollapsed,Pd=Wh({name:"ui",initialState:Vh,reducers:{setShowTabHint(t,e){t.showTabHint=e.payload},setInputFocus(t,e){t.overlayCollapsedUserOverwrite!==!0&&(e.payload===!0&&(t.overlayCollapsed=!1),t.inputHasFocus=e.payload)},setOverlayCollapsed(t,e){e.payload.collapse===!1&&(t.openOverlayWhenTyping=!1),!(e.payload.skipWhenInputFocus&&t.inputHasFocus)&&(t.overlayCollapsed=e.payload.collapse)},setOpenOverlayWhenTyping(t,e){t.openOverlayWhenTyping=e.payload},setOverlayCollapsedUserOverwrite(t,e){t.overlayCollapsedUserOverwrite=e.payload,t.overlayCollapsed=e.payload}}}),{setShowTabHint:_n,setInputFocus:Xo,setOverlayCollapsed:Ye,setOpenOverlayWhenTyping:Id,setOverlayCollapsedUserOverwrite:Ld}=Pd.actions,Ad=Pd.reducer;var Md={styleRow:"dd-prYfH",styleSuggestion:"dd-JTmXy"};import{jsx as Jo}from"react/jsx-runtime";var jh=({match:t,selected:e,styles:n})=>Jo(I,{as:"button",selected:e,className:n.styleRow,"data-testid":"style-suggestion-item",title:t.suggestion,children:Jo("span",{className:n.styleSuggestion,children:t.suggestion})}),$h=({matches:t,selectedIndex:e})=>{let n=x("StyleSuggestionList",Md);return Jo(Z,{children:t.map((o,s)=>Jo(jh,{match:o,selected:e===s,styles:n},`${o.keyword}-${s}`))})},Qo=$h;import{useMemo as ay}from"react";import{Interweave as Fd}from"interweave";import{useEffect as Zh,useMemo as Yh,useRef as ey,useState as ty}from"react";import{useDispatch as ny,useSelector as Hd}from"react-redux";import{useEffect as Gh}from"react";function Nd(t,e,n){Gh(()=>{let o=t.current;return o?(o.addEventListener(e,n),()=>{o.removeEventListener(e,n)}):()=>{}},[t,e,n])}var Od={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 Dd,jsxs as qh}from"react/jsx-runtime";var _d=({title:t})=>qh("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18px",height:"18px",viewBox:"0 0 24 24","aria-labelledby":"closeTitle",children:[Dd("title",{id:"closeTitle",children:t}),Dd("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 _r={};J(_r,{enUS:()=>Xh,nlNL:()=>Jh});var Xh={assistant:[{type:0,value:"Assistant"}],close:[{type:0,value:"Close"}]},Jh={assistant:[{type:0,value:"Assistent"}],close:[{type:0,value:"Sluiten"}]};import{jsx as Ue,jsxs as Bd}from"react/jsx-runtime";var oy=["search","personal-collection-search","search-autocomplete"];function sy(t,e,n,o={}){var r;let s="";return oy.includes(e)?s=_l(br(t,n,{stripAgentPart:!0}),(r=o.searchKeywords)!=null?r:[n]):s=br(t,n,o),o.placeholders===!0&&(s=Fl(s)),s}var ry=()=>{},iy=({selected:t,suggestion:e})=>{let n=R(_r),o=w("inlineSuggestions"),s=Hd(at),[r,i]=ty(!1),a=w("enableSuggestionFeedback"),d=Hd(g=>g.input.text),l=ny(),c=x("TextSuggestion",Od),p=ey(null),u=e.source==="assistant",m=a&&!u;Zh(()=>{let g=setTimeout(()=>{l(oa({text:e.text,suggestion:e}))},500);return()=>{clearTimeout(g)}},[e]),Nd(p,"click",()=>{l(re({suggestion:e,text:e.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let h=()=>{l(dt({source:e.source,text:e.text,assistantCode:e.assistantCode}))},f=Yh(()=>sy(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:Bd("div",{className:c.root,onMouseEnter:()=>i(!0),onMouseLeave:()=>i(!1),children:[Ue(I,{ref:p,as:"button","data-testid":"suggestions-overlay-item",selected:t,onClick:ry,children:e.source==="assistant"?Bd("div",{className:c.assistantContainer,children:[Ue(Fd,{containerTagName:"div",tagName:"span",className:c.formattedTextTruncated,content:f}),Ue("span",{className:c.assistantBadge,children:n("assistant")})]}):Ue(Fd,{containerTagName:"div",tagName:"span",className:c.formattedText,content:f})}),m&&r&&Ue("div",{className:c.actions,children:Ue(Vo,{source:"overlay",context:d,suggestion:e})}),u&&r&&Ue("div",{className:c.closeIconContainer,children:Ue("button",{type:"button",className:c.closeIcon,onClick:h,title:n("close"),children:Ue(_d,{title:n("close")})})})]})},Ud=iy;import{jsx as dy}from"react/jsx-runtime";var ly=({suggestions:t,selectedIndex:e,reverse:n})=>ay(()=>{let s=t.map((r,i)=>dy(Ud,{index:i,selected:i===e,suggestion:r},`${r.text}-${r.source}`));return n?s.reverse():s},[t,e,n]),Zo=ly;var Kd={root:"dd-PfvRI",paper:"dd-HYlyY"};import{createAsyncThunk as cy,createSlice as uy}from"@reduxjs/toolkit";var Yo={list:{keywordMatches:[]},fetchState:"idle"},es=t=>t.styleSuggestions.list,Ct=cy("styleSuggestions/getAll",(n,o)=>v(null,[n,o],function*({text:t},e){var d;let{deepdeskAPI:s}=e.extra,r=e.getState(),{showStyleSuggestions:i}=r.settings,a=(d=r.conversation.current)==null?void 0:d.profileCode;if(!i)return Yo.list;if(!a)throw new Error("No current conversation to fetch pinned messages");return s.getStyleSuggestions({profileCode:a,message:t})})),zd=uy({name:"styleSuggestions",initialState:Yo,reducers:{commitStyleSuggestion(t,e){let{keyword:n,suggestion:o}=e.payload;t.list.keywordMatches=t.list.keywordMatches.filter(s=>s.keyword.toLowerCase()!==n.toLowerCase()||s.suggestion!==o)}},extraReducers:t=>{t.addCase(Ct.pending,e=>{e.fetchState="loading"}).addCase(Ct.rejected,e=>{e.fetchState="error"}).addCase(Ct.fulfilled,(e,n)=>{e.fetchState="done",qe(e.list,n.payload)||(e.list=n.payload)}).addCase(ct,e=>{e.list=Yo.list}).addCase(j,()=>Yo)}}),{commitStyleSuggestion:Wd}=zd.actions,Vd=zd.reducer;var ts=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 ns,jsxs as hy}from"react/jsx-runtime";var fy=()=>{var g;let t=gy(null),e=x("InlineSuggestionsOverlay",Kd),n=Tt(Ee),o=my(),s=Tt(Q),r=Tt(Dt),i=Tt(qo),a=w("showTextSuggestions"),d=Tt(lt),l=Tt(un),c=w("showStyleSuggestions"),p=w("showStyleSuggestionList"),u=Tt(es),m=c&&p?ts((g=u.keywordMatches)!=null?g:[]):[],h=m.length>0,f=a&&d.length>0;return mt(()=>{setTimeout(()=>{o(Ye({collapse:!0,skipWhenInputFocus:!0}))})}),py(()=>{let S=t.current;if(!S||!S.parentElement)return;S.parentElement.style.left="0px";let T=S.getBoundingClientRect();S.parentElement.style.left=`${Math.min(window.innerWidth-4-T.right,0)}px`}),i||s!==!0||r===!1||!n&&!h||!f&&!h?null:ns("div",{className:e.root,"data-variant":"inline",children:hy("div",{ref:t,className:e.paper,children:[h&&ns(Qo,{matches:m,selectedIndex:-1}),f&&ns(Z,{children:ns(Zo,{suggestions:d,selectedIndex:l})})]})})},jd=fy;import Sy,{useState as Hr,useEffect as xy}from"react";var $d={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 by}from"react-redux";var Fr={};J(Fr,{enUS:()=>yy,nlNL:()=>vy});var yy={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."}]},vy={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 Cy,jsx as fe,jsxs as os}from"react/jsx-runtime";var Gd=({onClose:t,onSave:e,id:n,error:o})=>{let[s,r]=Hr(""),[i,a]=Hr(!1),[d,l]=Hr(!1),c=x("Nickname",$d),p=Sy.useRef(null),u=by(S=>S.info.showNicknameDialog),m=R(Fr),h=w("adminUrl");xy(()=>{o&&a(!0)},[o]);let f=()=>{if(!p.current)return;s.trim()?p.current.setCustomValidity(""):p.current.setCustomValidity(m("nicknameDialogError")),p.current.reportValidity()},g=S=>{S.preventDefault();let T=s.trim(),C=S.currentTarget.querySelector("#nickname-input");if(!T){C.setCustomValidity(m("nicknameDialogError")),C.reportValidity();return}C.setCustomValidity(""),e(T)};return os(jt,{isOpen:u,"datatest-id":n,onClose:t||(()=>{}),onBack:t||(()=>{}),children:[fe("div",{className:c.titleWrapper,children:fe("h1",{className:c.title,children:m("title")})}),os("form",{className:c.dialogContent,onSubmit:g,children:[fe("p",{children:m("nicknameDialogTitle")}),i&&o&&fe("div",{className:c.errorMessage,children:h?(()=>{let S=m("nicknameDialogSaveError",{account:h}),T=`${h}.deepdesk.com/admin/user-settings`,C=S.indexOf(T);if(C!==-1){let E=S.substring(0,C),A=S.substring(C+T.length);return os(Cy,{children:[E,fe("a",{href:T,target:"_blank",rel:"noopener noreferrer",className:c.errorLink,children:T}),A]})}return S})():m("nicknameDialogSaveErrorWithoutLink")}),fe("input",{required:!0,minLength:1,maxLength:20,"data-testid":"nickname-input",id:"nickname-input",className:c.nicknameInput,type:"text",placeholder:m("nicknameDialogInputPlaceholder"),value:s,onChange:S=>{l(new RegExp("\\p{Extended_Pictographic}","u").test(S.target.value)),r(S.target.value)},onBlur:f,ref:p}),d&&fe("div",{className:c.errorMessage,role:"alert",children:m("nicknameDialogEmojiError")}),os("div",{className:c.buttonsWrapper,children:[o?fe("div",{className:c.closeButtonWrapper,children:fe("button",{type:"button",className:c.closeButton,onClick:()=>t==null?void 0:t(),children:m("close")})}):null,fe("div",{className:c.buttonContinueWrapper,children:fe("button",{type:"submit",className:c.continueButton,disabled:!s.trim()||new RegExp("\\p{Extended_Pictographic}","u").test(s),children:m("nicknameDialogContinueButton")})})]})]})]})};import{Provider as Ty}from"react-redux";import{jsx as ss}from"react/jsx-runtime";var wy=({children:t})=>{let n=w("locale").replace("-","");return ss(or.Provider,{value:n,children:t})},Ey=({store:t,customStyles:e={},children:n})=>ss(Ty,{store:t,children:ss(wy,{children:ss(an.Provider,{value:e,children:n})})}),Ke=Ey;import Wr from"classnames";import{useEffect as Fy,useRef as Hy,useState as By}from"react";import{useDispatch as Uy,useSelector as ze}from"react-redux";import{useState as ky}from"react";function qd(t,e){let[n,o]=ky(()=>{if(typeof window=="undefined")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return k.error(r),e}});return[n,r=>{try{let i=r instanceof Function?r(n):r;o(i),typeof window!="undefined"&&window.localStorage.setItem(t,JSON.stringify(i))}catch(i){k.error(i)}}]}var Xd=()=>/Mac/i.test(navigator.platform);import Iy from"classnames";import{Fragment as Ly,useCallback as Ur,useMemo as Qd}from"react";var Br={};J(Br,{enUS:()=>Ry,nlNL:()=>Py});var Ry={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"}]}]},Py={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 Jd={root:"dd-uTPjX",anchor:"dd-C8lsZ",anchorButton:"dd-IoSx9"};import{jsx as rs,jsxs as Zd}from"react/jsx-runtime";var Kr=(t,e,n)=>o=>rs("button",{className:t.anchorButton,type:"button",value:e,onClick:n,children:o},e),Ay=({className:t,loginUrl:e,isEmbedded:n,onSnooze:o,onLogIn:s})=>{let r=R(Br),i=oe(),a=x("Login",Jd),d=w("productName"),l=Ur(g=>{g.preventDefault(),o&&o(Number.parseInt(g.target.value,10))},[]),c=Ur(g=>{g.preventDefault(),i.send(Ut,!0)},[e]),p=Qd(()=>g=>rs("a",{onClick:T=>{T.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:g},"login"),[e]),u=Ur(g=>rs("button",{type:"button",className:a.anchorButton,onClick:c,children:g},"prompt"),[c]),{min:m,hour:h,day:f}=Qd(()=>({min:Kr(a,600,l),hour:Kr(a,3600,l),day:Kr(a,3600*12,l)}),[]);return Zd("div",{className:Iy(t,a.root),children:[r("loginPlease",{login:n?u:p,productName:d}),o&&Zd(Ly,{children:[rs("br",{}),r("snooze",{min:m,hour:h,day:f})]})]})},is=Ay;import{useDispatch as My}from"react-redux";var Yd={root:"dd-DoQhb",text:"dd-Jwnev"};import{jsx as ec,jsxs as Oy}from"react/jsx-runtime";var Ny=({title:t})=>{let e=x("SearchTrigger",Yd),n=My(),o=z();return Oy("button",{type:"button",className:e.root,onClick:()=>{n(pe(!0)),o("open search",{via:"autocomplete-overlay"})},children:[ec(Gt,{}),ec("span",{className:e.text,children:t})]})},tc=Ny;var zr={};J(zr,{enUS:()=>Dy,nlNL:()=>_y});var Dy={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"}]},_y={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 nc={root:"dd-oa7Vc",isInline:"dd-bwk31",toggleButton:"dd-MSB8Z",toggleButtonWrapper:"dd-ZkCzT",toggleButtonWrapperHidden:"dd-Sq66c",isCollapsed:"dd-vkrPk",collapsible:"dd-CWQJe",hints:"dd-IOoo3",hintsHidden:"dd-psVuT",triggers:"dd-toIoo",triggersRight:"dd-mc4l2",loginError:"dd-KCXeb",loginErrorMessage:"dd-Bv-BG",loginErrorDismiss:"dd-iSCjU"};import{jsx as q,jsxs as et}from"react/jsx-runtime";var Ky=({onLogIn:t})=>{var K;let e=x("SuggestionsOverlay",nc),n=R(zr),o=ze(Ee),s=ze(na),r=Uy(),i=Hy(null),a=w("searchTriggerKey"),d=w("productName"),l=ze(qo),c=ze(Q),p=ze(Wi),u=ze(Dt),[m,h]=By(null),f=w("showSearch"),g=w("showTextSuggestions"),S=w("adminUrl"),T=w("isEmbedded"),C=w("suggestionsPlacement"),[E,A]=qd("dd-snooze-until-ms",0),N=l||E>Date.now(),_=ze(lt),V=ze(un),Pe=w("showStyleSuggestions"),Ie=w("showStyleSuggestionList"),O=ze(es),U=Pe&&Ie?ts((K=O.keywordMatches)!=null?K:[]):[],ve=U.length>0,X=_.filter(Le=>Le.source!=="gpt").length,st=()=>{N&&A(0),r(Ld(!N))},L=Le=>{let It=Date.now()+Le*1e3;A(It),k.info(`Snooze until: ${new Date(It)}`),r(Ye({collapse:!0}))};return Fy(()=>{X===0&&h(null)},[_,X]),mt(()=>{r(Ye({collapse:!0,skipWhenInputFocus:!0}))}),c===null||u===!1?null:c===!1?et("div",{ref:i,className:Wr(e.root,{[e.isCollapsed]:N}),children:[!N&&et("div",{className:e.triggers,children:[q("div",{style:{flex:1}}),q("div",{className:e.triggersRight,children:q(At,{className:e.toggleButton,title:n("collapse"),onClick:st,isCollapsed:!1})})]}),q("div",{className:e.toggleButtonWrapper,children:q(At,{className:e.toggleButton,title:n("open",{productName:d}),onClick:st,isCollapsed:!0})}),et("div",{className:e.collapsible,children:[p&&et("div",{className:e.loginError,children:[q("span",{className:e.loginErrorMessage,children:p}),q("button",{type:"button",className:e.loginErrorDismiss,onClick:()=>r(Yn()),"aria-label":n("dismissError"),children:n("dismiss")})]}),q(is,{loginUrl:S,isEmbedded:T,onLogIn:t,onSnooze:L})]})]}):!s||!o&&!ve?null:et("div",{ref:i,className:Wr(e.root,{[e.isCollapsed]:N}),children:[!N&&et("div",{className:e.triggers,children:[q("div",{style:{flex:1},children:f&&q("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>h(n(Xd()?"searchHintMac":"searchHintWindows",{searchTriggerKey:a.toUpperCase()})),onMouseLeave:()=>h(null),children:q(tc,{title:n("search")})})}),et("div",{className:e.triggersRight,onFocus:()=>{},children:[q("div",{className:Wr(!m&&e.hintsHidden,e.hints),children:m}),q(At,{className:e.toggleButton,title:n("collapse"),onClick:st,isCollapsed:!1})]})]}),q("div",{className:e.toggleButtonWrapper,children:q(At,{className:e.toggleButton,title:n("open",{productName:d}),onClick:st,isCollapsed:!0})}),(ve||X>0&&g)&&et("div",{className:e.collapsible,onFocus:()=>{},children:[ve&&q(Qo,{matches:U,selectedIndex:-1}),X>0&&g&&q(Z,{children:q(Zo,{suggestions:_,selectedIndex:V,reverse:C==="above"})})]})]})},oc=Ky;import Xr from"classnames";import{Interweave as Rv}from"interweave";import{useCallback as Pv,useEffect as Iv,useMemo as Cc,useRef as Lv}from"react";import{connect as Av}from"react-redux";import{useEffect as zy,useRef as Wy,useState as Vy}from"react";function as(t){return t.contentEditable==="true"}function jy(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 sc(t){let{selectionStart:e,selectionEnd:n}=as(t)?jy(t):t;return[e,n]}function rc(t){let[,e]=Vy(),n=Wy(null);return n.current=sc(t),zy(()=>{let o=()=>{var a;let[s,r]=(a=n.current)!=null?a:[],i=sc(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 ic(t,e){if(!e)return;let n=t,{value:o}=n,[s,r]=e,i=o.match(Jn);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 $y}from"react";var Gy=["div","span","mark","strong","b","i","u","em"];function Vr(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(Gy.includes(s)){let i=Array.isArray(o.props.children)?o.props.children:[o.props.children];return[...t.slice(0,t.length-1),$y(o,{children:Vr(i,e,n+1)})]}return[...t,...e]}function wt(t){return t.tagName.toLowerCase()==="textarea"}var ac={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 ev from"classnames";import{Matcher as tv}from"interweave";import{useEffect as nv,useMemo as ov}from"react";import{useEffect as qy,useRef as Xy,useState as Jy}from"react";function lc(t,e){let n;return[(...o)=>{window.cancelAnimationFrame(n);let s=e?e(...o):o;n=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(n)]}function ls(t){let e=Xy(null),[n,o]=Jy(!1);return qy(()=>{var c;let s=!1,r=Number.parseFloat((c=window.getComputedStyle(document.body).zoom)!=null?c:"1"),[i,a]=lc((p,u)=>{let m=e.current;if(!m)return;let h=p/r,f=u/r,g=m.getBoundingClientRect(),S=h>g.x&&h<g.x+g.width&&f>g.y&&f<g.y+g.height;S&&!s?(s=!0,o(!0)):!S&&s&&(s=!1,o(!1))},({clientX:p,clientY:u})=>[p,u]),[d,l]=lc(()=>{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 ds(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function cs(t){return e=>{t.forEach(n=>{typeof n=="function"?n(e):n!=null&&(n.current=e)})}}function dc(t){return t!=null}import Qy from"classnames";import{forwardRef as Zy,useRef as Yy}from"react";var We={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 cc}from"react/jsx-runtime";var us=Zy((s,o)=>{var r=s,{className:t,children:e}=r,n=M(r,["className","children"]);let i=Yy(null),a=x("TabCompletion",We);return cc("div",b(y({ref:cs([i,o]),className:Qy(t,a.popoverContentContainer)},n),{children:cc("div",{className:a.popoverContent,children:e})}))});import{jsx as Fn,jsxs as iv}from"react/jsx-runtime";var sv=t=>e=>{let n=cr(e);return"top"in n&&(n.width=t.width-(e.left-t.left)-10),n},rv=({inputElement:t,boundaryRef:e,inputStyle:n,children:o,suggestion:s})=>{let r=x("TabCompletion",We),i=ko(),a=ov(()=>sv(t.getBoundingClientRect()),[t]),[d,l]=ls(t);return nv(()=>{l?i.open():i.close()},[l]),iv("span",{children:[Fn("mark",{ref:cs([d,i.triggerRef]),className:ev(r.matchKeyword,{[r.hover]:l}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:o}),i.opened&&Fn(zt,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:Fn(us,{style:n,children:Fn("div",{className:r.hintText,children:s})})})]})},ps=class extends tv{constructor(){super(...arguments);this.keywordMatches=[];this.preparedKeywordMatches=[];this.usedKeywordMatches=new Set}onBeforeParse(n,o){return o.keywordMatches&&o.keywordMatches!==this.keywordMatches&&(this.preparedKeywordMatches=o.keywordMatches.map(s=>b(y({},s),{keywordRegex:new RegExp(`\\b${ds(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(dc);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 Fn(rv,{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 av}from"interweave";import lv from"classnames";import{jsx as uc}from"react/jsx-runtime";var dv=({inputElement:t,children:e})=>{let n=x("TabCompletion",We),[o,s]=ls(t);return uc("mark",{ref:o,className:lv(n.matchPlaceholder,{[n.hover]:s}),children:e})},gs=class extends av{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 uc(dv,{inputElement:n.inputElement,children:e},`placeholder_${n.matchString}_${n.key}`)}asTag(){return"mark"}};import qr from"classnames";import{Matcher as Sv}from"interweave";import{createRef as xv,forwardRef as bv,useCallback as Cv,useEffect as Sc,useRef as xc,useState as bc}from"react";import{useDispatch as Tv,useSelector as wv}from"react-redux";import{jsx as pc}from"react/jsx-runtime";var gc=()=>pc("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:pc("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 cv,useEffect as fc,useMemo as uv,useState as hc}from"react";import{useDispatch as pv,useSelector as yc}from"react-redux";import gv from"lodash.debounce";var mc={root:"dd-ky-Bv",content:"dd-kV5e1"};function ms(t,e,n){var s;let o=((s=t.imageSizes)==null?void 0:s[e])||t.image||n;if(!o)return null;try{return new URL(o).toString()}catch(r){return null}}function jr(t){return t.replace("https://www.","").replace("https://","")}import{jsx as Et,jsxs as $r}from"react/jsx-runtime";var mv=3,fv=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),hv=({onSelectLink:t,onDismiss:e,placeholder:n,visitUrlText:o,linkCount:s=mv})=>{let r=x("LinkSearch",mc),[i,a]=hc(""),d=pv(),l=yc(pd("url")),c=yc(ka("URL")),p=uv(()=>c.map(fv),[c]),[u,m]=hc(p.length-1),h=w("fallbackImage"),f=C=>{let E=C.target;a(E.value)},g=(C,E)=>{C.stopPropagation(),C.preventDefault(),window.open(E,"_blank")},S=C=>{var N;let E=u-1<0?p.length-1:u-1,A=u+1===p.length?0:u+1;C.code==="Escape"&&(a(""),e()),C.code==="ArrowUp"&&m(E),C.code==="ArrowDown"&&m(A),C.code==="Enter"&&t(((N=p[u])==null?void 0:N.text)||i)},T=cv(gv(C=>{d(ut({query:C,type:"URL",tags:["link-search"]}))},300),[]);return fc(()=>{i&&T(i)},[i]),fc(()=>()=>{d(co())},[]),$r("div",{className:r.root,children:[Et(Z,{withDivider:!0,children:(i?p:l).slice(0,s).map((C,E)=>Et(I,{selected:u===E,onClick:()=>t(C.text),"data-testid":"linksearch-suggestion",children:$r(D,{children:[Et(D.Image,{src:ms(C,"small",h||void 0),title:C.title||C.text}),$r(D.Content,{className:r.content,cropText:!0,children:[Et(D.Title,{children:C.title||jr(C.text)}),C.title&&jr(C.text)]}),Et(I.Actions,{children:Et(I.ActionButton,{label:o,onClick:A=>g(A,C.text)})})]})},C.text))}),Et(Rn,{value:i,onChange:f,autoFocus:!0,placeholder:n,onKeyUp:S})]})},vc=hv;var Gr={};J(Gr,{enUS:()=>yv,nlNL:()=>vv});var yv={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"}]},vv={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 he,jsxs as fs}from"react/jsx-runtime";var Ev=bv((t,e)=>{let n=x("TabCompletion",We);return he("mark",{ref:e,className:qr(n.matchSelection)},"selection-start")}),kv=({startRef:t,boundaryRef:e,inputStyle:n,inputElement:o,children:s})=>{let r=R(Gr),i=x("TabCompletion",We),a=w("addToPersonalCollection"),d=wv(Qe("/admin/personal-collection/new")),l=xc(null),c=xc(null),[p,u]=bc(null),m=Tv(),h=ko(document.activeElement===o),[f]=bc(()=>document.createRange());h.triggerRef.current=f,Sc(()=>()=>f.detach(),[]),Sc(()=>{let S=t.current,T=l.current;!S||!T||(f.setStart(S,0),f.setEnd(T,0))},[t.current,l.current]),mt(()=>{h.close()});let g=Cv(S=>{let T=f.toString(),C=/^http(s?):\/\//.test(S)?S:`https://${S}`,E=`[${T}](${C})`;m(re({text:E,suggestion:{text:E,source:"search-url",type:"url"},eventMetrics:{inputType:"mouse"},replace:"selection"}))},[]);return fs("span",{children:[he("mark",{ref:l,className:qr(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":h.opened?"true":"false",children:s}),h.opened&&he(zt,{className:i.popoverRoot,triggerRef:h.triggerRef,boundaryRef:e,position:"above",align:"start",children:fs(us,{style:n,ref:c,children:[fs("div",{className:qr(i.selectionOptions,{[i.selectionOptionsIsHidden]:p!==null}),children:[fs("button",{type:"button",tabIndex:p===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>u("insertLink"),children:[he(gc,{}),he("span",{children:"\xA0"}),he("span",{children:r("insertLink")})]}),a&&d&&he("button",{type:"button",tabIndex:p===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>{let S=f.toString(),T=`${d}?text=${encodeURIComponent(S)}`;window.open(T,"_blank")},children:he("span",{children:r("addToPersonalCollection")})})]}),p==="insertLink"&&he(vc,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:g,onDismiss:()=>{u(null),h.close()}})]})})]},"selection-end")},hs=class extends Sv{constructor(){super(...arguments);this.charCount=0;this.foundIndex=0;this.startRef=null}onBeforeParse(n,o){return this.props=o,this.charCount=0,this.startRef=xv(),this.foundIndex=0,n}match(n){if(!this.props||this.props.selection===null||this.foundIndex===2)return null;let[o,s]=this.props.selection;if(o===s)return null;let r=this.foundIndex===0?o:s,i=r>=this.charCount&&r<=this.charCount+n.length?{index:r-this.charCount,length:0,match:"",valid:!0}:null;i&&this.foundIndex++;let a=this.foundIndex===1;return i&&a?this.charCount+=r-this.charCount:this.charCount+=n.length,i?y({isStart:a},i):null}replaceWith(n,o){return o.isStart?he(Ev,{ref:this.startRef}):he(kv,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as Mv}from"react-redux";import{jsx as Xt,jsxs as Dv}from"react/jsx-runtime";var Nv=({enabled:t,content:e,tabText:n,showTabHint:o,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:d})=>{let l=x("TabCompletion",ac),c=w("insertLink"),p=w("addToPersonalCollection"),u=w("showMidSentenceSuggestions"),m=w("inlineSuggestions"),h=rc(a),f=Lv(null),g=Mv(Q);Iv(()=>{wt(a)&&h&&ic(a,h)},[h]);let S=Pv(E=>{if(!s||!n)return E;let A=[Xt("span",{className:l.resetIndent,children:"\u200B"},"u200B"),Xt("span",{"data-testid":"tab-completion",className:Xr(l.tabText,l.resetIndent),"data-source":d,children:n},"tabText")];return o&&A.push(Xt("span",{className:Xr(l.hint,l.resetIndent),children:Xt(Ms,{keyCode:"tab"},"tabHint")},"tabHint")),Vr(E,A)},[s,n,o]),T=Cc(()=>{let E=[];return(c||p)&&E.push(new hs("selection")),E.push(new gs("placeholders")),r&&E.push(new ps("keywords")),E},[m,c,p,r]),C=Cc(()=>{let E=window.getComputedStyle(a);return{"--dd-color":E.color,"--dd-font-size":E.fontSize,"--dd-font-family":E.fontFamily,"--dd-font-variant":E.fontVariant}},[]);return!t||!g?null:Dv("div",{ref:E=>{E!=null&&E.parentElement&&(f.current=E==null?void 0:E.parentElement)},className:l.root,style:C,children:[Xt(Rv,{tagName:"span",containerTagName:"div",className:Xr(l.container,l.agentText),disableLineBreaks:wt(a),content:e||"\u200B",onAfterParse:S,matchers:T,selection:h,keywordMatches:i,inputElement:a,inputStyle:C,boundaryRef:f,inlineSuggestionsOnlyAtEnd:!u}),Xt("br",{})]},"tab-completion")},Ov=t=>{var S,T,C;let{input:e,ui:n,settings:o,styleSuggestions:s,conversation:r}=t,i=_t({input:e}),a=(i==null?void 0:i.text)||"",d=(i==null?void 0:i.source)||"",l=(S=e.html)!=null?S:Mn(e.text),c=e.text.slice(e.suggestionTextStart,e.selection.end),p=a.indexOf(c)===0?a.slice(c.length):"",{showTabHint:u}=n,{isSupported:m}=r,{showTabCompletion:h,visible:f,showStyleSuggestions:g}=o;return{showTabHint:u,showStyleSuggestions:g,showTabCompletion:h&&Ee(t),content:l,tabText:p,source:d,keywordMatches:(C=(T=s.list)==null?void 0:T.keywordMatches)!=null?C:[],enabled:f&&m!==!1}},Tc=Av(Ov)(Nv);import{Fragment as bS,useEffect as oi,useState as CS}from"react";import{useDispatch as tu,useSelector as ee}from"react-redux";import{createAsyncThunk as wc,createSlice as _v}from"@reduxjs/toolkit";var Fv={token:null,interval:null},Jr=wc("passwordlessToken/getTemporaryPasswordlessToken",(t,e)=>v(null,null,function*(){let{deepdeskAPI:n}=e.extra;return{token:yield n.requestPasswordlessToken()}})),Qr=wc("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:n=1e3*60*10}=t,{dispatch:o}=e;return o(Jr()),setInterval(()=>o(Jr()),n)}),Ec=_v({name:"passwordlessToken",initialState:Fv,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Jr.fulfilled,(e,n)=>{e.token=n.payload.token}),t.addCase(Qr.fulfilled,(e,n)=>{e.interval=n.payload})}}),{stopPollPasswordlessToken:kc}=Ec.actions,Rc=Ec.reducer;import{createSelector as Hv}from"@reduxjs/toolkit";function Bv(t){return"buttonText"in t&&"eventName"in t}function Pc(t){if(t)return Bv(t)?{label:t.buttonText,event:t.eventName,value:t.payload}:t}function Uv(t){return t==null?void 0:t.map(e=>Pc(e))}function Kv(t){let e=0;for(let n=0;n<t.length;n++)e=(e<<5)-e+t.charCodeAt(n),e|=0;return e}var Ic=Hv([za],t=>t.map(n=>{let o=Pc(n.callToAction),s=Uv(n.callToActions);return b(y(y(y({text:n.response,title:n.name},o?{callToAction:o}:{}),s!=null&&s.length?{callToActions:s}:{}),n.message!==void 0?{message:n.message}:{}),{editable:n.editable,isLoading:n.isLoading,evaluationId:n.evaluationId,rule:{id:Kv(n.code),label:n.code,name:n.name,description:n.name}})}));import{useEffect as zv,useState as Wv}from"react";import Mc from"classnames";import{jsx as Lc}from"react/jsx-runtime";var Jt=()=>Lc("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:Lc("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 Ac={root:"dd-WcEru",entity:"dd-LfP8y",entityText:"dd-L-v0f",iconWrapper:"dd-9Deh1",icon:"dd-tM7E2",iconClicked:"dd-EEdDL"};import{jsx as Qt,jsxs as Nc}from"react/jsx-runtime";var Vv=({entities:t})=>{let e=x("EntitiesWidgetList",Ac),[n,o]=Wv(void 0),s=z(),r=()=>{o(void 0)},i=a=>{t&&(o(t.indexOf(a)),be(a.text),s("entity copied",{entity:a,type:"copy"}))};return zv(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[n]),!t||t.length===0?null:Qt("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,d)=>Nc("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[Qt("span",{className:e.entityText,children:a.text}),Nc("span",{className:e.iconWrapper,children:[Qt("span",{className:Mc(e.icon),children:Qt(Jt,{})}),Qt("span",{className:Mc(e.icon,n===d&&e.iconClicked),children:Qt(Jt,{})})]})]},a.text))})},Oc=Vv;import{jsx as Dc}from"react/jsx-runtime";var _c=()=>Dc("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Dc("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 Jv}from"react";import{useSelector as Qv}from"react-redux";var Fc={root:"dd-ohnXe",trigger:"dd-7i-S3",button:"dd-t53Cg",nav:"dd-qZFnm",item:"dd-FZC0F"};var Hc={root:"dd-nazq3",rotation:"dd-3EHTv"};import{jsx as $v}from"react/jsx-runtime";var jv=({size:t=12})=>{let e=x("LoadingSpinner",Hc);return $v("span",{"data-testid":"loading-spinner",style:{width:`${t}px`,height:`${t}px`},className:e.root})},Bc=jv;import{jsx as Uc}from"react/jsx-runtime";var Kc=()=>Uc("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 512 512",fill:"currentColor",children:Uc("path",{d:"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224c0-17.7-14.3-32-32-32s-32 14.3-32 32s14.3 32 32 32s32-14.3 32-32z"})});import{jsx as zc,jsxs as Gv}from"react/jsx-runtime";var Wc=t=>Gv("svg",b(y({xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 448 512","aria-labelledby":"checkTitle"},t),{children:[zc("title",{id:"checkTitle",children:"Check"}),zc("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 Zr={};J(Zr,{enUS:()=>qv,nlNL:()=>Xv});var qv={error:[{type:0,value:"Something went wrong"}]},Xv={error:[{type:0,value:"Er ging iets fout"}]};import{jsx as Ve,jsxs as Vc}from"react/jsx-runtime";var Zv=3e3,Yv=({assistantOptions:t})=>{let e=x("OnDemandAssistants",Fc),n=R(Zr),o=Jv(),s=go(xe),r=Qv(Il),i=z(),a=r.filter(c=>c.isPinned),d=r.filter(c=>!c.isPinned),l=c=>v(null,null,function*(){clearTimeout(o.current),i("trigger on demand assistant",{assistantCode:c}),yield s.call(b(y({},t),{assistantCode:c})),o.current=setTimeout(()=>s.reset(),Zv)});return r.length===0?null:Vc("div",{className:e.root,children:[a.map(({assistant:c,assistantName:p,displayName:u})=>Ve("button",{type:"button",className:e.button,disabled:s.state==="loading",onClick:()=>l(c),children:u||p},c)),d.length>0&&Vc($,{placement:"top-end",children:[Ve($.Trigger,{className:e.trigger,disabled:s.state==="loading",children:Ve(Ko,{"data-testid":"trigger"})}),Ve($.Content,{className:e.nav,"data-testid":"popover",children:d.map(({assistant:c,assistantName:p,displayName:u})=>Ve($.Button,{className:e.item,disabled:s.state==="loading",onClick:()=>l(c),children:u||p},c))})]}),s.state==="loading"&&Ve(Bc,{}),s.state==="done"&&Ve(Wc,{"data-testid":"trigger-done"}),s.state==="error"&&Ve(gl,{trigger:Ve(Kc,{}),children:n("error")})]})},jc=Yv;import{useDispatch as lS}from"react-redux";var Hn={};J(Hn,{enUS:()=>eS,nlNL:()=>tS});var eS={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"}]},tS={useCue:[{type:0,value:"Voeg toe aan bericht"}],__summarizerAssistant__:[{type:0,value:"Samenvatting"}],copyCue:[{type:0,value:"Kopi\xEBren"}],removeCue:[{type:0,value:"Sluiten"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};import{useEffect as $c,useRef as nS,useState as oS}from"react";var Yr={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 ye,jsxs as ys}from"react/jsx-runtime";var sS=500,rS=100,iS=({content:t,onChange:e,onCopy:n})=>{let o=nS(null),s=x("WidgetCue",Yr);return $c(()=>{let r=o.current;if(!r)return;r.style.setProperty("height","0px");let i=Math.min(Math.max(r.scrollHeight,rS),sS);r.style.setProperty("height",`${i}px`)},[t]),ye("textarea",{ref:o,className:s.editableCue,onCopy:n,onChange:e,value:t})},aS=({cue:t,onCallToAction:e,onRemove:n,onCopy:o,onUse:s})=>{var f;let r=x("WidgetCue",Yr),i=R(Hn),a=z(),d=w("hasKeyboardInput"),[l,c]=oS(t.text),p=g=>{let S=g?b(y({},t),{callToAction:g}):t;e&&e(l,S),n(t)},u=(g,S)=>{o&&o(g,t),S&&Je(S,r.fadeup)},m=g=>{s&&s(g,t)},h=g=>{g.preventDefault(),g.stopPropagation(),n(t)};return $c(()=>{a("Assistant response displayed",{evaluationId:t.evaluationId,assistantCode:t.rule.label,assistantOutput:t.text})},[]),ys(I,{"data-testid":"cue",children:[ye(D,{children:ys(D.Content,{children:[t.title&&ye(D.Title,{className:r.title,"data-testid":"widget-cue-title",children:t.rule.label.startsWith("__")?i(t.rule.label):t.title}),t.message&&ye("p",{className:r.ctaMessage,children:t.message}),t.editable?ye(iS,{content:l,onCopy:()=>{let g=document.getSelection();g&&u(g.toString())},onChange:g=>{var S;return c((S=g.target.value)!=null?S:"")}}):ye(ht,{content:t.text,useLabel:i("useCue"),copyLabel:i("copyCue"),onCopy:u,onUse:d?m:void 0})]})}),ys(I.ButtonsContainer,{children:[ys("div",{className:r.actions,children:[ye(I.Button,{onClick:g=>{var S;return u((S=bo(l,"reply")[0])!=null?S:l,g.target)},variant:"primary",children:i("copyCue")}),t.callToAction&&ye(I.Button,{onClick:()=>p(),variant:"primary",children:t.callToAction.label}),(f=t.callToActions)==null?void 0:f.map((g,S)=>ye(I.Button,{onClick:()=>p(g),variant:"primary",children:g.label},`${g.event}-${g.label}-${S}`)),ye(I.Button,{onClick:h,variant:"secondary",children:i("removeCue")})]}),ye(Eo,{evaluationId:t.evaluationId,assistantCode:t.rule.label,assistantOutput:t.text,feedbackText:t.text,feedbackType:"assistant"})]})]})},Gc=aS;import{Fragment as cS,jsx as ei}from"react/jsx-runtime";var dS=({cues:t})=>{let e=lS(),n=oe(),o=R(Hn),s=z(),r=l=>{e(To({code:l.rule.label})),s("Assistant response closed",{evaluationId:l.evaluationId,assistantCode:l.rule.label,assistantOutput:l.text})},i=(l,c)=>{be(l),s("Assistant response copied",{evaluationId:c.evaluationId,assistantCode:c.rule.label,assistantOutput:c.text,copiedText:l})},a=(l,c)=>{var p;c.callToAction&&(e(Co(c)),s("Assistant call to action",{evaluationId:c.evaluationId,assistantCode:c.rule.label,assistantOutput:c.text,eventName:c.callToAction.event,value:(p=c.callToAction.value)!=null?p:l}))},d=(l,c)=>{var p;n.send(Oe,{text:l,suggestion:{source:"assistant",assistantCode:(p=c.rule)==null?void 0:p.label,sourceText:l}}),s("Assistant response used",{evaluationId:c.evaluationId,assistantCode:c.rule.label,assistantOutput:c.text,usedText:l})};return ei(cS,{children:t.map(l=>l.isLoading?ei(Io,{title:l.rule.label.startsWith("__")?o(l.rule.label):l.title},l.rule.id):ei(Gc,{cue:l,onCallToAction:a,onRemove:r,onCopy:i,onUse:d},l.evaluationId))})},qc=dS;import{Fragment as uS,useEffect as pS}from"react";var Xc={root:"dd-cvTAY",label:"dd-QWQxD",value:"dd-WSUHF",copyButton:"dd-67o9H",copyButtonText:"dd-oos-l",isTrue:"dd--1g2O",isFalse:"dd-sz2ir"};import{jsx as je,jsxs as ti}from"react/jsx-runtime";function gS(t,e){return e.split(".").reduce((n,o)=>!n||typeof n!="object"||!(o in n)?null:n[o],t)}var Jc=({data:t,schema:e})=>{let n=x("WidgetCustomData",Xc),o=s=>{be(s)};return pS(()=>{k.info("Custom data",t,e)},[t]),je("dl",{className:n.root,children:e.map(s=>{let r=gS(t,s.path);return ti(uS,{children:[je("dt",{className:n.label,children:s.label}),je("dd",{className:n.value,children:s.type==="boolean"&&r?je("span",{className:n.isTrue,children:s.trueValue}):s.type==="boolean"&&!r?je("span",{className:n.isFalse,children:s.falseValue}):s.type==="array"&&Array.isArray(r)&&r.length>0?ti("button",{type:"button",onClick:()=>o(r.join(", ")),className:n.copyButton,children:[je("span",{className:n.copyButtonText,children:r.join(", ")}),je(Jt,{})]}):typeof r=="string"||typeof r=="number"?ti("button",{type:"button",onClick:()=>o(`${r}`),className:n.copyButton,children:[je("span",{className:n.copyButtonText,children:r}),je(Jt,{})]}):"-"})]},s.label)})})};import{useCallback as fS}from"react";var mS=/(https?:\/\/[^\s]+)/,Qc=t=>t.split(" ").find(e=>mS.test(e));import{jsx as Zt,jsxs as vs}from"react/jsx-runtime";var hS=({suggestion:t,lines:e,onUse:n})=>{var p;let o=t.text||t.url||t.message,s=Qc(o),r=R(Nn),i=w("showImages"),a=w("fallbackImage"),d=w("hasKeyboardInput"),l=u=>{u.preventDefault(),u.stopPropagation(),d&&n(o)},c=fS(u=>{window.open(s,"_blank"),u.stopPropagation(),u.preventDefault()},[s]);return vs(I,{onClick:d?l:void 0,"data-testid":"edit-suggestion",children:[vs(D,{children:[i&&t.image&&Zt(D.Image,{src:ms(t,"small",a||void 0),title:t.title}),vs(D.Content,{children:[t.title&&Zt(D.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((p=t.searchKeywords)==null?void 0:p.length)>0&&Zt(I.Labels,{labels:t.searchKeywords}),Zt(D.Content,{cropText:e==="single",lineClamp:e==="multiple",children:o})]})]}),vs(I.Actions,{children:[s&&Zt(I.ActionButton,{onClick:c,label:r("visitUrl")}),d&&Zt(I.ActionButton,{primary:!0,onClick:l,label:r("useSuggestion")})]})]})},Zc=hS;import{Fragment as vS,jsx as Yc}from"react/jsx-runtime";var yS=({lines:t,suggestions:e})=>{let n=oe(),o=(s,r)=>{n.send(Oe,{text:s,suggestion:b(y({},r),{source:r.source,sourceText:r.text})})};return Yc(vS,{children:e.map(s=>Yc(Zc,{suggestion:s,lines:t,onUse:r=>o(r,s)},s.text||s.url||s.message))})},eu=yS;var Bn={};J(Bn,{enUS:()=>SS,nlNL:()=>xS});var SS={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"}]},xS={waiting:[{type:0,value:"Laden\u2026"}],waitingForConversation:[{type:0,value:"Wachten op gesprek\u2026"}],notSupported:[{type:0,value:"Dit gesprek wordt niet ondersteund"}],noResults:[{type:0,value:"Geen resultaten gevonden\u2026"}],titleCues:[{type:0,value:"Assistant updates"}],actions:[{type:0,value:"Shortcuts"}],linkStudioLogin:[{type:0,value:"Mijn "},{type:1,value:"productName"}],linkSummary:[{type:0,value:"Gesprek samenvatten"}],linkKnowledgeSearch:[{type:0,value:"Knowledge assist"}],linkSearch:[{type:0,value:"Zoeken"}],close:[{type:0,value:"Sluiten"}]};var Yt={root:"dd-W9VCG",loginText:"dd--dS6t",stateText:"dd-348OC",footer:"dd-tvofr",shortcutList:"dd-MuKK-",shortcut:"dd-5CnK9",footerShortcut:"dd-dH7XJ",link:"dd-DRo0x"};import{jsx as P,jsxs as Un}from"react/jsx-runtime";var nu=(t,e)=>{let n=ee(Q);oi(()=>n?e.every(o=>!!o)?t():()=>{}:()=>{},[...e,n])},TS=({onLogIn:t})=>{let e=x("Widget",Yt),n=w("isEmbedded"),o=w("adminUrl");return P("div",{className:e.loginText,children:P("div",{children:P(is,{isEmbedded:n,loginUrl:o,onLogIn:t})})},"login")},ni=({text:t})=>{let e=x("Widget",Yt);return P("div",{className:e.stateText,children:P("div",{children:P("p",{children:t})})},"notification")},wS=()=>{let t=R(Bn),e=tu(),n=x("Widget",Yt),o=w("showSearch"),s=w("isEmbedded"),r=ee(Qe("/admin/")),i=oe(),a=w("productName"),d=z();return nu(()=>{if(s)return e(Qr()),()=>{e(kc())}},[e,s]),!o&&!r?null:Un("div",{className:n.shortcutList,children:[o&&P(I.Button,{"data-testid":"shortcut-search","aria-label":t("linkSearch"),className:n.shortcut,icon:P(Gt,{}),onClick:()=>{i.send("ShowCommandPalette",{isOpen:!0}),d("open search",{via:"widget-shortcut"})},children:t("linkSearch")}),r&&P(I.Button,{as:"a",target:"_blank",icon:P(_c,{}),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})})]})},ES=({title:t,content:e})=>{let n=R(Bn),[o,s]=CS(!0);return o?P(Ae,{"data-testid":"custom-data-banner",type:"custom-data-banner",title:t,children:P(Z,{withDivider:!0,children:Un(I,{children:[P(D,{children:P(D.Content,{children:P(ht,{content:e})})}),P(I.ButtonsContainer,{children:P(I.Button,{onClick:()=>s(!1),children:n("close")})})]})})}):null},kS=()=>{let t=tu(),e=ee(Ln),n=ee(Al),o=ee(Ic),s=ee(fa),r=ee(Uo),i=ee(jo),a=ee(St),d=ee(Se);return oi(()=>{s&&!n&&k.warn("Custom data provided, but no schema.")},[s,n]),nu(()=>{e.forEach(({type:l})=>{l==="entities"?t(ge()):Qn.includes(l)||t(me(l))})},[t,d,a]),oi(()=>{o.length>0&&!e.some(l=>l.type==="cues")&&k.warn("Received cues, but cues are not configured in widget.")},[e,o]),P(bS,{children:e.map(({type:l,title:c,amount:p,lines:u,schema:m,property:h})=>{var f,g;switch(l){case"entities":return r&&r.length>0&&P(Ae,{type:l,title:c,"data-testid":`type-${l}`,children:P(Oc,{entities:r})},l);case"cues":return o&&o.length>0&&P(Ae,{type:l,title:c,"data-testid":`type-${l}`,children:P(Z,{withDivider:!0,children:P(qc,{cues:o})})},l);case"custom-data-banner":return s&&h&&s[h]&&P(ES,{title:c,content:String(s[h])},l);case"custom-data":return s&&m&&P(Ae,{type:l,title:c,"data-testid":`type-${l}`,children:P(Z,{withDivider:!0,children:P(Jc,{data:s,schema:m})})},l);default:return((g=(f=i[l])==null?void 0:f.suggestions)==null?void 0:g.length)>0&&P(Ae,{type:l,title:c,"data-testid":`type-${l}`,children:P(Z,{withDivider:!0,children:P(eu,{lines:u,contentType:l,suggestions:i[l].suggestions.slice(0,p)||[]})})},l)}})})},si=({children:t})=>{let e=x("Widget",Yt);return P("div",{className:e.footer,children:t})},ri=({children:t})=>{let e=x("Widget",Yt);return P("div",{className:e.root,"data-testid":"widget",children:t})},RS=({onLogIn:t,knowledgeAssistOptions:e={},assistantOptions:n={transcript:"in-memory-transcript"}})=>{let o=R(Bn),s=ee(Dt),r=ee(Q),i=ee(Zi),a=ee(St),d=ee(Ll("knowledge-assist")),l=ee(Ml);return s===!1?P(ni,{text:o("notSupported")}):r===!1?P(TS,{onLogIn:t}):r===null?P(ni,{text:o("waiting")}):!i||!a?P(ni,{text:o("waitingForConversation")}):P(ri,{children:Un(No,{initialQuestion:e.initialQuestion,assistantCode:l!=null?l:void 0,evaluateKnowledgeAssistFn:En,children:[Un(ln,{children:[P(wS,{}),P(kS,{}),d&&P(Do,{title:d.title,emptyState:e.emptyState})]}),Un(si,{children:[d&&P(Oo,{}),P(jc,{assistantOptions:n})]})]})})},ou=RS;function zn(t){let e=new Range;return e.selectNodeContents(t),e}function su(t,e,n){try{return kt(t,e,n),!0}catch(o){return!1}}function Ss(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function xs(t){return"tagName"in t&&t.tagName==="BR"}var Kn=/[\u200B-\u200D\uFEFF]/g;function kt(t,e,n){let o=new Range;if(t.firstChild===null&&e===0&&n===0)return o.selectNodeContents(t),o;let s=0,r=!1;function i(d,l){let c=-1,p=/[\u200B-\u200D\uFEFF]/;if(!p.test(d))return l;for(let u=0;u<=d.length;u++)if(p.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(Kn,""),p=s+c.length,u=e>=s&&e<=p,m=n>=s&&n<=p;if(u){let h=i(l,e-s);h===0&&!m?o.setStartBefore(d):o.setStart(d,h)}m&&(o.setEnd(d,i(l,n-s)),r=!0),s=p;break}case Node.ELEMENT_NODE:{if(xs(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;Ss(d)&&l&&!Ss(l)&&!xs(l)&&s++;break}default:break}}if(a(t),o.startContainer===document)throw new Error("Offsets out of bound");return o}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,d,l=0;function c(p){let u=p===t,m=p===n,h=p===s;switch(p.nodeType){case Node.TEXT_NODE:{let f=p.textContent;m&&(a=l+f.substring(0,o).replace(Kn,"").length),h&&(d=l+f.substring(0,r).replace(Kn,"").length),l+=f.replace(Kn,"").length;break}case Node.ELEMENT_NODE:{if(xs(p)&&p.nextSibling){l++;break}!u&&Ss(p)&&p.previousSibling&&l++;for(let f=0;f<p.childNodes.length;f++){let g=m&&f===o,S=h&&f===r;if(g&&(a=l),S&&(d=l),d!==void 0||((!g||!i)&&c(p.childNodes[f]),h&&f===r-1&&(d=l),d!==void 0))break}h&&(d=l);break}default:break}}if(c(t),d===void 0)throw new Error("Could not determine start and end");return{start:a!=null?a:d,end:d}}function Cs(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 p=c===t,u=c===n,m=c===s;switch(u&&(a=1),c.nodeType){case Node.TEXT_NODE:{if(a!==1)return;let h=u?o:0,f=m?r:void 0;d+=c.textContent.replace(Kn,"").substring(h,f);break}case Node.ELEMENT_NODE:{if(!i&&a===1&&xs(c)&&c.nextSibling){d+=`
|
|
9
9
|
`;break}!p&&!i&&a===1&&Ss(c)&&c.previousSibling&&(d+=`
|
|
10
|
-
`);let f=u?o:0,h=m?Math.min(r,c.childNodes.length):c.childNodes.length;for(let g=f;g<h&&(l(c.childNodes[g]),a!==2);g++);break}default:break}m&&(a=2)}return l(t),d}var ru=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(ru||{}),tt=class{constructor(e){this.element=e;this.isFocused=!1;this.isActive=!0;this.isDisposed=!1;this.eventListeners={};this.disposeHandlers=[];this.cachedText="";this.cachedCaretPosition=null;this.cachedSelection={start:0,end:0};this.cachedHTML="";this.isSubmitting=!1;this.isPossibleClearInputAction=!1;this.cachedText=this.getText(),this.cachedHTML=this.getHTML(),this.cachedSelection=this.getSelection(),this.listen()}addEventListener(e,n){let o=s=>{n(s)};this.element.addEventListener(e,o),this.disposeHandlers.push(()=>{this.element.removeEventListener(e,o)})}removeEventListener(e,n){this.element.removeEventListener(e,n)}handleInteraction(){let e=this.getText(),n=this.getHTML(),o=this.getSelection(),s=this.cachedCaretPosition===null;if(!this.isActive||(e===""&&this.cachedText!==""&&!this.isPossibleClearInputAction&&this.emit("submit"),e!==this.cachedText?(this.cachedText=e,this.cachedHTML=n,s=!0,this.emit("change",{plainText:e,rawHTML:n})):n!==null&&n!==this.cachedHTML&&(this.cachedHTML=n,s=!0,this.emit("change",{plainText:e,rawHTML:n})),(o.start!==this.cachedSelection.start||o.end!==this.cachedSelection.end)&&(this.cachedSelection=o,s=!0,this.emit("selection",o)),!s))return;let r=this.getCaretPosition();qe(r,this.cachedCaretPosition)||(this.cachedCaretPosition=r,this.emit("caretposition",r))}handleClick(){this.handleInteraction()}handleFocus(){let e=!this.isFocused;this.isFocused=!0,e&&this.emit("focus"),this.handleInteraction()}handleBlur(){this.isPossibleClearInputAction=!1;let e=this.isFocused;this.isFocused=!1,e&&this.emit("blur")}handleKeyDown(e){let{key:n,ctrlKey:o,metaKey:s}=e;this.isPossibleClearInputAction=Object.values(ru).includes(n)||n.toLowerCase()==="z"&&(o||s),this.emit("keydown",e)}handleKeyUp(e){this.handleInteraction(),this.emit("keyup",e)}handleCut(){this.isPossibleClearInputAction=!0,this.emit("cut",{selectionText:this.getSelectedText()})}handlePaste(e){var o,s;let n=((o=e.clipboardData)==null?void 0:o.getData("text"))||((s=e.clipboardData)==null?void 0:s.getData("text/plain"))||"";this.emit("paste",{pastedText:n,selectionText:this.getSelectedText()})}listen(){this.addEventListener("keydown",n=>this.handleKeyDown(n)),this.addEventListener("keyup",n=>this.handleKeyUp(n)),this.addEventListener("input",()=>this.handleInteraction()),this.addEventListener("change",()=>this.handleInteraction()),this.addEventListener("focus",()=>this.handleFocus()),this.addEventListener("blur",()=>this.handleBlur()),this.addEventListener("cut",()=>this.handleCut()),this.addEventListener("paste",n=>this.handlePaste(n)),this.addEventListener("click",()=>this.handleInteraction()),document.activeElement===this.element&&(this.isFocused=!0);let e=new MutationObserver(()=>{this.element.isConnected||(this.emit("unmounted"),this.dispose())});e.observe(document.body,{subtree:!0,childList:!0}),this.disposeHandlers.push(()=>{e.disconnect()})}focus(){this.element.focus()}emit(e,...n){this.isDisposed||this.eventListeners[e]&&this.eventListeners[e].forEach(o=>{o(...n)})}on(e,n){this.isDisposed||(this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(n))}off(e,n){if(!this.eventListeners[e])return;let o=this.eventListeners[e].indexOf(n);o!==-1&&this.eventListeners[e].splice(o,1)}activate(){let e=this.isActive===!1;this.isActive=!0,e&&this.handleInteraction()}deactivate(){this.isActive=!1}dispose(){this.disposeHandlers.forEach(e=>e()),this.eventListeners={},this.isDisposed=!0}};function iu(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var en=class extends tt{constructor(){super(...arguments);this.lastKnownSelection=null}getRootNode(){return this.element.getRootNode()}getText(){let n=new Range;return n.selectNodeContents(this.element),Cs(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!iu(o)&&(n.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=n.getBoundingClientRect(),n.deleteContents(),!iu(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let n=this.getRange();if(n)return bs(this.element,n);let o=this.lastKnownSelection;if(o&&su(this.element,o.start,o.end))return o;let s=zn(this.element);return s.collapse(!1),bs(this.element,s)}getSelectedText(){let{start:n,end:o}=this.getSelection();return Cs(this.element,Et(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 PS=["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 au(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",PS.forEach(c=>{s[c]=r[c]}),n?t.scrollHeight>Number.parseInt(r.height)&&(s.overflowY="scroll"):s.overflow="hidden",o.textContent=t.value.substring(0,e);let a=document.createElement("span");a.textContent=t.value.substring(e)||".",o.appendChild(a),i.appendChild(o);let d=t.getBoundingClientRect(),l={top:d.top-t.scrollTop+a.offsetTop+Number.parseInt(r.borderTopWidth)+a.offsetHeight,left:d.left-t.scrollLeft+a.offsetLeft+Number.parseInt(r.borderLeftWidth)};return i.removeChild(o),l}var tn=class extends tt{constructor(){super(...arguments);this.lastKnownSelection=null}getText(){return this.element.value}getHTML(){return null}getSelection(){let{selectionStart:n,selectionEnd:o}=this.element;return{start:n,end:o}}getSelectedText(){let n=this.getSelection();return n?this.getText().slice(n.start,n.end):""}getCaretPosition(){return au(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 lu(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 IS(t){if(typeof t!="string")return t;try{return JSON.parse(t)}catch(e){return t}}var ii=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()}},ai=class{constructor(e,n,o){this.name=e;this.targetOrigin=n;this.options=o;this.disposeHandlers=[];this.iframe=lu(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()}},li=class{constructor(e){this.params=e;this.deepdeskUrl=e.deepdeskUrl,this.eventMap=e.eventMap,this.externalId="deepdesk-general",this.defaultChannel=this.createChannel("deepdesk-general")}get isCrossOrigin(){return this.params.deepdeskUrl!==(this.params.origin||window.location.origin)}setExternalId(e){this.externalId!==e&&(this.cleanup(),k.info("Set externalId",e),this.externalId=e,this.channel=this.createChannel(e))}createChannel(e){let n=this.params.createCustomChannel?this.params.createCustomChannel(e):this.isCrossOrigin?new ai(e,this.deepdeskUrl,{debug:!0}):new ii(e),o=s=>{var i,a;if(s.origin!==this.deepdeskUrl)return;let r=IS(s.data);typeof r!="object"||r.type!=="event"||r.channel!==e||(k.info("Received broadcast event",this.externalId,s),(a=(i=this.eventMap)[r.name])==null||a.call(i,r.payload))};return n.onMessage(o),n}send(e,n,o){var i,a;k.info("Broadcast event",{externalId:this.externalId,name:e,payload:n});let s={type:"event",name:e,payload:n};o!==!1&&((a=(i=this.eventMap)[e])==null||a.call(i,n));let r=this.externalId==="deepdesk-general"?this.defaultChannel:this.channel;r==null||r.postMessage(b(y({},s),{channel:this.externalId}))}cleanup(e=!1){var n,o;(n=this.channel)==null||n.close(),this.channel=void 0,e&&((o=this.defaultChannel)==null||o.close(),this.defaultChannel=void 0)}},du=li;function LS(t){return t.replace(/(_\w)/g,e=>e[1].toUpperCase())}function B(t){return Array.isArray(t)?t.map(B):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>b(y({},e),{[LS(n)]:B(t[n])}),{}):t}function AS(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function te(t){return Array.isArray(t)?t.map(te):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>b(y({},e),{[AS(n)]:te(t[n])}),{}):t}var nn=class extends Error{constructor(n,o){super(n);this.body=o;this.name="CustomError"}};var di=t=>new Promise(e=>{setTimeout(e,t)});var kt=class extends nn{constructor(){super(...arguments);this.name="ClientError"}},ui=class extends nn{constructor(){super(...arguments);this.name="ServerError"}},ci=new Map;function MS(t){return v(this,null,function*(){if(t.status===204)return t.text().catch(()=>{}),null;let e=t.headers.get("content-type");if(e!=null&&e.includes("application/json"))return t.json();let n=yield t.text();return n===""?null:(k.warn("Unexpected response body:",n.slice(0,20)),JSON.parse(n))})}var on=class{constructor(e="",n={}){this.baseUrl=e;this.options=n;this.latestRequestByUrl={};this.refreshingToken=null;this.lastFailedRefreshAt=null;this.failedRefreshCooldown=1e4;var o;this.fetch=(o=n.fetch)!=null?o:window.fetch.bind(window)}patchFetch(e){this.fetch=e(this.fetch)}setCsrfToken(e){this.csrfToken=e}request(e,n={}){return new Promise((o,s)=>{let r={isAborted:!1,reject:s},i=`${this.baseUrl}${e}`,a=this.fetch,d=n.method===void 0||n.method.toLowerCase()==="get",N=n,{useCache:l=!1,abortLatest:c=!1,attempts:p=1,retryDelay:u=500,refreshTokenOn401:m=!0,retryOnError:f=_=>_ instanceof TypeError,retryOnResponse:h=_=>_.status>=500,version:g=null}=N,S=M(N,["useCache","abortLatest","attempts","retryDelay","refreshTokenOn401","retryOnError","retryOnResponse","version"]);if(l){if(!d)throw new Error(`Can't use 'useCache' for ${n.method}`);if(ci.has(i)){o(ci.get(i));return}}let T=b(y({credentials:"include"},S),{headers:y({Accept:"application/json","Content-Type":"application/json"},S.headers)});!d&&this.csrfToken&&(T.headers=b(y({},T.headers),{"X-CSRFToken":this.csrfToken})),typeof g=="string"&&(T.headers=b(y({},T.headers),{"X-Deepdesk-API-Version":g}));let C=p,E=!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 A=()=>v(this,null,function*(){return C--,a(i,T).then(_=>v(this,null,function*(){return h(_)&&!r.isAborted&&C>0?(yield di(u),A()):_.status===401&&m===!0&&E===!1?(E=!0,yield this.refreshToken(),A()):_})).catch(_=>v(this,null,function*(){if(f(_)&&!r.isAborted&&C>0)return yield di(u),A();throw _}))});A().then(_=>v(this,null,function*(){let V=yield MS(_);if(delete this.latestRequestByUrl[i],_.status>=500){s(new ui("Server Error",V));return}if(_.status===401){s(new kt("Unauthorized",V));return}if(_.status===403){s(new kt("Forbidden",V));return}if(_.status===404){s(new kt("Not Found",V));return}if(_.status>=400){s(new kt("Bad Request",V));return}l&&ci.set(i,V),o(V)})).catch(_=>{s(_)})})}validateToken(){return v(this,null,function*(){let e,n,o;try{({has_valid_access_token:e,is_logged_in:n,has_valid_refresh_token:o}=yield this.get("/apis/admin/session/validate/",{refreshTokenOn401:!1}))}catch(s){return!1}if(!e){if(!o)return!1;try{yield this.refreshToken();let{is_logged_in:s}=yield this.get("/apis/admin/session/validate/",{refreshTokenOn401:!1});return s}catch(s){return!1}}return n})}refreshToken(){let e=Date.now();return this.lastFailedRefreshAt&&e-this.lastFailedRefreshAt<this.failedRefreshCooldown?Promise.reject(new kt("Unauthorized","Failed to refresh token")):this.refreshingToken?this.refreshingToken:(this.refreshingToken=this.get("/apis/admin/session/refresh/",{refreshTokenOn401:!1}).catch(n=>{throw(n==null?void 0:n.message)==="Unauthorized"&&(this.lastFailedRefreshAt=Date.now()),n}).finally(()=>{this.refreshingToken=null}),this.refreshingToken)}get(e,n){return this.request(e,n)}post(e,n,o){return this.request(e,y({method:"POST",body:JSON.stringify(n)},o))}patch(e,n,o){return this.request(e,y({method:"PATCH",body:JSON.stringify(n)},o))}put(e,n,o){return this.request(e,y({method:"PUT",body:JSON.stringify(n)},o))}delete(e,n){return this.request(e,y({method:"DELETE"},n))}};var cu;(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={}))})(cu||(cu={}));function pi(t){return b(y({},B(t)),{metadata:t.metadata})}var Rt=class Rt{constructor(e,n={}){this.options=n;this.latestReceivedDeepdeskVersions={};this.shouldFetchCsrfToken=!0;this.client=new on(e,{fetch:n.fetch}),this.client.patchFetch(o=>(s,r)=>v(this,null,function*(){let i=yield o(s,r);return this.handleDeepdeskVersionHeaders(i),i}))}preflight(){return v(this,null,function*(){if(this.shouldFetchCsrfToken){this.shouldFetchCsrfToken=!1;let e=yield this.getCsrfToken();this.client.setCsrfToken(e)}return this.options.token?(Rt.exchangeTokenPromise||(Rt.exchangeTokenPromise=this.exchangeTokenForAccessCookie(this.options.token)),Rt.exchangeTokenPromise):Promise.resolve()})}createConversation(e){return v(this,null,function*(){var o;yield this.preflight(),k.info(`Creating conversation for session ${e.externalId} and agent ${e.agentId}`);let n=yield this.client.post("/api/v2/conversations",b(y({chat_start_time:new Date().toISOString()},te(e)),{metadata:(o=e.metadata)!=null?o:{}}));return pi(n)})}getMe(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/session/me/");return B(e)})}postIdentity(e){return v(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/me/identities/",te(e))})}patchMe(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.patch("/apis/admin/session/me/",te(e));return B(n)})}getProfile(e){return v(this,null,function*(){let n=yield this.client.get(`/apis/admin/profiles/${e}/`,{useCache:!0});return B(n)})}getKnowledgeAssistant(e){return v(this,null,function*(){let n=yield this.client.get(`/apis/admin/knowledge-assist/assistants/${e}/`,{useCache:!0});return B(n)})}getContentTypes(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/content-types/",{useCache:!0});return B(e)})}getAccount(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/account/",{useCache:!0});return B(e)})}getPlatformConfig(e){return v(this,null,function*(){let n=e!==void 0?`/platform/config/${e}/`:"/platform/config/",{config:o}=yield this.client.get(n,{useCache:!0});return B(o)})}checkUserExists(e){return v(this,null,function*(){let{exists:n}=yield this.client.get(`/apis/admin/users/exists?external_id=${e}`,{version:"v1"});return n})}getConversationByExternalId(o){return v(this,arguments,function*(e,n={}){yield this.preflight(),k.info(`Getting conversation for session ${e}`);let{attempts:s=1,retryDelay:r=1e3}=n,i=yield this.client.get(`/api/v2/conversations/by_external_id/${e}`,{attempts:s,retryDelay:r,retryOnResponse:a=>a.status===404||a.status>=500,version:"v2"});return k.info(`Successfully retrieved conversation ${i.id} for session ${e}`),pi(i)})}isConversationSupported(o){return v(this,arguments,function*(e,n={}){k.info(`Check if conversation for session ${e} is supported`);let{attempts:s=1,retryDelay:r=1e3}=n;return(yield this.client.get(`/api/v2/conversations/by_external_id/${e}/has_active_profile`,{attempts:s,retryDelay:r,retryOnResponse:a=>a.status===404||a.status>=500})).has_active_profile})}updateConversation(e,n){return v(this,null,function*(){var r;yield this.preflight();let o=te(n);n.metadata&&(o.metadata=(r=n.metadata)!=null?r:{});let s=yield this.client.put(`/api/v2/conversations/${e}`,o);return pi(s)})}postMessages(e,n){return v(this,null,function*(){yield this.preflight(),yield this.client.post(`/api/v2/conversations/${e}/messages`,n.map(o=>b(y({},te(o)),{metadata:o.metadata})))})}sendEvent(e,n){return v(this,null,function*(){yield this.preflight();let a=n,{data:o}=a,s=M(a,["data"]),r=Object.entries(this.latestReceivedDeepdeskVersions).reduce((d,[l,c])=>b(y({},d),{[l]:c}),{}),i=["platform","agentId","agentName","agentEmail","conversationId"].reduce((d,l)=>(s[l]&&(d[l]=s[l]),d),{});return this.client.post("/api/v2/events",te(b(y(y({},r),i),{data:o,name:e})),{version:"v2"})})}getEntities(e){return v(this,null,function*(){return yield this.preflight(),yield this.client.post("/api/v2/entities",{messages:e.filter(o=>o.text)})})}getTemporaryExchangeToken(){return v(this,null,function*(){return(yield this.client.get("/apis/admin/session/exchange-token/")).jwt})}exchangeTokenForAccessCookie(e){return v(this,null,function*(){return this.client.post("/apis/admin/session/jwt/",{jwt:e}).catch(n=>{throw k.warn(`Invalid token '${e}'`),n})})}authenticateWithKey(e,n){return v(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/api-key/",te(n),{refreshTokenOn401:!1,headers:{apikey:e}})})}getTextSuggestions(s){return v(this,arguments,function*(e,n={},o){if(yield this.preflight(),o==="sticky-messages")throw new Error("Use getPinnedMessages instead");return(yield this.client.post(`/api/v2/conversations/${e}/recommend/${o}`,te(n),{abortLatest:!0})).map(i=>b(y({},B(i)),{text:i.text||i.url||i.message,source:o,type:o})).filter((i,a,d)=>a===d.findIndex(l=>l.text===i.text))})}isLoggedIn(){return v(this,null,function*(){return yield this.preflight(),this.client.validateToken()})}getAutocompleteSuggestions(e,n){return v(this,null,function*(){return yield this.preflight(),(yield this.client.post(`/api/v2/conversations/${e}/autocomplete`,te(n),{abortLatest:!0})).map(s=>({score:1,source:s.source,sourceText:s.source_text,text:s.label,trainingJobs:s.training_jobs,searchKeywords:s.search_keywords,type:s.source})).filter((s,r,i)=>r===i.findIndex(a=>a.text===s.text))})}getPinnedMessages(e){return v(this,null,function*(){let n=yield this.client.get(`/api/v2/profiles/${e}/pinned-messages`,{abortLatest:!0});return B(n).map(o=>b(y({},o),{text:o.message,source:"sticky-messages",type:"pinned-message"}))})}getStyleSuggestions(e){return v(this,null,function*(){let n=yield this.client.post("/api/v2/style-suggestions",te(e),{abortLatest:!0,version:"v2"});return B(n)})}search(e){return v(this,null,function*(){let n=yield this.client.post(`/api/v2/profiles/${e.profile}/search`,te(e));return B(n)})}requestLoginByEmail(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.post("/apis/admin/session/passwordless/request/",{email:e});return B(n)})}requestPasswordlessToken(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/session/passwordless/request/");return B(e.token)})}getCsrfToken(){return v(this,null,function*(){let{token:e}=yield this.client.get("/apis/admin/session/csrf/");return e})}verifyLoginToken(e){return v(this,null,function*(){let n=yield this.client.post("/apis/admin/session/passwordless/login/",{token:e});return B(n)})}evaluateAssistant(e,n){return v(this,null,function*(){var i;yield this.preflight();let o=new URLSearchParams;n!=null&&n.externalConversationId&&o.append("external_conversation_id",n.externalConversationId);let s=n!=null&&n.threadId?`/api/v2/assistants/${e}/threads/${n==null?void 0:n.threadId}/evaluate?${o.toString()}`:`/api/v2/assistants/${e}/evaluate?${o.toString()}`,r=yield this.client.post(s,{input:(i=n==null?void 0:n.input)!=null?i:{},conversation:n==null?void 0:n.transcript});return B(r)})}createAssistantThread(e){return v(this,null,function*(){yield this.preflight();let{assistantCode:n}=e,o=yield this.client.post(`/apis/admin/assistants/${n}/threads/`,{});return B(o)})}postMessageToAssistantThread(e){return v(this,null,function*(){yield this.preflight();let{assistantCode:n,threadId:o,message:s}=e,r=yield this.client.post(`/apis/admin/assistants/${n}/threads/${o}/messages/`,{content:s,role:"user"});return B(r)})}translateMessages(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.post("/api/v2/translate",te(e));return B(n)})}handleDeepdeskVersionHeaders(e){e.headers.forEach((n,o)=>{let s=o.toLowerCase(),r=s.match(Bi);if(!n||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&n&&a!==n&&k.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(n)}`),this.latestReceivedDeepdeskVersions[i]=n})}};Rt.exchangeTokenPromise=null;var nt=Rt;var Ts=class{constructor(e){this.options=e;this.socket=null;this.maxReconnectAttempts=5;this.reconnectInterval=25e3;this.cleanupCallbacks=[];var n,o;this.socket,this.eventListeners=new Map,this.url=e.url,this.maxReconnectAttempts=(n=e.maxReconnectAttempts)!=null?n:this.maxReconnectAttempts,this.reconnectInterval=(o=e.reconnectInterval)!=null?o:this.reconnectInterval,this.shouldReconnect=e.shouldReconnect}connect(){let e=()=>this.cleanup();window.addEventListener("beforeunload",e),this.cleanupCallbacks.push(()=>window.removeEventListener("beforeunload",e)),this.reconnect()}setupListeners(){this.socket&&(this.socket.onmessage=e=>{var n;try{let o=B(JSON.parse(e.data));o.event&&this.eventListeners.has(o.event)&&((n=this.eventListeners.get(o.event))==null||n.forEach(s=>s(o.data)))}catch(o){console.error("Error parsing WebSocket message:",o)}},this.socket.onclose=e=>{console.log("WebSocket connection closed:",e),setTimeout(()=>{this.reconnect()},this.reconnectInterval)},this.socket.onerror=e=>{console.error("WebSocket error:",e)})}reconnect(){var e,n;if(this.maxReconnectAttempts<=0){console.error("Max reconnect attempts reached, closing WebSocket connection."),(e=this.socket)==null||e.close();return}if(!this.shouldReconnect()){console.error("Should not reconnect, closing WebSocket connection."),(n=this.socket)==null||n.close();return}this.socket&&(this.socket.onmessage=null,this.socket.onclose=null,this.socket.onerror=null,this.socket.close()),this.socket=new WebSocket(this.url),this.setupListeners(),this.maxReconnectAttempts--}send(e,n){if(!this.socket){console.error("WebSocket connection is not open.");return}this.socket.send(JSON.stringify({event:e,data:n}))}on(e,n){this.eventListeners.has(e)||this.eventListeners.set(e,[]);let o=this.eventListeners.get(e);o&&!o.includes(n)&&o.push(n)}close(){var e;(e=this.socket)==null||e.close()}cleanup(){this.close(),this.cleanupCallbacks.forEach(e=>e()),this.cleanupCallbacks=[]}};import{combineReducers as _S,configureStore as FS}from"@reduxjs/toolkit";import{createSlice as NS}from"@reduxjs/toolkit";var uu={startTime:null,stopTime:null},pu=t=>t.handlingTime,gu=NS({name:"handlingTime",initialState:uu,reducers:{handlingTimeStart(t){if(t.startTime&&!t.stopTime)throw new Error("Timing already started");t.startTime=new Date,t.stopTime=null},handlingTimeStop(t){if(!t.startTime)throw new Error("Timing not started");t.stopTime=new Date},handlingTimeReset(t){t.startTime=null,t.stopTime=null}},extraReducers:t=>{t.addCase(j,()=>uu)}}),{handlingTimeStart:mu,handlingTimeStop:ws,handlingTimeReset:fu}=gu.actions,hu=gu.reducer;var yu=(t={})=>{let e=y({onAuthError:Mt(!1)},t);return n=>o=>s=>("error"in s&&s.error.message==="Unauthorized"&&n.dispatch(e.onAuthError),o(s))};var vu=(t={})=>{let e,n=!0,o=y({getStyleSuggestions:bt,debounce:500},t);return s=>r=>i=>{var m;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(!((m=l.conversation.current)==null?void 0:m.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 OS(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var Su=(t={})=>{let e=y({getTextSuggestions:me,getAutocompleteSuggestions:Dn,debounce:200,check:Ee},t),n;return o=>s=>r=>{var h;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,p=(h=d.conversation.current)==null?void 0:h.id,u=r.type===$o.toString();if(!p||!l&&!c)return a;let{input:m}=d;return OS(m,i)&&!u||(clearTimeout(n),!e.check(d))||(n=setTimeout(()=>{let g=Dt(d);g===""?o.dispatch(e.getTextSuggestions("default")):o.dispatch(e.getAutocompleteSuggestions(g))},u?0:e.debounce)),a}};var xu=bt.fulfilled.toString();function DS(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 bu=t=>e=>n=>o=>{var l;if(o.type!==xu){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=DS(s,i);o.type===xu&&d.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:d}})};var HS=_S({assistants:qa,auth:Gi,conversation:Yi,contentTypes:Pl,passwordlessToken:Rc,entities:td,handlingTime:hu,info:Ca,input:pa,settings:Ja,profile:Nl,search:Pa,styleSuggestions:Vd,ui:Ad,textSuggestions:fd});function Cu(t){return FS({reducer:HS,middleware:e=>{var o;let n=e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI}},serializableCheck:!1}).concat(yu()).concat(Su({debounce:200})).concat(vu({debounce:500})).concat(bu(t.deepdeskAPI));return((o=t.middleware)!=null?o:[]).reduce((s,r)=>s.concat(r),n)},preloadedState:t.preloadedState})}function Tu(t,e,n){if(e==="")return null;let o=new RegExp(`\\b${ds(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 BS=t=>{var e,n;return(n=(e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())!=null?n:"unknown"},US=t=>e=>n=>o=>{var d,l,c;let s=e.getState(),r=pt("inlineSuggestions")(s),i=pt("autoSelectSuggestion")(s)||r;switch(o.type){case Mt.toString():{!o.payload&&t.emit("logout",void 0);break}case ge.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 dt.toString():t.logSendMessage(o.payload);break;case Co.toString():t.emit("call-to-action",{cue:o.payload});break;case xe.fulfilled.toString():o.isBroadcasted||t.broadcast(js,o,!1);break;default:break}let a=n(o);switch(o.type){case dt.toString():t.handleAfterSendMessage(o.payload);break;case _n.toString():t.onUpdateShowTabHint(o.payload);break;case ws.toString():t.logHandlingTime();break;case Ft.toString():t.broadcast(po,o);break;case lt.toString():t.broadcast(po,o);break;case To.toString():e.dispatch(lt({source:"assistant",assistantCode:o.payload.code}));break;case"analytics/logEvent/fulfilled":{let p=s.assistants.cues.find(u=>u.code===o.meta.arg.data.assistantCode);t.emit("event",b(y({},o.meta.arg),{cue:p}));break}case re.toString():{let{start:p,end:u}=s.input.selection;t.emit("select-suggestion",b(y({type:BS(o.payload.suggestion)},o.payload),{replace:o.payload.replace==="selection"?{start:p,end:u}:{start:0,end:u}})),r&&e.dispatch(Xe([]));break}case Wd.toString():{let{keyword:p,suggestion:u,eventMetrics:m}=o.payload,{text:f,selection:h}=s.input,g=Tu(f,p,(l=h==null?void 0:h.end)!=null?l:f.length);if(!g)break;t.emit("select-suggestion",{text:u,type:"style",replace:g,suggestion:{text:u,source:"style"},eventMetrics:m});break}case oo.toString():t.emit("select-image",o.payload),t.sendEvent("Image attached",{conversationId:(c=s.conversation.current)==null?void 0:c.id,data:{path:o.payload.suggestion.image,title:o.payload.suggestion.title}});break;case Xe.toString():{i&&o.payload.length>0&&e.dispatch(so(0));break}default:break}return a},wu=US;import{createSelector as KS}from"@reduxjs/toolkit";function gi(t){return t.toISOString().replace("T"," ").replace("Z","")}var zS=(t,e)=>e.version,Eu=KS([Ht,Se,pu,zS],(t,e,n,o)=>{if(!e)return k.warn("No conversationId for handling time metrics"),null;let{startTime:s,stopTime:r}=n;return!s||!r?(k.warn("No startTime and stopTime for handling time metrics"),null):{conversationId:e,clientVersion:o,agentId:t==null?void 0:t.agentId,agentName:t==null?void 0:t.agentName,agentEmail:t==null?void 0:t.agentEmail,timeStart:gi(s),timeStop:gi(r)}});function ku(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 Wn=class extends Error{};function WS(){let t,e;return{promise:new Promise((o,s)=>{t=o,e=s}),resolve:t,reject:e}}var Es=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 Wn("Queued async function is outdated"));let s=WS();return this.queues[e][1]=s,s.promise.then(()=>n().finally(o))}};function mi(t,e){var r;let n=t.closest(e);if(n)return n;let o=t.getRootNode().host;if(o instanceof HTMLElement)return mi(o,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?mi(s,e):null}function fi(t,e){return mi(t,e)}var VS={accepted:"onConversationAcceptedAssistants","new-message":"onConversationNewMessageAssistants",ended:"onConversationEndedAssistants"},Ru=(t,e)=>{var s,r,i;if(!((i=(r=(s=t.uiConfig)==null?void 0:s.widget)==null?void 0:r.types.find(a=>a.type==="cues"))==null?void 0:i.isActive))return k.warn("Triggered a conversation assistant, but cues are not configured in widget."),[];let o=t[VS[e]];return o&&o.length>0?o.map(a=>a.code):(k.warn(`No assistant set in profile for conversation event "${e}"`),[])};function Pu(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function jS(t){return typeof t=="object"&&t!==null&&"tagName"in t}function hi(t){return jS(t)&&(Tt(t)||as(t))}var Lu,ke=new Map,$S=["bottom","height","left","right","top","width"],Iu=(t,e)=>!t&&!e?!1:t&&!e||!t&&e?!0:$S.some(n=>t[n]!==e[n]);function Au(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,...Au(e)]:[]}function Mu(t,e){return!t||!e?null:b(y({},t),{top:t.top+e.top,left:t.left+e.left})}var ks=!1,Nu=()=>{ks=!0;let t=[];if(ke.forEach((e,n)=>{if(!n.isConnected){e.rect=null,t.push(e),ke.delete(n);return}let o=n.getBoundingClientRect();Iu(o,e.rect)&&(e.rect=o,t.push(e))}),t.forEach(e=>{let n=e.parentRects?e.parentRects.reduce(Mu,e.rect):e.rect;Iu(n,e.totalRect)&&e.callbacks.forEach(o=>o(n)),e.totalRect=n}),ke.size===0){ks=!1;return}Lu=window.requestAnimationFrame(Nu)};function yi(t,e){let n=Au(t),o=[],s=n.map((r,i)=>yi(r,a=>{o[i]=a;let d=ke.get(t);if(!d)return;let l=o.reduce(Mu,d.rect);d.callbacks.forEach(c=>c(l))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),ke.has(t)){let i=ke.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else ke.set(t,{rect:void 0,callbacks:[e],parentRects:o});r&&!ks&&Nu()},unobserve(){s.forEach(i=>i.unobserve());let r=ke.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||ke.delete(t),ke.size||(cancelAnimationFrame(Lu),ks=!1)}}}}var Ou,Re=new Map,Du=()=>{Re.forEach((t,e)=>{if(!e.isConnected){Re.delete(e);return}let{clientHeight:n,scrollHeight:o}=e,s=o>n;t.visible!==s&&(t.visible=s,t.callbacks.forEach(r=>r(t.visible)))}),Re.size!==0&&(Ou=window.requestAnimationFrame(Du))};function _u(t,e){return{observe(){let n=Re.size===0;Re.has(t)?Re.get(t).callbacks.push(e):Re.set(t,{visible:void 0,callbacks:[e]}),n&&Du()},unobserve(){let n=Re.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||Re.delete(t),Re.size||cancelAnimationFrame(Ou)}}}}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 Si(t,e,n){return n.forEach(o=>{e.style[o]=t[o]})}function sn(t){return Number.parseFloat(t)}function Rs(t){return Math.round(t*1e6)}function Fu(t){return t/1e6}function xi(t,e,n){if(t.boxSizing==="content-box")return;let{clientWidth:o}=e,s=sn(t.width),r=sn(t.borderLeftWidth),i=sn(t.borderRightWidth),a=sn(t.paddingRight),d=Fu(Rs(s)-Rs(r)-Rs(i)),l=Fu(Rs(o));if(d-l>2){let c=d-l;n.style.paddingRight=`${a+c}px`}}function Ps(t,e={}){var c,p;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",mt(n);let o=window.getComputedStyle(t),s=!0,r=()=>{n.scrollTop=t.scrollTop};Si(o,n,vi),xi(o,t,n),e.mirrorOverflow&&(n.style.overflow="hidden",t.addEventListener("scroll",r));let i=_u(t,()=>{Si(o,n,vi),xi(o,t,n),r(),setTimeout(r,0)}),a,d=!0,l=yi(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(Si(o,n,vi),xi(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 m=e.closestScrollElement.getBoundingClientRect(),f=window.getComputedStyle(e.closestScrollElement),h=sn(f.borderTopWidth),g=sn(f.borderBottomWidth),S=m.top+h-u.top,T=u.top+u.height+-(m.top+m.height-g);n.style.clipPath=`inset(${S}px 0px ${T}px 0px)`}s&&(n.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(n):(p=t.parentElement)==null||p.appendChild(n),l.observe(),i.observe(),[n,()=>{t.removeEventListener("scroll",r),l.unobserve(),i.unobserve(),n.remove()}]}function GS(t){return t.offsetParent!==null}function Hu(t){if(!GS(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 bi(t,e,n=100){let o=Hu(t);e({isVisible:o});let s=setInterval(()=>{let r=Hu(t);r!==o&&(o=r,e({isVisible:o}))},n);return()=>{clearTimeout(s)}}var Bu=(t,e)=>({value(){try{let n=sessionStorage.getItem(`dd-${t}`);if(!n)return e;try{return JSON.parse(n)}catch(o){return e}}catch(n){return e}},update(n){try{sessionStorage.setItem(`dd-${t}`,JSON.stringify(n))}catch(o){k.warn("[Deepdesk] SessionStorage is blocked by browser")}}});import{jsx as F,jsxs as qS}from"react/jsx-runtime";var Uu=Bu("showTabHint",!0),rn=class rn{constructor({deepdeskUrl:e,version:n=rn.version||"unknown",locale:o="en-US",token:s,fetch:r,productName:i,createCustomChannel:a,websocketClient:d=Ts}){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 Es;this.isMounted=!1;this.shouldRender=!0;this.loadProfileConfigPromise=null;let l=e.replace(/\/api$/,"");this.deepdeskApi=new nt(l,{token:s,fetch:r}),this.version=n,this.instanceId=rn.count++;let c={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[wu({broadcast:(f,h,g)=>{this.broadcastEvents.send(f,h,g)},emit:(f,h)=>this.emit(f,h),handleAfterSendMessage:f=>this.handleAfterSendMessage(f),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:f=>this.logSendMessage(f),onUpdateShowTabHint:f=>Uu.update(f),sendEvent:(f,h)=>this.deepdeskApi.sendEvent(f,h)})]};this.store=Cu(c),this.broadcastEvents=new du({debug:!0,deepdeskUrl:l,eventMap:Ia(this.store),createCustomChannel:a}),this.disposeHandlers.push(()=>{this.broadcastEvents.cleanup()}),this.ws=new d({url:`${l}/api/v2/me/realtime`.replace("https","wss"),reconnectInterval:25e3,shouldReconnect:()=>v(this,null,function*(){var f;return(f=Q(this.state))!=null?f:!1})}),this.whenLoggedIn(()=>this.ws.connect()),this.store.dispatch(_n(Uu.value())),this.store.dispatch(wo({locale:o,adminUrl:l,productName:i}));let p=[],u=f=>{if(!f.conversationId)return;let h=()=>{this.conversationId()===f.conversationId&&this.store.dispatch(Ga(f))};this.hasConversation()?h():p.push(h)};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 h=()=>{this.conversationId()===f.conversationId&&this.store.dispatch($a(f))};this.hasConversation()?h():p.push(h)}),this.ws.on("assistants::suggest_as_reply",f=>{if(!f.conversationId)return;let h=()=>{this.conversationId()===f.conversationId&&this.store.dispatch(Ft([{text:f.payload.message,type:"text",source:"assistant",assistantCode:f.code,sourceLabel:f.name}]))};this.hasConversation()?h():p.push(h)});let m=this.whenConversationLoaded(()=>{var f;this.broadcastEvents.setExternalId((f=this.state.conversation.current)==null?void 0:f.externalId),p.forEach(h=>h()),p.length=0});this.disposeHandlers.push(()=>{this.ws.cleanup(),p.length=0,m()})}get state(){return this.store.getState()}get settings(){return this.state.settings}get selectedTextSuggestion(){var e;return(e=at(this.state)[this.state.input.selectedSuggestionIndex])!=null?e:null}hasConversation(){return!!this.state.conversation.current}conversationId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.id}externalId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.externalId}shouldAbort(){return this.state.conversation.isSupported===!1?(k.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(k.warn("Profile has not been loaded (yet)"),!0):(k.warn("No conversation loaded (yet)"),!0)}whenLoggedIn(e){if(Q(this.state))e();else{let n=this.subscribe(Q,o=>{o&&e()});this.disposeHandlers.push(()=>{n()})}}login(){return this.store.dispatch(Mt(null)),this.store.dispatch(Ne()),new Promise(e=>{this.whenLoggedIn(()=>e())})}isLoggedIn(){return v(this,null,function*(){return(yield this.store.dispatch(Ne())).payload})}isConversationSupported(e,n){return v(this,null,function*(){return(yield this.store.dispatch(Hs({externalId:e,options:n}))).payload})}createConversation(e){return v(this,null,function*(){var o;return this.hasConversation()&&this.externalId()!==e.externalId&&this.resetConversation(),(yield this.store.dispatch(eo(b(y({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}getConversationByExternalId(e,n){return v(this,null,function*(){return this.hasConversation()&&this.externalId()!==e&&this.resetConversation(),(yield this.store.dispatch(to({externalId:e,options:n}))).payload})}upsertConversation(e){return v(this,null,function*(){var o;return this.hasConversation()&&this.externalId()!==e.externalId&&this.resetConversation(),(yield this.store.dispatch(Bs(b(y({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}postMessages(e){return v(this,null,function*(){yield this.store.dispatch(Us(e))})}updateConversation(e){return v(this,null,function*(){return(yield this.store.dispatch(no(e))).payload})}resetConversation(){this.store.dispatch(j()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}configure(e){this.store.dispatch(wo(e))}setVisitorInfo(e){this.store.dispatch(va(e))}setCustomData(e){this.store.dispatch(Sa(e))}setAgentInfo(e,n){return v(this,null,function*(){var s;yield this.store.dispatch(pn(y(y({},e),n))),(s=this.state.info.agentInfo)!=null&&s.agentNickname||this.broadcastEvents.send(uo,{showNicknameDialog:!0})})}setAgentSettings(e){return v(this,null,function*(){yield this.store.dispatch(zs(e))})}getAgentSettings(){return v(this,null,function*(){return(yield this.store.dispatch(Ws())).payload})}refresh(){return v(this,null,function*(){if(this.shouldAbort())return Promise.resolve();let e=[];return e.push(this.refreshTextSuggestions()),e.push(this.refreshWidgetSuggestions()),Promise.all(e).then(()=>{})})}syncInputMediator(){this.inputMediator&&this.store.dispatch(ro({text:this.inputMediator.getText(),html:this.inputMediator.getHTML()}))}notifyExternalSuggestion(e){this.store.dispatch(re(e))}evaluateAssistant(e,n){return v(this,null,function*(){var d;let{input:o={},transcript:s,showCuesInWidget:r=!0,includeMetadata:i}=n||{},a=yield this.store.dispatch(xe({assistantCode:e,transcript:s,includeMetadata:i,input:o,skipState:!r}));if(a.error)throw new Error(`Assistant evaluation failed: ${(d=a.payload)!=null?d:a.error.message}`);return a.payload.output})}evaluateConversationAssistant(e,n){return v(this,null,function*(){yield this.loadProfileConfig();let o=this.state.profile.data;if(!o){k.warn("Can't evaluate assistant when profile is not loaded yet.");return}let s=Ru(o,e);yield Promise.all(s.map(r=>this.queues.push(r,()=>v(this,null,function*(){yield this.evaluateAssistant(r,y({includeMetadata:!0},n))})).catch(i=>{if(i instanceof Wn){k.warn(`Queued assistant "${r}" was outdated and dropped`);return}throw i})))})}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,p=a||d,u=c==="inline"||c==="below"?"below":"above",m=s.length>0;if(this.store.dispatch(ra(Ks(e))),!Ee(this.state)||e.key!=="Tab"&&!l)return;let f=()=>{n||!m||i&&(e.shiftKey||(this.store.dispatch(la()),e.preventDefault()))},h=()=>{n||!m||p&&r<=0||i&&(e.shiftKey||(this.store.dispatch(da()),e.preventDefault()))};switch(e.key){case"ArrowUp":u==="below"?h():f();break;case"ArrowDown":{u==="below"?f():h();break}case"Escape":{n||(this.store.dispatch(so(-1)),this.store.dispatch(Ye({collapse:!0})),this.store.dispatch(Id(!0)),e.preventDefault());break}case"Tab":{e.preventDefault();let g=_t(this.state);if(!g)return;this.store.dispatch(_n(!1)),this.store.dispatch(re({text:g.text,suggestion:g,eventMetrics:{inputType:"tab"},replace:"until-selection-end"}));break}case" ":{if(p||this.state.input.selectedSuggestionIndex===-1)return;let g=_t(this.state);if(!g)return;this.store.dispatch(re({text:g.text,suggestion:g,eventMetrics:{inputType:"space"},replace:"until-selection-end"}));break}case"Enter":{if(p||e.shiftKey||this.state.input.selectedSuggestionIndex===-1)return;let g=_t(this.state);if(!g)return;this.store.dispatch(re({text:g.text,suggestion:g,eventMetrics:{inputType:"enter"},replace:"until-selection-end"})),e.preventDefault();break}default:}n&&o&&this.store.dispatch(Ye({collapse:!1}))}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(Xe([]))}handlingTimeStart(){this.state.handlingTime.startTime||(k.info("Start handling time"),this.store.dispatch(mu()))}handlingTimeStop(){this.state.handlingTime.startTime&&(k.info("Stop handling time"),this.store.dispatch(ws()))}logSendMessage(e){let n=ku(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=Eu(this.state,{version:this.version});e&&(this.deepdeskApi.sendEvent("Handling Time",{conversationId:this.conversationId(),data:e}),this.store.dispatch(fu()))}notifySubmit(e={}){var n;this.shouldAbort()||(this.store.dispatch(dt((n=e.text)!=null?n:this.state.input.text)),this.store.dispatch(ua()))}emit(e,n){let o=this.eventListeners[e];o&&o.forEach(s=>{try{s(n)}catch(r){k.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),k.error(r)}})}on(e,n){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(n),()=>{this.off(e,n)}}off(e,n){if(!e&&!n){this.eventListeners={};return}let o;this.eventListeners[e]&&(o=this.eventListeners[e].indexOf(n),o>-1&&this.eventListeners[e].splice(o,1))}setConversationQuery(e){this.dynamicThunkObject.conversationQuery=e}setPlatformVariables(e){this.store.dispatch(xa(e))}whenConversationLoaded(e){let n=r=>{var i;return(i=r.conversation.current)==null?void 0:i.id},o=()=>this.loadProfileConfig().then(()=>e());return n(this.state)&&o(),this.subscribe(n,r=>{r&&o()})}overlayContainerFactory(e,n,o,s){let[r,i]=Ps(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]=Ps(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 mt(s),s.dataset.testid=e,s.style.color=o.color,s.style.fontSize=o.fontSize,s.style.fontFamily=o.fontFamily,s.style.fontVariant=o.fontVariant,s.setAttribute("translate","no"),n.appendChild(s),s}storeMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,n=JSON.stringify({text:this.state.input.text,metrics:this.state.input.metrics});window.sessionStorage.setItem(e,n),k.info(`Stored analytics for ${this.conversationId()}`)}catch(e){}}restoreMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,n=window.sessionStorage.getItem(e);if(!n)return;let o=JSON.parse(n);o.text.trim()===this.state.input.text.trim()?(k.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(ca(o.metrics))):k.warn(`Metrics mismatch, disregarding stored metrics for ${this.conversationId()}`),window.sessionStorage.removeItem(e)}catch(e){}}mount(e,n={}){if(this.isMounted)throw new Error("[Deepdesk] This instance was already mounted. Make sure to unmount before you remount.");if(!hi(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=M(u,["customStyles","closestScrollSelector","floatingMenuParent","appendOverlayTo","inputMediator"]),l={customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i};this.configure(d),this.settings.automaticHandlingTime&&this.setupHandlingTime(e),mt(e),this.inputMediator=a||(Tt(e)?new tn(e):new en(e)),this.inputMediator.on("change",({plainText:m,rawHTML:f})=>{this.store.dispatch(ro({text:m,html:f}))}),this.inputMediator.on("keyup",m=>{this.store.dispatch(ia(Ks(m)))}),this.inputMediator.on("keydown",m=>{this.handleKeyDown(m)}),this.inputMediator.on("paste",({pastedText:m,selectionText:f})=>{this.store.dispatch(aa({text:m,selectionText:f}))}),this.inputMediator.on("cut",({selectionText:m})=>{this.store.dispatch(sa(m))});let c;this.inputMediator.on("selection",m=>{clearTimeout(c),m===null?c=setTimeout(()=>{m!==null&&this.store.dispatch(io(m))},500):this.store.dispatch(io(m))}),this.unmountHandlers.push(()=>{clearTimeout(c)}),this.inputMediator.on("disabled",()=>{var m;(m=this.inputMediator)==null||m.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{this.settings.detectSubmit&&this.notifySubmit()}),this.inputMediator.on("blur",()=>{this.store.dispatch(Xo(!1))}),this.inputMediator.on("focus",()=>{this.store.dispatch(Xo(!0))}),this.renderSuggestions(e,l),this.subscribe(pt("inlineSuggestions"),()=>{this.renderSuggestions(e,l)}),this.subscribe(pt("suggestionsPlacement"),()=>{this.renderSuggestions(e,l)});let p=this.renderOverlays(n);this.unmountHandlers.push(()=>{p.unmount()}),this.store.dispatch(ro({text:this.inputMediator.getText(),html:this.inputMediator.getHTML()})),this.store.dispatch(io(this.inputMediator.getSelection())),this.store.dispatch(Xo(this.inputMediator.isFocused)),this.unmountHandlers.push(()=>{this.state.input.text!==""&&this.storeMetrics()}),this.whenConversationLoaded(()=>{this.restoreMetrics(),this.syncInputMediator(),this.refreshTextSuggestions(),this.promptForNickname()}),this.isMounted=!0}promptForNickname(e){if(this.nicknameDialogUnsubscribe||this.nicknameDialogFailed)return;let n=this.createContainer("nickname-dialog",document.body);document.body.appendChild(n);let o=ot(n),s=null,r=a=>{s=a,i()},i=()=>{o==null||o.render(F(Ke,{store:this.store,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(Gd,{id:"deepdesk-nickname-dialog",error:s,onSave:a=>v(this,null,function*(){try{yield this.store.dispatch(ha({agentNickname:a})).unwrap(),console.log("setAgentNickname",a),this.broadcastEvents.send(uo,{showNicknameDialog:!1}),this.nicknameDialogUnsubscribe&&this.nicknameDialogUnsubscribe()}catch(d){k.error("Error setting agent nickname",d),r("error"),this.nicknameDialogFailed=!0}})})})}))};i(),this.nicknameDialogUnsubscribe=()=>{o.unmount(),n.remove(),this.nicknameDialogUnsubscribe=null}}subscribe(e,n){let o=e(this.store.getState());return this.store.subscribe(()=>{let s=e(this.store.getState());s!==o&&(o=s,n(o))})}unmount(){var e,n,o,s,r;(e=this.inlineSuggestions)==null||e.unmount(),(n=this.aboveSuggestions)==null||n.unmount(),(o=this.belowSuggestions)==null||o.unmount(),(s=this.floatingMenu)==null||s.unmount(),this.unmountHandlers.forEach(i=>i()),this.unmountHandlers=[],(r=this.inputMediator)==null||r.dispose(),this.nicknameDialogUnsubscribe&&this.nicknameDialogUnsubscribe(),this.isMounted=!1}dispose(){this.unmount(),this.unmountWidget(),this.disposeHandlers.forEach(e=>e()),this.disposeHandlers=[],this.off()}renderSuggestions(e,n){var o,s,r,i;(o=this.floatingMenu)==null||o.unmount(),(s=this.inlineSuggestions)==null||s.unmount(),(r=this.aboveSuggestions)==null||r.unmount(),(i=this.belowSuggestions)==null||i.unmount(),this.settings.floatingMenu&&(this.floatingMenu=this.renderFloatingMenu(e,n)),this.settings.inlineSuggestions||this.settings.suggestionsPlacement==="inline"?this.inlineSuggestions=this.renderInlineSuggestions(e,n):this.settings.suggestionsPlacement==="below"?this.belowSuggestions=this.renderAboveOrBelowSuggestions(e,n,"below"):this.aboveSuggestions=this.renderAboveOrBelowSuggestions(e,n,"above")}renderInlineSuggestions(e,n){let{customStyles:o}=n,s=this.createInlineContainer(e,"deepdesk-caret"),r=ot(s);r.render(F(Ke,{store:this.store,customStyles:o,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(jd,{})})}));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&&fi(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,p]=this.overlayContainerFactory("deepdesk-suggestions-overlay",a||e,{appendTo:i,placement:o},s==null?void 0:s.suggestionsRootNode),u=ot(d);u.render(F(Ke,{store:this.store,customStyles:s,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(Tc,{inputElement:e})})}));let m=ot(c);return m.render(F(Ke,{store:this.store,customStyles:s,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(oc,{onLogIn:()=>this.loginViaPopup().catch(f=>k.warn(f.message))})})})),{unmount(){u.unmount(),m.unmount(),l(),p()}}}renderFloatingMenu(e,n){let{customStyles:o,closestScrollSelector:s,appendOverlayTo:r,floatingMenuParent:i}=n,a=s&&fi(e,s)||void 0,[d,l]=this.overlayContainerFactory("floating-menu",a||e,{appendTo:i!=null?i:r},o==null?void 0:o.floatingMenuParent),c=ot(d);return c.render(F(Ke,{store:this.store,customStyles:o,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(Rd,{onLogIn:()=>this.loginViaPopup().catch(p=>k.warn(p.message))})})})),{unmount(){c.unmount(),l()}}}renderOverlays(e){let{customStyles:n}=e,o=this.createContainer("deepdesk-overlays"),s=ot(o);return s.render(F(Ke,{store:this.store,customStyles:n,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(bd,{})})})),{unmount(){s.unmount(),o.remove()}}}renderWidget(e,n={}){if(this.widgetElement&&k.warn("A widget was already rendered for this instance. Make sure to unmountWidget before rerendering"),!this.shouldRender)return;let{customStyles:o,showImages:s,isEmbedded:r}=n;this.widgetElement=e,this.configure({showImages:s,isEmbedded:r}),this.widgetRoot=ot(e),this.widgetRoot.render(F(Ke,{store:this.store,customStyles:o,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(ou,{assistantOptions:n.assistantOptions,knowledgeAssistOptions:n.knowledgeAssist,onLogIn:()=>this.loginViaPopup().catch(i=>k.warn(i.message))})})}))}unmountWidget(){var e,n;(n=(e=this.widgetRoot)==null?void 0:e.unmount)==null||n.call(e),this.widgetRoot=null,this.widgetElement=null}renderKnowledgeAssistantWidget(e,n,o={}){let{customStyles:s,initialQuestion:r}=o,i=ot(n);return i.render(F(Ke,{store:this.store,customStyles:s,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(ri,{children:qS(No,{assistantCode:e,initialQuestion:r,evaluateKnowledgeAssistFn:En,children:[F(ln,{children:F(Do,{title:o.title,emptyState:o.emptyState})}),F(si,{children:F(Oo,{})})]})})})})),{unmount(){i.unmount()}}}setupHandlingTime(e){let n=bi(e,({isVisible:o})=>{o?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),n()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){Pu(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfig(){return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(this.loadProfileConfigPromise=Promise.resolve().then(()=>v(this,null,function*(){yield this.store.dispatch(In());let e=vt(this.state);e&&this.store.dispatch(wo({showSearch:e.search,showImageSearch:e.imageSearch,showEntitiesCommand:e.entitiesCommand,showSummaryCommand:!!e.summarizerAssistantNew,showKnowledgeSearch:!!e.knowledgeAssistantNew||!!e.knowledgeAssistant,recommendTextSuggestions:e.recommendTextSuggestions}))})),this.loadProfileConfigPromise)}loginViaPopup(e){return v(this,null,function*(){return new Promise((n,o)=>{this.store.dispatch(Yn());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",p),clearInterval(u)};r.onmessage=m=>v(this,null,function*(){var f,h;if((f=m.data)!=null&&f.jwt)try{yield this.deepdeskApi.exchangeTokenForAccessCookie((h=m.data)==null?void 0:h.jwt),yield this.isLoggedIn(),this.broadcastEvents.send(mn),d=!0,s.port1.close(),n()}catch(g){console.error(g),o(g)}finally{d=!0,l()}});let c=window.open(a.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");c===null&&o(new Error("Popup blocked by browser"));let p=m=>v(this,null,function*(){var f;if(m.origin===a.origin)switch((f=m.data)==null?void 0:f.type){case"deepdesk-popup-request-origin":{try{let h=JSON.stringify({type:"deepdesk-popup-parent-origin"});c==null||c.postMessage(h,a.origin)}catch(h){k.error("Error posting message to popup",h),o(h)}break}case"deepdesk-popup-loaded":{try{let h=JSON.stringify({type:"deepdesk-popup-create-channel"});c==null||c.postMessage(h,a.origin,[s.port2])}catch(h){k.error("Error posting message to popup",h),o(h)}break}case"deepdesk-popup-error":{if(l(),m.data.message==="Platform account url mismatch"){let h=`Please contact your administrator: The platform account url (${m.data.targetOrigin}) is misconfigured as it differs from the origin of the page that opened the popup (${m.data.openerOrigin}).`;k.warn(h),this.store.dispatch(Fs(h)),o(new Error(h))}if(m.data.message==="Timeout"){let h="Please contact your administrator: Popup timed out. Check if the account's platform url is configured correctly.";k.warn(h),this.store.dispatch(Fs(h)),o(new Error(h))}o(new Error(m.data.message));break}}});window.addEventListener("message",p);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 v(this,null,function*(){this.isMounted&&(yield this.store.dispatch($o()))})}refreshWidgetSuggestions(){return v(this,null,function*(){if(!this.widgetRoot)return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let n=Ln(this.state);try{n.forEach(({type:o})=>{switch(o){case"entities":this.store.dispatch(ge());break;case"pinned-messages":case"sticky-messages":break;default:Qn.includes(o)||this.store.dispatch(me(o))}})}catch(o){this.handleError(o)}})}};rn.version="19.2.1-beta.0",rn.count=0;var Is=rn;function XS(t){return v(this,null,function*(){var s,r,i;let n=yield((s=t.fetch)!=null?s:window.fetch)(t.url),o=yield n.blob();return new File([o],t.name,{type:(i=(r=t.mimeType)!=null?r:n.headers.get("Content-Type"))!=null?i:"image/jpeg"})})}function JS(t,e){return v(this,null,function*(){let n=yield XS(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 QS(t,e,n){return v(this,null,function*(){yield new nt(t).authenticateWithKey(e,n)})}function ZS(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}function YS(o,s){return v(this,arguments,function*(t,e,n={}){var p,u;let{value:r}=t,{start:i,end:a}=(p=n.replace)!=null?p:{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 ex(o,s){return v(this,arguments,function*(t,e,n={}){let r=n.replace?Et(t,n.replace.start,n.replace.end):zn(t),i,a=()=>{if(n.setRange)return n.setRange(r.cloneRange());r.deleteContents(),i=document.createElement("span"),r.insertNode(i),n.insertBRs!==!1?e.split(`
|
|
11
|
-
`).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?
|
|
12
|
-
`).forEach((n,o)=>{o>0&&e.appendChild(document.createElement("br"));let s={index:0},r=0;for(;s=n.slice(r).match(/(\[([^\]]+)])\(([^)]+)\)/);){let i=document.createElement("a");i.href=s[3],i.setAttribute("target","_blank"),i.setAttribute("rel","noopener noreferrer"),i.appendChild(document.createTextNode(s[2])),e.appendChild(document.createTextNode(n.slice(r,r+s.index))),e.appendChild(i),r=r+s.index+s[0].length}e.appendChild(document.createTextNode(n.slice(r)))}),e}function Ku(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):Ku(n,e)}function ox(s,r){return v(this,arguments,function*(t,e,{isBlock:n,isHTML:o}={}){let i;t.dispatchEvent(new InputEvent("beforeinput",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0}));let a=()=>{var 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 p=o?tx(e):nx(e);n?Ku(c.startContainer,p):(c.insertNode(p),c.collapse(!1))};return Promise.resolve(a()).then(()=>{if(t.dispatchEvent(new InputEvent("input",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0})),t.focus(),!!i)try{i.scrollIntoView&&i.scrollIntoView({block:"nearest",inline:"nearest"})}finally{i&&i.remove()}})})}export{D as Card,en as ContentEditableInput,nt as DeepdeskAPI,Is as DeepdeskSDK,on as HTTPClient,tt as InputMediator,
|
|
10
|
+
`);let h=u?o:0,f=m?Math.min(r,c.childNodes.length):c.childNodes.length;for(let g=h;g<f&&(l(c.childNodes[g]),a!==2);g++);break}default:break}m&&(a=2)}return l(t),d}var ru=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(ru||{}),tt=class{constructor(e){this.element=e;this.isFocused=!1;this.isActive=!0;this.isDisposed=!1;this.eventListeners={};this.disposeHandlers=[];this.cachedText="";this.cachedSuggestionTextStart=0;this.cachedCaretPosition=null;this.cachedSelection={start:0,end:0};this.cachedHTML="";this.isSubmitting=!1;this.isPossibleClearInputAction=!1;this.cachedText=this.getText(),this.cachedSuggestionTextStart=this.getSuggestionTextStart(),this.cachedHTML=this.getHTML(),this.cachedSelection=this.getSelection(),this.listen()}addEventListener(e,n){let o=s=>{n(s)};this.element.addEventListener(e,o),this.disposeHandlers.push(()=>{this.element.removeEventListener(e,o)})}removeEventListener(e,n){this.element.removeEventListener(e,n)}handleInteraction(){let e=this.getText(),n=this.getHTML(),o=this.getSelection(),s=this.getSuggestionTextStart(),r=this.cachedCaretPosition===null;if(!this.isActive)return;e===""&&this.cachedText!==""&&!this.isPossibleClearInputAction&&this.emit("submit");let i=e!==this.cachedText,a=n!==null&&n!==this.cachedHTML,d=s!==this.cachedSuggestionTextStart;if((i||a||d)&&(i?(this.cachedText=e,this.cachedHTML=n):a&&(this.cachedHTML=n),this.cachedSuggestionTextStart=s,r=!0,this.emit("change",{plainText:e,rawHTML:n,suggestionTextStart:s})),(o.start!==this.cachedSelection.start||o.end!==this.cachedSelection.end)&&(this.cachedSelection=o,r=!0,this.emit("selection",o)),!r)return;let l=this.getCaretPosition();qe(l,this.cachedCaretPosition)||(this.cachedCaretPosition=l,this.emit("caretposition",l))}handleClick(){this.handleInteraction()}handleFocus(){let e=!this.isFocused;this.isFocused=!0,e&&this.emit("focus"),this.handleInteraction()}handleBlur(){this.isPossibleClearInputAction=!1;let e=this.isFocused;this.isFocused=!1,e&&this.emit("blur")}handleKeyDown(e){let{key:n,ctrlKey:o,metaKey:s}=e;this.isPossibleClearInputAction=Object.values(ru).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 iu(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var en=class extends tt{constructor(){super(...arguments);this.lastKnownSelection=null}getRootNode(){return this.element.getRootNode()}getText(){let n=new Range;return n.selectNodeContents(this.element),Cs(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!iu(o)&&(n.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=n.getBoundingClientRect(),n.deleteContents(),!iu(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let n=this.getRange();if(n)return bs(this.element,n);let o=this.lastKnownSelection;if(o&&su(this.element,o.start,o.end))return o;let s=zn(this.element);return s.collapse(!1),bs(this.element,s)}getSelectedText(){let{start:n,end:o}=this.getSelection();return Cs(this.element,kt(this.element,n,o))}listen(){super.listen();let n=new MutationObserver(r=>{var i,a;r.length===2&&r[0].addedNodes.length===1&&((i=r[0].addedNodes[0])==null?void 0:i.textContent)==="\u2060"&&((a=r[1].removedNodes[0])==null?void 0:a.textContent)==="\u2060"||setTimeout(()=>{this.handleInteraction()},0)});n.observe(this.element,{attributes:!0,characterData:!0,childList:!0,subtree:!0}),this.disposeHandlers.push(()=>n.disconnect());let o=this.element.isContentEditable,s=new MutationObserver(()=>{this.element.isContentEditable!==o&&(o=this.element.isContentEditable,this.emit(this.element.isContentEditable?"enabled":"disabled"))});s.observe(this.element,{attributes:!0,attributeFilter:["contenteditable"]}),this.disposeHandlers.push(()=>s.disconnect())}};var PS=["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 au(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",PS.forEach(c=>{s[c]=r[c]}),n?t.scrollHeight>Number.parseInt(r.height)&&(s.overflowY="scroll"):s.overflow="hidden",o.textContent=t.value.substring(0,e);let a=document.createElement("span");a.textContent=t.value.substring(e)||".",o.appendChild(a),i.appendChild(o);let d=t.getBoundingClientRect(),l={top:d.top-t.scrollTop+a.offsetTop+Number.parseInt(r.borderTopWidth)+a.offsetHeight,left:d.left-t.scrollLeft+a.offsetLeft+Number.parseInt(r.borderLeftWidth)};return i.removeChild(o),l}var tn=class extends tt{constructor(){super(...arguments);this.lastKnownSelection=null}getText(){return this.element.value}getHTML(){return null}getSelection(){let{selectionStart:n,selectionEnd:o}=this.element;return{start:n,end:o}}getSelectedText(){let n=this.getSelection();return n?this.getText().slice(n.start,n.end):""}getCaretPosition(){return au(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 lu(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 IS(t){if(typeof t!="string")return t;try{return JSON.parse(t)}catch(e){return t}}var ii=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()}},ai=class{constructor(e,n,o){this.name=e;this.targetOrigin=n;this.options=o;this.disposeHandlers=[];this.iframe=lu(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()}},li=class{constructor(e){this.params=e;this.deepdeskUrl=e.deepdeskUrl,this.eventMap=e.eventMap,this.externalId="deepdesk-general",this.defaultChannel=this.createChannel("deepdesk-general")}get isCrossOrigin(){return this.params.deepdeskUrl!==(this.params.origin||window.location.origin)}setExternalId(e){this.externalId!==e&&(this.cleanup(),k.info("Set externalId",e),this.externalId=e,this.channel=this.createChannel(e))}createChannel(e){let n=this.params.createCustomChannel?this.params.createCustomChannel(e):this.isCrossOrigin?new ai(e,this.deepdeskUrl,{debug:!0}):new ii(e),o=s=>{var i,a;if(s.origin!==this.deepdeskUrl)return;let r=IS(s.data);typeof r!="object"||r.type!=="event"||r.channel!==e||(k.info("Received broadcast event",this.externalId,s),(a=(i=this.eventMap)[r.name])==null||a.call(i,r.payload))};return n.onMessage(o),n}send(e,n,o){var i,a;k.info("Broadcast event",{externalId:this.externalId,name:e,payload:n});let s={type:"event",name:e,payload:n};o!==!1&&((a=(i=this.eventMap)[e])==null||a.call(i,n));let r=this.externalId==="deepdesk-general"?this.defaultChannel:this.channel;r==null||r.postMessage(b(y({},s),{channel:this.externalId}))}cleanup(e=!1){var n,o;(n=this.channel)==null||n.close(),this.channel=void 0,e&&((o=this.defaultChannel)==null||o.close(),this.defaultChannel=void 0)}},du=li;function LS(t){return t.replace(/(_\w)/g,e=>e[1].toUpperCase())}function B(t){return Array.isArray(t)?t.map(B):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>b(y({},e),{[LS(n)]:B(t[n])}),{}):t}function AS(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function te(t){return Array.isArray(t)?t.map(te):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,n)=>b(y({},e),{[AS(n)]:te(t[n])}),{}):t}var nn=class extends Error{constructor(n,o){super(n);this.body=o;this.name="CustomError"}};var di=t=>new Promise(e=>{setTimeout(e,t)});var Rt=class extends nn{constructor(){super(...arguments);this.name="ClientError"}},ui=class extends nn{constructor(){super(...arguments);this.name="ServerError"}},ci=new Map;function MS(t){return v(this,null,function*(){if(t.status===204)return t.text().catch(()=>{}),null;let e=t.headers.get("content-type");if(e!=null&&e.includes("application/json"))return t.json();let n=yield t.text();return n===""?null:(k.warn("Unexpected response body:",n.slice(0,20)),JSON.parse(n))})}var on=class{constructor(e="",n={}){this.baseUrl=e;this.options=n;this.latestRequestByUrl={};this.refreshingToken=null;this.lastFailedRefreshAt=null;this.failedRefreshCooldown=1e4;var o;this.fetch=(o=n.fetch)!=null?o:window.fetch.bind(window)}patchFetch(e){this.fetch=e(this.fetch)}setCsrfToken(e){this.csrfToken=e}request(e,n={}){return new Promise((o,s)=>{let r={isAborted:!1,reject:s},i=`${this.baseUrl}${e}`,a=this.fetch,d=n.method===void 0||n.method.toLowerCase()==="get",N=n,{useCache:l=!1,abortLatest:c=!1,attempts:p=1,retryDelay:u=500,refreshTokenOn401:m=!0,retryOnError:h=_=>_ instanceof TypeError,retryOnResponse:f=_=>_.status>=500,version:g=null}=N,S=M(N,["useCache","abortLatest","attempts","retryDelay","refreshTokenOn401","retryOnError","retryOnResponse","version"]);if(l){if(!d)throw new Error(`Can't use 'useCache' for ${n.method}`);if(ci.has(i)){o(ci.get(i));return}}let T=b(y({credentials:"include"},S),{headers:y({Accept:"application/json","Content-Type":"application/json"},S.headers)});!d&&this.csrfToken&&(T.headers=b(y({},T.headers),{"X-CSRFToken":this.csrfToken})),typeof g=="string"&&(T.headers=b(y({},T.headers),{"X-Deepdesk-API-Version":g}));let C=p,E=!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 A=()=>v(this,null,function*(){return C--,a(i,T).then(_=>v(this,null,function*(){return f(_)&&!r.isAborted&&C>0?(yield di(u),A()):_.status===401&&m===!0&&E===!1?(E=!0,yield this.refreshToken(),A()):_})).catch(_=>v(this,null,function*(){if(h(_)&&!r.isAborted&&C>0)return yield di(u),A();throw _}))});A().then(_=>v(this,null,function*(){let V=yield MS(_);if(delete this.latestRequestByUrl[i],_.status>=500){s(new ui("Server Error",V));return}if(_.status===401){s(new Rt("Unauthorized",V));return}if(_.status===403){s(new Rt("Forbidden",V));return}if(_.status===404){s(new Rt("Not Found",V));return}if(_.status>=400){s(new Rt("Bad Request",V));return}l&&ci.set(i,V),o(V)})).catch(_=>{s(_)})})}validateToken(){return v(this,null,function*(){let e,n,o;try{({has_valid_access_token:e,is_logged_in:n,has_valid_refresh_token:o}=yield this.get("/apis/admin/session/validate/",{refreshTokenOn401:!1}))}catch(s){return!1}if(!e){if(!o)return!1;try{yield this.refreshToken();let{is_logged_in:s}=yield this.get("/apis/admin/session/validate/",{refreshTokenOn401:!1});return s}catch(s){return!1}}return n})}refreshToken(){let e=Date.now();return this.lastFailedRefreshAt&&e-this.lastFailedRefreshAt<this.failedRefreshCooldown?Promise.reject(new Rt("Unauthorized","Failed to refresh token")):this.refreshingToken?this.refreshingToken:(this.refreshingToken=this.get("/apis/admin/session/refresh/",{refreshTokenOn401:!1}).catch(n=>{throw(n==null?void 0:n.message)==="Unauthorized"&&(this.lastFailedRefreshAt=Date.now()),n}).finally(()=>{this.refreshingToken=null}),this.refreshingToken)}get(e,n){return this.request(e,n)}post(e,n,o){return this.request(e,y({method:"POST",body:JSON.stringify(n)},o))}patch(e,n,o){return this.request(e,y({method:"PATCH",body:JSON.stringify(n)},o))}put(e,n,o){return this.request(e,y({method:"PUT",body:JSON.stringify(n)},o))}delete(e,n){return this.request(e,y({method:"DELETE"},n))}};var cu;(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={}))})(cu||(cu={}));function pi(t){return b(y({},B(t)),{metadata:t.metadata})}var Pt=class Pt{constructor(e,n={}){this.options=n;this.latestReceivedDeepdeskVersions={};this.shouldFetchCsrfToken=!0;this.client=new on(e,{fetch:n.fetch}),this.client.patchFetch(o=>(s,r)=>v(this,null,function*(){let i=yield o(s,r);return this.handleDeepdeskVersionHeaders(i),i}))}preflight(){return v(this,null,function*(){if(this.shouldFetchCsrfToken){this.shouldFetchCsrfToken=!1;let e=yield this.getCsrfToken();this.client.setCsrfToken(e)}return this.options.token?(Pt.exchangeTokenPromise||(Pt.exchangeTokenPromise=this.exchangeTokenForAccessCookie(this.options.token)),Pt.exchangeTokenPromise):Promise.resolve()})}createConversation(e){return v(this,null,function*(){var o;yield this.preflight(),k.info(`Creating conversation for session ${e.externalId} and agent ${e.agentId}`);let n=yield this.client.post("/api/v2/conversations",b(y({chat_start_time:new Date().toISOString()},te(e)),{metadata:(o=e.metadata)!=null?o:{}}));return pi(n)})}getMe(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/session/me/");return B(e)})}postIdentity(e){return v(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/me/identities/",te(e))})}patchMe(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.patch("/apis/admin/session/me/",te(e));return B(n)})}getProfile(e){return v(this,null,function*(){let n=yield this.client.get(`/apis/admin/profiles/${e}/`,{useCache:!0});return B(n)})}getKnowledgeAssistant(e){return v(this,null,function*(){let n=yield this.client.get(`/apis/admin/knowledge-assist/assistants/${e}/`,{useCache:!0});return B(n)})}getContentTypes(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/content-types/",{useCache:!0});return B(e)})}getAccount(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/account/",{useCache:!0});return B(e)})}getPlatformConfig(e){return v(this,null,function*(){let n=e!==void 0?`/platform/config/${e}/`:"/platform/config/",{config:o}=yield this.client.get(n,{useCache:!0});return B(o)})}checkUserExists(e){return v(this,null,function*(){let{exists:n}=yield this.client.get(`/apis/admin/users/exists?external_id=${e}`,{version:"v1"});return n})}getConversationByExternalId(o){return v(this,arguments,function*(e,n={}){yield this.preflight(),k.info(`Getting conversation for session ${e}`);let{attempts:s=1,retryDelay:r=1e3}=n,i=yield this.client.get(`/api/v2/conversations/by_external_id/${e}`,{attempts:s,retryDelay:r,retryOnResponse:a=>a.status===404||a.status>=500,version:"v2"});return k.info(`Successfully retrieved conversation ${i.id} for session ${e}`),pi(i)})}isConversationSupported(o){return v(this,arguments,function*(e,n={}){k.info(`Check if conversation for session ${e} is supported`);let{attempts:s=1,retryDelay:r=1e3}=n;return(yield this.client.get(`/api/v2/conversations/by_external_id/${e}/has_active_profile`,{attempts:s,retryDelay:r,retryOnResponse:a=>a.status===404||a.status>=500})).has_active_profile})}updateConversation(e,n){return v(this,null,function*(){var r;yield this.preflight();let o=te(n);n.metadata&&(o.metadata=(r=n.metadata)!=null?r:{});let s=yield this.client.put(`/api/v2/conversations/${e}`,o);return pi(s)})}postMessages(e,n){return v(this,null,function*(){yield this.preflight(),yield this.client.post(`/api/v2/conversations/${e}/messages`,n.map(o=>b(y({},te(o)),{metadata:o.metadata})))})}sendEvent(e,n){return v(this,null,function*(){yield this.preflight();let a=n,{data:o}=a,s=M(a,["data"]),r=Object.entries(this.latestReceivedDeepdeskVersions).reduce((d,[l,c])=>b(y({},d),{[l]:c}),{}),i=["platform","agentId","agentName","agentEmail","conversationId"].reduce((d,l)=>(s[l]&&(d[l]=s[l]),d),{});return this.client.post("/api/v2/events",te(b(y(y({},r),i),{data:o,name:e})),{version:"v2"})})}getEntities(e){return v(this,null,function*(){return yield this.preflight(),yield this.client.post("/api/v2/entities",{messages:e.filter(o=>o.text)})})}getTemporaryExchangeToken(){return v(this,null,function*(){return(yield this.client.get("/apis/admin/session/exchange-token/")).jwt})}exchangeTokenForAccessCookie(e){return v(this,null,function*(){return this.client.post("/apis/admin/session/jwt/",{jwt:e}).catch(n=>{throw k.warn(`Invalid token '${e}'`),n})})}authenticateWithKey(e,n){return v(this,null,function*(){yield this.preflight(),yield this.client.post("/apis/admin/session/api-key/",te(n),{refreshTokenOn401:!1,headers:{apikey:e}})})}getTextSuggestions(s){return v(this,arguments,function*(e,n={},o){if(yield this.preflight(),o==="sticky-messages")throw new Error("Use getPinnedMessages instead");return(yield this.client.post(`/api/v2/conversations/${e}/recommend/${o}`,te(n),{abortLatest:!0})).map(i=>b(y({},B(i)),{text:i.text||i.url||i.message,source:o,type:o})).filter((i,a,d)=>a===d.findIndex(l=>l.text===i.text))})}isLoggedIn(){return v(this,null,function*(){return yield this.preflight(),this.client.validateToken()})}getAutocompleteSuggestions(e,n){return v(this,null,function*(){return yield this.preflight(),(yield this.client.post(`/api/v2/conversations/${e}/autocomplete`,te(n),{abortLatest:!0})).map(s=>({score:1,source:s.source,sourceText:s.source_text,text:s.label,trainingJobs:s.training_jobs,searchKeywords:s.search_keywords,type:s.source})).filter((s,r,i)=>r===i.findIndex(a=>a.text===s.text))})}getPinnedMessages(e){return v(this,null,function*(){let n=yield this.client.get(`/api/v2/profiles/${e}/pinned-messages`,{abortLatest:!0});return B(n).map(o=>b(y({},o),{text:o.message,source:"sticky-messages",type:"pinned-message"}))})}getStyleSuggestions(e){return v(this,null,function*(){let n=yield this.client.post("/api/v2/style-suggestions",te(e),{abortLatest:!0,version:"v2"});return B(n)})}search(e){return v(this,null,function*(){let n=yield this.client.post(`/api/v2/profiles/${e.profile}/search`,te(e));return B(n)})}requestLoginByEmail(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.post("/apis/admin/session/passwordless/request/",{email:e});return B(n)})}requestPasswordlessToken(){return v(this,null,function*(){let e=yield this.client.get("/apis/admin/session/passwordless/request/");return B(e.token)})}getCsrfToken(){return v(this,null,function*(){let{token:e}=yield this.client.get("/apis/admin/session/csrf/");return e})}verifyLoginToken(e){return v(this,null,function*(){let n=yield this.client.post("/apis/admin/session/passwordless/login/",{token:e});return B(n)})}evaluateAssistant(e,n){return v(this,null,function*(){var i;yield this.preflight();let o=new URLSearchParams;n!=null&&n.externalConversationId&&o.append("external_conversation_id",n.externalConversationId);let s=n!=null&&n.threadId?`/api/v2/assistants/${e}/threads/${n==null?void 0:n.threadId}/evaluate?${o.toString()}`:`/api/v2/assistants/${e}/evaluate?${o.toString()}`,r=yield this.client.post(s,{input:(i=n==null?void 0:n.input)!=null?i:{},conversation:n==null?void 0:n.transcript});return B(r)})}createAssistantThread(e){return v(this,null,function*(){yield this.preflight();let{assistantCode:n}=e,o=yield this.client.post(`/apis/admin/assistants/${n}/threads/`,{});return B(o)})}postMessageToAssistantThread(e){return v(this,null,function*(){yield this.preflight();let{assistantCode:n,threadId:o,message:s}=e,r=yield this.client.post(`/apis/admin/assistants/${n}/threads/${o}/messages/`,{content:s,role:"user"});return B(r)})}translateMessages(e){return v(this,null,function*(){yield this.preflight();let n=yield this.client.post("/api/v2/translate",te(e));return B(n)})}handleDeepdeskVersionHeaders(e){e.headers.forEach((n,o)=>{let s=o.toLowerCase(),r=s.match(Bi);if(!n||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&n&&a!==n&&k.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(n)}`),this.latestReceivedDeepdeskVersions[i]=n})}};Pt.exchangeTokenPromise=null;var nt=Pt;var Ts=class{constructor(e){this.options=e;this.socket=null;this.maxReconnectAttempts=5;this.reconnectInterval=25e3;this.cleanupCallbacks=[];var n,o;this.socket,this.eventListeners=new Map,this.url=e.url,this.maxReconnectAttempts=(n=e.maxReconnectAttempts)!=null?n:this.maxReconnectAttempts,this.reconnectInterval=(o=e.reconnectInterval)!=null?o:this.reconnectInterval,this.shouldReconnect=e.shouldReconnect}connect(){let e=()=>this.cleanup();window.addEventListener("beforeunload",e),this.cleanupCallbacks.push(()=>window.removeEventListener("beforeunload",e)),this.reconnect()}setupListeners(){this.socket&&(this.socket.onmessage=e=>{var n;try{let o=B(JSON.parse(e.data));o.event&&this.eventListeners.has(o.event)&&((n=this.eventListeners.get(o.event))==null||n.forEach(s=>s(o.data)))}catch(o){console.error("Error parsing WebSocket message:",o)}},this.socket.onclose=e=>{console.log("WebSocket connection closed:",e),setTimeout(()=>{this.reconnect()},this.reconnectInterval)},this.socket.onerror=e=>{console.error("WebSocket error:",e)})}reconnect(){var e,n;if(this.maxReconnectAttempts<=0){console.error("Max reconnect attempts reached, closing WebSocket connection."),(e=this.socket)==null||e.close();return}if(!this.shouldReconnect()){console.error("Should not reconnect, closing WebSocket connection."),(n=this.socket)==null||n.close();return}this.socket&&(this.socket.onmessage=null,this.socket.onclose=null,this.socket.onerror=null,this.socket.close()),this.socket=new WebSocket(this.url),this.setupListeners(),this.maxReconnectAttempts--}send(e,n){if(!this.socket){console.error("WebSocket connection is not open.");return}this.socket.send(JSON.stringify({event:e,data:n}))}on(e,n){this.eventListeners.has(e)||this.eventListeners.set(e,[]);let o=this.eventListeners.get(e);o&&!o.includes(n)&&o.push(n)}close(){var e;(e=this.socket)==null||e.close()}cleanup(){this.close(),this.cleanupCallbacks.forEach(e=>e()),this.cleanupCallbacks=[]}};import{combineReducers as _S,configureStore as FS}from"@reduxjs/toolkit";import{createSlice as NS}from"@reduxjs/toolkit";var uu={startTime:null,stopTime:null},pu=t=>t.handlingTime,gu=NS({name:"handlingTime",initialState:uu,reducers:{handlingTimeStart(t){if(t.startTime&&!t.stopTime)throw new Error("Timing already started");t.startTime=new Date,t.stopTime=null},handlingTimeStop(t){if(!t.startTime)throw new Error("Timing not started");t.stopTime=new Date},handlingTimeReset(t){t.startTime=null,t.stopTime=null}},extraReducers:t=>{t.addCase(j,()=>uu)}}),{handlingTimeStart:mu,handlingTimeStop:ws,handlingTimeReset:fu}=gu.actions,hu=gu.reducer;var yu=(t={})=>{let e=y({onAuthError:Nt(!1)},t);return n=>o=>s=>("error"in s&&s.error.message==="Unauthorized"&&n.dispatch(e.onAuthError),o(s))};var vu=(t={})=>{let e,n=!0,o=y({getStyleSuggestions:Ct,debounce:500},t);return s=>r=>i=>{var m;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(!((m=l.conversation.current)==null?void 0:m.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 OS(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end&&t.suggestionTextStart===e.suggestionTextStart}var Su=(t={})=>{let e=y({getTextSuggestions:me,getAutocompleteSuggestions:Dn,debounce:200,check:Ee},t),n;return o=>s=>r=>{var f;let{input:i}=o.getState(),a=s(r),d=o.getState();if(d.auth.isLoggedIn!==!0)return a;let{recommendTextSuggestions:l,showTabCompletion:c}=d.settings,p=(f=d.conversation.current)==null?void 0:f.id,u=r.type===$o.toString();if(!p||!l&&!c)return a;let{input:m}=d;return OS(m,i)&&!u||(clearTimeout(n),!e.check(d))||(n=setTimeout(()=>{let g=at(d);g===""?o.dispatch(e.getTextSuggestions("default")):o.dispatch(e.getAutocompleteSuggestions(g))},u?0:e.debounce)),a}};var xu=Ct.fulfilled.toString();function DS(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 bu=t=>e=>n=>o=>{var l;if(o.type!==xu){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=DS(s,i);o.type===xu&&d.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:d}})};var HS=_S({assistants:qa,auth:Gi,conversation:Yi,contentTypes:Pl,passwordlessToken:Rc,entities:td,handlingTime:hu,info:Ca,input:pa,settings:Ja,profile:Nl,search:Pa,styleSuggestions:Vd,ui:Ad,textSuggestions:fd});function Cu(t){return FS({reducer:HS,middleware:e=>{var o;let n=e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI}},serializableCheck:!1}).concat(yu()).concat(Su({debounce:200})).concat(vu({debounce:500})).concat(bu(t.deepdeskAPI));return((o=t.middleware)!=null?o:[]).reduce((s,r)=>s.concat(r),n)},preloadedState:t.preloadedState})}function Tu(t,e,n){if(e==="")return null;let o=new RegExp(`\\b${ds(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 BS=t=>{var e,n;return(n=(e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())!=null?n:"unknown"},US=t=>e=>n=>o=>{var d,l,c;let s=e.getState(),r=gt("inlineSuggestions")(s),i=gt("autoSelectSuggestion")(s)||r;switch(o.type){case Nt.toString():{!o.payload&&t.emit("logout",void 0);break}case ge.fulfilled.toString():o.payload.length>0&&t.sendEvent("entities found",{conversationId:(d=s.conversation.current)==null?void 0:d.id,data:{entities:o.payload}});break;case ct.toString():t.logSendMessage(o.payload);break;case Co.toString():t.emit("call-to-action",{cue:o.payload});break;case xe.fulfilled.toString():o.isBroadcasted||t.broadcast(js,o,!1);break;default:break}let a=n(o);switch(o.type){case ct.toString():t.handleAfterSendMessage(o.payload);break;case _n.toString():t.onUpdateShowTabHint(o.payload);break;case ws.toString():t.logHandlingTime();break;case Ft.toString():t.broadcast(po,o);break;case dt.toString():t.broadcast(po,o);break;case To.toString():e.dispatch(dt({source:"assistant",assistantCode:o.payload.code}));break;case"analytics/logEvent/fulfilled":{let p=s.assistants.cues.find(u=>u.code===o.meta.arg.data.assistantCode);t.emit("event",b(y({},o.meta.arg),{cue:p}));break}case re.toString():{let{start:p,end:u}=s.input.selection;t.emit("select-suggestion",b(y({type:BS(o.payload.suggestion)},o.payload),{replace:o.payload.replace==="selection"?{start:p,end:u}:{start:0,end:u}})),r&&e.dispatch(Xe([]));break}case Wd.toString():{let{keyword:p,suggestion:u,eventMetrics:m}=o.payload,{text:h,selection:f}=s.input,g=Tu(h,p,(l=f==null?void 0:f.end)!=null?l:h.length);if(!g)break;t.emit("select-suggestion",{text:u,type:"style",replace:g,suggestion:{text:u,source:"style"},eventMetrics:m});break}case oo.toString():t.emit("select-image",o.payload),t.sendEvent("Image attached",{conversationId:(c=s.conversation.current)==null?void 0:c.id,data:{path:o.payload.suggestion.image,title:o.payload.suggestion.title}});break;case Xe.toString():{i&&o.payload.length>0&&e.dispatch(so(0));break}default:break}return a},wu=US;import{createSelector as KS}from"@reduxjs/toolkit";function gi(t){return t.toISOString().replace("T"," ").replace("Z","")}var zS=(t,e)=>e.version,Eu=KS([Ht,Se,pu,zS],(t,e,n,o)=>{if(!e)return k.warn("No conversationId for handling time metrics"),null;let{startTime:s,stopTime:r}=n;return!s||!r?(k.warn("No startTime and stopTime for handling time metrics"),null):{conversationId:e,clientVersion:o,agentId:t==null?void 0:t.agentId,agentName:t==null?void 0:t.agentName,agentEmail:t==null?void 0:t.agentEmail,timeStart:gi(s),timeStop:gi(r)}});function ku(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 Wn=class extends Error{};function WS(){let t,e;return{promise:new Promise((o,s)=>{t=o,e=s}),resolve:t,reject:e}}var Es=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 Wn("Queued async function is outdated"));let s=WS();return this.queues[e][1]=s,s.promise.then(()=>n().finally(o))}};function mi(t,e){var r;let n=t.closest(e);if(n)return n;let o=t.getRootNode().host;if(o instanceof HTMLElement)return mi(o,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?mi(s,e):null}function fi(t,e){return mi(t,e)}var VS={accepted:"onConversationAcceptedAssistants","new-message":"onConversationNewMessageAssistants",ended:"onConversationEndedAssistants"},Ru=(t,e)=>{var s,r,i;if(!((i=(r=(s=t.uiConfig)==null?void 0:s.widget)==null?void 0:r.types.find(a=>a.type==="cues"))==null?void 0:i.isActive))return k.warn("Triggered a conversation assistant, but cues are not configured in widget."),[];let o=t[VS[e]];return o&&o.length>0?o.map(a=>a.code):(k.warn(`No assistant set in profile for conversation event "${e}"`),[])};function Pu(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function jS(t){return typeof t=="object"&&t!==null&&"tagName"in t}function hi(t){return jS(t)&&(wt(t)||as(t))}var Lu,ke=new Map,$S=["bottom","height","left","right","top","width"],Iu=(t,e)=>!t&&!e?!1:t&&!e||!t&&e?!0:$S.some(n=>t[n]!==e[n]);function Au(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,...Au(e)]:[]}function Mu(t,e){return!t||!e?null:b(y({},t),{top:t.top+e.top,left:t.left+e.left})}var ks=!1,Nu=()=>{ks=!0;let t=[];if(ke.forEach((e,n)=>{if(!n.isConnected){e.rect=null,t.push(e),ke.delete(n);return}let o=n.getBoundingClientRect();Iu(o,e.rect)&&(e.rect=o,t.push(e))}),t.forEach(e=>{let n=e.parentRects?e.parentRects.reduce(Mu,e.rect):e.rect;Iu(n,e.totalRect)&&e.callbacks.forEach(o=>o(n)),e.totalRect=n}),ke.size===0){ks=!1;return}Lu=window.requestAnimationFrame(Nu)};function yi(t,e){let n=Au(t),o=[],s=n.map((r,i)=>yi(r,a=>{o[i]=a;let d=ke.get(t);if(!d)return;let l=o.reduce(Mu,d.rect);d.callbacks.forEach(c=>c(l))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),ke.has(t)){let i=ke.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else ke.set(t,{rect:void 0,callbacks:[e],parentRects:o});r&&!ks&&Nu()},unobserve(){s.forEach(i=>i.unobserve());let r=ke.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||ke.delete(t),ke.size||(cancelAnimationFrame(Lu),ks=!1)}}}}var Ou,Re=new Map,Du=()=>{Re.forEach((t,e)=>{if(!e.isConnected){Re.delete(e);return}let{clientHeight:n,scrollHeight:o}=e,s=o>n;t.visible!==s&&(t.visible=s,t.callbacks.forEach(r=>r(t.visible)))}),Re.size!==0&&(Ou=window.requestAnimationFrame(Du))};function _u(t,e){return{observe(){let n=Re.size===0;Re.has(t)?Re.get(t).callbacks.push(e):Re.set(t,{visible:void 0,callbacks:[e]}),n&&Du()},unobserve(){let n=Re.get(t);if(n){let o=n.callbacks.indexOf(e);o>=0&&n.callbacks.splice(o,1),n.callbacks.length||Re.delete(t),Re.size||cancelAnimationFrame(Ou)}}}}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 Si(t,e,n){return n.forEach(o=>{e.style[o]=t[o]})}function sn(t){return Number.parseFloat(t)}function Rs(t){return Math.round(t*1e6)}function Fu(t){return t/1e6}function xi(t,e,n){if(t.boxSizing==="content-box")return;let{clientWidth:o}=e,s=sn(t.width),r=sn(t.borderLeftWidth),i=sn(t.borderRightWidth),a=sn(t.paddingRight),d=Fu(Rs(s)-Rs(r)-Rs(i)),l=Fu(Rs(o));if(d-l>2){let c=d-l;n.style.paddingRight=`${a+c}px`}}function Ps(t,e={}){var c,p;let n=e.overlayContainer||document.createElement("div");n.style.display="none",n.style.position=(c=e.position)!=null?c:"fixed",n.style.pointerEvents="none",n.style.borderColor="transparent",ft(n);let o=window.getComputedStyle(t),s=!0,r=()=>{n.scrollTop=t.scrollTop};Si(o,n,vi),xi(o,t,n),e.mirrorOverflow&&(n.style.overflow="hidden",t.addEventListener("scroll",r));let i=_u(t,()=>{Si(o,n,vi),xi(o,t,n),r(),setTimeout(r,0)}),a,d=!0,l=yi(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(Si(o,n,vi),xi(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 m=e.closestScrollElement.getBoundingClientRect(),h=window.getComputedStyle(e.closestScrollElement),f=sn(h.borderTopWidth),g=sn(h.borderBottomWidth),S=m.top+f-u.top,T=u.top+u.height+-(m.top+m.height-g);n.style.clipPath=`inset(${S}px 0px ${T}px 0px)`}s&&(n.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(n):(p=t.parentElement)==null||p.appendChild(n),l.observe(),i.observe(),[n,()=>{t.removeEventListener("scroll",r),l.unobserve(),i.unobserve(),n.remove()}]}function GS(t){return t.offsetParent!==null}function Hu(t){if(!GS(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 bi(t,e,n=100){let o=Hu(t);e({isVisible:o});let s=setInterval(()=>{let r=Hu(t);r!==o&&(o=r,e({isVisible:o}))},n);return()=>{clearTimeout(s)}}var Bu=(t,e)=>({value(){try{let n=sessionStorage.getItem(`dd-${t}`);if(!n)return e;try{return JSON.parse(n)}catch(o){return e}}catch(n){return e}},update(n){try{sessionStorage.setItem(`dd-${t}`,JSON.stringify(n))}catch(o){k.warn("[Deepdesk] SessionStorage is blocked by browser")}}});import{jsx as F,jsxs as qS}from"react/jsx-runtime";var Uu=Bu("showTabHint",!0),rn=class rn{constructor({deepdeskUrl:e,version:n=rn.version||"unknown",locale:o="en-US",token:s,fetch:r,productName:i,createCustomChannel:a,websocketClient:d=Ts}){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 Es;this.isMounted=!1;this.shouldRender=!0;this.loadProfileConfigPromise=null;let l=e.replace(/\/api$/,"");this.deepdeskApi=new nt(l,{token:s,fetch:r}),this.version=n,this.instanceId=rn.count++;let c={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[wu({broadcast:(h,f,g)=>{this.broadcastEvents.send(h,f,g)},emit:(h,f)=>this.emit(h,f),handleAfterSendMessage:h=>this.handleAfterSendMessage(h),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:h=>this.logSendMessage(h),onUpdateShowTabHint:h=>Uu.update(h),sendEvent:(h,f)=>this.deepdeskApi.sendEvent(h,f)})]};this.store=Cu(c),this.broadcastEvents=new du({debug:!0,deepdeskUrl:l,eventMap:Ia(this.store),createCustomChannel:a}),this.disposeHandlers.push(()=>{this.broadcastEvents.cleanup()}),this.ws=new d({url:`${l}/api/v2/me/realtime`.replace("https","wss"),reconnectInterval:25e3,shouldReconnect:()=>v(this,null,function*(){var h;return(h=Q(this.state))!=null?h:!1})}),this.whenLoggedIn(()=>this.ws.connect()),this.store.dispatch(_n(Uu.value())),this.store.dispatch(wo({locale:o,adminUrl:l,productName:i}));let p=[],u=h=>{if(!h.conversationId)return;let f=()=>{this.conversationId()===h.conversationId&&this.store.dispatch(Ga(h))};this.hasConversation()?f():p.push(f)};this.ws.on("assistants::direct_response",u),this.ws.on("assistants::user_notification",u),this.ws.on("assistants::response_chunk",h=>{if(!h.conversationId)return;let f=()=>{this.conversationId()===h.conversationId&&this.store.dispatch($a(h))};this.hasConversation()?f():p.push(f)}),this.ws.on("assistants::suggest_as_reply",h=>{if(!h.conversationId)return;let f=()=>{this.conversationId()===h.conversationId&&this.store.dispatch(Ft([{text:h.payload.message,type:"text",source:"assistant",assistantCode:h.code,sourceLabel:h.name}]))};this.hasConversation()?f():p.push(f)});let m=this.whenConversationLoaded(()=>{var h;this.broadcastEvents.setExternalId((h=this.state.conversation.current)==null?void 0:h.externalId),p.forEach(f=>f()),p.length=0});this.disposeHandlers.push(()=>{this.ws.cleanup(),p.length=0,m()})}get state(){return this.store.getState()}get settings(){return this.state.settings}get selectedTextSuggestion(){var e;return(e=lt(this.state)[this.state.input.selectedSuggestionIndex])!=null?e:null}hasConversation(){return!!this.state.conversation.current}conversationId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.id}externalId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.externalId}shouldAbort(){return this.state.conversation.isSupported===!1?(k.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(k.warn("Profile has not been loaded (yet)"),!0):(k.warn("No conversation loaded (yet)"),!0)}whenLoggedIn(e){if(Q(this.state))e();else{let n=this.subscribe(Q,o=>{o&&e()});this.disposeHandlers.push(()=>{n()})}}login(){return this.store.dispatch(Nt(null)),this.store.dispatch(Ne()),new Promise(e=>{this.whenLoggedIn(()=>e())})}isLoggedIn(){return v(this,null,function*(){return(yield this.store.dispatch(Ne())).payload})}isConversationSupported(e,n){return v(this,null,function*(){return(yield this.store.dispatch(Hs({externalId:e,options:n}))).payload})}createConversation(e){return v(this,null,function*(){var o;return this.hasConversation()&&this.externalId()!==e.externalId&&this.resetConversation(),(yield this.store.dispatch(eo(b(y({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}getConversationByExternalId(e,n){return v(this,null,function*(){return this.hasConversation()&&this.externalId()!==e&&this.resetConversation(),(yield this.store.dispatch(to({externalId:e,options:n}))).payload})}upsertConversation(e){return v(this,null,function*(){var o;return this.hasConversation()&&this.externalId()!==e.externalId&&this.resetConversation(),(yield this.store.dispatch(Bs(b(y({},e),{metadata:(o=e.metadata)!=null?o:{}})))).payload})}postMessages(e){return v(this,null,function*(){yield this.store.dispatch(Us(e))})}updateConversation(e){return v(this,null,function*(){return(yield this.store.dispatch(no(e))).payload})}resetConversation(){this.store.dispatch(j()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}configure(e){this.store.dispatch(wo(e))}setVisitorInfo(e){this.store.dispatch(va(e))}setCustomData(e){this.store.dispatch(Sa(e))}setAgentInfo(e,n){return v(this,null,function*(){var s;yield this.store.dispatch(pn(y(y({},e),n))),(s=this.state.info.agentInfo)!=null&&s.agentNickname||this.broadcastEvents.send(uo,{showNicknameDialog:!0})})}setAgentSettings(e){return v(this,null,function*(){yield this.store.dispatch(zs(e))})}getAgentSettings(){return v(this,null,function*(){return(yield this.store.dispatch(Ws())).payload})}refresh(){return v(this,null,function*(){if(this.shouldAbort())return Promise.resolve();let e=[];return e.push(this.refreshTextSuggestions()),e.push(this.refreshWidgetSuggestions()),Promise.all(e).then(()=>{})})}syncInputMediator(){this.inputMediator&&this.store.dispatch(ro({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),suggestionTextStart:this.inputMediator.getSuggestionTextStart()}))}notifyExternalSuggestion(e){this.store.dispatch(re(e))}evaluateAssistant(e,n){return v(this,null,function*(){var d;let{input:o={},transcript:s,showCuesInWidget:r=!0,includeMetadata:i}=n||{},a=yield this.store.dispatch(xe({assistantCode:e,transcript:s,includeMetadata:i,input:o,skipState:!r}));if(a.error)throw new Error(`Assistant evaluation failed: ${(d=a.payload)!=null?d:a.error.message}`);return a.payload.output})}evaluateConversationAssistant(e,n){return v(this,null,function*(){yield this.loadProfileConfig();let o=this.state.profile.data;if(!o){k.warn("Can't evaluate assistant when profile is not loaded yet.");return}let s=Ru(o,e);yield Promise.all(s.map(r=>this.queues.push(r,()=>v(this,null,function*(){yield this.evaluateAssistant(r,y({includeMetadata:!0},n))})).catch(i=>{if(i instanceof Wn){k.warn(`Queued assistant "${r}" was outdated and dropped`);return}throw i})))})}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,p=a||d,u=c==="inline"||c==="below"?"below":"above",m=s.length>0;if(this.store.dispatch(ra(Ks(e))),!Ee(this.state)||e.key!=="Tab"&&!l)return;let h=()=>{n||!m||i&&(e.shiftKey||(this.store.dispatch(la()),e.preventDefault()))},f=()=>{n||!m||p&&r<=0||i&&(e.shiftKey||(this.store.dispatch(da()),e.preventDefault()))};switch(e.key){case"ArrowUp":u==="below"?f():h();break;case"ArrowDown":{u==="below"?h():f();break}case"Escape":{n||(this.store.dispatch(so(-1)),this.store.dispatch(Ye({collapse:!0})),this.store.dispatch(Id(!0)),e.preventDefault());break}case"Tab":{e.preventDefault();let g=_t(this.state);if(!g)return;this.store.dispatch(_n(!1)),this.store.dispatch(re({text:g.text,suggestion:g,eventMetrics:{inputType:"tab"},replace:"until-selection-end"}));break}case" ":{if(p||this.state.input.selectedSuggestionIndex===-1)return;let g=_t(this.state);if(!g)return;this.store.dispatch(re({text:g.text,suggestion:g,eventMetrics:{inputType:"space"},replace:"until-selection-end"}));break}case"Enter":{if(p||e.shiftKey||this.state.input.selectedSuggestionIndex===-1)return;let g=_t(this.state);if(!g)return;this.store.dispatch(re({text:g.text,suggestion:g,eventMetrics:{inputType:"enter"},replace:"until-selection-end"})),e.preventDefault();break}default:}n&&o&&this.store.dispatch(Ye({collapse:!1}))}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(Xe([]))}handlingTimeStart(){this.state.handlingTime.startTime||(k.info("Start handling time"),this.store.dispatch(mu()))}handlingTimeStop(){this.state.handlingTime.startTime&&(k.info("Stop handling time"),this.store.dispatch(ws()))}logSendMessage(e){let n=ku(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=Eu(this.state,{version:this.version});e&&(this.deepdeskApi.sendEvent("Handling Time",{conversationId:this.conversationId(),data:e}),this.store.dispatch(fu()))}notifySubmit(e={}){var n;this.shouldAbort()||(this.store.dispatch(ct((n=e.text)!=null?n:this.state.input.text)),this.store.dispatch(ua()))}emit(e,n){let o=this.eventListeners[e];o&&o.forEach(s=>{try{s(n)}catch(r){k.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),k.error(r)}})}on(e,n){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(n),()=>{this.off(e,n)}}off(e,n){if(!e&&!n){this.eventListeners={};return}let o;this.eventListeners[e]&&(o=this.eventListeners[e].indexOf(n),o>-1&&this.eventListeners[e].splice(o,1))}setConversationQuery(e){this.dynamicThunkObject.conversationQuery=e}setPlatformVariables(e){this.store.dispatch(xa(e))}whenConversationLoaded(e){let n=r=>{var i;return(i=r.conversation.current)==null?void 0:i.id},o=()=>this.loadProfileConfig().then(()=>e());return n(this.state)&&o(),this.subscribe(n,r=>{r&&o()})}overlayContainerFactory(e,n,o,s){let[r,i]=Ps(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]=Ps(r,{appendTo:document.body,onMoveStart:()=>{s.style.display="none"}});d.dataset.testid=n,d.style.zIndex="2",d.appendChild(o),this.unmountHandlers.push(()=>{l()})}else document.body.appendChild(o);return s}createContainer(e,n=document.body){let o=window.getComputedStyle(n),s=document.createElement("div");return ft(s),s.dataset.testid=e,s.style.color=o.color,s.style.fontSize=o.fontSize,s.style.fontFamily=o.fontFamily,s.style.fontVariant=o.fontVariant,s.setAttribute("translate","no"),n.appendChild(s),s}storeMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,n=JSON.stringify({text:this.state.input.text,metrics:this.state.input.metrics});window.sessionStorage.setItem(e,n),k.info(`Stored analytics for ${this.conversationId()}`)}catch(e){}}restoreMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,n=window.sessionStorage.getItem(e);if(!n)return;let o=JSON.parse(n);o.text.trim()===this.state.input.text.trim()?(k.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(ca(o.metrics))):k.warn(`Metrics mismatch, disregarding stored metrics for ${this.conversationId()}`),window.sessionStorage.removeItem(e)}catch(e){}}mount(e,n={}){if(this.isMounted)throw new Error("[Deepdesk] This instance was already mounted. Make sure to unmount before you remount.");if(!hi(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=M(u,["customStyles","closestScrollSelector","floatingMenuParent","appendOverlayTo","inputMediator"]),l={customStyles:o,closestScrollSelector:s,floatingMenuParent:r,appendOverlayTo:i};this.configure(d),this.settings.automaticHandlingTime&&this.setupHandlingTime(e),ft(e),this.inputMediator=a||(wt(e)?new tn(e):new en(e)),this.inputMediator.on("change",({plainText:m,rawHTML:h,suggestionTextStart:f})=>{this.store.dispatch(ro({text:m,html:h,suggestionTextStart:f}))}),this.inputMediator.on("keyup",m=>{this.store.dispatch(ia(Ks(m)))}),this.inputMediator.on("keydown",m=>{this.handleKeyDown(m)}),this.inputMediator.on("paste",({pastedText:m,selectionText:h})=>{this.store.dispatch(aa({text:m,selectionText:h}))}),this.inputMediator.on("cut",({selectionText:m})=>{this.store.dispatch(sa(m))});let c;this.inputMediator.on("selection",m=>{clearTimeout(c),m===null?c=setTimeout(()=>{m!==null&&this.store.dispatch(io(m))},500):this.store.dispatch(io(m))}),this.unmountHandlers.push(()=>{clearTimeout(c)}),this.inputMediator.on("disabled",()=>{var m;(m=this.inputMediator)==null||m.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{this.settings.detectSubmit&&this.notifySubmit()}),this.inputMediator.on("blur",()=>{this.store.dispatch(Xo(!1))}),this.inputMediator.on("focus",()=>{this.store.dispatch(Xo(!0))}),this.renderSuggestions(e,l),this.subscribe(gt("inlineSuggestions"),()=>{this.renderSuggestions(e,l)}),this.subscribe(gt("suggestionsPlacement"),()=>{this.renderSuggestions(e,l)});let p=this.renderOverlays(n);this.unmountHandlers.push(()=>{p.unmount()}),this.store.dispatch(ro({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),suggestionTextStart:this.inputMediator.getSuggestionTextStart()})),this.store.dispatch(io(this.inputMediator.getSelection())),this.store.dispatch(Xo(this.inputMediator.isFocused)),this.unmountHandlers.push(()=>{this.state.input.text!==""&&this.storeMetrics()}),this.whenConversationLoaded(()=>{this.restoreMetrics(),this.syncInputMediator(),this.refreshTextSuggestions(),this.promptForNickname()}),this.isMounted=!0}promptForNickname(e){if(this.nicknameDialogUnsubscribe||this.nicknameDialogFailed)return;let n=this.createContainer("nickname-dialog",document.body);document.body.appendChild(n);let o=ot(n),s=null,r=a=>{s=a,i()},i=()=>{o==null||o.render(F(Ke,{store:this.store,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(Gd,{id:"deepdesk-nickname-dialog",error:s,onSave:a=>v(this,null,function*(){try{yield this.store.dispatch(ha({agentNickname:a})).unwrap(),console.log("setAgentNickname",a),this.broadcastEvents.send(uo,{showNicknameDialog:!1}),this.nicknameDialogUnsubscribe&&this.nicknameDialogUnsubscribe()}catch(d){k.error("Error setting agent nickname",d),r("error"),this.nicknameDialogFailed=!0}})})})}))};i(),this.nicknameDialogUnsubscribe=()=>{o.unmount(),n.remove(),this.nicknameDialogUnsubscribe=null}}subscribe(e,n){let o=e(this.store.getState());return this.store.subscribe(()=>{let s=e(this.store.getState());s!==o&&(o=s,n(o))})}unmount(){var e,n,o,s,r;(e=this.inlineSuggestions)==null||e.unmount(),(n=this.aboveSuggestions)==null||n.unmount(),(o=this.belowSuggestions)==null||o.unmount(),(s=this.floatingMenu)==null||s.unmount(),this.unmountHandlers.forEach(i=>i()),this.unmountHandlers=[],(r=this.inputMediator)==null||r.dispose(),this.nicknameDialogUnsubscribe&&this.nicknameDialogUnsubscribe(),this.isMounted=!1}dispose(){this.unmount(),this.unmountWidget(),this.disposeHandlers.forEach(e=>e()),this.disposeHandlers=[],this.off()}renderSuggestions(e,n){var o,s,r,i;(o=this.floatingMenu)==null||o.unmount(),(s=this.inlineSuggestions)==null||s.unmount(),(r=this.aboveSuggestions)==null||r.unmount(),(i=this.belowSuggestions)==null||i.unmount(),this.settings.floatingMenu&&(this.floatingMenu=this.renderFloatingMenu(e,n)),this.settings.inlineSuggestions||this.settings.suggestionsPlacement==="inline"?this.inlineSuggestions=this.renderInlineSuggestions(e,n):this.settings.suggestionsPlacement==="below"?this.belowSuggestions=this.renderAboveOrBelowSuggestions(e,n,"below"):this.aboveSuggestions=this.renderAboveOrBelowSuggestions(e,n,"above")}renderInlineSuggestions(e,n){let{customStyles:o}=n,s=this.createInlineContainer(e,"deepdesk-caret"),r=ot(s);r.render(F(Ke,{store:this.store,customStyles:o,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(jd,{})})}));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&&fi(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,p]=this.overlayContainerFactory("deepdesk-suggestions-overlay",a||e,{appendTo:i,placement:o},s==null?void 0:s.suggestionsRootNode),u=ot(d);u.render(F(Ke,{store:this.store,customStyles:s,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(Tc,{inputElement:e})})}));let m=ot(c);return m.render(F(Ke,{store:this.store,customStyles:s,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(oc,{onLogIn:()=>this.loginViaPopup().catch(h=>k.warn(h.message))})})})),{unmount(){u.unmount(),m.unmount(),l(),p()}}}renderFloatingMenu(e,n){let{customStyles:o,closestScrollSelector:s,appendOverlayTo:r,floatingMenuParent:i}=n,a=s&&fi(e,s)||void 0,[d,l]=this.overlayContainerFactory("floating-menu",a||e,{appendTo:i!=null?i:r},o==null?void 0:o.floatingMenuParent),c=ot(d);return c.render(F(Ke,{store:this.store,customStyles:o,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(Rd,{onLogIn:()=>this.loginViaPopup().catch(p=>k.warn(p.message))})})})),{unmount(){c.unmount(),l()}}}renderOverlays(e){let{customStyles:n}=e,o=this.createContainer("deepdesk-overlays"),s=ot(o);return s.render(F(Ke,{store:this.store,customStyles:n,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(bd,{})})})),{unmount(){s.unmount(),o.remove()}}}renderWidget(e,n={}){if(this.widgetElement&&k.warn("A widget was already rendered for this instance. Make sure to unmountWidget before rerendering"),!this.shouldRender)return;let{customStyles:o,showImages:s,isEmbedded:r}=n;this.widgetElement=e,this.configure({showImages:s,isEmbedded:r}),this.widgetRoot=ot(e),this.widgetRoot.render(F(Ke,{store:this.store,customStyles:o,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(ou,{assistantOptions:n.assistantOptions,knowledgeAssistOptions:n.knowledgeAssist,onLogIn:()=>this.loginViaPopup().catch(i=>k.warn(i.message))})})}))}unmountWidget(){var e,n;(n=(e=this.widgetRoot)==null?void 0:e.unmount)==null||n.call(e),this.widgetRoot=null,this.widgetElement=null}renderKnowledgeAssistantWidget(e,n,o={}){let{customStyles:s,initialQuestion:r}=o,i=ot(n);return i.render(F(Ke,{store:this.store,customStyles:s,children:F(De,{broadcastEvents:this.broadcastEvents,children:F(ri,{children:qS(No,{assistantCode:e,initialQuestion:r,evaluateKnowledgeAssistFn:En,children:[F(ln,{children:F(Do,{title:o.title,emptyState:o.emptyState})}),F(si,{children:F(Oo,{})})]})})})})),{unmount(){i.unmount()}}}setupHandlingTime(e){let n=bi(e,({isVisible:o})=>{o?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),n()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){Pu(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfig(){return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(this.loadProfileConfigPromise=Promise.resolve().then(()=>v(this,null,function*(){yield this.store.dispatch(In());let e=St(this.state);e&&this.store.dispatch(wo({showSearch:e.search,showImageSearch:e.imageSearch,showEntitiesCommand:e.entitiesCommand,showSummaryCommand:!!e.summarizerAssistantNew,showKnowledgeSearch:!!e.knowledgeAssistantNew||!!e.knowledgeAssistant,recommendTextSuggestions:e.recommendTextSuggestions}))})),this.loadProfileConfigPromise)}loginViaPopup(e){return v(this,null,function*(){return new Promise((n,o)=>{this.store.dispatch(Yn());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",p),clearInterval(u)};r.onmessage=m=>v(this,null,function*(){var h,f;if((h=m.data)!=null&&h.jwt)try{yield this.deepdeskApi.exchangeTokenForAccessCookie((f=m.data)==null?void 0:f.jwt),yield this.isLoggedIn(),this.broadcastEvents.send(mn),d=!0,s.port1.close(),n()}catch(g){console.error(g),o(g)}finally{d=!0,l()}});let c=window.open(a.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");c===null&&o(new Error("Popup blocked by browser"));let p=m=>v(this,null,function*(){var h;if(m.origin===a.origin)switch((h=m.data)==null?void 0:h.type){case"deepdesk-popup-request-origin":{try{let f=JSON.stringify({type:"deepdesk-popup-parent-origin"});c==null||c.postMessage(f,a.origin)}catch(f){k.error("Error posting message to popup",f),o(f)}break}case"deepdesk-popup-loaded":{try{let f=JSON.stringify({type:"deepdesk-popup-create-channel"});c==null||c.postMessage(f,a.origin,[s.port2])}catch(f){k.error("Error posting message to popup",f),o(f)}break}case"deepdesk-popup-error":{if(l(),m.data.message==="Platform account url mismatch"){let f=`Please contact your administrator: The platform account url (${m.data.targetOrigin}) is misconfigured as it differs from the origin of the page that opened the popup (${m.data.openerOrigin}).`;k.warn(f),this.store.dispatch(Fs(f)),o(new Error(f))}if(m.data.message==="Timeout"){let f="Please contact your administrator: Popup timed out. Check if the account's platform url is configured correctly.";k.warn(f),this.store.dispatch(Fs(f)),o(new Error(f))}o(new Error(m.data.message));break}}});window.addEventListener("message",p);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 v(this,null,function*(){this.isMounted&&(yield this.store.dispatch($o()))})}refreshWidgetSuggestions(){return v(this,null,function*(){if(!this.widgetRoot)return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let n=Ln(this.state);try{n.forEach(({type:o})=>{switch(o){case"entities":this.store.dispatch(ge());break;case"pinned-messages":case"sticky-messages":break;default:Qn.includes(o)||this.store.dispatch(me(o))}})}catch(o){this.handleError(o)}})}};rn.version="19.2.1-beta.2",rn.count=0;var Is=rn;function XS(t){return v(this,null,function*(){var s,r,i;let n=yield((s=t.fetch)!=null?s:window.fetch)(t.url),o=yield n.blob();return new File([o],t.name,{type:(i=(r=t.mimeType)!=null?r:n.headers.get("Content-Type"))!=null?i:"image/jpeg"})})}function JS(t,e){return v(this,null,function*(){let n=yield XS(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 QS(t,e,n){return v(this,null,function*(){yield new nt(t).authenticateWithKey(e,n)})}function ZS(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}function YS(o,s){return v(this,arguments,function*(t,e,n={}){var p,u;let{value:r}=t,{start:i,end:a}=(p=n.replace)!=null?p:{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 ex(o,s){return v(this,arguments,function*(t,e,n={}){let r=n.replace?kt(t,n.replace.start,n.replace.end):zn(t),i,a=()=>{if(n.setRange)return n.setRange(r.cloneRange());r.deleteContents(),i=document.createElement("span"),r.insertNode(i),n.insertBRs!==!1?e.split(`
|
|
11
|
+
`).reverse().forEach((d,l)=>{l>0&&r.insertNode(document.createElement("br")),r.insertNode(document.createTextNode(d))}):r.insertNode(document.createTextNode(e))};return Promise.resolve(a()).then(()=>{try{if(n.selectionAfter!==!1){t.focus();let d=n.selectionAfter?kt(t,n.selectionAfter.start,n.selectionAfter.end):(r.collapse(!1),r),l=window.getSelection();l==null||l.removeAllRanges(),l==null||l.addRange(d)}if(!i)return;i.scrollIntoView&&i.scrollIntoView({block:"nearest",inline:"nearest"})}finally{i&&i.remove()}})})}function tx(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 nx(t){let e=document.createDocumentFragment();return t.split(`
|
|
12
|
+
`).forEach((n,o)=>{o>0&&e.appendChild(document.createElement("br"));let s={index:0},r=0;for(;s=n.slice(r).match(/(\[([^\]]+)])\(([^)]+)\)/);){let i=document.createElement("a");i.href=s[3],i.setAttribute("target","_blank"),i.setAttribute("rel","noopener noreferrer"),i.appendChild(document.createTextNode(s[2])),e.appendChild(document.createTextNode(n.slice(r,r+s.index))),e.appendChild(i),r=r+s.index+s[0].length}e.appendChild(document.createTextNode(n.slice(r)))}),e}function Ku(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):Ku(n,e)}function ox(s,r){return v(this,arguments,function*(t,e,{isBlock:n,isHTML:o}={}){let i;t.dispatchEvent(new InputEvent("beforeinput",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0}));let a=()=>{var 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 p=o?tx(e):nx(e);n?Ku(c.startContainer,p):(c.insertNode(p),c.collapse(!1))};return Promise.resolve(a()).then(()=>{if(t.dispatchEvent(new InputEvent("input",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0})),t.focus(),!!i)try{i.scrollIntoView&&i.scrollIntoView({block:"nearest",inline:"nearest"})}finally{i&&i.remove()}})})}export{D as Card,en as ContentEditableInput,nt as DeepdeskAPI,Is as DeepdeskSDK,on as HTTPClient,tt as InputMediator,Mt as InputType,Ms as KeyboardHint,ap as Label,Zn as Locale,Ae as Section,ln as SectionList,Me as Sources,I as Suggestion,Z as SuggestionList,tn as TextAreaInput,At as ToggleButton,JS as attachFile,QS as authenticateWithKey,zn as createFullRange,Ps as createOverlayContainer,kt as createRangeFromOffsets,Mn as escapeHTML,ZS as formatTextMarkup,bs as getRangeOffsets,Cs as getRangeText,ox as insertCKEditor,Fo as isHTML,hi as isSupportedInputElement,Gs as logEvent,ex as updateContentEditable,YS as updateTextArea,mt as useClickOutsideRoot,x as useStyles,bi as waitForElementVisibilityChange};
|