@deepdesk/deepdesk-sdk 11.3.1-beta.1 → 11.4.0
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/dialogs.css +1 -1
- package/dist/index.cjs.js +8 -8
- package/dist/index.esm.js +8 -8
- package/dist/index.iife.js +13 -13
- package/input.css +1 -1
- package/package.json +2 -1
- package/styles/index.js +1 -1
- package/styles.css +1 -1
- package/widget.css +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
var Su=Object.defineProperty;var q=(t,e)=>{for(var o in e)Su(t,o,{get:e[o],enumerable:!0})};import Wr from"classnames";import ku,{createContext as Ru,useContext as Qn,useEffect as Pu,useState as Iu}from"react";import xu,{useContext as bu}from"react";import Cu from"classnames";var _t=xu.createContext({});function h(t,e){let{debug:o,...n}=bu(_t),s=n[t];return s?Object.entries(e).reduce((r,[i,a])=>{let c=s[i];return{...r,[i]:Cu(a,c,o?`${t}__${i}`:!1)}},{}):e}var $r={root:"So"};import{jsx as yo,jsxs as Tu}from"react/jsx-runtime";var vo=()=>Tu("svg",{className:$r.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[yo("defs",{children:yo("style",{children:".cls-1 { fill: #b3b3b3; }"})}),yo("title",{children:"Failed loading image"}),yo("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 Zn={root:"Eo",imageWrapper:"L",image:"Go",content:"h",title:"No",contentIsCropped:"Ao",lineClamp:"Fo"};import{jsx as st}from"react/jsx-runtime";var So=Ru(Zn),Lu=({title:t,src:e})=>{let o=Qn(So),[n,s]=Iu(!1);return Pu(()=>{s(!1)},[e]),st("div",{className:o.imageWrapper,children:e&&!n?st("img",{className:o.image,alt:t,src:e,onError:()=>s(!0)}):st(vo,{})})},Au=({className:t,lineClamp:e=!1,cropText:o=!1,children:n})=>{let s=Qn(So);return st("div",{className:Wr(s.content,t,{[s.contentIsCropped]:o,[s.lineClamp]:e}),children:n})},Mu=({as:t="h1",cropText:e=!1,className:o,children:n,...s})=>{let r=Qn(So);return ku.createElement(t,{className:Wr(r.title,o,{[r.contentIsCropped]:e}),...s},n)},xo=({children:t})=>{let e=h("Card",Zn);return st("div",{className:e.root,children:st(So.Provider,{value:e,children:t})})};xo.Image=Lu;xo.Content=Au;xo.Title=Mu;var _=xo;import Ou from"classnames";var Gr={root:"M"};import{jsx as Fu}from"react/jsx-runtime";var Du={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},_u=({className:t,keyCode:e,...o})=>{let n=h("KeyboardHint",Gr);return Fu("span",{"data-key":Du[e],className:Ou(t,n.root),...o})},Jn=_u;import Bu from"classnames";var jr={root:"Ho"};import{jsx as Uu}from"react/jsx-runtime";var Ku=({className:t,children:e,...o})=>{let n=h("Label",jr);return Uu("span",{...o,className:Bu(t,n.root),children:e})},Yn=Ku;var qr={root:"Lo",subTitleContainer:"Mo",subtitle:"Ro",suggestions:"To"};import{jsx as es,jsxs as $u}from"react/jsx-runtime";var Vu=({title:t,children:e,type:o,...n})=>{let s=h("Section",qr);return $u("section",{...n,className:s.root,"data-section-type":o,children:[t&&es("div",{className:s.subTitleContainer,children:es("span",{className:s.subtitle,children:t})}),es("div",{className:s.suggestions,children:e})]})},Se=Vu;import Gu from"classnames";import ju from"react";var Xr={root:"Uo"};import{jsx as Xu}from"react/jsx-runtime";var qu=ju.forwardRef(({className:t,children:e},o)=>{let n=h("SectionList",Xr);return Xu("div",{ref:o,className:Gu(n.root,t),children:e})}),ts=qu;import Ft from"classnames";import ns,{createContext as Qu,useCallback as Ju,useContext as rt}from"react";var os={fadein:"R",root:"e",isClickable:"T",isSelected:"Bo",actions:"U",actionsIsFixed:"Do",actionButton:"t",dropdownList:"B",dropdownButton:"D",dropdownItem:"I",dropdownItemButton:"O",actionButtonIsPrimary:"Io",actionButtonIsDisabled:"Oo",labels:"Xo",label:"Jo",iconButtons:"Ko",iconButton:"n"};import{jsx as ue,jsxs as Jr}from"react/jsx-runtime";var Ue=Qu(os),Yu=({fixed:t,children:e,...o})=>{let n=rt(Ue);return ue("div",{...o,className:Ft(n.actions,{[n.actionsIsFixed]:t}),children:e})};function Zr(t){return typeof t=="object"&&t!==null&&"type"in t&&t.type===Qr}var Qr=({className:t,icon:e,title:o,...n})=>{let s=rt(Ue);return ue("button",{type:"button",className:Ft(s.iconButton,t),title:o,"aria-label":o,...n,children:e})},ep=({className:t,primary:e,disabled:o,label:n,children:s})=>{let r=rt(Ue);return Jr("div",{className:Ft(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[n,ue("ul",{className:r.dropdownList,children:s})]})},tp=({index:t,label:e,onClick:o})=>{let n=rt(Ue);return ue("li",{className:n.dropdownItem,children:ue("button",{className:n.dropdownItemButton,type:"button","data-index":t,onClick:o,children:e})})},op=({className:t,primary:e,disabled:o,onClick:n,label:s})=>{let r=rt(Ue);return ue("button",{type:"button",className:Ft(t,r.actionButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onClick:n??(i=>i.stopPropagation()),disabled:o,"aria-hidden":o,children:s})},np=({labels:t})=>{let e=rt(Ue);return ue("div",{className:e.labels,children:t.map(o=>ue("span",{className:e.label,children:o},o))})},ze=ns.forwardRef(({className:t,selected:e,onClick:o,children:n,as:s="div",...r},i)=>{let a=h("Suggestion",os),c=Ju(u=>{u.preventDefault(),o&&o(u)},[o]),l=ns.Children.toArray(n).filter(Zr),d=ns.Children.toArray(n).filter(u=>!Zr(u));return ue(s,{...r,ref:i,className:Ft(t,a.root,{[a.isSelected]:e,[a.isClickable]:!!o}),onClick:c,children:Jr(Ue.Provider,{value:a,children:[d,ue("div",{className:a.iconButtons,children:l})]})})});ze.Labels=np;ze.Actions=Yu;ze.ActionButton=op;ze.DropdownButton=ep;ze.DropdownItem=tp;ze.IconButton=Qr;var A=ze;import rp from"classnames";var Yr={root:"Po",isWithDivider:"Qo"};import{jsx as ap}from"react/jsx-runtime";var ip=({withDivider:t,children:e})=>{let o=h("SuggestionList",Yr);return ap("div",{"data-testid":"suggestions-overlay-list",className:rp(o.root,{[o.isWithDivider]:t}),children:e})},J=ip;import cp from"classnames";var ei={root:"u",isCollapsed:"X"};import{jsx as ss}from"react/jsx-runtime";var dp=({className:t,isCollapsed:e,title:o,onClick:n})=>{let s=h("ToggleButton",ei);return ss("button",{type:"button",className:cp(s.root,t,{[s.isCollapsed]:e}),onClick:n,title:o,children:ss("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:ss("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},it=dp;var ti=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,bo=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var oi=/x-deepdesk-(([a-z0-9\-_])+-version)/,Co=["cues","custom-data"],Ie=(f=>(f.SEARCH="search",f.TEMPLATE="template",f.ELASTIC_SEARCH="search-autocomplete",f.GPT="gpt",f.TRIE="trie",f.TRIE_WITH_TYPOS="trie-with-typos",f.SEMANTIC="semantic",f.TEXT_RECOMMENDATION="text_recommendation",f.URL_RECOMMENDATION="url_recommendation",f.LINK_RECOMMENDATION="link_recommendation",f.PERSONAL_COLLECTION="personal-collection",f.PERSONAL_COLLECTION_SEARCH="personal-collection-search",f.SEARCH_OVERLAY="search-overlay",f.SEARCH_PREVIEW="search-preview",f.SEARCH_URL="search-url",f))(Ie||{}),at=(r=>(r.ENTER="enter",r.TAB="tab",r.ARROW="arrow",r.HOTKEY="hotkey",r.MOUSE="mouse",r))(at||{});import{render as Ot,unmountComponentAtNode as jn}from"react-dom";import{Fragment as If}from"react";import{createSlice as up}from"@reduxjs/toolkit";import{useSelector as pp}from"react-redux";var wo=(o=>(o.NL_NL="nl-NL",o.EN_US="en-US",o))(wo||{});var mp={locale:"en-US",deanonymize:!1,fallbackImage:!1,isEmbedded:!1,showAutoflows:!1,showCustomMessages:!1,showImages:!1,showSearch:!1,showImageSearch:!1,showStyleSuggestions:!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,inlineSuggestions:!1,floatingMenu:!1,adminUrl:void 0,productName:"Deepdesk"},ni=up({name:"settings",initialState:mp,reducers:{set(t,e){Object.entries(e.payload).forEach(o=>{let[n,s]=o;typeof s>"u"||(t[n]=s)})}}}),{set:To}=ni.actions,rs=t=>e=>e.settings[t],b=t=>pp(rs(t)),si=ni.reducer;import{useSelector as la}from"react-redux";import{createAsyncThunk as is,createSlice as gp}from"@reduxjs/toolkit";var fp={isLoggedIn:!0,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1},X=t=>t.auth.isLoggedIn,ri=t=>t.auth.loginFetchState,ii=t=>t.auth.verifyFetchState,ai=t=>t.auth.showLoginOverlay,xe=is("auth/validate",async(t,e)=>e.extra.deepdeskAPI.isLoggedIn()),li=is("auth/requestLogin",async({email:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.requestLoginByEmail(t)}),Ht=is("auth/verifyLoginToken",async({token:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.verifyLoginToken(t)}),ci=gp({name:"auth",initialState:fp,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload}},extraReducers:t=>{t.addCase(xe.pending,e=>{e.loginFetchState="loading"}),t.addCase(xe.fulfilled,(e,{payload:o})=>{e.isLoggedIn=o,e.loginFetchState="done"}),t.addCase(xe.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(Ht.pending,e=>{e.verifyFetchState="loading"}),t.addCase(Ht.rejected,e=>{e.verifyFetchState="error"}),t.addCase(Ht.fulfilled,(e,o)=>{o.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:lt,setShowLoginOverlay:di}=ci.actions,ui=ci.reducer;import{createAction as pt,createSlice as Tp}from"@reduxjs/toolkit";import{diffChars as Ep}from"diff";import{useSelector as kp}from"react-redux";function pi(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function Le(t,e,o=10){let n=typeof t,s=typeof e;if(o===0)throw new Error("Max depth deepEqual, possible circular references?");return n!==s?!1:t==null||n==="string"||n==="number"||n==="boolean"?t===e:Array.isArray(t)&&Array.isArray(e)?t.length!==e.length?!1:t.every((r,i)=>Le(r,e[i],o-1)):pi(t)&&pi(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>Le(t[i],e[i],o-1)):!1}function hp(t){return Math.max(...t.map(e=>e.length))}function yp(t,e){let o=t.reduce((n,s)=>{if(s){let r=n[s]?n[s]+1:1;return{...n,[s]:r}}return n},{});return Object.keys(o).reduce((n,s)=>(o[s]<e&&n.push(s),n),[])}function mi(t,e){let n=[...t.map(({text:s})=>s.split(/\b(\w+)\b/))];for(let s=0;s<hp(n);s++){let r=yp(n.map(a=>a[s]),e),i=n.filter(a=>!r.includes(a[s]));if(i.length>=e)n=i;else return{text:n[0].slice(0,s).join("").replace(/ (\?| |!|\.|,|\n)/g,"$1").trimEnd(),source:"mixed"}}}var vp=2;function as(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let o=mi(t,vp);return o&&o.text!==e?o:t[0]}import{createAction as xp,createAsyncThunk as ct,createSlice as bp}from"@reduxjs/toolkit";var Sp={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},C=Sp;var gi={current:null,isSupported:null},M=xp("resetConversation"),dt=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.sessionId)||null},Eo=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},ut=t=>t.conversation.isSupported,ls=ct("conversation/isSupported",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.isConversationSupported(t.sessionId,t.options)}),ko=ct("conversation/create",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.createConversation(t)}),Ro=ct("conversation/bySessionId",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.getConversationBySessionId(t.sessionId,t.options)}),Po=ct("conversation/update",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Eo(e.getState());if(!n)throw new Error("No current conversation to update");return o.updateConversation(n,t)}),cs=ct("conversation/upsert",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.getConversationBySessionId(t.sessionId).catch(()=>null).then(n=>{if(!n)return o.createConversation(t);let{agentId:s,agentName:r,agentEmail:i,agentNickname:a,tags:c}=t;return o.updateConversation(n.id,{agentId:s,agentEmail:i,agentName:r,agentNickname:a,tags:c})})}),Io=ct("conversation/postMessages",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Eo(e.getState());if(!n)throw new Error("No current conversation to update messages");return o.postMessages(n,t.map(s=>({...s})))}),Cp=[ko.rejected,Ro.rejected,Po.rejected,Io.rejected].map(t=>t==null?void 0:t.toString()),wp=bp({name:"conversation",initialState:gi,reducers:{},extraReducers:t=>{t.addCase(ls.fulfilled,(e,o)=>{e.isSupported=o.payload}).addCase(ko.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Ro.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(cs.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Po.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Io.fulfilled,(e,o)=>{e.current&&(e.current.messages=o.payload)}).addCase(M,()=>gi).addMatcher(e=>Cp.includes(e.type),(e,o)=>{var n;throw C.info("Conversation action rejected",o.type,((n=o.error)==null?void 0:n.message)||"No message"),new Error(o.error.message)})}}),fi=wp.reducer;var Ae={text:"",html:null,selection:{start:0,end:0},stagedSuggestion:null,userCommitted:{text:"",selection:{start:0,end:0}},tabCompletionSuggestion:void 0,previousKeyDownEvent:null,textSuggestions:[],selectedSuggestionIndex:-1,metrics:{numCharsTyped:0,numCharsPasted:0,numCharsCut:0,numCharsDeleted:0,numPaste:0,agentStartedTypingTimestamp:null,externalTimeTotalSeconds:null,pastes:[],deletions:[],offeredTextSuggestions:[],textSuggestions:[],cuts:[]}};function hi(t){let{key:e,shiftKey:o,ctrlKey:n,metaKey:s,altKey:r}=t;return{key:e,shiftKey:o,ctrlKey:n,metaKey:s,altKey:r}}var Ao=pt("input/replaceText"),Mo=pt("input/keyDown"),Ve=pt("input/sendMessage"),No=pt("input/uiInputChange"),Oo=pt("input/applyImageSuggestion"),G=pt("input/sendEvent");function Lo(t){if(!t.stagedSuggestion)return;let{text:e,suggestion:{source:o,abVariant:n,abTestName:s,trainingJobs:r,sourceText:i,searchTerm:a,text:c},eventMetrics:{inputType:l},replace:d}=t.stagedSuggestion,u=o==="search"||o==="personal-collection-search",p=e.slice(t.userCommitted.text.substring(0,t.userCommitted.selection.start).length);(u||d==="selection")&&(p=e),t.stagedSuggestion.suggestion.source==="search-overlay"&&(p=c),t.userCommitted.text=t.text,t.userCommitted.selection=t.selection,t.metrics.textSuggestions.push({text:p,source:o,abVariant:n,abTestName:s,inputType:l,sourceText:i,trainingJobs:r||[],searchTerm:u?t.userCommitted.text:a}),t.stagedSuggestion=null,t.textSuggestions=[],t.selectedSuggestionIndex=-1}var yi=Tp({name:"input",initialState:Ae,reducers:{initialInput(t,e){let{text:o,selection:n,html:s}=e.payload;t.text=o,t.selection.start=(n==null?void 0:n.start)??o.length,t.selection.end=(n==null?void 0:n.end)??o.length,t.userCommitted.text=o,t.userCommitted.selection.start=(n==null?void 0:n.start)??o.length,t.userCommitted.selection.end=(n==null?void 0:n.end)??o.length,t.html=s||null},reset(t){Object.assign(t,{...Ae,selection:t.selection})},resetToCommitted(t){t.text=t.userCommitted.text,t.selection=t.userCommitted.selection,t.stagedSuggestion=null,t.tabCompletionSuggestion=as(t.textSuggestions,t.userCommitted.text)},changeSelection(t,e){e.payload&&(Le(t.selection,e.payload)||(t.selection=e.payload,t.userCommitted.selection=t.selection,t.stagedSuggestion&&Lo(t)))},platformInput(t,e){let{text:o,html:n,selection:s}=e.payload;s&&(t.selection.start=s.start,t.selection.end=s.end),t.text=o,t.html=n||null},userInput(t,e){var r,i,a,c;if(t.previousKeyDownEvent){let{key:l,shiftKey:d,ctrlKey:u,metaKey:p,altKey:m}=t.previousKeyDownEvent;switch(l){case"Enter":d&&(t.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:g}=t,{text:f}=e.payload,y=Ep(g,f);g.length-f.length>1&&t.metrics.deletions.push(...y.filter(k=>k.removed).map(k=>k.value)),t.metrics.numCharsDeleted+=g.length-f.length;break}case"C":case"V":case"X":if(!u&&!p){t.metrics.numCharsTyped+=1;let g=((r=t.selection)==null?void 0:r.start)!==void 0&&((i=t.selection)==null?void 0:i.end)!==void 0?t.text.substring(t.selection.start,t.selection.end):null;g&&g.length>0&&(t.metrics.numCharsDeleted+=g.length,t.metrics.deletions.push(g))}break;case"Shift":break;default:if(!u&&!p&&!m){t.metrics.numCharsTyped+=1;let g=((a=t.selection)==null?void 0:a.start)!==void 0&&((c=t.selection)==null?void 0:c.end)!==void 0?t.text.substring(t.selection.start,t.selection.end):null;g&&g.length>0&&(t.metrics.numCharsDeleted+=g.length,t.metrics.deletions.push(g))}}}!t.metrics.agentStartedTypingTimestamp&&e.payload.text!==t.text&&(t.metrics.agentStartedTypingTimestamp=Date.now()),e.payload.text===""&&(t.metrics=Ae.metrics,t.textSuggestions=[],t.stagedSuggestion=null),t.text!==e.payload.text&&Lo(t);let{text:o,html:n,selection:s}=e.payload;s&&(t.selection.start=s.start,t.selection.end=s.end,t.userCommitted.selection.start=s.start,t.userCommitted.selection.end=s.end),t.text=o,t.html=n||null,t.userCommitted.text=o,t.previousKeyDownEvent=null},stageSuggestion(t,e){let{text:o}=e.payload;switch(t.stagedSuggestion=e.payload,t.tabCompletionSuggestion=void 0,e.payload.replace){case"selection":t.text=`${t.text.slice(0,t.selection.start)}${o}${t.text.slice(t.selection.end)}`,t.selection.end=t.selection.start+o.length,t.selection.start+=o.length;break;case"until-selection-end":t.text=`${o}${t.text.slice(t.selection.end)}`,t.selection.start=o.length,t.selection.end=o.length;break;default:throw new Error(`Unknown replace ${e.payload.replace}`)}e.payload.eventMetrics.inputType==="tab"&&Lo(t)},commitSuggestion(t){Lo(t)},offeredTextSuggestion(t,e){let{text:o,suggestion:{source:n}}=e.payload;t.metrics.offeredTextSuggestions.find(r=>r.text===o)||t.metrics.offeredTextSuggestions.push({text:o,source:n})},registerCut(t,e){let{metrics:o}=t,n=e.payload;t.metrics={...t.metrics,numCharsCut:o.numCharsCut+n.length,cuts:[...o.cuts,n]}},registerPaste(t,e){let{metrics:o}=t,{text:n,selectionText:s}=e.payload,r=o.numCharsDeleted+(s&&s.length?s.length:0),i=s&&s.length?[...o.deletions,s]:o.deletions;t.metrics={...t.metrics,numCharsDeleted:r,deletions:i,numCharsPasted:o.numCharsPasted+n.length,numPaste:o.numPaste+1,pastes:[...o.pastes,n]}},registerKeyDown(t,e){t.previousKeyDownEvent=e.payload},nextTextSuggestionIndex(t){let e=t.textSuggestions.length;t.selectedSuggestionIndex=t.selectedSuggestionIndex<e-1?t.selectedSuggestionIndex+1:t.selectedSuggestionIndex},previousTextSuggestionIndex(t){t.selectedSuggestionIndex=t.selectedSuggestionIndex>=0?t.selectedSuggestionIndex-1:t.selectedSuggestionIndex},setTextSuggestions(t,e){if(t.selectedSuggestionIndex=-1,t.textSuggestions=e.payload,e.payload.length===0){t.tabCompletionSuggestion=void 0;return}let o=t.userCommitted.text.substring(0,t.userCommitted.selection.end),n=as(e.payload,o);t.tabCompletionSuggestion=n!=null&&n.text.includes(o)?n:void 0},setSelectedTextSuggestionIndex(t,e){t.selectedSuggestionIndex=e.payload},setMetrics(t,{payload:e}){t.metrics=e}},extraReducers:t=>{t.addCase(M,e=>{e.tabCompletionSuggestion=Ae.tabCompletionSuggestion,e.previousKeyDownEvent=Ae.previousKeyDownEvent,e.textSuggestions=Ae.textSuggestions,e.selectedSuggestionIndex=Ae.selectedSuggestionIndex,e.metrics=Ae.metrics})}}),mt=t=>t.input.userCommitted.text.substring(0,t.input.userCommitted.selection.end),Rp=t=>t.input.selection,vi=()=>kp(Rp),{userInput:Si,changeSelection:ds,initialInput:xi,nextTextSuggestionIndex:bi,offeredTextSuggestion:Ci,previousTextSuggestionIndex:wi,registerCut:Ti,registerKeyDown:Ei,registerPaste:ki,reset:Ri,resetToCommitted:Bt,platformInput:Pi,setSelectedTextSuggestionIndex:Me,setTextSuggestions:pe,stageSuggestion:me,commitSuggestion:be,setMetrics:Ii}=yi.actions,Li=yi.reducer;import{createAsyncThunk as Ap,createSlice as Mp}from"@reduxjs/toolkit";import{createAsyncThunk as ps,createSlice as Ip}from"@reduxjs/toolkit";function Pp(t){return t.replace(/(_\w)/g,e=>e[1].toUpperCase())}function L(t){return Array.isArray(t)?t.map(L):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[Pp(o)]:L(t[o])}),{}):t}function us(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function F(t){return Array.isArray(t)?t.map(F):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[us(o)]:F(t[o])}),{}):t}var Lp={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,customData:void 0,fetchState:"idle"},Ut=t=>{var e,o,n;return{timezone:((e=t.info.visitorInfo)==null?void 0:e.visitorTimeZone)||Intl.DateTimeFormat().resolvedOptions().timeZone,agentName:((o=t.info.agentInfo)==null?void 0:o.agentNickname)||"",visitorName:((n=t.info.visitorInfo)==null?void 0:n.visitorName)||""}},Kt=ps("info/setAgentInfo",async(t,e)=>{let{deepdeskAPI:o}=e.extra;if(!t.agentId&&!t.agentNickname)throw new Error("At least provide agentId or agentNickname");let n=await o.client.get("/apis/admin/session/me/",{version:null}),s={};return n.external_id||(s.external_id=t.agentId),n.nickname||(s.nickname=t.agentNickname),!s.external_id&&!s.nickname?L(n):(await o.client.patch("/apis/admin/session/me/",s,{version:null}),L(n))}),ms=ps("info/setAgentSettings",async(t,e)=>{let{deepdeskAPI:o}=e.extra,n=await o.client.get("/apis/admin/session/me/",{version:null}),s={...typeof n.ui_config=="object"?n.ui_config:{},...t};return await o.client.patch("/apis/admin/session/me/",{ui_config:s}),s}),gs=ps("info/getAgentSettings",async(t,e)=>{let{deepdeskAPI:o}=e.extra;return(await o.client.get("/apis/admin/session/me/",{version:null})).ui_config}),Ai=t=>t.info.agentInfo,Mi=t=>t.info.customData,Ni=Ip({name:"info",initialState:Lp,reducers:{setVisitorInfo(t,e){t.visitorInfo={...t.visitorInfo,...e.payload}},setCustomData(t,e){t.customData=e.payload}},extraReducers:t=>{t.addCase(Kt.pending,(e,o)=>{e.fetchState="loading",e.agentInfo={...e.agentInfo,...o.meta.arg}}).addCase(Kt.rejected,e=>{e.fetchState="error"}).addCase(Kt.fulfilled,(e,o)=>{e.fetchState="done",e.agentInfo={...e.agentInfo,...o.meta.arg,agentId:o.payload.externalId||o.meta.arg.agentId||"",agentNickname:o.payload.nickname||o.meta.arg.agentNickname||""}}).addCase(ms.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(gs.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(M,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:Oi,setCustomData:Di}=Ni.actions,_i=Ni.reducer;var Do={list:[],fetchState:"idle",isOpen:!1,page:"search",aggregates:{}},Fi=t=>t.search.isOpen,Hi=t=>t.search.page,Bi=t=>t.search.list,Ki=t=>t.search.aggregates;function Ui(t,e=o=>o){return o=>o.search.list.filter(n=>n.type===t).map(e)}var $e=Ap("search/getAll",async(t,e)=>{var a;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(a=n.conversation.current)==null?void 0:a.profileCode;if(!s)throw new Error("Profile should be provided in order to be able to search");let{results:r,aggregates:i}=await o.search({profile:s,query:t.query,tags:t.tags,size:t.size,current:t.current,filters:{type:t.type},params:Ut(n)});return{results:r.map(c=>({...c,source:`search-${c.type.toLowerCase()}`,searchTerm:t.query})),aggregates:i}}),zi=Mp({name:"search",initialState:Do,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=Do.fetchState,t.list=Do.list}},extraReducers:t=>{t.addCase($e.pending,e=>{e.fetchState="loading"}).addCase($e.rejected,(e,o)=>{e.fetchState="error",C.error(o.error)}).addCase($e.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload.results,e.aggregates=o.payload.aggregates||{}}).addCase(M,()=>Do)}}),{resetSearch:_o,setIsOpen:Y,setPage:re}=zi.actions,Vi=zi.reducer;var fs="SetCues",gt="ShowLoginOverlay",zt="UserLoggedIn",Np="UserLoggedOut",Ne="ApplySuggestion",hs="ApplyImageSuggestion",Op="ShowCommandPalette",Dp=t=>({[fs]:e=>{t.dispatch({...e,isBroadcasted:!0})},[Op]:e=>{t.dispatch(Y(e.isOpen)),e.page&&t.dispatch(re(e.page))},[gt]:e=>{t.dispatch(di(e))},[zt]:()=>{t.dispatch(xe())},[Np]:()=>{t.dispatch(xe())},[hs]:e=>{t.dispatch(Oo({suggestion:e.suggestion}))},[Ne]:e=>{t.dispatch(me({...e,eventMetrics:{inputType:"mouse"},replace:"selection"})),t.dispatch(be())}}),$i=Dp;import Wi,{useContext as _p}from"react";import{jsx as Fp}from"react/jsx-runtime";var Gi=Wi.createContext(null),We=({broadcastEvents:t,children:e})=>{let o=Wi.useMemo(()=>t,[]);return Fp(Gi.Provider,{value:o,children:e})},oe=()=>{let t=_p(Gi);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import ks from"classnames";import{useCallback as ia,useEffect as dm,useMemo as um,useState as Rs}from"react";import{useDispatch as pm,useSelector as mm}from"react-redux";import{createContext as Xp,useContext as Zp}from"react";var ys=function(t,e){return ys=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,n){o.__proto__=n}||function(o,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(o[s]=n[s])},ys(t,e)};function Vt(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");ys(t,e);function o(){this.constructor=t}t.prototype=e===null?Object.create(e):(o.prototype=e.prototype,new o)}var ee=function(){return ee=Object.assign||function(e){for(var o,n=1,s=arguments.length;n<s;n++){o=arguments[n];for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},ee.apply(this,arguments)};function ji(t,e){var o={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(o[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,n=Object.getOwnPropertySymbols(t);s<n.length;s++)e.indexOf(n[s])<0&&Object.prototype.propertyIsEnumerable.call(t,n[s])&&(o[n[s]]=t[n[s]]);return o}function Fo(t,e,o){if(o||arguments.length===2)for(var n=0,s=e.length,r;n<s;n++)(r||!(n in e))&&(r||(r=Array.prototype.slice.call(e,0,n)),r[n]=e[n]);return t.concat(r||Array.prototype.slice.call(e))}var Ho;(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"})(Ho||(Ho={}));var Bo=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var ie;(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"})(ie||(ie={}));var Ko;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(Ko||(Ko={}));function vs(t){return t.type===ie.literal}function qi(t){return t.type===ie.argument}function Uo(t){return t.type===ie.number}function zo(t){return t.type===ie.date}function Vo(t){return t.type===ie.time}function $o(t){return t.type===ie.select}function Wo(t){return t.type===ie.plural}function Xi(t){return t.type===ie.pound}function Go(t){return t.type===ie.tag}function jo(t){return!!(t&&typeof t=="object"&&t.type===Ko.number)}function $t(t){return!!(t&&typeof t=="object"&&t.type===Ko.dateTime)}function Ss(t){t.forEach(function(e){if(delete e.location,$o(e)||Wo(e))for(var o in e.options)delete e.options[o].location,Ss(e.options[o].value);else Uo(e)&&jo(e.style)||(zo(e)||Vo(e))&&$t(e.style)?delete e.style.location:Go(e)&&Ss(e.children)})}function Zi(t,e){e===void 0&&(e={}),e=ee({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var o=new Bo(t,e).parse();if(o.err){var n=SyntaxError(Ho[o.err.kind]);throw n.location=o.err.location,n.originalMessage=o.err.message,n}return e!=null&&e.captureLocation||Ss(o.val),o.val}function qo(t,e){var o=e&&e.cache?e.cache:Vp,n=e&&e.serializer?e.serializer:zp,s=e&&e.strategy?e.strategy:Bp;return s(t,{cache:o,serializer:n})}function Hp(t){return t==null||typeof t=="number"||typeof t=="boolean"}function Qi(t,e,o,n){var s=Hp(n)?n:o(n),r=e.get(s);return typeof r>"u"&&(r=t.call(this,n),e.set(s,r)),r}function Ji(t,e,o){var n=Array.prototype.slice.call(arguments,3),s=o(n),r=e.get(s);return typeof r>"u"&&(r=t.apply(this,n),e.set(s,r)),r}function xs(t,e,o,n,s){return o.bind(e,t,n,s)}function Bp(t,e){var o=t.length===1?Qi:Ji;return xs(t,this,o,e.cache.create(),e.serializer)}function Kp(t,e){return xs(t,this,Ji,e.cache.create(),e.serializer)}function Up(t,e){return xs(t,this,Qi,e.cache.create(),e.serializer)}var zp=function(){return JSON.stringify(arguments)};function bs(){this.cache=Object.create(null)}bs.prototype.get=function(t){return this.cache[t]};bs.prototype.set=function(t,e){this.cache[t]=e};var Vp={create:function(){return new bs}},Xo={variadic:Kp,monadic:Up};var Ge;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(Ge||(Ge={}));var Wt=function(t){Vt(e,t);function e(o,n,s){var r=t.call(this,o)||this;return r.code=n,r.originalMessage=s,r}return e.prototype.toString=function(){return"[formatjs Error: ".concat(this.code,"] ").concat(this.message)},e}(Error);var Cs=function(t){Vt(e,t);function e(o,n,s,r){return t.call(this,'Invalid values for "'.concat(o,'": "').concat(n,'". Options are "').concat(Object.keys(s).join('", "'),'"'),Ge.INVALID_VALUE,r)||this}return e}(Wt);var Yi=function(t){Vt(e,t);function e(o,n,s){return t.call(this,'Value for "'.concat(o,'" must be of type ').concat(n),Ge.INVALID_VALUE,s)||this}return e}(Wt);var ea=function(t){Vt(e,t);function e(o,n){return t.call(this,'The intl string context variable "'.concat(o,'" was not provided to the string "').concat(n,'"'),Ge.MISSING_VALUE,n)||this}return e}(Wt);var j;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})(j||(j={}));function $p(t){return t.length<2?t:t.reduce(function(e,o){var n=e[e.length-1];return!n||n.type!==j.literal||o.type!==j.literal?e.push(o):n.value+=o.value,e},[])}function Wp(t){return typeof t=="function"}function Gt(t,e,o,n,s,r,i){if(t.length===1&&vs(t[0]))return[{type:j.literal,value:t[0].value}];for(var a=[],c=0,l=t;c<l.length;c++){var d=l[c];if(vs(d)){a.push({type:j.literal,value:d.value});continue}if(Xi(d)){typeof r=="number"&&a.push({type:j.literal,value:o.getNumberFormat(e).format(r)});continue}var u=d.value;if(!(s&&u in s))throw new ea(u,i);var p=s[u];if(qi(d)){(!p||typeof p=="string"||typeof p=="number")&&(p=typeof p=="string"||typeof p=="number"?String(p):""),a.push({type:typeof p=="string"?j.literal:j.object,value:p});continue}if(zo(d)){var m=typeof d.style=="string"?n.date[d.style]:$t(d.style)?d.style.parsedOptions:void 0;a.push({type:j.literal,value:o.getDateTimeFormat(e,m).format(p)});continue}if(Vo(d)){var m=typeof d.style=="string"?n.time[d.style]:$t(d.style)?d.style.parsedOptions:n.time.medium;a.push({type:j.literal,value:o.getDateTimeFormat(e,m).format(p)});continue}if(Uo(d)){var m=typeof d.style=="string"?n.number[d.style]:jo(d.style)?d.style.parsedOptions:void 0;m&&m.scale&&(p=p*(m.scale||1)),a.push({type:j.literal,value:o.getNumberFormat(e,m).format(p)});continue}if(Go(d)){var g=d.children,f=d.value,y=s[f];if(!Wp(y))throw new Yi(f,"function",i);var k=Gt(g,e,o,n,s,r),v=y(k.map(function(x){return x.value}));Array.isArray(v)||(v=[v]),a.push.apply(a,v.map(function(x){return{type:typeof x=="string"?j.literal:j.object,value:x}}))}if($o(d)){var S=d.options[p]||d.options.other;if(!S)throw new Cs(d.value,p,Object.keys(d.options),i);a.push.apply(a,Gt(S.value,e,o,n,s));continue}if(Wo(d)){var S=d.options["=".concat(p)];if(!S){if(!Intl.PluralRules)throw new Wt(`Intl.PluralRules is not available in this environment.
|
|
1
|
+
var xu=Object.defineProperty;var j=(t,e)=>{for(var o in e)xu(t,o,{get:e[o],enumerable:!0})};import qr from"classnames";import Eu,{createContext as ku,useContext as Zn,useEffect as Ru,useState as Pu}from"react";import bu,{useContext as Cu}from"react";import wu from"classnames";var _t=bu.createContext({});function h(t,e){let{debug:o,...n}=Cu(_t),s=n[t];return s?Object.entries(e).reduce((r,[i,a])=>{let d=s[i];return{...r,[i]:wu(a,d,o?`${t}__${i}`:!1)}},{}):e}var Wr={root:"dd-4s9wq"};import{jsx as yo,jsxs as Tu}from"react/jsx-runtime";var vo=()=>Tu("svg",{className:Wr.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[yo("defs",{children:yo("style",{children:".cls-1 { fill: #b3b3b3; }"})}),yo("title",{children:"Failed loading image"}),yo("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 Qn={root:"dd-c9KvZ",imageWrapper:"dd-sE7D9",image:"dd-bEGMz",content:"dd-oFIQa",title:"dd-mSgoo",contentIsCropped:"dd-Uvjv4",lineClamp:"dd-ApQo-"};import{jsx as st}from"react/jsx-runtime";var So=ku(Qn),Iu=({title:t,src:e})=>{let o=Zn(So),[n,s]=Pu(!1);return Ru(()=>{s(!1)},[e]),st("div",{className:o.imageWrapper,children:e&&!n?st("img",{className:o.image,alt:t,src:e,onError:()=>s(!0)}):st(vo,{})})},Lu=({className:t,lineClamp:e=!1,cropText:o=!1,children:n})=>{let s=Zn(So);return st("div",{className:qr(s.content,t,{[s.contentIsCropped]:o,[s.lineClamp]:e}),children:n})},Au=({as:t="h1",cropText:e=!1,className:o,children:n,...s})=>{let r=Zn(So);return Eu.createElement(t,{className:qr(r.title,o,{[r.contentIsCropped]:e}),...s},n)},xo=({children:t})=>{let e=h("Card",Qn);return st("div",{className:e.root,children:st(So.Provider,{value:e,children:t})})};xo.Image=Iu;xo.Content=Lu;xo.Title=Au;var _=xo;import Mu from"classnames";var Gr={root:"dd-llBx9"};import{jsx as Du}from"react/jsx-runtime";var Nu={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},Ou=({className:t,keyCode:e,...o})=>{let n=h("KeyboardHint",Gr);return Du("span",{"data-key":Nu[e],className:Mu(t,n.root),...o})},Jn=Ou;import _u from"classnames";var $r={root:"dd-e6HXZ"};import{jsx as Hu}from"react/jsx-runtime";var Fu=({className:t,children:e,...o})=>{let n=h("Label",$r);return Hu("span",{...o,className:_u(t,n.root),children:e})},Yn=Fu;var jr={root:"dd-FiMI7",subTitleContainer:"dd-98jc7",subtitle:"dd-3MnW8",suggestions:"dd-0SGL8"};import{jsx as es,jsxs as Bu}from"react/jsx-runtime";var Ku=({title:t,children:e,type:o,...n})=>{let s=h("Section",jr);return Bu("section",{...n,className:s.root,"data-section-type":o,children:[t&&es("div",{className:s.subTitleContainer,children:es("span",{className:s.subtitle,children:t})}),es("div",{className:s.suggestions,children:e})]})},ve=Ku;import Uu from"classnames";import zu from"react";var Xr={root:"dd-uoTXh"};import{jsx as Wu}from"react/jsx-runtime";var Vu=zu.forwardRef(({className:t,children:e},o)=>{let n=h("SectionList",Xr);return Wu("div",{ref:o,className:Uu(n.root,t),children:e})}),ts=Vu;import Ft from"classnames";import ns,{createContext as qu,useCallback as Gu,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",iconButtons:"dd-zEJFg",iconButton:"dd-MXcDi"};import{jsx as ce,jsxs as Jr}from"react/jsx-runtime";var Ue=qu(os),$u=({fixed:t,children:e,...o})=>{let n=rt(Ue);return ce("div",{...o,className:Ft(n.actions,{[n.actionsIsFixed]:t}),children:e})};function Qr(t){return typeof t=="object"&&t!==null&&"type"in t&&t.type===Zr}var Zr=({className:t,icon:e,title:o,...n})=>{let s=rt(Ue);return ce("button",{type:"button",className:Ft(s.iconButton,t),title:o,"aria-label":o,...n,children:e})},ju=({className:t,primary:e,disabled:o,label:n,children:s})=>{let r=rt(Ue);return Jr("div",{className:Ft(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[n,ce("ul",{className:r.dropdownList,children:s})]})},Xu=({index:t,label:e,onClick:o})=>{let n=rt(Ue);return ce("li",{className:n.dropdownItem,children:ce("button",{className:n.dropdownItemButton,type:"button","data-index":t,onClick:o,children:e})})},Qu=({className:t,primary:e,disabled:o,onClick:n,label:s})=>{let r=rt(Ue);return ce("button",{type:"button",className:Ft(t,r.actionButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onClick:n??(i=>i.stopPropagation()),disabled:o,"aria-hidden":o,children:s})},Zu=({labels:t})=>{let e=rt(Ue);return ce("div",{className:e.labels,children:t.map(o=>ce("span",{className:e.label,children:o},o))})},ze=ns.forwardRef(({className:t,selected:e,onClick:o,children:n,as:s="div",...r},i)=>{let a=h("Suggestion",os),d=Gu(u=>{u.preventDefault(),o&&o(u)},[o]),l=ns.Children.toArray(n).filter(Qr),c=ns.Children.toArray(n).filter(u=>!Qr(u));return ce(s,{...r,ref:i,className:Ft(t,a.root,{[a.isSelected]:e,[a.isClickable]:!!o}),onClick:d,children:Jr(Ue.Provider,{value:a,children:[c,ce("div",{className:a.iconButtons,children:l})]})})});ze.Labels=Zu;ze.Actions=$u;ze.ActionButton=Qu;ze.DropdownButton=ju;ze.DropdownItem=Xu;ze.IconButton=Zr;var A=ze;import Ju from"classnames";var Yr={root:"dd-W35K-",isWithDivider:"dd-sscOy"};import{jsx as ep}from"react/jsx-runtime";var Yu=({withDivider:t,children:e})=>{let o=h("SuggestionList",Yr);return ep("div",{"data-testid":"suggestions-overlay-list",className:Ju(o.root,{[o.isWithDivider]:t}),children:e})},J=Yu;import tp from"classnames";var ei={root:"dd-oWarc",isCollapsed:"dd-tfZI0"};import{jsx as ss}from"react/jsx-runtime";var op=({className:t,isCollapsed:e,title:o,onClick:n})=>{let s=h("ToggleButton",ei);return ss("button",{type:"button",className:tp(s.root,t,{[s.isCollapsed]:e}),onClick:n,title:o,children:ss("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:ss("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},it=op;var ti=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,bo=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var oi=/x-deepdesk-(([a-z0-9\-_])+-version)/,Co=["cues","custom-data"],Ie=(f=>(f.SEARCH="search",f.TEMPLATE="template",f.ELASTIC_SEARCH="search-autocomplete",f.GPT="gpt",f.TRIE="trie",f.TRIE_WITH_TYPOS="trie-with-typos",f.SEMANTIC="semantic",f.TEXT_RECOMMENDATION="text_recommendation",f.URL_RECOMMENDATION="url_recommendation",f.LINK_RECOMMENDATION="link_recommendation",f.PERSONAL_COLLECTION="personal-collection",f.PERSONAL_COLLECTION_SEARCH="personal-collection-search",f.SEARCH_OVERLAY="search-overlay",f.SEARCH_PREVIEW="search-preview",f.SEARCH_URL="search-url",f))(Ie||{}),at=(r=>(r.ENTER="enter",r.TAB="tab",r.ARROW="arrow",r.HOTKEY="hotkey",r.MOUSE="mouse",r))(at||{});import{render as Ot,unmountComponentAtNode as $n}from"react-dom";import{Fragment as pf}from"react";import{createSlice as np}from"@reduxjs/toolkit";import{useSelector as sp}from"react-redux";var wo=(o=>(o.NL_NL="nl-NL",o.EN_US="en-US",o))(wo||{});var rp={locale:"en-US",deanonymize:!1,fallbackImage:!1,isEmbedded:!1,showAutoflows:!1,showCustomMessages:!1,showImages:!1,showSearch:!1,showImageSearch:!1,showStyleSuggestions:!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,inlineSuggestions:!1,floatingMenu:!1,adminUrl:void 0,productName:"Deepdesk"},ni=np({name:"settings",initialState:rp,reducers:{set(t,e){Object.entries(e.payload).forEach(o=>{let[n,s]=o;typeof s>"u"||(t[n]=s)})}}}),{set:To}=ni.actions,rs=t=>e=>e.settings[t],b=t=>sp(rs(t)),si=ni.reducer;import{useSelector as la}from"react-redux";import{createAsyncThunk as is,createSlice as ip}from"@reduxjs/toolkit";var ap={isLoggedIn:!0,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1},X=t=>t.auth.isLoggedIn,ri=t=>t.auth.loginFetchState,ii=t=>t.auth.verifyFetchState,ai=t=>t.auth.showLoginOverlay,Se=is("auth/validate",async(t,e)=>e.extra.deepdeskAPI.isLoggedIn()),li=is("auth/requestLogin",async({email:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.requestLoginByEmail(t)}),Ht=is("auth/verifyLoginToken",async({token:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.verifyLoginToken(t)}),di=ip({name:"auth",initialState:ap,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload}},extraReducers:t=>{t.addCase(Se.pending,e=>{e.loginFetchState="loading"}),t.addCase(Se.fulfilled,(e,{payload:o})=>{e.isLoggedIn=o,e.loginFetchState="done"}),t.addCase(Se.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(Ht.pending,e=>{e.verifyFetchState="loading"}),t.addCase(Ht.rejected,e=>{e.verifyFetchState="error"}),t.addCase(Ht.fulfilled,(e,o)=>{o.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:lt,setShowLoginOverlay:ci}=di.actions,ui=di.reducer;import{createAction as pt,createSlice as hp}from"@reduxjs/toolkit";import{diffChars as yp}from"diff";import{useSelector as vp}from"react-redux";function pi(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function Le(t,e,o=10){let n=typeof t,s=typeof e;if(o===0)throw new Error("Max depth deepEqual, possible circular references?");return n!==s?!1:t==null||n==="string"||n==="number"||n==="boolean"?t===e:Array.isArray(t)&&Array.isArray(e)?t.length!==e.length?!1:t.every((r,i)=>Le(r,e[i],o-1)):pi(t)&&pi(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>Le(t[i],e[i],o-1)):!1}function lp(t){return Math.max(...t.map(e=>e.length))}function dp(t,e){let o=t.reduce((n,s)=>{if(s){let r=n[s]?n[s]+1:1;return{...n,[s]:r}}return n},{});return Object.keys(o).reduce((n,s)=>(o[s]<e&&n.push(s),n),[])}function mi(t,e){let n=[...t.map(({text:s})=>s.split(/\b(\w+)\b/))];for(let s=0;s<lp(n);s++){let r=dp(n.map(a=>a[s]),e),i=n.filter(a=>!r.includes(a[s]));if(i.length>=e)n=i;else return{text:n[0].slice(0,s).join("").replace(/ (\?| |!|\.|,|\n)/g,"$1").trimEnd(),source:"mixed"}}}var cp=2;function as(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let o=mi(t,cp);return o&&o.text!==e?o:t[0]}import{createAction as pp,createAsyncThunk as dt,createSlice as mp}from"@reduxjs/toolkit";var up={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},C=up;var gi={current:null,isSupported:null},M=pp("resetConversation"),ct=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.sessionId)||null},Eo=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},ut=t=>t.conversation.isSupported,ls=dt("conversation/isSupported",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.isConversationSupported(t.sessionId,t.options)}),ko=dt("conversation/create",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.createConversation(t)}),Ro=dt("conversation/bySessionId",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.getConversationBySessionId(t.sessionId,t.options)}),Po=dt("conversation/update",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Eo(e.getState());if(!n)throw new Error("No current conversation to update");return o.updateConversation(n,t)}),ds=dt("conversation/upsert",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.getConversationBySessionId(t.sessionId).catch(()=>null).then(n=>{if(!n)return o.createConversation(t);let{agentId:s,agentName:r,agentEmail:i,agentNickname:a,tags:d}=t;return o.updateConversation(n.id,{agentId:s,agentEmail:i,agentName:r,agentNickname:a,tags:d})})}),Io=dt("conversation/postMessages",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Eo(e.getState());if(!n)throw new Error("No current conversation to update messages");return o.postMessages(n,t.map(s=>({...s})))}),gp=[ko.rejected,Ro.rejected,Po.rejected,Io.rejected].map(t=>t==null?void 0:t.toString()),fp=mp({name:"conversation",initialState:gi,reducers:{},extraReducers:t=>{t.addCase(ls.fulfilled,(e,o)=>{e.isSupported=o.payload}).addCase(ko.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Ro.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(ds.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Po.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Io.fulfilled,(e,o)=>{e.current&&(e.current.messages=o.payload)}).addCase(M,()=>gi).addMatcher(e=>gp.includes(e.type),(e,o)=>{var n;throw C.info("Conversation action rejected",o.type,((n=o.error)==null?void 0:n.message)||"No message"),new Error(o.error.message)})}}),fi=fp.reducer;var Ae={text:"",html:null,selection:{start:0,end:0},stagedSuggestion:null,userCommitted:{text:"",selection:{start:0,end:0}},tabCompletionSuggestion:void 0,previousKeyDownEvent:null,textSuggestions:[],selectedSuggestionIndex:-1,metrics:{numCharsTyped:0,numCharsPasted:0,numCharsCut:0,numCharsDeleted:0,numPaste:0,agentStartedTypingTimestamp:null,externalTimeTotalSeconds:null,pastes:[],deletions:[],offeredTextSuggestions:[],textSuggestions:[],cuts:[]}};function hi(t){let{key:e,shiftKey:o,ctrlKey:n,metaKey:s,altKey:r}=t;return{key:e,shiftKey:o,ctrlKey:n,metaKey:s,altKey:r}}var Ao=pt("input/replaceText"),Mo=pt("input/keyDown"),Ve=pt("input/sendMessage"),No=pt("input/uiInputChange"),Oo=pt("input/applyImageSuggestion"),G=pt("input/sendEvent");function Lo(t){if(!t.stagedSuggestion)return;let{text:e,suggestion:{source:o,abVariant:n,abTestName:s,trainingJobs:r,sourceText:i,searchTerm:a,text:d},eventMetrics:{inputType:l},replace:c}=t.stagedSuggestion,u=o==="search"||o==="personal-collection-search",p=e.slice(t.userCommitted.text.substring(0,t.userCommitted.selection.start).length);(u||c==="selection")&&(p=e),t.stagedSuggestion.suggestion.source==="search-overlay"&&(p=d),t.userCommitted.text=t.text,t.userCommitted.selection=t.selection,t.metrics.textSuggestions.push({text:p,source:o,abVariant:n,abTestName:s,inputType:l,sourceText:i,trainingJobs:r||[],searchTerm:u?t.userCommitted.text:a}),t.stagedSuggestion=null,t.textSuggestions=[],t.selectedSuggestionIndex=-1}var yi=hp({name:"input",initialState:Ae,reducers:{initialInput(t,e){let{text:o,selection:n,html:s}=e.payload;t.text=o,t.selection.start=(n==null?void 0:n.start)??o.length,t.selection.end=(n==null?void 0:n.end)??o.length,t.userCommitted.text=o,t.userCommitted.selection.start=(n==null?void 0:n.start)??o.length,t.userCommitted.selection.end=(n==null?void 0:n.end)??o.length,t.html=s||null},reset(t){Object.assign(t,{...Ae,selection:t.selection})},resetToCommitted(t){t.text=t.userCommitted.text,t.selection=t.userCommitted.selection,t.stagedSuggestion=null,t.tabCompletionSuggestion=as(t.textSuggestions,t.userCommitted.text)},changeSelection(t,e){e.payload&&(Le(t.selection,e.payload)||(t.selection=e.payload,t.userCommitted.selection=t.selection,t.stagedSuggestion&&Lo(t)))},platformInput(t,e){let{text:o,html:n,selection:s}=e.payload;s&&(t.selection.start=s.start,t.selection.end=s.end),t.text=o,t.html=n||null},userInput(t,e){var r,i,a,d;if(t.previousKeyDownEvent){let{key:l,shiftKey:c,ctrlKey:u,metaKey:p,altKey:m}=t.previousKeyDownEvent;switch(l){case"Enter":c&&(t.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:g}=t,{text:f}=e.payload,y=yp(g,f);g.length-f.length>1&&t.metrics.deletions.push(...y.filter(k=>k.removed).map(k=>k.value)),t.metrics.numCharsDeleted+=g.length-f.length;break}case"C":case"V":case"X":if(!u&&!p){t.metrics.numCharsTyped+=1;let g=((r=t.selection)==null?void 0:r.start)!==void 0&&((i=t.selection)==null?void 0:i.end)!==void 0?t.text.substring(t.selection.start,t.selection.end):null;g&&g.length>0&&(t.metrics.numCharsDeleted+=g.length,t.metrics.deletions.push(g))}break;case"Shift":break;default:if(!u&&!p&&!m){t.metrics.numCharsTyped+=1;let g=((a=t.selection)==null?void 0:a.start)!==void 0&&((d=t.selection)==null?void 0:d.end)!==void 0?t.text.substring(t.selection.start,t.selection.end):null;g&&g.length>0&&(t.metrics.numCharsDeleted+=g.length,t.metrics.deletions.push(g))}}}!t.metrics.agentStartedTypingTimestamp&&e.payload.text!==t.text&&(t.metrics.agentStartedTypingTimestamp=Date.now()),e.payload.text===""&&(t.metrics=Ae.metrics,t.textSuggestions=[],t.stagedSuggestion=null),t.text!==e.payload.text&&Lo(t);let{text:o,html:n,selection:s}=e.payload;s&&(t.selection.start=s.start,t.selection.end=s.end,t.userCommitted.selection.start=s.start,t.userCommitted.selection.end=s.end),t.text=o,t.html=n||null,t.userCommitted.text=o,t.previousKeyDownEvent=null},stageSuggestion(t,e){let{text:o}=e.payload;switch(t.stagedSuggestion=e.payload,t.tabCompletionSuggestion=void 0,e.payload.replace){case"selection":t.text=`${t.text.slice(0,t.selection.start)}${o}${t.text.slice(t.selection.end)}`,t.selection.end=t.selection.start+o.length,t.selection.start+=o.length;break;case"until-selection-end":t.text=`${o}${t.text.slice(t.selection.end)}`,t.selection.start=o.length,t.selection.end=o.length;break;default:throw new Error(`Unknown replace ${e.payload.replace}`)}e.payload.eventMetrics.inputType==="tab"&&Lo(t)},commitSuggestion(t){Lo(t)},offeredTextSuggestion(t,e){let{text:o,suggestion:{source:n}}=e.payload;t.metrics.offeredTextSuggestions.find(r=>r.text===o)||t.metrics.offeredTextSuggestions.push({text:o,source:n})},registerCut(t,e){let{metrics:o}=t,n=e.payload;t.metrics={...t.metrics,numCharsCut:o.numCharsCut+n.length,cuts:[...o.cuts,n]}},registerPaste(t,e){let{metrics:o}=t,{text:n,selectionText:s}=e.payload,r=o.numCharsDeleted+(s&&s.length?s.length:0),i=s&&s.length?[...o.deletions,s]:o.deletions;t.metrics={...t.metrics,numCharsDeleted:r,deletions:i,numCharsPasted:o.numCharsPasted+n.length,numPaste:o.numPaste+1,pastes:[...o.pastes,n]}},registerKeyDown(t,e){t.previousKeyDownEvent=e.payload},nextTextSuggestionIndex(t){let e=t.textSuggestions.length;t.selectedSuggestionIndex=t.selectedSuggestionIndex<e-1?t.selectedSuggestionIndex+1:t.selectedSuggestionIndex},previousTextSuggestionIndex(t){t.selectedSuggestionIndex=t.selectedSuggestionIndex>=0?t.selectedSuggestionIndex-1:t.selectedSuggestionIndex},setTextSuggestions(t,e){if(t.selectedSuggestionIndex=-1,t.textSuggestions=e.payload,e.payload.length===0){t.tabCompletionSuggestion=void 0;return}let o=t.userCommitted.text.substring(0,t.userCommitted.selection.end),n=as(e.payload,o);t.tabCompletionSuggestion=n!=null&&n.text.includes(o)?n:void 0},setSelectedTextSuggestionIndex(t,e){t.selectedSuggestionIndex=e.payload},setMetrics(t,{payload:e}){t.metrics=e}},extraReducers:t=>{t.addCase(M,e=>{e.tabCompletionSuggestion=Ae.tabCompletionSuggestion,e.previousKeyDownEvent=Ae.previousKeyDownEvent,e.textSuggestions=Ae.textSuggestions,e.selectedSuggestionIndex=Ae.selectedSuggestionIndex,e.metrics=Ae.metrics})}}),mt=t=>t.input.userCommitted.text.substring(0,t.input.userCommitted.selection.end),Sp=t=>t.input.selection,vi=()=>vp(Sp),{userInput:Si,changeSelection:cs,initialInput:xi,nextTextSuggestionIndex:bi,offeredTextSuggestion:Ci,previousTextSuggestionIndex:wi,registerCut:Ti,registerKeyDown:Ei,registerPaste:ki,reset:Ri,resetToCommitted:Kt,platformInput:Pi,setSelectedTextSuggestionIndex:Me,setTextSuggestions:ue,stageSuggestion:pe,commitSuggestion:xe,setMetrics:Ii}=yi.actions,Li=yi.reducer;import{createAsyncThunk as wp,createSlice as Tp}from"@reduxjs/toolkit";import{createAsyncThunk as ps,createSlice as bp}from"@reduxjs/toolkit";function xp(t){return t.replace(/(_\w)/g,e=>e[1].toUpperCase())}function L(t){return Array.isArray(t)?t.map(L):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[xp(o)]:L(t[o])}),{}):t}function us(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function F(t){return Array.isArray(t)?t.map(F):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[us(o)]:F(t[o])}),{}):t}var Cp={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,customData:void 0,fetchState:"idle"},Ut=t=>{var e,o,n;return{timezone:((e=t.info.visitorInfo)==null?void 0:e.visitorTimeZone)||Intl.DateTimeFormat().resolvedOptions().timeZone,agentName:((o=t.info.agentInfo)==null?void 0:o.agentNickname)||"",visitorName:((n=t.info.visitorInfo)==null?void 0:n.visitorName)||""}},Bt=ps("info/setAgentInfo",async(t,e)=>{let{deepdeskAPI:o}=e.extra;if(!t.agentId&&!t.agentNickname)throw new Error("At least provide agentId or agentNickname");let n=await o.client.get("/apis/admin/session/me/",{version:null}),s={};return n.external_id||(s.external_id=t.agentId),n.nickname||(s.nickname=t.agentNickname),!s.external_id&&!s.nickname?L(n):(await o.client.patch("/apis/admin/session/me/",s,{version:null}),L(n))}),ms=ps("info/setAgentSettings",async(t,e)=>{let{deepdeskAPI:o}=e.extra,n=await o.client.get("/apis/admin/session/me/",{version:null}),s={...typeof n.ui_config=="object"?n.ui_config:{},...t};return await o.client.patch("/apis/admin/session/me/",{ui_config:s}),s}),gs=ps("info/getAgentSettings",async(t,e)=>{let{deepdeskAPI:o}=e.extra;return(await o.client.get("/apis/admin/session/me/",{version:null})).ui_config}),Ai=t=>t.info.agentInfo,Mi=t=>t.info.customData,Ni=bp({name:"info",initialState:Cp,reducers:{setVisitorInfo(t,e){t.visitorInfo={...t.visitorInfo,...e.payload}},setCustomData(t,e){t.customData=e.payload}},extraReducers:t=>{t.addCase(Bt.pending,(e,o)=>{e.fetchState="loading",e.agentInfo={...e.agentInfo,...o.meta.arg}}).addCase(Bt.rejected,e=>{e.fetchState="error"}).addCase(Bt.fulfilled,(e,o)=>{e.fetchState="done",e.agentInfo={...e.agentInfo,...o.meta.arg,agentId:o.payload.externalId||o.meta.arg.agentId||"",agentNickname:o.payload.nickname||o.meta.arg.agentNickname||""}}).addCase(ms.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(gs.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(M,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:Oi,setCustomData:Di}=Ni.actions,_i=Ni.reducer;var Do={list:[],fetchState:"idle",isOpen:!1,page:"search",aggregates:{}},Fi=t=>t.search.isOpen,Hi=t=>t.search.page,Ki=t=>t.search.list,Bi=t=>t.search.aggregates;function Ui(t,e=o=>o){return o=>o.search.list.filter(n=>n.type===t).map(e)}var We=wp("search/getAll",async(t,e)=>{var a;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(a=n.conversation.current)==null?void 0:a.profileCode;if(!s)throw new Error("Profile should be provided in order to be able to search");let{results:r,aggregates:i}=await o.search({profile:s,query:t.query,tags:t.tags,size:t.size,current:t.current,filters:{type:t.type},params:Ut(n)});return{results:r.map(d=>({...d,source:`search-${d.type.toLowerCase()}`,searchTerm:t.query})),aggregates:i}}),zi=Tp({name:"search",initialState:Do,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=Do.fetchState,t.list=Do.list}},extraReducers:t=>{t.addCase(We.pending,e=>{e.fetchState="loading"}).addCase(We.rejected,(e,o)=>{e.fetchState="error",C.error(o.error)}).addCase(We.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload.results,e.aggregates=o.payload.aggregates||{}}).addCase(M,()=>Do)}}),{resetSearch:_o,setIsOpen:Y,setPage:re}=zi.actions,Vi=zi.reducer;var fs="SetCues",gt="ShowLoginOverlay",zt="UserLoggedIn",Ep="UserLoggedOut",Ne="ApplySuggestion",hs="ApplyImageSuggestion",kp="ShowCommandPalette",Rp=t=>({[fs]:e=>{t.dispatch({...e,isBroadcasted:!0})},[kp]:e=>{t.dispatch(Y(e.isOpen)),e.page&&t.dispatch(re(e.page))},[gt]:e=>{t.dispatch(ci(e))},[zt]:()=>{t.dispatch(Se())},[Ep]:()=>{t.dispatch(Se())},[hs]:e=>{t.dispatch(Oo({suggestion:e.suggestion}))},[Ne]:e=>{t.dispatch(pe({...e,eventMetrics:{inputType:"mouse"},replace:"selection"})),t.dispatch(xe())}}),Wi=Rp;import qi,{useContext as Pp}from"react";import{jsx as Ip}from"react/jsx-runtime";var Gi=qi.createContext(null),qe=({broadcastEvents:t,children:e})=>{let o=qi.useMemo(()=>t,[]);return Ip(Gi.Provider,{value:o,children:e})},oe=()=>{let t=Pp(Gi);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import ks from"classnames";import{useCallback as ia,useEffect as Yp,useMemo as em,useState as Rs}from"react";import{useDispatch as tm,useSelector as om}from"react-redux";import{createContext as Up,useContext as zp}from"react";var ys=function(t,e){return ys=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,n){o.__proto__=n}||function(o,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(o[s]=n[s])},ys(t,e)};function Vt(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");ys(t,e);function o(){this.constructor=t}t.prototype=e===null?Object.create(e):(o.prototype=e.prototype,new o)}var ee=function(){return ee=Object.assign||function(e){for(var o,n=1,s=arguments.length;n<s;n++){o=arguments[n];for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},ee.apply(this,arguments)};function $i(t,e){var o={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(o[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,n=Object.getOwnPropertySymbols(t);s<n.length;s++)e.indexOf(n[s])<0&&Object.prototype.propertyIsEnumerable.call(t,n[s])&&(o[n[s]]=t[n[s]]);return o}function Fo(t,e,o){if(o||arguments.length===2)for(var n=0,s=e.length,r;n<s;n++)(r||!(n in e))&&(r||(r=Array.prototype.slice.call(e,0,n)),r[n]=e[n]);return t.concat(r||Array.prototype.slice.call(e))}var Ho;(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"})(Ho||(Ho={}));var Ko=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var ie;(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"})(ie||(ie={}));var Bo;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(Bo||(Bo={}));function vs(t){return t.type===ie.literal}function ji(t){return t.type===ie.argument}function Uo(t){return t.type===ie.number}function zo(t){return t.type===ie.date}function Vo(t){return t.type===ie.time}function Wo(t){return t.type===ie.select}function qo(t){return t.type===ie.plural}function Xi(t){return t.type===ie.pound}function Go(t){return t.type===ie.tag}function $o(t){return!!(t&&typeof t=="object"&&t.type===Bo.number)}function Wt(t){return!!(t&&typeof t=="object"&&t.type===Bo.dateTime)}function Ss(t){t.forEach(function(e){if(delete e.location,Wo(e)||qo(e))for(var o in e.options)delete e.options[o].location,Ss(e.options[o].value);else Uo(e)&&$o(e.style)||(zo(e)||Vo(e))&&Wt(e.style)?delete e.style.location:Go(e)&&Ss(e.children)})}function Qi(t,e){e===void 0&&(e={}),e=ee({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var o=new Ko(t,e).parse();if(o.err){var n=SyntaxError(Ho[o.err.kind]);throw n.location=o.err.location,n.originalMessage=o.err.message,n}return e!=null&&e.captureLocation||Ss(o.val),o.val}function jo(t,e){var o=e&&e.cache?e.cache:Dp,n=e&&e.serializer?e.serializer:Op,s=e&&e.strategy?e.strategy:Ap;return s(t,{cache:o,serializer:n})}function Lp(t){return t==null||typeof t=="number"||typeof t=="boolean"}function Zi(t,e,o,n){var s=Lp(n)?n:o(n),r=e.get(s);return typeof r>"u"&&(r=t.call(this,n),e.set(s,r)),r}function Ji(t,e,o){var n=Array.prototype.slice.call(arguments,3),s=o(n),r=e.get(s);return typeof r>"u"&&(r=t.apply(this,n),e.set(s,r)),r}function xs(t,e,o,n,s){return o.bind(e,t,n,s)}function Ap(t,e){var o=t.length===1?Zi:Ji;return xs(t,this,o,e.cache.create(),e.serializer)}function Mp(t,e){return xs(t,this,Ji,e.cache.create(),e.serializer)}function Np(t,e){return xs(t,this,Zi,e.cache.create(),e.serializer)}var Op=function(){return JSON.stringify(arguments)};function bs(){this.cache=Object.create(null)}bs.prototype.get=function(t){return this.cache[t]};bs.prototype.set=function(t,e){this.cache[t]=e};var Dp={create:function(){return new bs}},Xo={variadic:Mp,monadic:Np};var Ge;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(Ge||(Ge={}));var qt=function(t){Vt(e,t);function e(o,n,s){var r=t.call(this,o)||this;return r.code=n,r.originalMessage=s,r}return e.prototype.toString=function(){return"[formatjs Error: ".concat(this.code,"] ").concat(this.message)},e}(Error);var Cs=function(t){Vt(e,t);function e(o,n,s,r){return t.call(this,'Invalid values for "'.concat(o,'": "').concat(n,'". Options are "').concat(Object.keys(s).join('", "'),'"'),Ge.INVALID_VALUE,r)||this}return e}(qt);var Yi=function(t){Vt(e,t);function e(o,n,s){return t.call(this,'Value for "'.concat(o,'" must be of type ').concat(n),Ge.INVALID_VALUE,s)||this}return e}(qt);var ea=function(t){Vt(e,t);function e(o,n){return t.call(this,'The intl string context variable "'.concat(o,'" was not provided to the string "').concat(n,'"'),Ge.MISSING_VALUE,n)||this}return e}(qt);var $;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})($||($={}));function _p(t){return t.length<2?t:t.reduce(function(e,o){var n=e[e.length-1];return!n||n.type!==$.literal||o.type!==$.literal?e.push(o):n.value+=o.value,e},[])}function Fp(t){return typeof t=="function"}function Gt(t,e,o,n,s,r,i){if(t.length===1&&vs(t[0]))return[{type:$.literal,value:t[0].value}];for(var a=[],d=0,l=t;d<l.length;d++){var c=l[d];if(vs(c)){a.push({type:$.literal,value:c.value});continue}if(Xi(c)){typeof r=="number"&&a.push({type:$.literal,value:o.getNumberFormat(e).format(r)});continue}var u=c.value;if(!(s&&u in s))throw new ea(u,i);var p=s[u];if(ji(c)){(!p||typeof p=="string"||typeof p=="number")&&(p=typeof p=="string"||typeof p=="number"?String(p):""),a.push({type:typeof p=="string"?$.literal:$.object,value:p});continue}if(zo(c)){var m=typeof c.style=="string"?n.date[c.style]:Wt(c.style)?c.style.parsedOptions:void 0;a.push({type:$.literal,value:o.getDateTimeFormat(e,m).format(p)});continue}if(Vo(c)){var m=typeof c.style=="string"?n.time[c.style]:Wt(c.style)?c.style.parsedOptions:n.time.medium;a.push({type:$.literal,value:o.getDateTimeFormat(e,m).format(p)});continue}if(Uo(c)){var m=typeof c.style=="string"?n.number[c.style]:$o(c.style)?c.style.parsedOptions:void 0;m&&m.scale&&(p=p*(m.scale||1)),a.push({type:$.literal,value:o.getNumberFormat(e,m).format(p)});continue}if(Go(c)){var g=c.children,f=c.value,y=s[f];if(!Fp(y))throw new Yi(f,"function",i);var k=Gt(g,e,o,n,s,r),v=y(k.map(function(x){return x.value}));Array.isArray(v)||(v=[v]),a.push.apply(a,v.map(function(x){return{type:typeof x=="string"?$.literal:$.object,value:x}}))}if(Wo(c)){var S=c.options[p]||c.options.other;if(!S)throw new Cs(c.value,p,Object.keys(c.options),i);a.push.apply(a,Gt(S.value,e,o,n,s));continue}if(qo(c)){var S=c.options["=".concat(p)];if(!S){if(!Intl.PluralRules)throw new qt(`Intl.PluralRules is not available in this environment.
|
|
2
2
|
Try polyfilling it using "@formatjs/intl-pluralrules"
|
|
3
|
-
`,Ge.MISSING_INTL_API,i);var P=o.getPluralRules(e,{type:d.pluralType}).select(p-(d.offset||0));S=d.options[P]||d.options.other}if(!S)throw new Cs(d.value,p,Object.keys(d.options),i);a.push.apply(a,Gt(S.value,e,o,n,s,p-(d.offset||0)));continue}}return $p(a)}function Gp(t,e){return e?ee(ee(ee({},t||{}),e||{}),Object.keys(t).reduce(function(o,n){return o[n]=ee(ee({},t[n]),e[n]||{}),o},{})):t}function jp(t,e){return e?Object.keys(t).reduce(function(o,n){return o[n]=Gp(t[n],e[n]),o},ee({},t)):t}function ws(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,o){t[e]=o}}}}}function qp(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:qo(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.NumberFormat).bind.apply(e,Fo([void 0],o,!1)))},{cache:ws(t.number),strategy:Xo.variadic}),getDateTimeFormat:qo(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.DateTimeFormat).bind.apply(e,Fo([void 0],o,!1)))},{cache:ws(t.dateTime),strategy:Xo.variadic}),getPluralRules:qo(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.PluralRules).bind.apply(e,Fo([void 0],o,!1)))},{cache:ws(t.pluralRules),strategy:Xo.variadic})}}var ta=function(){function t(e,o,n,s){o===void 0&&(o=t.defaultLocale);var r=this;if(this.formatterCache={number:{},dateTime:{},pluralRules:{}},this.format=function(l){var d=r.formatToParts(l);if(d.length===1)return d[0].value;var u=d.reduce(function(p,m){return!p.length||m.type!==j.literal||typeof p[p.length-1]!="string"?p.push(m.value):p[p.length-1]+=m.value,p},[]);return u.length<=1?u[0]||"":u},this.formatToParts=function(l){return Gt(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=o,this.resolvedLocale=t.resolveLocale(o),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,c=ji(i,["formatters"]);this.ast=t.__parse(e,ee(ee({},c),{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=jp(t.formats,n),this.formatters=s&&s.formatters||qp(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>"u")){var o=Intl.NumberFormat.supportedLocalesOf(e);return o.length>0?new Intl.Locale(o[0]):new Intl.Locale(typeof e=="string"?e:e[0])}},t.__parse=Zi,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 Qp(t,e){return e.split(".").reduce((o,n)=>o?o[n]:void 0,t)}var Jp="dummy",Ts=Xp(null);function E(t){let e=Zp(Ts);if(!e)throw new Error("useTranslator() may be used only in the context of a <LocaleContext> component.");let o=t[e]??{};return(n,s)=>{let r=Qp(o,n);return r?new ta(r).format(s):(e!==Jp&&console.warn(`${n} does not exist in messages of ${e}`),`[${n}]`)}}import{useEffect as em,useRef as tm}from"react";var oa={root:"J",content:"Vo"};import{jsx as na}from"react/jsx-runtime";var om=({isOpen:t,autoFocus:e,children:o,onClose:n,onBack:s,onKeyDown:r,overlayAriaLabel:i,contentAriaLabel:a})=>{let c=tm(null),l=h("Dialog",oa),d=p=>{if(p.key==="Escape"){p.preventDefault(),p.stopPropagation(),s();return}r&&r(p)},u=p=>{p.target===c.current&&t&&n()};return em(()=>{var p,m;!c.current||!t||!e||(m=(p=c.current)==null?void 0:p.querySelector("input, textarea"))==null||m.focus()},[t,e,c]),t?na("div",{role:"dialog","data-testid":"dialog",className:l.root,"aria-label":i,ref:c,onKeyDown:d,onMouseDown:u,children:na("div",{"data-testid":"dialog-content",className:l.content,"aria-label":a,children:o})}):null},Zo=om;import sm from"classnames";var sa={root:"y"};import{jsx as im}from"react/jsx-runtime";var rm=({className:t,value:e,...o})=>{let n=h("TextInput",sa);return im("input",{className:sm(t,n.root),type:"text",value:e,...o})},jt=rm;var Es={};q(Es,{enUS:()=>am,nlNL:()=>lm});var am={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"}]},lm={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 ra={root:"Wo",anchorButton:"Zo",errorMessage:"_o",title:"oe",subtitle:"ee",text:"ie",input:"re",actions:"te",button:"w",primaryButton:"ne"};import{jsx as Z,jsxs as Qo}from"react/jsx-runtime";var gm=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch{return t}},fm=({agentEmail:t,isOpen:e,origin:o="",onSuccess:n,onDismiss:s})=>{let r=E(Es),i=h("LoginTokenDialog",ra),a=mm(ii),c=pm(),l=b("productName"),[d,u]=Rs(t||""),[p,m]=Rs(0),[g,f]=Rs(""),y=ia(async P=>{P.preventDefault(),c(li({email:d})),m(1)},[o,d]),k=()=>{f(""),m(0)},v=ia(async P=>{P.preventDefault();let x=gm(P.target.elements.token.value);if(!x){f(r("verifyCodeError",{login:S}));return}c(Ht({token:x}))},[o]),S=um(()=>P=>Z("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:k,children:P},"back-button"),[]);return dm(()=>{a==="error"&&f(r("verifyCodeError",{login:S})),a==="done"&&n()},[a]),Z(Zo,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:l}),overlayAriaLabel:r("promptTitle",{productName:l}),onClose:s,onBack:s,children:Qo("div",{className:i.root,children:[Z("h1",{className:i.title,children:r("promptTitle",{productName:l})}),p===0&&Qo("form",{onSubmit:y,children:[Z("h2",{className:i.subtitle,children:r("requestCodeTitle")}),Z("p",{className:i.text,children:r("requestCodeBody",{productName:l})}),Z(jt,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:d,onChange:P=>u(P.target.value)}),Z("div",{className:i.actions,children:Z("button",{type:"submit",className:ks(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),p===1&&Qo("form",{onSubmit:v,children:[Z("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),Z("p",{className:i.text,children:r("verifyCodeBody")}),Z(jt,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),g&&Z("div",{className:i.errorMessage,children:g}),Qo("div",{className:i.actions,children:[Z("button",{type:"button",className:ks(i.button),onClick:k,children:r("back")}),Z("button",{type:"submit",className:ks(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},aa=fm;import{jsx as ym}from"react/jsx-runtime";var hm=()=>{let t=la(ai),e=la(Ai),o=b("adminUrl"),n=oe(),s=()=>n.send(gt,!1),r=()=>{n.send(gt,!1),n.send(zt)};return ym(aa,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:o,onDismiss:s,onSuccess:r})},ca=hm;import Cf from"lodash.debounce";import{Fragment as wf,useCallback as Zs,useEffect as Qs,useState as Js}from"react";import{useDispatch as Tf,useSelector as Ze}from"react-redux";import{createAsyncThunk as vm,createSlice as Sm}from"@reduxjs/toolkit";var xm={data:null,fetchState:"idle"},da=t=>t.contentTypes.data,qt=vm("contentTypes/getContentTypes",async(t,e)=>e.extra.deepdeskAPI.getContentTypes()),bm=Sm({name:"contentTypes",initialState:xm,reducers:{},extraReducers:t=>{t.addCase(qt.pending,e=>{e.fetchState="loading"}).addCase(qt.rejected,e=>{e.fetchState="error"}).addCase(qt.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),ua=bm.reducer;function je(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{useEffect as Na,useState as ag,useRef as lg,useCallback as cg}from"react";import{useState as Em}from"react";import Ps from"classnames";var ne={root:"ae",list:"pe",listWrapper:"de",listHorizontal:"K",page:"v",search:"P",pageNav:"le",pageTitle:"se",pageBackButton:"Q",listHeader:"ce",listHeading:"xe",listMoreButton:"fe",listItem:"V",listItemContent:"a",listItemText:"ge",listItemDescription:"be",listItemActions:"W",truncate:"me",lineClamp:"he",listItemTitle:"ue",listItemAction:"ye",listItemPrimaryAction:"we",listItemSelected:"ve",sources:"ke",sourcesTitle:"ze",source:"je",icon:"Z",searchIcon:"Ye",searchInputWrapper:"qe",searchInput:"k",select:"Ce",selectType:"Se",selectWrapper:"z",image:"Ee",imageSrc:"Ge",imageSrcHidden:"Ne",imageSrcStatus:"Ae",imageTitle:"Fe",actions:"He",actionsWrapper:"Le",actionsBar:"Me",actionButton:"_",hasShortKeys:"Re",actionShortcut:"Te",actionShortcutFixKerning:"Ue"};var qe={};q(qe,{enUS:()=>wm,nlNL:()=>Tm});var wm={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"}]},Tm={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"}]};import{jsx as Xt,jsxs as Rm}from"react/jsx-runtime";var km=({src:t,title:e})=>{let o=h("CommandPalette",ne),[n,s]=Em("loading"),r=E(qe);return Rm("div",{className:o.image,children:[Xt("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:Ps(o.imageSrc,{[o.imageSrcHidden]:["loading","error"].includes(n)})}),n==="loading"&&Xt("span",{className:Ps(o.imageSrc,o.imageSrcStatus),children:r("loading")}),n==="error"&&Xt("span",{className:Ps(o.imageSrc,o.imageSrcStatus),children:Xt(vo,{})}),e&&Xt("span",{className:o.imageTitle,children:e})]})},pa=km;import Pm from"react";import Im from"classnames";import{jsx as Is,jsxs as ma}from"react/jsx-runtime";function Ls({children:t,heading:e,orientation:o,hasMore:n,onShowAll:s}){let r=E(qe),i=h("CommandPalette",ne);return Pm.Children.count(t)===0?null:ma("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||n)&&ma("div",{className:i.listHeader,children:[e&&Is("h4",{className:i.listHeading,children:e}),n&&s&&Is("button",{onClick:s,className:i.listMoreButton,type:"button",children:r("showAll")})]}),Is("div",{className:Im(i.listWrapper,o==="horizontal"&&i.listHorizontal),children:t})]})}import en from"classnames";import{Interweave as Ym}from"interweave";var Lm=/[.*+?^${}()|[\]\\]/g,Am=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function Mm(t){return t.replace(Lm,"\\$&")}function Nm(t,e){let o=t.split("").findIndex((n,s)=>n!==e[s]);return o>-1?o:Math.min(t.length,e.length)}function Om(t){return t.search(Am)}function ga(t,e=[]){let o=t;return e.forEach(n=>{if(!n)return;let s=new RegExp(`\\b(${Mm(n)})\\b`,"gi");o=o.replace(s,"<strong>$1</strong>")}),o}function fa(t){return t.replace(bo,'<mark data-type="placeholder">$1</mark>')}function Zt(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function Dm(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 As(t,e,o={}){if(e){let n=Nm(e.toLowerCase(),t.toLowerCase()),s=Zt(t.substring(n,t.length));if(o.stripAgentPart){let c=t.substring(0,n),l=Om(c);return`<span style="opacity: 0.5">${c.substring(l+1)}</span>${s}`}let i=e.split(ti).length>3||e.length>30?Dm(e.trim(),n):0;return`${`${i>0?"\u2026":""}${Zt(t.substring(i,n))}`}<strong>${s}</strong>`}return t}var _m=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function Ms(t){return _m.test(t)}function ha(t){let e=document.createElement("template");return e.innerHTML=t,e.content.textContent??""}import Hm,{useState as ya,useEffect as va,useMemo as Bm,useRef as Sa,useCallback as Km,useContext as Um}from"react";import zm from"classnames";var Ns={root:"Be",trigger:"oo",content:"De",contentOpen:"Ie",contentTop:"Oe",contentBottom:"Xe",item:"eo"};import{jsx as Jo,jsxs as Gm}from"react/jsx-runtime";var Vm=0,xa=Hm.createContext(null),$m=()=>{let t=Um(xa);if(!t)throw new Error("Invalid DropdownContext");return t},ba=({trigger:t,children:e,position:o="bottom"})=>{let n=Bm(()=>++Vm,[]),s=Sa(null),r=Sa(null),i=h("Dropdown",Ns),[a,c]=ya(!1),[l,d]=ya(o),u=m=>{m.preventDefault(),m.stopPropagation(),c(!a)},p=Km(([m])=>{!m.isIntersecting&&a&&d(l==="top"?"bottom":"top")},[a]);return va(()=>{let m=g=>{s.current&&!s.current.contains(g.target)&&c(!1)};return document.addEventListener("click",m),()=>{document.removeEventListener("click",m)}},[]),va(()=>{if(!r.current&&!a)return()=>{};let m=new IntersectionObserver(p,{root:null,rootMargin:"0px",threshold:1});return r.current&&m.observe(r.current),()=>{r.current&&m.unobserve(r.current)}},[r,a]),Jo(xa.Provider,{value:{setIsOpen:c},children:Gm("div",{ref:s,className:i.root,children:[Jo("button",{id:`dropdown-${n}`,"data-testid":"dropdown-trigger","aria-haspopup":"true","aria-expanded":a,"aria-label":"Dropdown trigger",type:"button",className:i.trigger,onClick:u,children:t}),Jo("div",{"data-testid":"dropdown-content",ref:r,"aria-hidden":!a,"aria-labelledby":`dropdown-${n}`,className:zm(i.content,{[i.contentOpen]:a,[i.contentTop]:l==="top",[i.contentBottom]:l==="bottom"}),children:e})]})})};function Wm({as:t,children:e,onClick:o,...n}){let s=t||"button",r=h("Dropdown",Ns),{setIsOpen:i}=$m(),a=c=>{i(!1),o(c),c.stopPropagation()};return Jo(s,{type:"button",className:r.item,onClick:a,...n,children:e})}ba.Item=Wm;var Os=ba;import{jsx as Ca}from"react/jsx-runtime";var wa=t=>Ca("svg",{xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512",...t,children:Ca("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 Xe={};q(Xe,{enUS:()=>jm,nlNL:()=>qm});var jm={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"}]},qm={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{jsx as Ds}from"react/jsx-runtime";var Xm="%0d%0a%0d%0a%0d%0a",Zm=(t,e)=>{let o=[`Suggestie: ${encodeURIComponent(e)}`,"Beschrijf je feedback:"];return`mailto:${t.join(",")}?subject=Suggestie feedback&body=${o.join(Xm)}`},Qm=({suggestion:t,onFeedback:e})=>{let o=E(Xe),n=b("suggestionFeedbackEmailAddresses");return!n||n.length===0?null:Ds(Os,{trigger:Ds(wa,{"data-testid":"feedback-dropdown-trigger"}),children:Ds(Os.Item,{as:"a",href:Zm(n,t),onClick:e,children:o("giveFeedback")})})},Yo=Qm;import _s from"react";import{jsx as Jm}from"react/jsx-runtime";var Ta=_s.createContext(void 0);function Oe(){let t=_s.useContext(Ta);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Ea=({children:t,page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r})=>{let i=_s.useMemo(()=>({page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r}),[o,e,s]);return Jm(Ta.Provider,{value:i,children:t})};import{jsx as De,jsxs as Fs}from"react/jsx-runtime";function Hs({closeOnSelect:t=!0,lineClamp:e,children:o,onClick:n,onFeedback:s,extra:r,onSourceClick:i,description:a,sources:c,id:l,styles:d,...u}){let{selected:p,onChangeOpen:m}=Oe(),g=h("CommandPalette",ne);function f(y){n(y),t&&m(!1)}return Fs("div",{className:en(g.listItem,l===p&&g.listItemSelected),children:[De("button",{type:"button",className:en(g.listItemAction,g.listItemPrimaryAction),"aria-disabled":u.disabled??!1,onClick:f,"data-command-palette-item":!0,"data-item-id":l,...u,children:Fs("div",{className:g.listItemContent,children:[typeof o=="string"?De("p",{className:en(g.listItemText,g.truncate,d==null?void 0:d.title),children:o}):o,a&&De(Ym,{tagName:"p",allowList:[],content:Ms(a)?ha(a):a,className:en(g.listItemDescription,d==null?void 0:d.description,e?g.lineClamp:g.truncate)})]})}),r,s&&De("div",{className:g.listItemActions,children:De(Yo,{suggestion:String(o),onFeedback:s})}),c&&c.length>0&&Fs("div",{className:g.sources,children:[De("span",{className:g.sourcesTitle,children:"Sources"}),c.map(y=>y.url?De("a",{className:g.source,href:y.url,target:"_blank",title:y.url,rel:"noopener noreferrer",onClick:()=>i&&i(y),children:y.name},y.url):De("span",{className:g.source,children:y.name},y.name))]})]})}import{jsx as ka,jsxs as eg}from"react/jsx-runtime";var Ra=()=>eg("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[ka("title",{id:"angleLeftTitle",children:"AngleLeft"}),ka("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 Pa,jsxs as Bs}from"react/jsx-runtime";function Ks({children:t,title:e,id:o,onDismiss:n}){let s=E(qe),r=h("CommandPalette",ne),{page:i}=Oe();return i!==o?null:Bs("div",{className:r.page,id:`page_${o}`,tabIndex:-1,children:[n&&Bs("div",{className:r.pageNav,children:[Bs("button",{className:r.pageBackButton,type:"button",onClick:n,children:[Pa(Ra,{}),s("back")]}),e&&Pa("h3",{className:r.pageTitle,children:e})]}),t]})}import{forwardRef as og}from"react";import{jsx as Ia,jsxs as tg}from"react/jsx-runtime";var ft=()=>tg("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[Ia("path",{d:"M0 0h24v24H0z",fill:"none"}),Ia("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 ht,jsxs as Us}from"react/jsx-runtime";function ng({onChange:t,onChangeType:e,placeholder:o,typePlaceholder:n,types:s,value:r,selectedType:i},a){let c=h("CommandPalette",ne);return Us("div",{className:c.search,children:[ht("div",{className:c.searchIcon,children:ht(ft,{})}),Us("div",{className:c.searchInputWrapper,children:[ht("input",{ref:a,spellCheck:!1,autoComplete:"off",onChange:l=>{t(l.currentTarget.value)},onFocus:l=>{l.currentTarget.select()},className:c.searchInput,placeholder:o,value:r,type:"text",id:"command-palette-search-input",autoFocus:!0}),s&&s.length>0&&ht("div",{className:c.selectWrapper,children:Us("select",{"data-testid":"command-palette-type-select",className:c.select,onChange:l=>e(l.target.value===n?void 0:l.target.value),value:i||n,children:[n&&ht("option",{children:n}),s.map(l=>ht("option",{value:l.value,children:l.label},l.value))]})})]})]})}var La=og(ng);import Aa from"classnames";import{jsx as rg,jsxs as ig}from"react/jsx-runtime";var sg=({onClick:t,shortKeys:e,children:o,...n})=>{let s=h("CommandPalette",ne);return ig("button",{type:"button",...n,onClick:t,className:Aa(s.actionButton,n.className,{[s.hasShortKeys]:e&&e.length>0}),children:[o,e&&e.map(r=>rg("span",{className:Aa(s.actionShortcut,r===8629&&s.actionShortcutFixKerning),children:typeof r=="number"?String.fromCharCode(r):r},r))]})},Ma=sg;import{jsx as Oa,jsxs as ug}from"react/jsx-runtime";var dg="[data-command-palette-item]";function yt({placeholder:t="Start typing to search...",typePlaceholder:e="All types",defaultPage:o="search",page:n,onChangePage:s,onChangeSearch:r,onChangeType:i,onChangeOpen:a,selectedType:c,types:l,children:d,isOpen:u,search:p}){let[m,g]=ag(),f=lg(null),y=()=>{s&&s(o),i(void 0),r(""),a(!1)},k=()=>{var I;if(n!==o&&s){s(o);return}if(c&&i){i(void 0),(I=f.current)==null||I.focus();return}if(p.length>0){r("");return}a(!1)},v=()=>{let I=S();I.length!==0&&g(I[0].dataset.itemId)},S=()=>Array.from(document.querySelectorAll(dg)||[]),P=I=>document.querySelector(`[data-item-id=${I}]`),x=I=>{let O=P(I);O&&g(O.dataset.itemId)},T=I=>{let O=P(I);O&&O.scrollIntoView({behavior:"smooth"})},N=()=>{if(!m)return;let I=S(),O=P(m);if(!O)return;let $=I.indexOf(O),te=I[$+1];te&&te.dataset.itemId?x(te.dataset.itemId):v()},V=()=>{if(!m)return;let I=S(),O=P(m);if(!O)return;let $=I.indexOf(O),te=I[$-1];te&&te.dataset.itemId?x(te.dataset.itemId):x(I[I.length-1].dataset.itemId)},H=cg(I=>{switch(I.key){case"ArrowDown":{I.preventDefault(),N();break}case"ArrowUp":{I.preventDefault(),V();break}case"Enter":{if(m){let O=P(m);O==null||O.click()}break}}},[m]);return Na(()=>{v()},[p,n,c,u]),Na(()=>{m&&T(m)},[m]),Oa(Zo,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:u,onBack:k,onClose:y,onKeyDown:H,children:ug(Ea,{selected:m,setSelected:g,isOpen:u,onChangeOpen:a,page:n,children:[n===o&&Oa(La,{ref:f,onChange:r,onChangeType:i,placeholder:t,value:p,selectedType:c,types:l,typePlaceholder:e}),d]})})}yt.Page=Ks;yt.List=Ls;yt.Image=pa;yt.ListItem=Hs;yt.Button=Ma;var D=yt;import{useEffect as pg}from"react";function Da(t,e){pg(()=>{let o=n=>{var s;((s=navigator==null?void 0:navigator.platform)!=null&&s.toLowerCase().includes("mac")?n.metaKey:n.ctrlKey)&&n.key===t&&(n.preventDefault(),n.stopPropagation(),e())};return document.addEventListener("keydown",o),()=>{document.removeEventListener("keydown",o)}},[])}import{useEffect as Ba,useRef as xg}from"react";import{useSelector as bg,useDispatch as Cg}from"react-redux";import{createAsyncThunk as mg,createSlice as gg}from"@reduxjs/toolkit";var _a={data:null,fetchState:"idle"},tn=t=>{var r;let e=[],{visitorName:o}=t.info.visitorInfo??{},{agentName:n,agentNickname:s}=t.info.agentInfo??{};return n&&n!==o&&e.push(n),s&&s!==o&&e.push(s),((r=t.entities.data)==null?void 0:r.filter(i=>!e.includes(i.text)))??null},ae=mg("entities/getEntities",async(t,e)=>{let{deepdeskAPI:o,dynamicThunkObject:n}=e.extra;if(!n.conversationQuery)return Promise.resolve([]);let s=n.conversationQuery,r=await s();return r.length===0?Promise.resolve([]):o.getEntities(r)}),fg=t=>t.filter((e,o)=>o===t.findIndex(n=>n.text===e.text)),hg=gg({name:"entities",initialState:_a,reducers:{},extraReducers:t=>{t.addCase(ae.pending,e=>{e.fetchState="loading"}).addCase(ae.rejected,e=>{e.fetchState="error"}).addCase(ae.fulfilled,(e,o)=>{e.fetchState="done",e.data=fg(e.data?[...e.data,...o.payload]:o.payload)}).addCase(M,()=>_a)}}),Fa=hg.reducer;var zs={};q(zs,{enUS:()=>yg,nlNL:()=>vg});var yg={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},vg={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var Ha={root:"Je",empty:"Ke"};import{jsx as Vs,jsxs as Tg}from"react/jsx-runtime";var wg=({onCopy:t})=>{let e=xg(null),o=h("EntitiesList",Ha),n=bg(tn),{setSelected:s}=Oe(),r=E(zs),i=Cg();return Ba(()=>{i(ae())},[]),Ba(()=>{e.current&&(e.current.focus(),s("entity-0"))},[e]),Tg("div",{className:o.root,ref:e,tabIndex:-1,children:[n&&n.length>0&&Vs(D.List,{children:n.map((a,c)=>Vs(D.ListItem,{id:`entity-${c}`,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities"),n&&n.length===0&&Vs("p",{className:o.empty,children:r("noResults")})]})},Ka=wg;import{Fragment as Bg,useEffect as an,useRef as Kg,useState as Ug}from"react";import{useSelector as Gs,useDispatch as zg}from"react-redux";import{createAsyncThunk as Eg,createSlice as kg}from"@reduxjs/toolkit";var Ua={data:null,fetchState:"idle"},za=t=>t.summary.data,Va=t=>t.summary.fetchState==="error",$a=t=>t.summary.model,Ce=Eg("summary/getSummary",async(t,e)=>{var d,u,p;let o=e.getState().profile.data,n=(d=e.getState().conversation.current)==null?void 0:d.sessionId,s=(p=(u=e.getState().info)==null?void 0:u.agentInfo)==null?void 0:p.agentId;if(!o)throw new Error("Profile is not defined");let{deepdeskAPI:r,dynamicThunkObject:i}=e.extra;if(!i.conversationQuery)return Promise.reject(new Error("setConversationQuery method is not defined"));let a=i.conversationQuery,c=await a();if(c.length===0)return Promise.reject(new Error("No messages are included"));let l=await r.getSummary(c,{externalConversationId:n,agentId:s,promptInstruction:o.summarizerPromptInstruction,model:o.summarizerModel});return l.summary?l:Promise.reject(new Error("Summary is not provided"))}),Rg=kg({name:"summary",initialState:Ua,reducers:{},extraReducers:t=>{t.addCase(Ce.pending,e=>{e.data=null,e.fetchState="loading"}).addCase(Ce.rejected,e=>{e.data=null,e.fetchState="error"}).addCase(Ce.fulfilled,(e,o)=>{e.fetchState="done",o.payload&&(e.data=o.payload.summary,e.model=o.payload.model)}).addCase(M,()=>Ua)}}),Wa=Rg.reducer;var $s={};q($s,{enUS:()=>Pg,nlNL:()=>Ig});var Pg={copy:[{type:0,value:"Copy"}],error:[{type:0,value:"Could not generate a summary"}],loading:[{type:0,value:"Generating summary, this may take a few moments."}]},Ig={copy:[{type:0,value:"Kopieer"}],error:[{type:0,value:"Kon helaas geen samenvatting genereren."}],loading:[{type:0,value:"Samenvatting wordt gemaakt, dit kan even duren."}]};var Ga={root:"Pe",actions:"Qe",main:"Ve",textInput:"io",loading:"We",error:"Ze"};import Qa from"classnames";import{useState as _g}from"react";import{jsx as ja}from"react/jsx-runtime";var on=t=>ja("svg",{width:"16",height:"16",fill:"#000000",...t,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:ja("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 qa}from"react/jsx-runtime";var nn=t=>qa("svg",{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:"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 we(t,e){var n;let o=t.cloneNode(!0);o.style.top=`${t.offsetTop}px`,o.style.left=`${t.offsetLeft}px`,o.style.position="absolute",o.classList.add(e),o.addEventListener("animationend",()=>o.remove()),(n=t.parentElement)==null||n.appendChild(o)}var Ws={};q(Ws,{enUS:()=>Ag,nlNL:()=>Mg});var Ag={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},Mg={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};import{useDispatch as Og}from"react-redux";import{createAsyncThunk as Ng}from"@reduxjs/toolkit";function Xa(t){return Ng("analytics/logEvent",(e,o)=>{var r,i,a;let n=(i=(r=o.getState())==null?void 0:r.conversation.current)==null?void 0:i.id,s=(a=o.getState())==null?void 0:a.info.agentInfo;return o.extra.deepdeskAPI.sendEvent(e.name,{conversationId:n,...s,data:e.data})})(t)}function vt(){let t=Og();return async(e,o)=>{await t(Xa({name:e,data:o}))}}var Za={fadeup:"j",fadedown:"Y",thumbs:"_e",selected:"ro",thumbsUp:"oi",thumbsDown:"ei"};import{jsx as sn,jsxs as Hg}from"react/jsx-runtime";var Fg=({eventName:t,eventData:e})=>{let o=h("FeedbackThumbs",Za),n=E(Ws),s=vt(),[r,i]=_g(null),a=l=>{l.preventDefault(),l.stopPropagation(),we(l.target,o.fadeup),i("up"),s(t,{...e,rating:"up"})},c=l=>{l.preventDefault(),l.stopPropagation(),we(l.target,o.fadedown),i("down"),s(t,{...e,rating:"down"})};return Hg("div",{className:o.thumbs,children:[sn(A.IconButton,{title:n("thumbsUp"),onClick:a,icon:sn(nn,{}),className:Qa(o.thumbsUp,r==="up"&&o.selected),disabled:!!r}),sn(A.IconButton,{title:n("thumbsDown"),onClick:c,icon:sn(on,{}),className:Qa(o.thumbsDown,r==="down"&&o.selected),disabled:!!r})]})},rn=Fg;import{jsx as St,jsxs as Ja}from"react/jsx-runtime";var Vg=({onCopy:t})=>{let e=Kg(null),o=h("SummaryForm",Ga),[n,s]=Ug(""),r=E($s),i=Gs($a),a=Gs(za),c=Gs(Va),l=zg(),d=()=>{l(G({name:"summary copied to clipboard",data:{originalText:a,finalText:n,model:i},options:{includeConversationData:!0}})),t(n)},u=()=>{let p=document.getSelection();p&&l(G({name:"summary copied to clipboard",data:{originalText:a,finalText:p==null?void 0:p.toString(),model:i},options:{includeConversationData:!0}}))};return an(()=>{l(Ce())},[]),an(()=>{s(a||"")},[a]),an(()=>{e.current&&a&&e.current.focus()},[e,a]),an(()=>{let p=m=>{m.key==="Enter"&&m.shiftKey&&d()};return document.addEventListener("keydown",p),()=>{document.removeEventListener("keydown",p)}},[n]),St("div",{className:o.root,tabIndex:-1,children:c?St("p",{className:o.error,children:r("error")}):Ja(Bg,{children:[St("div",{className:o.main,children:St("textarea",{placeholder:a?void 0:r("loading"),disabled:!a,className:o.textInput,ref:e,value:n,onCopy:u,onChange:p=>s(p.target.value)})}),Ja("div",{className:o.actions,children:[St(rn,{eventName:"summary feedback",eventData:{summary:a}}),St(D.Button,{shortKeys:[8679,8629],onClick:d,children:r("copy")})]})]})})},Ya=Vg;var Qt={};q(Qt,{enUS:()=>$g,nlNL:()=>Wg});var $g={personalCollectionLink:[{type:0,value:"Go to Personal Collection"}],searchPlaceholder:[{type:0,value:"Start typing to search..."}],urlSuggestions:[{type:0,value:"Link 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"}],summaryClipboard:[{type:0,value:"Summarize conversation"}],summaryTitle:[{type:0,value:"Conversation summary"}],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?"}]},Wg={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:"Link 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"}],summaryClipboard:[{type:0,value:"Gesprek samenvatten"}],summaryTitle:[{type:0,value:"Gesprek samenvatting"}],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 sf,{useEffect as Xs,useRef as rf}from"react";import{useDispatch as af,useSelector as ll}from"react-redux";var js={};q(js,{enUS:()=>Gg,nlNL:()=>jg});var Gg={use:[{type:0,value:"Use"}],loading:[{type:0,value:"Loading..."}],error:[{type:0,value:"Something went wrong, please try again later."}],anotherQuestion:[{type:0,value:"Send a message..."}],reset:[{type:0,value:"Reset conversation"}]},jg={use:[{type:0,value:"Gebruik"}],loading:[{type:0,value:"Laden..."}],error:[{type:0,value:"Er ging iets mis, probeer het later opnieuw."}],anotherQuestion:[{type:0,value:"Stuur een bericht..."}],reset:[{type:0,value:"Reset gesprek"}]};var el={root:"to",title:"ii",empty:"ri",status:"ti",form:"no",input:"ao",submit:"ni",question:"ai",answer:"pi",alignRight:"di",listItemFeedback:"li"};import{createAction as Yg,createAsyncThunk as ef,createSlice as tf}from"@reduxjs/toolkit";import{createAsyncThunk as Xg,createSlice as Zg}from"@reduxjs/toolkit";var Qg={data:null,fetchState:"idle"},tl=t=>{var e;return(e=t.knowledgeAssistant)==null?void 0:e.data},Jt=Xg("knowledgeAssistant/getKnowledgeAssistant",async(t,e)=>{var i;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=n.conversation.current;if(!s||!s.profileCode)throw new Error("No conversation of conversation profileCode found");let r=(i=n.profile.data)==null?void 0:i.knowledgeAssistant;return r?o.getKnowledgeAssistant(r):null}),Jg=Zg({name:"knowledgeAssistant",initialState:Qg,reducers:{},extraReducers:t=>{t.addCase(Jt.pending,e=>{e.fetchState="loading"}).addCase(Jt.rejected,e=>{e.fetchState="error"}).addCase(Jt.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),ol=Jg.reducer;var qs={data:[],fetchState:"idle"},nl=t=>{var e;return(e=t.answer)==null?void 0:e.data},sl=t=>t.answer.fetchState,bt=Yg("answer/resetKnowledgeSearch"),xt=ef("answer/getAnswer",async(t,e)=>{var c,l,d;let{deepdeskAPI:o}=e.extra,n=e.getState().answer.data,s=tl(e.getState()),r=(c=e.getState().conversation.current)==null?void 0:c.sessionId,i=(d=(l=e.getState().info)==null?void 0:l.agentInfo)==null?void 0:d.agentId;if(!s)throw new Error("KnowledgeAssistant is not defined");let a=await o.knowledgeAssist({customerInstruction:s.customerInstruction,doNotKnowAnswer:s.doNotKnowAnswer,question:t},n,s.code,{agentId:i,conversationId:r});return{question:t,answer:a}}),of=tf({name:"answer",initialState:qs,reducers:{},extraReducers:t=>{t.addCase(xt.pending,e=>{e.fetchState="loading"}).addCase(xt.rejected,e=>{e.fetchState="error"}).addCase(xt.fulfilled,(e,o)=>{e.fetchState="done",e.data=[...e.data,o.payload]}).addCase(M,()=>qs).addCase(bt,()=>qs)}}),rl=of.reducer;import{jsx as il,jsxs as nf}from"react/jsx-runtime";var al=()=>nf("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 512 512","aria-labelledby":"paperPlaneTitle",children:[il("title",{id:"paperPlaneTitle",children:"PaperPlane"}),il("path",{d:"M498.1 5.6c10.1 7 15.4 19.1 13.5 31.2l-64 416c-1.5 9.7-7.4 18.2-16 23s-18.9 5.4-28 1.6L284 427.7l-68.5 74.1c-8.9 9.7-22.9 12.9-35.2 8.1S160 493.2 160 480V396.4c0-4 1.5-7.8 4.2-10.7L331.8 202.8c5.8-6.3 5.6-16-.4-22s-15.7-6.4-22-.7L106 360.8 17.7 316.6C7.1 311.3 .3 300.7 0 288.9s5.9-22.8 16.1-28.7l448-256c10.7-6.1 23.9-5.5 34 1.4z"})]});import{jsx as le,jsxs as cl}from"react/jsx-runtime";var lf=({onUse:t,onResetQuestion:e,question:o})=>{let[n,s]=sf.useState(""),{setSelected:r}=Oe(),i=rf(null),a=h("KnowledgeSearchStyles",el),c=E(js),l=af(),d=ll(nl),u=ll(sl),p=async g=>{g.preventDefault(),g.stopPropagation(),n!==""&&l(xt(n))},m=(g,f)=>{l(G({name:"knowledge assist source viewed",data:{question:f,sourceViewed:g.url||g.name},options:{includeConversationData:!0}}))};return Xs(()=>{var g;o&&u==="idle"?l(xt(o)):(g=i.current)==null||g.focus()},[i,u]),Xs(()=>{u==="done"&&(l(G({name:"knowledge assist question answered",data:{question:n||o,sources:d[d.length-1].answer.sources,answer:d[d.length-1].answer.answer,isFollowUpQuestion:d.length>1},options:{includeConversationData:!0}})),r(`knowledge-assist-${d.length-1}`),s(""))},[u,d]),Xs(()=>{i.current&&i.current.scrollIntoView({behavior:"smooth"})},[i,d]),cl("div",{className:a.root,children:[d.length>0&&le("div",{className:a.alignRight,children:le(D.Button,{onClick:e,children:c("reset")})}),d.map(({question:g,answer:f},y)=>le(D.List,{children:le(D.ListItem,{id:`knowledge-assist-${y}`,"data-testid":"knowledge-search-answer",description:f.answer,closeOnSelect:!0,onClick:()=>t(f.answer),onSourceClick:k=>m(k,g),sources:f.sources,styles:{title:a.question,description:a.answer},extra:le("div",{className:a.listItemFeedback,children:le(rn,{eventName:"knowledge assist feedback",eventData:{question:g,isAgent:o!==g,isFollowUpQuestion:d.length>1,...f}})}),children:g})},`${f.answer}_${y}`)),u==="loading"&&le("p",{className:a.status,children:c("loading")}),u==="error"&&le("p",{className:a.status,children:c("error")}),cl("form",{className:a.form,onSubmit:p,children:[le("input",{ref:i,placeholder:c("anotherQuestion"),className:a.input,type:"text",value:n,onFocus:()=>{r(void 0)},onChange:g=>{r(void 0),s(g.target.value)}}),le("button",{type:"submit",className:a.submit,children:le(al,{})})]})]})},dl=lf;import{createAsyncThunk as cf,createSlice as df}from"@reduxjs/toolkit";var uf={data:null,fetchState:"idle"},Te=t=>t.profile.data,ln=t=>t.profile.data?t.profile.data.uiConfig.widget.types.filter(e=>e.isActive):[],ul=t=>t.profile.data?!!t.profile.data.uiConfig.widget.types.find(e=>e.type==="custom-data"):!1,Yt=cf("profile/getProfile",async(t,e)=>{var r;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=n.conversation.current;if(!s||!s.profileCode)throw new Error("No conversation of conversation profileCode found");return((r=n.profile.data)==null?void 0:r.code)===s.profileCode?n.profile.data:o.getProfile(s.profileCode)}),pf=df({name:"profile",initialState:uf,reducers:{},extraReducers:t=>{t.addCase(Yt.pending,e=>{e.fetchState="loading"}).addCase(Yt.rejected,e=>{e.fetchState="error"}).addCase(Yt.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),pl=pf.reducer;import{useEffect as yf}from"react";import{useDispatch as vf}from"react-redux";import{createAction as ff,createAsyncThunk as hl,createSlice as hf}from"@reduxjs/toolkit";var mf=["{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}"],gf=new RegExp(mf.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function ml(t,e){let o=t.split(gf),n=0,s=[];for(let r=0;r<o.length;r++){let i=o[r];if(s.push(i),r===o.length-1)break;if(e.indexOf(i)===-1)return t;let a=o[r+1],c=r===o.length-2;n+=i.length;let l=n;if(c){let u=a.charAt(0),p=0;do l=u?e.indexOf(u,l+1):-1,p+=1;while(l!==-1&&a.indexOf(e.slice(l))!==0);if(l===-1&&p>2)return t}else l=a&&a!==""?e.indexOf(a,n):-1;let d=l===-1?e.slice(n):e.slice(n,l);s.push(d),n=l}return s.join("")}function gl(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var yl={suggestions:[],fetchState:"idle"},fl={default:yl},vl=t=>e=>{var o;return((o=e.textSuggestions[t])==null?void 0:o.suggestions)??[]},cn=t=>t.textSuggestions,Sl=t=>{let e=t.toLowerCase();return o=>{let n=o.text.toLowerCase();return n.startsWith(e)&&n.length>e.length}},dn=ff("textSuggestions/refresh"),ce=hl("textSuggestions/recommendations",async(t,e)=>{var l;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(l=n.conversation.current)==null?void 0:l.id,{textSuggestionsCount:r,inlineSuggestions:i}=n.settings,a=mt(n);if(!s)throw new Error("No current conversation to fetch text suggestions");let c=await o.getTextSuggestions(s,Ut(n),t);if(t==="default"){let d=i?c.filter(Sl(a)):c;e.dispatch(pe(d.slice(0,r)))}return c}),eo=hl("textSuggestions/autocompletions",async(t,e)=>{var l;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(l=n.conversation.current)==null?void 0:l.id,{textSuggestionsCount:r,deanonymize:i,inlineSuggestions:a}=n.settings;if(!s)throw new Error("No current conversation to fetch text suggestions");let c=await o.getAutocompleteSuggestions(s,{...Ut(n),input:t});if(!e.getState().input.text)throw new Error("Abort");return a&&(c=c.filter(Sl(t))),i&&(c=c.map(d=>({...d,text:d.source!=="trie-with-typos"?ml(d.text,t):d.text}))),c=gl(c,r),e.dispatch(pe(c)),c}),xl=hf({name:"textSuggestions",initialState:fl,reducers:{setTextSuggestions:{reducer(t,e){let{contentType:o}=e.payload;t[o].fetchState="done",t[o].suggestions=e.payload.suggestions},prepare(t,e){return{payload:{contentType:t,suggestions:e}}}},setSuggestionState(t,e){return e.payload}},extraReducers:t=>{t.addCase(ce.pending,(e,o)=>{let n=o.meta.arg,s=e[n]||yl;return{...e,[n]:{...s,fetchState:"loading"}}}).addCase(ce.rejected,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="error")}).addCase(ce.fulfilled,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="done",e[n].suggestions=o.payload)}).addCase(eo.pending,e=>{e.default.fetchState="loading"}).addCase(eo.rejected,e=>{e.default.fetchState="error"}).addCase(eo.fulfilled,(e,o)=>{e.default.fetchState="done",e.default.suggestions=o.payload}).addCase(M,()=>fl)}}),{setTextSuggestions:K1,setSuggestionState:U1}=xl.actions,bl=xl.reducer;import{useSelector as Cl}from"react-redux";import{jsx as un,jsxs as xf}from"react/jsx-runtime";var Sf=({commands:t,onClick:e})=>{var a,c,l;let o=vf(),n=E(Qt),s=Cl(Te),r=Cl(cn),i=((l=(c=(a=s==null?void 0:s.uiConfig)==null?void 0:a.search)==null?void 0:c.initialTypes)==null?void 0:l.filter(({isActive:d})=>d))||[];return yf(()=>{i.forEach(({type:d})=>{(!r[d]||r[d].suggestions.length===0)&&o(ce(d))})},[]),xf("div",{children:[t.length>0&&un(D.List,{heading:n("commands"),children:t.map((d,u)=>un(D.ListItem,{id:`command-${u}`,closeOnSelect:!1,onClick:d.onClick,children:d.label},d.label))}),i.map(({type:d,title:u})=>{var p;return un(D.List,{heading:u,orientation:"vertical",children:(p=r[d])==null?void 0:p.suggestions.map((m,g)=>un(D.ListItem,{id:`${d}-${g}`,closeOnSelect:!1,description:m.text,onClick:()=>e(m.text,m),"data-testid":"search-overlay-suggestion",children:m.title},`${m.id}-${m.text}`))},d)})]})},wl=Sf;import{jsx as se,jsxs as Ys}from"react/jsx-runtime";var Ef=200,kf=5,Rf=4,Tl=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),Pf=()=>{let t=Tf(),e=oe(),o=E(Qt),[n,s]=Js(!1),[r,i]=Js(""),a=Ze(Hi),c=Ze(Te),[l,d]=Js(),u=Ze(X),p=b("showSearch"),m=b("showEntitiesCommand"),g=b("showSummaryCommand"),f=b("showKnowledgeSearch"),y=b("showImageSearch"),k=b("searchTriggerKey"),v=Ze(da),S=Ze(Bi),P=Ze(Ki),x=Ze(Fi),T=w=>Xn(S.filter(W=>W.type===w.toUpperCase()),w),N=[{value:"PERSONAL",label:o("personalSuggestions"),list:T("PERSONAL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"URL",label:o("urlSuggestions"),list:T("URL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"STICKYMESSAGE",label:o("pinnedMessages"),list:T("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"IMAGE",label:o("imageSuggestions"),lineClamp:!1,list:T("IMAGE"),listOrientation:"horizontal",shouldShow:y}].filter(w=>w.shouldShow),V=[{label:o("entitiesClipboard"),onClick:()=>t(re("entities")),shouldShow:m&&Tl(o("entitiesClipboard"),r)},{label:o("summaryClipboard"),onClick:()=>t(re("summary")),shouldShow:g&&Tl(o("summaryClipboard"),r)},{label:r?`${o("knowledgeAssist")}: ${r}`:o("knowledgeAssist"),onClick:()=>t(re("knowledgeAssist")),shouldShow:f}].filter(w=>w.shouldShow),H=(v==null?void 0:v.map(w=>({value:w.code.toUpperCase(),label:`${w.name}s`,list:T(w.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[],I=Zs(Cf((w,W)=>{t($e({query:w,type:W,tags:["search-overlay"],size:l?50:20}))},Ef),[l]),O=Zs((w,W)=>{switch(W.type){case"IMAGE":e.send(hs,{suggestion:W});break;default:e.send(Ne,{text:w,suggestion:W})}t(Y(!1))},[t]),$=w=>{je(w.text),t(G({name:"entity copied",data:{entity:w,type:"copy"}})),t(Y(!1))},te=Zs(w=>{t(G({name:"suggestion feedback",data:{text:w.text,source:"search",context:r},options:{includeConversationData:!0}}))},[r]),fu=w=>{e.send(Ne,{text:w,suggestion:{source:"knowledge-assist",text:w}}),t(G({name:"answer used",data:{originalText:w},options:{includeConversationData:!0}})),i(""),t(re("search")),t(bt()),t(Y(!1))},hu=w=>{je(w),t(Y(!1))};function Xn(w,W){return w.slice(0,l?10:W.toLowerCase()==="image"?Rf:kf)}function Dt(w){return W=>{n?window.confirm(o("warning"))&&(w(W),s(!1)):w(W)}}return Qs(()=>{r?I(r,l):t(_o())},[r,l]),Qs(()=>{a==="search"&&t(bt())},[a]),Qs(()=>{u&&t(qt())},[u]),Da(k,()=>t(Y(!0))),!p||!c?null:Ys(D,{placeholder:o("searchPlaceholder"),typePlaceholder:o("typePlaceholder"),onChangeSearch:i,onChangeOpen:Dt(w=>t(Y(w))),onChangeType:w=>d(w),onChangePage:Dt(w=>t(re(w))),selectedType:l,search:r,page:a,isOpen:x,types:[...H,...N],children:[Ys(D.Page,{id:"search",children:[r.length===0&&se(wl,{commands:V,onClick:O}),r.length>0&&Ys(wf,{children:[V.length>0&&se(D.List,{heading:o("commands"),children:V.map((w,W)=>se(D.ListItem,{closeOnSelect:!1,onClick:w.onClick,id:`commands-${W}`,children:w.label},w.label))}),[...H,...N].map(({value:w,label:W,list:Vr,lineClamp:yu,listOrientation:vu})=>se(D.List,{heading:W,orientation:vu==="horizontal"?"horizontal":"vertical",onShowAll:()=>d(w),hasMore:!l&&P[w.toLowerCase()]>Xn(Vr,w).length,children:Xn(Vr,w).map(Q=>se(D.ListItem,{id:`${w}-${Q.id}`,closeOnSelect:!1,lineClamp:yu,onClick:()=>O(Q.text,Q),description:w!=="IMAGE"?Q.title&&Q.text:void 0,onFeedback:w!=="IMAGE"?()=>te(Q):void 0,children:w==="IMAGE"?se(D.Image,{title:Q.title||Q.text,src:Q.image}):Q.title||Q.text},`${Q.id}-${Q.text}`))},w))]})]}),se(D.Page,{id:"entities",title:o("entitiesTitle"),onDismiss:Dt(()=>{t(re("search"))}),children:se(Ka,{onCopy:$})}),se(D.Page,{id:"summary",title:o("summaryTitle"),onDismiss:Dt(()=>{t(re("search"))}),children:se(Ya,{onCopy:hu})}),se(D.Page,{id:"knowledgeAssist",title:o("knowledgeAssist"),onDismiss:Dt(()=>{t(bt()),t(re("search"))}),children:se(dl,{question:r,onUse:fu,onResetQuestion:()=>{t(bt()),i("")}})})]})},El=Pf;import{jsx as kl,jsxs as Af}from"react/jsx-runtime";var Lf=()=>{let t=b("showSearch"),e=b("isEmbedded");return Af(If,{children:[t&&kl(El,{}),e&&kl(ca,{})]})},Rl=Lf;import _f from"classnames";import{useSelector as Ff}from"react-redux";import{jsx as er}from"react/jsx-runtime";var Pl=({className:t})=>er("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:er("g",{children:er("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
|
+
`,Ge.MISSING_INTL_API,i);var P=o.getPluralRules(e,{type:c.pluralType}).select(p-(c.offset||0));S=c.options[P]||c.options.other}if(!S)throw new Cs(c.value,p,Object.keys(c.options),i);a.push.apply(a,Gt(S.value,e,o,n,s,p-(c.offset||0)));continue}}return _p(a)}function Hp(t,e){return e?ee(ee(ee({},t||{}),e||{}),Object.keys(t).reduce(function(o,n){return o[n]=ee(ee({},t[n]),e[n]||{}),o},{})):t}function Kp(t,e){return e?Object.keys(t).reduce(function(o,n){return o[n]=Hp(t[n],e[n]),o},ee({},t)):t}function ws(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,o){t[e]=o}}}}}function Bp(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:jo(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.NumberFormat).bind.apply(e,Fo([void 0],o,!1)))},{cache:ws(t.number),strategy:Xo.variadic}),getDateTimeFormat:jo(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.DateTimeFormat).bind.apply(e,Fo([void 0],o,!1)))},{cache:ws(t.dateTime),strategy:Xo.variadic}),getPluralRules:jo(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.PluralRules).bind.apply(e,Fo([void 0],o,!1)))},{cache:ws(t.pluralRules),strategy:Xo.variadic})}}var ta=function(){function t(e,o,n,s){o===void 0&&(o=t.defaultLocale);var r=this;if(this.formatterCache={number:{},dateTime:{},pluralRules:{}},this.format=function(l){var c=r.formatToParts(l);if(c.length===1)return c[0].value;var u=c.reduce(function(p,m){return!p.length||m.type!==$.literal||typeof p[p.length-1]!="string"?p.push(m.value):p[p.length-1]+=m.value,p},[]);return u.length<=1?u[0]||"":u},this.formatToParts=function(l){return Gt(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=o,this.resolvedLocale=t.resolveLocale(o),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=$i(i,["formatters"]);this.ast=t.__parse(e,ee(ee({},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=Kp(t.formats,n),this.formatters=s&&s.formatters||Bp(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>"u")){var o=Intl.NumberFormat.supportedLocalesOf(e);return o.length>0?new Intl.Locale(o[0]):new Intl.Locale(typeof e=="string"?e:e[0])}},t.__parse=Qi,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 Vp(t,e){return e.split(".").reduce((o,n)=>o?o[n]:void 0,t)}var Wp="dummy",Ts=Up(null);function E(t){let e=zp(Ts);if(!e)throw new Error("useTranslator() may be used only in the context of a <LocaleContext> component.");let o=t[e]??{};return(n,s)=>{let r=Vp(o,n);return r?new ta(r).format(s):(e!==Wp&&console.warn(`${n} does not exist in messages of ${e}`),`[${n}]`)}}import{useEffect as qp,useRef as Gp}from"react";var oa={root:"dd-tvkOF",content:"dd-eXA1D"};import{jsx as na}from"react/jsx-runtime";var $p=({isOpen:t,autoFocus:e,children:o,onClose:n,onBack:s,onKeyDown:r,overlayAriaLabel:i,contentAriaLabel:a})=>{let d=Gp(null),l=h("Dialog",oa),c=p=>{if(p.key==="Escape"){p.preventDefault(),p.stopPropagation(),s();return}r&&r(p)},u=p=>{p.target===d.current&&t&&n()};return qp(()=>{var p,m;!d.current||!t||!e||(m=(p=d.current)==null?void 0:p.querySelector("input, textarea"))==null||m.focus()},[t,e,d]),t?na("div",{role:"dialog","data-testid":"dialog",className:l.root,"aria-label":i,ref:d,onKeyDown:c,onMouseDown:u,children:na("div",{"data-testid":"dialog-content",className:l.content,"aria-label":a,children:o})}):null},Qo=$p;import jp from"classnames";var sa={root:"dd-ranhW"};import{jsx as Qp}from"react/jsx-runtime";var Xp=({className:t,value:e,...o})=>{let n=h("TextInput",sa);return Qp("input",{className:jp(t,n.root),type:"text",value:e,...o})},$t=Xp;var Es={};j(Es,{enUS:()=>Zp,nlNL:()=>Jp});var Zp={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"}]},Jp={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 ra={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 Q,jsxs as Zo}from"react/jsx-runtime";var nm=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch{return t}},sm=({agentEmail:t,isOpen:e,origin:o="",onSuccess:n,onDismiss:s})=>{let r=E(Es),i=h("LoginTokenDialog",ra),a=om(ii),d=tm(),l=b("productName"),[c,u]=Rs(t||""),[p,m]=Rs(0),[g,f]=Rs(""),y=ia(async P=>{P.preventDefault(),d(li({email:c})),m(1)},[o,c]),k=()=>{f(""),m(0)},v=ia(async P=>{P.preventDefault();let x=nm(P.target.elements.token.value);if(!x){f(r("verifyCodeError",{login:S}));return}d(Ht({token:x}))},[o]),S=em(()=>P=>Q("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:k,children:P},"back-button"),[]);return Yp(()=>{a==="error"&&f(r("verifyCodeError",{login:S})),a==="done"&&n()},[a]),Q(Qo,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:l}),overlayAriaLabel:r("promptTitle",{productName:l}),onClose:s,onBack:s,children:Zo("div",{className:i.root,children:[Q("h1",{className:i.title,children:r("promptTitle",{productName:l})}),p===0&&Zo("form",{onSubmit:y,children:[Q("h2",{className:i.subtitle,children:r("requestCodeTitle")}),Q("p",{className:i.text,children:r("requestCodeBody",{productName:l})}),Q($t,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:c,onChange:P=>u(P.target.value)}),Q("div",{className:i.actions,children:Q("button",{type:"submit",className:ks(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),p===1&&Zo("form",{onSubmit:v,children:[Q("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),Q("p",{className:i.text,children:r("verifyCodeBody")}),Q($t,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),g&&Q("div",{className:i.errorMessage,children:g}),Zo("div",{className:i.actions,children:[Q("button",{type:"button",className:ks(i.button),onClick:k,children:r("back")}),Q("button",{type:"submit",className:ks(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},aa=sm;import{jsx as im}from"react/jsx-runtime";var rm=()=>{let t=la(ai),e=la(Ai),o=b("adminUrl"),n=oe(),s=()=>n.send(gt,!1),r=()=>{n.send(gt,!1),n.send(zt)};return im(aa,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:o,onDismiss:s,onSuccess:r})},da=rm;import sf from"lodash.debounce";import{Fragment as rf,useCallback as Qs,useEffect as Zs,useState as Js}from"react";import{useDispatch as af,useSelector as Qe}from"react-redux";import{createAsyncThunk as am,createSlice as lm}from"@reduxjs/toolkit";var dm={data:null,fetchState:"idle"},ca=t=>t.contentTypes.data,jt=am("contentTypes/getContentTypes",async(t,e)=>e.extra.deepdeskAPI.getContentTypes()),cm=lm({name:"contentTypes",initialState:dm,reducers:{},extraReducers:t=>{t.addCase(jt.pending,e=>{e.fetchState="loading"}).addCase(jt.rejected,e=>{e.fetchState="error"}).addCase(jt.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),ua=cm.reducer;function $e(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{useEffect as Na,useState as jm,useRef as Xm,useCallback as Qm}from"react";import{useState as mm}from"react";import Ps from"classnames";var ne={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",truncate:"dd-IlopJ",lineClamp:"dd-Twaca",listItemTitle:"dd-lMGHq",listItemAction:"dd-xPLAs",listItemPrimaryAction:"dd-LdJ8w",listItemSelected:"dd-jFX0Y",sources:"dd-pZx4v",sourcesTitle:"dd-phYVd",source:"dd-DaR6h",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 je={};j(je,{enUS:()=>um,nlNL:()=>pm});var um={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"}]},pm={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"}]};import{jsx as Xt,jsxs as fm}from"react/jsx-runtime";var gm=({src:t,title:e})=>{let o=h("CommandPalette",ne),[n,s]=mm("loading"),r=E(je);return fm("div",{className:o.image,children:[Xt("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:Ps(o.imageSrc,{[o.imageSrcHidden]:["loading","error"].includes(n)})}),n==="loading"&&Xt("span",{className:Ps(o.imageSrc,o.imageSrcStatus),children:r("loading")}),n==="error"&&Xt("span",{className:Ps(o.imageSrc,o.imageSrcStatus),children:Xt(vo,{})}),e&&Xt("span",{className:o.imageTitle,children:e})]})},pa=gm;import hm from"react";import ym from"classnames";import{jsx as Is,jsxs as ma}from"react/jsx-runtime";function Ls({children:t,heading:e,orientation:o,hasMore:n,onShowAll:s}){let r=E(je),i=h("CommandPalette",ne);return hm.Children.count(t)===0?null:ma("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||n)&&ma("div",{className:i.listHeader,children:[e&&Is("h4",{className:i.listHeading,children:e}),n&&s&&Is("button",{onClick:s,className:i.listMoreButton,type:"button",children:r("showAll")})]}),Is("div",{className:ym(i.listWrapper,o==="horizontal"&&i.listHorizontal),children:t})]})}import en from"classnames";import{Interweave as Bm}from"interweave";var vm=/[.*+?^${}()|[\]\\]/g,Sm=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function xm(t){return t.replace(vm,"\\$&")}function bm(t,e){let o=t.split("").findIndex((n,s)=>n!==e[s]);return o>-1?o:Math.min(t.length,e.length)}function Cm(t){return t.search(Sm)}function ga(t,e=[]){let o=t;return e.forEach(n=>{if(!n)return;let s=new RegExp(`\\b(${xm(n)})\\b`,"gi");o=o.replace(s,"<strong>$1</strong>")}),o}function fa(t){return t.replace(bo,'<mark data-type="placeholder">$1</mark>')}function Qt(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function wm(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 As(t,e,o={}){if(e){let n=bm(e.toLowerCase(),t.toLowerCase()),s=Qt(t.substring(n,t.length));if(o.stripAgentPart){let d=t.substring(0,n),l=Cm(d);return`<span style="opacity: 0.5">${d.substring(l+1)}</span>${s}`}let i=e.split(ti).length>3||e.length>30?wm(e.trim(),n):0;return`${`${i>0?"\u2026":""}${Qt(t.substring(i,n))}`}<strong>${s}</strong>`}return t}var Tm=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function Ms(t){return Tm.test(t)}function ha(t){let e=document.createElement("template");return e.innerHTML=t,e.content.textContent??""}import Em,{useState as ya,useEffect as va,useMemo as km,useRef as Sa,useCallback as Rm,useContext as Pm}from"react";import Im from"classnames";var Ns={root:"dd-uVyL0",trigger:"dd-KIzQa",content:"dd-Ly3zO",contentOpen:"dd-O-8fR",contentTop:"dd-q3fGa",contentBottom:"dd-SFrvc",item:"dd-HZNy-"};import{jsx as Jo,jsxs as Nm}from"react/jsx-runtime";var Lm=0,xa=Em.createContext(null),Am=()=>{let t=Pm(xa);if(!t)throw new Error("Invalid DropdownContext");return t},ba=({trigger:t,children:e,position:o="bottom"})=>{let n=km(()=>++Lm,[]),s=Sa(null),r=Sa(null),i=h("Dropdown",Ns),[a,d]=ya(!1),[l,c]=ya(o),u=m=>{m.preventDefault(),m.stopPropagation(),d(!a)},p=Rm(([m])=>{!m.isIntersecting&&a&&c(l==="top"?"bottom":"top")},[a]);return va(()=>{let m=g=>{s.current&&!s.current.contains(g.target)&&d(!1)};return document.addEventListener("click",m),()=>{document.removeEventListener("click",m)}},[]),va(()=>{if(!r.current&&!a)return()=>{};let m=new IntersectionObserver(p,{root:null,rootMargin:"0px",threshold:1});return r.current&&m.observe(r.current),()=>{r.current&&m.unobserve(r.current)}},[r,a]),Jo(xa.Provider,{value:{setIsOpen:d},children:Nm("div",{ref:s,className:i.root,children:[Jo("button",{id:`dropdown-${n}`,"data-testid":"dropdown-trigger","aria-haspopup":"true","aria-expanded":a,"aria-label":"Dropdown trigger",type:"button",className:i.trigger,onClick:u,children:t}),Jo("div",{"data-testid":"dropdown-content",ref:r,"aria-hidden":!a,"aria-labelledby":`dropdown-${n}`,className:Im(i.content,{[i.contentOpen]:a,[i.contentTop]:l==="top",[i.contentBottom]:l==="bottom"}),children:e})]})})};function Mm({as:t,children:e,onClick:o,...n}){let s=t||"button",r=h("Dropdown",Ns),{setIsOpen:i}=Am(),a=d=>{i(!1),o(d),d.stopPropagation()};return Jo(s,{type:"button",className:r.item,onClick:a,...n,children:e})}ba.Item=Mm;var Os=ba;import{jsx as Ca}from"react/jsx-runtime";var wa=t=>Ca("svg",{xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512",...t,children:Ca("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 Xe={};j(Xe,{enUS:()=>Om,nlNL:()=>Dm});var Om={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"}]},Dm={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{jsx as Ds}from"react/jsx-runtime";var _m="%0d%0a%0d%0a%0d%0a",Fm=(t,e)=>{let o=[`Suggestie: ${encodeURIComponent(e)}`,"Beschrijf je feedback:"];return`mailto:${t.join(",")}?subject=Suggestie feedback&body=${o.join(_m)}`},Hm=({suggestion:t,onFeedback:e})=>{let o=E(Xe),n=b("suggestionFeedbackEmailAddresses");return!n||n.length===0?null:Ds(Os,{trigger:Ds(wa,{"data-testid":"feedback-dropdown-trigger"}),children:Ds(Os.Item,{as:"a",href:Fm(n,t),onClick:e,children:o("giveFeedback")})})},Yo=Hm;import _s from"react";import{jsx as Km}from"react/jsx-runtime";var Ta=_s.createContext(void 0);function Oe(){let t=_s.useContext(Ta);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Ea=({children:t,page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r})=>{let i=_s.useMemo(()=>({page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r}),[o,e,s]);return Km(Ta.Provider,{value:i,children:t})};import{jsx as De,jsxs as Fs}from"react/jsx-runtime";function Hs({closeOnSelect:t=!0,lineClamp:e,children:o,onClick:n,onFeedback:s,extra:r,onSourceClick:i,description:a,sources:d,id:l,styles:c,...u}){let{selected:p,onChangeOpen:m}=Oe(),g=h("CommandPalette",ne);function f(y){n(y),t&&m(!1)}return Fs("div",{className:en(g.listItem,l===p&&g.listItemSelected),children:[De("button",{type:"button",className:en(g.listItemAction,g.listItemPrimaryAction),"aria-disabled":u.disabled??!1,onClick:f,"data-command-palette-item":!0,"data-item-id":l,...u,children:Fs("div",{className:g.listItemContent,children:[typeof o=="string"?De("p",{className:en(g.listItemText,g.truncate,c==null?void 0:c.title),children:o}):o,a&&De(Bm,{tagName:"p",allowList:[],content:Ms(a)?ha(a):a,className:en(g.listItemDescription,c==null?void 0:c.description,e?g.lineClamp:g.truncate)})]})}),r,s&&De("div",{className:g.listItemActions,children:De(Yo,{suggestion:String(o),onFeedback:s})}),d&&d.length>0&&Fs("div",{className:g.sources,children:[De("span",{className:g.sourcesTitle,children:"Sources"}),d.map(y=>y.url?De("a",{className:g.source,href:y.url,target:"_blank",title:y.url,rel:"noopener noreferrer",onClick:()=>i&&i(y),children:y.name},y.url):De("span",{className:g.source,children:y.name},y.name))]})]})}import{jsx as ka,jsxs as Um}from"react/jsx-runtime";var Ra=()=>Um("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[ka("title",{id:"angleLeftTitle",children:"AngleLeft"}),ka("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 Pa,jsxs as Ks}from"react/jsx-runtime";function Bs({children:t,title:e,id:o,onDismiss:n}){let s=E(je),r=h("CommandPalette",ne),{page:i}=Oe();return i!==o?null:Ks("div",{className:r.page,id:`page_${o}`,tabIndex:-1,children:[n&&Ks("div",{className:r.pageNav,children:[Ks("button",{className:r.pageBackButton,type:"button",onClick:n,children:[Pa(Ra,{}),s("back")]}),e&&Pa("h3",{className:r.pageTitle,children:e})]}),t]})}import{forwardRef as Vm}from"react";import{jsx as Ia,jsxs as zm}from"react/jsx-runtime";var ft=()=>zm("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[Ia("path",{d:"M0 0h24v24H0z",fill:"none"}),Ia("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 ht,jsxs as Us}from"react/jsx-runtime";function Wm({onChange:t,onChangeType:e,placeholder:o,typePlaceholder:n,types:s,value:r,selectedType:i},a){let d=h("CommandPalette",ne);return Us("div",{className:d.search,children:[ht("div",{className:d.searchIcon,children:ht(ft,{})}),Us("div",{className:d.searchInputWrapper,children:[ht("input",{ref:a,spellCheck:!1,autoComplete:"off",onChange:l=>{t(l.currentTarget.value)},onFocus:l=>{l.currentTarget.select()},className:d.searchInput,placeholder:o,value:r,type:"text",id:"command-palette-search-input",autoFocus:!0}),s&&s.length>0&&ht("div",{className:d.selectWrapper,children:Us("select",{"data-testid":"command-palette-type-select",className:d.select,onChange:l=>e(l.target.value===n?void 0:l.target.value),value:i||n,children:[n&&ht("option",{children:n}),s.map(l=>ht("option",{value:l.value,children:l.label},l.value))]})})]})]})}var La=Vm(Wm);import Aa from"classnames";import{jsx as Gm,jsxs as $m}from"react/jsx-runtime";var qm=({onClick:t,shortKeys:e,children:o,...n})=>{let s=h("CommandPalette",ne);return $m("button",{type:"button",...n,onClick:t,className:Aa(s.actionButton,n.className,{[s.hasShortKeys]:e&&e.length>0}),children:[o,e&&e.map(r=>Gm("span",{className:Aa(s.actionShortcut,r===8629&&s.actionShortcutFixKerning),children:typeof r=="number"?String.fromCharCode(r):r},r))]})},Ma=qm;import{jsx as Oa,jsxs as Jm}from"react/jsx-runtime";var Zm="[data-command-palette-item]";function yt({placeholder:t="Start typing to search...",typePlaceholder:e="All types",defaultPage:o="search",page:n,onChangePage:s,onChangeSearch:r,onChangeType:i,onChangeOpen:a,selectedType:d,types:l,children:c,isOpen:u,search:p}){let[m,g]=jm(),f=Xm(null),y=()=>{s&&s(o),i(void 0),r(""),a(!1)},k=()=>{var I;if(n!==o&&s){s(o);return}if(d&&i){i(void 0),(I=f.current)==null||I.focus();return}if(p.length>0){r("");return}a(!1)},v=()=>{let I=S();I.length!==0&&g(I[0].dataset.itemId)},S=()=>Array.from(document.querySelectorAll(Zm)||[]),P=I=>document.querySelector(`[data-item-id=${I}]`),x=I=>{let O=P(I);O&&g(O.dataset.itemId)},T=I=>{let O=P(I);O&&O.scrollIntoView({behavior:"smooth"})},N=()=>{if(!m)return;let I=S(),O=P(m);if(!O)return;let W=I.indexOf(O),te=I[W+1];te&&te.dataset.itemId?x(te.dataset.itemId):v()},V=()=>{if(!m)return;let I=S(),O=P(m);if(!O)return;let W=I.indexOf(O),te=I[W-1];te&&te.dataset.itemId?x(te.dataset.itemId):x(I[I.length-1].dataset.itemId)},H=Qm(I=>{switch(I.key){case"ArrowDown":{I.preventDefault(),N();break}case"ArrowUp":{I.preventDefault(),V();break}case"Enter":{if(m){let O=P(m);O==null||O.click()}break}}},[m]);return Na(()=>{v()},[p,n,d,u]),Na(()=>{m&&T(m)},[m]),Oa(Qo,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:u,onBack:k,onClose:y,onKeyDown:H,children:Jm(Ea,{selected:m,setSelected:g,isOpen:u,onChangeOpen:a,page:n,children:[n===o&&Oa(La,{ref:f,onChange:r,onChangeType:i,placeholder:t,value:p,selectedType:d,types:l,typePlaceholder:e}),c]})})}yt.Page=Bs;yt.List=Ls;yt.Image=pa;yt.ListItem=Hs;yt.Button=Ma;var D=yt;import{useEffect as Ym}from"react";function Da(t,e){Ym(()=>{let o=n=>{var s;((s=navigator==null?void 0:navigator.platform)!=null&&s.toLowerCase().includes("mac")?n.metaKey:n.ctrlKey)&&n.key===t&&(n.preventDefault(),n.stopPropagation(),e())};return document.addEventListener("keydown",o),()=>{document.removeEventListener("keydown",o)}},[])}import{useEffect as Ka,useRef as ig}from"react";import{useSelector as ag,useDispatch as lg}from"react-redux";import{createAsyncThunk as eg,createSlice as tg}from"@reduxjs/toolkit";var _a={data:null,fetchState:"idle"},tn=t=>{var r;let e=[],{visitorName:o}=t.info.visitorInfo??{},{agentName:n,agentNickname:s}=t.info.agentInfo??{};return n&&n!==o&&e.push(n),s&&s!==o&&e.push(s),((r=t.entities.data)==null?void 0:r.filter(i=>!e.includes(i.text)))??null},ae=eg("entities/getEntities",async(t,e)=>{let{deepdeskAPI:o,dynamicThunkObject:n}=e.extra;if(!n.conversationQuery)return Promise.resolve([]);let s=n.conversationQuery,r=await s();return r.length===0?Promise.resolve([]):o.getEntities(r)}),og=t=>t.filter((e,o)=>o===t.findIndex(n=>n.text===e.text)),ng=tg({name:"entities",initialState:_a,reducers:{},extraReducers:t=>{t.addCase(ae.pending,e=>{e.fetchState="loading"}).addCase(ae.rejected,e=>{e.fetchState="error"}).addCase(ae.fulfilled,(e,o)=>{e.fetchState="done",e.data=og(e.data?[...e.data,...o.payload]:o.payload)}).addCase(M,()=>_a)}}),Fa=ng.reducer;var zs={};j(zs,{enUS:()=>sg,nlNL:()=>rg});var sg={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},rg={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var Ha={root:"dd-TYTKs",empty:"dd-AU7uT"};import{jsx as Vs,jsxs as cg}from"react/jsx-runtime";var dg=({onCopy:t})=>{let e=ig(null),o=h("EntitiesList",Ha),n=ag(tn),{setSelected:s}=Oe(),r=E(zs),i=lg();return Ka(()=>{i(ae())},[]),Ka(()=>{e.current&&(e.current.focus(),s("entity-0"))},[e]),cg("div",{className:o.root,ref:e,tabIndex:-1,children:[n&&n.length>0&&Vs(D.List,{children:n.map((a,d)=>Vs(D.ListItem,{id:`entity-${d}`,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities"),n&&n.length===0&&Vs("p",{className:o.empty,children:r("noResults")})]})},Ba=dg;import{Fragment as wg,useEffect as an,useRef as Tg,useState as Eg}from"react";import{useSelector as Gs,useDispatch as kg}from"react-redux";import{createAsyncThunk as ug,createSlice as pg}from"@reduxjs/toolkit";var Ua={data:null,fetchState:"idle"},za=t=>t.summary.data,Va=t=>t.summary.fetchState==="error",Wa=t=>t.summary.model,be=ug("summary/getSummary",async(t,e)=>{var c,u,p;let o=e.getState().profile.data,n=(c=e.getState().conversation.current)==null?void 0:c.sessionId,s=(p=(u=e.getState().info)==null?void 0:u.agentInfo)==null?void 0:p.agentId;if(!o)throw new Error("Profile is not defined");let{deepdeskAPI:r,dynamicThunkObject:i}=e.extra;if(!i.conversationQuery)return Promise.reject(new Error("setConversationQuery method is not defined"));let a=i.conversationQuery,d=await a();if(d.length===0)return Promise.reject(new Error("No messages are included"));let l=await r.getSummary(d,{externalConversationId:n,agentId:s,promptInstruction:o.summarizerPromptInstruction,model:o.summarizerModel});return l.summary?l:Promise.reject(new Error("Summary is not provided"))}),mg=pg({name:"summary",initialState:Ua,reducers:{},extraReducers:t=>{t.addCase(be.pending,e=>{e.data=null,e.fetchState="loading"}).addCase(be.rejected,e=>{e.data=null,e.fetchState="error"}).addCase(be.fulfilled,(e,o)=>{e.fetchState="done",o.payload&&(e.data=o.payload.summary,e.model=o.payload.model)}).addCase(M,()=>Ua)}}),qa=mg.reducer;var Ws={};j(Ws,{enUS:()=>gg,nlNL:()=>fg});var gg={copy:[{type:0,value:"Copy"}],error:[{type:0,value:"Could not generate a summary"}],loading:[{type:0,value:"Generating summary, this may take a few moments."}]},fg={copy:[{type:0,value:"Kopieer"}],error:[{type:0,value:"Kon helaas geen samenvatting genereren."}],loading:[{type:0,value:"Samenvatting wordt gemaakt, dit kan even duren."}]};var Ga={root:"dd-60NZr",actions:"dd-No1g3",main:"dd-l-xEF",textInput:"dd-nAaiV",loading:"dd-ciFNi",error:"dd-yNp2D"};import Za from"classnames";import{useState as xg}from"react";import{jsx as $a}from"react/jsx-runtime";var on=t=>$a("svg",{width:"16",height:"16",fill:"#000000",...t,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:$a("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 ja}from"react/jsx-runtime";var nn=t=>ja("svg",{width:"16",height:"16",fill:"#000000",...t,viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:ja("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 Ce(t,e){var n;let o=t.cloneNode(!0);o.style.top=`${t.offsetTop}px`,o.style.left=`${t.offsetLeft}px`,o.style.position="absolute",o.classList.add(e),o.addEventListener("animationend",()=>o.remove()),(n=t.parentElement)==null||n.appendChild(o)}var qs={};j(qs,{enUS:()=>hg,nlNL:()=>yg});var hg={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},yg={thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};import{useDispatch as Sg}from"react-redux";import{createAsyncThunk as vg}from"@reduxjs/toolkit";function Xa(t){return vg("analytics/logEvent",(e,o)=>{var r,i,a;let n=(i=(r=o.getState())==null?void 0:r.conversation.current)==null?void 0:i.id,s=(a=o.getState())==null?void 0:a.info.agentInfo;return o.extra.deepdeskAPI.sendEvent(e.name,{conversationId:n,...s,data:e.data})})(t)}function vt(){let t=Sg();return async(e,o)=>{await t(Xa({name:e,data:o}))}}var Qa={thumbs:"dd-5F1zq",fadeup:"dd-eTmY-",fadedown:"dd-sS85z",selected:"dd-rid-f",thumbsUp:"dd-4poEf",thumbsDown:"dd-3KozS"};import{jsx as sn,jsxs as Cg}from"react/jsx-runtime";var bg=({eventName:t,eventData:e})=>{let o=h("FeedbackThumbs",Qa),n=E(qs),s=vt(),[r,i]=xg(null),a=l=>{l.preventDefault(),l.stopPropagation(),Ce(l.target,o.fadeup),i("up"),s(t,{...e,rating:"up"})},d=l=>{l.preventDefault(),l.stopPropagation(),Ce(l.target,o.fadedown),i("down"),s(t,{...e,rating:"down"})};return Cg("div",{className:o.thumbs,children:[sn(A.IconButton,{title:n("thumbsUp"),onClick:a,icon:sn(nn,{}),className:Za(o.thumbsUp,r==="up"&&o.selected),disabled:!!r}),sn(A.IconButton,{title:n("thumbsDown"),onClick:d,icon:sn(on,{}),className:Za(o.thumbsDown,r==="down"&&o.selected),disabled:!!r})]})},rn=bg;import{jsx as St,jsxs as Ja}from"react/jsx-runtime";var Rg=({onCopy:t})=>{let e=Tg(null),o=h("SummaryForm",Ga),[n,s]=Eg(""),r=E(Ws),i=Gs(Wa),a=Gs(za),d=Gs(Va),l=kg(),c=()=>{l(G({name:"summary copied to clipboard",data:{originalText:a,finalText:n,model:i},options:{includeConversationData:!0}})),t(n)},u=()=>{let p=document.getSelection();p&&l(G({name:"summary copied to clipboard",data:{originalText:a,finalText:p==null?void 0:p.toString(),model:i},options:{includeConversationData:!0}}))};return an(()=>{l(be())},[]),an(()=>{s(a||"")},[a]),an(()=>{e.current&&a&&e.current.focus()},[e,a]),an(()=>{let p=m=>{m.key==="Enter"&&m.shiftKey&&c()};return document.addEventListener("keydown",p),()=>{document.removeEventListener("keydown",p)}},[n]),St("div",{className:o.root,tabIndex:-1,children:d?St("p",{className:o.error,children:r("error")}):Ja(wg,{children:[St("div",{className:o.main,children:St("textarea",{placeholder:a?void 0:r("loading"),disabled:!a,className:o.textInput,ref:e,value:n,onCopy:u,onChange:p=>s(p.target.value)})}),Ja("div",{className:o.actions,children:[St(rn,{eventName:"summary feedback",eventData:{summary:a}}),St(D.Button,{shortKeys:[8679,8629],onClick:c,children:r("copy")})]})]})})},Ya=Rg;var Zt={};j(Zt,{enUS:()=>Pg,nlNL:()=>Ig});var Pg={personalCollectionLink:[{type:0,value:"Go to Personal Collection"}],searchPlaceholder:[{type:0,value:"Start typing to search..."}],urlSuggestions:[{type:0,value:"Link 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"}],summaryClipboard:[{type:0,value:"Summarize conversation"}],summaryTitle:[{type:0,value:"Conversation summary"}],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?"}]},Ig={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:"Link 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"}],summaryClipboard:[{type:0,value:"Gesprek samenvatten"}],summaryTitle:[{type:0,value:"Gesprek samenvatting"}],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 Ug,{useEffect as Xs,useRef as zg}from"react";import{useDispatch as Vg,useSelector as ll}from"react-redux";var $s={};j($s,{enUS:()=>Lg,nlNL:()=>Ag});var Lg={use:[{type:0,value:"Use"}],loading:[{type:0,value:"Loading..."}],error:[{type:0,value:"Something went wrong, please try again later."}],anotherQuestion:[{type:0,value:"Send a message..."}],reset:[{type:0,value:"Reset conversation"}]},Ag={use:[{type:0,value:"Gebruik"}],loading:[{type:0,value:"Laden..."}],error:[{type:0,value:"Er ging iets mis, probeer het later opnieuw."}],anotherQuestion:[{type:0,value:"Stuur een bericht..."}],reset:[{type:0,value:"Reset gesprek"}]};var el={root:"dd-fxP4c",title:"dd-vDbMh",empty:"dd-sB0lz",status:"dd--oZ1C",form:"dd-t0hnD",input:"dd-i1v3W",submit:"dd-oo2Oa",question:"dd-WvK17",answer:"dd-HAHcU",alignRight:"dd-oxrX3",listItemFeedback:"dd-POUal"};import{createAction as _g,createAsyncThunk as Fg,createSlice as Hg}from"@reduxjs/toolkit";import{createAsyncThunk as Mg,createSlice as Ng}from"@reduxjs/toolkit";var Og={data:null,fetchState:"idle"},tl=t=>{var e;return(e=t.knowledgeAssistant)==null?void 0:e.data},Jt=Mg("knowledgeAssistant/getKnowledgeAssistant",async(t,e)=>{var i;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=n.conversation.current;if(!s||!s.profileCode)throw new Error("No conversation of conversation profileCode found");let r=(i=n.profile.data)==null?void 0:i.knowledgeAssistant;return r?o.getKnowledgeAssistant(r):null}),Dg=Ng({name:"knowledgeAssistant",initialState:Og,reducers:{},extraReducers:t=>{t.addCase(Jt.pending,e=>{e.fetchState="loading"}).addCase(Jt.rejected,e=>{e.fetchState="error"}).addCase(Jt.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),ol=Dg.reducer;var js={data:[],fetchState:"idle"},nl=t=>{var e;return(e=t.answer)==null?void 0:e.data},sl=t=>t.answer.fetchState,bt=_g("answer/resetKnowledgeSearch"),xt=Fg("answer/getAnswer",async(t,e)=>{var d,l,c;let{deepdeskAPI:o}=e.extra,n=e.getState().answer.data,s=tl(e.getState()),r=(d=e.getState().conversation.current)==null?void 0:d.sessionId,i=(c=(l=e.getState().info)==null?void 0:l.agentInfo)==null?void 0:c.agentId;if(!s)throw new Error("KnowledgeAssistant is not defined");let a=await o.knowledgeAssist({customerInstruction:s.customerInstruction,doNotKnowAnswer:s.doNotKnowAnswer,question:t},n,s.code,{agentId:i,conversationId:r});return{question:t,answer:a}}),Kg=Hg({name:"answer",initialState:js,reducers:{},extraReducers:t=>{t.addCase(xt.pending,e=>{e.fetchState="loading"}).addCase(xt.rejected,e=>{e.fetchState="error"}).addCase(xt.fulfilled,(e,o)=>{e.fetchState="done",e.data=[...e.data,o.payload]}).addCase(M,()=>js).addCase(bt,()=>js)}}),rl=Kg.reducer;import{jsx as il,jsxs as Bg}from"react/jsx-runtime";var al=()=>Bg("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 512 512","aria-labelledby":"paperPlaneTitle",children:[il("title",{id:"paperPlaneTitle",children:"PaperPlane"}),il("path",{d:"M498.1 5.6c10.1 7 15.4 19.1 13.5 31.2l-64 416c-1.5 9.7-7.4 18.2-16 23s-18.9 5.4-28 1.6L284 427.7l-68.5 74.1c-8.9 9.7-22.9 12.9-35.2 8.1S160 493.2 160 480V396.4c0-4 1.5-7.8 4.2-10.7L331.8 202.8c5.8-6.3 5.6-16-.4-22s-15.7-6.4-22-.7L106 360.8 17.7 316.6C7.1 311.3 .3 300.7 0 288.9s5.9-22.8 16.1-28.7l448-256c10.7-6.1 23.9-5.5 34 1.4z"})]});import{jsx as le,jsxs as dl}from"react/jsx-runtime";var Wg=({onUse:t,onResetQuestion:e,question:o})=>{let[n,s]=Ug.useState(""),{setSelected:r}=Oe(),i=zg(null),a=h("KnowledgeSearchStyles",el),d=E($s),l=Vg(),c=ll(nl),u=ll(sl),p=async g=>{g.preventDefault(),g.stopPropagation(),n!==""&&l(xt(n))},m=(g,f)=>{l(G({name:"knowledge assist source viewed",data:{question:f,sourceViewed:g.url||g.name},options:{includeConversationData:!0}}))};return Xs(()=>{var g;o&&u==="idle"?l(xt(o)):(g=i.current)==null||g.focus()},[i,u]),Xs(()=>{u==="done"&&(l(G({name:"knowledge assist question answered",data:{question:n||o,sources:c[c.length-1].answer.sources,answer:c[c.length-1].answer.answer,isFollowUpQuestion:c.length>1},options:{includeConversationData:!0}})),r(`knowledge-assist-${c.length-1}`),s(""))},[u,c]),Xs(()=>{i.current&&i.current.scrollIntoView({behavior:"smooth"})},[i,c]),dl("div",{className:a.root,children:[c.length>0&&le("div",{className:a.alignRight,children:le(D.Button,{onClick:e,children:d("reset")})}),c.map(({question:g,answer:f},y)=>le(D.List,{children:le(D.ListItem,{id:`knowledge-assist-${y}`,"data-testid":"knowledge-search-answer",description:f.answer,closeOnSelect:!0,onClick:()=>t(f.answer),onSourceClick:k=>m(k,g),sources:f.sources,styles:{title:a.question,description:a.answer},extra:le("div",{className:a.listItemFeedback,children:le(rn,{eventName:"knowledge assist feedback",eventData:{question:g,isAgent:o!==g,isFollowUpQuestion:c.length>1,...f}})}),children:g})},`${f.answer}_${y}`)),u==="loading"&&le("p",{className:a.status,children:d("loading")}),u==="error"&&le("p",{className:a.status,children:d("error")}),dl("form",{className:a.form,onSubmit:p,children:[le("input",{ref:i,placeholder:d("anotherQuestion"),className:a.input,type:"text",value:n,onFocus:()=>{r(void 0)},onChange:g=>{r(void 0),s(g.target.value)}}),le("button",{type:"submit",className:a.submit,children:le(al,{})})]})]})},cl=Wg;import{createAsyncThunk as qg,createSlice as Gg}from"@reduxjs/toolkit";var $g={data:null,fetchState:"idle"},we=t=>t.profile.data,ln=t=>t.profile.data?t.profile.data.uiConfig.widget.types.filter(e=>e.isActive):[],ul=t=>t.profile.data?!!t.profile.data.uiConfig.widget.types.find(e=>e.type==="custom-data"):!1,Yt=qg("profile/getProfile",async(t,e)=>{var r;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=n.conversation.current;if(!s||!s.profileCode)throw new Error("No conversation of conversation profileCode found");return((r=n.profile.data)==null?void 0:r.code)===s.profileCode?n.profile.data:o.getProfile(s.profileCode)}),jg=Gg({name:"profile",initialState:$g,reducers:{},extraReducers:t=>{t.addCase(Yt.pending,e=>{e.fetchState="loading"}).addCase(Yt.rejected,e=>{e.fetchState="error"}).addCase(Yt.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),pl=jg.reducer;import{useEffect as Yg}from"react";import{useDispatch as ef}from"react-redux";import{createAction as Zg,createAsyncThunk as hl,createSlice as Jg}from"@reduxjs/toolkit";var Xg=["{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}"],Qg=new RegExp(Xg.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function ml(t,e){let o=t.split(Qg),n=0,s=[];for(let r=0;r<o.length;r++){let i=o[r];if(s.push(i),r===o.length-1)break;if(e.indexOf(i)===-1)return t;let a=o[r+1],d=r===o.length-2;n+=i.length;let l=n;if(d){let u=a.charAt(0),p=0;do l=u?e.indexOf(u,l+1):-1,p+=1;while(l!==-1&&a.indexOf(e.slice(l))!==0);if(l===-1&&p>2)return t}else l=a&&a!==""?e.indexOf(a,n):-1;let c=l===-1?e.slice(n):e.slice(n,l);s.push(c),n=l}return s.join("")}function gl(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var yl={suggestions:[],fetchState:"idle"},fl={default:yl},vl=t=>e=>{var o;return((o=e.textSuggestions[t])==null?void 0:o.suggestions)??[]},dn=t=>t.textSuggestions,Sl=t=>{let e=t.toLowerCase();return o=>{let n=o.text.toLowerCase();return n.startsWith(e)&&n.length>e.length}},cn=Zg("textSuggestions/refresh"),de=hl("textSuggestions/recommendations",async(t,e)=>{var l;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(l=n.conversation.current)==null?void 0:l.id,{textSuggestionsCount:r,inlineSuggestions:i}=n.settings,a=mt(n);if(!s)throw new Error("No current conversation to fetch text suggestions");let d=await o.getTextSuggestions(s,Ut(n),t);if(t==="default"){let c=i?d.filter(Sl(a)):d;e.dispatch(ue(c.slice(0,r)))}return d}),eo=hl("textSuggestions/autocompletions",async(t,e)=>{var l;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(l=n.conversation.current)==null?void 0:l.id,{textSuggestionsCount:r,deanonymize:i,inlineSuggestions:a}=n.settings;if(!s)throw new Error("No current conversation to fetch text suggestions");let d=await o.getAutocompleteSuggestions(s,{...Ut(n),input:t});if(!e.getState().input.text)throw new Error("Abort");return a&&(d=d.filter(Sl(t))),i&&(d=d.map(c=>({...c,text:c.source!=="trie-with-typos"?ml(c.text,t):c.text}))),d=gl(d,r),e.dispatch(ue(d)),d}),xl=Jg({name:"textSuggestions",initialState:fl,reducers:{setTextSuggestions:{reducer(t,e){let{contentType:o}=e.payload;t[o].fetchState="done",t[o].suggestions=e.payload.suggestions},prepare(t,e){return{payload:{contentType:t,suggestions:e}}}},setSuggestionState(t,e){return e.payload}},extraReducers:t=>{t.addCase(de.pending,(e,o)=>{let n=o.meta.arg,s=e[n]||yl;return{...e,[n]:{...s,fetchState:"loading"}}}).addCase(de.rejected,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="error")}).addCase(de.fulfilled,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="done",e[n].suggestions=o.payload)}).addCase(eo.pending,e=>{e.default.fetchState="loading"}).addCase(eo.rejected,e=>{e.default.fetchState="error"}).addCase(eo.fulfilled,(e,o)=>{e.default.fetchState="done",e.default.suggestions=o.payload}).addCase(M,()=>fl)}}),{setTextSuggestions:rE,setSuggestionState:iE}=xl.actions,bl=xl.reducer;import{useSelector as Cl}from"react-redux";import{jsx as un,jsxs as of}from"react/jsx-runtime";var tf=({commands:t,onClick:e})=>{var a,d,l;let o=ef(),n=E(Zt),s=Cl(we),r=Cl(dn),i=((l=(d=(a=s==null?void 0:s.uiConfig)==null?void 0:a.search)==null?void 0:d.initialTypes)==null?void 0:l.filter(({isActive:c})=>c))||[];return Yg(()=>{i.forEach(({type:c})=>{(!r[c]||r[c].suggestions.length===0)&&o(de(c))})},[]),of("div",{children:[t.length>0&&un(D.List,{heading:n("commands"),children:t.map((c,u)=>un(D.ListItem,{id:`command-${u}`,closeOnSelect:!1,onClick:c.onClick,children:c.label},c.label))}),i.map(({type:c,title:u})=>{var p;return un(D.List,{heading:u,orientation:"vertical",children:(p=r[c])==null?void 0:p.suggestions.map((m,g)=>un(D.ListItem,{id:`${c}-${g}`,closeOnSelect:!1,description:m.text,onClick:()=>e(m.text,m),"data-testid":"search-overlay-suggestion",children:m.title},`${m.id}-${m.text}`))},c)})]})},wl=tf;import{jsx as se,jsxs as Ys}from"react/jsx-runtime";var lf=200,df=5,cf=4,Tl=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),uf=()=>{let t=af(),e=oe(),o=E(Zt),[n,s]=Js(!1),[r,i]=Js(""),a=Qe(Hi),d=Qe(we),[l,c]=Js(),u=Qe(X),p=b("showSearch"),m=b("showEntitiesCommand"),g=b("showSummaryCommand"),f=b("showKnowledgeSearch"),y=b("showImageSearch"),k=b("searchTriggerKey"),v=Qe(ca),S=Qe(Ki),P=Qe(Bi),x=Qe(Fi),T=w=>Xn(S.filter(q=>q.type===w.toUpperCase()),w),N=[{value:"PERSONAL",label:o("personalSuggestions"),list:T("PERSONAL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"URL",label:o("urlSuggestions"),list:T("URL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"STICKYMESSAGE",label:o("pinnedMessages"),list:T("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"IMAGE",label:o("imageSuggestions"),lineClamp:!1,list:T("IMAGE"),listOrientation:"horizontal",shouldShow:y}].filter(w=>w.shouldShow),V=[{label:o("entitiesClipboard"),onClick:()=>t(re("entities")),shouldShow:m&&Tl(o("entitiesClipboard"),r)},{label:o("summaryClipboard"),onClick:()=>t(re("summary")),shouldShow:g&&Tl(o("summaryClipboard"),r)},{label:r?`${o("knowledgeAssist")}: ${r}`:o("knowledgeAssist"),onClick:()=>t(re("knowledgeAssist")),shouldShow:f}].filter(w=>w.shouldShow),H=(v==null?void 0:v.map(w=>({value:w.code.toUpperCase(),label:`${w.name}s`,list:T(w.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[],I=Qs(sf((w,q)=>{t(We({query:w,type:q,tags:["search-overlay"],size:l?50:20}))},lf),[l]),O=Qs((w,q)=>{switch(q.type){case"IMAGE":e.send(hs,{suggestion:q});break;default:e.send(Ne,{text:w,suggestion:q})}t(Y(!1))},[t]),W=w=>{$e(w.text),t(G({name:"entity copied",data:{entity:w,type:"copy"}})),t(Y(!1))},te=Qs(w=>{t(G({name:"suggestion feedback",data:{text:w.text,source:"search",context:r},options:{includeConversationData:!0}}))},[r]),hu=w=>{e.send(Ne,{text:w,suggestion:{source:"knowledge-assist",text:w}}),t(G({name:"answer used",data:{originalText:w},options:{includeConversationData:!0}})),i(""),t(re("search")),t(bt()),t(Y(!1))},yu=w=>{$e(w),t(Y(!1))};function Xn(w,q){return w.slice(0,l?10:q.toLowerCase()==="image"?cf:df)}function Dt(w){return q=>{n?window.confirm(o("warning"))&&(w(q),s(!1)):w(q)}}return Zs(()=>{r?I(r,l):t(_o())},[r,l]),Zs(()=>{a==="search"&&t(bt())},[a]),Zs(()=>{u&&t(jt())},[u]),Da(k,()=>t(Y(!0))),!p||!d?null:Ys(D,{placeholder:o("searchPlaceholder"),typePlaceholder:o("typePlaceholder"),onChangeSearch:i,onChangeOpen:Dt(w=>t(Y(w))),onChangeType:w=>c(w),onChangePage:Dt(w=>t(re(w))),selectedType:l,search:r,page:a,isOpen:x,types:[...H,...N],children:[Ys(D.Page,{id:"search",children:[r.length===0&&se(wl,{commands:V,onClick:O}),r.length>0&&Ys(rf,{children:[V.length>0&&se(D.List,{heading:o("commands"),children:V.map((w,q)=>se(D.ListItem,{closeOnSelect:!1,onClick:w.onClick,id:`commands-${q}`,children:w.label},w.label))}),[...H,...N].map(({value:w,label:q,list:Vr,lineClamp:vu,listOrientation:Su})=>se(D.List,{heading:q,orientation:Su==="horizontal"?"horizontal":"vertical",onShowAll:()=>c(w),hasMore:!l&&P[w.toLowerCase()]>Xn(Vr,w).length,children:Xn(Vr,w).map(Z=>se(D.ListItem,{id:`${w}-${Z.id}`,closeOnSelect:!1,lineClamp:vu,onClick:()=>O(Z.text,Z),description:w!=="IMAGE"?Z.title&&Z.text:void 0,onFeedback:w!=="IMAGE"?()=>te(Z):void 0,children:w==="IMAGE"?se(D.Image,{title:Z.title||Z.text,src:Z.image}):Z.title||Z.text},`${Z.id}-${Z.text}`))},w))]})]}),se(D.Page,{id:"entities",title:o("entitiesTitle"),onDismiss:Dt(()=>{t(re("search"))}),children:se(Ba,{onCopy:W})}),se(D.Page,{id:"summary",title:o("summaryTitle"),onDismiss:Dt(()=>{t(re("search"))}),children:se(Ya,{onCopy:yu})}),se(D.Page,{id:"knowledgeAssist",title:o("knowledgeAssist"),onDismiss:Dt(()=>{t(bt()),t(re("search"))}),children:se(cl,{question:r,onUse:hu,onResetQuestion:()=>{t(bt()),i("")}})})]})},El=uf;import{jsx as kl,jsxs as gf}from"react/jsx-runtime";var mf=()=>{let t=b("showSearch"),e=b("isEmbedded");return gf(pf,{children:[t&&kl(El,{}),e&&kl(da,{})]})},Rl=mf;import vf from"classnames";import{useSelector as Sf}from"react-redux";import{jsx as er}from"react/jsx-runtime";var Pl=({className:t})=>er("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:er("g",{children:er("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
|
|
4
4
|
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
|
|
5
5
|
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
|
|
6
6
|
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
|
|
7
|
-
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 Il}from"react/jsx-runtime";var Mf={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},Ll=({className:t,color:e})=>Il("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Il("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:Mf[e||"pink"]})});var Al={root:"q",text:"C",isLoggedIn:"si",isLoggedOut:"po",icon:"ci",logo:"xi",lock:"fi"};var tr={};q(tr,{enUS:()=>Of,nlNL:()=>Df});var Of={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},Df={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as Hf}from"react-redux";import{jsx as or,jsxs as Ml}from"react/jsx-runtime";var Nl=({onLogIn:t})=>{let e=E(tr),o=b("floatingMenu"),n=b("productName"),s=Hf(),r=Ff(X),i=h("FloatingMenu",Al);if(r===null||o===!1)return null;let a=()=>{r===!0?s(Y(!0)):t()};return Ml("button",{className:_f(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[or("div",{className:i.text,children:e(r?"search":"signin",{productName:n})}),Ml("div",{className:i.icon,children:[or(Ll,{className:i.logo,color:"pink"}),r===!1&&or(Pl,{className:i.lock})]})]})};import{useEffect as ih,useRef as ah}from"react";import{connect as lh,useDispatch as ch,useSelector as fn}from"react-redux";import{useEffect as Bf}from"react";function Ct(t){Bf(()=>{let e=o=>{o.isWithinRoot||t(o)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function Qe(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}function wt(t){let{showMidSentenceSuggestions:e,showSuggestionsBeforePattern:o,showSuggestionsAfterPattern:n}=t.settings,{text:s,selection:r}=t.input.userCommitted;return r.start!==r.end?!1:r.end>=s.length?!0:e?o&&new RegExp(o).test(s.substring(r.end))||n&&new RegExp(n).test(s.substring(0,r.end))?!0:o===!1&&n===!1:!1}import{createSlice as Kf}from"@reduxjs/toolkit";var Uf={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1};var pn=({ui:t})=>t.overlayCollapsed;var Ol=Kf({name:"ui",initialState:Uf,reducers:{setShowTabHint(t,e){t.showTabHint=e.payload},setInputHasFocus(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:to,setInputHasFocus:nr,setOverlayCollapsed:_e,setOpenOverlayWhenTyping:Dl,setOverlayCollapsedUserOverwrite:_l}=Ol.actions,Fl=Ol.reducer;import{Fragment as oh,useMemo as nh}from"react";import{Interweave as Wf}from"interweave";import{useEffect as Gf,useMemo as jf,useRef as qf}from"react";import{useDispatch as Xf,useSelector as Zf}from"react-redux";import{useEffect as zf}from"react";function Hl(t,e,o){zf(()=>{let n=t.current;return n?(n.addEventListener(e,o),()=>{n.removeEventListener(e,o)}):()=>{}},[t,e,o])}var Bl={root:"gi",actions:"bi",badge:"mi",formattedText:"do"};import{jsx as mn,jsxs as th}from"react/jsx-runtime";var Qf=["search","personal-collection-search","search-autocomplete"];function Jf(t,e,o,n={}){let s="";return Qf.includes(e)?s=ga(As(t,o,{stripAgentPart:!0}),n.searchKeywords??[o]):s=As(t,o,n),n.placeholders===!0&&(s=fa(s)),s}var Yf=()=>{},eh=({index:t,selected:e,suggestion:o,onFeedback:n})=>{let s=b("inlineSuggestions"),r=Zf(mt),i=Xf(),a=h("TextSuggestion",Bl),c=qf(null);Gf(()=>{let d=setTimeout(()=>{i(Ci({text:o.text,suggestion:o}))},500);return()=>{clearTimeout(d)}},[o]),Hl(c,"click",()=>{i(Me(t)),i(me({suggestion:o,text:o.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let l=jf(()=>Jf(o.text,o.source,r,{stripAgentPart:s,placeholders:!0,searchKeywords:o.searchKeywords}),[s,o.text,o.source,r,o.searchKeywords]);return o.source==="gpt"&&!s?null:th("div",{className:a.root,onMouseEnter:()=>i(Me(t)),children:[mn(A,{ref:c,as:"button","data-testid":"suggestions-overlay-item",selected:e,onClick:Yf,children:mn(Wf,{containerTagName:"div",noWrap:!1,tagName:"span",className:a.formattedText,content:l})}),e&&n&&mn("div",{className:a.actions,children:mn(Yo,{onFeedback:()=>n(o),suggestion:o.text})})]})},Kl=eh;import{jsx as Ul}from"react/jsx-runtime";var sh=({onFeedback:t,suggestions:e,selectedIndex:o,reverse:n})=>{let s=nh(()=>{let r=e.map((i,a)=>Ul(Kl,{index:a,selected:a===o,suggestion:i,onFeedback:t},`${i.text}-${i.source}`));return n?r.reverse():r},[e,o,n]);return Ul(oh,{children:s})},gn=sh;var zl={root:"hi",paper:"ui"};import{jsx as hn}from"react/jsx-runtime";var dh=({textSuggestions:t,selectedIndex:e})=>{let o=ah(null),n=h("InlineSuggestionsOverlay",zl),s=fn(wt),r=ch(),i=fn(X),a=fn(ut),c=fn(pn),l=b("showTextSuggestions");return Ct(()=>{setTimeout(()=>{r(_e({collapse:!0,skipWhenInputFocus:!0}))})}),ih(()=>{let d=o.current;if(!d||!d.parentElement)return;d.parentElement.style.left="0px";let u=d.getBoundingClientRect();d.parentElement.style.left=`${Math.min(window.innerWidth-4-u.right,0)}px`}),c||!s||!l||t.length===0||i!==!0||a===!1?null:hn("div",{className:n.root,"data-variant":"inline",children:hn("div",{ref:o,className:n.paper,children:hn(J,{children:hn(gn,{suggestions:t,selectedIndex:e})})})})},uh=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),Vl=lh(uh)(dh);import{Provider as ph}from"react-redux";import{jsx as yn}from"react/jsx-runtime";var mh=({children:t})=>{let o=b("locale").replace("-","");return yn(Ts.Provider,{value:o,children:t})},gh=({store:t,customStyles:e={},children:o})=>yn(ph,{store:t,children:yn(mh,{children:yn(_t.Provider,{value:e,children:o})})}),Je=gh;import lr from"classnames";import{useEffect as Ih,useRef as Lh,useState as Ah}from"react";import{connect as Mh,useDispatch as Nh,useSelector as oo}from"react-redux";import{useState as fh}from"react";function $l(t,e){let[o,n]=fh(()=>{if(typeof window>"u")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return C.error(r),e}});return[o,r=>{try{let i=r instanceof Function?r(o):r;n(i),typeof window<"u"&&window.localStorage.setItem(t,JSON.stringify(i))}catch(i){C.error(i)}}]}var Wl=()=>/Mac/i.test(navigator.platform);import Sh from"classnames";import{Fragment as xh,useCallback as rr,useMemo as jl}from"react";var sr={};q(sr,{enUS:()=>hh,nlNL:()=>yh});var hh={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"}]}]},yh={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 Gl={root:"yi",anchor:"wi",anchorButton:"vi"};import{jsx as vn,jsxs as ql}from"react/jsx-runtime";var ir=(t,e,o)=>n=>vn("button",{className:t.anchorButton,type:"button",value:e,onClick:o,children:n},e),bh=({className:t,loginUrl:e,isEmbedded:o,onSnooze:n,onLogIn:s})=>{let r=E(sr),i=oe(),a=h("Login",Gl),c=b("productName"),l=rr(y=>{y.preventDefault(),n&&n(parseInt(y.target.value,10))},[]),d=rr(y=>{y.preventDefault(),i.send(gt,!0)},[e]),u=jl(()=>y=>vn("a",{onClick:v=>{v.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:y},"login"),[e]),p=rr(y=>vn("button",{type:"button",className:a.anchorButton,onClick:d,children:y},"prompt"),[d]),{min:m,hour:g,day:f}=jl(()=>({min:ir(a,60*10,l),hour:ir(a,60*60,l),day:ir(a,60*60*12,l)}),[]);return ql("div",{className:Sh(t,a.root),children:[r("loginPlease",{login:o?p:u,productName:c}),n&&ql(xh,{children:[vn("br",{}),r("snooze",{min:m,hour:g,day:f})]})]})},Sn=bh;import{useDispatch as wh}from"react-redux";var Xl={root:"lo",text:"ki"};import{jsx as Zl,jsxs as Eh}from"react/jsx-runtime";var Th=({title:t})=>{let e=h("SearchTrigger",Xl),o=wh();return Eh("button",{type:"button",className:e.root,onClick:()=>o(Y(!0)),children:[Zl(ft,{}),Zl("span",{className:e.text,children:t})]})},Ql=Th;var ar={};q(ar,{enUS:()=>kh,nlNL:()=>Rh});var kh={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"}]},Rh={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"}]};var Jl={root:"zi",isInline:"S",toggleButton:"ji",toggleButtonWrapper:"E",toggleButtonWrapperHidden:"Yi",isCollapsed:"so",collapsible:"qi",hints:"co",hintsHidden:"Ci",triggers:"xo",triggersRight:"Si"};import{jsx as z,jsxs as no}from"react/jsx-runtime";var Oh=({textSuggestions:t,selectedIndex:e,onLogIn:o})=>{let n=h("SuggestionsOverlay",Jl),s=E(ar),r=oo(wt),i=vi(),a=Nh(),c=Lh(null),l=b("searchTriggerKey"),d=b("productName"),u=oo(pn),p=oo(X),m=oo(ut),[g,f]=Ah(null),y=b("showSearch"),k=b("showTextSuggestions"),v=b("adminUrl"),S=b("isEmbedded"),[P,x]=$l("dd-snooze-until-ms",0),T=u||P>Date.now(),N=oo($=>$.input.text),V=t.filter($=>$.source!=="gpt").length,H=()=>{T&&x(0),a(_l(!T))},I=$=>{a(G({name:"suggestion feedback",data:{text:$.text,source:"overlay",context:N},options:{includeConversationData:!0}}))},O=$=>{let te=Date.now()+$*1e3;x(te),C.info(`Snooze until: ${new Date(te)}`),a(_e({collapse:!0}))};return Ih(()=>{V===0&&f(null)},[t,V]),Ct(()=>{a(_e({collapse:!0,skipWhenInputFocus:!0}))}),p===null||m===!1?null:p===!1?no("div",{ref:c,className:lr(n.root,{[n.isCollapsed]:T}),children:[!T&&no("div",{className:n.triggers,children:[z("div",{style:{flex:1}}),z("div",{className:n.triggersRight,children:z(it,{className:n.toggleButton,title:s("collapse"),onClick:H,isCollapsed:!1})})]}),z("div",{className:n.toggleButtonWrapper,children:z(it,{className:n.toggleButton,title:s("open",{productName:d}),onClick:H,isCollapsed:!0})}),z("div",{className:n.collapsible,children:z(Sn,{loginUrl:v,isEmbedded:S,onLogIn:o,onSnooze:O})})]}):!i||!r?null:no("div",{ref:c,className:lr(n.root,{[n.isCollapsed]:T}),children:[!T&&no("div",{className:n.triggers,children:[z("div",{style:{flex:1},children:y&&z("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>f(s(Wl()?"searchHintMac":"searchHintWindows",{searchTriggerKey:l.toUpperCase()})),onMouseLeave:()=>f(null),children:z(Ql,{title:s("search")})})}),no("div",{className:n.triggersRight,onFocus:()=>{},children:[z("div",{className:lr(!g&&n.hintsHidden,n.hints),children:g}),z(it,{className:n.toggleButton,title:s("collapse"),onClick:H,isCollapsed:!1})]})]}),z("div",{className:n.toggleButtonWrapper,children:z(it,{className:n.toggleButton,title:s("open",{productName:d}),onClick:H,isCollapsed:!0})}),V>0&&k&&z("div",{className:n.collapsible,onFocus:()=>{},children:z(J,{children:z(gn,{onFeedback:I,suggestions:t,selectedIndex:e,reverse:!0})})})]})},Dh=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),Yl=Mh(Dh)(Oh);import Sr from"classnames";import{Interweave as _y}from"interweave";import{useCallback as Fy,useEffect as Hy,useMemo as wc,useRef as By}from"react";import{connect as Ky}from"react-redux";import{useEffect as _h,useRef as Fh,useState as Hh}from"react";function xn(t){return t.contentEditable==="true"}function Bh(t){let e=0,o=0,n=window.getSelection();if(n.rangeCount!==0){let s=n.getRangeAt(0),r=s.cloneRange();r.selectNodeContents(t),r.setEnd(s.endContainer,s.endOffset),o=r.toString().length,r.selectNodeContents(t),r.setEnd(s.startContainer,s.startOffset),e=r.toString().length}return{selectionStart:e,selectionEnd:o}}function ec(t){let{selectionStart:e,selectionEnd:o}=xn(t)?Bh(t):t;return[e,o]}function tc(t){let[,e]=Hh(),o=Fh(null);return o.current=ec(t),_h(()=>{let n=()=>{let[s,r]=o.current??[],i=ec(t);(!i||s!==i[0]||r!==i[1])&&(o.current=i,e({}))};return t.addEventListener("keyup",n),t.addEventListener("click",n),t.addEventListener("focus",n),document.addEventListener("selectionchange",n),()=>{t.removeEventListener("keyup",n),t.removeEventListener("click",n),t.removeEventListener("focus",n),document.removeEventListener("selectionchange",n)}},[t]),o.current}function oc(t,e){if(!e)return;let o=t,{value:n}=o,[s,r]=e,i=n.match(bo);if(!i||i.length===0)return;let a=0;i.find(c=>{let l=n.indexOf(c,a);return s>l&&r<l+c.length?(o.selectionStart=l,o.selectionEnd=l+c.length,!0):(a=l+c.length,!1)})}import{cloneElement as Kh}from"react";var Uh=["div","span","mark","strong","b","i","u","em"];function cr(t,e,o=0){var r;let n=t[t.length-1],s=typeof n=="object"&&n!==null?(r=n.props)==null?void 0:r.tagName:void 0;if(s==="br")return t.pop(),[...t,...e,n];if(Uh.includes(s)){let i=Array.isArray(n.props.children)?n.props.children:[n.props.children];return[...t.slice(0,t.length-1),Kh(n,{children:cr(i,e,o+1)})]}return[...t,...e]}function Fe(t){return t.tagName.toLowerCase()==="textarea"}var de={root:"Ei",container:"Gi",agentText:"fo",tabText:"go",hint:"G",matchSelection:"bo",focus:"Ni",resetIndent:"Ai",matchKeyword:"p",matchPlaceholder:"d",hover:"mo",hintText:"Fi",popover:"Hi",popoverRoot:"Li",popoverContentContainer:"ho",popoverContent:"Mi",selectionOptions:"Ri",selectionOptionsIsHidden:"Ti",selectionOptionsButton:"Ui",caret:"Bi",popoverSuggestionsRoot:"Di",suggestionsOverlayInputStyles:"Ii"};import dy from"classnames";import{Matcher as uy}from"interweave";import{useEffect as py,useMemo as my}from"react";import{useEffect as Vh,useRef as $h,useState as Wh}from"react";function nc(t,e){let o;return[(...n)=>{window.cancelAnimationFrame(o);let s=e?e(...n):n;o=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(o)]}function bn(t){let e=$h(null),[o,n]=Wh(!1);return Vh(()=>{let s=!1,r=parseFloat(window.getComputedStyle(document.body).zoom??"1"),[i,a]=nc((d,u)=>{let p=e.current;if(!p)return;let m=d/r,g=u/r,f=p.getBoundingClientRect(),y=m>f.x&&m<f.x+f.width&&g>f.y&&g<f.y+f.height;y&&!s?(s=!0,n(!0)):!y&&s&&(s=!1,n(!1))},({clientX:d,clientY:u})=>[d,u]),[c,l]=nc(()=>{s=!1,n(!1)});return t.addEventListener("mousemove",i),t.addEventListener("mouseleave",c),()=>{a(),l(),t.removeEventListener("mousemove",i),t.removeEventListener("mouseleave",c)}},[e]),[e,o]}function sc(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function Cn(t){return e=>{t.forEach(o=>{typeof o=="function"?o(e):o!=null&&(o.current=e)})}}function rc(t){return t!=null}import dc from"classnames";import{createRef as ny,useCallback as ur,useMemo as sy,useRef as ry,useState as iy}from"react";import{useState as Gh,useLayoutEffect as jh}from"react";var qh=["bottom","height","left","right","top","width"],Xh=(t={},e={})=>qh.some(o=>t[o]!==e[o]),Ee=new Map,ic,ac=()=>{let t=[],e=[];Ee.forEach((o,n)=>{if(n instanceof Element&&!n.isConnected){e.push(n);return}let s=n.getBoundingClientRect();Xh(s,o.rect)&&(o.rect=s,t.push(o))}),e.forEach(o=>{Ee.delete(o)}),t.forEach(o=>{o.callbacks.forEach(n=>n(o.rect))}),ic=window.requestAnimationFrame(ac)};function Zh(t,e){return{observe(){let o=Ee.size===0;if(Ee.has(t)){let n=Ee.get(t);n.callbacks.push(e),n.rect&&e(n.rect)}else Ee.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});o&&ac()},unobserve(){let o=Ee.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||Ee.delete(t),Ee.size||cancelAnimationFrame(ic)}}}}function dr(t){let[e,o]=Gh(null);return jh(()=>{if(!t.current)return;let n=Zh(t.current,s=>{o(s)});return n.observe(),()=>{n.unobserve()}},[t]),e}import{useContext as Jh,useLayoutEffect as Yh,useState as ey}from"react";import{createPortal as ty}from"react-dom";var lc={root:"Oi"};var cc=({children:t,parentNode:e})=>{let[o,n]=ey(null),s=Jh(_t);return Yh(()=>{let r=document.createElement("div");return Qe(r),r.classList.add(lc.root),s!=null&&s.portalRootNode&&r.classList.add(s==null?void 0:s.portalRootNode),(e||document.body).appendChild(r),n(r),()=>{r.isConnected&&r.remove()}},[]),o?ty(t,o):null};var ge={ref:"Xi",root:"o",positionAbove:"l",positionBelow:"s",positionLeft:"c",positionRight:"x",alignStart:"f",alignCenter:"g",alignEnd:"b"};import{jsx as pr}from"react/jsx-runtime";var wn=(t=!1)=>{let[e,o]=iy(t),n=ur(()=>o(!0),[]),s=ur(()=>o(!1),[]),r=ur(()=>o(a=>!a),[]),i=ry(null);return{opened:e,open:n,close:s,toggle:r,triggerRef:i}};function mr(t,e=null,o=0){if(!t)return{display:"none"};let n=e?t.top-e.top<0||t.top<e.top-o?e.top-o:t.top+t.height>e.top+e.height+o?e.top+e.height+o-t.height:t.top:t.top,s=e?t.left<e.left-o?e.left-o:t.left+t.width>e.left+e.width+o?e.left+e.width+o-t.width:t.left:t.left;return{top:n,left:s,height:t.height,width:t.width}}var Tt=({className:t,triggerRef:e,boundaryRef:o=ny(),position:n="above",align:s="center",children:r,toStyle:i=mr,parentNode:a,...c})=>{let l=dr(e),d=dr(o),u=sy(()=>i(l,d,0),[l,d]);return pr(cc,{parentNode:a,children:pr("div",{className:dc(ge.ref,{[ge.positionAbove]:n==="above",[ge.positionBelow]:n==="below",[ge.positionLeft]:n==="left",[ge.positionRight]:n==="right",[ge.alignStart]:s==="start",[ge.alignCenter]:s==="center",[ge.alignEnd]:s==="end"}),style:u,...c,role:"dialog",children:pr("div",{className:dc(t,ge.root),children:r})})})};import ay from"classnames";import{forwardRef as ly,useRef as cy}from"react";import{jsx as uc}from"react/jsx-runtime";var Tn=ly(({className:t,children:e,...o},n)=>{let s=cy(null),r=h("TabCompletion",de);return uc("div",{ref:Cn([s,n]),className:ay(t,r.popoverContentContainer),...o,children:uc("div",{className:r.popoverContent,children:e})})});import{jsx as so,jsxs as hy}from"react/jsx-runtime";var gy=t=>e=>{let o=mr(e);return"top"in o&&(o.width=t.width-(e.left-t.left)-10),o},fy=({inputElement:t,boundaryRef:e,inputStyle:o,children:n,suggestion:s})=>{let r=h("TabCompletion",de),i=wn(),a=my(()=>gy(t.getBoundingClientRect()),[t]),[c,l]=bn(t);return py(()=>{l?i.open():i.close()},[l]),hy("span",{children:[so("mark",{ref:Cn([c,i.triggerRef]),className:dy(r.matchKeyword,{[r.hover]:l}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:n}),i.opened&&so(Tt,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:so(Tn,{style:o,children:so("div",{className:r.hintText,children:s})})})]})},En=class extends uy{keywordMatches=[];preparedKeywordMatches=[];usedKeywordMatches=new Set;onBeforeParse(e,o){return o.keywordMatches&&o.keywordMatches!==this.keywordMatches&&(this.preparedKeywordMatches=o.keywordMatches.map(n=>({...n,keywordRegex:new RegExp(`\\b${sc(n.keyword)}\\b`,"i")})),this.keywordMatches=o.keywordMatches),this.usedKeywordMatches.clear(),e}match(e){let o=this.preparedKeywordMatches.map(s=>{if(this.usedKeywordMatches.has(s))return null;let r=e.match(s.keywordRegex);if(!r)return null;let i=e.charAt(r.index-1),a=e.charAt(r.index+s.keyword.length);return i==="{"&&a==="}"?null:{index:r.index,length:r[0].length,match:r[0],matchString:r[0],suggestion:s.suggestion,preparedKeywordMatch:s,valid:!0}}).filter(rc);if(o.length===0)return null;let n=o.reduce((s,r)=>r.index<s.index?r:s);return this.usedKeywordMatches.add(n.preparedKeywordMatch),n}replaceWith(e,o){return so(fy,{inputElement:o.inputElement,suggestion:o.suggestion,inputStyle:o.inputStyle,boundaryRef:o.boundaryRef,children:e},`keyword_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import{Matcher as yy}from"interweave";import vy from"classnames";import{jsx as pc}from"react/jsx-runtime";var Sy=({inputElement:t,children:e})=>{let o=h("TabCompletion",de),[n,s]=bn(t);return pc("mark",{ref:n,className:vy(o.matchPlaceholder,{[o.hover]:s}),children:e})},kn=class extends yy{match(e){let o=e.match(/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\}(?!\}))/);return o?{index:o.index,length:o[0].length,match:o[0],matchString:o[0],valid:!0}:null}replaceWith(e,o){return pc(Sy,{inputElement:o.inputElement,children:e},`placeholder_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import vr from"classnames";import{Matcher as Iy}from"interweave";import{createRef as Ly,forwardRef as Ay,useCallback as My,useEffect as xc,useRef as bc,useState as Cc}from"react";import{useDispatch as Ny}from"react-redux";import{jsx as mc}from"react/jsx-runtime";var gc=()=>mc("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:mc("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 by,useEffect as hc,useState as yc}from"react";import{useDispatch as Cy,useSelector as vc}from"react-redux";import wy from"lodash.debounce";var fc={root:"Ji",content:"Ki"};function Rn(t,e,o){var s;let n=((s=t.imageSizes)==null?void 0:s[e])||t.image||o;if(!n)return null;try{return new URL(n).toString()}catch{return null}}function gr(t){return t.replace("https://www.","").replace("https://","")}import{jsx as Ye,jsxs as fr}from"react/jsx-runtime";var Ty=3,Ey=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),ky=({onSelectLink:t,onDismiss:e,placeholder:o,visitUrlText:n,linkCount:s=Ty})=>{let r=h("LinkSearch",fc),[i,a]=yc(""),c=Cy(),l=vc(vl("url")),d=vc(Ui("URL",Ey)),[u,p]=yc(d.length-1),m=b("fallbackImage"),g=v=>{let S=v.target;a(S.value)},f=(v,S)=>{v.stopPropagation(),v.preventDefault(),window.open(S,"_blank")},y=v=>{var x;let S=u-1<0?d.length-1:u-1,P=u+1===d.length?0:u+1;v.code==="Escape"&&(a(""),e()),v.code==="ArrowUp"&&p(S),v.code==="ArrowDown"&&p(P),v.code==="Enter"&&t(((x=d[u])==null?void 0:x.text)||i)},k=by(wy(v=>{c($e({query:v,type:"URL",tags:["link-search"]}))},300),[]);return hc(()=>{i&&k(i)},[i]),hc(()=>()=>{c(_o())},[]),fr("div",{className:r.root,children:[Ye(J,{withDivider:!0,children:(i?d:l).slice(0,s).map((v,S)=>Ye(A,{selected:u===S,onClick:()=>t(v.text),"data-testid":"linksearch-suggestion",children:fr(_,{children:[Ye(_.Image,{src:Rn(v,"small",m||void 0),title:v.title||v.text}),fr(_.Content,{className:r.content,cropText:!0,children:[Ye(_.Title,{children:v.title||gr(v.text)}),v.title&&gr(v.text)]}),Ye(A.Actions,{children:Ye(A.ActionButton,{label:n,onClick:P=>f(P,v.text)})})]})},v.text))}),Ye(jt,{value:i,onChange:g,autoFocus:!0,placeholder:o,onKeyUp:y})]})},Sc=ky;var hr={};q(hr,{enUS:()=>Ry,nlNL:()=>Py});var Ry={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}]},Py={insertLink:[{type:0,value:"Voeg link toe"}],linkInputPlaceholder:[{type:0,value:"Zoek, typ of plak link"}],visitUrl:[{type:0,value:"Bekijk"}]};import{jsx as fe,jsxs as yr}from"react/jsx-runtime";var Oy=Ay((t,e)=>{let o=h("TabCompletion",de);return fe("mark",{ref:e,className:vr(o.matchSelection)},"selection-start")}),Dy=({startRef:t,boundaryRef:e,inputStyle:o,inputElement:n,children:s})=>{let r=E(hr),i=h("TabCompletion",de),a=bc(null),c=bc(null),[l,d]=Cc(null),u=Ny(),p=wn(document.activeElement===n),[m]=Cc(()=>document.createRange());p.triggerRef.current=m,xc(()=>()=>m.detach(),[]),xc(()=>{let f=t.current,y=a.current;!f||!y||(m.setStart(f,0),m.setEnd(y,0))},[t.current,a.current]),Ct(()=>{p.close()});let g=My(f=>{let y=m.toString(),k=/^http(s?):\/\//.test(f)?f:`https://${f}`;u(Ao({text:`[${y}](${k})`,replace:"selection"}))},[]);return yr("span",{children:[fe("mark",{ref:a,className:vr(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":p.opened?"true":"false",children:s}),p.opened&&fe(Tt,{className:i.popoverRoot,triggerRef:p.triggerRef,boundaryRef:e,position:"above",align:"start",children:yr(Tn,{style:o,ref:c,children:[fe("div",{className:vr(i.selectionOptions,{[i.selectionOptionsIsHidden]:l!==null}),children:yr("button",{type:"button",tabIndex:l===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>d("insertLink"),children:[fe(gc,{}),fe("span",{children:"\xA0"}),fe("span",{children:r("insertLink")})]})}),l==="insertLink"&&fe(Sc,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:g,onDismiss:()=>{d(null),p.close()}})]})})]},"selection-end")},Pn=class extends Iy{charCount=0;foundIndex=0;startRef=null;props;onBeforeParse(e,o){return this.props=o,this.charCount=0,this.startRef=Ly(),this.foundIndex=0,e}match(e){if(!this.props||this.props.selection===null||this.foundIndex===2)return null;let[o,n]=this.props.selection;if(o===n)return null;let s=this.foundIndex===0?o:n,r=s>=this.charCount&&s<=this.charCount+e.length?{index:s-this.charCount,length:0,match:"",valid:!0}:null;r&&this.foundIndex++;let i=this.foundIndex===1;return r&&i?this.charCount+=s-this.charCount:this.charCount+=e.length,r?{isStart:i,...r}:null}replaceWith(e,o){return o.isStart?fe(Oy,{ref:this.startRef}):fe(Dy,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as Uy}from"react-redux";import{jsx as Et,jsxs as $y}from"react/jsx-runtime";var zy=({enabled:t,content:e,tabText:o,showTabHint:n,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:c})=>{let l=h("TabCompletion",de),d=b("insertLink"),u=b("showMidSentenceSuggestions"),p=b("inlineSuggestions"),m=tc(a),g=By(null),f=Uy(X);Hy(()=>{Fe(a)&&m&&oc(a,m)},[m]);let y=Fy(S=>{if(!s||!o)return S;let P=[Et("span",{className:l.resetIndent,children:"\u200B"},"u200B"),Et("span",{"data-testid":"tab-completion",className:Sr(l.tabText,l.resetIndent),"data-source":c,children:o},"tabText")];return n&&P.push(Et("span",{className:Sr(l.hint,l.resetIndent),children:Et(Jn,{keyCode:"tab"},"tabHint")})),cr(S,P)},[s,o,n]),k=wc(()=>{let S=[];return d&&S.push(new Pn("selection")),S.push(new kn("placeholders")),r&&S.push(new En("keywords")),S},[p,d,r]),v=wc(()=>{let S=window.getComputedStyle(a);return{"--dd-color":S.color,"--dd-font-size":S.fontSize,"--dd-font-family":S.fontFamily,"--dd-font-variant":S.fontVariant}},[]);return!t||!f?null:$y("div",{ref:S=>{S!=null&&S.parentElement&&(g.current=S==null?void 0:S.parentElement)},className:l.root,style:v,children:[Et(_y,{tagName:"span",containerTagName:"div",className:Sr(l.container,l.agentText),disableLineBreaks:Fe(a),content:e||"\u200B",onAfterParse:y,matchers:k,selection:m,keywordMatches:i,inputElement:a,inputStyle:v,boundaryRef:g,inlineSuggestionsOnlyAtEnd:!u}),Et("br",{})]})},Vy=({input:t,ui:e,settings:o,styleSuggestions:n,conversation:s})=>{var f;let{tabCompletionSuggestion:r}=t,i=(r==null?void 0:r.text)||"",a=(r==null?void 0:r.source)||"",c=t.html??Zt(t.text),l=i.indexOf(t.text)===0?i.slice(t.text.length):"",{showTabHint:d}=e,{isSupported:u}=s,{showTabCompletion:p,visible:m,showStyleSuggestions:g}=o;return{showTabHint:d,showStyleSuggestions:g,showTabCompletion:p,content:c,tabText:l,source:a,keywordMatches:((f=n.list)==null?void 0:f.keywordMatches)??[],enabled:m&&u!==!1}},Tc=Ky(Vy)(zy);import rS from"classnames";import{Fragment as iS,useEffect as Md}from"react";import{useDispatch as Dn,useSelector as B}from"react-redux";import{createAsyncThunk as ro,createSlice as Wy}from"@reduxjs/toolkit";var Ec={list:[],fetchState:"idle"},Rc=t=>t.autoflows.list||[],kc=t=>e=>{var o;return(o=e.list)==null?void 0:o.find(n=>n.triggerPayload===t)},ke=ro("autoflows/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getAutoflows(t)}),xr=ro("autoflows/start",async(t,e)=>{let{dispatch:o}=e,{deepdeskBrokerAPI:n}=e.extra;if(!n)throw new Error("Deepdesk Broker not initialized");await n.startAutoflowSession(t),await o(ke(t.platformSessionId))}),br=ro("autoflows/stop",async(t,e)=>{let{dispatch:o}=e,{deepdeskBrokerAPI:n}=e.extra;if(!n)throw new Error("Deepdesk Broker not initialized");await n.stopAutoflowSession(t.platformSessionId),await o(ke(t.platformSessionId))}),Gy=Wy({name:"autoflows",initialState:Ec,reducers:{},extraReducers:t=>{t.addCase(xr.pending,(e,o)=>{let n=kc(o.meta.arg.triggerPayload)(e);n.state="Started",n.isBusy=!0}),t.addCase(br.pending,(e,o)=>{let n=kc(o.meta.arg.triggerPayload)(e);n.state="Aborted",n.isBusy=!0}),t.addCase(ke.pending,e=>{e.fetchState="loading"}),t.addCase(ke.rejected,e=>{e.fetchState="error"}),t.addCase(ke.fulfilled,(e,o)=>{e.list=o.payload,e.fetchState="done"}),t.addCase(M,()=>Ec)}}),Pc=ro("autoflows/openStream",(t,e)=>{let{dispatch:o}=e,{deepdeskBrokerAPI:n}=e.extra;if(!n)throw new Error("Deepdesk Broker not initialized");let s=n.openStream(t);s.on("sessionAborted",()=>{o(ke(t))}),s.on("sessionCompleted",()=>{o(ke(t))})}),Ic=ro("autoflows/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),Lc=Gy.reducer;import{createAsyncThunk as ao,createSlice as jy}from"@reduxjs/toolkit";var Ac={list:[],fetchState:"idle",sentSuggestions:[],errorSuggestions:[],answeredSuggestions:[]},Mc=t=>t.customMessages.list,Nc=t=>e=>!!e.customMessages.sentSuggestions.find(o=>o===t),Oc=t=>e=>!!e.customMessages.answeredSuggestions.find(o=>o===t),Dc=t=>e=>!!e.customMessages.errorSuggestions.find(o=>o===t),io=ao("customMessages/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getCustomMessages(t)}),In=ao("customMessages/send",async(t,e)=>{let{platformSessionId:o,suggestion:n}=t,{deepdeskBrokerAPI:s}=e.extra;if(!s)throw new Error("Deepdesk Broker not initialized");await s.sendCustomMessage(o,n)}),Ln=ao("customMessages/answer",async(t,e)=>{let{platformSessionId:o,reply:n}=t,{deepdeskBrokerAPI:s}=e.extra;if(!s)throw new Error("Deepdesk Broker not initialized");await s.answerCustomMessage(o,n)}),_c=jy({name:"customMessages",initialState:Ac,reducers:{onCustomMessage(t,e){Array.isArray(e.payload)?t.list=e.payload:t.list=[e.payload]}},extraReducers:t=>{t.addCase(io.pending,e=>{e.fetchState="loading"}).addCase(io.rejected,e=>{e.fetchState="error"}).addCase(io.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload||[]}).addCase(In.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.errorSuggestions=e.errorSuggestions.filter(n=>o.meta.arg.suggestion.text!==n)}).addCase(In.rejected,(e,o)=>{let n=e.sentSuggestions.indexOf(o.meta.arg.suggestion.text);e.errorSuggestions.push(...e.sentSuggestions.splice(n,1))}).addCase(Ln.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.answeredSuggestions.push(o.meta.arg.suggestion.text)}).addCase(Ln.rejected,(e,o)=>{let n=e.answeredSuggestions.indexOf(o.meta.arg.suggestion.text);e.errorSuggestions.push(...e.sentSuggestions.splice(n,1)),e.answeredSuggestions.splice(n,1)}).addCase(M,()=>Ac)}}),Fc=ao("customMessages/openStream",(t,e)=>{let{dispatch:o}=e,{deepdeskBrokerAPI:n}=e.extra;if(!n)throw new Error("Deepdesk Broker not initialized");n.openStream(t).on("customMessageSuggestion",r=>{o(_c.actions.onCustomMessage(r))})}),Hc=ao("customMessages/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),Bc=_c.reducer;import{createAsyncThunk as Kc,createSlice as qy}from"@reduxjs/toolkit";var Xy={token:null,accountUrl:null,interval:null},Uc=t=>e=>{let{passwordlessToken:{token:o,accountUrl:n}}=e;return o&&n?`${n}/apis/admin/session/passwordless/login/?token=${o}&redirect=${t}`:null},Cr=Kc("passwordlessToken/getTemporaryPasswordlessToken",async(t,e)=>{let{deepdeskAPI:o}=e.extra,n=await o.requestPasswordlessToken();return{accountUrl:o.client.baseUrl,token:n}}),wr=Kc("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:o=1e3*60*10}=t,{dispatch:n}=e;return n(Cr()),setInterval(()=>n(Cr()),o)}),zc=qy({name:"passwordlessToken",initialState:Xy,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Cr.fulfilled,(e,o)=>{e.token=o.payload.token,e.accountUrl=o.payload.accountUrl}),t.addCase(wr.fulfilled,(e,o)=>{e.interval=o.payload})}}),{stopPollPasswordlessToken:Vc}=zc.actions,$c=zc.reducer;import{createAction as Zy,createAsyncThunk as Qy,createSlice as Jy}from"@reduxjs/toolkit";var Tr={cues:[],fetchState:"idle"},Wc=t=>{var e;return(e=t.rules)==null?void 0:e.cues},Yy=Zy("rules/resetCues"),et=Qy("rules/evaluate",async(t,e)=>{var o,n;try{let{deepdeskAPI:s}=e.extra,r=e.getState(),i=(o=r.conversation.current)==null?void 0:o.id;if(!i)throw new Error("No current conversation to evaluate rules");if(!(await s.getAccount()).ruleEngine)throw new Error("Rule engine is not enabled for this account");if(!(await s.getRules()).some(d=>d.label===t.label))throw new Error(`No rules found with label: ${t.label}`);return await s.evaluateRule(t.label,i,{tags:((n=r.conversation.current)==null?void 0:n.tags)||void 0,...t.params})}catch(s){return C.info(s.message),[]}}),Gc=Jy({name:"answer",initialState:Tr,reducers:{removeCue(t,e){t.cues=t.cues.filter(o=>o.rule.id!==e.payload.id)}},extraReducers:t=>{t.addCase(et.pending,e=>{e.fetchState="loading"}).addCase(et.rejected,e=>{e.fetchState="error"}).addCase(et.fulfilled,(e,o)=>{let n=o.payload.map(r=>r.rule.id),s=e.cues.filter(r=>!n.includes(r.rule.id));e.fetchState="done",e.cues=[...o.payload,...s]}).addCase(M,()=>Tr).addCase(Yy.toString(),()=>Tr)}}),{removeCue:jc}=Gc.actions,qc=Gc.reducer;import{Fragment as uv}from"react";import{connect as pv}from"react-redux";import lv from"classnames";import{Fragment as cv}from"react";import tv from"classnames";var Xc={root:"Pi"};import{jsx as nv}from"react/jsx-runtime";var ov=({className:t,children:e})=>{let o=h("Unicode",Xc);return nv("span",{className:tv(t,o.root),children:e})},Zc=ov;var Qc={isDisabled:"Qi",buttonStart:"Vi",root:"Wi",buttonStop:"uo",stateBadge:"m",isCompleted:"Zi",isStarted:"_i",isAborted:"or"};var Er={};q(Er,{enUS:()=>rv,nlNL:()=>iv});var rv={start:[{type:0,value:"Start"}],stop:[{type:0,value:"Stop"}],aborted:[{type:0,value:"Stopped"}],completed:[{type:0,value:"Completed"}],Aborted:[{type:0,value:"Stopped"}],Started:[{type:0,value:"Running"}],Completed:[{type:0,value:"Completed"}]},iv={start:[{type:0,value:"Start"}],stop:[{type:0,value:"Stop"}],aborted:[{type:0,value:"Stopped"}],completed:[{type:0,value:"Completed"}],Aborted:[{type:0,value:"Stopped"}],Started:[{type:0,value:"Running"}],Completed:[{type:0,value:"Completed"}]};import{jsx as tt,jsxs as An}from"react/jsx-runtime";var dv=({disabled:t,state:e,displayName:o,description:n,onStartAutoflow:s,onStopAutoflow:r})=>{let i=h("Autoflow",Qc),a=E(Er),c=e==="Started"?"stop":"start",l=c==="start"?"\u25B6":c==="stop"?"\u25FC":"";return An(A,{className:lv(i.root,{[i.isDisabled]:t,[i.isCompleted]:e==="Completed",[i.isAborted]:e==="Aborted",[i.isStarted]:e==="Started"}),children:[tt(_,{children:An(_.Content,{children:[An(_.Title,{children:[e&&tt("span",{className:i.stateBadge,children:a(e)}),o]}),tt("span",{children:n})]})}),tt(A.Actions,{fixed:e==="Started",children:tt(A.ActionButton,{primary:!0,className:c==="start"?i.buttonStart:i.buttonStop,onClick:e==="Started"?r:s,disabled:t,label:An(cv,{children:[tt(Zc,{children:l})," ",tt("span",{children:a(c)})]})})})]})},Jc=dv;import{jsx as Yc}from"react/jsx-runtime";var mv=(t,e)=>{let o=e.filter(n=>n.state==="Started");return o.length>0?o.indexOf(t)===-1:!1},gv=({autoflows:t,onStartAutoflow:e,onStopAutoflow:o,platformSessionId:n})=>Yc(uv,{children:t.map(s=>Yc(Jc,{displayName:s.displayName,description:s.description,disabled:s.isBusy||mv(s,t),state:s.state,onStartAutoflow:()=>e({platformSessionId:n,triggerPayload:s.triggerPayload}),onStopAutoflow:()=>o({platformSessionId:n,triggerPayload:s.triggerPayload})},s.displayName))}),fv=({autoflows:t,conversation:e})=>{var o;return{autoflows:t.list,platformSessionId:(o=e.current)==null?void 0:o.sessionId}},hv={onStartAutoflow:xr,onStopAutoflow:br},ed=pv(fv,hv)(gv);import vv from"classnames";import{useCallback as td}from"react";import{useDispatch as Sv,useSelector as Mn}from"react-redux";var Re={root:"yo",title:"wo",isUsed:"er",quickReplies:"ir",quickReply:"rr",hasError:"tr",label:"nr",errorIcon:"ar"};import{jsx as He,jsxs as Nn}from"react/jsx-runtime";var xv=({suggestion:t})=>{let e=E(Xe),o=Sv(),n=Mn(Nc(t.text)),s=Mn(Oc(t.text)),r=Mn(Dc(t.text)),i=Mn(dt),{replyOptions:a}=t,c=td(d=>{d.preventDefault(),d.stopPropagation(),!(n||!i)&&o(In({platformSessionId:i,suggestion:t}))},[t,n,o,i]),l=td(d=>{if(d.preventDefault(),d.stopPropagation(),!i||!a)return;let u=parseInt(d.target.dataset.index,10),p=a[u];o(Ln({platformSessionId:i,reply:p,suggestion:t}))},[t,n,o,i]);return Nn(A,{onClick:c,className:vv(Re.root,{[Re.isUsed]:n,[Re.hasError]:r}),children:[He(_,{children:Nn(_.Content,{children:[Nn(_.Title,{className:Re.title,children:[t.text," ",He(Yn,{className:Re.label,children:"analyse tool"})," ",r&&He("span",{className:Re.errorIcon,role:"img","aria-label":e("sendingError"),title:e("sendingError"),children:"!"})]}),a&&a.length>0&&He("ul",{className:Re.quickReplies,children:a.map(d=>He("li",{className:Re.quickReply,children:d.title},d.title))})]})}),Nn(A.Actions,{fixed:r||n,children:[a&&a.length>0&&He(A.DropdownButton,{label:e("answer"),disabled:s,children:a.map((d,u)=>He(A.DropdownItem,{index:u,label:d.title,onClick:l},d.title))}),He(A.ActionButton,{primary:!0,disabled:n,onClick:c,label:e(n?"suggestionSent":r?"tryAgain":"sendSuggestion")})]})]})},od=xv;import{useEffect as Cv,useState as wv}from"react";import{useDispatch as Tv}from"react-redux";import rd from"classnames";import{jsx as nd}from"react/jsx-runtime";var kr=()=>nd("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:nd("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 sd={root:"pr",entity:"r",entityText:"dr",iconWrapper:"lr",icon:"sr",iconClicked:"cr"};import{jsx as kt,jsxs as id}from"react/jsx-runtime";var Ev=({entities:t})=>{let e=h("EntitiesWidgetList",sd),[o,n]=wv(void 0),s=Tv(),r=()=>{n(void 0)},i=a=>{t&&(n(t.indexOf(a)),je(a.text),s(G({name:"entity copied",data:{entity:a,type:"copy"}})))};return Cv(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[o]),!t||t.length===0?null:kt("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,c)=>id("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[kt("span",{className:e.entityText,children:a.text}),id("span",{className:e.iconWrapper,children:[kt("span",{className:rd(e.icon),children:kt(kr,{})}),kt("span",{className:rd(e.icon,o===c&&e.iconClicked),children:kt(kr,{})})]})]},a.text))})},ad=Ev;import{jsx as ld}from"react/jsx-runtime";var cd=()=>ld("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:ld("path",{d:"M17 13.5v6H5v-12h6m3-3h6v6m0-6-9 9",stroke:"currentColor",strokeWidth:"1.5",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"})});import{jsx as dd}from"react/jsx-runtime";var ud=()=>dd("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:dd("path",{d:"M543-340q16.595 0 28.798-12.202Q584-364.405 584-381t-12.202-28.798Q559.595-422 543-422t-28.798 12.202Q502-397.595 502-381t12.202 28.798Q526.405-340 543-340Zm-25-126h47q2-29 8.5-43t32.5-39q27-26 37.5-45.395Q654-612.79 654-639q0-45.882-31.5-74.941Q591-743 540-743q-38 0-68 20.5T428-665l45 19q11-25 27.5-38t39.5-13q29.778 0 48.389 17Q607-663 607-637q0 20-9 35t-32 32q-32 29-40 46.5t-8 57.5ZM260-200q-24 0-42-18t-18-42v-560q0-24 18-42t42-18h560q24 0 42 18t18 42v560q0 24-18 42t-42 18H260Zm0-60h560v-560H260v560ZM140-80q-24 0-42-18t-18-42v-620h60v620h620v60H140Zm120-740v560-560Z"})});import{jsx as pd}from"react/jsx-runtime";var md=()=>pd("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:pd("path",{d:"M319-250h322v-60H319v60Zm0-170h322v-60H319v60ZM220-80q-24 0-42-18t-18-42v-680q0-24 18-42t42-18h361l219 219v521q0 24-18 42t-42 18H220Zm331-554v-186H220v680h520v-494H551ZM220-820v186-186 680-680Z"})});import{useDispatch as Vv}from"react-redux";import xd from"classnames";import{useEffect as Kv,useState as Uv}from"react";import{jsx as gd,jsxs as kv}from"react/jsx-runtime";var fd=({className:t})=>kv("svg",{viewBox:"0 0 12 12",version:"1.1",xmlns:"http://www.w3.org/2000/svg",className:t,children:[gd("line",{x1:"2",y1:"10",x2:"10",y2:"2",stroke:"black",strokeWidth:"1"}),gd("line",{x1:"2",y1:"2",x2:"10",y2:"10",stroke:"black",strokeWidth:"1"})]});import Pv from"dompurify";import{Fragment as Iv,useMemo as Lv,useRef as Av,useState as Mv}from"react";import Nv from"snarkdown";var hd={fadeup:"N",root:"i",popover:"xr",options:"vo",copyIcon:"A",option:"ko",divider:"fr"};import{jsx as lo,jsxs as yd}from"react/jsx-runtime";function Ov(t){return`<button type="button" 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 Rr(t){let e=t.cloneNode(!0);return e.querySelectorAll("div,button").forEach(o=>o.remove()),e.textContent??""}function Dv(t){return t.replace(/\r\n/g,`
|
|
8
|
-
`)}var _v=({content:t,useLabel:e,copyLabel:o,onCopy:n,onUse:s})=>{let r=h("Markdown",hd),i=Av(null),[a,c]=Mv(null),l=Lv(()=>{let g=Nv(Dv(t));return Pv.sanitize(g).replace(/<\/code>/g,`${Ov(r.copyIcon)}</code>`)},[t]),d=g=>{var k;let f=g.target,y=!!((k=i.current)!=null&&k.querySelector("code"));a||y&&f.tagName!=="CODE"||!y&&f!==i.current||(f.addEventListener("mouseleave",()=>c(null),{once:!0}),c(f))},u=()=>{if(!a)return;c(null);let g=a.querySelector("button");g&&(we(g,r.fadeup),n(Rr(a)))},p=g=>{g.target.tagName.toLowerCase()==="button"&&(we(g.target,r.fadeup),n(Rr(g.target.parentElement)))},m=()=>{a&&(c(null),s(Rr(a)))};return yd(Iv,{children:[a&&lo(Tt,{triggerRef:{current:a},parentNode:a,className:r.popover,children:yd("div",{className:r.options,children:[lo("button",{type:"button",className:r.option,onClick:u,children:o}),lo("div",{className:r.divider}),lo("button",{type:"button",className:r.option,onClick:m,children:e})]})}),lo("div",{ref:i,className:r.root,dangerouslySetInnerHTML:{__html:l},onMouseOver:d,onClick:p})]})},vd=_v;var Pr={};q(Pr,{enUS:()=>Fv,nlNL:()=>Hv});var Fv={useCue:[{type:0,value:"Use"}],copyCue:[{type:0,value:"Copy"}],removeCue:[{type:0,value:"Close"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},Hv={useCue:[{type:0,value:"Gebruik"}],copyCue:[{type:0,value:"Kopieer"}],removeCue:[{type:0,value:"Sluiten"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};var Sd={fadeup:"F",fadedown:"H",selected:"zo",thumbsUp:"gr",thumbsDown:"br"};import{jsx as Pe,jsxs as bd}from"react/jsx-runtime";var zv=({cue:t,onRemove:e,onCopy:o,onUse:n,onThumbsUp:s,onThumbsDown:r})=>{let i=h("WidgetCue",Sd),a=E(Pr),c=vt(),[l,d]=Uv(null),u=y=>{o&&o(y,t)},p=y=>{n&&n(y,t)},m=y=>{y.preventDefault(),y.stopPropagation(),e(t)},g=y=>{y.preventDefault(),y.stopPropagation(),we(y.target,i.fadeup),d("up"),s(t)},f=y=>{y.preventDefault(),y.stopPropagation(),we(y.target,i.fadedown),d("down"),r(t)};return Kv(()=>{c("Assistant response displayed",{name:t.rule.name,description:t.rule.description,group:t.rule.label})},[]),bd(A,{"data-testid":"cue",children:[Pe(_,{children:bd(_.Content,{children:[t.title&&Pe(_.Title,{"data-testid":"widget-cue-title",children:t.title}),Pe(vd,{content:t.text,useLabel:a("useCue"),copyLabel:a("copyCue"),onCopy:u,onUse:p})]})}),Pe(A.IconButton,{title:a("thumbsUp"),onClick:g,icon:Pe(nn,{}),className:xd(i.thumbsUp,l==="up"&&i.selected),disabled:!!l}),Pe(A.IconButton,{title:a("thumbsDown"),onClick:f,icon:Pe(on,{}),className:xd(i.thumbsDown,l==="down"&&i.selected),disabled:!!l}),Pe(A.IconButton,{title:a("removeCue"),onClick:m,icon:Pe(fd,{})})]})},Cd=zv;import{Fragment as Wv,jsx as wd}from"react/jsx-runtime";var $v=({cues:t})=>{let e=Vv(),o=oe(),n=vt(),s=l=>{e(jc({id:l.rule.id})),n("Assistant response closed",{name:l.rule.name,group:l.rule.label,description:l.rule.description})},r=(l,d)=>{je(l),n("Assistant response copied",{name:d.rule.name,group:d.rule.label,description:d.rule.description,copiedText:l})},i=(l,d)=>{o.send(Ne,{text:l,suggestion:{source:"cue",sourceText:l}}),n("Assistant response used",{name:d.rule.name,group:d.rule.label,description:d.rule.description,usedText:l})},a=l=>{n("Assistant response feedback",{name:l.rule.name,group:l.rule.label,description:l.rule.description,thumb:"up"})},c=l=>{n("Assistant response feedback",{name:l.rule.name,group:l.rule.label,description:l.rule.description,thumb:"down"})};return wd(Wv,{children:t.map(l=>wd(Cd,{cue:l,onRemove:s,onCopy:r,onUse:i,onThumbsDown:c,onThumbsUp:a},l.rule.id))})},Td=$v;import{Fragment as jv,useEffect as qv}from"react";var Ed={root:"mr",label:"hr",value:"ur",isTrue:"jo",isFalse:"Yo"};import{jsx as co,jsxs as Zv}from"react/jsx-runtime";function Xv(t,e){return e.split(".").reduce((o,n)=>!o||typeof o!="object"||!(n in o)?null:o[n],t)}var kd=({data:t,schema:e})=>{let o=h("WidgetCustomData",Ed);return qv(()=>{C.info("Custom data",t,e)},[t]),co("dl",{className:o.root,children:e.map(n=>{let s=Xv(t,n.path);return Zv(jv,{children:[co("dt",{className:o.label,children:n.label}),co("dd",{className:o.value,children:n.type==="boolean"&&s?co("span",{className:o.isTrue,children:n.trueValue}):n.type==="boolean"&&!s?co("span",{className:o.isFalse,children:n.falseValue}):s??"-"})]},n.label)})})};import{useCallback as Jv}from"react";var Qv=/(https?:\/\/[^\s]+)/,Rd=t=>t.split(" ").find(e=>Qv.test(e));import{jsx as Rt,jsxs as On}from"react/jsx-runtime";var Yv=({suggestion:t,lines:e,onUse:o})=>{var d;let n=t.text||t.url||t.message,s=Rd(n),r=E(Xe),i=b("showImages"),a=b("fallbackImage"),c=u=>{u.preventDefault(),u.stopPropagation(),o(n)},l=Jv(u=>{window.open(s,"_blank"),u.stopPropagation(),u.preventDefault()},[s]);return On(A,{onClick:c,"data-testid":"edit-suggestion",children:[On(_,{children:[i&&t.image&&Rt(_.Image,{src:Rn(t,"small",a||void 0),title:t.title}),On(_.Content,{children:[t.title&&Rt(_.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((d=t.searchKeywords)==null?void 0:d.length)>0&&Rt(A.Labels,{labels:t.searchKeywords}),Rt(_.Content,{cropText:e==="single",lineClamp:e==="multiple",children:n})]})]}),On(A.Actions,{children:[s&&Rt(A.ActionButton,{onClick:l,label:r("visitUrl")}),Rt(A.ActionButton,{primary:!0,onClick:c,label:r("useSuggestion")})]})]})},Pd=Yv;import{Fragment as tS,jsx as Id}from"react/jsx-runtime";var eS=({lines:t,suggestions:e})=>{let o=oe(),n=(s,r)=>{o.send(Ne,{text:s,suggestion:{...r,source:r.source,sourceText:r.text}})};return Id(tS,{children:e.map(s=>Id(Pd,{suggestion:s,lines:t,onUse:r=>n(r,s)},s.text||s.url||s.message))})},Ld=eS;var uo={};q(uo,{enUS:()=>oS,nlNL:()=>nS});var oS={waiting:[{type:0,value:"Loading\u2026"}],notSupported:[{type:0,value:"This conversation is not supported"}],noResults:[{type:0,value:"No results found\u2026"}],titleAutoflows:[{type:0,value:"Autoflows"}],titleCustomMessages:[{type:0,value:"Quick replies"}],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"}]},nS={waiting:[{type:0,value:"Laden\u2026"}],notSupported:[{type:0,value:"Dit gesprek wordt niet ondersteund"}],noResults:[{type:0,value:"Geen resultaten gevonden\u2026"}],titleAutoflows:[{type:0,value:"Autoflows"}],titleCustomMessages:[{type:0,value:"Quick replies"}],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"}]};var po={root:"yr",loginText:"wr",stateText:"qo",sectionList:"vr",shortcutList:"kr",shortcut:"zr",link:"Co"};import{jsx as R,jsxs as Pt}from"react/jsx-runtime";var _n=(t,e)=>{let o=B(X);Md(()=>o?e.every(n=>!!n)?t():()=>{}:()=>{},[...e,o])},aS=({onLogIn:t})=>{let e=h("Widget",po),o=b("isEmbedded"),n=b("adminUrl");return R("div",{className:e.loginText,children:R("div",{children:R(Sn,{isEmbedded:o,loginUrl:n,onLogIn:t})})},"login")},Ad=({text:t})=>{let e=h("Widget",po);return R("div",{className:e.stateText,children:R("div",{children:R("p",{children:t})})},"notification")},lS=()=>{let t=E(uo),e=Dn(),o=h("Widget",po),n=b("showSearch"),s=b("showSummaryCommand"),r=b("showKnowledgeSearch"),i=B(Uc("/admin/")),a=oe(),c=b("productName"),l=n||s||r||i;return _n(()=>(e(wr()),()=>{e(Vc())}),[e]),l?R(Se,{title:t("actions"),type:"shortcuts",children:Pt("div",{className:o.shortcutList,children:[n&&Pt("button",{type:"button",className:o.shortcut,"data-testid":"shortcut-search",title:t("linkSearch"),onClick:()=>a.send("ShowCommandPalette",{isOpen:!0}),children:[R(ft,{}),t("linkSearch")]}),s&&Pt("button",{type:"button",className:o.shortcut,"data-testid":"shortcut-summary",title:t("linkSummary"),onClick:()=>a.send("ShowCommandPalette",{isOpen:!0,page:"summary"}),children:[R(md,{}),t("linkSummary")]}),r&&Pt("button",{type:"button",className:o.shortcut,"data-testid":"shortcut-knowledge-assist",title:t("linkKnowledgeSearch"),onClick:()=>a.send("ShowCommandPalette",{isOpen:!0,page:"knowledgeAssist"}),children:[R(ud,{}),t("linkKnowledgeSearch")]}),i&&Pt("a",{className:o.shortcut,target:"_blank",href:i,"data-testid":"shortcut-studio-login",title:t("linkStudioLogin",{productName:c}),rel:"noreferrer",children:[R(cd,{}),t("linkStudioLogin",{productName:c})]})]})}):null},cS=()=>{let t=Dn(),e=b("showCustomMessages"),o=B(Mc),n=B(dt);return _n(()=>(t(io(n)),t(Fc(n)),()=>{t(Hc(n))}),[t,e,n]),!e||o.length===0?null:R(Se,{type:"custom-messages","data-testid":"custom-messages",children:R(J,{withDivider:!0,children:o.map(s=>R(od,{suggestion:s},s.text))})})},dS=()=>{let t=E(uo),e=Dn(),o=b("showAutoflows"),n=B(Rc),s=B(dt);return _n(()=>(e(ke(s)),e(Pc(s)),()=>{e(Ic(s))}),[e,o,s]),!o||n.length===0?null:R(Se,{type:"autoflows",title:t("titleAutoflows"),"data-testid":"autoflows",children:R(J,{withDivider:!0,children:R(ed,{})})})},uS=()=>{let t=Dn(),e=B(ln),o=B(ul),n=B(Wc),s=B(Mi),r=B(tn),i=B(cn),a=B(Te),c=B(Eo);return Md(()=>{!!s&&!o&&C.warn("Custom data provided, but no schema.")},[s,o]),_n(()=>{e.forEach(({type:l})=>{l==="entities"?t(ae()):Co.includes(l)||t(ce(l))})},[t,c,a]),R(iS,{children:e.map(({type:l,title:d,amount:u,lines:p,schema:m})=>{var g,f;switch(l){case"entities":return r&&r.length>0&&R(Se,{type:l,title:d,"data-testid":`type-${l}`,children:R(ad,{entities:r})},l);case"cues":return n&&n.length>0&&R(Se,{type:l,title:d,"data-testid":`type-${l}`,children:R(J,{withDivider:!0,children:R(Td,{cues:n})})},l);case"custom-data":return s&&m&&R(Se,{type:l,title:d,"data-testid":`type-${l}`,children:R(J,{withDivider:!0,children:R(kd,{data:s,schema:m})})},l);default:return((f=(g=i[l])==null?void 0:g.suggestions)==null?void 0:f.length)>0&&R(Se,{type:l,title:d,"data-testid":`type-${l}`,children:R(J,{withDivider:!0,children:R(Ld,{lines:p,contentType:l,suggestions:i[l].suggestions.slice(0,u)||[]})})},l)}})})},pS=({onLogIn:t})=>{let e=E(uo),o=h("Widget",po),n=B(ut),s=B(X),r=B(dt),i=B(Te);return n===!1?R(Ad,{text:e("notSupported")}):s===!1?R(aS,{onLogIn:t}):!i||!r||s===null?R(Ad,{text:e("waiting")}):R("div",{className:rS(o.root),"data-testid":"widget",children:Pt(ts,{className:o.sectionList,children:[R(lS,{}),R(cS,{}),R(dS,{}),R(uS,{})]})})},Nd=pS;function go(t){let e=new Range;return e.selectNodeContents(t),e}function Od(t,e,o){try{return ot(t,e,o),!0}catch{return!1}}function Fn(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function Hn(t){return"tagName"in t&&t.tagName==="BR"}var mo=/[\u200B-\u200D\uFEFF]/g;function ot(t,e,o){let n=new Range;if(t.firstChild===null&&e===0&&o===0)return n.selectNodeContents(t),n;let s=0,r=!1;function i(c,l){let d=-1,u=/[\u200B-\u200D\uFEFF]/;if(!u.test(c))return l;for(let p=0;p<=c.length;p++)if(u.test(c[p])||d++,d===l)return p;throw new Error("Offset out of range")}function a(c){switch(c.nodeType){case Node.TEXT_NODE:{let l=c.textContent,d=l.replace(mo,""),u=s+d.length,p=e>=s&&e<=u,m=o>=s&&o<=u;if(p){let g=i(l,e-s);g===0&&!m?n.setStartBefore(c):n.setStart(c,g)}m&&(n.setEnd(c,i(l,o-s)),r=!0),s=u;break}case Node.ELEMENT_NODE:{if(Hn(c)&&(s===e&&n.setStartBefore(c),s++,s===o)){n.setEndAfter(c),r=!0;return}for(let d=0;d<c.childNodes.length&&(a(c.childNodes[d]),!r);d++);let l=c.lastChild;Fn(c)&&l&&!Fn(l)&&!Hn(l)&&s++;break}default:break}}if(a(t),n.startContainer===document)throw new Error("Offsets out of bound");return n}function Bn(t,e){if(!t.contains(e.startContainer)||!t.contains(e.endContainer))throw new Error("Range not within root element");let{startContainer:o,startOffset:n,endContainer:s,endOffset:r,collapsed:i}=e,a,c,l=0;function d(u){let p=u===o,m=u===s;switch(u.nodeType){case Node.TEXT_NODE:{let g=u.textContent;p&&(a=l+g.substring(0,n).replace(mo,"").length),m&&(c=l+g.substring(0,r).replace(mo,"").length),l+=g.replace(mo,"").length;break}case Node.ELEMENT_NODE:{let g=u.nextSibling===null;Hn(u)&&!g&&l++;for(let f=0;f<u.childNodes.length;f++){let y=p&&f===n,k=m&&f===r;if(y&&(a=l),k&&(c=l),c!==void 0||((!y||!i)&&d(u.childNodes[f]),m&&f===r-1&&(c=l),c!==void 0))break}!m&&Fn(u)&&!g&&l++,m&&(c=l);break}default:break}}if(d(t),c===void 0)throw new Error("Could not determine start and end");return{start:a??c,end:c}}function Kn(t,e){if(!t.contains(e.startContainer)||!t.contains(e.endContainer))throw new Error("Range not within root element");let{startContainer:o,startOffset:n,endContainer:s,endOffset:r}=e,i=-1,a="";function c(l){let d=l===o,u=l===s;switch(d&&i++,l.nodeType){case Node.TEXT_NODE:{if(i!==0)return;let p=d?n:0,m=u?r:void 0,g=l.textContent.replace(mo,"");p===0&&m===void 0?a+=g:a+=g.substring(p,m);break}case Node.ELEMENT_NODE:{let p=l.nextSibling===null;i===0&&Hn(l)&&!p&&(a+=`
|
|
9
|
-
`);for(let m=
|
|
10
|
-
`);break}default:break}u&&i++}return c(t),a}var Dd=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(Dd||{}),Be=class{constructor(e){this.element=e;this.currentText=this.getText(),this.currentHTML=this.getHTML(),this.listen()}eventListeners={};disposeHandlers=[];currentText="";currentCaret=null;currentSelection={start:0,end:0};currentHTML="";isFocused=!1;isActive=!0;isSettingValue=!1;isSubmitting=!1;isPossibleClearInputAction=!1;isDisposed=!1;addEventListener(e,o){let n=s=>{o(s)};this.element.addEventListener(e,n),this.disposeHandlers.push(()=>{this.element.removeEventListener(e,n)})}removeEventListener(e,o){this.element.removeEventListener(e,o)}triggerChange(){let e=this.getText(),o=this.getHTML(),n=e!==this.currentText;this.isActive&&(e===""&&this.currentText!==""&&!this.isSettingValue&&!this.isPossibleClearInputAction&&(this.isSubmitting=!0,this.emit("submit")),!this.isSettingValue&&n&&!this.isSubmitting&&this.emit("change",{plainText:e}),n&&(this.currentSelection=this.getSelection()),this.currentText=e,this.isSubmitting=!1,(this.currentHTML!==o||o===null&&n)&&(this.emit("updated",{plainText:e}),this.triggerCaretPosition(),this.currentHTML=o))}triggerSelection(){let e=this.getSelection();(e.start!==this.currentSelection.start||e.end!==this.currentSelection.end)&&(this.currentSelection=e,this.emit("selection",e),this.triggerCaretPosition())}triggerCaretPosition(){let e=this.getCaretPosition();Le(e,this.currentCaret)||(this.currentCaret=e,this.emit("caret",e))}handleKeyUp(e){let{key:o,shiftKey:n}=e;(o==="Enter"&&n===!0||o==="Backspace")&&this.triggerChange(),this.triggerSelection()}handleClick(){this.triggerSelection()}handleFocus(){this.isFocused||this.emit("focus"),this.triggerSelection(),this.isFocused=!0}handleBlur(){this.isPossibleClearInputAction=!1,this.isFocused&&this.emit("blur"),this.isFocused=!1}handleKeyDown(e){let{key:o,ctrlKey:n,metaKey:s}=e;this.isPossibleClearInputAction=Object.values(Dd).includes(o)||o.toLowerCase()==="z"&&(n||s),this.emit("keydown",e)}handleCut(){this.isPossibleClearInputAction=!0,this.emit("cut",{selectionText:this.getSelectedText()})}handlePaste(e){var n,s;let o=((n=e.clipboardData)==null?void 0:n.getData("text"))||((s=e.clipboardData)==null?void 0:s.getData("text/plain"))||"";this.emit("paste",{pastedText:o,selectionText:this.getSelectedText()})}listen(e={shouldObserve:!0}){this.addEventListener("keydown",n=>this.handleKeyDown(n)),this.addEventListener("keyup",n=>this.handleKeyUp(n)),this.addEventListener("input",()=>this.triggerChange()),this.addEventListener("change",()=>this.triggerChange()),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.triggerSelection()),document.activeElement===this.element&&setTimeout(()=>{this.handleFocus()},0);let o=new MutationObserver(()=>{this.element.isConnected||(this.emit("unmounted"),this.dispose())});e!=null&&e.shouldObserve&&o.observe(document.body,{subtree:!0,childList:!0}),this.disposeHandlers.push(()=>{o.disconnect()}),this.currentSelection=this.getSelection()}focus(){this.element.focus()}emit(e,...o){this.isDisposed||this.eventListeners[e]&&this.eventListeners[e].forEach(n=>{n(...o)})}on(e,o){this.isDisposed||(this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o))}activate(){let e=this.isActive===!1;this.isActive=!0,e&&this.triggerChange()}deactivate(){this.isActive=!1}dispose(){this.disposeHandlers.forEach(e=>e()),this.eventListeners={},this.isDisposed=!0}};function _d(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var It=class extends Be{observer;lastKnownSelection=null;getRootNode(){return this.element.getRootNode()}getText(){let e=new Range;return e.selectNodeContents(this.element),Kn(this.element,e)}getHTML(){return this.element.innerHTML||""}getRange(){var r;let e=this.getRootNode();if(e.activeElement!==this.element)return null;let o="getSelection"in e?e.getSelection():window.getSelection();if(!o)return null;let n="getComposedRanges"in o&&e instanceof ShadowRoot?(r=o.getComposedRanges(e))==null?void 0:r[0]:o.rangeCount>0?o.getRangeAt(0):null;if(!n)return null;let s=this.element.ownerDocument.createRange();return s.setStart(n==null?void 0:n.startContainer,n==null?void 0:n.startOffset),s.setEnd(n==null?void 0:n.endContainer,n==null?void 0:n.endOffset),!s||!this.element.contains(s.startContainer)||!this.element.contains(s.endContainer)?null:s}getCaretPosition(){let e=this.getRange();if(!e||!e.collapsed||!("getBoundingClientRect"in e))return null;let o=e.getBoundingClientRect();return!_d(o)&&(e.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=e.getBoundingClientRect(),e.deleteContents(),!_d(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let e=this.getRange();if(e)return Bn(this.element,e);let o=this.lastKnownSelection;if(o&&Od(this.element,o.start,o.end))return o;let n=go(this.element);return n.collapse(!1),Bn(this.element,n)}getSelectedText(){let{start:e,end:o}=this.getSelection();return Kn(this.element,ot(this.element,e,o))}applyChanges(e){var s;if(!this.isActive)return;this.isSettingValue=!0;let o=this.getText(),n=e(this.element);return(s=this.observer)==null||s.takeRecords(),Promise.resolve(n).then(()=>{this.currentText=this.getText(),o!==this.currentText&&this.triggerChange(),this.isSettingValue=!1})}listen(e={shouldObserve:!0}){super.listen(e),this.observer=new MutationObserver(()=>{setTimeout(()=>{this.triggerChange()},0)}),e!=null&&e.shouldObserve&&this.observer.observe(this.element,{attributes:!0,characterData:!0,childList:!0,subtree:!0});let o=this.element.isContentEditable,n=new MutationObserver(()=>{this.element.isContentEditable!==o&&(o=this.element.isContentEditable,this.emit(this.element.isContentEditable?"enabled":"disabled"))});n.observe(this.element,{attributes:!0,attributeFilter:["contenteditable"]}),this.disposeHandlers.push(()=>n.disconnect())}dispose(){super.dispose(),this.observer&&this.observer.disconnect()}};var Lt=class extends Be{lastKnownSelection=null;getText(){return this.element.value}getHTML(){return null}getSelection(){let{selectionStart:e,selectionEnd:o}=this.element;return{start:e,end:o}}getSelectedText(){let e=this.getSelection();return e?this.getText().slice(e.start,e.end):""}getCaretPosition(){return null}applyChanges(e){if(!this.isActive)return;this.isSettingValue=!0;let o=this.getText(),n=e(this.element);return Promise.resolve(n).then(()=>{this.currentText=this.getText(),o!==this.currentText&&this.triggerChange(),this.isSettingValue=!1})}listen(){super.listen();let e=Object.getOwnPropertyDescriptor(window.HTMLTextAreaElement.prototype,"value");Object.defineProperty(this.element,"value",{configurable:!0,get:()=>{var s;return(s=e==null?void 0:e.get)==null?void 0:s.call(this.element)},set:s=>{var r;(r=e==null?void 0:e.set)==null||r.call(this.element,s),this.triggerChange()}});let o=this.element.disabled,n=new MutationObserver(()=>{this.element.disabled!==o&&(o=this.element.disabled,this.emit(o?"disabled":"enabled"))});n.observe(this.element,{attributes:!0,attributeFilter:["disabled"]}),this.disposeHandlers.push(()=>n.disconnect())}};function Fd(t,e,o){let n=`deepdesk-iframe-${t}`,s=document.getElementById(n);if(s)return s;let r=document.createElement("iframe"),i=new URL(e);return Object.entries(o).forEach(([a,c])=>{i.searchParams.append(a,c)}),r.style.position="absolute",r.style.left="-999em",r.style.width="0px",r.style.height="0px",r.tabIndex=-1,r.id=n,r.title=`iframe-${t}`,r.src=i.toString(),window.document.body.appendChild(r),r}function mS(t){if(typeof t!="string")return t;try{return JSON.parse(t)}catch{return t}}var Ir=class{constructor(e){this.name=e;this.broadcastChannel=new BroadcastChannel(e)}broadcastChannel;disposeHandlers=[];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()}},Lr=class{constructor(e,o,n){this.name=e;this.targetOrigin=o;this.options=n;this.iframe=Fd(e,`${this.targetOrigin}/sdk/proxy/proxy.html`,{channel:this.name,host:window.location.origin,debug:"1"}),document.body.appendChild(this.iframe)}iframe;disposeHandlers=[];onMessage(e){window.addEventListener("message",e),this.disposeHandlers.push(()=>{window.removeEventListener("message",e)})}postMessage(e){var o;(o=this.iframe.contentWindow)==null||o.postMessage(JSON.stringify(e),this.targetOrigin)}close(){var e;this.disposeHandlers.forEach(o=>o()),(e=this.iframe)==null||e.remove()}},Ar=class{constructor(e){this.params=e;this.deepdeskUrl=e.deepdeskUrl,this.eventMap=e.eventMap,this.sessionId="deepdesk-general",this.defaultChannel=this.createChannel("deepdesk-general")}sessionId;deepdeskUrl;channel;defaultChannel;eventMap;get isCrossOrigin(){return this.params.deepdeskUrl!==(this.params.origin||window.location.origin)}setSessionId(e){this.sessionId!==e&&(this.cleanup(),C.info("Set sessionId",e),this.sessionId=e,this.channel=this.createChannel(e))}createChannel(e){let o=this.params.createCustomChannel?this.params.createCustomChannel(e):this.isCrossOrigin?new Lr(e,this.deepdeskUrl,{debug:!0}):new Ir(e),n=s=>{var i,a;if(s.origin!==this.deepdeskUrl)return;let r=mS(s.data);typeof r!="object"||r.type!=="event"||r.channel!==e||(C.info("Received broadcast event",this.sessionId,s),(a=(i=this.eventMap)[r.name])==null||a.call(i,r.payload))};return o.onMessage(n),o}send(e,o,n){var i,a;C.info("Broadcast event",{sessionId:this.sessionId,name:e,payload:o});let s={type:"event",name:e,payload:o};n!==!1&&((a=(i=this.eventMap)[e])==null||a.call(i,o));let r=this.sessionId==="deepdesk-general"?this.defaultChannel:this.channel;r==null||r.postMessage({...s,channel:this.sessionId})}cleanup(e=!1){var o,n;(o=this.channel)==null||o.close(),delete this.channel,e&&((n=this.defaultChannel)==null||n.close(),delete this.defaultChannel)}},Hd=Ar;var At=class extends Error{constructor(o,n){super(o);this.body=n}name="CustomError"};var Mr=t=>new Promise(e=>{setTimeout(e,t)});var Mt=class extends At{name="ClientError"},Or=class extends At{name="ServerError"},Nr=new Map;function gS(t){return t.status===204||["0",null].includes(t.headers.get("content-length"))}var he=class t{constructor(e="",o={}){this.baseUrl=e;this.options=o;o.fetch&&(this.fetch=o.fetch)}latestRequestByUrl={};csrfToken;fetch=window.fetch.bind(window);static refreshingToken=null;patchFetch(e){this.fetch=e(this.fetch)}setCsrfToken(e){this.csrfToken=e}request(e,o={}){return new Promise((n,s)=>{let r={isAborted:!1,reject:s},i=`${this.baseUrl}${e}`,a=this.fetch,c=o.method===void 0||o.method.toLowerCase()==="get",{useCache:l=!1,abortLatest:d=!1,attempts:u=1,retryDelay:p=500,refreshTokenOn401:m=!0,retryOnError:g=T=>T instanceof TypeError,retryOnResponse:f=T=>T.status>=500,version:y="v1",...k}=o;if(l)if(c){if(Nr.has(i)){n(Nr.get(i));return}}else throw new Error(`Can't use 'useCache' for ${o.method}`);let v={credentials:"include",...k,headers:{"Content-Type":"application/json",...k.headers}};!c&&this.csrfToken&&(v.headers={...v.headers,"X-CSRFToken":this.csrfToken}),typeof y=="string"&&(v.headers={...v.headers,"X-Deepdesk-API-Version":y});let S=u,P=!1;if(!a)throw new Error("fetch is not set");this.latestRequestByUrl[i]&&d&&(this.latestRequestByUrl[i].isAborted=!0,this.latestRequestByUrl[i].reject(new Error("Aborted"))),this.latestRequestByUrl[i]=r;let x=async()=>(S--,a(i,v).then(async T=>f(T)&&!r.isAborted&&S>0?(await Mr(p),x()):T.status===401&&m===!0&&P===!1?(P=!0,await this.refreshToken(),x()):T).catch(async T=>{if(g(T)&&!r.isAborted&&S>0)return await Mr(p),x();throw T}));x().then(async T=>{let N=await T.json().catch(V=>{if(gS(T))return null;throw V});if(delete this.latestRequestByUrl[i],T.status>=500){s(new Or("Server Error",N));return}else if(T.status===401){s(new Mt("Unauthorized",N));return}else if(T.status===403){s(new Mt("Forbidden",N));return}else if(T.status===404){s(new Mt("Not Found",N));return}else if(T.status>=400){s(new Mt("Bad Request",N));return}l&&Nr.set(i,N),n(N)}).catch(T=>{s(T)})})}async validateToken(){let{has_valid_access_token:e}=await this.get("/auth/validate");if(!e)return!1;let{is_logged_in:o}=await this.get("/apis/admin/session/validate/",{version:null});return!!o}refreshToken(){return t.refreshingToken||(t.refreshingToken=this.get("/auth/refresh",{refreshTokenOn401:!1}).finally(()=>{setTimeout(()=>{t.refreshingToken=null},1e3*60)})),t.refreshingToken}get(e,o){return this.request(e,o)}post(e,o,n){return this.request(e,{method:"POST",body:JSON.stringify(o),...n})}patch(e,o,n){return this.request(e,{method:"PATCH",body:JSON.stringify(o),...n})}put(e,o,n){return this.request(e,{method:"PUT",body:JSON.stringify(o),...n})}delete(e,o){return this.request(e,{method:"DELETE",...o})}};var fS;(e=>{let t;(c=>(c.SEND_MESSAGE="Send Message",c.HANDLING_TIME="Handling Time",c.START_AUTOFLOW="Start Autoflow",c.ABORT_AUTOFLOW="Abort Autoflow",c.ADD_TO_PERSONAL_COLLECTION="Add to personal collection",c.DELETE_FROM_PERSONAL_COLLECTION="Delete from personal collection"))(t=e.EventType||={})})(fS||={});function Un(t){return{...L(t),tags:t.tags}}var Ke=class t{constructor(e,o={}){this.options=o;this.client=new he(e,{fetch:o.fetch}),this.client.patchFetch(n=>async(s,r)=>{let i=await n(s,r);return this.handleDeepdeskVersionHeaders(i),i})}latestReceivedDeepdeskVersions={};client;shouldFetchCsrfToken=!0;static exchangeTokenPromise=null;async preflight(){if(this.shouldFetchCsrfToken){this.shouldFetchCsrfToken=!1;let e=await this.getCsrfToken();this.client.setCsrfToken(e)}return this.options.token?(t.exchangeTokenPromise||(t.exchangeTokenPromise=this.exchangeTokenForAccessCookie(this.options.token)),t.exchangeTokenPromise):Promise.resolve()}async createConversation(e){await this.preflight(),C.info(`Creating conversation for session ${e.sessionId} and agent ${e.agentId}`);let o=await this.client.post("/api/conversations",{...F(e),tags:e.tags},{version:"v2"});return Un(o)}async getProfile(e){let o=await this.client.get(`/apis/admin/profiles/${e}/`,{version:null,useCache:!0});return L(o)}async getKnowledgeAssistant(e){let o=await this.client.get(`/apis/admin/knowledge-assist/assistants/${e}/`,{version:null,useCache:!0});return L(o)}async getContentTypes(){let e=await this.client.get("/apis/admin/content-types/",{version:null,useCache:!0});return L(e)}async getAccount(){let e=await this.client.get("/apis/admin/account/",{version:null,useCache:!0});return L(e)}async getPlatformConfig(){let{config:e}=await this.client.get("/platform/config/",{version:null,useCache:!0});return L(e)}async checkUserExists(e){let{exists:o}=await this.client.get(`/apis/admin/users/exists?external_id=${e}`);return o}async getConversationBySessionId(e,o={}){await this.preflight(),C.info(`Getting conversation for session ${e}`);let{attempts:n=1,retryDelay:s=1e3}=o,r=await this.client.get(`/api/conversations/by_session_id/${e}`,{attempts:n,retryDelay:s,retryOnResponse:i=>i.status===404||i.status>=500,version:"v2"});return C.info(`Successfully retrieved conversation ${r.id} for session ${e}`),Un(r)}async isConversationSupported(e,o={}){C.info(`Check if conversation for session ${e} is supported`);let{attempts:n=1,retryDelay:s=1e3}=o;return(await this.client.get(`/api/conversations/by_session_id/${e}/active_profile`,{attempts:n,retryDelay:s,retryOnResponse:i=>i.status===404||i.status>=500,version:"v2"})).has_active_profile}async updateConversation(e,o){let n=F(o);o.tags&&(n.tags=o.tags);let s=await this.client.put(`/api/conversations/${e}`,n,{version:"v2"});return Un(s)}async postMessages(e,o){return(await this.client.post(`/api/conversations/${e}/messages`,o.map(s=>({...F(s),tags:s.tags})),{version:"v2"})).map(s=>Un(s))}async sendEvent(e,o){let{data:n,...s}=o,r=Object.entries(this.latestReceivedDeepdeskVersions).reduce((i,[a,c])=>({...i,[a]:c}),{});return this.client.post("/api/events",F({...r,...s,data:n,name:e}),{version:"v2"})}async sendEventV1(e,o){let n=Object.entries(this.latestReceivedDeepdeskVersions).reduce((s,[r,i])=>({...s,[r]:i}),{});return this.client.post("/api/events",{event:e,data:F({...o,...n})})}async getEntities(e){return(await this.client.post("/api/entities",{messages:e.filter(n=>n.text)})).entities}async getSummary(e,o={}){let n=await this.client.post("/api/summary",{conversation:{messages:e.filter(s=>s.text&&s.source),agent_id:o.agentId,id:o.externalConversationId},prompt_instruction:o.promptInstruction,model:o.model});return L(n)}async getTemporaryExchangeToken(){return(await this.client.get("/auth/exchange-token",{version:null})).jwt}async exchangeTokenForAccessCookie(e){return this.client.post("/apis/admin/session/jwt/",{jwt:e},{version:null}).catch(o=>{throw C.warn(`Invalid token '${e}'`),o})}async authenticateWithKey(e,o){await this.preflight(),await this.client.post("/apis/admin/session/api-key/",F(o),{version:null,refreshTokenOn401:!1,headers:{apikey:e}})}async getTextSuggestions(e,o={},n){return n==="sticky-messages"?this.getPinnedMessages(e):(await this.client.post(`/api/conversations/${e}/recommend/${n}`,F(o),{abortLatest:!0})).map(r=>({...L(r),text:r.text||r.url||r.message,source:n,type:n})).filter((r,i,a)=>i===a.findIndex(c=>c.text===r.text))}async isLoggedIn(){return await this.preflight(),this.client.validateToken()}async getAutocompleteSuggestions(e,o){return(await this.client.post(`/api/conversations/${e}/autocomplete`,F(o),{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))}async getPinnedMessages(e){let o=await this.client.get(`/api/conversations/${e}/sticky-messages`,{abortLatest:!0});return L(o).map(n=>({...n,text:n.message,source:"sticky-messages",type:"pinned-message"}))}async getStyleSuggestions(e){let o=await this.client.post("/api/style-suggestions",F(e),{abortLatest:!0});return L(o)}async search(e){let o=await this.client.post(`/api/profiles/${e.profile}/search`,F(e),{version:"v2"});return L(o)}async knowledgeAssist(e,o,n,s={}){let r=await this.client.post(`/api/knowledge-assist/assistants/${n}/search`,F({question:e.question,doNotKnowAnswer:e.doNotKnowAnswer,customerInstruction:e.customerInstruction,chatHistory:o.map(i=>({question:i.question,answer:i.answer.answer})),agentId:s.agentId,conversationId:s.conversationId}),{version:"v2"});return L(r)}async requestLoginByEmail(e){let o=await this.client.post("/apis/admin/session/passwordless/request/",{email:e},{version:null});return L(o)}async requestPasswordlessToken(){let e=await this.client.get("/apis/admin/session/passwordless/request/",{version:null});return L(e.token)}async getCsrfToken(){let{token:e}=await this.client.get("/apis/admin/session/csrf/",{version:null});return e}async verifyLoginToken(e){let o=await this.client.post("/apis/admin/session/passwordless/login/",{token:e},{version:null});return L(o)}async evaluateRule(e,o,n,s={}){let r=new URLSearchParams;s.raiseForFailingConditions&&r.set("raise_for_failing_conditions","true");let i=await this.client.post(`/api/conversations/${o}/rules/${e}/evaluate?${r.toString()}`,n,{version:"v2"});return L(i.cues)}async getRules(){let e=new URLSearchParams,o=await this.client.get(`/apis/admin/rule-engine/rules/?${e.toString()}`,{version:null,useCache:!0});return L(o)}async translateMessages(e){let o=await this.client.post("/api/translate",F(e),{version:"v2"});return L(o)}handleDeepdeskVersionHeaders(e){e.headers.forEach((o,n)=>{let s=n.toLowerCase(),r=s.match(oi);if(!o||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&o&&a!==o&&C.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(o)}`),this.latestReceivedDeepdeskVersions[i]=o})}};var fo=class{constructor(e,o){this.url=e;this.options={timeout:25e3,...o}}eventListeners={};options;timeoutTimer;eventSource;proxyEvent(e){this.eventSource.addEventListener(us(e),o=>{let{data:n}=o;try{let s=JSON.parse(n);this.emit(e,L(s))}catch{C.warn(`Invalid JSON for ${e}: ${n}`)}})}connect(){clearTimeout(this.timeoutTimer);let e=new EventSource(this.url,{withCredentials:!0});this.eventSource=e;let o=!1;e.onopen=()=>{o=!0},e.onerror=()=>{o&&e.readyState===2&&this.connect()},this.timeoutTimer=setTimeout(()=>{e.close(),this.connect()},this.options.timeout),Object.keys(this.eventListeners).forEach(n=>{this.proxyEvent(n)})}disconnect(){var e;clearTimeout(this.timeoutTimer),this.eventListeners={},(e=this.eventSource)==null||e.close()}emit(e,o){this.eventListeners[e]&&this.eventListeners[e].forEach(n=>n(o))}on(e,o){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o),this.proxyEvent(e),()=>{this.off(e,o)}}off(e,o){let n;this.eventListeners[e]&&(n=this.eventListeners[e].indexOf(o),n>-1&&this.eventListeners[e].splice(n,1))}};var hS;(e=>{let t;(r=>(r.Started="Started",r.Aborted="Aborted",r.Completed="Completed"))(t=e.AutoflowSessionState||={})})(hS||={});var ho=class{constructor(e,o={}){this.apiUrl=e;this.client=new he(e,o)}client;streams={};logger=C;async getCustomMessages(e){let o=await this.client.get(`/sessions/${e}/suggestions`);return L(o.suggestions)}async sendCustomMessage(e,o){let n=await this.client.post(`/sessions/${e}/messages`,F(o));return L(n)}async answerCustomMessage(e,o){await this.client.post(`/sessions/${e}/answers`,F(o))}async getAutoflows(e){let o=await this.client.get(`/sessions/${e}/autoflows`);return L(o.autoflows)}async startAutoflowSession(e){let o=await this.client.post("/autoflow-sessions",F(e));return L(o)}async stopAutoflowSession(e){await this.client.delete(`/autoflow-sessions/${e}`)}openStream(e){return this.streams[e]||(this.streams[e]=new fo(`${this.apiUrl}/sessions/${e}/events`),this.streams[e].connect()),this.streams[e]}closeStream(e){this.streams[e]||(this.streams[e].disconnect(),delete this.streams[e])}};import{combineReducers as wS,configureStore as TS}from"@reduxjs/toolkit";import{createSlice as yS}from"@reduxjs/toolkit";var Bd={startTime:null,stopTime:null},Kd=yS({name:"handlingTime",initialState:Bd,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(M,()=>Bd)}}),{handlingTimeStart:Ud,handlingTimeStop:zn,handlingTimeReset:zd}=Kd.actions,Vd=Kd.reducer;var $d=(t={})=>{let e={onAuthError:lt(!1),...t};return o=>n=>s=>("error"in s&&s.error.message==="Unauthorized"&&o.dispatch(e.onAuthError),n(s))};import{createAsyncThunk as vS,createSlice as SS}from"@reduxjs/toolkit";var Vn={list:{keywordMatches:[]},fetchState:"idle"};var nt=vS("styleSuggestions/getAll",async({text:t},e)=>{var i;let{deepdeskAPI:o}=e.extra,n=e.getState(),{showStyleSuggestions:s}=n.settings,r=(i=n.conversation.current)==null?void 0:i.profileCode;if(!s)return Vn.list;if(!r)throw new Error("No current conversation to fetch pinned messages");return o.getStyleSuggestions({profileCode:r,message:t})}),xS=SS({name:"styleSuggestions",initialState:Vn,reducers:{},extraReducers:t=>{t.addCase(nt.pending,e=>{e.fetchState="loading"}).addCase(nt.rejected,e=>{e.fetchState="error"}).addCase(nt.fulfilled,(e,o)=>{e.fetchState="done",Le(e.list,o.payload)||(e.list=o.payload)}).addCase(Ve,e=>{e.list=Vn.list}).addCase(M,()=>Vn)}}),Wd=xS.reducer;var Gd=(t={})=>{let e,o=!0,n={getStyleSuggestions:nt,debounce:500,...t};return s=>r=>i=>{var m;let a=s.getState().input.text,c=r(i),l=s.getState();if(l.auth.isLoggedIn!==!0)return c;let{showStyleSuggestions:d}=l.settings;if(!((m=l.conversation.current)==null?void 0:m.id)||!d)return c;let{text:p}=l.input;return p===a&&!o||(clearTimeout(e),p==="")||(e=setTimeout(()=>{o=!1,s.dispatch(n.getStyleSuggestions({text:p}))},t.debounce)),c}};function bS(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var jd=(t={})=>{let e={getTextSuggestions:ce,getAutocompleteSuggestions:eo,debounce:200,check:wt,...t},o;return n=>s=>r=>{var f;let{input:{userCommitted:i}}=n.getState(),a=s(r),c=n.getState();if(c.auth.isLoggedIn!==!0)return a;let{recommendTextSuggestions:l,showTabCompletion:d}=c.settings,u=(f=c.conversation.current)==null?void 0:f.id,p=r.type===dn.toString();if(!u||!l&&!d)return a;let{input:{userCommitted:m}}=c;return bS(m,i)&&!p||(clearTimeout(o),!e.check(c))||(o=setTimeout(()=>{let y=mt(c);y===""?n.dispatch(e.getTextSuggestions("default")):n.dispatch(e.getAutocompleteSuggestions(y))},p?0:e.debounce)),a}};var qd=nt.fulfilled.toString();function CS(t,e){let o=new Set([...e.keywordMatches.map(s=>s.keyword)]),n=[];return o.forEach(s=>{let r=t.keywordMatches.filter(c=>c.keyword===s),i=e.keywordMatches.filter(c=>c.keyword===s),a=i.length-r.length;a<=0||n.push(...i.slice(0,a))}),n}var Xd=t=>e=>o=>n=>{var l;if(n.type!==qd){o(n);return}let s=e.getState().styleSuggestions.list;o(n);let r=e.getState(),i=r.styleSuggestions.list,a=(l=r.conversation)==null?void 0:l.current;if(s===i)return;let c=CS(s,i);n.type===qd&&c.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:c}})};var ES=wS({answer:rl,auth:ui,autoflows:Lc,conversation:fi,contentTypes:ua,customMessages:Bc,passwordlessToken:$c,entities:Fa,knowledgeAssistant:ol,handlingTime:Vd,info:_i,input:Li,settings:si,profile:pl,search:Vi,summary:Wa,styleSuggestions:Wd,ui:Fl,rules:qc,textSuggestions:bl});function Zd(t){return TS({reducer:ES,middleware:e=>[...e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI,deepdeskBrokerAPI:t.deepdeskBrokerAPI}},serializableCheck:!1}),$d(),jd({debounce:200}),Gd({debounce:500}),Xd(t.deepdeskAPI),...t.middleware?t.middleware:[]],preloadedState:t.preloadedState})}var kS=t=>{var e;return((e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())??"unknown"},RS=t=>e=>o=>n=>{var a;let s=e.getState(),r=rs("inlineSuggestions")(s);switch(n.type){case lt.toString():{!n.payload&&t.emit("logout",void 0);break}case ae.fulfilled.toString():n.payload.length>0&&t.sendEvent("entities found",{conversationId:s.conversation.current.id,data:{entities:n.payload}});break;case G.toString():t.sendEvent(n.payload.name,{conversationId:((a=n.payload.options)==null?void 0:a.includeConversationData)&&s.conversation.current.id,data:n.payload.data});break;case Mo.toString():t.handleKeyDown(n.payload);break;case Ve.toString():t.logSendMessage(n.payload);break;case No.toString():t.handleInputChanged(n.payload);break;case et.fulfilled.toString():n.isBroadcasted||t.broadcast(fs,n,!1),t.emit("cues",n.payload);break;default:break}let i=o(n);switch(n.type){case Ve.toString():t.handleAfterSendMessage(n.payload);break;case to.toString():t.onUpdateShowTabHint(n.payload);break;case zn.toString():t.logHandlingTime();break;case"analytics/logEvent/fulfilled":{t.emit("event",n.meta.arg);break}case me.toString():{let{start:c,end:l}=s.input.selection;t.emit("select-suggestion",{type:kS(n.payload.suggestion),...n.payload,replace:n.payload.replace==="selection"?{start:c,end:l}:{start:0,end:l}},{mayApplyChanges:!0}),r&&(e.dispatch(pe([])),e.dispatch(be()));break}case Ao.toString():{let{start:c,end:l}=s.input.selection;t.emit("replace",{...n.payload,replace:n.payload.replace==="selection"?{start:c,end:l}:{start:0,end:l}},{mayApplyChanges:!0});break}case Bt.toString():{let c=e.getState(),{text:l,selection:d}=c.input.userCommitted;t.emit("reset",{text:l,selectionAfter:d},{mayApplyChanges:!0});break}case Oo.toString():t.emit("select-image",n.payload,{mayApplyChanges:!0}),t.sendEvent("Image attached",{conversationId:s.conversation.current.id,data:{path:n.payload.suggestion.image,title:n.payload.suggestion.title}});break;case pe.toString():{r&&n.payload.length>0&&e.dispatch(Me(0));break}case Ce.fulfilled.toString():{t.sendEvent("conversation summarized",{conversationId:s.conversation.current.id,data:{summary:n.payload.summary,model:e.getState().summary.model}});break}default:break}return i},Qd=RS;function Dr(t){return t.toISOString().replace("T"," ").replace("Z","")}function Jd(t,e){var s,r,i;let{startTime:o,stopTime:n}=t.handlingTime;if(!o||!n)throw new Error("No startTime and stopTime for handling time metrics");return{conversationId:t.conversation.current.id,clientVersion:e.version,agentId:(s=t.info.agentInfo)==null?void 0:s.agentId,agentName:(r=t.info.agentInfo)==null?void 0:r.agentName,agentEmail:(i=t.info.agentInfo)==null?void 0:i.agentEmail,timeStart:Dr(o),timeStop:Dr(n)}}function Yd(t,e,o){var N,V,H;let{text:n,metrics:{numCharsTyped:s,numCharsPasted:r,numCharsCut:i,numCharsDeleted:a,numPaste:c,agentStartedTypingTimestamp:l,externalTimeTotalSeconds:d,pastes:u,cuts:p,deletions:m,textSuggestions:g,offeredTextSuggestions:f}}=e[t],y=n.length,v=g.reduce((I,{text:O,searchTerm:$})=>I+O.length-($?$.length:0),0),S=l??Date.now(),P=(Date.now()-S)/1e3+(d||0),x=s/P,T=g.reduce((I,{searchTerm:O})=>I+(O?O.length:0),0);return{conversationId:e.conversation.current.id,source:"agent",text:n,clientVersion:o.version,pastes:u,cuts:p,deletions:m,lenTextTyped:s+T,lenTextTotal:y,lenTextAssisted:v,lenTextPasted:r,lenTextCut:i,lenTextDeleted:a,timeTotalSeconds:P,charsPerSecond:x,numPastes:c,textSuggestionsV2:g,suggestionsCounters:[{source:"gpt",countOffered:f.filter(I=>I.source==="gpt").length}],agentId:(N=e.info.agentInfo)==null?void 0:N.agentId,agentName:(V=e.info.agentInfo)==null?void 0:V.agentName,agentEmail:(H=e.info.agentInfo)==null?void 0:H.agentEmail}}function _r(t,e){var r;let o=t.closest(e);if(o)return o;let n=t.getRootNode().host;if(n instanceof HTMLElement)return _r(n,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?_r(s,e):null}function eu(t,e){return _r(t,e)}function tu(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function PS(t){return typeof t=="object"&&t!==null&&"tagName"in t}function Fr(t){return PS(t)&&(Fe(t)||xn(t))}var nu,ye=new Map,IS=["bottom","height","left","right","top","width"],ou=(t,e)=>!t&&!e?!1:t&&!e||!t&&e?!0:IS.some(o=>t[o]!==e[o]);function su(t){var o,n;if(t.ownerDocument===document)return[];let e=((n=(o=t.ownerDocument)==null?void 0:o.defaultView)==null?void 0:n.frameElement)??null;return e?[e,...su(e)]:[]}function ru(t,e){return!t||!e?null:{...t,top:t.top+e.top,left:t.left+e.left}}var $n=!1,iu=()=>{$n=!0;let t=[];if(ye.forEach((e,o)=>{if(!o.isConnected){e.rect=null,t.push(e),ye.delete(o);return}let n=o.getBoundingClientRect();ou(n,e.rect)&&(e.rect=n,t.push(e))}),t.forEach(e=>{let o=e.parentRects?e.parentRects.reduce(ru,e.rect):e.rect;ou(o,e.totalRect)&&e.callbacks.forEach(n=>n(o)),e.totalRect=o}),ye.size===0){$n=!1;return}nu=window.requestAnimationFrame(iu)};function Hr(t,e){let o=su(t),n=[],s=o.map((r,i)=>Hr(r,a=>{n[i]=a;let c=ye.get(t);if(!c)return;let l=n.reduce(ru,c.rect);c.callbacks.forEach(d=>d(l))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),ye.has(t)){let i=ye.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else ye.set(t,{rect:void 0,callbacks:[e],parentRects:n});r&&!$n&&iu()},unobserve(){s.forEach(i=>i.unobserve());let r=ye.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||ye.delete(t),ye.size||(cancelAnimationFrame(nu),$n=!1)}}}}var au,ve=new Map,lu=()=>{ve.forEach((t,e)=>{if(!e.isConnected){ve.delete(e);return}let{clientHeight:o,scrollHeight:n}=e,s=n>o;t.visible!==s&&(t.visible=s,t.callbacks.forEach(r=>r(t.visible)))}),ve.size!==0&&(au=window.requestAnimationFrame(lu))};function cu(t,e){return{observe(){let o=ve.size===0;ve.has(t)?ve.get(t).callbacks.push(e):ve.set(t,{visible:void 0,callbacks:[e]}),o&&lu()},unobserve(){let o=ve.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||ve.delete(t),ve.size||cancelAnimationFrame(au)}}}}var Br=["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 Kr(t,e,o){return o.forEach(n=>{e.style[n]=t[n]})}function Nt(t){return parseFloat(t)}function Wn(t){return Math.round(t*1e6)}function du(t){return t/1e6}function Ur(t,e,o){if(t.boxSizing==="content-box")return;let{clientWidth:n}=e,s=Nt(t.width),r=Nt(t.borderLeftWidth),i=Nt(t.borderRightWidth),a=Nt(t.paddingRight),c=du(Wn(s)-Wn(r)-Wn(i)),l=du(Wn(n));if(c-l>2){let d=c-l;o.style.paddingRight=`${a+d}px`}}function Gn(t,e={}){var d;let o=e.overlayContainer||document.createElement("div");o.style.display="none",o.style.position=e.position??"fixed",o.style.pointerEvents="none",o.style.borderColor="transparent",Qe(o);let n=window.getComputedStyle(t),s=!0,r=()=>{o.scrollTop=t.scrollTop};Kr(n,o,Br),Ur(n,t,o),e.mirrorOverflow&&(o.style.overflow="hidden",t.addEventListener("scroll",r));let i=cu(t,()=>{Kr(n,o,Br),Ur(n,t,o),r(),setTimeout(r,0)}),a,c=!0,l=Hr(t,u=>{if(u===null){e.onRemove&&e.onRemove(),o.remove();return}if(!c&&e.onMoveStart&&(Promise.resolve().then(()=>e.onMoveStart()),c=!0),clearTimeout(a),a=setTimeout(()=>{e.onMoveEnd&&e.onMoveEnd(),c=!1},200),u.height===0&&u.width===0){if(s===!0)return;e.onHide&&e.onHide(),o.style.display="none",s=!0;return}if(Kr(n,o,Br),Ur(n,t,o),r(),o.style.top=`${u.top}px`,o.style.left=`${u.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let p=e.closestScrollElement.getBoundingClientRect(),m=window.getComputedStyle(e.closestScrollElement),g=Nt(m.borderTopWidth),f=Nt(m.borderBottomWidth),y=p.top+g-u.top,k=u.top+u.height+-(p.top+p.height-f);o.style.clipPath=`inset(${y}px 0px ${k}px 0px)`}s&&(o.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(o):(d=t.parentElement)==null||d.appendChild(o),l.observe(),i.observe(),[o,()=>{t.removeEventListener("scroll",r),l.unobserve(),i.unobserve()}]}var uu=(t,e)=>({value(){try{let o=sessionStorage.getItem(`dd-${t}`);if(!o)return e;try{return JSON.parse(o)}catch{return e}}catch{return e}},update(o){try{sessionStorage.setItem(`dd-${t}`,JSON.stringify(o))}catch{C.warn("[Deepdesk] SessionStorage is blocked by browser")}}});function LS(t){return t.offsetParent!==null}function pu(t){if(!LS(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 zr(t,e,o=100){let n=pu(t);e({isVisible:n});let s=setInterval(()=>{let r=pu(t);r!==n&&(n=r,e({isVisible:n}))},o);return()=>{clearTimeout(s)}}import{jsx as K}from"react/jsx-runtime";var mu=uu("showTabHint",!0),qn=class t{static version="11.3.1-beta.1";static count=0;deepdeskApi;inputMediator=null;version;broadcastEvents;eventListeners={};unmountHandlers=[];widgetRoot=null;dynamicThunkObject={};isMounted=!1;instanceId;shouldRender=!0;store;constructor({deepdeskUrl:e,brokerUrl:o,version:n=t.version||"unknown",locale:s="en-US",token:r,fetch:i,productName:a,createCustomChannel:c}){let l=e.replace(/\/api$/,"");this.deepdeskApi=new Ke(l,{token:r,fetch:i}),this.version=n,this.instanceId=t.count++;let d={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[Qd({broadcast:(u,p,m)=>{this.broadcastEvents.send(u,p,m)},emit:(u,p,m)=>this.emit(u,p,m),handleAfterSendMessage:u=>this.handleAfterSendMessage(u),handleInputChanged:u=>this.handleInputChanged(u),handleKeyDown:u=>this.handleKeyDown(u),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:u=>this.logSendMessage(u),onUpdateShowTabHint:u=>mu.update(u),sendEvent:(u,p)=>this.deepdeskApi.sendEvent(u,p)})]};o&&Object.assign(d,{deepdeskBrokerAPI:new ho(o)}),this.store=Zd(d),this.broadcastEvents=new Hd({debug:!0,deepdeskUrl:l,eventMap:$i(this.store),createCustomChannel:c}),this.store.dispatch(to(mu.value())),this.store.dispatch(To({locale:s,adminUrl:l,productName:a}))}get state(){return this.store.getState()}get settings(){return this.state.settings}get selectedTextSuggestion(){return this.state.input.textSuggestions[this.state.input.selectedSuggestionIndex]??null}hasConversation(){return!!this.state.conversation.current}conversationId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.id}sessionId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.sessionId}shouldAbort(){return this.state.conversation.isSupported===!1?(C.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(C.warn("Profile has not been loaded (yet)"),!0):(C.warn("No conversation loaded (yet)"),!0)}login(){return this.store.dispatch(lt(null)),this.store.dispatch(xe()),new Promise(e=>{let o=this.store.subscribe(()=>{let n=this.store.getState();X(n)&&ri(n)!=="loading"&&(o(),e())});this.unmountHandlers.push(()=>{o()})})}async isLoggedIn(){return(await this.store.dispatch(xe())).payload}async setPlatformAgentId(e){try{if((await this.deepdeskApi.client.get("/apis/admin/session/me/",{version:null})).external_id)return;await this.deepdeskApi.client.request("/apis/admin/session/me/",{method:"PATCH",body:JSON.stringify({external_id:e}),version:null})}catch(o){C.warn("Failed to attach user:",o)}}async isConversationSupported(e,o){return(await this.store.dispatch(ls({sessionId:e,options:o}))).payload}async createConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(ko(e))).payload}async getConversationBySessionId(e,o){return this.hasConversation()&&this.sessionId()!==e&&this.resetConversation(),(await this.store.dispatch(Ro({sessionId:e,options:o}))).payload}async upsertConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(cs(e))).payload}async postMessages(e){return(await this.store.dispatch(Io(e))).payload}async updateConversation(e){return(await this.store.dispatch(Po(e))).payload}resetConversation(){this.store.dispatch(M()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}async getSummary(){let e=await this.store.dispatch(Ce());if(e.error)throw new Error(e.error.message);return e.payload.summary}configure(e){this.store.dispatch(To(e))}setVisitorInfo(e){this.store.dispatch(Oi(e))}setCustomData(e){this.store.dispatch(Di(e))}async setAgentInfo(e){await this.store.dispatch(Kt(e))}async setAgentSettings(e){await this.store.dispatch(ms(e))}async getAgentSettings(){return(await this.store.dispatch(gs())).payload}async refresh(){if(this.shouldAbort())return Promise.resolve();this.inputMediator&&this.handleInputChanged(this.inputMediator.getText());let e=[];return this.store.dispatch(dn()),e.push(this.refreshWidgetSuggestions()),Promise.all(e).then(()=>{})}notifyInputChanged(e){this.store.dispatch(No(e))}notifyKeyDown(e){this.store.dispatch(Mo(e))}notifyPaste(e,o){this.store.dispatch(ki({text:e,selectionText:o}))}notifyCut(e){this.store.dispatch(Ti(e))}notifyExternalSuggestion(e){this.store.dispatch(me(e)),this.store.dispatch(be())}async evaluateRule(e,o={}){let{payload:n,error:s}=await this.store.dispatch(et({label:e,params:o}));if(s)throw new Error(s.message);return n}handleInputChanged(e){let{overlayCollapsed:o,openOverlayWhenTyping:n}=this.state.ui;o&&n&&this.store.dispatch(_e({collapse:!1})),this.inputMediator&&this.store.dispatch(Si({text:e,html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),!this.shouldAbort()&&(this.isMounted||this.store.dispatch(pe([])))}handleKeyDown(e){let{overlayCollapsed:o}=this.state.ui,{textSuggestions:n,selectedSuggestionIndex:s,selection:r}=this.state.input,{inlineSuggestions:i}=this.state.settings,a=n.length>0,c=s!==-1;if(this.store.dispatch(Ei(hi(e))),e.key!=="Tab"&&!this.settings.showTextSuggestions)return;let l=()=>{o||!a||r&&(e.shiftKey||(this.store.dispatch(bi()),i||this.stageSelectedSuggestion({inputType:"arrow"}),e.preventDefault()))},d=()=>{o||!a||i&&s<=0||r&&(e.shiftKey||(this.store.dispatch(wi()),e.preventDefault(),!i&&(this.state.input.selectedSuggestionIndex===-1?this.store.dispatch(Bt()):this.stageSelectedSuggestion({inputType:"arrow"}))))};switch(e.key){case"Up":case"ArrowUp":i?d():l();return;case"Down":case"ArrowDown":{i?l():d();return}case"Esc":case"Escape":{i&&c&&this.store.dispatch(Me(-1)),this.state.input.selectedSuggestionIndex!==-1?(this.store.dispatch(Me(-1)),this.store.dispatch(Bt()),e.preventDefault()):o||(this.store.dispatch(_e({collapse:!0})),this.store.dispatch(Dl(!0)),e.preventDefault());return}case"Tab":{let{userCommitted:u}=this.state.input,p=u.text.substring(0,u.selection.end),{tabCompletionSuggestion:m}=this.state.input;this.store.dispatch(to(!1)),this.state.input.selectedSuggestionIndex>-1?this.stageSelectedSuggestion({inputType:"tab"}):!i&&this.settings.showTabCompletion&&m&&m.text.startsWith(p)&&(this.store.dispatch(me({text:m.text,suggestion:m,eventMetrics:{inputType:"tab"},replace:"until-selection-end"})),this.store.dispatch(be())),e.preventDefault();break}default:}}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(Ri()),this.store.dispatch(pe([]))}handlingTimeStart(){this.state.handlingTime.startTime||(C.info("Start handling time"),this.store.dispatch(Ud()))}handlingTimeStop(){this.state.handlingTime.startTime&&(C.info("Stop handling time"),this.store.dispatch(zn()))}logSendMessage(e){let o=Yd("input",this.state,{version:this.version});e&&(Object.assign(o,{text:e}),Object.assign(o,{lenTextTotal:e.length})),this.deepdeskApi.sendEventV1("Send Message",o),this.emit("send-message-event",o)}logHandlingTime(){let e=Jd(this.state,{version:this.version});this.deepdeskApi.sendEventV1("Handling Time",e),this.store.dispatch(zd())}notifySubmit(e={}){this.shouldAbort()||(this.store.dispatch(be()),this.store.dispatch(Ve(e.text??this.state.input.text)))}stageSelectedSuggestion(e){let o=this.state.input.selectedSuggestionIndex,{textSuggestions:n}=this.state.input;this.store.dispatch(me({text:n[o].text,suggestion:n[o],eventMetrics:e,replace:"until-selection-end"}))}emit(e,o,n={}){let s=()=>{this.eventListeners[e]&&this.eventListeners[e].forEach(r=>{try{r(o)}catch(i){C.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),C.error(i)}})};this.inputMediator&&n.mayApplyChanges?this.inputMediator.applyChanges(s):s()}on(e,o){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o),()=>{this.off(e,o)}}off(e,o){if(!e&&!o){this.eventListeners={};return}let n;this.eventListeners[e]&&(n=this.eventListeners[e].indexOf(o),n>-1&&this.eventListeners[e].splice(n,1))}setConversationQuery(e){this.dynamicThunkObject.conversationQuery=e}whenConversationLoaded(e){let o=()=>this.loadProfileConfig().then(()=>e());this.hasConversation()&&o();let n=this.hasConversation();this.store.subscribe(()=>{this.hasConversation()!==n&&(n=this.hasConversation(),n&&o())})}overlayContainerFactory(e,o,n,s){let[r,i]=Gn(o,n);return r.setAttribute("translate","no"),r.dataset.testid=e,s&&r.classList.add(s),this.unmountHandlers.push(()=>{jn(r),i(),r.remove()}),r}createInlineContainer(e,o){var i;let n=document.createElement("div");n.style.position="absolute",n.style.top="0px",n.style.left="0px",n.style.height="0px",n.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",n.appendChild(s);let r=(i=e.ownerDocument.defaultView)==null?void 0:i.frameElement;if(r){let[a,c]=Gn(r,{appendTo:document.body,onMoveStart:()=>{s.style.display="none"}});a.dataset.testid=o,a.style.zIndex="2",a.appendChild(n),this.unmountHandlers.push(()=>{jn(s),c()})}else document.body.appendChild(n);return s}createContainer(e,o=document.body){let n=window.getComputedStyle(o),s=document.createElement("div");return Qe(s),s.dataset.testid=e,s.style.color=n.color,s.style.fontSize=n.fontSize,s.style.fontFamily=n.fontFamily,s.style.fontVariant=n.fontVariant,s.setAttribute("translate","no"),o.appendChild(s),this.unmountHandlers.push(()=>{jn(s),s.remove()}),s}storeMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,o=JSON.stringify({text:this.state.input.text,metrics:this.state.input.metrics});window.sessionStorage.setItem(e,o),C.info(`Stored analytics for ${this.conversationId()}`)}catch{}}restoreMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,o=window.sessionStorage.getItem(e);if(!o)return;let n=JSON.parse(o);n.text.trim()===this.state.input.text.trim()?(C.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(Ii(n.metrics))):C.warn(`Metrics mismatch, disregarding stored metrics for ${this.conversationId()}`),window.sessionStorage.removeItem(e)}catch{}}mount(e,o={}){if(this.isMounted)throw new Error("[Deepdesk] This instance was already mounted. Make sure to unmount before you remount.");if(!Fr(e))throw new Error("[Deepdesk] Only mount on textarea or contentEditable div.");if(!this.shouldRender)return;let{customStyles:n={},showStyleSuggestions:s,showTabCompletion:r,showTextSuggestions:i,textSuggestionsCount:a,showMidSentenceSuggestions:c,showSuggestionsBeforePattern:l,showSuggestionsAfterPattern:d,isEmbedded:u,detectSubmit:p,insertLink:m,inputMediator:g,closestScrollSelector:f,appendOverlayTo:y,inlineSuggestions:k,floatingMenu:v}=o;this.configure({showStyleSuggestions:s,showTabCompletion:r,textSuggestionsCount:a,showMidSentenceSuggestions:c,showSuggestionsBeforePattern:l,showSuggestionsAfterPattern:d,showTextSuggestions:i,insertLink:m,isEmbedded:u,inlineSuggestions:k,floatingMenu:!!v}),o.automaticHandlingTime&&this.setupHandlingTime(e),Qe(e),this.inputMediator=g||(Fe(e)?new Lt(e):new It(e)),this.inputMediator.on("change",({plainText:x})=>{this.notifyInputChanged(x)}),this.inputMediator.on("updated",()=>{this.inputMediator&&this.store.dispatch(Pi({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()}))}),this.inputMediator.on("keydown",x=>{this.notifyKeyDown(x)}),this.inputMediator.on("paste",({pastedText:x,selectionText:T})=>{this.notifyPaste(x,T)}),this.inputMediator.on("cut",({selectionText:x})=>{this.notifyCut(x)});let S=f&&eu(e,f)||void 0;if(k){let{customStyles:x,appendOverlayTo:T}=o;if(Fe(e))throw new Error("[Deepdesk] Inline suggestion is not supported for textarea yet.");let N=this.createInlineContainer(e,"deepdesk-caret");Ot(K(Je,{store:this.store,customStyles:x,children:K(We,{broadcastEvents:this.broadcastEvents,children:K(Vl,{})})}),N),this.inputMediator.on("caret",H=>{this.store.dispatch(pe([])),H?(N.style.display="block",N.style.top=`${H.top}px`,N.style.left=`${H.left}px`):N.style.display="none"});let V=this.overlayContainerFactory("floating-menu",S||e,{appendTo:typeof v=="object"&&"appendOverlayTo"in v?v.appendOverlayTo:T},x==null?void 0:x.floatingMenuRootNode);Ot(K(Je,{store:this.store,customStyles:x,children:K(We,{broadcastEvents:this.broadcastEvents,children:K(Nl,{onLogIn:()=>this.loginViaPopup().catch(H=>C.warn(H.message))})})}),V)}else{let x=this.overlayContainerFactory("deepdesk-tab-completion",S||e,{appendTo:y,closestScrollElement:S,mirrorOverflow:!0,onRemove:()=>this.unmount()},n==null?void 0:n.rootNode),T=this.overlayContainerFactory("deepdesk-suggestions-overlay",S||e,{appendTo:y},n==null?void 0:n.suggestionsRootNode);Ot(K(Je,{store:this.store,customStyles:n,children:K(We,{broadcastEvents:this.broadcastEvents,children:K(Tc,{inputElement:e})})}),x),Ot(K(Je,{store:this.store,customStyles:n,children:K(We,{broadcastEvents:this.broadcastEvents,children:K(Yl,{onLogIn:()=>this.loginViaPopup().catch(N=>C.warn(N.message))})})}),T)}Ot(K(Je,{store:this.store,customStyles:n,children:K(We,{broadcastEvents:this.broadcastEvents,children:K(Rl,{})})}),this.createContainer("deepdesk-overlays"));let P;this.inputMediator.on("selection",x=>{clearTimeout(P),x===null?P=setTimeout(()=>{x!==null&&this.store.dispatch(ds(x))},500):this.store.dispatch(ds(x))}),this.inputMediator.on("disabled",()=>{var x;(x=this.inputMediator)==null||x.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{p&&this.notifySubmit()}),this.inputMediator.on("blur",()=>this.store.dispatch(nr(!1))),this.inputMediator.on("focus",()=>this.store.dispatch(nr(!0))),this.store.dispatch(xi({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),this.unmountHandlers.push(()=>{this.state.input.text!==""&&(this.store.dispatch(be()),this.storeMetrics())}),this.whenConversationLoaded(()=>{var x;this.restoreMetrics(),this.refresh(),this.broadcastEvents.setSessionId((x=this.state.conversation.current)==null?void 0:x.sessionId)}),this.isMounted=!0}unmount(){var e;this.unmountHandlers.forEach(o=>o()),this.unmountHandlers=[],(e=this.inputMediator)==null||e.dispose(),this.broadcastEvents.cleanup(),this.isMounted=!1}renderWidget(e,o={}){if(this.widgetRoot&&C.warn("A widget was already rendered for this instance. Make sure to unmountWidget before rerendering"),!this.shouldRender)return;let{customStyles:n,showImages:s,isEmbedded:r}=o;this.widgetRoot=e,this.configure({showImages:s,isEmbedded:r}),Ot(K(Je,{store:this.store,customStyles:n,children:K(We,{broadcastEvents:this.broadcastEvents,children:K(Nd,{onLogIn:()=>this.loginViaPopup().catch(i=>C.warn(i.message))})})}),e),this.whenConversationLoaded(()=>{var i;this.broadcastEvents.setSessionId((i=this.state.conversation.current)==null?void 0:i.sessionId)})}unmountWidget(){this.widgetRoot&&jn(this.widgetRoot),this.widgetRoot=null}setupHandlingTime(e){let o=zr(e,({isVisible:n})=>{n?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),o()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){tu(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfigPromise=null;loadProfileConfig(){return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(this.loadProfileConfigPromise=Promise.resolve().then(async()=>{await this.store.dispatch(Yt());let e=Te(this.state);e&&(await this.store.dispatch(Jt()),this.store.dispatch(To({showSearch:e.search,showAutoflows:e.autoflows,showCustomMessages:e.customMessages,showImageSearch:e.imageSearch,showEntitiesCommand:e.entitiesCommand,showSummaryCommand:e.summarizer,showKnowledgeSearch:!!e.knowledgeAssistant,recommendTextSuggestions:e.recommendTextSuggestions})))}),this.loadProfileConfigPromise)}async loginViaPopup(e){return new Promise((o,n)=>{let s=new MessageChannel,r=s.port1,i=this.state.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 c=!1,l=()=>{d&&!d.closed&&d.close(),window.removeEventListener("message",u),clearInterval(p)};r.onmessage=async m=>{var g,f;if((g=m.data)!=null&&g.jwt)try{await this.deepdeskApi.exchangeTokenForAccessCookie((f=m.data)==null?void 0:f.jwt),await this.isLoggedIn(),this.broadcastEvents.send(zt),c=!0,s.port1.close(),o()}catch(y){console.error(y),n(y)}finally{c=!0,l()}};let d=window.open(a.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");d===null&&n(new Error("Popup blocked by browser"));let u=async m=>{var g;if(m.origin===a.origin)switch((g=m.data)==null?void 0:g.type){case"deepdesk-popup-loaded":{try{let f=JSON.stringify({type:"deepdesk-popup-create-channel"});d==null||d.postMessage(f,a.origin,[s.port2])}catch(f){C.error("Error posting message to popup",f),n(f)}break}case"deepdesk-popup-error":{l(),m.data.message==="Timeout"&&C.warn("Popup timed out. Check if the account's platform url is configured correctly."),n(new Error(m.data.message));break}}};window.addEventListener("message",u);let p=setInterval(()=>{d&&!d.closed||(l(),c||n(new Error("Popup closed by user")))},200);this.unmountHandlers.push(l)})}translateMessages(e){return this.deepdeskApi.translateMessages(e)}async checkForTrialMode(e){try{let{account:o}=await this.deepdeskApi.getPlatformConfig();if(!o.isTrial){this.shouldRender=!0;return}if(C.info("Trial is active"),!await this.deepdeskApi.checkUserExists(e))throw new Error("User is not in trial");this.shouldRender=!0}catch(o){let{message:n}=o;C.info(n),this.shouldRender=!1}}async refreshWidgetSuggestions(){if(!this.widgetRoot||this.shouldAbort())return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let o=ln(this.state);try{o.forEach(({type:n})=>{n==="entities"?this.store.dispatch(ae()):Co.includes(n)||this.store.dispatch(ce(n))})}catch(n){this.handleError(n)}}};async function AS(t,e,o={}){let{value:n}=t,{start:s,end:r}=o.replace??{start:0,end:n.length},i=`${n.slice(0,s)}${e}${n.slice(r)}`,a=o.selectionAfter??{start:s+e.length,end:s+e.length},c=()=>{if(o.setValue)return o.setValue(i);t.value=i};return Promise.resolve(c()).then(()=>{t.selectionStart=a.start,t.selectionEnd=a.end,t.blur(),t.focus()})}async function MS(t,e,o={}){let n=o.replace?ot(t,o.replace.start,o.replace.end):go(t),s,r=()=>{if(o.setRange)return o.setRange(n.cloneRange());n.deleteContents(),s=document.createElement("span"),n.insertNode(s),o.insertBRs!==!1?e.split(`
|
|
11
|
-
`).reverse().forEach((i,a)=>{a>0&&n.insertNode(document.createElement("br")),n.insertNode(document.createTextNode(i))}):n.insertNode(document.createTextNode(e))};return Promise.resolve(r()).then(()=>{try{if(o.selectionAfter!==!1){t.focus();let i=o.selectionAfter?ot(t,o.selectionAfter.start,o.selectionAfter.end):(n.collapse(!1),n),a=window.getSelection();a==null||a.removeAllRanges(),a==null||a.addRange(i)}if(!s)return;s.scrollIntoView&&s.scrollIntoView({block:"nearest",inline:"nearest"})}finally{s&&s.remove()}})}function
|
|
12
|
-
`).forEach((o,n)=>{n>0&&e.appendChild(document.createElement("br"));let s={index:0},r=0;for(;s=o.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(o.slice(r,r+s.index))),e.appendChild(i),r=r+s.index+s[0].length}e.appendChild(document.createTextNode(o.slice(r)))}),e}function
|
|
7
|
+
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 Il}from"react/jsx-runtime";var ff={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},Ll=({className:t,color:e})=>Il("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Il("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:ff[e||"pink"]})});var Al={root:"dd-LbeUM",text:"dd-Dpfn1",isLoggedOut:"dd-21y-z",icon:"dd-8rLqS",logo:"dd-slXhD",lock:"dd-ByzlR"};var tr={};j(tr,{enUS:()=>hf,nlNL:()=>yf});var hf={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},yf={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as xf}from"react-redux";import{jsx as or,jsxs as Ml}from"react/jsx-runtime";var Nl=({onLogIn:t})=>{let e=E(tr),o=b("floatingMenu"),n=b("productName"),s=xf(),r=Sf(X),i=h("FloatingMenu",Al);if(r===null||o===!1)return null;let a=()=>{r===!0?s(Y(!0)):t()};return Ml("button",{className:vf(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[or("div",{className:i.text,children:e(r?"search":"signin",{productName:n})}),Ml("div",{className:i.icon,children:[or(Ll,{className:i.logo,color:"pink"}),r===!1&&or(Pl,{className:i.lock})]})]})};import{useEffect as Bf,useRef as Uf}from"react";import{connect as zf,useDispatch as Vf,useSelector as fn}from"react-redux";import{useEffect as bf}from"react";function Ct(t){bf(()=>{let e=o=>{o.isWithinRoot||t(o)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function Ze(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}function wt(t){let{showMidSentenceSuggestions:e,showSuggestionsBeforePattern:o,showSuggestionsAfterPattern:n}=t.settings,{text:s,selection:r}=t.input.userCommitted;return r.start!==r.end?!1:r.end>=s.length?!0:e?o&&new RegExp(o).test(s.substring(r.end))||n&&new RegExp(n).test(s.substring(0,r.end))?!0:o===!1&&n===!1:!1}import{createSlice as Cf}from"@reduxjs/toolkit";var wf={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1};var pn=({ui:t})=>t.overlayCollapsed;var Ol=Cf({name:"ui",initialState:wf,reducers:{setShowTabHint(t,e){t.showTabHint=e.payload},setInputHasFocus(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:to,setInputHasFocus:nr,setOverlayCollapsed:_e,setOpenOverlayWhenTyping:Dl,setOverlayCollapsedUserOverwrite:_l}=Ol.actions,Fl=Ol.reducer;import{Fragment as Ff,useMemo as Hf}from"react";import{Interweave as kf}from"interweave";import{useEffect as Rf,useMemo as Pf,useRef as If}from"react";import{useDispatch as Lf,useSelector as Af}from"react-redux";import{useEffect as Tf}from"react";function Hl(t,e,o){Tf(()=>{let n=t.current;return n?(n.addEventListener(e,o),()=>{n.removeEventListener(e,o)}):()=>{}},[t,e,o])}var Kl={root:"dd-1MBCO",actions:"dd--x4cy",badge:"dd-4Fpkz",formattedText:"dd-EzvTB"};import{jsx as mn,jsxs as _f}from"react/jsx-runtime";var Mf=["search","personal-collection-search","search-autocomplete"];function Nf(t,e,o,n={}){let s="";return Mf.includes(e)?s=ga(As(t,o,{stripAgentPart:!0}),n.searchKeywords??[o]):s=As(t,o,n),n.placeholders===!0&&(s=fa(s)),s}var Of=()=>{},Df=({index:t,selected:e,suggestion:o,onFeedback:n})=>{let s=b("inlineSuggestions"),r=Af(mt),i=Lf(),a=h("TextSuggestion",Kl),d=If(null);Rf(()=>{let c=setTimeout(()=>{i(Ci({text:o.text,suggestion:o}))},500);return()=>{clearTimeout(c)}},[o]),Hl(d,"click",()=>{i(Me(t)),i(pe({suggestion:o,text:o.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let l=Pf(()=>Nf(o.text,o.source,r,{stripAgentPart:s,placeholders:!0,searchKeywords:o.searchKeywords}),[s,o.text,o.source,r,o.searchKeywords]);return o.source==="gpt"&&!s?null:_f("div",{className:a.root,onMouseEnter:()=>i(Me(t)),children:[mn(A,{ref:d,as:"button","data-testid":"suggestions-overlay-item",selected:e,onClick:Of,children:mn(kf,{containerTagName:"div",noWrap:!1,tagName:"span",className:a.formattedText,content:l})}),e&&n&&mn("div",{className:a.actions,children:mn(Yo,{onFeedback:()=>n(o),suggestion:o.text})})]})},Bl=Df;import{jsx as Ul}from"react/jsx-runtime";var Kf=({onFeedback:t,suggestions:e,selectedIndex:o,reverse:n})=>{let s=Hf(()=>{let r=e.map((i,a)=>Ul(Bl,{index:a,selected:a===o,suggestion:i,onFeedback:t},`${i.text}-${i.source}`));return n?r.reverse():r},[e,o,n]);return Ul(Ff,{children:s})},gn=Kf;var zl={root:"dd-PfvRI",paper:"dd-HYlyY"};import{jsx as hn}from"react/jsx-runtime";var Wf=({textSuggestions:t,selectedIndex:e})=>{let o=Uf(null),n=h("InlineSuggestionsOverlay",zl),s=fn(wt),r=Vf(),i=fn(X),a=fn(ut),d=fn(pn),l=b("showTextSuggestions");return Ct(()=>{setTimeout(()=>{r(_e({collapse:!0,skipWhenInputFocus:!0}))})}),Bf(()=>{let c=o.current;if(!c||!c.parentElement)return;c.parentElement.style.left="0px";let u=c.getBoundingClientRect();c.parentElement.style.left=`${Math.min(window.innerWidth-4-u.right,0)}px`}),d||!s||!l||t.length===0||i!==!0||a===!1?null:hn("div",{className:n.root,"data-variant":"inline",children:hn("div",{ref:o,className:n.paper,children:hn(J,{children:hn(gn,{suggestions:t,selectedIndex:e})})})})},qf=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),Vl=zf(qf)(Wf);import{Provider as Gf}from"react-redux";import{jsx as yn}from"react/jsx-runtime";var $f=({children:t})=>{let o=b("locale").replace("-","");return yn(Ts.Provider,{value:o,children:t})},jf=({store:t,customStyles:e={},children:o})=>yn(Gf,{store:t,children:yn($f,{children:yn(_t.Provider,{value:e,children:o})})}),Je=jf;import lr from"classnames";import{useEffect as ih,useRef as ah,useState as lh}from"react";import{connect as dh,useDispatch as ch,useSelector as oo}from"react-redux";import{useState as Xf}from"react";function Wl(t,e){let[o,n]=Xf(()=>{if(typeof window>"u")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return C.error(r),e}});return[o,r=>{try{let i=r instanceof Function?r(o):r;n(i),typeof window<"u"&&window.localStorage.setItem(t,JSON.stringify(i))}catch(i){C.error(i)}}]}var ql=()=>/Mac/i.test(navigator.platform);import Jf from"classnames";import{Fragment as Yf,useCallback as rr,useMemo as $l}from"react";var sr={};j(sr,{enUS:()=>Qf,nlNL:()=>Zf});var Qf={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"}]}]},Zf={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 Gl={root:"dd-uTPjX",anchor:"dd-C8lsZ",anchorButton:"dd-IoSx9"};import{jsx as vn,jsxs as jl}from"react/jsx-runtime";var ir=(t,e,o)=>n=>vn("button",{className:t.anchorButton,type:"button",value:e,onClick:o,children:n},e),eh=({className:t,loginUrl:e,isEmbedded:o,onSnooze:n,onLogIn:s})=>{let r=E(sr),i=oe(),a=h("Login",Gl),d=b("productName"),l=rr(y=>{y.preventDefault(),n&&n(parseInt(y.target.value,10))},[]),c=rr(y=>{y.preventDefault(),i.send(gt,!0)},[e]),u=$l(()=>y=>vn("a",{onClick:v=>{v.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:y},"login"),[e]),p=rr(y=>vn("button",{type:"button",className:a.anchorButton,onClick:c,children:y},"prompt"),[c]),{min:m,hour:g,day:f}=$l(()=>({min:ir(a,60*10,l),hour:ir(a,60*60,l),day:ir(a,60*60*12,l)}),[]);return jl("div",{className:Jf(t,a.root),children:[r("loginPlease",{login:o?p:u,productName:d}),n&&jl(Yf,{children:[vn("br",{}),r("snooze",{min:m,hour:g,day:f})]})]})},Sn=eh;import{useDispatch as th}from"react-redux";var Xl={root:"dd-DoQhb",text:"dd-Jwnev"};import{jsx as Ql,jsxs as nh}from"react/jsx-runtime";var oh=({title:t})=>{let e=h("SearchTrigger",Xl),o=th();return nh("button",{type:"button",className:e.root,onClick:()=>o(Y(!0)),children:[Ql(ft,{}),Ql("span",{className:e.text,children:t})]})},Zl=oh;var ar={};j(ar,{enUS:()=>sh,nlNL:()=>rh});var sh={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"}]},rh={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"}]};var Jl={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"};import{jsx as z,jsxs as no}from"react/jsx-runtime";var uh=({textSuggestions:t,selectedIndex:e,onLogIn:o})=>{let n=h("SuggestionsOverlay",Jl),s=E(ar),r=oo(wt),i=vi(),a=ch(),d=ah(null),l=b("searchTriggerKey"),c=b("productName"),u=oo(pn),p=oo(X),m=oo(ut),[g,f]=lh(null),y=b("showSearch"),k=b("showTextSuggestions"),v=b("adminUrl"),S=b("isEmbedded"),[P,x]=Wl("dd-snooze-until-ms",0),T=u||P>Date.now(),N=oo(W=>W.input.text),V=t.filter(W=>W.source!=="gpt").length,H=()=>{T&&x(0),a(_l(!T))},I=W=>{a(G({name:"suggestion feedback",data:{text:W.text,source:"overlay",context:N},options:{includeConversationData:!0}}))},O=W=>{let te=Date.now()+W*1e3;x(te),C.info(`Snooze until: ${new Date(te)}`),a(_e({collapse:!0}))};return ih(()=>{V===0&&f(null)},[t,V]),Ct(()=>{a(_e({collapse:!0,skipWhenInputFocus:!0}))}),p===null||m===!1?null:p===!1?no("div",{ref:d,className:lr(n.root,{[n.isCollapsed]:T}),children:[!T&&no("div",{className:n.triggers,children:[z("div",{style:{flex:1}}),z("div",{className:n.triggersRight,children:z(it,{className:n.toggleButton,title:s("collapse"),onClick:H,isCollapsed:!1})})]}),z("div",{className:n.toggleButtonWrapper,children:z(it,{className:n.toggleButton,title:s("open",{productName:c}),onClick:H,isCollapsed:!0})}),z("div",{className:n.collapsible,children:z(Sn,{loginUrl:v,isEmbedded:S,onLogIn:o,onSnooze:O})})]}):!i||!r?null:no("div",{ref:d,className:lr(n.root,{[n.isCollapsed]:T}),children:[!T&&no("div",{className:n.triggers,children:[z("div",{style:{flex:1},children:y&&z("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>f(s(ql()?"searchHintMac":"searchHintWindows",{searchTriggerKey:l.toUpperCase()})),onMouseLeave:()=>f(null),children:z(Zl,{title:s("search")})})}),no("div",{className:n.triggersRight,onFocus:()=>{},children:[z("div",{className:lr(!g&&n.hintsHidden,n.hints),children:g}),z(it,{className:n.toggleButton,title:s("collapse"),onClick:H,isCollapsed:!1})]})]}),z("div",{className:n.toggleButtonWrapper,children:z(it,{className:n.toggleButton,title:s("open",{productName:c}),onClick:H,isCollapsed:!0})}),V>0&&k&&z("div",{className:n.collapsible,onFocus:()=>{},children:z(J,{children:z(gn,{onFeedback:I,suggestions:t,selectedIndex:e,reverse:!0})})})]})},ph=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),Yl=dh(ph)(uh);import Sr from"classnames";import{Interweave as dy}from"interweave";import{useCallback as cy,useEffect as uy,useMemo as Td,useRef as py}from"react";import{connect as my}from"react-redux";import{useEffect as mh,useRef as gh,useState as fh}from"react";function xn(t){return t.contentEditable==="true"}function hh(t){let e=0,o=0,n=window.getSelection();if(n.rangeCount!==0){let s=n.getRangeAt(0),r=s.cloneRange();r.selectNodeContents(t),r.setEnd(s.endContainer,s.endOffset),o=r.toString().length,r.selectNodeContents(t),r.setEnd(s.startContainer,s.startOffset),e=r.toString().length}return{selectionStart:e,selectionEnd:o}}function ed(t){let{selectionStart:e,selectionEnd:o}=xn(t)?hh(t):t;return[e,o]}function td(t){let[,e]=fh(),o=gh(null);return o.current=ed(t),mh(()=>{let n=()=>{let[s,r]=o.current??[],i=ed(t);(!i||s!==i[0]||r!==i[1])&&(o.current=i,e({}))};return t.addEventListener("keyup",n),t.addEventListener("click",n),t.addEventListener("focus",n),document.addEventListener("selectionchange",n),()=>{t.removeEventListener("keyup",n),t.removeEventListener("click",n),t.removeEventListener("focus",n),document.removeEventListener("selectionchange",n)}},[t]),o.current}function od(t,e){if(!e)return;let o=t,{value:n}=o,[s,r]=e,i=n.match(bo);if(!i||i.length===0)return;let a=0;i.find(d=>{let l=n.indexOf(d,a);return s>l&&r<l+d.length?(o.selectionStart=l,o.selectionEnd=l+d.length,!0):(a=l+d.length,!1)})}import{cloneElement as yh}from"react";var vh=["div","span","mark","strong","b","i","u","em"];function dr(t,e,o=0){var r;let n=t[t.length-1],s=typeof n=="object"&&n!==null?(r=n.props)==null?void 0:r.tagName:void 0;if(s==="br")return t.pop(),[...t,...e,n];if(vh.includes(s)){let i=Array.isArray(n.props.children)?n.props.children:[n.props.children];return[...t.slice(0,t.length-1),yh(n,{children:dr(i,e,o+1)})]}return[...t,...e]}function Fe(t){return t.tagName.toLowerCase()==="textarea"}var nd={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 Hh from"classnames";import{Matcher as Kh}from"interweave";import{useEffect as Bh,useMemo as Uh}from"react";import{useEffect as Sh,useRef as xh,useState as bh}from"react";function sd(t,e){let o;return[(...n)=>{window.cancelAnimationFrame(o);let s=e?e(...n):n;o=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(o)]}function bn(t){let e=xh(null),[o,n]=bh(!1);return Sh(()=>{let s=!1,r=parseFloat(window.getComputedStyle(document.body).zoom??"1"),[i,a]=sd((c,u)=>{let p=e.current;if(!p)return;let m=c/r,g=u/r,f=p.getBoundingClientRect(),y=m>f.x&&m<f.x+f.width&&g>f.y&&g<f.y+f.height;y&&!s?(s=!0,n(!0)):!y&&s&&(s=!1,n(!1))},({clientX:c,clientY:u})=>[c,u]),[d,l]=sd(()=>{s=!1,n(!1)});return t.addEventListener("mousemove",i),t.addEventListener("mouseleave",d),()=>{a(),l(),t.removeEventListener("mousemove",i),t.removeEventListener("mouseleave",d)}},[e]),[e,o]}function rd(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function Cn(t){return e=>{t.forEach(o=>{typeof o=="function"?o(e):o!=null&&(o.current=e)})}}function id(t){return t!=null}import ud from"classnames";import{createRef as Ah,useCallback as ur,useMemo as Mh,useRef as Nh,useState as Oh}from"react";import{useState as Ch,useLayoutEffect as wh}from"react";var Th=["bottom","height","left","right","top","width"],Eh=(t={},e={})=>Th.some(o=>t[o]!==e[o]),Te=new Map,ad,ld=()=>{let t=[],e=[];Te.forEach((o,n)=>{if(n instanceof Element&&!n.isConnected){e.push(n);return}let s=n.getBoundingClientRect();Eh(s,o.rect)&&(o.rect=s,t.push(o))}),e.forEach(o=>{Te.delete(o)}),t.forEach(o=>{o.callbacks.forEach(n=>n(o.rect))}),ad=window.requestAnimationFrame(ld)};function kh(t,e){return{observe(){let o=Te.size===0;if(Te.has(t)){let n=Te.get(t);n.callbacks.push(e),n.rect&&e(n.rect)}else Te.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});o&&ld()},unobserve(){let o=Te.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||Te.delete(t),Te.size||cancelAnimationFrame(ad)}}}}function cr(t){let[e,o]=Ch(null);return wh(()=>{if(!t.current)return;let n=kh(t.current,s=>{o(s)});return n.observe(),()=>{n.unobserve()}},[t]),e}import{useContext as Rh,useLayoutEffect as Ph,useState as Ih}from"react";import{createPortal as Lh}from"react-dom";var dd={root:"dd-r-dgo"};var cd=({children:t,parentNode:e})=>{let[o,n]=Ih(null),s=Rh(_t);return Ph(()=>{let r=document.createElement("div");return Ze(r),r.classList.add(dd.root),s!=null&&s.portalRootNode&&r.classList.add(s==null?void 0:s.portalRootNode),(e||document.body).appendChild(r),n(r),()=>{r.isConnected&&r.remove()}},[]),o?Lh(t,o):null};var me={ref:"dd-iz-KP",root:"dd-vEMon",positionAbove:"dd-mUCxM",positionBelow:"dd-7oZI7",positionLeft:"dd-BiWvD",positionRight:"dd-JIWea",alignStart:"dd-5ivu6",alignCenter:"dd-rnVkP",alignEnd:"dd-gZBp4"};import{jsx as pr}from"react/jsx-runtime";var wn=(t=!1)=>{let[e,o]=Oh(t),n=ur(()=>o(!0),[]),s=ur(()=>o(!1),[]),r=ur(()=>o(a=>!a),[]),i=Nh(null);return{opened:e,open:n,close:s,toggle:r,triggerRef:i}};function mr(t,e=null,o=0){if(!t)return{display:"none"};let n=e?t.top-e.top<0||t.top<e.top-o?e.top-o:t.top+t.height>e.top+e.height+o?e.top+e.height+o-t.height:t.top:t.top,s=e?t.left<e.left-o?e.left-o:t.left+t.width>e.left+e.width+o?e.left+e.width+o-t.width:t.left:t.left;return{top:n,left:s,height:t.height,width:t.width}}var Tt=({className:t,triggerRef:e,boundaryRef:o=Ah(),position:n="above",align:s="center",children:r,toStyle:i=mr,parentNode:a,...d})=>{let l=cr(e),c=cr(o),u=Mh(()=>i(l,c,0),[l,c]);return pr(cd,{parentNode:a,children:pr("div",{className:ud(me.ref,{[me.positionAbove]:n==="above",[me.positionBelow]:n==="below",[me.positionLeft]:n==="left",[me.positionRight]:n==="right",[me.alignStart]:s==="start",[me.alignCenter]:s==="center",[me.alignEnd]:s==="end"}),style:u,...d,role:"dialog",children:pr("div",{className:ud(t,me.root),children:r})})})};import Dh from"classnames";import{forwardRef as _h,useRef as Fh}from"react";var Ee={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 pd}from"react/jsx-runtime";var Tn=_h(({className:t,children:e,...o},n)=>{let s=Fh(null),r=h("TabCompletion",Ee);return pd("div",{ref:Cn([s,n]),className:Dh(t,r.popoverContentContainer),...o,children:pd("div",{className:r.popoverContent,children:e})})});import{jsx as so,jsxs as Wh}from"react/jsx-runtime";var zh=t=>e=>{let o=mr(e);return"top"in o&&(o.width=t.width-(e.left-t.left)-10),o},Vh=({inputElement:t,boundaryRef:e,inputStyle:o,children:n,suggestion:s})=>{let r=h("TabCompletion",Ee),i=wn(),a=Uh(()=>zh(t.getBoundingClientRect()),[t]),[d,l]=bn(t);return Bh(()=>{l?i.open():i.close()},[l]),Wh("span",{children:[so("mark",{ref:Cn([d,i.triggerRef]),className:Hh(r.matchKeyword,{[r.hover]:l}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:n}),i.opened&&so(Tt,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:so(Tn,{style:o,children:so("div",{className:r.hintText,children:s})})})]})},En=class extends Kh{keywordMatches=[];preparedKeywordMatches=[];usedKeywordMatches=new Set;onBeforeParse(e,o){return o.keywordMatches&&o.keywordMatches!==this.keywordMatches&&(this.preparedKeywordMatches=o.keywordMatches.map(n=>({...n,keywordRegex:new RegExp(`\\b${rd(n.keyword)}\\b`,"i")})),this.keywordMatches=o.keywordMatches),this.usedKeywordMatches.clear(),e}match(e){let o=this.preparedKeywordMatches.map(s=>{if(this.usedKeywordMatches.has(s))return null;let r=e.match(s.keywordRegex);if(!r)return null;let i=e.charAt(r.index-1),a=e.charAt(r.index+s.keyword.length);return i==="{"&&a==="}"?null:{index:r.index,length:r[0].length,match:r[0],matchString:r[0],suggestion:s.suggestion,preparedKeywordMatch:s,valid:!0}}).filter(id);if(o.length===0)return null;let n=o.reduce((s,r)=>r.index<s.index?r:s);return this.usedKeywordMatches.add(n.preparedKeywordMatch),n}replaceWith(e,o){return so(Vh,{inputElement:o.inputElement,suggestion:o.suggestion,inputStyle:o.inputStyle,boundaryRef:o.boundaryRef,children:e},`keyword_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import{Matcher as qh}from"interweave";import Gh from"classnames";import{jsx as md}from"react/jsx-runtime";var $h=({inputElement:t,children:e})=>{let o=h("TabCompletion",Ee),[n,s]=bn(t);return md("mark",{ref:n,className:Gh(o.matchPlaceholder,{[o.hover]:s}),children:e})},kn=class extends qh{match(e){let o=e.match(/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\}(?!\}))/);return o?{index:o.index,length:o[0].length,match:o[0],matchString:o[0],valid:!0}:null}replaceWith(e,o){return md($h,{inputElement:o.inputElement,children:e},`placeholder_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import vr from"classnames";import{Matcher as oy}from"interweave";import{createRef as ny,forwardRef as sy,useCallback as ry,useEffect as bd,useRef as Cd,useState as wd}from"react";import{useDispatch as iy}from"react-redux";import{jsx as gd}from"react/jsx-runtime";var fd=()=>gd("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:gd("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 jh,useEffect as yd,useState as vd}from"react";import{useDispatch as Xh,useSelector as Sd}from"react-redux";import Qh from"lodash.debounce";var hd={root:"dd-ky-Bv",content:"dd-kV5e1"};function Rn(t,e,o){var s;let n=((s=t.imageSizes)==null?void 0:s[e])||t.image||o;if(!n)return null;try{return new URL(n).toString()}catch{return null}}function gr(t){return t.replace("https://www.","").replace("https://","")}import{jsx as Ye,jsxs as fr}from"react/jsx-runtime";var Zh=3,Jh=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),Yh=({onSelectLink:t,onDismiss:e,placeholder:o,visitUrlText:n,linkCount:s=Zh})=>{let r=h("LinkSearch",hd),[i,a]=vd(""),d=Xh(),l=Sd(vl("url")),c=Sd(Ui("URL",Jh)),[u,p]=vd(c.length-1),m=b("fallbackImage"),g=v=>{let S=v.target;a(S.value)},f=(v,S)=>{v.stopPropagation(),v.preventDefault(),window.open(S,"_blank")},y=v=>{var x;let S=u-1<0?c.length-1:u-1,P=u+1===c.length?0:u+1;v.code==="Escape"&&(a(""),e()),v.code==="ArrowUp"&&p(S),v.code==="ArrowDown"&&p(P),v.code==="Enter"&&t(((x=c[u])==null?void 0:x.text)||i)},k=jh(Qh(v=>{d(We({query:v,type:"URL",tags:["link-search"]}))},300),[]);return yd(()=>{i&&k(i)},[i]),yd(()=>()=>{d(_o())},[]),fr("div",{className:r.root,children:[Ye(J,{withDivider:!0,children:(i?c:l).slice(0,s).map((v,S)=>Ye(A,{selected:u===S,onClick:()=>t(v.text),"data-testid":"linksearch-suggestion",children:fr(_,{children:[Ye(_.Image,{src:Rn(v,"small",m||void 0),title:v.title||v.text}),fr(_.Content,{className:r.content,cropText:!0,children:[Ye(_.Title,{children:v.title||gr(v.text)}),v.title&&gr(v.text)]}),Ye(A.Actions,{children:Ye(A.ActionButton,{label:n,onClick:P=>f(P,v.text)})})]})},v.text))}),Ye($t,{value:i,onChange:g,autoFocus:!0,placeholder:o,onKeyUp:y})]})},xd=Yh;var hr={};j(hr,{enUS:()=>ey,nlNL:()=>ty});var ey={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}]},ty={insertLink:[{type:0,value:"Voeg link toe"}],linkInputPlaceholder:[{type:0,value:"Zoek, typ of plak link"}],visitUrl:[{type:0,value:"Bekijk"}]};import{jsx as ge,jsxs as yr}from"react/jsx-runtime";var ay=sy((t,e)=>{let o=h("TabCompletion",Ee);return ge("mark",{ref:e,className:vr(o.matchSelection)},"selection-start")}),ly=({startRef:t,boundaryRef:e,inputStyle:o,inputElement:n,children:s})=>{let r=E(hr),i=h("TabCompletion",Ee),a=Cd(null),d=Cd(null),[l,c]=wd(null),u=iy(),p=wn(document.activeElement===n),[m]=wd(()=>document.createRange());p.triggerRef.current=m,bd(()=>()=>m.detach(),[]),bd(()=>{let f=t.current,y=a.current;!f||!y||(m.setStart(f,0),m.setEnd(y,0))},[t.current,a.current]),Ct(()=>{p.close()});let g=ry(f=>{let y=m.toString(),k=/^http(s?):\/\//.test(f)?f:`https://${f}`;u(Ao({text:`[${y}](${k})`,replace:"selection"}))},[]);return yr("span",{children:[ge("mark",{ref:a,className:vr(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":p.opened?"true":"false",children:s}),p.opened&&ge(Tt,{className:i.popoverRoot,triggerRef:p.triggerRef,boundaryRef:e,position:"above",align:"start",children:yr(Tn,{style:o,ref:d,children:[ge("div",{className:vr(i.selectionOptions,{[i.selectionOptionsIsHidden]:l!==null}),children:yr("button",{type:"button",tabIndex:l===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>c("insertLink"),children:[ge(fd,{}),ge("span",{children:"\xA0"}),ge("span",{children:r("insertLink")})]})}),l==="insertLink"&&ge(xd,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:g,onDismiss:()=>{c(null),p.close()}})]})})]},"selection-end")},Pn=class extends oy{charCount=0;foundIndex=0;startRef=null;props;onBeforeParse(e,o){return this.props=o,this.charCount=0,this.startRef=ny(),this.foundIndex=0,e}match(e){if(!this.props||this.props.selection===null||this.foundIndex===2)return null;let[o,n]=this.props.selection;if(o===n)return null;let s=this.foundIndex===0?o:n,r=s>=this.charCount&&s<=this.charCount+e.length?{index:s-this.charCount,length:0,match:"",valid:!0}:null;r&&this.foundIndex++;let i=this.foundIndex===1;return r&&i?this.charCount+=s-this.charCount:this.charCount+=e.length,r?{isStart:i,...r}:null}replaceWith(e,o){return o.isStart?ge(ay,{ref:this.startRef}):ge(ly,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as gy}from"react-redux";import{jsx as Et,jsxs as yy}from"react/jsx-runtime";var fy=({enabled:t,content:e,tabText:o,showTabHint:n,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:d})=>{let l=h("TabCompletion",nd),c=b("insertLink"),u=b("showMidSentenceSuggestions"),p=b("inlineSuggestions"),m=td(a),g=py(null),f=gy(X);uy(()=>{Fe(a)&&m&&od(a,m)},[m]);let y=cy(S=>{if(!s||!o)return S;let P=[Et("span",{className:l.resetIndent,children:"\u200B"},"u200B"),Et("span",{"data-testid":"tab-completion",className:Sr(l.tabText,l.resetIndent),"data-source":d,children:o},"tabText")];return n&&P.push(Et("span",{className:Sr(l.hint,l.resetIndent),children:Et(Jn,{keyCode:"tab"},"tabHint")})),dr(S,P)},[s,o,n]),k=Td(()=>{let S=[];return c&&S.push(new Pn("selection")),S.push(new kn("placeholders")),r&&S.push(new En("keywords")),S},[p,c,r]),v=Td(()=>{let S=window.getComputedStyle(a);return{"--dd-color":S.color,"--dd-font-size":S.fontSize,"--dd-font-family":S.fontFamily,"--dd-font-variant":S.fontVariant}},[]);return!t||!f?null:yy("div",{ref:S=>{S!=null&&S.parentElement&&(g.current=S==null?void 0:S.parentElement)},className:l.root,style:v,children:[Et(dy,{tagName:"span",containerTagName:"div",className:Sr(l.container,l.agentText),disableLineBreaks:Fe(a),content:e||"\u200B",onAfterParse:y,matchers:k,selection:m,keywordMatches:i,inputElement:a,inputStyle:v,boundaryRef:g,inlineSuggestionsOnlyAtEnd:!u}),Et("br",{})]})},hy=({input:t,ui:e,settings:o,styleSuggestions:n,conversation:s})=>{var f;let{tabCompletionSuggestion:r}=t,i=(r==null?void 0:r.text)||"",a=(r==null?void 0:r.source)||"",d=t.html??Qt(t.text),l=i.indexOf(t.text)===0?i.slice(t.text.length):"",{showTabHint:c}=e,{isSupported:u}=s,{showTabCompletion:p,visible:m,showStyleSuggestions:g}=o;return{showTabHint:c,showStyleSuggestions:g,showTabCompletion:p,content:d,tabText:l,source:a,keywordMatches:((f=n.list)==null?void 0:f.keywordMatches)??[],enabled:m&&u!==!1}},Ed=my(hy)(fy);import Tv from"classnames";import{Fragment as Ev,useEffect as Nc}from"react";import{useDispatch as Dn,useSelector as K}from"react-redux";import{createAsyncThunk as ro,createSlice as vy}from"@reduxjs/toolkit";var kd={list:[],fetchState:"idle"},Pd=t=>t.autoflows.list||[],Rd=t=>e=>{var o;return(o=e.list)==null?void 0:o.find(n=>n.triggerPayload===t)},ke=ro("autoflows/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getAutoflows(t)}),xr=ro("autoflows/start",async(t,e)=>{let{dispatch:o}=e,{deepdeskBrokerAPI:n}=e.extra;if(!n)throw new Error("Deepdesk Broker not initialized");await n.startAutoflowSession(t),await o(ke(t.platformSessionId))}),br=ro("autoflows/stop",async(t,e)=>{let{dispatch:o}=e,{deepdeskBrokerAPI:n}=e.extra;if(!n)throw new Error("Deepdesk Broker not initialized");await n.stopAutoflowSession(t.platformSessionId),await o(ke(t.platformSessionId))}),Sy=vy({name:"autoflows",initialState:kd,reducers:{},extraReducers:t=>{t.addCase(xr.pending,(e,o)=>{let n=Rd(o.meta.arg.triggerPayload)(e);n.state="Started",n.isBusy=!0}),t.addCase(br.pending,(e,o)=>{let n=Rd(o.meta.arg.triggerPayload)(e);n.state="Aborted",n.isBusy=!0}),t.addCase(ke.pending,e=>{e.fetchState="loading"}),t.addCase(ke.rejected,e=>{e.fetchState="error"}),t.addCase(ke.fulfilled,(e,o)=>{e.list=o.payload,e.fetchState="done"}),t.addCase(M,()=>kd)}}),Id=ro("autoflows/openStream",(t,e)=>{let{dispatch:o}=e,{deepdeskBrokerAPI:n}=e.extra;if(!n)throw new Error("Deepdesk Broker not initialized");let s=n.openStream(t);s.on("sessionAborted",()=>{o(ke(t))}),s.on("sessionCompleted",()=>{o(ke(t))})}),Ld=ro("autoflows/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),Ad=Sy.reducer;import{createAsyncThunk as ao,createSlice as xy}from"@reduxjs/toolkit";var Md={list:[],fetchState:"idle",sentSuggestions:[],errorSuggestions:[],answeredSuggestions:[]},Nd=t=>t.customMessages.list,Od=t=>e=>!!e.customMessages.sentSuggestions.find(o=>o===t),Dd=t=>e=>!!e.customMessages.answeredSuggestions.find(o=>o===t),_d=t=>e=>!!e.customMessages.errorSuggestions.find(o=>o===t),io=ao("customMessages/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getCustomMessages(t)}),In=ao("customMessages/send",async(t,e)=>{let{platformSessionId:o,suggestion:n}=t,{deepdeskBrokerAPI:s}=e.extra;if(!s)throw new Error("Deepdesk Broker not initialized");await s.sendCustomMessage(o,n)}),Ln=ao("customMessages/answer",async(t,e)=>{let{platformSessionId:o,reply:n}=t,{deepdeskBrokerAPI:s}=e.extra;if(!s)throw new Error("Deepdesk Broker not initialized");await s.answerCustomMessage(o,n)}),Fd=xy({name:"customMessages",initialState:Md,reducers:{onCustomMessage(t,e){Array.isArray(e.payload)?t.list=e.payload:t.list=[e.payload]}},extraReducers:t=>{t.addCase(io.pending,e=>{e.fetchState="loading"}).addCase(io.rejected,e=>{e.fetchState="error"}).addCase(io.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload||[]}).addCase(In.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.errorSuggestions=e.errorSuggestions.filter(n=>o.meta.arg.suggestion.text!==n)}).addCase(In.rejected,(e,o)=>{let n=e.sentSuggestions.indexOf(o.meta.arg.suggestion.text);e.errorSuggestions.push(...e.sentSuggestions.splice(n,1))}).addCase(Ln.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.answeredSuggestions.push(o.meta.arg.suggestion.text)}).addCase(Ln.rejected,(e,o)=>{let n=e.answeredSuggestions.indexOf(o.meta.arg.suggestion.text);e.errorSuggestions.push(...e.sentSuggestions.splice(n,1)),e.answeredSuggestions.splice(n,1)}).addCase(M,()=>Md)}}),Hd=ao("customMessages/openStream",(t,e)=>{let{dispatch:o}=e,{deepdeskBrokerAPI:n}=e.extra;if(!n)throw new Error("Deepdesk Broker not initialized");n.openStream(t).on("customMessageSuggestion",r=>{o(Fd.actions.onCustomMessage(r))})}),Kd=ao("customMessages/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),Bd=Fd.reducer;import{createAsyncThunk as Ud,createSlice as by}from"@reduxjs/toolkit";var Cy={token:null,accountUrl:null,interval:null},zd=t=>e=>{let{passwordlessToken:{token:o,accountUrl:n}}=e;return o&&n?`${n}/apis/admin/session/passwordless/login/?token=${o}&redirect=${t}`:null},Cr=Ud("passwordlessToken/getTemporaryPasswordlessToken",async(t,e)=>{let{deepdeskAPI:o}=e.extra,n=await o.requestPasswordlessToken();return{accountUrl:o.client.baseUrl,token:n}}),wr=Ud("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:o=1e3*60*10}=t,{dispatch:n}=e;return n(Cr()),setInterval(()=>n(Cr()),o)}),Vd=by({name:"passwordlessToken",initialState:Cy,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Cr.fulfilled,(e,o)=>{e.token=o.payload.token,e.accountUrl=o.payload.accountUrl}),t.addCase(wr.fulfilled,(e,o)=>{e.interval=o.payload})}}),{stopPollPasswordlessToken:Wd}=Vd.actions,qd=Vd.reducer;import{createAction as wy,createAsyncThunk as Ty,createSlice as Ey}from"@reduxjs/toolkit";var Tr={cues:[],fetchState:"idle"},Gd=t=>{var e;return(e=t.rules)==null?void 0:e.cues},ky=wy("rules/resetCues"),et=Ty("rules/evaluate",async(t,e)=>{var o,n;try{let{deepdeskAPI:s}=e.extra,r=e.getState(),i=(o=r.conversation.current)==null?void 0:o.id;if(!i)throw new Error("No current conversation to evaluate rules");if(!(await s.getAccount()).ruleEngine)throw new Error("Rule engine is not enabled for this account");if(!(await s.getRules()).some(c=>c.label===t.label))throw new Error(`No rules found with label: ${t.label}`);return await s.evaluateRule(t.label,i,{tags:((n=r.conversation.current)==null?void 0:n.tags)||void 0,...t.params})}catch(s){return C.info(s.message),[]}}),$d=Ey({name:"answer",initialState:Tr,reducers:{removeCue(t,e){t.cues=t.cues.filter(o=>o.rule.id!==e.payload.id)}},extraReducers:t=>{t.addCase(et.pending,e=>{e.fetchState="loading"}).addCase(et.rejected,e=>{e.fetchState="error"}).addCase(et.fulfilled,(e,o)=>{let n=o.payload.map(r=>r.rule.id),s=e.cues.filter(r=>!n.includes(r.rule.id));e.fetchState="done",e.cues=[...o.payload,...s]}).addCase(M,()=>Tr).addCase(ky.toString(),()=>Tr)}}),{removeCue:jd}=$d.actions,Xd=$d.reducer;import{Fragment as _y}from"react";import{connect as Fy}from"react-redux";import Ny from"classnames";import{Fragment as Oy}from"react";import Ry from"classnames";var Qd={root:"dd-uszkm"};import{jsx as Iy}from"react/jsx-runtime";var Py=({className:t,children:e})=>{let o=h("Unicode",Qd);return Iy("span",{className:Ry(t,o.root),children:e})},Zd=Py;var Jd={isDisabled:"dd-Sp--t",root:"dd-maqTG",buttonStop:"dd-rcq8w",stateBadge:"dd-zOnkT",isCompleted:"dd-GA-rt",isStarted:"dd-PZwtX",isAborted:"dd-PAXSE"};var Er={};j(Er,{enUS:()=>Ly,nlNL:()=>Ay});var Ly={start:[{type:0,value:"Start"}],stop:[{type:0,value:"Stop"}],aborted:[{type:0,value:"Stopped"}],completed:[{type:0,value:"Completed"}],Aborted:[{type:0,value:"Stopped"}],Started:[{type:0,value:"Running"}],Completed:[{type:0,value:"Completed"}]},Ay={start:[{type:0,value:"Start"}],stop:[{type:0,value:"Stop"}],aborted:[{type:0,value:"Stopped"}],completed:[{type:0,value:"Completed"}],Aborted:[{type:0,value:"Stopped"}],Started:[{type:0,value:"Running"}],Completed:[{type:0,value:"Completed"}]};import{jsx as tt,jsxs as An}from"react/jsx-runtime";var Dy=({disabled:t,state:e,displayName:o,description:n,onStartAutoflow:s,onStopAutoflow:r})=>{let i=h("Autoflow",Jd),a=E(Er),d=e==="Started"?"stop":"start",l=d==="start"?"\u25B6":d==="stop"?"\u25FC":"";return An(A,{className:Ny(i.root,{[i.isDisabled]:t,[i.isCompleted]:e==="Completed",[i.isAborted]:e==="Aborted",[i.isStarted]:e==="Started"}),children:[tt(_,{children:An(_.Content,{children:[An(_.Title,{children:[e&&tt("span",{className:i.stateBadge,children:a(e)}),o]}),tt("span",{children:n})]})}),tt(A.Actions,{fixed:e==="Started",children:tt(A.ActionButton,{primary:!0,className:d==="start"?i.buttonStart:i.buttonStop,onClick:e==="Started"?r:s,disabled:t,label:An(Oy,{children:[tt(Zd,{children:l})," ",tt("span",{children:a(d)})]})})})]})},Yd=Dy;import{jsx as ec}from"react/jsx-runtime";var Hy=(t,e)=>{let o=e.filter(n=>n.state==="Started");return o.length>0?o.indexOf(t)===-1:!1},Ky=({autoflows:t,onStartAutoflow:e,onStopAutoflow:o,platformSessionId:n})=>ec(_y,{children:t.map(s=>ec(Yd,{displayName:s.displayName,description:s.description,disabled:s.isBusy||Hy(s,t),state:s.state,onStartAutoflow:()=>e({platformSessionId:n,triggerPayload:s.triggerPayload}),onStopAutoflow:()=>o({platformSessionId:n,triggerPayload:s.triggerPayload})},s.displayName))}),By=({autoflows:t,conversation:e})=>{var o;return{autoflows:t.list,platformSessionId:(o=e.current)==null?void 0:o.sessionId}},Uy={onStartAutoflow:xr,onStopAutoflow:br},tc=Fy(By,Uy)(Ky);import zy from"classnames";import{useCallback as oc}from"react";import{useDispatch as Vy,useSelector as Mn}from"react-redux";var Re={root:"dd-ERsBr",title:"dd-b36p6",isUsed:"dd-fp2IX",quickReplies:"dd--VrvP",quickReply:"dd-wFhWh",label:"dd-R9sND",errorIcon:"dd-8cdcH"};import{jsx as He,jsxs as Nn}from"react/jsx-runtime";var Wy=({suggestion:t})=>{let e=E(Xe),o=Vy(),n=Mn(Od(t.text)),s=Mn(Dd(t.text)),r=Mn(_d(t.text)),i=Mn(ct),{replyOptions:a}=t,d=oc(c=>{c.preventDefault(),c.stopPropagation(),!(n||!i)&&o(In({platformSessionId:i,suggestion:t}))},[t,n,o,i]),l=oc(c=>{if(c.preventDefault(),c.stopPropagation(),!i||!a)return;let u=parseInt(c.target.dataset.index,10),p=a[u];o(Ln({platformSessionId:i,reply:p,suggestion:t}))},[t,n,o,i]);return Nn(A,{onClick:d,className:zy(Re.root,{[Re.isUsed]:n,[Re.hasError]:r}),children:[He(_,{children:Nn(_.Content,{children:[Nn(_.Title,{className:Re.title,children:[t.text," ",He(Yn,{className:Re.label,children:"analyse tool"})," ",r&&He("span",{className:Re.errorIcon,role:"img","aria-label":e("sendingError"),title:e("sendingError"),children:"!"})]}),a&&a.length>0&&He("ul",{className:Re.quickReplies,children:a.map(c=>He("li",{className:Re.quickReply,children:c.title},c.title))})]})}),Nn(A.Actions,{fixed:r||n,children:[a&&a.length>0&&He(A.DropdownButton,{label:e("answer"),disabled:s,children:a.map((c,u)=>He(A.DropdownItem,{index:u,label:c.title,onClick:l},c.title))}),He(A.ActionButton,{primary:!0,disabled:n,onClick:d,label:e(n?"suggestionSent":r?"tryAgain":"sendSuggestion")})]})]})},nc=Wy;import{useEffect as qy,useState as Gy}from"react";import{useDispatch as $y}from"react-redux";import ic from"classnames";import{jsx as sc}from"react/jsx-runtime";var kr=()=>sc("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:sc("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 rc={root:"dd-WcEru",entity:"dd-LfP8y",entityText:"dd-L-v0f",iconWrapper:"dd-9Deh1",icon:"dd-tM7E2",iconClicked:"dd-EEdDL"};import{jsx as kt,jsxs as ac}from"react/jsx-runtime";var jy=({entities:t})=>{let e=h("EntitiesWidgetList",rc),[o,n]=Gy(void 0),s=$y(),r=()=>{n(void 0)},i=a=>{t&&(n(t.indexOf(a)),$e(a.text),s(G({name:"entity copied",data:{entity:a,type:"copy"}})))};return qy(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[o]),!t||t.length===0?null:kt("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,d)=>ac("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[kt("span",{className:e.entityText,children:a.text}),ac("span",{className:e.iconWrapper,children:[kt("span",{className:ic(e.icon),children:kt(kr,{})}),kt("span",{className:ic(e.icon,o===d&&e.iconClicked),children:kt(kr,{})})]})]},a.text))})},lc=jy;import{jsx as dc}from"react/jsx-runtime";var cc=()=>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{jsx as uc}from"react/jsx-runtime";var pc=()=>uc("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:uc("path",{d:"M543-340q16.595 0 28.798-12.202Q584-364.405 584-381t-12.202-28.798Q559.595-422 543-422t-28.798 12.202Q502-397.595 502-381t12.202 28.798Q526.405-340 543-340Zm-25-126h47q2-29 8.5-43t32.5-39q27-26 37.5-45.395Q654-612.79 654-639q0-45.882-31.5-74.941Q591-743 540-743q-38 0-68 20.5T428-665l45 19q11-25 27.5-38t39.5-13q29.778 0 48.389 17Q607-663 607-637q0 20-9 35t-32 32q-32 29-40 46.5t-8 57.5ZM260-200q-24 0-42-18t-18-42v-560q0-24 18-42t42-18h560q24 0 42 18t18 42v560q0 24-18 42t-42 18H260Zm0-60h560v-560H260v560ZM140-80q-24 0-42-18t-18-42v-620h60v620h620v60H140Zm120-740v560-560Z"})});import{jsx as mc}from"react/jsx-runtime";var gc=()=>mc("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:mc("path",{d:"M319-250h322v-60H319v60Zm0-170h322v-60H319v60ZM220-80q-24 0-42-18t-18-42v-680q0-24 18-42t42-18h361l219 219v521q0 24-18 42t-42 18H220Zm331-554v-186H220v680h520v-494H551ZM220-820v186-186 680-680Z"})});import{useDispatch as cv}from"react-redux";import bc from"classnames";import{useEffect as av,useState as lv}from"react";import{jsx as fc,jsxs as Xy}from"react/jsx-runtime";var hc=({className:t})=>Xy("svg",{viewBox:"0 0 12 12",version:"1.1",xmlns:"http://www.w3.org/2000/svg",className:t,children:[fc("line",{x1:"2",y1:"10",x2:"10",y2:"2",stroke:"black",strokeWidth:"1"}),fc("line",{x1:"2",y1:"2",x2:"10",y2:"10",stroke:"black",strokeWidth:"1"})]});import Qy from"dompurify";import{Fragment as Zy,useMemo as Jy,useRef as Yy,useState as ev}from"react";import tv from"snarkdown";var yc={root:"dd-L7b3z",popover:"dd-OQOTB",options:"dd-Y12RE",copyIcon:"dd-6xOsH",option:"dd-9oFX4",divider:"dd-aiZf8",fadeup:"dd-Jq9pd"};import{jsx as lo,jsxs as vc}from"react/jsx-runtime";function ov(t){return`<button type="button" 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 Rr(t){let e=t.cloneNode(!0);return e.querySelectorAll("div,button").forEach(o=>o.remove()),e.textContent??""}function nv(t){return t.replace(/\r\n/g,`
|
|
8
|
+
`)}var sv=({content:t,useLabel:e,copyLabel:o,onCopy:n,onUse:s})=>{let r=h("Markdown",yc),i=Yy(null),[a,d]=ev(null),l=Jy(()=>{let g=tv(nv(t));return Qy.sanitize(g).replace(/<\/code>/g,`${ov(r.copyIcon)}</code>`)},[t]),c=g=>{var k;let f=g.target,y=!!((k=i.current)!=null&&k.querySelector("code"));a||y&&f.tagName!=="CODE"||!y&&f!==i.current||(f.addEventListener("mouseleave",()=>d(null),{once:!0}),d(f))},u=()=>{if(!a)return;d(null);let g=a.querySelector("button");g&&(Ce(g,r.fadeup),n(Rr(a)))},p=g=>{g.target.tagName.toLowerCase()==="button"&&(Ce(g.target,r.fadeup),n(Rr(g.target.parentElement)))},m=()=>{a&&(d(null),s(Rr(a)))};return vc(Zy,{children:[a&&lo(Tt,{triggerRef:{current:a},parentNode:a,className:r.popover,children:vc("div",{className:r.options,children:[lo("button",{type:"button",className:r.option,onClick:u,children:o}),lo("div",{className:r.divider}),lo("button",{type:"button",className:r.option,onClick:m,children:e})]})}),lo("div",{ref:i,className:r.root,dangerouslySetInnerHTML:{__html:l},onMouseOver:c,onClick:p})]})},Sc=sv;var Pr={};j(Pr,{enUS:()=>rv,nlNL:()=>iv});var rv={useCue:[{type:0,value:"Use"}],copyCue:[{type:0,value:"Copy"}],removeCue:[{type:0,value:"Close"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]},iv={useCue:[{type:0,value:"Gebruik"}],copyCue:[{type:0,value:"Kopieer"}],removeCue:[{type:0,value:"Sluiten"}],thumbsUp:[{type:0,value:"Thumbs up"}],thumbsDown:[{type:0,value:"Thumbs down"}]};var xc={fadeup:"dd-cRM0K",fadedown:"dd-7D4Pq",selected:"dd-bueui",thumbsUp:"dd-6QwVx",thumbsDown:"dd-d3E8l"};import{jsx as Pe,jsxs as Cc}from"react/jsx-runtime";var dv=({cue:t,onRemove:e,onCopy:o,onUse:n,onThumbsUp:s,onThumbsDown:r})=>{let i=h("WidgetCue",xc),a=E(Pr),d=vt(),[l,c]=lv(null),u=y=>{o&&o(y,t)},p=y=>{n&&n(y,t)},m=y=>{y.preventDefault(),y.stopPropagation(),e(t)},g=y=>{y.preventDefault(),y.stopPropagation(),Ce(y.target,i.fadeup),c("up"),s(t)},f=y=>{y.preventDefault(),y.stopPropagation(),Ce(y.target,i.fadedown),c("down"),r(t)};return av(()=>{d("Assistant response displayed",{name:t.rule.name,description:t.rule.description,group:t.rule.label})},[]),Cc(A,{"data-testid":"cue",children:[Pe(_,{children:Cc(_.Content,{children:[t.title&&Pe(_.Title,{"data-testid":"widget-cue-title",children:t.title}),Pe(Sc,{content:t.text,useLabel:a("useCue"),copyLabel:a("copyCue"),onCopy:u,onUse:p})]})}),Pe(A.IconButton,{title:a("thumbsUp"),onClick:g,icon:Pe(nn,{}),className:bc(i.thumbsUp,l==="up"&&i.selected),disabled:!!l}),Pe(A.IconButton,{title:a("thumbsDown"),onClick:f,icon:Pe(on,{}),className:bc(i.thumbsDown,l==="down"&&i.selected),disabled:!!l}),Pe(A.IconButton,{title:a("removeCue"),onClick:m,icon:Pe(hc,{})})]})},wc=dv;import{Fragment as pv,jsx as Tc}from"react/jsx-runtime";var uv=({cues:t})=>{let e=cv(),o=oe(),n=vt(),s=l=>{e(jd({id:l.rule.id})),n("Assistant response closed",{name:l.rule.name,group:l.rule.label,description:l.rule.description})},r=(l,c)=>{$e(l),n("Assistant response copied",{name:c.rule.name,group:c.rule.label,description:c.rule.description,copiedText:l})},i=(l,c)=>{o.send(Ne,{text:l,suggestion:{source:"cue",sourceText:l}}),n("Assistant response used",{name:c.rule.name,group:c.rule.label,description:c.rule.description,usedText:l})},a=l=>{n("Assistant response feedback",{name:l.rule.name,group:l.rule.label,description:l.rule.description,thumb:"up"})},d=l=>{n("Assistant response feedback",{name:l.rule.name,group:l.rule.label,description:l.rule.description,thumb:"down"})};return Tc(pv,{children:t.map(l=>Tc(wc,{cue:l,onRemove:s,onCopy:r,onUse:i,onThumbsDown:d,onThumbsUp:a},l.rule.id))})},Ec=uv;import{Fragment as mv,useEffect as gv}from"react";var kc={root:"dd-cvTAY",label:"dd-QWQxD",value:"dd-WSUHF",isTrue:"dd--1g2O",isFalse:"dd-sz2ir"};import{jsx as co,jsxs as hv}from"react/jsx-runtime";function fv(t,e){return e.split(".").reduce((o,n)=>!o||typeof o!="object"||!(n in o)?null:o[n],t)}var Rc=({data:t,schema:e})=>{let o=h("WidgetCustomData",kc);return gv(()=>{C.info("Custom data",t,e)},[t]),co("dl",{className:o.root,children:e.map(n=>{let s=fv(t,n.path);return hv(mv,{children:[co("dt",{className:o.label,children:n.label}),co("dd",{className:o.value,children:n.type==="boolean"&&s?co("span",{className:o.isTrue,children:n.trueValue}):n.type==="boolean"&&!s?co("span",{className:o.isFalse,children:n.falseValue}):s??"-"})]},n.label)})})};import{useCallback as vv}from"react";var yv=/(https?:\/\/[^\s]+)/,Pc=t=>t.split(" ").find(e=>yv.test(e));import{jsx as Rt,jsxs as On}from"react/jsx-runtime";var Sv=({suggestion:t,lines:e,onUse:o})=>{var c;let n=t.text||t.url||t.message,s=Pc(n),r=E(Xe),i=b("showImages"),a=b("fallbackImage"),d=u=>{u.preventDefault(),u.stopPropagation(),o(n)},l=vv(u=>{window.open(s,"_blank"),u.stopPropagation(),u.preventDefault()},[s]);return On(A,{onClick:d,"data-testid":"edit-suggestion",children:[On(_,{children:[i&&t.image&&Rt(_.Image,{src:Rn(t,"small",a||void 0),title:t.title}),On(_.Content,{children:[t.title&&Rt(_.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((c=t.searchKeywords)==null?void 0:c.length)>0&&Rt(A.Labels,{labels:t.searchKeywords}),Rt(_.Content,{cropText:e==="single",lineClamp:e==="multiple",children:n})]})]}),On(A.Actions,{children:[s&&Rt(A.ActionButton,{onClick:l,label:r("visitUrl")}),Rt(A.ActionButton,{primary:!0,onClick:d,label:r("useSuggestion")})]})]})},Ic=Sv;import{Fragment as bv,jsx as Lc}from"react/jsx-runtime";var xv=({lines:t,suggestions:e})=>{let o=oe(),n=(s,r)=>{o.send(Ne,{text:s,suggestion:{...r,source:r.source,sourceText:r.text}})};return Lc(bv,{children:e.map(s=>Lc(Ic,{suggestion:s,lines:t,onUse:r=>n(r,s)},s.text||s.url||s.message))})},Ac=xv;var uo={};j(uo,{enUS:()=>Cv,nlNL:()=>wv});var Cv={waiting:[{type:0,value:"Loading\u2026"}],notSupported:[{type:0,value:"This conversation is not supported"}],noResults:[{type:0,value:"No results found\u2026"}],titleAutoflows:[{type:0,value:"Autoflows"}],titleCustomMessages:[{type:0,value:"Quick replies"}],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"}]},wv={waiting:[{type:0,value:"Laden\u2026"}],notSupported:[{type:0,value:"Dit gesprek wordt niet ondersteund"}],noResults:[{type:0,value:"Geen resultaten gevonden\u2026"}],titleAutoflows:[{type:0,value:"Autoflows"}],titleCustomMessages:[{type:0,value:"Quick replies"}],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"}]};var po={root:"dd-W9VCG",loginText:"dd--dS6t",stateText:"dd-348OC",sectionList:"dd-bF9pF",shortcutList:"dd-MuKK-",shortcut:"dd-5CnK9",link:"dd-DRo0x"};import{jsx as R,jsxs as Pt}from"react/jsx-runtime";var _n=(t,e)=>{let o=K(X);Nc(()=>o?e.every(n=>!!n)?t():()=>{}:()=>{},[...e,o])},kv=({onLogIn:t})=>{let e=h("Widget",po),o=b("isEmbedded"),n=b("adminUrl");return R("div",{className:e.loginText,children:R("div",{children:R(Sn,{isEmbedded:o,loginUrl:n,onLogIn:t})})},"login")},Mc=({text:t})=>{let e=h("Widget",po);return R("div",{className:e.stateText,children:R("div",{children:R("p",{children:t})})},"notification")},Rv=()=>{let t=E(uo),e=Dn(),o=h("Widget",po),n=b("showSearch"),s=b("showSummaryCommand"),r=b("showKnowledgeSearch"),i=K(zd("/admin/")),a=oe(),d=b("productName"),l=n||s||r||i;return _n(()=>(e(wr()),()=>{e(Wd())}),[e]),l?R(ve,{title:t("actions"),type:"shortcuts",children:Pt("div",{className:o.shortcutList,children:[n&&Pt("button",{type:"button",className:o.shortcut,"data-testid":"shortcut-search",title:t("linkSearch"),onClick:()=>a.send("ShowCommandPalette",{isOpen:!0}),children:[R(ft,{}),t("linkSearch")]}),s&&Pt("button",{type:"button",className:o.shortcut,"data-testid":"shortcut-summary",title:t("linkSummary"),onClick:()=>a.send("ShowCommandPalette",{isOpen:!0,page:"summary"}),children:[R(gc,{}),t("linkSummary")]}),r&&Pt("button",{type:"button",className:o.shortcut,"data-testid":"shortcut-knowledge-assist",title:t("linkKnowledgeSearch"),onClick:()=>a.send("ShowCommandPalette",{isOpen:!0,page:"knowledgeAssist"}),children:[R(pc,{}),t("linkKnowledgeSearch")]}),i&&Pt("a",{className:o.shortcut,target:"_blank",href:i,"data-testid":"shortcut-studio-login",title:t("linkStudioLogin",{productName:d}),rel:"noreferrer",children:[R(cc,{}),t("linkStudioLogin",{productName:d})]})]})}):null},Pv=()=>{let t=Dn(),e=b("showCustomMessages"),o=K(Nd),n=K(ct);return _n(()=>(t(io(n)),t(Hd(n)),()=>{t(Kd(n))}),[t,e,n]),!e||o.length===0?null:R(ve,{type:"custom-messages","data-testid":"custom-messages",children:R(J,{withDivider:!0,children:o.map(s=>R(nc,{suggestion:s},s.text))})})},Iv=()=>{let t=E(uo),e=Dn(),o=b("showAutoflows"),n=K(Pd),s=K(ct);return _n(()=>(e(ke(s)),e(Id(s)),()=>{e(Ld(s))}),[e,o,s]),!o||n.length===0?null:R(ve,{type:"autoflows",title:t("titleAutoflows"),"data-testid":"autoflows",children:R(J,{withDivider:!0,children:R(tc,{})})})},Lv=()=>{let t=Dn(),e=K(ln),o=K(ul),n=K(Gd),s=K(Mi),r=K(tn),i=K(dn),a=K(we),d=K(Eo);return Nc(()=>{!!s&&!o&&C.warn("Custom data provided, but no schema.")},[s,o]),_n(()=>{e.forEach(({type:l})=>{l==="entities"?t(ae()):Co.includes(l)||t(de(l))})},[t,d,a]),R(Ev,{children:e.map(({type:l,title:c,amount:u,lines:p,schema:m})=>{var g,f;switch(l){case"entities":return r&&r.length>0&&R(ve,{type:l,title:c,"data-testid":`type-${l}`,children:R(lc,{entities:r})},l);case"cues":return n&&n.length>0&&R(ve,{type:l,title:c,"data-testid":`type-${l}`,children:R(J,{withDivider:!0,children:R(Ec,{cues:n})})},l);case"custom-data":return s&&m&&R(ve,{type:l,title:c,"data-testid":`type-${l}`,children:R(J,{withDivider:!0,children:R(Rc,{data:s,schema:m})})},l);default:return((f=(g=i[l])==null?void 0:g.suggestions)==null?void 0:f.length)>0&&R(ve,{type:l,title:c,"data-testid":`type-${l}`,children:R(J,{withDivider:!0,children:R(Ac,{lines:p,contentType:l,suggestions:i[l].suggestions.slice(0,u)||[]})})},l)}})})},Av=({onLogIn:t})=>{let e=E(uo),o=h("Widget",po),n=K(ut),s=K(X),r=K(ct),i=K(we);return n===!1?R(Mc,{text:e("notSupported")}):s===!1?R(kv,{onLogIn:t}):!i||!r||s===null?R(Mc,{text:e("waiting")}):R("div",{className:Tv(o.root),"data-testid":"widget",children:Pt(ts,{className:o.sectionList,children:[R(Rv,{}),R(Pv,{}),R(Iv,{}),R(Lv,{})]})})},Oc=Av;function go(t){let e=new Range;return e.selectNodeContents(t),e}function Dc(t,e,o){try{return ot(t,e,o),!0}catch{return!1}}function Fn(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function Hn(t){return"tagName"in t&&t.tagName==="BR"}var mo=/[\u200B-\u200D\uFEFF]/g;function ot(t,e,o){let n=new Range;if(t.firstChild===null&&e===0&&o===0)return n.selectNodeContents(t),n;let s=0,r=!1;function i(d,l){let c=-1,u=/[\u200B-\u200D\uFEFF]/;if(!u.test(d))return l;for(let p=0;p<=d.length;p++)if(u.test(d[p])||c++,c===l)return p;throw new Error("Offset out of range")}function a(d){switch(d.nodeType){case Node.TEXT_NODE:{let l=d.textContent,c=l.replace(mo,""),u=s+c.length,p=e>=s&&e<=u,m=o>=s&&o<=u;if(p){let g=i(l,e-s);g===0&&!m?n.setStartBefore(d):n.setStart(d,g)}m&&(n.setEnd(d,i(l,o-s)),r=!0),s=u;break}case Node.ELEMENT_NODE:{if(Hn(d)&&(s===e&&n.setStartBefore(d),s++,s===o)){n.setEndAfter(d),r=!0;return}for(let c=0;c<d.childNodes.length&&(a(d.childNodes[c]),!r);c++);let l=d.lastChild;Fn(d)&&l&&!Fn(l)&&!Hn(l)&&s++;break}default:break}}if(a(t),n.startContainer===document)throw new Error("Offsets out of bound");return n}function Kn(t,e){if(!t.contains(e.startContainer)||!t.contains(e.endContainer))throw new Error("Range not within root element");let{startContainer:o,startOffset:n,endContainer:s,endOffset:r,collapsed:i}=e,a,d,l=0;function c(u){let p=u===o,m=u===s;switch(u.nodeType){case Node.TEXT_NODE:{let g=u.textContent;p&&(a=l+g.substring(0,n).replace(mo,"").length),m&&(d=l+g.substring(0,r).replace(mo,"").length),l+=g.replace(mo,"").length;break}case Node.ELEMENT_NODE:{let g=u.nextSibling===null;Hn(u)&&!g&&l++;for(let f=0;f<u.childNodes.length;f++){let y=p&&f===n,k=m&&f===r;if(y&&(a=l),k&&(d=l),d!==void 0||((!y||!i)&&c(u.childNodes[f]),m&&f===r-1&&(d=l),d!==void 0))break}!m&&Fn(u)&&!g&&l++,m&&(d=l);break}default:break}}if(c(t),d===void 0)throw new Error("Could not determine start and end");return{start:a??d,end:d}}function Bn(t,e){if(!t.contains(e.startContainer)||!t.contains(e.endContainer))throw new Error("Range not within root element");let{startContainer:o,startOffset:n,endContainer:s,endOffset:r}=e,i=-1,a="";function d(l){let c=l===o,u=l===s;switch(c&&i++,l.nodeType){case Node.TEXT_NODE:{if(i!==0)return;let p=c?n:0,m=u?r:void 0,g=l.textContent.replace(mo,"");p===0&&m===void 0?a+=g:a+=g.substring(p,m);break}case Node.ELEMENT_NODE:{let p=l.nextSibling===null;i===0&&Hn(l)&&!p&&(a+=`
|
|
9
|
+
`);for(let m=c?n:0;m<(u?Math.min(r,l.childNodes.length):l.childNodes.length)&&(d(l.childNodes[m]),i!==1);m++);!u&&i===0&&Fn(l)&&!p&&(a+=`
|
|
10
|
+
`);break}default:break}u&&i++}return d(t),a}var _c=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(_c||{}),Ke=class{constructor(e){this.element=e;this.currentText=this.getText(),this.currentHTML=this.getHTML(),this.listen()}eventListeners={};disposeHandlers=[];currentText="";currentCaret=null;currentSelection={start:0,end:0};currentHTML="";isFocused=!1;isActive=!0;isSettingValue=!1;isSubmitting=!1;isPossibleClearInputAction=!1;isDisposed=!1;addEventListener(e,o){let n=s=>{o(s)};this.element.addEventListener(e,n),this.disposeHandlers.push(()=>{this.element.removeEventListener(e,n)})}removeEventListener(e,o){this.element.removeEventListener(e,o)}triggerChange(){let e=this.getText(),o=this.getHTML(),n=e!==this.currentText;this.isActive&&(e===""&&this.currentText!==""&&!this.isSettingValue&&!this.isPossibleClearInputAction&&(this.isSubmitting=!0,this.emit("submit")),!this.isSettingValue&&n&&!this.isSubmitting&&this.emit("change",{plainText:e}),n&&(this.currentSelection=this.getSelection()),this.currentText=e,this.isSubmitting=!1,(this.currentHTML!==o||o===null&&n)&&(this.emit("updated",{plainText:e}),this.triggerCaretPosition(),this.currentHTML=o))}triggerSelection(){let e=this.getSelection();(e.start!==this.currentSelection.start||e.end!==this.currentSelection.end)&&(this.currentSelection=e,this.emit("selection",e),this.triggerCaretPosition())}triggerCaretPosition(){let e=this.getCaretPosition();Le(e,this.currentCaret)||(this.currentCaret=e,this.emit("caret",e))}handleKeyUp(e){let{key:o,shiftKey:n}=e;(o==="Enter"&&n===!0||o==="Backspace")&&this.triggerChange(),this.triggerSelection()}handleClick(){this.triggerSelection()}handleFocus(){this.isFocused||this.emit("focus"),this.triggerSelection(),this.isFocused=!0}handleBlur(){this.isPossibleClearInputAction=!1,this.isFocused&&this.emit("blur"),this.isFocused=!1}handleKeyDown(e){let{key:o,ctrlKey:n,metaKey:s}=e;this.isPossibleClearInputAction=Object.values(_c).includes(o)||o.toLowerCase()==="z"&&(n||s),this.emit("keydown",e)}handleCut(){this.isPossibleClearInputAction=!0,this.emit("cut",{selectionText:this.getSelectedText()})}handlePaste(e){var n,s;let o=((n=e.clipboardData)==null?void 0:n.getData("text"))||((s=e.clipboardData)==null?void 0:s.getData("text/plain"))||"";this.emit("paste",{pastedText:o,selectionText:this.getSelectedText()})}listen(e={shouldObserve:!0}){this.addEventListener("keydown",n=>this.handleKeyDown(n)),this.addEventListener("keyup",n=>this.handleKeyUp(n)),this.addEventListener("input",()=>this.triggerChange()),this.addEventListener("change",()=>this.triggerChange()),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.triggerSelection()),document.activeElement===this.element&&setTimeout(()=>{this.handleFocus()},0);let o=new MutationObserver(()=>{this.element.isConnected||(this.emit("unmounted"),this.dispose())});e!=null&&e.shouldObserve&&o.observe(document.body,{subtree:!0,childList:!0}),this.disposeHandlers.push(()=>{o.disconnect()}),this.currentSelection=this.getSelection()}focus(){this.element.focus()}emit(e,...o){this.isDisposed||this.eventListeners[e]&&this.eventListeners[e].forEach(n=>{n(...o)})}on(e,o){this.isDisposed||(this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o))}activate(){let e=this.isActive===!1;this.isActive=!0,e&&this.triggerChange()}deactivate(){this.isActive=!1}dispose(){this.disposeHandlers.forEach(e=>e()),this.eventListeners={},this.isDisposed=!0}};function Fc(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var It=class extends Ke{observer;lastKnownSelection=null;getRootNode(){return this.element.getRootNode()}getText(){let e=new Range;return e.selectNodeContents(this.element),Bn(this.element,e)}getHTML(){return this.element.innerHTML||""}getRange(){var r;let e=this.getRootNode();if(e.activeElement!==this.element)return null;let o="getSelection"in e?e.getSelection():window.getSelection();if(!o)return null;let n="getComposedRanges"in o&&e instanceof ShadowRoot?(r=o.getComposedRanges(e))==null?void 0:r[0]:o.rangeCount>0?o.getRangeAt(0):null;if(!n)return null;let s=this.element.ownerDocument.createRange();return s.setStart(n==null?void 0:n.startContainer,n==null?void 0:n.startOffset),s.setEnd(n==null?void 0:n.endContainer,n==null?void 0:n.endOffset),!s||!this.element.contains(s.startContainer)||!this.element.contains(s.endContainer)?null:s}getCaretPosition(){let e=this.getRange();if(!e||!e.collapsed||!("getBoundingClientRect"in e))return null;let o=e.getBoundingClientRect();return!Fc(o)&&(e.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=e.getBoundingClientRect(),e.deleteContents(),!Fc(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let e=this.getRange();if(e)return Kn(this.element,e);let o=this.lastKnownSelection;if(o&&Dc(this.element,o.start,o.end))return o;let n=go(this.element);return n.collapse(!1),Kn(this.element,n)}getSelectedText(){let{start:e,end:o}=this.getSelection();return Bn(this.element,ot(this.element,e,o))}applyChanges(e){var s;if(!this.isActive)return;this.isSettingValue=!0;let o=this.getText(),n=e(this.element);return(s=this.observer)==null||s.takeRecords(),Promise.resolve(n).then(()=>{this.currentText=this.getText(),o!==this.currentText&&this.triggerChange(),this.isSettingValue=!1})}listen(e={shouldObserve:!0}){super.listen(e),this.observer=new MutationObserver(()=>{setTimeout(()=>{this.triggerChange()},0)}),e!=null&&e.shouldObserve&&this.observer.observe(this.element,{attributes:!0,characterData:!0,childList:!0,subtree:!0});let o=this.element.isContentEditable,n=new MutationObserver(()=>{this.element.isContentEditable!==o&&(o=this.element.isContentEditable,this.emit(this.element.isContentEditable?"enabled":"disabled"))});n.observe(this.element,{attributes:!0,attributeFilter:["contenteditable"]}),this.disposeHandlers.push(()=>n.disconnect())}dispose(){super.dispose(),this.observer&&this.observer.disconnect()}};var Lt=class extends Ke{lastKnownSelection=null;getText(){return this.element.value}getHTML(){return null}getSelection(){let{selectionStart:e,selectionEnd:o}=this.element;return{start:e,end:o}}getSelectedText(){let e=this.getSelection();return e?this.getText().slice(e.start,e.end):""}getCaretPosition(){return null}applyChanges(e){if(!this.isActive)return;this.isSettingValue=!0;let o=this.getText(),n=e(this.element);return Promise.resolve(n).then(()=>{this.currentText=this.getText(),o!==this.currentText&&this.triggerChange(),this.isSettingValue=!1})}listen(){super.listen();let e=Object.getOwnPropertyDescriptor(window.HTMLTextAreaElement.prototype,"value");Object.defineProperty(this.element,"value",{configurable:!0,get:()=>{var s;return(s=e==null?void 0:e.get)==null?void 0:s.call(this.element)},set:s=>{var r;(r=e==null?void 0:e.set)==null||r.call(this.element,s),this.triggerChange()}});let o=this.element.disabled,n=new MutationObserver(()=>{this.element.disabled!==o&&(o=this.element.disabled,this.emit(o?"disabled":"enabled"))});n.observe(this.element,{attributes:!0,attributeFilter:["disabled"]}),this.disposeHandlers.push(()=>n.disconnect())}};function Hc(t,e,o){let n=`deepdesk-iframe-${t}`,s=document.getElementById(n);if(s)return s;let r=document.createElement("iframe"),i=new URL(e);return Object.entries(o).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=n,r.title=`iframe-${t}`,r.src=i.toString(),window.document.body.appendChild(r),r}function Mv(t){if(typeof t!="string")return t;try{return JSON.parse(t)}catch{return t}}var Ir=class{constructor(e){this.name=e;this.broadcastChannel=new BroadcastChannel(e)}broadcastChannel;disposeHandlers=[];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()}},Lr=class{constructor(e,o,n){this.name=e;this.targetOrigin=o;this.options=n;this.iframe=Hc(e,`${this.targetOrigin}/sdk/proxy/proxy.html`,{channel:this.name,host:window.location.origin,debug:"1"}),document.body.appendChild(this.iframe)}iframe;disposeHandlers=[];onMessage(e){window.addEventListener("message",e),this.disposeHandlers.push(()=>{window.removeEventListener("message",e)})}postMessage(e){var o;(o=this.iframe.contentWindow)==null||o.postMessage(JSON.stringify(e),this.targetOrigin)}close(){var e;this.disposeHandlers.forEach(o=>o()),(e=this.iframe)==null||e.remove()}},Ar=class{constructor(e){this.params=e;this.deepdeskUrl=e.deepdeskUrl,this.eventMap=e.eventMap,this.sessionId="deepdesk-general",this.defaultChannel=this.createChannel("deepdesk-general")}sessionId;deepdeskUrl;channel;defaultChannel;eventMap;get isCrossOrigin(){return this.params.deepdeskUrl!==(this.params.origin||window.location.origin)}setSessionId(e){this.sessionId!==e&&(this.cleanup(),C.info("Set sessionId",e),this.sessionId=e,this.channel=this.createChannel(e))}createChannel(e){let o=this.params.createCustomChannel?this.params.createCustomChannel(e):this.isCrossOrigin?new Lr(e,this.deepdeskUrl,{debug:!0}):new Ir(e),n=s=>{var i,a;if(s.origin!==this.deepdeskUrl)return;let r=Mv(s.data);typeof r!="object"||r.type!=="event"||r.channel!==e||(C.info("Received broadcast event",this.sessionId,s),(a=(i=this.eventMap)[r.name])==null||a.call(i,r.payload))};return o.onMessage(n),o}send(e,o,n){var i,a;C.info("Broadcast event",{sessionId:this.sessionId,name:e,payload:o});let s={type:"event",name:e,payload:o};n!==!1&&((a=(i=this.eventMap)[e])==null||a.call(i,o));let r=this.sessionId==="deepdesk-general"?this.defaultChannel:this.channel;r==null||r.postMessage({...s,channel:this.sessionId})}cleanup(e=!1){var o,n;(o=this.channel)==null||o.close(),delete this.channel,e&&((n=this.defaultChannel)==null||n.close(),delete this.defaultChannel)}},Kc=Ar;var At=class extends Error{constructor(o,n){super(o);this.body=n}name="CustomError"};var Mr=t=>new Promise(e=>{setTimeout(e,t)});var Mt=class extends At{name="ClientError"},Or=class extends At{name="ServerError"},Nr=new Map;function Nv(t){return t.status===204||["0",null].includes(t.headers.get("content-length"))}var fe=class t{constructor(e="",o={}){this.baseUrl=e;this.options=o;o.fetch&&(this.fetch=o.fetch)}latestRequestByUrl={};csrfToken;fetch=window.fetch.bind(window);static refreshingToken=null;patchFetch(e){this.fetch=e(this.fetch)}setCsrfToken(e){this.csrfToken=e}request(e,o={}){return new Promise((n,s)=>{let r={isAborted:!1,reject:s},i=`${this.baseUrl}${e}`,a=this.fetch,d=o.method===void 0||o.method.toLowerCase()==="get",{useCache:l=!1,abortLatest:c=!1,attempts:u=1,retryDelay:p=500,refreshTokenOn401:m=!0,retryOnError:g=T=>T instanceof TypeError,retryOnResponse:f=T=>T.status>=500,version:y="v1",...k}=o;if(l)if(d){if(Nr.has(i)){n(Nr.get(i));return}}else throw new Error(`Can't use 'useCache' for ${o.method}`);let v={credentials:"include",...k,headers:{"Content-Type":"application/json",...k.headers}};!d&&this.csrfToken&&(v.headers={...v.headers,"X-CSRFToken":this.csrfToken}),typeof y=="string"&&(v.headers={...v.headers,"X-Deepdesk-API-Version":y});let S=u,P=!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 x=async()=>(S--,a(i,v).then(async T=>f(T)&&!r.isAborted&&S>0?(await Mr(p),x()):T.status===401&&m===!0&&P===!1?(P=!0,await this.refreshToken(),x()):T).catch(async T=>{if(g(T)&&!r.isAborted&&S>0)return await Mr(p),x();throw T}));x().then(async T=>{let N=await T.json().catch(V=>{if(Nv(T))return null;throw V});if(delete this.latestRequestByUrl[i],T.status>=500){s(new Or("Server Error",N));return}else if(T.status===401){s(new Mt("Unauthorized",N));return}else if(T.status===403){s(new Mt("Forbidden",N));return}else if(T.status===404){s(new Mt("Not Found",N));return}else if(T.status>=400){s(new Mt("Bad Request",N));return}l&&Nr.set(i,N),n(N)}).catch(T=>{s(T)})})}async validateToken(){let{has_valid_access_token:e}=await this.get("/auth/validate");if(!e)return!1;let{is_logged_in:o}=await this.get("/apis/admin/session/validate/",{version:null});return!!o}refreshToken(){return t.refreshingToken||(t.refreshingToken=this.get("/auth/refresh",{refreshTokenOn401:!1}).finally(()=>{setTimeout(()=>{t.refreshingToken=null},1e3*60)})),t.refreshingToken}get(e,o){return this.request(e,o)}post(e,o,n){return this.request(e,{method:"POST",body:JSON.stringify(o),...n})}patch(e,o,n){return this.request(e,{method:"PATCH",body:JSON.stringify(o),...n})}put(e,o,n){return this.request(e,{method:"PUT",body:JSON.stringify(o),...n})}delete(e,o){return this.request(e,{method:"DELETE",...o})}};var Ov;(e=>{let t;(d=>(d.SEND_MESSAGE="Send Message",d.HANDLING_TIME="Handling Time",d.START_AUTOFLOW="Start Autoflow",d.ABORT_AUTOFLOW="Abort Autoflow",d.ADD_TO_PERSONAL_COLLECTION="Add to personal collection",d.DELETE_FROM_PERSONAL_COLLECTION="Delete from personal collection"))(t=e.EventType||={})})(Ov||={});function Un(t){return{...L(t),tags:t.tags}}var Be=class t{constructor(e,o={}){this.options=o;this.client=new fe(e,{fetch:o.fetch}),this.client.patchFetch(n=>async(s,r)=>{let i=await n(s,r);return this.handleDeepdeskVersionHeaders(i),i})}latestReceivedDeepdeskVersions={};client;shouldFetchCsrfToken=!0;static exchangeTokenPromise=null;async preflight(){if(this.shouldFetchCsrfToken){this.shouldFetchCsrfToken=!1;let e=await this.getCsrfToken();this.client.setCsrfToken(e)}return this.options.token?(t.exchangeTokenPromise||(t.exchangeTokenPromise=this.exchangeTokenForAccessCookie(this.options.token)),t.exchangeTokenPromise):Promise.resolve()}async createConversation(e){await this.preflight(),C.info(`Creating conversation for session ${e.sessionId} and agent ${e.agentId}`);let o=await this.client.post("/api/conversations",{...F(e),tags:e.tags},{version:"v2"});return Un(o)}async getProfile(e){let o=await this.client.get(`/apis/admin/profiles/${e}/`,{version:null,useCache:!0});return L(o)}async getKnowledgeAssistant(e){let o=await this.client.get(`/apis/admin/knowledge-assist/assistants/${e}/`,{version:null,useCache:!0});return L(o)}async getContentTypes(){let e=await this.client.get("/apis/admin/content-types/",{version:null,useCache:!0});return L(e)}async getAccount(){let e=await this.client.get("/apis/admin/account/",{version:null,useCache:!0});return L(e)}async getPlatformConfig(){let{config:e}=await this.client.get("/platform/config/",{version:null,useCache:!0});return L(e)}async checkUserExists(e){let{exists:o}=await this.client.get(`/apis/admin/users/exists?external_id=${e}`);return o}async getConversationBySessionId(e,o={}){await this.preflight(),C.info(`Getting conversation for session ${e}`);let{attempts:n=1,retryDelay:s=1e3}=o,r=await this.client.get(`/api/conversations/by_session_id/${e}`,{attempts:n,retryDelay:s,retryOnResponse:i=>i.status===404||i.status>=500,version:"v2"});return C.info(`Successfully retrieved conversation ${r.id} for session ${e}`),Un(r)}async isConversationSupported(e,o={}){C.info(`Check if conversation for session ${e} is supported`);let{attempts:n=1,retryDelay:s=1e3}=o;return(await this.client.get(`/api/conversations/by_session_id/${e}/active_profile`,{attempts:n,retryDelay:s,retryOnResponse:i=>i.status===404||i.status>=500,version:"v2"})).has_active_profile}async updateConversation(e,o){let n=F(o);o.tags&&(n.tags=o.tags);let s=await this.client.put(`/api/conversations/${e}`,n,{version:"v2"});return Un(s)}async postMessages(e,o){return(await this.client.post(`/api/conversations/${e}/messages`,o.map(s=>({...F(s),tags:s.tags})),{version:"v2"})).map(s=>Un(s))}async sendEvent(e,o){let{data:n,...s}=o,r=Object.entries(this.latestReceivedDeepdeskVersions).reduce((i,[a,d])=>({...i,[a]:d}),{});return this.client.post("/api/events",F({...r,...s,data:n,name:e}),{version:"v2"})}async sendEventV1(e,o){let n=Object.entries(this.latestReceivedDeepdeskVersions).reduce((s,[r,i])=>({...s,[r]:i}),{});return this.client.post("/api/events",{event:e,data:F({...o,...n})})}async getEntities(e){return(await this.client.post("/api/entities",{messages:e.filter(n=>n.text)})).entities}async getSummary(e,o={}){let n=await this.client.post("/api/summary",{conversation:{messages:e.filter(s=>s.text&&s.source),agent_id:o.agentId,id:o.externalConversationId},prompt_instruction:o.promptInstruction,model:o.model});return L(n)}async getTemporaryExchangeToken(){return(await this.client.get("/auth/exchange-token",{version:null})).jwt}async exchangeTokenForAccessCookie(e){return this.client.post("/apis/admin/session/jwt/",{jwt:e},{version:null}).catch(o=>{throw C.warn(`Invalid token '${e}'`),o})}async authenticateWithKey(e,o){await this.preflight(),await this.client.post("/apis/admin/session/api-key/",F(o),{version:null,refreshTokenOn401:!1,headers:{apikey:e}})}async getTextSuggestions(e,o={},n){return n==="sticky-messages"?this.getPinnedMessages(e):(await this.client.post(`/api/conversations/${e}/recommend/${n}`,F(o),{abortLatest:!0})).map(r=>({...L(r),text:r.text||r.url||r.message,source:n,type:n})).filter((r,i,a)=>i===a.findIndex(d=>d.text===r.text))}async isLoggedIn(){return await this.preflight(),this.client.validateToken()}async getAutocompleteSuggestions(e,o){return(await this.client.post(`/api/conversations/${e}/autocomplete`,F(o),{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))}async getPinnedMessages(e){let o=await this.client.get(`/api/conversations/${e}/sticky-messages`,{abortLatest:!0});return L(o).map(n=>({...n,text:n.message,source:"sticky-messages",type:"pinned-message"}))}async getStyleSuggestions(e){let o=await this.client.post("/api/style-suggestions",F(e),{abortLatest:!0});return L(o)}async search(e){let o=await this.client.post(`/api/profiles/${e.profile}/search`,F(e),{version:"v2"});return L(o)}async knowledgeAssist(e,o,n,s={}){let r=await this.client.post(`/api/knowledge-assist/assistants/${n}/search`,F({question:e.question,doNotKnowAnswer:e.doNotKnowAnswer,customerInstruction:e.customerInstruction,chatHistory:o.map(i=>({question:i.question,answer:i.answer.answer})),agentId:s.agentId,conversationId:s.conversationId}),{version:"v2"});return L(r)}async requestLoginByEmail(e){let o=await this.client.post("/apis/admin/session/passwordless/request/",{email:e},{version:null});return L(o)}async requestPasswordlessToken(){let e=await this.client.get("/apis/admin/session/passwordless/request/",{version:null});return L(e.token)}async getCsrfToken(){let{token:e}=await this.client.get("/apis/admin/session/csrf/",{version:null});return e}async verifyLoginToken(e){let o=await this.client.post("/apis/admin/session/passwordless/login/",{token:e},{version:null});return L(o)}async evaluateRule(e,o,n,s={}){let r=new URLSearchParams;s.raiseForFailingConditions&&r.set("raise_for_failing_conditions","true");let i=await this.client.post(`/api/conversations/${o}/rules/${e}/evaluate?${r.toString()}`,n,{version:"v2"});return L(i.cues)}async getRules(){let e=new URLSearchParams,o=await this.client.get(`/apis/admin/rule-engine/rules/?${e.toString()}`,{version:null,useCache:!0});return L(o)}async translateMessages(e){let o=await this.client.post("/api/translate",F(e),{version:"v2"});return L(o)}handleDeepdeskVersionHeaders(e){e.headers.forEach((o,n)=>{let s=n.toLowerCase(),r=s.match(oi);if(!o||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&o&&a!==o&&C.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(o)}`),this.latestReceivedDeepdeskVersions[i]=o})}};var fo=class{constructor(e,o){this.url=e;this.options={timeout:25e3,...o}}eventListeners={};options;timeoutTimer;eventSource;proxyEvent(e){this.eventSource.addEventListener(us(e),o=>{let{data:n}=o;try{let s=JSON.parse(n);this.emit(e,L(s))}catch{C.warn(`Invalid JSON for ${e}: ${n}`)}})}connect(){clearTimeout(this.timeoutTimer);let e=new EventSource(this.url,{withCredentials:!0});this.eventSource=e;let o=!1;e.onopen=()=>{o=!0},e.onerror=()=>{o&&e.readyState===2&&this.connect()},this.timeoutTimer=setTimeout(()=>{e.close(),this.connect()},this.options.timeout),Object.keys(this.eventListeners).forEach(n=>{this.proxyEvent(n)})}disconnect(){var e;clearTimeout(this.timeoutTimer),this.eventListeners={},(e=this.eventSource)==null||e.close()}emit(e,o){this.eventListeners[e]&&this.eventListeners[e].forEach(n=>n(o))}on(e,o){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o),this.proxyEvent(e),()=>{this.off(e,o)}}off(e,o){let n;this.eventListeners[e]&&(n=this.eventListeners[e].indexOf(o),n>-1&&this.eventListeners[e].splice(n,1))}};var Dv;(e=>{let t;(r=>(r.Started="Started",r.Aborted="Aborted",r.Completed="Completed"))(t=e.AutoflowSessionState||={})})(Dv||={});var ho=class{constructor(e,o={}){this.apiUrl=e;this.client=new fe(e,o)}client;streams={};logger=C;async getCustomMessages(e){let o=await this.client.get(`/sessions/${e}/suggestions`);return L(o.suggestions)}async sendCustomMessage(e,o){let n=await this.client.post(`/sessions/${e}/messages`,F(o));return L(n)}async answerCustomMessage(e,o){await this.client.post(`/sessions/${e}/answers`,F(o))}async getAutoflows(e){let o=await this.client.get(`/sessions/${e}/autoflows`);return L(o.autoflows)}async startAutoflowSession(e){let o=await this.client.post("/autoflow-sessions",F(e));return L(o)}async stopAutoflowSession(e){await this.client.delete(`/autoflow-sessions/${e}`)}openStream(e){return this.streams[e]||(this.streams[e]=new fo(`${this.apiUrl}/sessions/${e}/events`),this.streams[e].connect()),this.streams[e]}closeStream(e){this.streams[e]||(this.streams[e].disconnect(),delete this.streams[e])}};import{combineReducers as zv,configureStore as Vv}from"@reduxjs/toolkit";import{createSlice as _v}from"@reduxjs/toolkit";var Bc={startTime:null,stopTime:null},Uc=_v({name:"handlingTime",initialState:Bc,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(M,()=>Bc)}}),{handlingTimeStart:zc,handlingTimeStop:zn,handlingTimeReset:Vc}=Uc.actions,Wc=Uc.reducer;var qc=(t={})=>{let e={onAuthError:lt(!1),...t};return o=>n=>s=>("error"in s&&s.error.message==="Unauthorized"&&o.dispatch(e.onAuthError),n(s))};import{createAsyncThunk as Fv,createSlice as Hv}from"@reduxjs/toolkit";var Vn={list:{keywordMatches:[]},fetchState:"idle"};var nt=Fv("styleSuggestions/getAll",async({text:t},e)=>{var i;let{deepdeskAPI:o}=e.extra,n=e.getState(),{showStyleSuggestions:s}=n.settings,r=(i=n.conversation.current)==null?void 0:i.profileCode;if(!s)return Vn.list;if(!r)throw new Error("No current conversation to fetch pinned messages");return o.getStyleSuggestions({profileCode:r,message:t})}),Kv=Hv({name:"styleSuggestions",initialState:Vn,reducers:{},extraReducers:t=>{t.addCase(nt.pending,e=>{e.fetchState="loading"}).addCase(nt.rejected,e=>{e.fetchState="error"}).addCase(nt.fulfilled,(e,o)=>{e.fetchState="done",Le(e.list,o.payload)||(e.list=o.payload)}).addCase(Ve,e=>{e.list=Vn.list}).addCase(M,()=>Vn)}}),Gc=Kv.reducer;var $c=(t={})=>{let e,o=!0,n={getStyleSuggestions:nt,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:p}=l.input;return p===a&&!o||(clearTimeout(e),p==="")||(e=setTimeout(()=>{o=!1,s.dispatch(n.getStyleSuggestions({text:p}))},t.debounce)),d}};function Bv(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var jc=(t={})=>{let e={getTextSuggestions:de,getAutocompleteSuggestions:eo,debounce:200,check:wt,...t},o;return n=>s=>r=>{var f;let{input:{userCommitted:i}}=n.getState(),a=s(r),d=n.getState();if(d.auth.isLoggedIn!==!0)return a;let{recommendTextSuggestions:l,showTabCompletion:c}=d.settings,u=(f=d.conversation.current)==null?void 0:f.id,p=r.type===cn.toString();if(!u||!l&&!c)return a;let{input:{userCommitted:m}}=d;return Bv(m,i)&&!p||(clearTimeout(o),!e.check(d))||(o=setTimeout(()=>{let y=mt(d);y===""?n.dispatch(e.getTextSuggestions("default")):n.dispatch(e.getAutocompleteSuggestions(y))},p?0:e.debounce)),a}};var Xc=nt.fulfilled.toString();function Uv(t,e){let o=new Set([...e.keywordMatches.map(s=>s.keyword)]),n=[];return o.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||n.push(...i.slice(0,a))}),n}var Qc=t=>e=>o=>n=>{var l;if(n.type!==Xc){o(n);return}let s=e.getState().styleSuggestions.list;o(n);let r=e.getState(),i=r.styleSuggestions.list,a=(l=r.conversation)==null?void 0:l.current;if(s===i)return;let d=Uv(s,i);n.type===Xc&&d.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:d}})};var Wv=zv({answer:rl,auth:ui,autoflows:Ad,conversation:fi,contentTypes:ua,customMessages:Bd,passwordlessToken:qd,entities:Fa,knowledgeAssistant:ol,handlingTime:Wc,info:_i,input:Li,settings:si,profile:pl,search:Vi,summary:qa,styleSuggestions:Gc,ui:Fl,rules:Xd,textSuggestions:bl});function Zc(t){return Vv({reducer:Wv,middleware:e=>[...e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI,deepdeskBrokerAPI:t.deepdeskBrokerAPI}},serializableCheck:!1}),qc(),jc({debounce:200}),$c({debounce:500}),Qc(t.deepdeskAPI),...t.middleware?t.middleware:[]],preloadedState:t.preloadedState})}var qv=t=>{var e;return((e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())??"unknown"},Gv=t=>e=>o=>n=>{var a;let s=e.getState(),r=rs("inlineSuggestions")(s);switch(n.type){case lt.toString():{!n.payload&&t.emit("logout",void 0);break}case ae.fulfilled.toString():n.payload.length>0&&t.sendEvent("entities found",{conversationId:s.conversation.current.id,data:{entities:n.payload}});break;case G.toString():t.sendEvent(n.payload.name,{conversationId:((a=n.payload.options)==null?void 0:a.includeConversationData)&&s.conversation.current.id,data:n.payload.data});break;case Mo.toString():t.handleKeyDown(n.payload);break;case Ve.toString():t.logSendMessage(n.payload);break;case No.toString():t.handleInputChanged(n.payload);break;case et.fulfilled.toString():n.isBroadcasted||t.broadcast(fs,n,!1),t.emit("cues",n.payload);break;default:break}let i=o(n);switch(n.type){case Ve.toString():t.handleAfterSendMessage(n.payload);break;case to.toString():t.onUpdateShowTabHint(n.payload);break;case zn.toString():t.logHandlingTime();break;case"analytics/logEvent/fulfilled":{t.emit("event",n.meta.arg);break}case pe.toString():{let{start:d,end:l}=s.input.selection;t.emit("select-suggestion",{type:qv(n.payload.suggestion),...n.payload,replace:n.payload.replace==="selection"?{start:d,end:l}:{start:0,end:l}},{mayApplyChanges:!0}),r&&(e.dispatch(ue([])),e.dispatch(xe()));break}case Ao.toString():{let{start:d,end:l}=s.input.selection;t.emit("replace",{...n.payload,replace:n.payload.replace==="selection"?{start:d,end:l}:{start:0,end:l}},{mayApplyChanges:!0});break}case Kt.toString():{let d=e.getState(),{text:l,selection:c}=d.input.userCommitted;t.emit("reset",{text:l,selectionAfter:c},{mayApplyChanges:!0});break}case Oo.toString():t.emit("select-image",n.payload,{mayApplyChanges:!0}),t.sendEvent("Image attached",{conversationId:s.conversation.current.id,data:{path:n.payload.suggestion.image,title:n.payload.suggestion.title}});break;case ue.toString():{r&&n.payload.length>0&&e.dispatch(Me(0));break}case be.fulfilled.toString():{t.sendEvent("conversation summarized",{conversationId:s.conversation.current.id,data:{summary:n.payload.summary,model:e.getState().summary.model}});break}default:break}return i},Jc=Gv;function Dr(t){return t.toISOString().replace("T"," ").replace("Z","")}function Yc(t,e){var s,r,i;let{startTime:o,stopTime:n}=t.handlingTime;if(!o||!n)throw new Error("No startTime and stopTime for handling time metrics");return{conversationId:t.conversation.current.id,clientVersion:e.version,agentId:(s=t.info.agentInfo)==null?void 0:s.agentId,agentName:(r=t.info.agentInfo)==null?void 0:r.agentName,agentEmail:(i=t.info.agentInfo)==null?void 0:i.agentEmail,timeStart:Dr(o),timeStop:Dr(n)}}function eu(t,e,o){var N,V,H;let{text:n,metrics:{numCharsTyped:s,numCharsPasted:r,numCharsCut:i,numCharsDeleted:a,numPaste:d,agentStartedTypingTimestamp:l,externalTimeTotalSeconds:c,pastes:u,cuts:p,deletions:m,textSuggestions:g,offeredTextSuggestions:f}}=e[t],y=n.length,v=g.reduce((I,{text:O,searchTerm:W})=>I+O.length-(W?W.length:0),0),S=l??Date.now(),P=(Date.now()-S)/1e3+(c||0),x=s/P,T=g.reduce((I,{searchTerm:O})=>I+(O?O.length:0),0);return{conversationId:e.conversation.current.id,source:"agent",text:n,clientVersion:o.version,pastes:u,cuts:p,deletions:m,lenTextTyped:s+T,lenTextTotal:y,lenTextAssisted:v,lenTextPasted:r,lenTextCut:i,lenTextDeleted:a,timeTotalSeconds:P,charsPerSecond:x,numPastes:d,textSuggestionsV2:g,suggestionsCounters:[{source:"gpt",countOffered:f.filter(I=>I.source==="gpt").length}],agentId:(N=e.info.agentInfo)==null?void 0:N.agentId,agentName:(V=e.info.agentInfo)==null?void 0:V.agentName,agentEmail:(H=e.info.agentInfo)==null?void 0:H.agentEmail}}function _r(t,e){var r;let o=t.closest(e);if(o)return o;let n=t.getRootNode().host;if(n instanceof HTMLElement)return _r(n,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?_r(s,e):null}function tu(t,e){return _r(t,e)}function ou(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function $v(t){return typeof t=="object"&&t!==null&&"tagName"in t}function Fr(t){return $v(t)&&(Fe(t)||xn(t))}var su,he=new Map,jv=["bottom","height","left","right","top","width"],nu=(t,e)=>!t&&!e?!1:t&&!e||!t&&e?!0:jv.some(o=>t[o]!==e[o]);function ru(t){var o,n;if(t.ownerDocument===document)return[];let e=((n=(o=t.ownerDocument)==null?void 0:o.defaultView)==null?void 0:n.frameElement)??null;return e?[e,...ru(e)]:[]}function iu(t,e){return!t||!e?null:{...t,top:t.top+e.top,left:t.left+e.left}}var Wn=!1,au=()=>{Wn=!0;let t=[];if(he.forEach((e,o)=>{if(!o.isConnected){e.rect=null,t.push(e),he.delete(o);return}let n=o.getBoundingClientRect();nu(n,e.rect)&&(e.rect=n,t.push(e))}),t.forEach(e=>{let o=e.parentRects?e.parentRects.reduce(iu,e.rect):e.rect;nu(o,e.totalRect)&&e.callbacks.forEach(n=>n(o)),e.totalRect=o}),he.size===0){Wn=!1;return}su=window.requestAnimationFrame(au)};function Hr(t,e){let o=ru(t),n=[],s=o.map((r,i)=>Hr(r,a=>{n[i]=a;let d=he.get(t);if(!d)return;let l=n.reduce(iu,d.rect);d.callbacks.forEach(c=>c(l))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),he.has(t)){let i=he.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else he.set(t,{rect:void 0,callbacks:[e],parentRects:n});r&&!Wn&&au()},unobserve(){s.forEach(i=>i.unobserve());let r=he.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||he.delete(t),he.size||(cancelAnimationFrame(su),Wn=!1)}}}}var lu,ye=new Map,du=()=>{ye.forEach((t,e)=>{if(!e.isConnected){ye.delete(e);return}let{clientHeight:o,scrollHeight:n}=e,s=n>o;t.visible!==s&&(t.visible=s,t.callbacks.forEach(r=>r(t.visible)))}),ye.size!==0&&(lu=window.requestAnimationFrame(du))};function cu(t,e){return{observe(){let o=ye.size===0;ye.has(t)?ye.get(t).callbacks.push(e):ye.set(t,{visible:void 0,callbacks:[e]}),o&&du()},unobserve(){let o=ye.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||ye.delete(t),ye.size||cancelAnimationFrame(lu)}}}}var Kr=["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 Br(t,e,o){return o.forEach(n=>{e.style[n]=t[n]})}function Nt(t){return parseFloat(t)}function qn(t){return Math.round(t*1e6)}function uu(t){return t/1e6}function Ur(t,e,o){if(t.boxSizing==="content-box")return;let{clientWidth:n}=e,s=Nt(t.width),r=Nt(t.borderLeftWidth),i=Nt(t.borderRightWidth),a=Nt(t.paddingRight),d=uu(qn(s)-qn(r)-qn(i)),l=uu(qn(n));if(d-l>2){let c=d-l;o.style.paddingRight=`${a+c}px`}}function Gn(t,e={}){var c;let o=e.overlayContainer||document.createElement("div");o.style.display="none",o.style.position=e.position??"fixed",o.style.pointerEvents="none",o.style.borderColor="transparent",Ze(o);let n=window.getComputedStyle(t),s=!0,r=()=>{o.scrollTop=t.scrollTop};Br(n,o,Kr),Ur(n,t,o),e.mirrorOverflow&&(o.style.overflow="hidden",t.addEventListener("scroll",r));let i=cu(t,()=>{Br(n,o,Kr),Ur(n,t,o),r(),setTimeout(r,0)}),a,d=!0,l=Hr(t,u=>{if(u===null){e.onRemove&&e.onRemove(),o.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(),o.style.display="none",s=!0;return}if(Br(n,o,Kr),Ur(n,t,o),r(),o.style.top=`${u.top}px`,o.style.left=`${u.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let p=e.closestScrollElement.getBoundingClientRect(),m=window.getComputedStyle(e.closestScrollElement),g=Nt(m.borderTopWidth),f=Nt(m.borderBottomWidth),y=p.top+g-u.top,k=u.top+u.height+-(p.top+p.height-f);o.style.clipPath=`inset(${y}px 0px ${k}px 0px)`}s&&(o.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(o):(c=t.parentElement)==null||c.appendChild(o),l.observe(),i.observe(),[o,()=>{t.removeEventListener("scroll",r),l.unobserve(),i.unobserve()}]}var pu=(t,e)=>({value(){try{let o=sessionStorage.getItem(`dd-${t}`);if(!o)return e;try{return JSON.parse(o)}catch{return e}}catch{return e}},update(o){try{sessionStorage.setItem(`dd-${t}`,JSON.stringify(o))}catch{C.warn("[Deepdesk] SessionStorage is blocked by browser")}}});function Xv(t){return t.offsetParent!==null}function mu(t){if(!Xv(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 zr(t,e,o=100){let n=mu(t);e({isVisible:n});let s=setInterval(()=>{let r=mu(t);r!==n&&(n=r,e({isVisible:n}))},o);return()=>{clearTimeout(s)}}import{jsx as B}from"react/jsx-runtime";var gu=pu("showTabHint",!0),jn=class t{static version="11.4.0";static count=0;deepdeskApi;inputMediator=null;version;broadcastEvents;eventListeners={};unmountHandlers=[];widgetRoot=null;dynamicThunkObject={};isMounted=!1;instanceId;shouldRender=!0;store;constructor({deepdeskUrl:e,brokerUrl:o,version:n=t.version||"unknown",locale:s="en-US",token:r,fetch:i,productName:a,createCustomChannel:d}){let l=e.replace(/\/api$/,"");this.deepdeskApi=new Be(l,{token:r,fetch:i}),this.version=n,this.instanceId=t.count++;let c={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[Jc({broadcast:(u,p,m)=>{this.broadcastEvents.send(u,p,m)},emit:(u,p,m)=>this.emit(u,p,m),handleAfterSendMessage:u=>this.handleAfterSendMessage(u),handleInputChanged:u=>this.handleInputChanged(u),handleKeyDown:u=>this.handleKeyDown(u),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:u=>this.logSendMessage(u),onUpdateShowTabHint:u=>gu.update(u),sendEvent:(u,p)=>this.deepdeskApi.sendEvent(u,p)})]};o&&Object.assign(c,{deepdeskBrokerAPI:new ho(o)}),this.store=Zc(c),this.broadcastEvents=new Kc({debug:!0,deepdeskUrl:l,eventMap:Wi(this.store),createCustomChannel:d}),this.store.dispatch(to(gu.value())),this.store.dispatch(To({locale:s,adminUrl:l,productName:a}))}get state(){return this.store.getState()}get settings(){return this.state.settings}get selectedTextSuggestion(){return this.state.input.textSuggestions[this.state.input.selectedSuggestionIndex]??null}hasConversation(){return!!this.state.conversation.current}conversationId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.id}sessionId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.sessionId}shouldAbort(){return this.state.conversation.isSupported===!1?(C.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(C.warn("Profile has not been loaded (yet)"),!0):(C.warn("No conversation loaded (yet)"),!0)}login(){return this.store.dispatch(lt(null)),this.store.dispatch(Se()),new Promise(e=>{let o=this.store.subscribe(()=>{let n=this.store.getState();X(n)&&ri(n)!=="loading"&&(o(),e())});this.unmountHandlers.push(()=>{o()})})}async isLoggedIn(){return(await this.store.dispatch(Se())).payload}async setPlatformAgentId(e){try{if((await this.deepdeskApi.client.get("/apis/admin/session/me/",{version:null})).external_id)return;await this.deepdeskApi.client.request("/apis/admin/session/me/",{method:"PATCH",body:JSON.stringify({external_id:e}),version:null})}catch(o){C.warn("Failed to attach user:",o)}}async isConversationSupported(e,o){return(await this.store.dispatch(ls({sessionId:e,options:o}))).payload}async createConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(ko(e))).payload}async getConversationBySessionId(e,o){return this.hasConversation()&&this.sessionId()!==e&&this.resetConversation(),(await this.store.dispatch(Ro({sessionId:e,options:o}))).payload}async upsertConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(ds(e))).payload}async postMessages(e){return(await this.store.dispatch(Io(e))).payload}async updateConversation(e){return(await this.store.dispatch(Po(e))).payload}resetConversation(){this.store.dispatch(M()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}async getSummary(){let e=await this.store.dispatch(be());if(e.error)throw new Error(e.error.message);return e.payload.summary}configure(e){this.store.dispatch(To(e))}setVisitorInfo(e){this.store.dispatch(Oi(e))}setCustomData(e){this.store.dispatch(Di(e))}async setAgentInfo(e){await this.store.dispatch(Bt(e))}async setAgentSettings(e){await this.store.dispatch(ms(e))}async getAgentSettings(){return(await this.store.dispatch(gs())).payload}async refresh(){if(this.shouldAbort())return Promise.resolve();this.inputMediator&&this.handleInputChanged(this.inputMediator.getText());let e=[];return this.store.dispatch(cn()),e.push(this.refreshWidgetSuggestions()),Promise.all(e).then(()=>{})}notifyInputChanged(e){this.store.dispatch(No(e))}notifyKeyDown(e){this.store.dispatch(Mo(e))}notifyPaste(e,o){this.store.dispatch(ki({text:e,selectionText:o}))}notifyCut(e){this.store.dispatch(Ti(e))}notifyExternalSuggestion(e){this.store.dispatch(pe(e)),this.store.dispatch(xe())}async evaluateRule(e,o={}){let{payload:n,error:s}=await this.store.dispatch(et({label:e,params:o}));if(s)throw new Error(s.message);return n}handleInputChanged(e){let{overlayCollapsed:o,openOverlayWhenTyping:n}=this.state.ui;o&&n&&this.store.dispatch(_e({collapse:!1})),this.inputMediator&&this.store.dispatch(Si({text:e,html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),!this.shouldAbort()&&(this.isMounted||this.store.dispatch(ue([])))}handleKeyDown(e){let{overlayCollapsed:o}=this.state.ui,{textSuggestions:n,selectedSuggestionIndex:s,selection:r}=this.state.input,{inlineSuggestions:i}=this.state.settings,a=n.length>0,d=s!==-1;if(this.store.dispatch(Ei(hi(e))),e.key!=="Tab"&&!this.settings.showTextSuggestions)return;let l=()=>{o||!a||r&&(e.shiftKey||(this.store.dispatch(bi()),i||this.stageSelectedSuggestion({inputType:"arrow"}),e.preventDefault()))},c=()=>{o||!a||i&&s<=0||r&&(e.shiftKey||(this.store.dispatch(wi()),e.preventDefault(),!i&&(this.state.input.selectedSuggestionIndex===-1?this.store.dispatch(Kt()):this.stageSelectedSuggestion({inputType:"arrow"}))))};switch(e.key){case"Up":case"ArrowUp":i?c():l();return;case"Down":case"ArrowDown":{i?l():c();return}case"Esc":case"Escape":{i&&d&&this.store.dispatch(Me(-1)),this.state.input.selectedSuggestionIndex!==-1?(this.store.dispatch(Me(-1)),this.store.dispatch(Kt()),e.preventDefault()):o||(this.store.dispatch(_e({collapse:!0})),this.store.dispatch(Dl(!0)),e.preventDefault());return}case"Tab":{let{userCommitted:u}=this.state.input,p=u.text.substring(0,u.selection.end),{tabCompletionSuggestion:m}=this.state.input;this.store.dispatch(to(!1)),this.state.input.selectedSuggestionIndex>-1?this.stageSelectedSuggestion({inputType:"tab"}):!i&&this.settings.showTabCompletion&&m&&m.text.startsWith(p)&&(this.store.dispatch(pe({text:m.text,suggestion:m,eventMetrics:{inputType:"tab"},replace:"until-selection-end"})),this.store.dispatch(xe())),e.preventDefault();break}default:}}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(Ri()),this.store.dispatch(ue([]))}handlingTimeStart(){this.state.handlingTime.startTime||(C.info("Start handling time"),this.store.dispatch(zc()))}handlingTimeStop(){this.state.handlingTime.startTime&&(C.info("Stop handling time"),this.store.dispatch(zn()))}logSendMessage(e){let o=eu("input",this.state,{version:this.version});e&&(Object.assign(o,{text:e}),Object.assign(o,{lenTextTotal:e.length})),this.deepdeskApi.sendEventV1("Send Message",o),this.emit("send-message-event",o)}logHandlingTime(){let e=Yc(this.state,{version:this.version});this.deepdeskApi.sendEventV1("Handling Time",e),this.store.dispatch(Vc())}notifySubmit(e={}){this.shouldAbort()||(this.store.dispatch(xe()),this.store.dispatch(Ve(e.text??this.state.input.text)))}stageSelectedSuggestion(e){let o=this.state.input.selectedSuggestionIndex,{textSuggestions:n}=this.state.input;this.store.dispatch(pe({text:n[o].text,suggestion:n[o],eventMetrics:e,replace:"until-selection-end"}))}emit(e,o,n={}){let s=()=>{this.eventListeners[e]&&this.eventListeners[e].forEach(r=>{try{r(o)}catch(i){C.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),C.error(i)}})};this.inputMediator&&n.mayApplyChanges?this.inputMediator.applyChanges(s):s()}on(e,o){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o),()=>{this.off(e,o)}}off(e,o){if(!e&&!o){this.eventListeners={};return}let n;this.eventListeners[e]&&(n=this.eventListeners[e].indexOf(o),n>-1&&this.eventListeners[e].splice(n,1))}setConversationQuery(e){this.dynamicThunkObject.conversationQuery=e}whenConversationLoaded(e){let o=()=>this.loadProfileConfig().then(()=>e());this.hasConversation()&&o();let n=this.hasConversation();this.store.subscribe(()=>{this.hasConversation()!==n&&(n=this.hasConversation(),n&&o())})}overlayContainerFactory(e,o,n,s){let[r,i]=Gn(o,n);return r.setAttribute("translate","no"),r.dataset.testid=e,s&&r.classList.add(s),this.unmountHandlers.push(()=>{$n(r),i(),r.remove()}),r}createInlineContainer(e,o){var i;let n=document.createElement("div");n.style.position="absolute",n.style.top="0px",n.style.left="0px",n.style.height="0px",n.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",n.appendChild(s);let r=(i=e.ownerDocument.defaultView)==null?void 0:i.frameElement;if(r){let[a,d]=Gn(r,{appendTo:document.body,onMoveStart:()=>{s.style.display="none"}});a.dataset.testid=o,a.style.zIndex="2",a.appendChild(n),this.unmountHandlers.push(()=>{$n(s),d()})}else document.body.appendChild(n);return s}createContainer(e,o=document.body){let n=window.getComputedStyle(o),s=document.createElement("div");return Ze(s),s.dataset.testid=e,s.style.color=n.color,s.style.fontSize=n.fontSize,s.style.fontFamily=n.fontFamily,s.style.fontVariant=n.fontVariant,s.setAttribute("translate","no"),o.appendChild(s),this.unmountHandlers.push(()=>{$n(s),s.remove()}),s}storeMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,o=JSON.stringify({text:this.state.input.text,metrics:this.state.input.metrics});window.sessionStorage.setItem(e,o),C.info(`Stored analytics for ${this.conversationId()}`)}catch{}}restoreMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,o=window.sessionStorage.getItem(e);if(!o)return;let n=JSON.parse(o);n.text.trim()===this.state.input.text.trim()?(C.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(Ii(n.metrics))):C.warn(`Metrics mismatch, disregarding stored metrics for ${this.conversationId()}`),window.sessionStorage.removeItem(e)}catch{}}mount(e,o={}){if(this.isMounted)throw new Error("[Deepdesk] This instance was already mounted. Make sure to unmount before you remount.");if(!Fr(e))throw new Error("[Deepdesk] Only mount on textarea or contentEditable div.");if(!this.shouldRender)return;let{customStyles:n={},showStyleSuggestions:s,showTabCompletion:r,showTextSuggestions:i,textSuggestionsCount:a,showMidSentenceSuggestions:d,showSuggestionsBeforePattern:l,showSuggestionsAfterPattern:c,isEmbedded:u,detectSubmit:p,insertLink:m,inputMediator:g,closestScrollSelector:f,appendOverlayTo:y,inlineSuggestions:k,floatingMenu:v}=o;this.configure({showStyleSuggestions:s,showTabCompletion:r,textSuggestionsCount:a,showMidSentenceSuggestions:d,showSuggestionsBeforePattern:l,showSuggestionsAfterPattern:c,showTextSuggestions:i,insertLink:m,isEmbedded:u,inlineSuggestions:k,floatingMenu:!!v}),o.automaticHandlingTime&&this.setupHandlingTime(e),Ze(e),this.inputMediator=g||(Fe(e)?new Lt(e):new It(e)),this.inputMediator.on("change",({plainText:x})=>{this.notifyInputChanged(x)}),this.inputMediator.on("updated",()=>{this.inputMediator&&this.store.dispatch(Pi({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()}))}),this.inputMediator.on("keydown",x=>{this.notifyKeyDown(x)}),this.inputMediator.on("paste",({pastedText:x,selectionText:T})=>{this.notifyPaste(x,T)}),this.inputMediator.on("cut",({selectionText:x})=>{this.notifyCut(x)});let S=f&&tu(e,f)||void 0;if(k){let{customStyles:x,appendOverlayTo:T}=o;if(Fe(e))throw new Error("[Deepdesk] Inline suggestion is not supported for textarea yet.");let N=this.createInlineContainer(e,"deepdesk-caret");Ot(B(Je,{store:this.store,customStyles:x,children:B(qe,{broadcastEvents:this.broadcastEvents,children:B(Vl,{})})}),N),this.inputMediator.on("caret",H=>{this.store.dispatch(ue([])),H?(N.style.display="block",N.style.top=`${H.top}px`,N.style.left=`${H.left}px`):N.style.display="none"});let V=this.overlayContainerFactory("floating-menu",S||e,{appendTo:typeof v=="object"&&"appendOverlayTo"in v?v.appendOverlayTo:T},x==null?void 0:x.floatingMenuRootNode);Ot(B(Je,{store:this.store,customStyles:x,children:B(qe,{broadcastEvents:this.broadcastEvents,children:B(Nl,{onLogIn:()=>this.loginViaPopup().catch(H=>C.warn(H.message))})})}),V)}else{let x=this.overlayContainerFactory("deepdesk-tab-completion",S||e,{appendTo:y,closestScrollElement:S,mirrorOverflow:!0,onRemove:()=>this.unmount()},n==null?void 0:n.rootNode),T=this.overlayContainerFactory("deepdesk-suggestions-overlay",S||e,{appendTo:y},n==null?void 0:n.suggestionsRootNode);Ot(B(Je,{store:this.store,customStyles:n,children:B(qe,{broadcastEvents:this.broadcastEvents,children:B(Ed,{inputElement:e})})}),x),Ot(B(Je,{store:this.store,customStyles:n,children:B(qe,{broadcastEvents:this.broadcastEvents,children:B(Yl,{onLogIn:()=>this.loginViaPopup().catch(N=>C.warn(N.message))})})}),T)}Ot(B(Je,{store:this.store,customStyles:n,children:B(qe,{broadcastEvents:this.broadcastEvents,children:B(Rl,{})})}),this.createContainer("deepdesk-overlays"));let P;this.inputMediator.on("selection",x=>{clearTimeout(P),x===null?P=setTimeout(()=>{x!==null&&this.store.dispatch(cs(x))},500):this.store.dispatch(cs(x))}),this.inputMediator.on("disabled",()=>{var x;(x=this.inputMediator)==null||x.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{p&&this.notifySubmit()}),this.inputMediator.on("blur",()=>this.store.dispatch(nr(!1))),this.inputMediator.on("focus",()=>this.store.dispatch(nr(!0))),this.store.dispatch(xi({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),this.unmountHandlers.push(()=>{this.state.input.text!==""&&(this.store.dispatch(xe()),this.storeMetrics())}),this.whenConversationLoaded(()=>{var x;this.restoreMetrics(),this.refresh(),this.broadcastEvents.setSessionId((x=this.state.conversation.current)==null?void 0:x.sessionId)}),this.isMounted=!0}unmount(){var e;this.unmountHandlers.forEach(o=>o()),this.unmountHandlers=[],(e=this.inputMediator)==null||e.dispose(),this.broadcastEvents.cleanup(),this.isMounted=!1}renderWidget(e,o={}){if(this.widgetRoot&&C.warn("A widget was already rendered for this instance. Make sure to unmountWidget before rerendering"),!this.shouldRender)return;let{customStyles:n,showImages:s,isEmbedded:r}=o;this.widgetRoot=e,this.configure({showImages:s,isEmbedded:r}),Ot(B(Je,{store:this.store,customStyles:n,children:B(qe,{broadcastEvents:this.broadcastEvents,children:B(Oc,{onLogIn:()=>this.loginViaPopup().catch(i=>C.warn(i.message))})})}),e),this.whenConversationLoaded(()=>{var i;this.broadcastEvents.setSessionId((i=this.state.conversation.current)==null?void 0:i.sessionId)})}unmountWidget(){this.widgetRoot&&$n(this.widgetRoot),this.widgetRoot=null}setupHandlingTime(e){let o=zr(e,({isVisible:n})=>{n?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),o()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){ou(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfigPromise=null;loadProfileConfig(){return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(this.loadProfileConfigPromise=Promise.resolve().then(async()=>{await this.store.dispatch(Yt());let e=we(this.state);e&&(await this.store.dispatch(Jt()),this.store.dispatch(To({showSearch:e.search,showAutoflows:e.autoflows,showCustomMessages:e.customMessages,showImageSearch:e.imageSearch,showEntitiesCommand:e.entitiesCommand,showSummaryCommand:e.summarizer,showKnowledgeSearch:!!e.knowledgeAssistant,recommendTextSuggestions:e.recommendTextSuggestions})))}),this.loadProfileConfigPromise)}async loginViaPopup(e){return new Promise((o,n)=>{let s=new MessageChannel,r=s.port1,i=this.state.settings.adminUrl,a=new URL(e!=null&&e.url?e==null?void 0:e.url:`${i}/platform/sso/`);a.searchParams.append("redirect","/sdk/popup/close.html");let d=!1,l=()=>{c&&!c.closed&&c.close(),window.removeEventListener("message",u),clearInterval(p)};r.onmessage=async m=>{var g,f;if((g=m.data)!=null&&g.jwt)try{await this.deepdeskApi.exchangeTokenForAccessCookie((f=m.data)==null?void 0:f.jwt),await this.isLoggedIn(),this.broadcastEvents.send(zt),d=!0,s.port1.close(),o()}catch(y){console.error(y),n(y)}finally{d=!0,l()}};let c=window.open(a.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");c===null&&n(new Error("Popup blocked by browser"));let u=async m=>{var g;if(m.origin===a.origin)switch((g=m.data)==null?void 0:g.type){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){C.error("Error posting message to popup",f),n(f)}break}case"deepdesk-popup-error":{l(),m.data.message==="Timeout"&&C.warn("Popup timed out. Check if the account's platform url is configured correctly."),n(new Error(m.data.message));break}}};window.addEventListener("message",u);let p=setInterval(()=>{c&&!c.closed||(l(),d||n(new Error("Popup closed by user")))},200);this.unmountHandlers.push(l)})}translateMessages(e){return this.deepdeskApi.translateMessages(e)}async checkForTrialMode(e){try{let{account:o}=await this.deepdeskApi.getPlatformConfig();if(!o.isTrial){this.shouldRender=!0;return}if(C.info("Trial is active"),!await this.deepdeskApi.checkUserExists(e))throw new Error("User is not in trial");this.shouldRender=!0}catch(o){let{message:n}=o;C.info(n),this.shouldRender=!1}}async refreshWidgetSuggestions(){if(!this.widgetRoot||this.shouldAbort())return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let o=ln(this.state);try{o.forEach(({type:n})=>{n==="entities"?this.store.dispatch(ae()):Co.includes(n)||this.store.dispatch(de(n))})}catch(n){this.handleError(n)}}};async function Qv(t,e,o={}){let{value:n}=t,{start:s,end:r}=o.replace??{start:0,end:n.length},i=`${n.slice(0,s)}${e}${n.slice(r)}`,a=o.selectionAfter??{start:s+e.length,end:s+e.length},d=()=>{if(o.setValue)return o.setValue(i);t.value=i};return Promise.resolve(d()).then(()=>{t.selectionStart=a.start,t.selectionEnd=a.end,t.blur(),t.focus()})}async function Zv(t,e,o={}){let n=o.replace?ot(t,o.replace.start,o.replace.end):go(t),s,r=()=>{if(o.setRange)return o.setRange(n.cloneRange());n.deleteContents(),s=document.createElement("span"),n.insertNode(s),o.insertBRs!==!1?e.split(`
|
|
11
|
+
`).reverse().forEach((i,a)=>{a>0&&n.insertNode(document.createElement("br")),n.insertNode(document.createTextNode(i))}):n.insertNode(document.createTextNode(e))};return Promise.resolve(r()).then(()=>{try{if(o.selectionAfter!==!1){t.focus();let i=o.selectionAfter?ot(t,o.selectionAfter.start,o.selectionAfter.end):(n.collapse(!1),n),a=window.getSelection();a==null||a.removeAllRanges(),a==null||a.addRange(i)}if(!s)return;s.scrollIntoView&&s.scrollIntoView({block:"nearest",inline:"nearest"})}finally{s&&s.remove()}})}function Jv(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 Yv(t){let e=document.createDocumentFragment();return t.split(`
|
|
12
|
+
`).forEach((o,n)=>{n>0&&e.appendChild(document.createElement("br"));let s={index:0},r=0;for(;s=o.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(o.slice(r,r+s.index))),e.appendChild(i),r=r+s.index+s[0].length}e.appendChild(document.createTextNode(o.slice(r)))}),e}function fu(t,e){let o=t.parentElement;if(!o){console.warn("No insert point found");return}let{display:n}=window.getComputedStyle(o);n.includes("block")||n==="table-cell"?o==null||o.insertBefore(e,t.nextSibling):fu(o,e)}async function eS(t,e,{isBlock:o,isHTML:n}={}){let s;t.dispatchEvent(new InputEvent("beforeinput",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0}));let r=()=>{let i=t.ownerDocument.defaultView??window,a=i.getSelection();if((!a||a.rangeCount===0)&&(t.focus(),a=i.getSelection()),!a||a.rangeCount===0)return;let d=a.getRangeAt(0);if(!d)return;s=document.createElement("span"),d.insertNode(s);let l=n?Jv(e):Yv(e);o?fu(d.startContainer,l):(d.insertNode(l),d.collapse(!1))};return Promise.resolve(r()).then(()=>{if(t.dispatchEvent(new InputEvent("input",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0})),t.focus(),!!s)try{s.scrollIntoView&&s.scrollIntoView({block:"nearest",inline:"nearest"})}finally{s&&s.remove()}})}function tS(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}async function oS(t,e,o){await new Be(t).authenticateWithKey(e,o)}async function nS(t){let o=await new fe(t).get("/platform/config/",{version:null,useCache:!0});return L(o)}async function sS(t){let o=await(t.fetch??window.fetch)(t.url),n=await o.blob();return new File([n],t.name,{type:t.mimeType??o.headers.get("Content-Type")??"image/jpeg"})}async function rS(t,e){let o=await sS(e),n=new Event("change",{bubbles:!0,cancelable:!0});try{Object.defineProperty(t,"files",{configurable:!0,get:()=>[o]}),t.dispatchEvent(n)}finally{Object.hasOwn(t,"files")&&delete t.files}}export{_ as Card,It as ContentEditableInput,Be as DeepdeskAPI,jn as DeepdeskSDK,fe as HTTPClient,Ke as InputMediator,at as InputType,Jn as KeyboardHint,Yn as Label,wo as Locale,ve as Section,ts as SectionList,Ie as Sources,A as Suggestion,J as SuggestionList,Lt as TextAreaInput,it as ToggleButton,rS as attachFile,oS as authenticateWithKey,go as createFullRange,Gn as createOverlayContainer,ot as createRangeFromOffsets,Qt as escapeHTML,nS as fetchPlatformConfig,tS as formatTextMarkup,Kn as getRangeOffsets,Bn as getRangeText,eS as insertCKEditor,Ms as isHTML,Fr as isSupportedInputElement,Zv as updateContentEditable,Qv as updateTextArea,h as useStyles,zr as waitForElementVisibilityChange};
|