@deepdesk/deepdesk-sdk 10.6.0 → 10.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.esm.js CHANGED
@@ -1,7 +1,7 @@
1
- var lu=Object.defineProperty;var q=(t,e)=>{for(var o in e)lu(t,o,{get:e[o],enumerable:!0})};import rs from"classnames";import gu,{createContext as mu,useContext as is,useEffect as fu,useState as hu}from"react";import cu,{useContext as pu}from"react";import uu from"classnames";var Kt=cu.createContext({});function S(t,e){let{debug:o,...n}=pu(Kt),s=n[t];return s?Object.entries(e).reduce((r,[i,a])=>{let l=s[i];return{...r,[i]:uu(a,l,o?`${t}__${i}`:!1)}},{}):e}var ei={root:"_root_vr71j_1"};import{jsx as xo,jsxs as du}from"react/jsx-runtime";var bo=()=>du("svg",{className:ei.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[xo("defs",{children:xo("style",{children:".cls-1 { fill: #b3b3b3; }"})}),xo("title",{children:"Failed loading image"}),xo("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 ss={root:"_root_4e7lf_1",imageWrapper:"_imageWrapper_4e7lf_7",image:"_image_4e7lf_7",content:"_content_4e7lf_24",title:"_title_4e7lf_35",contentIsCropped:"_contentIsCropped_4e7lf_45",lineClamp:"_lineClamp_4e7lf_51"};import{jsx as it}from"react/jsx-runtime";var Co=mu(ss),yu=({title:t,src:e})=>{let o=is(Co),[n,s]=hu(!1);return fu(()=>{s(!1)},[e]),it("div",{className:o.imageWrapper,children:e&&!n?it("img",{className:o.image,alt:t,src:e,onError:()=>s(!0)}):it(bo,{})})},Su=({className:t,lineClamp:e=!1,cropText:o=!1,children:n})=>{let s=is(Co);return it("div",{className:rs(s.content,t,{[s.contentIsCropped]:o,[s.lineClamp]:e}),children:n})},vu=({as:t="h1",cropText:e=!1,className:o,children:n,...s})=>{let r=is(Co);return gu.createElement(t,{className:rs(r.title,o,{[r.contentIsCropped]:e}),...s},n)},wo=({children:t})=>{let e=S("Card",ss);return it("div",{className:rs(e.root),children:it(Co.Provider,{value:e,children:t})})};wo.Image=yu;wo.Content=Su;wo.Title=vu;var N=wo;import _u from"classnames";var ti={root:"_root_cq1yq_1"};import{jsx as Cu}from"react/jsx-runtime";var xu={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},bu=({className:t,keyCode:e,...o})=>{let n=S("KeyboardHint",ti);return Cu("span",{"data-key":xu[e],className:_u(t,n.root),...o})},as=bu;import wu from"classnames";var oi={root:"_root_4a08n_1"};import{jsx as Eu}from"react/jsx-runtime";var Tu=({className:t,children:e,...o})=>{let n=S("Label",oi);return Eu("span",{...o,className:wu(t,n.root),children:e})},ls=Tu;var ni={root:"_root_jlggj_1",subTitleContainer:"_subTitleContainer_jlggj_5",subtitle:"_subtitle_jlggj_9",suggestions:"_suggestions_jlggj_17"};import{jsx as cs,jsxs as Ru}from"react/jsx-runtime";var ku=({title:t,children:e,type:o,...n})=>{let s=S("Section",ni);return Ru("section",{...n,className:s.root,"data-section-type":o,children:[t&&cs("div",{className:s.subTitleContainer,children:cs("span",{className:s.subtitle,children:t})}),cs("div",{className:s.suggestions,children:e})]})},je=ku;import Iu from"classnames";import Pu from"react";var si={root:"_root_19wxp_1"};import{jsx as Lu}from"react/jsx-runtime";var Au=Pu.forwardRef(({className:t,children:e},o)=>{let n=S("SectionList",si);return Lu("div",{ref:o,className:Iu(n.root,t),children:e})}),ps=Au;import To from"classnames";import Mu,{createContext as Ou,useCallback as Nu,useContext as Ut}from"react";var us={root:"_root_ipo0b_11",fadein:"_fadein_ipo0b_1",isClickable:"_isClickable_ipo0b_46",isSelected:"_isSelected_ipo0b_51",actions:"_actions_ipo0b_75",actionsIsFixed:"_actionsIsFixed_ipo0b_97",actionButton:"_actionButton_ipo0b_105",dropdownList:"_dropdownList_ipo0b_126",dropdownButton:"_dropdownButton_ipo0b_141",dropdownItem:"_dropdownItem_ipo0b_151",dropdownItemButton:"_dropdownItemButton_ipo0b_160",actionButtonIsPrimary:"_actionButtonIsPrimary_ipo0b_174",actionButtonIsDisabled:"_actionButtonIsDisabled_ipo0b_178",labels:"_labels_ipo0b_186",label:"_label_ipo0b_186"};import{jsx as ye,jsxs as Ku}from"react/jsx-runtime";var at=Ou(us),Du=({fixed:t,children:e,...o})=>{let n=Ut(at);return ye("div",{...o,className:To(n.actions,{[n.actionsIsFixed]:t}),children:e})},Hu=({className:t,primary:e,disabled:o,label:n,children:s})=>{let r=Ut(at);return Ku("div",{className:To(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[n,ye("ul",{className:r.dropdownList,children:s})]})},Bu=({index:t,label:e,onClick:o})=>{let n=Ut(at);return ye("li",{className:n.dropdownItem,children:ye("button",{className:n.dropdownItemButton,type:"button","data-index":t,onClick:o,children:e})})},Fu=({className:t,primary:e,disabled:o,onClick:n,label:s})=>{let r=Ut(at);return ye("button",{type:"button",className:To(t,r.actionButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onClick:n??(i=>i.stopPropagation()),disabled:o,"aria-hidden":o,children:s})},ds=({labels:t})=>{let e=Ut(at);return ye("div",{className:e.labels,children:t.map(o=>ye("span",{className:e.label,children:o},o))})},lt=Mu.forwardRef(({className:t,selected:e,onClick:o,children:n,as:s="div",...r},i)=>{let a=S("Suggestion",us),l=Nu(c=>{c.preventDefault(),o&&o(c)},[o]);return ye(s,{...r,ref:i,className:To(t,a.root,{[a.isSelected]:e,[a.isClickable]:!!o}),onClick:l,children:ye(at.Provider,{value:a,children:n})})});lt.Labels=ds;lt.Actions=Du;lt.ActionButton=Fu;lt.DropdownButton=Hu;lt.DropdownItem=Bu;var M=lt;import Uu from"classnames";var ri={root:"_root_fp74r_1",isWithDivider:"_isWithDivider_fp74r_9"};import{jsx as ju}from"react/jsx-runtime";var zu=({withDivider:t,children:e})=>{let o=S("SuggestionList",ri);return ju("div",{"data-testid":"suggestions-overlay-list",className:Uu(o.root,{[o.isWithDivider]:t}),children:e})},se=zu;import qu from"classnames";var ii={root:"_root_1wpmq_1",isCollapsed:"_isCollapsed_1wpmq_17"};import{jsx as gs}from"react/jsx-runtime";var Vu=({className:t,isCollapsed:e,title:o,onClick:n})=>{let s=S("ToggleButton",ii);return gs("button",{type:"button",className:qu(s.root,t,{[s.isCollapsed]:e}),onClick:n,title:o,children:gs("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:gs("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},ct=Vu;var ai=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,pt=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var li=/x-deepdesk-(([a-z0-9\-_])+-version)/,pe=(m=>(m.SEARCH="search",m.TEMPLATE="template",m.ELASTIC_SEARCH="search-autocomplete",m.GPT="gpt",m.TRIE="trie",m.TRIE_WITH_TYPOS="trie-with-typos",m.SEMANTIC="semantic",m.TEXT_RECOMMENDATION="text_recommendation",m.URL_RECOMMENDATION="url_recommendation",m.LINK_RECOMMENDATION="link_recommendation",m.PERSONAL_COLLECTION="personal-collection",m.PERSONAL_COLLECTION_SEARCH="personal-collection-search",m.SEARCH_OVERLAY="search-overlay",m.SEARCH_PREVIEW="search-preview",m.SEARCH_URL="search-url",m))(pe||{}),qe=(r=>(r.ENTER="enter",r.TAB="tab",r.ARROW="arrow",r.HOTKEY="hotkey",r.MOUSE="mouse",r))(qe||{});import{render as vo,unmountComponentAtNode as Yn}from"react-dom";import{Fragment as Tf}from"react";import{createSlice as Wu}from"@reduxjs/toolkit";import{useSelector as Gu}from"react-redux";var Eo=(o=>(o.NL_NL="nl-NL",o.EN_US="en-US",o))(Eo||{});var $u={locale:"en-US",deanonymize:!1,fallbackImage:!1,isEmbedded:!1,showAutoflows:!1,showCustomMessages:!1,showImages:!1,showPersonalCollectionLink:!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,adminUrl:void 0,productName:"Deepdesk"},ci=Wu({name:"settings",initialState:$u,reducers:{set(t,e){Object.entries(e.payload).forEach(o=>{let[n,s]=o;typeof s>"u"||(t[n]=s)})}}}),{set:zt}=ci.actions,ms=t=>e=>e.settings[t],b=t=>Gu(ms(t)),pi=ci.reducer;import{useState as um}from"react";import{useDispatch as dm,useSelector as lr}from"react-redux";import{createAction as Ve,createSlice as od}from"@reduxjs/toolkit";import{diffChars as nd}from"diff";import{useSelector as sd}from"react-redux";function ui(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function Ie(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)=>Ie(r,e[i],o-1)):ui(t)&&ui(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>Ie(t[i],e[i],o-1)):!1}function Xu(t){return Math.max(...t.map(e=>e.length))}function Qu(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 di(t,e){let n=[...t.map(({text:s})=>s.split(/\b(\w+)\b/))];for(let s=0;s<Xu(n);s++){let r=Qu(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 Zu=2;function fs(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let o=di(t,Zu);return o&&o.text!==e?o:t[0]}import{createAction as Ju,createAsyncThunk as ut,createSlice as Yu}from"@reduxjs/toolkit";var gi={current:null,isSupported:null},R=Ju("resetConversation"),ko=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.sessionId)||null},Ro=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},dt=t=>t.conversation.isSupported,hs=ut("conversation/isSupported",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.isConversationSupported(t.sessionId,t.options)}),Io=ut("conversation/create",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.createConversation(t)}),Po=ut("conversation/bySessionId",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.getConversationBySessionId(t.sessionId,t.options)}),Ao=ut("conversation/update",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Ro(e.getState());if(!n)throw new Error("No current conversation to update");return o.updateConversation(n,t)}),ys=ut("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:l}=t;return o.updateConversation(n.id,{agentId:s,agentEmail:i,agentName:r,agentNickname:a,tags:l})})}),Lo=ut("conversation/postMessages",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Ro(e.getState());if(!n)throw new Error("No current conversation to update messages");return o.postMessages(n,t.map(s=>({...s})))}),ed=[Io.rejected,Po.rejected,Ao.rejected,Lo.rejected].map(t=>t==null?void 0:t.toString()),td=Yu({name:"conversation",initialState:gi,reducers:{},extraReducers:t=>{t.addCase(hs.fulfilled,(e,o)=>{e.isSupported=o.payload}).addCase(Io.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(ys.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Ao.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Lo.fulfilled,(e,o)=>{e.current&&(e.current.messages=o.payload)}).addCase(R,()=>gi).addMatcher(e=>ed.includes(e.type),(e,o)=>{throw new Error(o.error.message)})}}),mi=td.reducer;var Pe={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 Oo(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 No=Ve("input/replaceText"),Do=Ve("input/keyDown"),We=Ve("input/sendMessage"),Ho=Ve("input/sendEditSuggestionMessage"),Bo=Ve("input/uiInputChange"),Fo=Ve("input/applyImageSuggestion"),z=Ve("input/sendEvent");function Mo(t){if(!t.stagedSuggestion)return;let{text:e,suggestion:{source:o,abVariant:n,abTestName:s,trainingJobs:r,sourceText:i,searchTerm:a,text:l},eventMetrics:{inputType:c},replace:p}=t.stagedSuggestion,u=o==="search"||o==="personal-collection-search",d=e.slice(t.userCommitted.text.substring(0,t.userCommitted.selection.start).length);(u||p==="selection")&&(d=e),t.stagedSuggestion.suggestion.source==="search-overlay"&&(d=l),t.userCommitted.text=t.text,t.userCommitted.selection=t.selection,t.metrics.textSuggestions.push({text:d,source:o,abVariant:n,abTestName:s,inputType:c,sourceText:i,trainingJobs:r||[],searchTerm:u?t.userCommitted.text:a}),t.stagedSuggestion=null,t.textSuggestions=[],t.selectedSuggestionIndex=-1}var fi=t=>od({name:t,initialState:Pe,reducers:{initialInput(e,o){let{text:n,selection:s,html:r}=o.payload;e.text=n,e.selection.start=(s==null?void 0:s.start)??n.length,e.selection.end=(s==null?void 0:s.end)??n.length,e.userCommitted.text=n,e.userCommitted.selection.start=(s==null?void 0:s.start)??n.length,e.userCommitted.selection.end=(s==null?void 0:s.end)??n.length,e.html=r||null},reset(e){Object.assign(e,{...Pe,selection:e.selection})},resetToCommitted(e){e.text=e.userCommitted.text,e.selection=e.userCommitted.selection,e.stagedSuggestion=null,e.tabCompletionSuggestion=fs(e.textSuggestions,e.userCommitted.text)},changeSelection(e,o){o.payload&&(Ie(e.selection,o.payload)||(e.selection=o.payload,e.userCommitted.selection=e.selection,e.stagedSuggestion&&Mo(e)))},platformInput(e,o){let{text:n,html:s,selection:r}=o.payload;r&&(e.selection.start=r.start,e.selection.end=r.end),e.text=n,e.html=s||null},userInput(e,o){var i,a,l,c;if(e.previousKeyDownEvent){let{key:p,shiftKey:u,ctrlKey:d,metaKey:g,altKey:f}=e.previousKeyDownEvent;switch(p){case"Enter":u&&(e.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:m}=e,{text:v}=o.payload,w=nd(m,v);m.length-v.length>1&&e.metrics.deletions.push(...w.filter(h=>h.removed).map(h=>h.value)),e.metrics.numCharsDeleted+=m.length-v.length;break}case"C":case"V":case"X":if(!d&&!g){e.metrics.numCharsTyped+=1;let m=((i=e.selection)==null?void 0:i.start)!==void 0&&((a=e.selection)==null?void 0:a.end)!==void 0?e.text.substring(e.selection.start,e.selection.end):null;m&&m.length>0&&(e.metrics.numCharsDeleted+=m.length,e.metrics.deletions.push(m))}break;case"Shift":break;default:if(!d&&!g&&!f){e.metrics.numCharsTyped+=1;let m=((l=e.selection)==null?void 0:l.start)!==void 0&&((c=e.selection)==null?void 0:c.end)!==void 0?e.text.substring(e.selection.start,e.selection.end):null;m&&m.length>0&&(e.metrics.numCharsDeleted+=m.length,e.metrics.deletions.push(m))}}}!e.metrics.agentStartedTypingTimestamp&&o.payload.text!==e.text&&(e.metrics.agentStartedTypingTimestamp=Date.now()),o.payload.text===""&&(e.metrics=Pe.metrics,e.textSuggestions=[],e.stagedSuggestion=null),e.text!==o.payload.text&&Mo(e);let{text:n,html:s,selection:r}=o.payload;r&&(e.selection.start=r.start,e.selection.end=r.end,e.userCommitted.selection.start=r.start,e.userCommitted.selection.end=r.end),e.text=n,e.html=s||null,e.userCommitted.text=n,e.previousKeyDownEvent=null},stageSuggestion(e,o){let{text:n}=o.payload;switch(e.stagedSuggestion=o.payload,e.tabCompletionSuggestion=void 0,o.payload.replace){case"selection":e.text=`${e.text.slice(0,e.selection.start)}${n}${e.text.slice(e.selection.end)}`,e.selection.end=e.selection.start+n.length,e.selection.start+=n.length;break;case"until-selection-end":e.text=`${n}${e.text.slice(e.selection.end)}`,e.selection.start=n.length,e.selection.end=n.length;break;default:throw new Error(`Unknown replace ${o.payload.replace}`)}o.payload.eventMetrics.inputType==="tab"&&Mo(e)},commitSuggestion(e){Mo(e)},offeredTextSuggestion(e,o){let{text:n,suggestion:{source:s}}=o.payload;e.metrics.offeredTextSuggestions.find(i=>i.text===n)||e.metrics.offeredTextSuggestions.push({text:n,source:s})},registerCut(e,o){let{metrics:n}=e,s=o.payload;e.metrics={...e.metrics,numCharsCut:n.numCharsCut+s.length,cuts:[...n.cuts,s]}},registerPaste(e,o){let{metrics:n}=e,{text:s,selectionText:r}=o.payload,i=n.numCharsDeleted+(r&&r.length?r.length:0),a=r&&r.length?[...n.deletions,r]:n.deletions;e.metrics={...e.metrics,numCharsDeleted:i,deletions:a,numCharsPasted:n.numCharsPasted+s.length,numPaste:n.numPaste+1,pastes:[...n.pastes,s]}},registerKeyDown(e,o){e.previousKeyDownEvent=o.payload},nextTextSuggestionIndex(e){let o=e.textSuggestions.length;e.selectedSuggestionIndex=e.selectedSuggestionIndex<o-1?e.selectedSuggestionIndex+1:e.selectedSuggestionIndex},previousTextSuggestionIndex(e){e.selectedSuggestionIndex=e.selectedSuggestionIndex>=0?e.selectedSuggestionIndex-1:e.selectedSuggestionIndex},setTextSuggestions(e,o){if(e.selectedSuggestionIndex=-1,e.textSuggestions=o.payload,o.payload.length===0)return;let n=e.userCommitted.text.substring(0,e.userCommitted.selection.end),s=fs(o.payload,n);e.tabCompletionSuggestion=s!=null&&s.text.includes(n)?s:void 0},setSelectedTextSuggestionIndex(e,o){e.selectedSuggestionIndex=o.payload},mergeMetrics(e,{payload:o}){let n=o.agentStartedTypingTimestamp!=null?o.agentStartedTypingTimestamp:Date.now(),s=(Date.now()-n)/1e3;e.metrics.externalTimeTotalSeconds=s,e.metrics.numCharsTyped+=o.numCharsTyped,e.metrics.numCharsPasted+=o.numCharsPasted,e.metrics.numCharsCut+=o.numCharsCut,e.metrics.numCharsDeleted+=o.numCharsDeleted,e.metrics.numPaste+=o.numPaste,e.metrics.pastes.push(...o.pastes),e.metrics.deletions.push(...o.deletions)}},extraReducers:e=>{e.addCase(R,o=>{o.tabCompletionSuggestion=Pe.tabCompletionSuggestion,o.previousKeyDownEvent=Pe.previousKeyDownEvent,o.textSuggestions=Pe.textSuggestions,o.selectedSuggestionIndex=Pe.selectedSuggestionIndex,o.metrics=Pe.metrics})}}),Ss=fi("input"),gt=t=>t.input.userCommitted.text.substring(0,t.input.userCommitted.selection.end),rd=t=>t.input.selection,hi=()=>sd(rd),{userInput:yi,changeSelection:vs,initialInput:Si,mergeMetrics:vi,nextTextSuggestionIndex:_i,offeredTextSuggestion:xi,previousTextSuggestionIndex:bi,registerCut:Ci,registerKeyDown:wi,registerPaste:Ti,reset:Ei,resetToCommitted:jt,platformInput:ki,setSelectedTextSuggestionIndex:Ae,setTextSuggestions:ue,stageSuggestion:re,commitSuggestion:Le}=Ss.actions,$=fi("overlay");import{useEffect as Ii,useRef as Pi}from"react";var Ri={root:"_root_1qp5s_1",content:"_content_1qp5s_23"};import{jsx as Ai}from"react/jsx-runtime";var id=({isOpen:t,autoFocus:e,children:o,onClose:n,onBack:s,overlayAriaLabel:r,contentAriaLabel:i})=>{let a=Pi(null),l=Pi(null),c=S("Dialog",Ri);return Ii(()=>{var d,g;let p=f=>{f.key==="Escape"&&(f.preventDefault(),f.stopPropagation(),s())},u=f=>{let m=window.getSelection();m!=null&&m.toString()||f.target===a.current&&t&&n()};return(d=a.current)==null||d.addEventListener("click",u),(g=a.current)==null||g.addEventListener("keyup",p),()=>{var f,m;(f=a.current)==null||f.removeEventListener("click",u),(m=a.current)==null||m.removeEventListener("keyup",p)}},[a,l,s,n]),Ii(()=>{var p,u;!a.current||!t||!e||(u=(p=a.current)==null?void 0:p.querySelector("input, textarea"))==null||u.focus()},[t,e,a]),t?Ai("div",{role:"dialog","data-testid":"dialog",className:c.root,"aria-label":r,ref:a,children:Ai("div",{ref:l,"data-testid":"dialog-content",className:c.content,"aria-label":i,children:o})}):null},mt=id;import{useEffect as Ka}from"react";import{useDispatch as Wg,useSelector as Gg}from"react-redux";var _s={};q(_s,{enUS:()=>ad,nlNL:()=>ld});var ad={dismiss:[{type:0,value:"Close"}],add:[{type:0,value:"Add to message"}],next:[{type:0,value:"Next"}],previous:[{type:0,value:"Previous"}],warning:[{type:0,value:"Are you sure you want to discard the message?"}]},ld={dismiss:[{type:0,value:"Sluiten"}],add:[{type:0,value:"Toevoegen"}],next:[{type:0,value:"Volgende"}],previous:[{type:0,value:"Vorige"}],warning:[{type:0,value:"Weet je zeker dat je de wijzigingen wilt weggooien?"}]};var Li={root:"_root_l80t9_1",content:"_content_l80t9_3",title:"_title_l80t9_7",actions:"_actions_l80t9_15",pagination:"_pagination_l80t9_20",primaryButton:"_primaryButton_l80t9_51",primaryButtons:"_primaryButtons_l80t9_55"};import{createContext as _d,useContext as xd}from"react";var xs=function(t,e){return xs=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])},xs(t,e)};function qt(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");xs(t,e);function 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 Mi(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 Ko(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 Uo;(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"})(Uo||(Uo={}));var zo=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 jo;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(jo||(jo={}));function bs(t){return t.type===ie.literal}function Oi(t){return t.type===ie.argument}function qo(t){return t.type===ie.number}function Vo(t){return t.type===ie.date}function Wo(t){return t.type===ie.time}function Go(t){return t.type===ie.select}function $o(t){return t.type===ie.plural}function Ni(t){return t.type===ie.pound}function Xo(t){return t.type===ie.tag}function Qo(t){return!!(t&&typeof t=="object"&&t.type===jo.number)}function Vt(t){return!!(t&&typeof t=="object"&&t.type===jo.dateTime)}function Cs(t){t.forEach(function(e){if(delete e.location,Go(e)||$o(e))for(var o in e.options)delete e.options[o].location,Cs(e.options[o].value);else qo(e)&&Qo(e.style)||(Vo(e)||Wo(e))&&Vt(e.style)?delete e.style.location:Xo(e)&&Cs(e.children)})}function Di(t,e){e===void 0&&(e={}),e=ee({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var o=new zo(t,e).parse();if(o.err){var n=SyntaxError(Uo[o.err.kind]);throw n.location=o.err.location,n.originalMessage=o.err.message,n}return e!=null&&e.captureLocation||Cs(o.val),o.val}function Zo(t,e){var o=e&&e.cache?e.cache:md,n=e&&e.serializer?e.serializer:gd,s=e&&e.strategy?e.strategy:pd;return s(t,{cache:o,serializer:n})}function cd(t){return t==null||typeof t=="number"||typeof t=="boolean"}function Hi(t,e,o,n){var s=cd(n)?n:o(n),r=e.get(s);return typeof r>"u"&&(r=t.call(this,n),e.set(s,r)),r}function Bi(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 ws(t,e,o,n,s){return o.bind(e,t,n,s)}function pd(t,e){var o=t.length===1?Hi:Bi;return ws(t,this,o,e.cache.create(),e.serializer)}function ud(t,e){return ws(t,this,Bi,e.cache.create(),e.serializer)}function dd(t,e){return ws(t,this,Hi,e.cache.create(),e.serializer)}var gd=function(){return JSON.stringify(arguments)};function Ts(){this.cache=Object.create(null)}Ts.prototype.get=function(t){return this.cache[t]};Ts.prototype.set=function(t,e){this.cache[t]=e};var md={create:function(){return new Ts}},Jo={variadic:ud,monadic:dd};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){qt(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 Es=function(t){qt(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 Fi=function(t){qt(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 Ki=function(t){qt(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 fd(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 hd(t){return typeof t=="function"}function Gt(t,e,o,n,s,r,i){if(t.length===1&&bs(t[0]))return[{type:j.literal,value:t[0].value}];for(var a=[],l=0,c=t;l<c.length;l++){var p=c[l];if(bs(p)){a.push({type:j.literal,value:p.value});continue}if(Ni(p)){typeof r=="number"&&a.push({type:j.literal,value:o.getNumberFormat(e).format(r)});continue}var u=p.value;if(!(s&&u in s))throw new Ki(u,i);var d=s[u];if(Oi(p)){(!d||typeof d=="string"||typeof d=="number")&&(d=typeof d=="string"||typeof d=="number"?String(d):""),a.push({type:typeof d=="string"?j.literal:j.object,value:d});continue}if(Vo(p)){var g=typeof p.style=="string"?n.date[p.style]:Vt(p.style)?p.style.parsedOptions:void 0;a.push({type:j.literal,value:o.getDateTimeFormat(e,g).format(d)});continue}if(Wo(p)){var g=typeof p.style=="string"?n.time[p.style]:Vt(p.style)?p.style.parsedOptions:n.time.medium;a.push({type:j.literal,value:o.getDateTimeFormat(e,g).format(d)});continue}if(qo(p)){var g=typeof p.style=="string"?n.number[p.style]:Qo(p.style)?p.style.parsedOptions:void 0;g&&g.scale&&(d=d*(g.scale||1)),a.push({type:j.literal,value:o.getNumberFormat(e,g).format(d)});continue}if(Xo(p)){var f=p.children,m=p.value,v=s[m];if(!hd(v))throw new Fi(m,"function",i);var w=Gt(f,e,o,n,s,r),h=v(w.map(function(C){return C.value}));Array.isArray(h)||(h=[h]),a.push.apply(a,h.map(function(C){return{type:typeof C=="string"?j.literal:j.object,value:C}}))}if(Go(p)){var y=p.options[d]||p.options.other;if(!y)throw new Es(p.value,d,Object.keys(p.options),i);a.push.apply(a,Gt(y.value,e,o,n,s));continue}if($o(p)){var y=p.options["=".concat(d)];if(!y){if(!Intl.PluralRules)throw new Wt(`Intl.PluralRules is not available in this environment.
1
+ var lu=Object.defineProperty;var q=(t,e)=>{for(var o in e)lu(t,o,{get:e[o],enumerable:!0})};import is from"classnames";import gu,{createContext as mu,useContext as as,useEffect as fu,useState as hu}from"react";import cu,{useContext as pu}from"react";import uu from"classnames";var Kt=cu.createContext({});function S(t,e){let{debug:o,...n}=pu(Kt),s=n[t];return s?Object.entries(e).reduce((r,[i,a])=>{let l=s[i];return{...r,[i]:uu(a,l,o?`${t}__${i}`:!1)}},{}):e}var ei={root:"_root_vr71j_1"};import{jsx as xo,jsxs as du}from"react/jsx-runtime";var bo=()=>du("svg",{className:ei.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[xo("defs",{children:xo("style",{children:".cls-1 { fill: #b3b3b3; }"})}),xo("title",{children:"Failed loading image"}),xo("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 rs={root:"_root_4e7lf_1",imageWrapper:"_imageWrapper_4e7lf_7",image:"_image_4e7lf_7",content:"_content_4e7lf_24",title:"_title_4e7lf_35",contentIsCropped:"_contentIsCropped_4e7lf_45",lineClamp:"_lineClamp_4e7lf_51"};import{jsx as it}from"react/jsx-runtime";var Co=mu(rs),yu=({title:t,src:e})=>{let o=as(Co),[n,s]=hu(!1);return fu(()=>{s(!1)},[e]),it("div",{className:o.imageWrapper,children:e&&!n?it("img",{className:o.image,alt:t,src:e,onError:()=>s(!0)}):it(bo,{})})},Su=({className:t,lineClamp:e=!1,cropText:o=!1,children:n})=>{let s=as(Co);return it("div",{className:is(s.content,t,{[s.contentIsCropped]:o,[s.lineClamp]:e}),children:n})},vu=({as:t="h1",cropText:e=!1,className:o,children:n,...s})=>{let r=as(Co);return gu.createElement(t,{className:is(r.title,o,{[r.contentIsCropped]:e}),...s},n)},wo=({children:t})=>{let e=S("Card",rs);return it("div",{className:is(e.root),children:it(Co.Provider,{value:e,children:t})})};wo.Image=yu;wo.Content=Su;wo.Title=vu;var N=wo;import _u from"classnames";var ti={root:"_root_cq1yq_1"};import{jsx as Cu}from"react/jsx-runtime";var xu={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},bu=({className:t,keyCode:e,...o})=>{let n=S("KeyboardHint",ti);return Cu("span",{"data-key":xu[e],className:_u(t,n.root),...o})},ls=bu;import wu from"classnames";var oi={root:"_root_4a08n_1"};import{jsx as Eu}from"react/jsx-runtime";var Tu=({className:t,children:e,...o})=>{let n=S("Label",oi);return Eu("span",{...o,className:wu(t,n.root),children:e})},cs=Tu;var ni={root:"_root_jlggj_1",subTitleContainer:"_subTitleContainer_jlggj_5",subtitle:"_subtitle_jlggj_9",suggestions:"_suggestions_jlggj_17"};import{jsx as ps,jsxs as Ru}from"react/jsx-runtime";var ku=({title:t,children:e,type:o,...n})=>{let s=S("Section",ni);return Ru("section",{...n,className:s.root,"data-section-type":o,children:[t&&ps("div",{className:s.subTitleContainer,children:ps("span",{className:s.subtitle,children:t})}),ps("div",{className:s.suggestions,children:e})]})},je=ku;import Iu from"classnames";import Pu from"react";var si={root:"_root_19wxp_1"};import{jsx as Lu}from"react/jsx-runtime";var Au=Pu.forwardRef(({className:t,children:e},o)=>{let n=S("SectionList",si);return Lu("div",{ref:o,className:Iu(n.root,t),children:e})}),us=Au;import To from"classnames";import Mu,{createContext as Ou,useCallback as Nu,useContext as Ut}from"react";var ds={root:"_root_ipo0b_11",fadein:"_fadein_ipo0b_1",isClickable:"_isClickable_ipo0b_46",isSelected:"_isSelected_ipo0b_51",actions:"_actions_ipo0b_75",actionsIsFixed:"_actionsIsFixed_ipo0b_97",actionButton:"_actionButton_ipo0b_105",dropdownList:"_dropdownList_ipo0b_126",dropdownButton:"_dropdownButton_ipo0b_141",dropdownItem:"_dropdownItem_ipo0b_151",dropdownItemButton:"_dropdownItemButton_ipo0b_160",actionButtonIsPrimary:"_actionButtonIsPrimary_ipo0b_174",actionButtonIsDisabled:"_actionButtonIsDisabled_ipo0b_178",labels:"_labels_ipo0b_186",label:"_label_ipo0b_186"};import{jsx as ye,jsxs as Ku}from"react/jsx-runtime";var at=Ou(ds),Du=({fixed:t,children:e,...o})=>{let n=Ut(at);return ye("div",{...o,className:To(n.actions,{[n.actionsIsFixed]:t}),children:e})},Hu=({className:t,primary:e,disabled:o,label:n,children:s})=>{let r=Ut(at);return Ku("div",{className:To(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[n,ye("ul",{className:r.dropdownList,children:s})]})},Bu=({index:t,label:e,onClick:o})=>{let n=Ut(at);return ye("li",{className:n.dropdownItem,children:ye("button",{className:n.dropdownItemButton,type:"button","data-index":t,onClick:o,children:e})})},Fu=({className:t,primary:e,disabled:o,onClick:n,label:s})=>{let r=Ut(at);return ye("button",{type:"button",className:To(t,r.actionButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onClick:n??(i=>i.stopPropagation()),disabled:o,"aria-hidden":o,children:s})},gs=({labels:t})=>{let e=Ut(at);return ye("div",{className:e.labels,children:t.map(o=>ye("span",{className:e.label,children:o},o))})},lt=Mu.forwardRef(({className:t,selected:e,onClick:o,children:n,as:s="div",...r},i)=>{let a=S("Suggestion",ds),l=Nu(c=>{c.preventDefault(),o&&o(c)},[o]);return ye(s,{...r,ref:i,className:To(t,a.root,{[a.isSelected]:e,[a.isClickable]:!!o}),onClick:l,children:ye(at.Provider,{value:a,children:n})})});lt.Labels=gs;lt.Actions=Du;lt.ActionButton=Fu;lt.DropdownButton=Hu;lt.DropdownItem=Bu;var M=lt;import Uu from"classnames";var ri={root:"_root_fp74r_1",isWithDivider:"_isWithDivider_fp74r_9"};import{jsx as ju}from"react/jsx-runtime";var zu=({withDivider:t,children:e})=>{let o=S("SuggestionList",ri);return ju("div",{"data-testid":"suggestions-overlay-list",className:Uu(o.root,{[o.isWithDivider]:t}),children:e})},se=zu;import qu from"classnames";var ii={root:"_root_1wpmq_1",isCollapsed:"_isCollapsed_1wpmq_17"};import{jsx as ms}from"react/jsx-runtime";var Vu=({className:t,isCollapsed:e,title:o,onClick:n})=>{let s=S("ToggleButton",ii);return ms("button",{type:"button",className:qu(s.root,t,{[s.isCollapsed]:e}),onClick:n,title:o,children:ms("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:ms("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},ct=Vu;var ai=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,pt=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var li=/x-deepdesk-(([a-z0-9\-_])+-version)/,pe=(m=>(m.SEARCH="search",m.TEMPLATE="template",m.ELASTIC_SEARCH="search-autocomplete",m.GPT="gpt",m.TRIE="trie",m.TRIE_WITH_TYPOS="trie-with-typos",m.SEMANTIC="semantic",m.TEXT_RECOMMENDATION="text_recommendation",m.URL_RECOMMENDATION="url_recommendation",m.LINK_RECOMMENDATION="link_recommendation",m.PERSONAL_COLLECTION="personal-collection",m.PERSONAL_COLLECTION_SEARCH="personal-collection-search",m.SEARCH_OVERLAY="search-overlay",m.SEARCH_PREVIEW="search-preview",m.SEARCH_URL="search-url",m))(pe||{}),qe=(r=>(r.ENTER="enter",r.TAB="tab",r.ARROW="arrow",r.HOTKEY="hotkey",r.MOUSE="mouse",r))(qe||{});import{render as vo,unmountComponentAtNode as es}from"react-dom";import{Fragment as Tf}from"react";import{createSlice as Wu}from"@reduxjs/toolkit";import{useSelector as Gu}from"react-redux";var Eo=(o=>(o.NL_NL="nl-NL",o.EN_US="en-US",o))(Eo||{});var $u={locale:"en-US",deanonymize:!1,fallbackImage:!1,isEmbedded:!1,showAutoflows:!1,showCustomMessages:!1,showImages:!1,showPersonalCollectionLink:!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,adminUrl:void 0,productName:"Deepdesk"},ci=Wu({name:"settings",initialState:$u,reducers:{set(t,e){Object.entries(e.payload).forEach(o=>{let[n,s]=o;typeof s>"u"||(t[n]=s)})}}}),{set:zt}=ci.actions,fs=t=>e=>e.settings[t],b=t=>Gu(fs(t)),pi=ci.reducer;import{useState as um}from"react";import{useDispatch as dm,useSelector as lr}from"react-redux";import{createAction as Ve,createSlice as od}from"@reduxjs/toolkit";import{diffChars as nd}from"diff";import{useSelector as sd}from"react-redux";function ui(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function Ie(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)=>Ie(r,e[i],o-1)):ui(t)&&ui(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>Ie(t[i],e[i],o-1)):!1}function Xu(t){return Math.max(...t.map(e=>e.length))}function Qu(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 di(t,e){let n=[...t.map(({text:s})=>s.split(/\b(\w+)\b/))];for(let s=0;s<Xu(n);s++){let r=Qu(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 Zu=2;function hs(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let o=di(t,Zu);return o&&o.text!==e?o:t[0]}import{createAction as Ju,createAsyncThunk as ut,createSlice as Yu}from"@reduxjs/toolkit";var gi={current:null,isSupported:null},R=Ju("resetConversation"),ko=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.sessionId)||null},Ro=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},dt=t=>t.conversation.isSupported,ys=ut("conversation/isSupported",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.isConversationSupported(t.sessionId,t.options)}),Io=ut("conversation/create",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.createConversation(t)}),Po=ut("conversation/bySessionId",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.getConversationBySessionId(t.sessionId,t.options)}),Ao=ut("conversation/update",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Ro(e.getState());if(!n)throw new Error("No current conversation to update");return o.updateConversation(n,t)}),Ss=ut("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:l}=t;return o.updateConversation(n.id,{agentId:s,agentEmail:i,agentName:r,agentNickname:a,tags:l})})}),Lo=ut("conversation/postMessages",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Ro(e.getState());if(!n)throw new Error("No current conversation to update messages");return o.postMessages(n,t.map(s=>({...s})))}),ed=[Io.rejected,Po.rejected,Ao.rejected,Lo.rejected].map(t=>t==null?void 0:t.toString()),td=Yu({name:"conversation",initialState:gi,reducers:{},extraReducers:t=>{t.addCase(ys.fulfilled,(e,o)=>{e.isSupported=o.payload}).addCase(Io.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(Ss.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Ao.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Lo.fulfilled,(e,o)=>{e.current&&(e.current.messages=o.payload)}).addCase(R,()=>gi).addMatcher(e=>ed.includes(e.type),(e,o)=>{throw new Error(o.error.message)})}}),mi=td.reducer;var Pe={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 Oo(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 No=Ve("input/replaceText"),Do=Ve("input/keyDown"),We=Ve("input/sendMessage"),Ho=Ve("input/sendEditSuggestionMessage"),Bo=Ve("input/uiInputChange"),Fo=Ve("input/applyImageSuggestion"),z=Ve("input/sendEvent");function Mo(t){if(!t.stagedSuggestion)return;let{text:e,suggestion:{source:o,abVariant:n,abTestName:s,trainingJobs:r,sourceText:i,searchTerm:a,text:l},eventMetrics:{inputType:c},replace:p}=t.stagedSuggestion,u=o==="search"||o==="personal-collection-search",d=e.slice(t.userCommitted.text.substring(0,t.userCommitted.selection.start).length);(u||p==="selection")&&(d=e),t.stagedSuggestion.suggestion.source==="search-overlay"&&(d=l),t.userCommitted.text=t.text,t.userCommitted.selection=t.selection,t.metrics.textSuggestions.push({text:d,source:o,abVariant:n,abTestName:s,inputType:c,sourceText:i,trainingJobs:r||[],searchTerm:u?t.userCommitted.text:a}),t.stagedSuggestion=null,t.textSuggestions=[],t.selectedSuggestionIndex=-1}var fi=t=>od({name:t,initialState:Pe,reducers:{initialInput(e,o){let{text:n,selection:s,html:r}=o.payload;e.text=n,e.selection.start=(s==null?void 0:s.start)??n.length,e.selection.end=(s==null?void 0:s.end)??n.length,e.userCommitted.text=n,e.userCommitted.selection.start=(s==null?void 0:s.start)??n.length,e.userCommitted.selection.end=(s==null?void 0:s.end)??n.length,e.html=r||null},reset(e){Object.assign(e,{...Pe,selection:e.selection})},resetToCommitted(e){e.text=e.userCommitted.text,e.selection=e.userCommitted.selection,e.stagedSuggestion=null,e.tabCompletionSuggestion=hs(e.textSuggestions,e.userCommitted.text)},changeSelection(e,o){o.payload&&(Ie(e.selection,o.payload)||(e.selection=o.payload,e.userCommitted.selection=e.selection,e.stagedSuggestion&&Mo(e)))},platformInput(e,o){let{text:n,html:s,selection:r}=o.payload;r&&(e.selection.start=r.start,e.selection.end=r.end),e.text=n,e.html=s||null},userInput(e,o){var i,a,l,c;if(e.previousKeyDownEvent){let{key:p,shiftKey:u,ctrlKey:d,metaKey:g,altKey:f}=e.previousKeyDownEvent;switch(p){case"Enter":u&&(e.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:m}=e,{text:v}=o.payload,w=nd(m,v);m.length-v.length>1&&e.metrics.deletions.push(...w.filter(h=>h.removed).map(h=>h.value)),e.metrics.numCharsDeleted+=m.length-v.length;break}case"C":case"V":case"X":if(!d&&!g){e.metrics.numCharsTyped+=1;let m=((i=e.selection)==null?void 0:i.start)!==void 0&&((a=e.selection)==null?void 0:a.end)!==void 0?e.text.substring(e.selection.start,e.selection.end):null;m&&m.length>0&&(e.metrics.numCharsDeleted+=m.length,e.metrics.deletions.push(m))}break;case"Shift":break;default:if(!d&&!g&&!f){e.metrics.numCharsTyped+=1;let m=((l=e.selection)==null?void 0:l.start)!==void 0&&((c=e.selection)==null?void 0:c.end)!==void 0?e.text.substring(e.selection.start,e.selection.end):null;m&&m.length>0&&(e.metrics.numCharsDeleted+=m.length,e.metrics.deletions.push(m))}}}!e.metrics.agentStartedTypingTimestamp&&o.payload.text!==e.text&&(e.metrics.agentStartedTypingTimestamp=Date.now()),o.payload.text===""&&(e.metrics=Pe.metrics,e.textSuggestions=[],e.stagedSuggestion=null),e.text!==o.payload.text&&Mo(e);let{text:n,html:s,selection:r}=o.payload;r&&(e.selection.start=r.start,e.selection.end=r.end,e.userCommitted.selection.start=r.start,e.userCommitted.selection.end=r.end),e.text=n,e.html=s||null,e.userCommitted.text=n,e.previousKeyDownEvent=null},stageSuggestion(e,o){let{text:n}=o.payload;switch(e.stagedSuggestion=o.payload,e.tabCompletionSuggestion=void 0,o.payload.replace){case"selection":e.text=`${e.text.slice(0,e.selection.start)}${n}${e.text.slice(e.selection.end)}`,e.selection.end=e.selection.start+n.length,e.selection.start+=n.length;break;case"until-selection-end":e.text=`${n}${e.text.slice(e.selection.end)}`,e.selection.start=n.length,e.selection.end=n.length;break;default:throw new Error(`Unknown replace ${o.payload.replace}`)}o.payload.eventMetrics.inputType==="tab"&&Mo(e)},commitSuggestion(e){Mo(e)},offeredTextSuggestion(e,o){let{text:n,suggestion:{source:s}}=o.payload;e.metrics.offeredTextSuggestions.find(i=>i.text===n)||e.metrics.offeredTextSuggestions.push({text:n,source:s})},registerCut(e,o){let{metrics:n}=e,s=o.payload;e.metrics={...e.metrics,numCharsCut:n.numCharsCut+s.length,cuts:[...n.cuts,s]}},registerPaste(e,o){let{metrics:n}=e,{text:s,selectionText:r}=o.payload,i=n.numCharsDeleted+(r&&r.length?r.length:0),a=r&&r.length?[...n.deletions,r]:n.deletions;e.metrics={...e.metrics,numCharsDeleted:i,deletions:a,numCharsPasted:n.numCharsPasted+s.length,numPaste:n.numPaste+1,pastes:[...n.pastes,s]}},registerKeyDown(e,o){e.previousKeyDownEvent=o.payload},nextTextSuggestionIndex(e){let o=e.textSuggestions.length;e.selectedSuggestionIndex=e.selectedSuggestionIndex<o-1?e.selectedSuggestionIndex+1:e.selectedSuggestionIndex},previousTextSuggestionIndex(e){e.selectedSuggestionIndex=e.selectedSuggestionIndex>=0?e.selectedSuggestionIndex-1:e.selectedSuggestionIndex},setTextSuggestions(e,o){if(e.selectedSuggestionIndex=-1,e.textSuggestions=o.payload,o.payload.length===0)return;let n=e.userCommitted.text.substring(0,e.userCommitted.selection.end),s=hs(o.payload,n);e.tabCompletionSuggestion=s!=null&&s.text.includes(n)?s:void 0},setSelectedTextSuggestionIndex(e,o){e.selectedSuggestionIndex=o.payload},mergeMetrics(e,{payload:o}){let n=o.agentStartedTypingTimestamp!=null?o.agentStartedTypingTimestamp:Date.now(),s=(Date.now()-n)/1e3;e.metrics.externalTimeTotalSeconds=s,e.metrics.numCharsTyped+=o.numCharsTyped,e.metrics.numCharsPasted+=o.numCharsPasted,e.metrics.numCharsCut+=o.numCharsCut,e.metrics.numCharsDeleted+=o.numCharsDeleted,e.metrics.numPaste+=o.numPaste,e.metrics.pastes.push(...o.pastes),e.metrics.deletions.push(...o.deletions)}},extraReducers:e=>{e.addCase(R,o=>{o.tabCompletionSuggestion=Pe.tabCompletionSuggestion,o.previousKeyDownEvent=Pe.previousKeyDownEvent,o.textSuggestions=Pe.textSuggestions,o.selectedSuggestionIndex=Pe.selectedSuggestionIndex,o.metrics=Pe.metrics})}}),vs=fi("input"),gt=t=>t.input.userCommitted.text.substring(0,t.input.userCommitted.selection.end),rd=t=>t.input.selection,hi=()=>sd(rd),{userInput:yi,changeSelection:_s,initialInput:Si,mergeMetrics:vi,nextTextSuggestionIndex:_i,offeredTextSuggestion:xi,previousTextSuggestionIndex:bi,registerCut:Ci,registerKeyDown:wi,registerPaste:Ti,reset:Ei,resetToCommitted:jt,platformInput:ki,setSelectedTextSuggestionIndex:Ae,setTextSuggestions:ue,stageSuggestion:re,commitSuggestion:Le}=vs.actions,$=fi("overlay");import{useEffect as Ii,useRef as Pi}from"react";var Ri={root:"_root_1qp5s_1",content:"_content_1qp5s_23"};import{jsx as Ai}from"react/jsx-runtime";var id=({isOpen:t,autoFocus:e,children:o,onClose:n,onBack:s,overlayAriaLabel:r,contentAriaLabel:i})=>{let a=Pi(null),l=Pi(null),c=S("Dialog",Ri);return Ii(()=>{var d,g;let p=f=>{f.key==="Escape"&&(f.preventDefault(),f.stopPropagation(),s())},u=f=>{let m=window.getSelection();m!=null&&m.toString()||f.target===a.current&&t&&n()};return(d=a.current)==null||d.addEventListener("click",u),(g=a.current)==null||g.addEventListener("keyup",p),()=>{var f,m;(f=a.current)==null||f.removeEventListener("click",u),(m=a.current)==null||m.removeEventListener("keyup",p)}},[a,l,s,n]),Ii(()=>{var p,u;!a.current||!t||!e||(u=(p=a.current)==null?void 0:p.querySelector("input, textarea"))==null||u.focus()},[t,e,a]),t?Ai("div",{role:"dialog","data-testid":"dialog",className:c.root,"aria-label":r,ref:a,children:Ai("div",{ref:l,"data-testid":"dialog-content",className:c.content,"aria-label":i,children:o})}):null},mt=id;import{useEffect as Ka}from"react";import{useDispatch as Wg,useSelector as Gg}from"react-redux";var xs={};q(xs,{enUS:()=>ad,nlNL:()=>ld});var ad={dismiss:[{type:0,value:"Close"}],add:[{type:0,value:"Add to message"}],next:[{type:0,value:"Next"}],previous:[{type:0,value:"Previous"}],warning:[{type:0,value:"Are you sure you want to discard the message?"}]},ld={dismiss:[{type:0,value:"Sluiten"}],add:[{type:0,value:"Toevoegen"}],next:[{type:0,value:"Volgende"}],previous:[{type:0,value:"Vorige"}],warning:[{type:0,value:"Weet je zeker dat je de wijzigingen wilt weggooien?"}]};var Li={root:"_root_l80t9_1",content:"_content_l80t9_3",title:"_title_l80t9_7",actions:"_actions_l80t9_15",pagination:"_pagination_l80t9_20",primaryButton:"_primaryButton_l80t9_51",primaryButtons:"_primaryButtons_l80t9_55"};import{createContext as _d,useContext as xd}from"react";var bs=function(t,e){return bs=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])},bs(t,e)};function qt(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");bs(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 Mi(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 Ko(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 Uo;(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"})(Uo||(Uo={}));var zo=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 jo;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(jo||(jo={}));function Cs(t){return t.type===ie.literal}function Oi(t){return t.type===ie.argument}function qo(t){return t.type===ie.number}function Vo(t){return t.type===ie.date}function Wo(t){return t.type===ie.time}function Go(t){return t.type===ie.select}function $o(t){return t.type===ie.plural}function Ni(t){return t.type===ie.pound}function Xo(t){return t.type===ie.tag}function Qo(t){return!!(t&&typeof t=="object"&&t.type===jo.number)}function Vt(t){return!!(t&&typeof t=="object"&&t.type===jo.dateTime)}function ws(t){t.forEach(function(e){if(delete e.location,Go(e)||$o(e))for(var o in e.options)delete e.options[o].location,ws(e.options[o].value);else qo(e)&&Qo(e.style)||(Vo(e)||Wo(e))&&Vt(e.style)?delete e.style.location:Xo(e)&&ws(e.children)})}function Di(t,e){e===void 0&&(e={}),e=ee({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var o=new zo(t,e).parse();if(o.err){var n=SyntaxError(Uo[o.err.kind]);throw n.location=o.err.location,n.originalMessage=o.err.message,n}return e!=null&&e.captureLocation||ws(o.val),o.val}function Zo(t,e){var o=e&&e.cache?e.cache:md,n=e&&e.serializer?e.serializer:gd,s=e&&e.strategy?e.strategy:pd;return s(t,{cache:o,serializer:n})}function cd(t){return t==null||typeof t=="number"||typeof t=="boolean"}function Hi(t,e,o,n){var s=cd(n)?n:o(n),r=e.get(s);return typeof r>"u"&&(r=t.call(this,n),e.set(s,r)),r}function Bi(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 Ts(t,e,o,n,s){return o.bind(e,t,n,s)}function pd(t,e){var o=t.length===1?Hi:Bi;return Ts(t,this,o,e.cache.create(),e.serializer)}function ud(t,e){return Ts(t,this,Bi,e.cache.create(),e.serializer)}function dd(t,e){return Ts(t,this,Hi,e.cache.create(),e.serializer)}var gd=function(){return JSON.stringify(arguments)};function Es(){this.cache=Object.create(null)}Es.prototype.get=function(t){return this.cache[t]};Es.prototype.set=function(t,e){this.cache[t]=e};var md={create:function(){return new Es}},Jo={variadic:ud,monadic:dd};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){qt(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 ks=function(t){qt(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 Fi=function(t){qt(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 Ki=function(t){qt(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 fd(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 hd(t){return typeof t=="function"}function Gt(t,e,o,n,s,r,i){if(t.length===1&&Cs(t[0]))return[{type:j.literal,value:t[0].value}];for(var a=[],l=0,c=t;l<c.length;l++){var p=c[l];if(Cs(p)){a.push({type:j.literal,value:p.value});continue}if(Ni(p)){typeof r=="number"&&a.push({type:j.literal,value:o.getNumberFormat(e).format(r)});continue}var u=p.value;if(!(s&&u in s))throw new Ki(u,i);var d=s[u];if(Oi(p)){(!d||typeof d=="string"||typeof d=="number")&&(d=typeof d=="string"||typeof d=="number"?String(d):""),a.push({type:typeof d=="string"?j.literal:j.object,value:d});continue}if(Vo(p)){var g=typeof p.style=="string"?n.date[p.style]:Vt(p.style)?p.style.parsedOptions:void 0;a.push({type:j.literal,value:o.getDateTimeFormat(e,g).format(d)});continue}if(Wo(p)){var g=typeof p.style=="string"?n.time[p.style]:Vt(p.style)?p.style.parsedOptions:n.time.medium;a.push({type:j.literal,value:o.getDateTimeFormat(e,g).format(d)});continue}if(qo(p)){var g=typeof p.style=="string"?n.number[p.style]:Qo(p.style)?p.style.parsedOptions:void 0;g&&g.scale&&(d=d*(g.scale||1)),a.push({type:j.literal,value:o.getNumberFormat(e,g).format(d)});continue}if(Xo(p)){var f=p.children,m=p.value,v=s[m];if(!hd(v))throw new Fi(m,"function",i);var w=Gt(f,e,o,n,s,r),h=v(w.map(function(C){return C.value}));Array.isArray(h)||(h=[h]),a.push.apply(a,h.map(function(C){return{type:typeof C=="string"?j.literal:j.object,value:C}}))}if(Go(p)){var y=p.options[d]||p.options.other;if(!y)throw new ks(p.value,d,Object.keys(p.options),i);a.push.apply(a,Gt(y.value,e,o,n,s));continue}if($o(p)){var y=p.options["=".concat(d)];if(!y){if(!Intl.PluralRules)throw new Wt(`Intl.PluralRules is not available in this environment.
2
2
  Try polyfilling it using "@formatjs/intl-pluralrules"
3
- `,Ge.MISSING_INTL_API,i);var x=o.getPluralRules(e,{type:p.pluralType}).select(d-(p.offset||0));y=p.options[x]||p.options.other}if(!y)throw new Es(p.value,d,Object.keys(p.options),i);a.push.apply(a,Gt(y.value,e,o,n,s,d-(p.offset||0)));continue}}return fd(a)}function yd(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 Sd(t,e){return e?Object.keys(t).reduce(function(o,n){return o[n]=yd(t[n],e[n]),o},ee({},t)):t}function ks(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,o){t[e]=o}}}}}function vd(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:Zo(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.NumberFormat).bind.apply(e,Ko([void 0],o,!1)))},{cache:ks(t.number),strategy:Jo.variadic}),getDateTimeFormat:Zo(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.DateTimeFormat).bind.apply(e,Ko([void 0],o,!1)))},{cache:ks(t.dateTime),strategy:Jo.variadic}),getPluralRules:Zo(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.PluralRules).bind.apply(e,Ko([void 0],o,!1)))},{cache:ks(t.pluralRules),strategy:Jo.variadic})}}var Ui=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(c){var p=r.formatToParts(c);if(p.length===1)return p[0].value;var u=p.reduce(function(d,g){return!d.length||g.type!==j.literal||typeof d[d.length-1]!="string"?d.push(g.value):d[d.length-1]+=g.value,d},[]);return u.length<=1?u[0]||"":u},this.formatToParts=function(c){return Gt(r.ast,r.locales,r.formatters,r.formats,c,void 0,r.message)},this.resolvedOptions=function(){var c;return{locale:((c=r.resolvedLocale)===null||c===void 0?void 0:c.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,l=Mi(i,["formatters"]);this.ast=t.__parse(e,ee(ee({},l),{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=Sd(t.formats,n),this.formatters=s&&s.formatters||vd(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=Di,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 bd(t,e){return e.split(".").reduce((o,n)=>o?o[n]:void 0,t)}var Cd="dummy",Rs=_d(null);function T(t){let e=xd(Rs);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=bd(o,n);return r?new Ui(r).format(s):(e!==Cd&&console.warn(`${n} does not exist in messages of ${e}`),`[${n}]`)}}import{jsx as zi,jsxs as wd}from"react/jsx-runtime";var Yo=()=>wd("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[zi("title",{id:"angleLeftTitle",children:"AngleLeft"}),zi("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 ji,jsxs as Td}from"react/jsx-runtime";var qi=()=>Td("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleRightTitle",children:[ji("title",{id:"angleRightTitle",children:"AngleRight"}),ji("path",{d:"M64 448c-8.188 0-16.38-3.125-22.62-9.375c-12.5-12.5-12.5-32.75 0-45.25L178.8 256L41.38 118.6c-12.5-12.5-12.5-32.75 0-45.25s32.75-12.5 45.25 0l160 160c12.5 12.5 12.5 32.75 0 45.25l-160 160C80.38 444.9 72.19 448 64 448z"})]});import{useEffect as Xt,useRef as Fs,useState as Xd}from"react";import{useDispatch as Qd}from"react-redux";import{Interweave as ca}from"interweave";import pa from"classnames";var Is={root:"_root_kxnai_1",agentText:"_agentText_kxnai_3",textInput:"_textInput_kxnai_8",textInputWrapper:"_textInputWrapper_kxnai_27",alert:"_alert_kxnai_31",alertText:"_alertText_kxnai_50",warning:"_warning_kxnai_60",success:"_success_kxnai_69"};import{Matcher as Id}from"interweave";import Pd from"classnames";import{useEffect as Ed,useRef as kd,useState as Rd}from"react";function Vi(t,e){let o;return[(...n)=>{window.cancelAnimationFrame(o);let s=e?e(...n):n;o=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(o)]}function en(t){let e=kd(null),[o,n]=Rd(!1);return Ed(()=>{let s=!1,r=parseFloat(window.getComputedStyle(document.body).zoom??"1"),[i,a]=Vi((p,u)=>{let d=e.current;if(!d)return;let g=p/r,f=u/r,m=d.getBoundingClientRect(),v=g>m.x&&g<m.x+m.width&&f>m.y&&f<m.y+m.height;v&&!s?(s=!0,n(!0)):!v&&s&&(s=!1,n(!1))},({clientX:p,clientY:u})=>[p,u]),[l,c]=Vi(()=>{s=!1,n(!1)});return t.addEventListener("mousemove",i),t.addEventListener("mouseleave",l),()=>{a(),c(),t.removeEventListener("mousemove",i),t.removeEventListener("mouseleave",l)}},[e]),[e,o]}var Se={root:"_root_81non_1",container:"_container_81non_3",agentText:"_agentText_81non_5",tabText:"_tabText_81non_6",hint:"_hint_81non_6",matchSelection:"_matchSelection_81non_10",focus:"_focus_81non_16",resetIndent:"_resetIndent_81non_20",matchKeyword:"_matchKeyword_81non_24",matchPlaceholder:"_matchPlaceholder_81non_25",hover:"_hover_81non_31",hintText:"_hintText_81non_64",popover:"_popover_81non_72",popoverRoot:"_popoverRoot_81non_77",popoverContentContainer:"_popoverContentContainer_81non_81",popoverContent:"_popoverContent_81non_81",selectionOptions:"_selectionOptions_81non_107",selectionOptionsIsHidden:"_selectionOptionsIsHidden_81non_112",selectionOptionsButton:"_selectionOptionsButton_81non_116",caret:"_caret_81non_132",popoverSuggestionsRoot:"_popoverSuggestionsRoot_81non_136",suggestionsOverlayInputStyles:"_suggestionsOverlayInputStyles_81non_141"};import{jsx as Wi}from"react/jsx-runtime";var Ad=({inputElement:t,children:e})=>{let o=S("TabCompletion",Se),[n,s]=en(t);return Wi("mark",{ref:n,className:Pd(o.matchPlaceholder,{[o.hover]:s}),children:e})},ft=class extends Id{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 Wi(Ad,{inputElement:o.inputElement,children:e},`placeholder_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import{useEffect as Ld,useRef as Md,useState as Od}from"react";function tn(t){return t.contentEditable==="true"}function Nd(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 Gi(t){let{selectionStart:e,selectionEnd:o}=tn(t)?Nd(t):t;return[e,o]}function on(t){let[,e]=Od(),o=Md(null);return o.current=Gi(t),Ld(()=>{let n=()=>{let[s,r]=o.current??[],i=Gi(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 nn(t,e){if(!e)return;let o=t,{value:n}=o,[s,r]=e,i=n.match(pt);if(!i||i.length===0)return;let a=0;i.find(l=>{let c=n.indexOf(l,a);return s>c&&r<c+l.length?(o.selectionStart=c,o.selectionEnd=c+l.length,!0):(a=c+l.length,!1)})}import{useEffect as Dd}from"react";function ht(t){Dd(()=>{let e=o=>{o.isWithinRoot||t(o)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function $e(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}var $i,de=new Map,Hd=["bottom","height","left","right","top","width"],Bd=(t={},e={})=>Hd.some(o=>t[o]!==e[o]);function Xi(t){var o,n;let e=((n=(o=t.ownerDocument)==null?void 0:o.defaultView)==null?void 0:n.frameElement)??null;return e?[e,...Xi(e)]:[]}function Qi(t,e){return!t||!e?null:{...t,top:t.top+e.top,left:t.left+e.left}}var Ps=!1,Zi=()=>{Ps=!0;let t=[];de.forEach((e,o)=>{if(!o.isConnected){e.rect=null,t.push(e),de.delete(o);return}let n=o.getBoundingClientRect();Bd(n,e.rect)&&(e.rect=n,t.push(e))}),t.forEach(e=>{let o=e.parentRects?e.parentRects.reduce(Qi,e.rect):e.rect;e.callbacks.forEach(n=>n(o))}),de.size!==0&&($i=window.requestAnimationFrame(Zi))};function As(t,e){let o=Xi(t),n=[],s=o.map((r,i)=>As(r,a=>{n[i]=a;let l=de.get(t);if(!l)return;let c=n.reduce(Qi,l.rect);l.callbacks.forEach(p=>p(c))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),de.has(t)){let i=de.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else de.set(t,{rect:void 0,callbacks:[e],parentRects:n});r&&!Ps&&Zi()},unobserve(){s.forEach(i=>i.unobserve());let r=de.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||de.delete(t),de.size||(cancelAnimationFrame($i),Ps=!1)}}}}var Ji,ge=new Map,Yi=()=>{ge.forEach((t,e)=>{if(!e.isConnected){ge.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)))}),ge.size!==0&&(Ji=window.requestAnimationFrame(Yi))};function ea(t,e){return{observe(){let o=ge.size===0;ge.has(t)?ge.get(t).callbacks.push(e):ge.set(t,{visible:void 0,callbacks:[e]}),o&&Yi()},unobserve(){let o=ge.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||ge.delete(t),ge.size||cancelAnimationFrame(Ji)}}}}var Ls=["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 Ms(t,e,o){return o.forEach(n=>{e.style[n]=t[n]})}function yt(t){return parseFloat(t)}function sn(t){return Math.round(t*1e6)}function ta(t){return t/1e6}function Os(t,e,o){if(t.boxSizing==="content-box")return;let{clientWidth:n}=e,s=yt(t.width),r=yt(t.borderLeftWidth),i=yt(t.borderRightWidth),a=yt(t.paddingRight),l=ta(sn(s)-sn(r)-sn(i)),c=ta(sn(n));if(l-c>2){let p=l-c;o.style.paddingRight=`${a+p}px`}}function St(t,e={}){var l;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",$e(o);let n=window.getComputedStyle(t),s=!0,r=()=>{o.scrollTop=t.scrollTop};Ms(n,o,Ls),Os(n,t,o),e.mirrorOverflow&&(o.style.overflow="hidden",t.addEventListener("scroll",r));let i=ea(t,()=>{Ms(n,o,Ls),Os(n,t,o),r(),setTimeout(r,0)}),a=As(t,c=>{if(c===null){e.onRemove&&e.onRemove(),o.remove();return}if(c.height===0&&c.width===0){if(s===!0)return;e.onHide&&e.onHide(),o.style.display="none",s=!0;return}if(Ms(n,o,Ls),Os(n,t,o),r(),o.style.top=`${c.top}px`,o.style.left=`${c.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let p=e.closestScrollElement.getBoundingClientRect(),u=window.getComputedStyle(e.closestScrollElement),d=yt(u.borderTopWidth),g=yt(u.borderBottomWidth),f=p.top+d-c.top,m=c.top+c.height+-(p.top+p.height-g);o.style.clipPath=`inset(${f}px 0px ${m}px 0px)`}s&&(o.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(o):(l=t.parentElement)==null||l.appendChild(o),a.observe(),i.observe(),[o,()=>{t.removeEventListener("scroll",r),a.unobserve(),i.unobserve()}]}var Ns={};q(Ns,{enUS:()=>Fd,nlNL:()=>Kd});var Fd={placeholders:[{type:6,value:"placeholderSize",options:{"=0":{value:[{type:0,value:"No placeholders found"}]},one:{value:[{type:0,value:"There is one placeholder in your message"}]},other:{value:[{type:0,value:"There are "},{type:7},{type:0,value:" placeholders in your message"}]}},offset:0,pluralType:"cardinal"}]},Kd={placeholders:[{type:6,value:"placeholderSize",options:{"=0":{value:[{type:0,value:"Alle placeholders zijn uit je bericht"}]},one:{value:[{type:0,value:"Er is 1 placeholder in jouw bericht"}]},other:{value:[{type:0,value:"Er zijn "},{type:7},{type:0,value:" placeholders in jouw bericht"}]}},offset:0,pluralType:"cardinal"}]};import{jsx as oa,jsxs as Ud}from"react/jsx-runtime";var na=()=>Ud("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 512 512","aria-labelledby":"circleCheckTitle",children:[oa("title",{id:"circleCheckTitle",children:"Check"}),oa("path",{d:"M243.8 339.8C232.9 350.7 215.1 350.7 204.2 339.8L140.2 275.8C129.3 264.9 129.3 247.1 140.2 236.2C151.1 225.3 168.9 225.3 179.8 236.2L224 280.4L332.2 172.2C343.1 161.3 360.9 161.3 371.8 172.2C382.7 183.1 382.7 200.9 371.8 211.8L243.8 339.8zM512 256C512 397.4 397.4 512 256 512C114.6 512 0 397.4 0 256C0 114.6 114.6 0 256 0C397.4 0 512 114.6 512 256zM256 48C141.1 48 48 141.1 48 256C48 370.9 141.1 464 256 464C370.9 464 464 370.9 464 256C464 141.1 370.9 48 256 48z"})]});import{jsx as sa}from"react/jsx-runtime";var ra=()=>sa("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",fill:"currentColor",children:sa("path",{d:"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224c0-17.7-14.3-32-32-32s-32 14.3-32 32s14.3 32 32 32s32-14.3 32-32z"})});function zd(t){let e=t.scrollHeight>t.clientHeight,n=window.getComputedStyle(t).overflowY.indexOf("hidden")!==-1;return e&&!n}function rn(t){return t?t instanceof ShadowRoot?rn(t.host):t===t.ownerDocument.body?t.ownerDocument:zd(t)?t:rn(t.parentNode):document.body}var ia=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(ia||{}),Me=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();Ie(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(ia).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(){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 e=new MutationObserver(()=>{this.element.isConnected||(this.emit("unmounted"),this.dispose())});e.observe(document.body,{subtree:!0,childList:!0}),this.disposeHandlers.push(()=>{e.disconnect()});let o=rn(this.element);if(o){let n=()=>{this.currentCaret!==null&&(this.currentCaret=null,this.emit("caret",null))};o.addEventListener("scroll",n),this.disposeHandlers.push(()=>{o.removeEventListener("scroll",n)})}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}};var Oe=class extends Me{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())}};var jd=/[.*+?^${}()|[\]\\]/g,qd=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function Vd(t){return t.replace(jd,"\\$&")}function Wd(t,e){let o=t.split("").findIndex((n,s)=>n!==e[s]);return o>-1?o:Math.min(t.length,e.length)}function Gd(t){return t.search(qd)}function aa(t,e=[]){let o=t;return e.forEach(n=>{if(!n)return;let s=new RegExp(`\\b(${Vd(n)})\\b`,"gi");o=o.replace(s,"<strong>$1</strong>")}),o}function la(t){return t.replace(pt,'<mark data-type="placeholder">$1</mark>')}function $t(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function $d(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 Ds(t,e,o={}){if(e){let n=Wd(e.toLowerCase(),t.toLowerCase()),s=$t(t.substring(n,t.length));if(o.stripAgentPart){let l=t.substring(0,n),c=Gd(l);return`<span style="opacity: 0.5">${l.substring(c+1)}</span>${s}`}let i=e.split(ai).length>3||e.length>30?$d(e.trim(),n):0;return`${`${i>0?"\u2026":""}${$t(t.substring(i,n))}`}<strong>${s}</strong>`}return t}function Hs(t){return/<\/?[a-z][\s\S]*>/i.test(t)}function an(t){if(Hs(t)){let o=/<body[^>]*>([\s\S]*)<\/body>/gi.exec(t);return o?o[1]:""}return t}import{jsx as ae,jsxs as Bs}from"react/jsx-runtime";var Zd=({value:t,onUse:e,...o})=>{var u;let n=T(Ns),s=Qd(),r=Hs(t),i=S("EditSuggestionTextInput",Is),[a,l]=Xd(null),c=Fs(null),p=((u=t.match(pt))==null?void 0:u.length)||0;return Xt(()=>{let d;return c.current&&(l(c.current),d=new Oe(c.current),d.on("change",({plainText:g})=>{s($.actions.userInput({text:g,selection:d.getSelection()}))}),d.on("keydown",g=>{s($.actions.registerKeyDown(Oo(g))),g.code==="Enter"&&g.shiftKey&&e(d.getText())}),d.on("paste",({pastedText:g,selectionText:f})=>{s($.actions.registerPaste({text:g,selectionText:f}))}),d.on("cut",({selectionText:g})=>{s($.actions.registerCut(g))})),()=>{s($.actions.reset()),d.dispose(),d.deactivate()}},[c]),Xt(()=>{t&&c.current&&(c.current.value=t)},[t,c]),Xt(()=>{c.current&&setTimeout(()=>{if(!c.current)return;let d=c.current.value.length;c.current.setSelectionRange(d,d),c.current.focus()},0)},[c]),r?ae("div",{className:i.textInputWrapper,children:ae(ca,{className:i.textInput,tagName:"div",content:t})}):Bs("div",{className:i.textInputWrapper,children:[ae("textarea",{...o,ref:c,"data-testid":"edit-suggestion-dialog-textarea",className:i.textInput,defaultValue:t,onChange:()=>{}}),a&&ae(Jd,{inputElement:c.current,value:t}),Bs("div",{className:pa(i.alert,p===0?i.success:i.warning),children:[ae("div",{className:i.alertText,children:n("placeholders",{placeholderSize:p})}),p===0?ae(na,{}):ae(ra,{})]})]})},Jd=({inputElement:t,value:e})=>{let o=S("EditSuggestionTextInput",Is),n=Fs(null),s=on(t);return Xt(()=>{nn(t,s)},[s,t]),ae(Yd,{inputElement:t,children:Bs("div",{ref:n,className:pa(o.root,o.agentText),children:[ae(ca,{tagName:"span",disableLineBreaks:!0,content:e,matchers:[new ft("placeholders")],inputElement:t,boundaryRef:n}),ae("br",{})]})})},Yd=({inputElement:t,children:e})=>{let o=Fs(null);return Xt(()=>{if(!o.current)return()=>{};let[n,s]=St(t,{overlayContainer:o.current,mirrorOverflow:!0});return n.setAttribute("translate","no"),()=>{s()}},[o.current]),ae("div",{ref:o,children:e})},ua=Zd;import{useEffect as zg,useState as jg,useRef as qg}from"react";import{useState as og}from"react";import Ks from"classnames";var X={root:"_root_pc5uy_1",list:"_list_pc5uy_2",listWrapper:"_listWrapper_pc5uy_6",listHorizontal:"_listHorizontal_pc5uy_10",page:"_page_pc5uy_19",search:"_search_pc5uy_25",pageNav:"_pageNav_pc5uy_33",pageTitle:"_pageTitle_pc5uy_41",pageBackButton:"_pageBackButton_pc5uy_48",listHeading:"_listHeading_pc5uy_62",listItem:"_listItem_pc5uy_70",listItemContent:"_listItemContent_pc5uy_79",listItemText:"_listItemText_pc5uy_97",listItemDescription:"_listItemDescription_pc5uy_105",listItemActions:"_listItemActions_pc5uy_112",truncate:"_truncate_pc5uy_123",lineClamp:"_lineClamp_pc5uy_129",listItemTitle:"_listItemTitle_pc5uy_136",listItemAction:"_listItemAction_pc5uy_112",listItemPrimaryAction:"_listItemPrimaryAction_pc5uy_157",listItemSelected:"_listItemSelected_pc5uy_162",sources:"_sources_pc5uy_166",sourcesTitle:"_sourcesTitle_pc5uy_173",source:"_source_pc5uy_166",icon:"_icon_pc5uy_188",searchIcon:"_searchIcon_pc5uy_205",searchInputWrapper:"_searchInputWrapper_pc5uy_210",searchInput:"_searchInput_pc5uy_210",select:"_select_pc5uy_231",selectType:"_selectType_pc5uy_248",selectWrapper:"_selectWrapper_pc5uy_252",image:"_image_pc5uy_282",imageSrc:"_imageSrc_pc5uy_289",imageSrcHidden:"_imageSrcHidden_pc5uy_300",imageSrcStatus:"_imageSrcStatus_pc5uy_304",imageTitle:"_imageTitle_pc5uy_314",actions:"_actions_pc5uy_319",actionsWrapper:"_actionsWrapper_pc5uy_323",actionsBar:"_actionsBar_pc5uy_329",actionButton:"_actionButton_pc5uy_338",actionShortcut:"_actionShortcut_pc5uy_356",actionShortcutFixKerning:"_actionShortcutFixKerning_pc5uy_363"};var Xe={};q(Xe,{enUS:()=>eg,nlNL:()=>tg});var eg={visitUrl:[{type:0,value:"Visit"}],back:[{type:0,value:"Back"}],loading:[{type:0,value:"Loading..."}],imageError:[{type:0,value:"Could not load image"}]},tg={visitUrl:[{type:0,value:"Bekijk"}],back:[{type:0,value:"Terug"}],loading:[{type:0,value:"Laden..."}],imageError:[{type:0,value:"Kan afbeelding niet laden"}]};import{jsx as Qt,jsxs as sg}from"react/jsx-runtime";var ng=({src:t,title:e})=>{let o=S("CommandPalette",X),[n,s]=og("loading"),r=T(Xe);return sg("div",{className:o.image,children:[Qt("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:Ks(o.imageSrc,{[o.imageSrcHidden]:["loading","error"].includes(n)})}),n==="loading"&&Qt("span",{className:Ks(o.imageSrc,o.imageSrcStatus),children:r("loading")}),n==="error"&&Qt("span",{className:Ks(o.imageSrc,o.imageSrcStatus),children:Qt(bo,{})}),e&&Qt("span",{className:o.imageTitle,children:e})]})},da=ng;import rg from"react";import ig from"classnames";import{jsx as ga,jsxs as ag}from"react/jsx-runtime";function Us({children:t,heading:e,orientation:o}){let n=S("CommandPalette",X);return rg.Children.count(t)===0?null:ag("div",{"data-testid":"commandpalette-list",className:n.list,children:[e&&ga("h4",{className:n.listHeading,children:e}),ga("div",{className:ig(n.listWrapper,o==="horizontal"&&n.listHorizontal),children:t})]})}import pn from"classnames";import zs from"react";import{jsx as lg}from"react/jsx-runtime";var ma=zs.createContext(void 0);function Ne(){let t=zs.useContext(ma);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var fa=({children:t,page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r})=>{let i=zs.useMemo(()=>({page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r}),[o,e,s]);return lg(ma.Provider,{value:i,children:t})};import cg,{useState as ha,useEffect as ya,useMemo as pg,useRef as Sa,useCallback as ug,useContext as dg}from"react";import gg from"classnames";var js={root:"_root_1oh4w_1",trigger:"_trigger_1oh4w_5",content:"_content_1oh4w_19",contentOpen:"_contentOpen_1oh4w_33",contentTop:"_contentTop_1oh4w_37",contentBottom:"_contentBottom_1oh4w_41",item:"_item_1oh4w_45"};import{jsx as ln,jsxs as yg}from"react/jsx-runtime";var mg=0,va=cg.createContext(null),fg=()=>{let t=dg(va);if(!t)throw new Error("Invalid DropdownContext");return t},_a=({trigger:t,children:e,position:o="bottom"})=>{let n=pg(()=>++mg,[]),s=Sa(null),r=Sa(null),i=S("Dropdown",js),[a,l]=ha(!1),[c,p]=ha(o),u=g=>{g.preventDefault(),g.stopPropagation(),l(!a)},d=ug(([g])=>{!g.isIntersecting&&a&&p(c==="top"?"bottom":"top")},[a]);return ya(()=>{let g=f=>{s.current&&!s.current.contains(f.target)&&l(!1)};return document.addEventListener("click",g),()=>{document.removeEventListener("click",g)}},[]),ya(()=>{if(!r.current&&!a)return()=>{};let g=new IntersectionObserver(d,{root:null,rootMargin:"0px",threshold:1});return r.current&&g.observe(r.current),()=>{r.current&&g.unobserve(r.current)}},[r,a]),ln(va.Provider,{value:{setIsOpen:l},children:yg("div",{ref:s,className:i.root,children:[ln("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}),ln("div",{"data-testid":"dropdown-content",ref:r,"aria-hidden":!a,"aria-labelledby":`dropdown-${n}`,className:gg(i.content,{[i.contentOpen]:a,[i.contentTop]:c==="top",[i.contentBottom]:c==="bottom"}),children:e})]})})};function hg({as:t,children:e,onClick:o,...n}){let s=t||"button",r=S("Dropdown",js),{setIsOpen:i}=fg(),a=l=>{i(!1),o(l),l.stopPropagation()};return ln(s,{type:"button",className:r.item,onClick:a,...n,children:e})}_a.Item=hg;var qs=_a;import{jsx as xa}from"react/jsx-runtime";var ba=t=>xa("svg",{xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512",...t,children:xa("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 Qe={};q(Qe,{enUS:()=>Sg,nlNL:()=>vg});var Sg={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"}]},vg={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 Vs}from"react/jsx-runtime";var _g="%0d%0a%0d%0a%0d%0a",xg=(t,e)=>{let o=[`Suggestie: ${encodeURIComponent(e)}`,"Beschrijf je feedback:"];return`mailto:${t.join(",")}?subject=Suggestie feedback&body=${o.join(_g)}`},bg=({suggestion:t,onFeedback:e})=>{let o=T(Qe),n=b("suggestionFeedbackEmailAddresses");return!n||n.length===0?null:Vs(qs,{trigger:Vs(ba,{"data-testid":"feedback-dropdown-trigger"}),children:Vs(qs.Item,{as:"a",href:xg(n,t),onClick:e,children:o("giveFeedback")})})},cn=bg;import{Interweave as Cg}from"interweave";import{jsx as De,jsxs as Ws}from"react/jsx-runtime";function Gs({closeOnSelect:t=!0,lineClamp:e,children:o,onClick:n,onFeedback:s,onSourceClick:r,index:i,description:a,sources:l,styles:c,...p}){let{selected:u,setSelected:d,onChangeOpen:g}=Ne(),f=S("CommandPalette",X);function m(v){n(v),t&&g(!1)}return Ws("div",{className:pn(f.listItem,u===i&&f.listItemSelected),children:[De("button",{onMouseEnter:()=>d(i),type:"button",className:pn("command-palette-list-item",f.listItemAction,f.listItemPrimaryAction),"aria-disabled":p.disabled??!1,onClick:m,...p,children:Ws("div",{className:f.listItemContent,children:[typeof o=="string"?De("p",{className:pn(f.listItemText,f.truncate,c==null?void 0:c.title),children:o}):o,a&&De(Cg,{tagName:"p",allowList:[],content:an(a),className:pn(f.listItemDescription,c==null?void 0:c.description,e?f.lineClamp:f.truncate)})]})}),s&&u===i&&De("div",{className:f.listItemActions,children:De(cn,{suggestion:String(o),onFeedback:s})}),l&&Ws("div",{className:f.sources,children:[De("span",{className:f.sourcesTitle,children:"Sources"}),l.map(v=>v.url?De("a",{className:f.source,href:v.url,target:"_blank",title:v.url,rel:"noopener noreferrer",onClick:()=>r&&r(v),children:v.name},v.url):De("span",{className:f.source,children:v.name},v.name))]})]})}import{jsx as Ca,jsxs as $s}from"react/jsx-runtime";function Xs({children:t,title:e,id:o,onDismiss:n}){let s=T(Xe),r=S("CommandPalette",X),{page:i}=Ne();return i!==o?null:$s("div",{className:r.page,id:`page_${o}`,tabIndex:-1,children:[n&&$s("div",{className:r.pageNav,children:[$s("button",{className:r.pageBackButton,type:"button",onClick:n,children:[Ca(Yo,{}),s("back")]}),e&&Ca("h3",{className:r.pageTitle,children:e})]}),t]})}import{Fragment as Og,useCallback as Ng,useEffect as Dg,useRef as Hg}from"react";var un=()=>/Mac/i.test(navigator.platform);import{createAsyncThunk as Rg,createSlice as Ig}from"@reduxjs/toolkit";var wg={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},E=wg;import{createAsyncThunk as Zs,createSlice as Eg}from"@reduxjs/toolkit";function Tg(t){return t.replace(/(_\w)/g,e=>e[1].toUpperCase())}function A(t){return Array.isArray(t)?t.map(A):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[Tg(o)]:A(t[o])}),{}):t}function Qs(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function B(t){return Array.isArray(t)?t.map(B):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[Qs(o)]:B(t[o])}),{}):t}var kg={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,fetchState:"idle"},Jt=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)||""}},Zt=Zs("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?A(n):(await o.client.patch("/apis/admin/session/me/",s,{version:null}),A(n))}),Js=Zs("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}),Ys=Zs("info/getAgentSettings",async(t,e)=>{let{deepdeskAPI:o}=e.extra;return(await o.client.get("/apis/admin/session/me/",{version:null})).ui_config}),wa=t=>t.info.agentInfo,Ta=Eg({name:"info",initialState:kg,reducers:{setVisitorInfo(t,e){t.visitorInfo={...t.visitorInfo,...e.payload}}},extraReducers:t=>{t.addCase(Zt.pending,(e,o)=>{e.fetchState="loading",e.agentInfo={...e.agentInfo,...o.meta.arg}}).addCase(Zt.rejected,e=>{e.fetchState="error"}).addCase(Zt.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(Js.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(Ys.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(R,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:Ea}=Ta.actions,ka=Ta.reducer;var dn={list:[],fetchState:"idle",isOpen:!1,page:"search"},Ra=t=>t.search.isOpen,Ia=t=>t.search.page,Pa=t=>t.search.list;function Aa(t,e=o=>o){return o=>o.search.list.filter(n=>n.type===t).map(e)}var Ze=Rg("search/getAll",async(t,e)=>{var i;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(i=n.conversation.current)==null?void 0:i.profileCode;if(!s)throw new Error("Profile should be provided in order to be able to search");let{results:r}=await o.search({profile:s,query:t.query,filters:{type:t.type},params:Jt(n),tags:t.tags});return r.map(a=>({...a,source:`search-${a.type.toLowerCase()}`,searchTerm:t.query}))}),La=Ig({name:"search",initialState:dn,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=dn.fetchState,t.list=dn.list}},extraReducers:t=>{t.addCase(Ze.pending,e=>{e.fetchState="loading"}).addCase(Ze.rejected,(e,o)=>{e.fetchState="error",E.error(o.error)}).addCase(Ze.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload}).addCase(R,()=>dn)}}),{resetSearch:gn,setIsOpen:te,setPage:V}=La.actions,Ma=La.reducer;var Pg=/(https?:\/\/[^\s]+)/,mn=t=>t.split(" ").find(e=>Pg.test(e));import Oa from"classnames";import{jsx as Lg,jsxs as Mg}from"react/jsx-runtime";var Ag=({onClick:t,shortKeys:e,children:o,...n})=>{let s=S("CommandPalette",X);return Mg("button",{type:"button",...n,onClick:t,className:Oa(s.actionButton,n.className),children:[o,e&&e.map(r=>Lg("span",{className:Oa(s.actionShortcut,r===8629&&s.actionShortcutFixKerning),children:typeof r=="number"?String.fromCharCode(r):r},r))]})},vt=Ag;import{jsx as fn,jsxs as er}from"react/jsx-runtime";var Bg=({children:t,primaryLabel:e,secondaryLabel:o,onPrimary:n,onSecondary:s,list:r})=>{let i=S("CommandPalette",X),a=T(Xe),{selected:l,setSelected:c}=Ne(),p=r[l],u=p&&typeof p.text=="string"&&mn(p.text),d=Hg(null);function g(y){if(!d.current)return;let x=d.current.querySelectorAll(".command-palette-list-item"),C=0,F=0;y==="down"?(x.forEach((Y,H)=>{H===l&&(C=H)}),F=C===x.length-1?0:C+1):y==="up"?(x.forEach((Y,H)=>{H===l&&(C=H)}),F=C?C-1:x.length-1):c(0);let D=x[F];D&&typeof F=="number"&&(c(F),D.scrollIntoView&&D.scrollIntoView({behavior:"smooth",block:F?"center":"end"}))}function f(){if(!d.current)return;let y=d.current.querySelectorAll(".command-palette-list-item"),x=0;y.forEach((F,D)=>{D===l&&(x=D)});let C=y[x];C&&C.click()}let m=()=>{u&&window.open(u,"_blank")},v=()=>{p&&n(p,l)},w=()=>{!p.type||["IMAGE","command"].includes(p.type)||s&&s(p,l)},h=Ng(y=>{if(y.key==="Enter"&&y.altKey&&u){m();return}if(y.key==="Enter"&&y.shiftKey){w();return}if(y.key==="ArrowDown"){y.preventDefault(),y.stopPropagation(),g("down");return}if(y.key==="ArrowUp"){y.preventDefault(),y.stopPropagation(),g("up");return}y.key==="Enter"&&l!==-1&&(y.preventDefault(),y.stopPropagation(),f())},[l]);return Dg(()=>(window.addEventListener("keyup",h),()=>{window.removeEventListener("keyup",h)}),[h]),er("div",{className:i.actions,children:[fn("div",{className:i.actionsWrapper,ref:d,children:t}),er("div",{className:i.actionsBar,children:[u&&fn(vt,{onClick:m,shortKeys:[un()?8997:"ALT",8629],children:a("visitUrl")}),p&&er(Og,{children:[s&&p.type&&!["command","image"].includes(p.type.toLowerCase())&&fn(vt,{onClick:w,shortKeys:[8679,8629],children:o}),fn(vt,{onClick:v,shortKeys:[8629],children:e})]})]})]})},Da=Bg;import{forwardRef as Kg}from"react";import{jsx as Ha,jsxs as Fg}from"react/jsx-runtime";var _t=()=>Fg("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[Ha("path",{d:"M0 0h24v24H0z",fill:"none"}),Ha("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 xt,jsxs as tr}from"react/jsx-runtime";function Ug({onChange:t,onChangeType:e,placeholder:o,typePlaceholder:n,types:s,value:r,selectedType:i},a){let l=S("CommandPalette",X);return tr("div",{className:l.search,children:[xt("div",{className:l.searchIcon,children:xt(_t,{})}),tr("div",{className:l.searchInputWrapper,children:[xt("input",{ref:a,spellCheck:!1,autoComplete:"off",onChange:c=>{t(c.currentTarget.value)},onFocus:c=>{c.currentTarget.select()},className:l.searchInput,placeholder:o,value:r,type:"text",id:"command-palette-search-input",autoFocus:!0}),s&&s.length>0&&xt("div",{className:l.selectWrapper,children:tr("select",{"data-testid":"command-palette-type-select",className:l.select,onChange:c=>e(c.target.value===n?void 0:c.target.value),value:i||n,children:[n&&xt("option",{children:n}),s.map(c=>xt("option",{value:c.value,children:c.label},c.value))]})})]})]})}var Ba=Kg(Ug);import{jsx as Fa,jsxs as Vg}from"react/jsx-runtime";function Je({placeholder:t="Start typing to search...",typePlaceholder:e="All types",defaultPage:o="search",page:n,onChangePage:s,onChangeSearch:r,onChangeType:i,onChangeOpen:a,selectedType:l,types:c,children:p,isOpen:u,search:d}){let[g,f]=jg(0),m=qg(null),v=()=>{s&&s(o),i(void 0),r(""),a(!1)},w=()=>{var h;if(n!==o&&s){s(o);return}if(l&&i){i(void 0),(h=m.current)==null||h.focus();return}if(d.length>0){r("");return}a(!1)};return zg(()=>{f(0)},[d,n]),Fa(mt,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:u,onBack:w,onClose:v,children:Vg(fa,{selected:g,setSelected:f,isOpen:u,onChangeOpen:a,page:n,children:[n===o&&Fa(Ba,{ref:m,onChange:r,onChangeType:i,placeholder:t,value:d,selectedType:l,types:c,typePlaceholder:e}),p]})})}Je.Page=Xs;Je.List=Us;Je.Image=da;Je.ListItem=Gs;Je.ActionsBar=Da;Je.Button=vt;var I=Je;import{jsx as ve,jsxs as Yt}from"react/jsx-runtime";var $g=({suggestion:t,onUse:e,onDismiss:o,onTouched:n,onNext:s,onPrevious:r})=>{let i=t.text||t.url||t.message,a=S("EditSuggestionForm",Li),l=Wg(),c=T(_s),p=Gg(f=>f.overlayInput.text);Ka(()=>{t&&(l($.actions.reset()),l($.actions.stageSuggestion({text:i,suggestion:t,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"})),l($.actions.commitSuggestion()))},[t]);let u=f=>{f.preventDefault(),d(p)},d=f=>{l(Ho(f)),e(f)},g=f=>m=>{p!==i?window.confirm(c("warning"))&&f(m):f(m)};return Ka(()=>{n&&n(p!==i)},[n,t,p]),Yt("div",{className:a.root,children:[Yt("div",{className:a.content,children:[t.title&&ve("h3",{className:a.title,children:t.title}),t.searchKeywords&&t.searchKeywords.length>0&&ve(ds,{labels:t.searchKeywords}),ve(ua,{onUse:d,value:an(p)})]}),Yt("form",{className:a.actions,onSubmit:u,children:[Yt("div",{children:[ve("button",{disabled:!r,className:a.pagination,type:"button",onClick:r&&g(r),children:ve(Yo,{})}),ve("button",{disabled:!s,className:a.pagination,type:"button",onClick:s&&g(s),children:ve(qi,{})})]}),Yt("div",{className:a.primaryButtons,children:[ve(I.Button,{onClick:g(o),shortKeys:["esc"],children:c("dismiss")}),ve(I.Button,{shortKeys:[8679,8629],type:"submit",children:c("add")})]})]})]})},hn=$g;import{createAction as Zg,createAsyncThunk as qa,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 Ua(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],l=r===o.length-2;n+=i.length;let c=n;if(l){let u=a.charAt(0),d=0;do c=u?e.indexOf(u,c+1):-1,d+=1;while(c!==-1&&a.indexOf(e.slice(c))!==0);if(c===-1&&d>2)return t}else c=a&&a!==""?e.indexOf(a,n):-1;let p=c===-1?e.slice(n):e.slice(n,c);s.push(p),n=c}return s.join("")}function za(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var Va={suggestions:[],fetchState:"idle",isInitialRequest:null},ja={default:Va},Wa=t=>e=>{var o;return((o=e.textSuggestions[t])==null?void 0:o.suggestions)||[]},Ga=t=>e=>{var o;return((o=e.textSuggestions[t])==null?void 0:o.suggestions)??[]},$a=t=>{let e=Object.keys(t.textSuggestions).map(o=>{var n;return(n=t.textSuggestions[o])==null?void 0:n.fetchState});return e.length===0?!0:e.every(o=>o!=="done")},bt=t=>t.textSuggestions,Xa=t=>{let e=t.toLowerCase();return o=>{let n=o.text.toLowerCase();return n.startsWith(e)&&n.length>e.length}},yn=Zg("textSuggestions/refresh"),_e=qa("textSuggestions/recommendations",async(t,e)=>{var c;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(c=n.conversation.current)==null?void 0:c.id,{textSuggestionsCount:r,inlineSuggestions:i}=n.settings,a=gt(n);if(!s)throw new Error("No current conversation to fetch text suggestions");let l=await o.getTextSuggestions(s,Jt(n),t);if(t==="default"){let p=i?l.filter(Xa(a)):l;e.dispatch(ue(p.slice(0,r)))}return l}),eo=qa("textSuggestions/autocompletions",async(t,e)=>{var c;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(c=n.conversation.current)==null?void 0:c.id,{textSuggestionsCount:r,deanonymize:i,inlineSuggestions:a}=n.settings;if(!s)throw new Error("No current conversation to fetch text suggestions");let l=await o.getAutocompleteSuggestions(s,{...Jt(n),input:t});if(!e.getState().input.text)throw new Error("Abort");return a&&(l=l.filter(Xa(t))),i&&(l=l.map(p=>({...p,text:p.source!=="trie-with-typos"?Ua(p.text,t):p.text}))),l=za(l,r),e.dispatch(ue(l)),l}),Qa=Jg({name:"textSuggestions",initialState:ja,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(_e.pending,(e,o)=>{let n=o.meta.arg,s=e[n]||Va;return{...e,[n]:{...s,fetchState:"loading",isInitialRequest:s.isInitialRequest===null}}}).addCase(_e.rejected,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="error")}).addCase(_e.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(R,()=>ja)}}),{setTextSuggestions:Za,setSuggestionState:Ja}=Qa.actions,Ya=Qa.reducer;import{createSlice as Yg}from"@reduxjs/toolkit";var el={contentType:null,suggestion:null},tl=t=>t.activeSuggestion.suggestion,ol=t=>t.activeSuggestion.contentType,nl=Yg({name:"activeSuggestion",initialState:el,reducers:{setActiveSuggestion(t,e){let{contentType:o,suggestion:n}=e.payload;t.contentType=o,t.suggestion=n},resetActiveSuggestion(t){t.contentType=null,t.suggestion=null}},extraReducers:t=>{t.addCase(R,()=>el)}}),{setActiveSuggestion:xe,resetActiveSuggestion:or}=nl.actions,sl=nl.reducer;var nr={};q(nr,{enUS:()=>em,nlNL:()=>tm});var em={warning:[{type:0,value:"Are you sure you want to discard the message?"}],editContentLabel:[{type:0,value:"Edit and view suggestion"}],overlayLabel:[{type:0,value:"Close dialog"}]},tm={warning:[{type:0,value:"Weet je zeker dat je de wijzigingen wilt weggooien?"}],editContentLabel:[{type:0,value:"Bewerk en bekijk suggestie"}],overlayLabel:[{type:0,value:"Sluit"}]};import{createSlice as om}from"@reduxjs/toolkit";var nm={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1};var Sn=({ui:t})=>t.overlayCollapsed;var rl=om({name:"ui",initialState:nm,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:Ct,setOverlayCollapsed:He,setOpenOverlayWhenTyping:il,setOverlayCollapsedUserOverwrite:al}=rl.actions,ll=rl.reducer;import cl,{useContext as sm}from"react";import{jsx as rm}from"react/jsx-runtime";var pl=cl.createContext(null),wt=({broadcastEvents:t,children:e})=>{let o=cl.useMemo(()=>t,[]);return rm(pl.Provider,{value:o,children:e})},ne=()=>{let t=sm(pl);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createAsyncThunk as sr,createSlice as im}from"@reduxjs/toolkit";var am={isLoggedIn:!0,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1},le=t=>t.auth.isLoggedIn,ul=t=>t.auth.loginFetchState,dl=t=>t.auth.verifyFetchState,gl=t=>t.auth.showLoginOverlay,Be=sr("auth/validate",async(t,e)=>e.extra.deepdeskAPI.isLoggedIn()),ml=sr("auth/requestLogin",async({email:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.requestLoginByEmail(t)}),oo=sr("auth/verifyLoginToken",async({token:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.verifyLoginToken(t)}),fl=im({name:"auth",initialState:am,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload}},extraReducers:t=>{t.addCase(Be.pending,e=>{e.loginFetchState="loading"}),t.addCase(Be.fulfilled,(e,{payload:o})=>{e.isLoggedIn=o,e.loginFetchState="done"}),t.addCase(Be.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(oo.pending,e=>{e.verifyFetchState="loading"}),t.addCase(oo.rejected,e=>{e.verifyFetchState="error"}),t.addCase(oo.fulfilled,(e,o)=>{o.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:Tt,setShowLoginOverlay:hl}=fl.actions,yl=fl.reducer;var rr="SetActiveSuggestion",Et="ShowLoginOverlay",ir="UserLoggedIn",lm="UserLoggedOut",be="ApplySuggestion",ar="ApplyImageSuggestion",cm="ShowCommandPalette",pm=t=>({[rr]:e=>{t.dispatch(Ja(e.state)),t.dispatch(xe({contentType:e.contentType,suggestion:e.suggestion}))},[cm]:e=>{t.dispatch(te(e.isOpen)),e.page&&t.dispatch(V(e.page))},[Et]:e=>{t.dispatch(hl(e))},[ir]:()=>{t.dispatch(Be())},[lm]:()=>{t.dispatch(Be())},[ar]:e=>{t.dispatch(Fo({suggestion:e.suggestion}))},[be]:e=>{t.dispatch(re({...e,eventMetrics:{inputType:"mouse"},replace:"selection"})),t.dispatch(Le())}}),Sl=pm;import{jsx as vl}from"react/jsx-runtime";var gm=()=>{var f;let[t,e]=um(!1),o=lr(tl),n=lr(ol),s=lr(bt),r=dm(),i=ne(),a=T(nr),l=()=>{o!==null&&t?window.confirm(a("warning"))&&c():c()},c=()=>{r(or()),r(Ct(!0)),r($.actions.reset())},p=(m,v)=>{r(or()),r(Ct(!0)),i.send(be,{text:m,suggestion:{...v,source:`${v.source||"text_recommendation"}-preview`}})};if(o===null||n===null)return null;let u=(f=s[n])==null?void 0:f.suggestions.indexOf(o),d=u===0||u===null?void 0:()=>r(xe({contentType:n,suggestion:s[n].suggestions[u-1]})),g=u===s[n].suggestions.length-1||u===null?void 0:()=>r(xe({contentType:n,suggestion:s[n].suggestions[u+1]}));return vl(mt,{autoFocus:!0,isOpen:u!==null,onClose:l,onBack:l,contentAriaLabel:a("editContentLabel"),overlayAriaLabel:a("overlayLabel"),children:vl(hn,{onTouched:e,onDismiss:c,onUse:m=>p(m,o),suggestion:o,onNext:g,onPrevious:d})})},_l=gm;import{useSelector as Tl}from"react-redux";import pr from"classnames";import{useCallback as Cl,useEffect as vm,useMemo as _m,useState as ur}from"react";import{useDispatch as xm,useSelector as bm}from"react-redux";import mm from"classnames";var xl={root:"_root_1ukx5_1"};import{jsx as hm}from"react/jsx-runtime";var fm=({className:t,value:e,...o})=>{let n=S("TextInput",xl);return hm("input",{className:mm(t,n.root),type:"text",value:e,...o})},no=fm;var cr={};q(cr,{enUS:()=>ym,nlNL:()=>Sm});var ym={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"}]},Sm={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 bl={root:"_root_1edpl_1",anchorButton:"_anchorButton_1edpl_5",errorMessage:"_errorMessage_1edpl_19",title:"_title_1edpl_25",subtitle:"_subtitle_1edpl_31",text:"_text_1edpl_38",input:"_input_1edpl_43",actions:"_actions_1edpl_48",button:"_button_1edpl_55",primaryButton:"_primaryButton_1edpl_70"};import{jsx as Q,jsxs as vn}from"react/jsx-runtime";var Cm=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch{return t}},wm=({agentEmail:t,isOpen:e,origin:o="",onSuccess:n,onDismiss:s})=>{let r=T(cr),i=S("LoginTokenDialog",bl),a=bm(dl),l=xm(),c=b("productName"),[p,u]=ur(t||""),[d,g]=ur(0),[f,m]=ur(""),v=Cl(async x=>{x.preventDefault(),l(ml({email:p})),g(1)},[o,p]),w=()=>{m(""),g(0)},h=Cl(async x=>{x.preventDefault();let C=Cm(x.target.elements.token.value);if(!C){m(r("verifyCodeError",{login:y}));return}l(oo({token:C}))},[o]),y=_m(()=>x=>Q("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:w,children:x},"back-button"),[]);return vm(()=>{a==="error"&&m(r("verifyCodeError",{login:y})),a==="done"&&n()},[a]),Q(mt,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:c}),overlayAriaLabel:r("promptTitle",{productName:c}),onClose:s,onBack:s,children:vn("div",{className:i.root,children:[Q("h1",{className:i.title,children:r("promptTitle",{productName:c})}),d===0&&vn("form",{onSubmit:v,children:[Q("h2",{className:i.subtitle,children:r("requestCodeTitle")}),Q("p",{className:i.text,children:r("requestCodeBody",{productName:c})}),Q(no,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:p,onChange:x=>u(x.target.value)}),Q("div",{className:i.actions,children:Q("button",{type:"submit",className:pr(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),d===1&&vn("form",{onSubmit:h,children:[Q("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),Q("p",{className:i.text,children:r("verifyCodeBody")}),Q(no,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),f&&Q("div",{className:i.errorMessage,children:f}),vn("div",{className:i.actions,children:[Q("button",{type:"button",className:pr(i.button),onClick:w,children:r("back")}),Q("button",{type:"submit",className:pr(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},wl=wm;import{jsx as Em}from"react/jsx-runtime";var Tm=()=>{let t=Tl(gl),e=Tl(wa),o=b("adminUrl"),n=ne(),s=()=>n.send(Et,!1),r=()=>{n.send(Et,!1),n.send(ir)};return Em(wl,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:o,onDismiss:s,onSuccess:r})},El=Tm;import Sf from"lodash.debounce";import{useCallback as wn,useEffect as vr,useState as ao}from"react";import{useDispatch as vf,useSelector as At}from"react-redux";import{createAsyncThunk as km,createSlice as Rm}from"@reduxjs/toolkit";var Im={data:null,fetchState:"idle"},kl=t=>t.contentTypes.data,so=km("contentTypes/getContentTypes",async(t,e)=>e.extra.deepdeskAPI.getContentTypes()),Pm=Rm({name:"contentTypes",initialState:Im,reducers:{},extraReducers:t=>{t.addCase(so.pending,e=>{e.fetchState="loading"}).addCase(so.rejected,e=>{e.fetchState="error"}).addCase(so.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),Rl=Pm.reducer;function ro(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 Am}from"react";function Il(t,e){Am(()=>{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 Ml,useRef as Bm}from"react";import{useSelector as Fm,useDispatch as Km}from"react-redux";import{createAsyncThunk as Lm,createSlice as Mm}from"@reduxjs/toolkit";var Pl={data:null,fetchState:"idle"},_n=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},ce=Lm("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)}),Om=t=>t.filter((e,o)=>o===t.findIndex(n=>n.text===e.text)),Nm=Mm({name:"entities",initialState:Pl,reducers:{},extraReducers:t=>{t.addCase(ce.pending,e=>{e.fetchState="loading"}).addCase(ce.rejected,e=>{e.fetchState="error"}).addCase(ce.fulfilled,(e,o)=>{e.fetchState="done",e.data=Om(e.data?[...e.data,...o.payload]:o.payload)}).addCase(R,()=>Pl)}}),Al=Nm.reducer;var dr={};q(dr,{enUS:()=>Dm,nlNL:()=>Hm});var Dm={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},Hm={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var Ll={root:"_root_17kae_1",empty:"_empty_17kae_5"};import{jsx as xn,jsxs as zm}from"react/jsx-runtime";var Um=({onCopy:t,onUse:e})=>{let o=Bm(null),n=S("EntitiesList",Ll),s=T(dr),r=Fm(_n),i=Km();return Ml(()=>{i(ce())},[]),Ml(()=>{o.current&&o.current.focus()},[o]),zm("div",{className:n.root,ref:o,tabIndex:-1,children:[r&&r.length>0&&xn(I.ActionsBar,{primaryLabel:s("copy"),secondaryLabel:s("use"),onPrimary:(a,l)=>t(r[l]),onSecondary:(a,l)=>e(r[l]),list:r.map(a=>({text:a.text,type:a.label,primaryAction:"copy",secondaryAction:"use"})),children:xn(I.List,{children:r.map((a,l)=>xn(I.ListItem,{index:l,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities")}),r&&r.length===0&&xn("p",{className:n.empty,children:s("noResults")})]})},Ol=Um;import{Fragment as $m,useEffect as bn,useRef as Xm,useState as Qm}from"react";import{useSelector as Kl,useDispatch as Zm}from"react-redux";import{createAsyncThunk as jm,createSlice as qm}from"@reduxjs/toolkit";var Nl={data:null,fetchState:"idle"},Dl=t=>t.summary.data,Hl=t=>t.summary.fetchState==="error",Ce=jm("summary/getSummary",async(t,e)=>{let o=e.getState().profile.data;if(!o)throw new Error("Profile is not defined");let{deepdeskAPI:n,dynamicThunkObject:s}=e.extra;if(!s.conversationQuery)return Promise.reject(new Error("setConversationQuery method is not defined"));let r=s.conversationQuery,i=await r();return i.length===0?Promise.reject(new Error("No messages are included")):{summary:await n.getSummary(i,{promptInstruction:o.summarizerPromptInstruction,model:o.summarizerModel})}}),Vm=qm({name:"summary",initialState:Nl,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)}).addCase(R,()=>Nl)}}),Bl=Vm.reducer;var gr={};q(gr,{enUS:()=>Wm,nlNL:()=>Gm});var Wm={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."}]},Gm={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 Fl={root:"_root_6ahh3_1",actions:"_actions_6ahh3_5",main:"_main_6ahh3_11",textInput:"_textInput_6ahh3_15",loading:"_loading_6ahh3_34",error:"_error_6ahh3_38"};import{jsx as kt,jsxs as Ym}from"react/jsx-runtime";var Jm=({onCopy:t})=>{let e=Xm(null),o=S("SummaryForm",Fl),[n,s]=Qm(""),r=T(gr),i=Kl(Dl),a=Kl(Hl),l=Zm(),c=()=>{l(z({name:"summary copied to clipboard",data:{originalText:i,finalText:n},options:{includeConversationData:!0}})),t(n)},p=()=>{let u=document.getSelection();u&&l(z({name:"summary copied to clipboard",data:{originalText:i,finalText:u==null?void 0:u.toString()},options:{includeConversationData:!0}}))};return bn(()=>{l(Ce())},[]),bn(()=>{s(i||"")},[i]),bn(()=>{e.current&&i&&e.current.focus()},[e,i]),bn(()=>{let u=d=>{d.key==="Enter"&&d.shiftKey&&c()};return document.addEventListener("keydown",u),()=>{document.removeEventListener("keydown",u)}},[n]),kt("div",{className:o.root,tabIndex:-1,children:a?kt("p",{className:o.error,children:r("error")}):Ym($m,{children:[kt("div",{className:o.main,children:kt("textarea",{placeholder:i?void 0:r("loading"),disabled:!i,className:o.textInput,ref:e,value:n,onCopy:p,onChange:u=>s(u.target.value)})}),kt("div",{className:o.actions,children:kt(I.Button,{shortKeys:[8679,8629],onClick:c,children:r("copy")})})]})})},Ul=Jm;var mr={};q(mr,{enUS:()=>ef,nlNL:()=>tf});var ef={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?"}]},tf={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 pf,{useEffect as yr,useRef as uf}from"react";import{useDispatch as df,useSelector as $l}from"react-redux";var fr={};q(fr,{enUS:()=>of,nlNL:()=>nf});var of={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"}]},nf={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 zl={root:"_root_1g4pq_1",title:"_title_1g4pq_9",empty:"_empty_1g4pq_20",status:"_status_1g4pq_24",form:"_form_1g4pq_30",input:"_input_1g4pq_43",submit:"_submit_1g4pq_55",question:"_question_1g4pq_63",answer:"_answer_1g4pq_67",alignRight:"_alignRight_1g4pq_73"};import{createAction as sf,createAsyncThunk as rf,createSlice as af}from"@reduxjs/toolkit";var hr={data:[],fetchState:"idle"},jl=t=>{var e;return(e=t.answer)==null?void 0:e.data},ql=t=>t.answer.fetchState,It=sf("answer/resetKnowledgeSearch"),Rt=rf("answer/getAnswer",async(t,e)=>{var i;let{deepdeskAPI:o}=e.extra,n=e.getState().answer.data,s=(i=e.getState().conversation.current)==null?void 0:i.profileCode;if(!s)throw new Error("Profile is not defined");let r=await o.knowledgeAssist({promptInstruction:t.promptInstruction,question:t.question},n,s);return{question:t.question,answer:r}}),lf=af({name:"answer",initialState:hr,reducers:{},extraReducers:t=>{t.addCase(Rt.pending,e=>{e.fetchState="loading"}).addCase(Rt.rejected,e=>{e.fetchState="error"}).addCase(Rt.fulfilled,(e,o)=>{e.fetchState="done",e.data=[...e.data,o.payload]}).addCase(R,()=>hr).addCase(It,()=>hr)}}),Vl=lf.reducer;import{jsx as Wl,jsxs as cf}from"react/jsx-runtime";var Gl=()=>cf("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 512 512","aria-labelledby":"paperPlaneTitle",children:[Wl("title",{id:"paperPlaneTitle",children:"PaperPlane"}),Wl("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 we,jsxs as Sr}from"react/jsx-runtime";var gf=({onUse:t,onResetQuestion:e,question:o,promptInstruction:n})=>{let[s,r]=pf.useState(""),{setSelected:i}=Ne(),a=uf(null),l=S("EntitiesList",zl),c=T(fr),p=df(),u=$l(jl),d=$l(ql),g=async m=>{m.preventDefault(),m.stopPropagation(),s!==""&&p(Rt({question:s,promptInstruction:n}))},f=(m,v)=>{p(z({name:"knowledge assist source viewed",data:{question:v,sourceViewed:m.url||m.name},options:{includeConversationData:!0}}))};return yr(()=>{var m;o&&d==="idle"?p(Rt({question:o,promptInstruction:n})):(m=a.current)==null||m.focus()},[a,d]),yr(()=>{d==="done"&&(p(z({name:"knowledge assist question answered",data:{question:s||o,sources:u[u.length-1].answer.sources,answer:u[u.length-1].answer.answer,isFollowUpQuestion:u.length>1},options:{includeConversationData:!0}})),i(u.length-1),r(""))},[d,u]),yr(()=>{a.current&&a.current.scrollIntoView({behavior:"smooth"})},[a,u]),Sr("div",{className:l.root,children:[u.length>0&&we("div",{className:l.alignRight,children:we(I.Button,{onClick:e,children:c("reset")})}),Sr(I.ActionsBar,{list:u.map(({answer:m})=>({text:m.answer,type:"answer"})),primaryLabel:c("use"),onPrimary:m=>t(m.text),children:[u.map(({question:m,answer:v},w)=>we(I.List,{children:we(I.ListItem,{"data-testid":"knowledge-search-answer",index:w,description:v.answer,closeOnSelect:!0,onClick:()=>t(v.answer),onSourceClick:h=>f(h,m),sources:v.sources,styles:{title:l.question,description:l.answer},children:m})},`${v.answer}_${w}`)),d==="loading"&&we("p",{className:l.status,children:c("loading")}),d==="error"&&we("p",{className:l.status,children:c("error")}),Sr("form",{className:l.form,onSubmit:g,children:[we("input",{ref:a,placeholder:c("anotherQuestion"),className:l.input,type:"text",value:s,onFocus:()=>{i(-1)},onChange:m=>{i(-1),r(m.target.value)}}),we("button",{type:"submit",className:l.submit,children:we(Gl,{})})]})]})]})},Xl=gf;import{createAsyncThunk as mf,createSlice as ff}from"@reduxjs/toolkit";var hf={data:null,fetchState:"idle"},Pt=t=>t.profile.data,Cn=t=>t.profile.data?t.profile.data.uiConfig.widget.types.filter(e=>e.isActive):[],io=mf("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)}),yf=ff({name:"profile",initialState:hf,reducers:{},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.data=o.payload})}}),Ql=yf.reducer;import{jsx as Z,jsxs as Jl}from"react/jsx-runtime";var _f=200,xf=5,bf=4,Cf=t=>t.reduce((e,o)=>[...e,...o.list.map(n=>({...n,type:o.value}))],[]),Zl=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),wf=()=>{let t=vf(),e=ne(),o=T(mr),[n,s]=ao(!1),[r,i]=ao(""),a=At(Ia),l=At(Pt),[c,p]=ao(null),[u,d]=ao([]),[g,f]=ao(),m=At(le),v=b("showSearch"),w=b("showEntitiesCommand"),h=b("showSummaryCommand"),y=b("showKnowledgeSearch"),x=b("showImageSearch"),C=b("searchTriggerKey"),F=At(kl),D=At(Pa),Y=At(Ra),H=_=>ns(D.filter(P=>P.type===_.toUpperCase()),_),k=[{value:"PERSONAL",label:o("personalSuggestions"),list:H("PERSONAL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"URL",label:o("urlSuggestions"),list:H("URL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"STICKYMESSAGE",label:o("pinnedMessages"),list:H("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"IMAGE",label:o("imageSuggestions"),lineClamp:!1,list:H("IMAGE"),listOrientation:"horizontal",shouldShow:x}].filter(_=>_.shouldShow),O=[{label:o("entitiesClipboard"),onClick:()=>t(V("entities")),shouldShow:w&&Zl(o("entitiesClipboard"),r)},{label:o("summaryClipboard"),onClick:()=>t(V("summary")),shouldShow:h&&Zl(o("summaryClipboard"),r)},{label:r?`${o("knowledgeAssist")}: ${r}`:o("knowledgeAssist"),onClick:()=>t(V("knowledgeAssist")),shouldShow:y}].filter(_=>_.shouldShow),G=(F==null?void 0:F.map(_=>({value:_.code.toUpperCase(),label:`${_.name}s`,list:H(_.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[],ts=wn(Sf((_,P)=>{t(Ze({query:_,type:P,tags:["search-overlay"]}))},_f),[]),ze=Cf([...G,...k]),Zp=wn((_,P)=>{if(!P)return;let Re=[...k,...G].find(({value:rt})=>rt===P);Re&&(t(V("edit")),p({..._,searchTerm:void 0}),d(Re.list))},[t,c,G]),os=wn((_,P)=>{switch(P.type){case"IMAGE":e.send(ar,{suggestion:P});break;default:e.send(be,{text:_,suggestion:P})}t(te(!1))},[t]),Jp=_=>{ro(_.text),t(z({name:"entity copied",data:{entity:_,type:"copy"}})),t(te(!1))},Yp=wn(_=>{t(z({name:"suggestion feedback",data:{text:_.text,source:"search",context:r},options:{includeConversationData:!0}}))},[r]),eu=_=>{e.send(be,{text:_,suggestion:{source:"knowledge-assist",text:_}}),t(z({name:"answer used",data:{originalText:_},options:{includeConversationData:!0}})),i(""),t(V("search")),t(It()),t(te(!1))},tu=_=>{ro(_),t(te(!1))},ou=_=>{e.send(be,{text:_.text,suggestion:{source:"entity",text:_.text}}),t(te(!1))},nu=c===null||u.indexOf(c)-1<0?void 0:()=>p(u[u.indexOf(c)-1]),su=c===null||u.indexOf(c)===u.length-1?void 0:()=>p(u[u.indexOf(c)+1]);function ns(_,P){return _.slice(0,g?10:P.toLowerCase()==="image"?bf:xf)}function Yr(_,P,Re){return P.reduce((rt,_o)=>Re&&g===Re?_o.length+rt:ns(_o,Re).length+rt,_)}function st(_){return P=>{n?window.confirm(o("warning"))&&(_(P),s(!1)):_(P)}}return vr(()=>{r?ts(r,g):t(gn())},[r,g]),vr(()=>{a==="search"&&t(It())},[a]),vr(()=>{m&&t(so())},[m]),Il(C,()=>t(te(!0))),!v||!l?null:Jl(I,{placeholder:o("searchPlaceholder"),typePlaceholder:o("typePlaceholder"),onChangeSearch:i,onChangeOpen:st(_=>t(te(_))),onChangeType:_=>f(_),onChangePage:st(_=>t(V(_))),selectedType:g,search:r,page:a,isOpen:Y,types:[...G,...k],children:[Z(I.Page,{id:"search",children:Jl(I.ActionsBar,{list:[...O.map(_=>({text:_.label,type:"command"})),...ze.map(_=>({text:_.text||_.url||_.message,type:_.type}))],primaryLabel:o("use"),secondaryLabel:o("preview"),onPrimary:({text:_},P)=>os(_,ze[P]),onSecondary:(_,P)=>{Zp(ze[P-O.length],ze[P-O.length].type)},children:[O.length>0&&Z(I.List,{heading:o("commands"),children:O.map((_,P)=>Z(I.ListItem,{index:Yr(P,[],"commands"),closeOnSelect:!1,onClick:_.onClick,children:_.label},_.label))}),[...G,...k].map(({value:_,label:P,list:Re,lineClamp:rt,listOrientation:_o},ru)=>Z(I.List,{heading:P,orientation:_o==="horizontal"?"horizontal":"vertical",children:ns(Re,_).map((oe,iu)=>Z(I.ListItem,{index:Yr(O.length+iu,[...G,...k].slice(0,ru).map(({list:au})=>au),_),closeOnSelect:!1,lineClamp:rt,onClick:()=>os(oe.text,oe),description:_!=="IMAGE"?oe.title&&oe.text:void 0,onFeedback:_!=="IMAGE"?()=>Yp(oe):void 0,children:_==="IMAGE"?Z(I.Image,{title:oe.title||oe.text,src:oe.image}):oe.title||oe.text},`${oe.id}-${oe.text}`))},_))]})}),Z(I.Page,{id:"edit",onDismiss:st(()=>{t(V("search")),p(null)}),children:c&&Z(hn,{suggestion:c,onTouched:s,onDismiss:()=>{s(!1),t(V("search")),p(null),d([])},onNext:su,onPrevious:nu,onUse:_=>{t(V("search")),os(_,{...c,source:`${c.source||"text_recommendation"}-preview`}),t(te(!1)),d([]),p(null)}})}),Z(I.Page,{id:"entities",title:o("entitiesTitle"),onDismiss:st(()=>{t(V("search"))}),children:Z(Ol,{onUse:ou,onCopy:Jp})}),Z(I.Page,{id:"summary",title:o("summaryTitle"),onDismiss:st(()=>{t(V("search"))}),children:Z(Ul,{onCopy:tu})}),Z(I.Page,{id:"knowledgeAssist",title:o("knowledgeAssist"),onDismiss:st(()=>{t(It()),t(V("search"))}),children:Z(Xl,{promptInstruction:l.knowledgeAssistPromptInstruction,question:r,onUse:eu,onResetQuestion:()=>{t(It()),i("")}})})]})},Yl=wf;import{jsx as _r,jsxs as kf}from"react/jsx-runtime";var Ef=()=>{let t=b("showSearch"),e=b("isEmbedded");return kf(Tf,{children:[t&&_r(Yl,{}),_r(_l,{}),e&&_r(El,{})]})},ec=Ef;import{connect as qf,useDispatch as Vf,useSelector as kn}from"react-redux";function Lt(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{Fragment as Uf,useMemo as zf}from"react";import{Interweave as Pf}from"interweave";import{useEffect as Af,useMemo as Lf,useRef as Mf}from"react";import{useDispatch as Of,useSelector as Nf}from"react-redux";import{useEffect as Rf}from"react";function tc(t,e,o){Rf(()=>{let n=t.current;return n?(n.addEventListener(e,o),()=>{n.removeEventListener(e,o)}):()=>{}},[t,e,o])}var oc={root:"_root_4u430_1",actions:"_actions_4u430_8",badge:"_badge_4u430_15",formattedText:"_formattedText_4u430_19"};import{jsx as Tn,jsxs as Kf}from"react/jsx-runtime";var Df=["search","personal-collection-search","search-autocomplete"];function Hf(t,e,o,n={}){let s="";return Df.includes(e)?s=aa(Ds(t,o,{stripAgentPart:!0}),n.searchKeywords??[o]):s=Ds(t,o,n),n.placeholders===!0&&(s=la(s)),s}var Bf=()=>{},Ff=({index:t,selected:e,suggestion:o,onFeedback:n})=>{let s=b("inlineSuggestions"),r=Nf(gt),i=Of(),a=S("TextSuggestion",oc),l=Mf(null);Af(()=>{let p=setTimeout(()=>{i(xi({text:o.text,suggestion:o}))},500);return()=>{clearTimeout(p)}},[o]),tc(l,"click",()=>{i(Ae(t)),i(re({suggestion:o,text:o.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let c=Lf(()=>Hf(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:Kf("div",{className:a.root,onMouseEnter:()=>i(Ae(t)),children:[Tn(M,{ref:l,as:"button","data-testid":"suggestions-overlay-item",selected:e,onClick:Bf,children:Tn(Pf,{containerTagName:"div",noWrap:!1,tagName:"span",className:a.formattedText,content:c})}),e&&n&&Tn("div",{className:a.actions,children:Tn(cn,{onFeedback:()=>n(o),suggestion:o.text})})]})},nc=Ff;import{jsx as sc}from"react/jsx-runtime";var jf=({onFeedback:t,suggestions:e,selectedIndex:o,reverse:n})=>{let s=zf(()=>{let r=e.map((i,a)=>sc(nc,{index:a,selected:a===o,suggestion:i,onFeedback:t},`${i.text}-${i.source}`));return n?r.reverse():r},[e,o,n]);return sc(Uf,{children:s})},En=jf;var rc={root:"_root_otdbu_1",paper:"_paper_otdbu_11"};import{jsx as Rn}from"react/jsx-runtime";var Wf=({textSuggestions:t,selectedIndex:e})=>{let o=S("InlineSuggestionsOverlay",rc),n=kn(Lt),s=Vf(),r=kn(le),i=kn(dt),a=kn(Sn),l=b("showTextSuggestions");return ht(()=>{s(He({collapse:!0,skipWhenInputFocus:!0}))}),a||!n||!l||t.length===0||r!==!0||i===!1?null:Rn("div",{className:o.root,"data-variant":"inline",children:Rn("div",{className:o.paper,children:Rn(se,{children:Rn(En,{suggestions:t,selectedIndex:e})})})})},Gf=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),ic=qf(Gf)(Wf);import Tr from"classnames";import{useEffect as rh,useRef as ih,useState as ah}from"react";import{connect as lh,useDispatch as ch,useSelector as lo}from"react-redux";import{useState as $f}from"react";function ac(t,e){let[o,n]=$f(()=>{if(typeof window>"u")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return E.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){E.error(i)}}]}import Zf from"classnames";import{Fragment as Jf,useCallback as br,useMemo as cc}from"react";var xr={};q(xr,{enUS:()=>Xf,nlNL:()=>Qf});var Xf={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"}]}]},Qf={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 lc={root:"_root_1vfca_1",anchor:"_anchor_1vfca_6",anchorButton:"_anchorButton_1vfca_11"};import{jsx as In,jsxs as pc}from"react/jsx-runtime";var Cr=(t,e,o)=>n=>In("button",{className:t.anchorButton,type:"button",value:e,onClick:o,children:n},e),Yf=({className:t,loginUrl:e,isEmbedded:o,onSnooze:n})=>{let s=T(xr),r=ne(),i=S("Login",lc),a=b("productName"),l=br(m=>{m.preventDefault(),n&&n(parseInt(m.target.value,10))},[]),c=br(m=>{m.preventDefault(),r.send(Et,!0)},[e]),p=cc(()=>m=>In("a",{href:e,className:i.anchor,target:"_blank",rel:"noreferrer",children:m},"login"),[e]),u=br(m=>In("button",{type:"button",className:i.anchorButton,onClick:c,children:m},"prompt"),[c]),{min:d,hour:g,day:f}=cc(()=>({min:Cr(i,60*10,l),hour:Cr(i,60*60,l),day:Cr(i,60*60*12,l)}),[]);return pc("div",{className:Zf(t,i.root),children:[s("loginPlease",{login:o?u:p,productName:a}),n&&pc(Jf,{children:[In("br",{}),s("snooze",{min:d,hour:g,day:f})]})]})},Pn=Yf;import{useDispatch as eh}from"react-redux";var uc={root:"_root_1g8fi_1",text:"_text_1g8fi_19"};import{jsx as dc,jsxs as oh}from"react/jsx-runtime";var th=({title:t})=>{let e=S("SearchTrigger",uc),o=eh();return oh("button",{type:"button",className:e.root,onClick:()=>o(te(!0)),children:[dc(_t,{}),dc("span",{className:e.text,children:t})]})},gc=th;var wr={};q(wr,{enUS:()=>nh,nlNL:()=>sh});var nh={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"}]},sh={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 mc={root:"_root_onpov_1",isInline:"_isInline_onpov_14",toggleButton:"_toggleButton_onpov_21",toggleButtonWrapper:"_toggleButtonWrapper_onpov_25",toggleButtonWrapperHidden:"_toggleButtonWrapperHidden_onpov_32",isCollapsed:"_isCollapsed_onpov_36",collapsible:"_collapsible_onpov_36",hints:"_hints_onpov_44",hintsHidden:"_hintsHidden_onpov_51",triggers:"_triggers_onpov_56",triggersRight:"_triggersRight_onpov_71"};import{jsx as U,jsxs as co}from"react/jsx-runtime";var ph=({textSuggestions:t,selectedIndex:e})=>{let o=S("SuggestionsOverlay",mc),n=T(wr),s=lo(Lt),r=hi(),i=ch(),a=ih(null),l=b("searchTriggerKey"),c=b("productName"),p=lo(Sn),u=lo(le),d=lo(dt),[g,f]=ah(null),m=b("showSearch"),v=b("showTextSuggestions"),w=b("adminUrl"),h=b("isEmbedded"),[y,x]=ac("dd-snooze-until-ms",0),C=p||y>Date.now(),F=lo(O=>O.input.text),D=t.filter(O=>O.source!=="gpt").length,Y=()=>{C&&x(0),i(al(!C))},H=O=>{i(z({name:"suggestion feedback",data:{text:O.text,source:"overlay",context:F},options:{includeConversationData:!0}}))},k=O=>{let G=Date.now()+O*1e3;x(G),E.info(`Snooze until: ${new Date(G)}`),i(He({collapse:!0}))};return rh(()=>{D===0&&f(null)},[t,D]),ht(()=>{i(He({collapse:!0,skipWhenInputFocus:!0}))}),u===null||d===!1?null:u===!1?co("div",{ref:a,className:Tr(o.root,{[o.isCollapsed]:C}),children:[!C&&co("div",{className:o.triggers,children:[U("div",{style:{flex:1}}),U("div",{className:o.triggersRight,children:U(ct,{className:o.toggleButton,title:n("collapse"),onClick:Y,isCollapsed:!1})})]}),U("div",{className:o.toggleButtonWrapper,children:U(ct,{className:o.toggleButton,title:n("open",{productName:c}),onClick:Y,isCollapsed:!0})}),U("div",{className:o.collapsible,children:U(Pn,{loginUrl:w,isEmbedded:h,onSnooze:k})})]}):!r||!s?null:co("div",{ref:a,className:Tr(o.root,{[o.isCollapsed]:C}),children:[!C&&co("div",{className:o.triggers,children:[U("div",{style:{flex:1},children:m&&U("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>f(n(un()?"searchHintMac":"searchHintWindows",{searchTriggerKey:l.toUpperCase()})),onMouseLeave:()=>f(null),children:U(gc,{title:n("search")})})}),co("div",{className:o.triggersRight,onFocus:()=>{},children:[U("div",{className:Tr(!g&&o.hintsHidden,o.hints),children:g}),U(ct,{className:o.toggleButton,title:n("collapse"),onClick:Y,isCollapsed:!1})]})]}),U("div",{className:o.toggleButtonWrapper,children:U(ct,{className:o.toggleButton,title:n("open",{productName:c}),onClick:Y,isCollapsed:!0})}),D>0&&v&&U("div",{className:o.collapsible,onFocus:()=>{},children:U(se,{children:U(En,{onFeedback:H,suggestions:t,selectedIndex:e,reverse:!0})})})]})},uh=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),fc=lh(uh)(ph);import{Provider as dh}from"react-redux";import{jsx as An}from"react/jsx-runtime";var gh=({children:t})=>{let o=b("locale").replace("-","");return An(Rs.Provider,{value:o,children:t})},mh=({store:t,customStyles:e={},children:o})=>An(dh,{store:t,children:An(gh,{children:An(Kt.Provider,{value:e,children:o})})}),Mt=mh;import Dr from"classnames";import{Interweave as ty}from"interweave";import{useCallback as oy,useEffect as ny,useMemo as Nc,useRef as sy}from"react";import{connect as ry}from"react-redux";import{cloneElement as fh}from"react";var hh=["div","span","mark","strong","b","i","u","em"];function Er(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(hh.includes(s)){let i=Array.isArray(n.props.children)?n.props.children:[n.props.children];return[...t.slice(0,t.length-1),fh(n,{children:Er(i,e,o+1)})]}return[...t,...e]}function Fe(t){return t.tagName.toLowerCase()==="textarea"}var hc={root:"_root_81non_1",container:"_container_81non_3",agentText:"_agentText_81non_5",tabText:"_tabText_81non_6",hint:"_hint_81non_6",matchSelection:"_matchSelection_81non_10",focus:"_focus_81non_16",resetIndent:"_resetIndent_81non_20",matchKeyword:"_matchKeyword_81non_24",matchPlaceholder:"_matchPlaceholder_81non_25",hover:"_hover_81non_31",hintText:"_hintText_81non_64",popover:"_popover_81non_72",popoverRoot:"_popoverRoot_81non_77",popoverContentContainer:"_popoverContentContainer_81non_81",popoverContent:"_popoverContent_81non_81",selectionOptions:"_selectionOptions_81non_107",selectionOptionsIsHidden:"_selectionOptionsIsHidden_81non_112",selectionOptionsButton:"_selectionOptionsButton_81non_116",caret:"_caret_81non_132",popoverSuggestionsRoot:"_popoverSuggestionsRoot_81non_136",suggestionsOverlayInputStyles:"_suggestionsOverlayInputStyles_81non_141"};import Mh from"classnames";import{Matcher as Oh}from"interweave";import{useEffect as Nh,useMemo as Dh}from"react";function yc(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function Ln(t){return e=>{t.forEach(o=>{typeof o=="function"?o(e):o!=null&&(o.current=e)})}}function Sc(t){return t!=null}import Cc from"classnames";import{createRef as Eh,useCallback as Rr,useMemo as kh,useRef as Rh,useState as Ih}from"react";import{useState as yh,useLayoutEffect as Sh}from"react";var vh=["bottom","height","left","right","top","width"],_h=(t={},e={})=>vh.some(o=>t[o]!==e[o]),Te=new Map,vc,_c=()=>{let t=[],e=[];Te.forEach((o,n)=>{if(n instanceof Element&&!n.isConnected){e.push(n);return}let s=n.getBoundingClientRect();_h(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))}),vc=window.requestAnimationFrame(_c)};function xh(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&&_c()},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(vc)}}}}function kr(t){let[e,o]=yh(null);return Sh(()=>{if(!t.current)return;let n=xh(t.current,s=>{o(s)});return n.observe(),()=>{n.unobserve()}},[t]),e}import{useContext as bh,useLayoutEffect as Ch,useState as wh}from"react";import{createPortal as Th}from"react-dom";var xc={root:"_root_1jq08_1"};var bc=({children:t})=>{let[e,o]=wh(null),n=bh(Kt);return Ch(()=>{let s=document.createElement("div");return $e(s),s.classList.add(xc.root),n!=null&&n.portalRootNode&&s.classList.add(n==null?void 0:n.portalRootNode),document.body.appendChild(s),o(s),()=>{s.isConnected&&document.body.removeChild(s)}},[]),e?Th(t,e):null};var me={ref:"_ref_1rcyi_1",root:"_root_1rcyi_7",positionAbove:"_positionAbove_1rcyi_13",positionBelow:"_positionBelow_1rcyi_17",positionLeft:"_positionLeft_1rcyi_21",positionRight:"_positionRight_1rcyi_25",alignStart:"_alignStart_1rcyi_29",alignCenter:"_alignCenter_1rcyi_34",alignEnd:"_alignEnd_1rcyi_40"};import{jsx as Ir}from"react/jsx-runtime";var Mn=(t=!1)=>{let[e,o]=Ih(t),n=Rr(()=>o(!0),[]),s=Rr(()=>o(!1),[]),r=Rr(()=>o(a=>!a),[]),i=Rh(null);return{opened:e,open:n,close:s,toggle:r,triggerRef:i}};function Pr(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 On=({className:t,triggerRef:e,boundaryRef:o=Eh(),position:n="above",align:s="center",children:r,toStyle:i=Pr,...a})=>{let l=kr(e),c=kr(o),p=kh(()=>i(l,c,0),[l,c]);return Ir(bc,{children:Ir("div",{className:Cc(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:p,...a,role:"dialog",children:Ir("div",{className:Cc(t,me.root),children:r})})})};import Ph from"classnames";import{forwardRef as Ah,useRef as Lh}from"react";import{jsx as wc}from"react/jsx-runtime";var Nn=Ah(({className:t,children:e,...o},n)=>{let s=Lh(null),r=S("TabCompletion",Se);return wc("div",{ref:Ln([s,n]),className:Ph(t,r.popoverContentContainer),...o,children:wc("div",{className:r.popoverContent,children:e})})});import{jsx as po,jsxs as Fh}from"react/jsx-runtime";var Hh=t=>e=>{let o=Pr(e);return"top"in o&&(o.width=t.width-(e.left-t.left)-10),o},Bh=({inputElement:t,boundaryRef:e,inputStyle:o,children:n,suggestion:s})=>{let r=S("TabCompletion",Se),i=Mn(),a=Dh(()=>Hh(t.getBoundingClientRect()),[t]),[l,c]=en(t);return Nh(()=>{c?i.open():i.close()},[c]),Fh("span",{children:[po("mark",{ref:Ln([l,i.triggerRef]),className:Mh(r.matchKeyword,{[r.hover]:c}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:n}),i.opened&&po(On,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:po(Nn,{style:o,children:po("div",{className:r.hintText,children:s})})})]})},Dn=class extends Oh{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${yc(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(Sc);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 po(Bh,{inputElement:o.inputElement,suggestion:o.suggestion,inputStyle:o.inputStyle,boundaryRef:o.boundaryRef,children:e},`keyword_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import Nr from"classnames";import{Matcher as $h}from"interweave";import{createRef as Xh,forwardRef as Qh,useCallback as Zh,useEffect as Lc,useRef as Mc,useState as Oc}from"react";import{useDispatch as Jh}from"react-redux";import{jsx as Tc}from"react/jsx-runtime";var Ec=()=>Tc("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:Tc("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 Kh,useEffect as Rc,useState as Ic}from"react";import{useDispatch as Uh,useSelector as Pc}from"react-redux";import zh from"lodash.debounce";var kc={root:"_root_1muu8_1",content:"_content_1muu8_7"};function Hn(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 Ar(t){return t.replace("https://www.","").replace("https://","")}import{jsx as Ye,jsxs as Lr}from"react/jsx-runtime";var jh=3,qh=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),Vh=({onSelectLink:t,onDismiss:e,placeholder:o,visitUrlText:n,linkCount:s=jh})=>{let r=S("LinkSearch",kc),[i,a]=Ic(""),l=Uh(),c=Pc(Wa("url")),p=Pc(Aa("URL",qh)),[u,d]=Ic(p.length-1),g=b("fallbackImage"),f=h=>{let y=h.target;a(y.value)},m=(h,y)=>{h.stopPropagation(),h.preventDefault(),window.open(y,"_blank")},v=h=>{var C;let y=u-1<0?p.length-1:u-1,x=u+1===p.length?0:u+1;h.code==="Escape"&&(a(""),e()),h.code==="ArrowUp"&&d(y),h.code==="ArrowDown"&&d(x),h.code==="Enter"&&t(((C=p[u])==null?void 0:C.text)||i)},w=Kh(zh(h=>{l(Ze({query:h,type:"URL",tags:["link-search"]}))},300),[]);return Rc(()=>{i&&w(i)},[i]),Rc(()=>()=>{l(gn())},[]),Lr("div",{className:r.root,children:[Ye(se,{withDivider:!0,children:(i?p:c).slice(0,s).map((h,y)=>Ye(M,{selected:u===y,onClick:()=>t(h.text),"data-testid":"linksearch-suggestion",children:Lr(N,{children:[Ye(N.Image,{src:Hn(h,"small",g||void 0),title:h.title||h.text}),Lr(N.Content,{className:r.content,cropText:!0,children:[Ye(N.Title,{children:h.title||Ar(h.text)}),h.title&&Ar(h.text)]}),Ye(M.Actions,{children:Ye(M.ActionButton,{label:n,onClick:x=>m(x,h.text)})})]})},h.text))}),Ye(no,{value:i,onChange:f,autoFocus:!0,placeholder:o,onKeyUp:v})]})},Ac=Vh;var Mr={};q(Mr,{enUS:()=>Wh,nlNL:()=>Gh});var Wh={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}]},Gh={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 Or}from"react/jsx-runtime";var Yh=Qh((t,e)=>{let o=S("TabCompletion",Se);return fe("mark",{ref:e,className:Nr(o.matchSelection)},"selection-start")}),ey=({startRef:t,boundaryRef:e,inputStyle:o,inputElement:n,children:s})=>{let r=T(Mr),i=S("TabCompletion",Se),a=Mc(null),l=Mc(null),[c,p]=Oc(null),u=Jh(),d=Mn(document.activeElement===n),[g]=Oc(()=>document.createRange());d.triggerRef.current=g,Lc(()=>()=>g.detach(),[]),Lc(()=>{let m=t.current,v=a.current;!m||!v||(g.setStart(m,0),g.setEnd(v,0))},[t.current,a.current]),ht(()=>{d.close()});let f=Zh(m=>{let v=g.toString(),w=/^http(s?):\/\//.test(m)?m:`https://${m}`;u(No({text:`[${v}](${w})`,replace:"selection"}))},[]);return Or("span",{children:[fe("mark",{ref:a,className:Nr(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":d.opened?"true":"false",children:s}),d.opened&&fe(On,{className:i.popoverRoot,triggerRef:d.triggerRef,boundaryRef:e,position:"above",align:"start",children:Or(Nn,{style:o,ref:l,children:[fe("div",{className:Nr(i.selectionOptions,{[i.selectionOptionsIsHidden]:c!==null}),children:Or("button",{type:"button",tabIndex:c===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>p("insertLink"),children:[fe(Ec,{}),fe("span",{children:"\xA0"}),fe("span",{children:r("insertLink")})]})}),c==="insertLink"&&fe(Ac,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:f,onDismiss:()=>{p(null),d.close()}})]})})]},"selection-end")},Bn=class extends $h{charCount=0;foundIndex=0;startRef=null;props;onBeforeParse(e,o){return this.props=o,this.charCount=0,this.startRef=Xh(),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(Yh,{ref:this.startRef}):fe(ey,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{jsx as Ot,jsxs as ly}from"react/jsx-runtime";var iy=({enabled:t,content:e,tabText:o,showTabHint:n,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:l})=>{let c=S("TabCompletion",hc),p=b("insertLink"),u=b("showMidSentenceSuggestions"),d=b("inlineSuggestions"),g=on(a),f=sy(null);ny(()=>{Fe(a)&&g&&nn(a,g)},[g]);let m=oy(h=>{if(!s||!o)return h;let y=[Ot("span",{className:c.resetIndent,children:"\u200B"},"u200B"),Ot("span",{"data-testid":"tab-completion",className:Dr(c.tabText,c.resetIndent),"data-source":l,children:o},"tabText")];return n&&y.push(Ot("span",{className:Dr(c.hint,c.resetIndent),children:Ot(as,{keyCode:"tab"},"tabHint")})),Er(h,y)},[s,o,n]),v=Nc(()=>{let h=[];return p&&h.push(new Bn("selection")),h.push(new ft("placeholders")),r&&h.push(new Dn("keywords")),h},[d,p,r]),w=Nc(()=>{let h=window.getComputedStyle(a);return{"--dd-color":h.color,"--dd-font-size":h.fontSize,"--dd-font-family":h.fontFamily,"--dd-font-variant":h.fontVariant}},[]);return t?ly("div",{ref:h=>{h!=null&&h.parentElement&&(f.current=h==null?void 0:h.parentElement)},className:c.root,style:w,children:[Ot(ty,{tagName:"span",containerTagName:"div",className:Dr(c.container,c.agentText),disableLineBreaks:Fe(a),content:e||"\u200B",onAfterParse:m,matchers:v,selection:g,keywordMatches:i,inputElement:a,inputStyle:w,boundaryRef:f,inlineSuggestionsOnlyAtEnd:!u}),Ot("br",{})]}):null},ay=({input:t,ui:e,settings:o,styleSuggestions:n,conversation:s})=>{var m;let{tabCompletionSuggestion:r}=t,i=(r==null?void 0:r.text)||"",a=(r==null?void 0:r.source)||"",l=t.html??$t(t.text),c=i.indexOf(t.text)===0?i.slice(t.text.length):"",{showTabHint:p}=e,{isSupported:u}=s,{showTabCompletion:d,visible:g,showStyleSuggestions:f}=o;return{showTabHint:p,showStyleSuggestions:f,showTabCompletion:d,content:l,tabText:c,source:a,keywordMatches:((m=n.list)==null?void 0:m.keywordMatches)??[],enabled:g&&u!==!1}},Dc=ry(ay)(iy);import jy from"classnames";import{useEffect as qy}from"react";import{useDispatch as Vy,useSelector as J}from"react-redux";import{createAsyncThunk as uo,createSlice as cy}from"@reduxjs/toolkit";var Hc={list:[],fetchState:"idle",isInitialRequest:null},Fc=t=>t.autoflows.list||[],Bc=t=>e=>{var o;return(o=e.list)==null?void 0:o.find(n=>n.triggerPayload===t)},Ee=uo("autoflows/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getAutoflows(t)}),Hr=uo("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(Ee(t.platformSessionId))}),Br=uo("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(Ee(t.platformSessionId))}),py=cy({name:"autoflows",initialState:Hc,reducers:{},extraReducers:t=>{t.addCase(Hr.pending,(e,o)=>{let n=Bc(o.meta.arg.triggerPayload)(e);n.state="Started",n.isBusy=!0}),t.addCase(Br.pending,(e,o)=>{let n=Bc(o.meta.arg.triggerPayload)(e);n.state="Aborted",n.isBusy=!0}),t.addCase(Ee.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}),t.addCase(Ee.rejected,e=>{e.fetchState="error"}),t.addCase(Ee.fulfilled,(e,o)=>{e.list=o.payload,e.fetchState="done"}),t.addCase(R,()=>Hc)}}),Kc=uo("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(Ee(t))}),s.on("sessionCompleted",()=>{o(Ee(t))})}),Uc=uo("autoflows/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),zc=py.reducer;import{createAsyncThunk as mo,createSlice as uy}from"@reduxjs/toolkit";var jc={list:[],fetchState:"idle",isInitialRequest:null,sentSuggestions:[],errorSuggestions:[],answeredSuggestions:[]},qc=t=>t.customMessages.list,Vc=t=>e=>!!e.customMessages.sentSuggestions.find(o=>o===t),Wc=t=>e=>!!e.customMessages.answeredSuggestions.find(o=>o===t),Gc=t=>e=>!!e.customMessages.errorSuggestions.find(o=>o===t),go=mo("customMessages/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getCustomMessages(t)}),Fn=mo("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)}),Kn=mo("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=uy({name:"customMessages",initialState:jc,reducers:{onCustomMessage(t,e){Array.isArray(e.payload)?t.list=e.payload:t.list=[e.payload]}},extraReducers:t=>{t.addCase(go.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(go.rejected,e=>{e.fetchState="error"}).addCase(go.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload||[]}).addCase(Fn.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.errorSuggestions=e.errorSuggestions.filter(n=>o.meta.arg.suggestion.text!==n)}).addCase(Fn.rejected,(e,o)=>{let n=e.sentSuggestions.indexOf(o.meta.arg.suggestion.text);e.errorSuggestions.push(...e.sentSuggestions.splice(n,1))}).addCase(Kn.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.answeredSuggestions.push(o.meta.arg.suggestion.text)}).addCase(Kn.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(R,()=>jc)}}),Xc=mo("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))})}),Qc=mo("customMessages/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),Zc=$c.reducer;import{createAsyncThunk as Jc,createSlice as dy}from"@reduxjs/toolkit";var gy={jwt:null,accountUrl:null,interval:null},Yc=t=>e=>{let{exchangeToken:{jwt:o,accountUrl:n}}=e;return o&&n?`${n}/apis/admin/session/jwt/?jwt=${o}&redirect=${t}`:null},Fr=Jc("exchangeToken/getTemporaryExchangeToken",async(t,e)=>{let{deepdeskAPI:o}=e.extra,n=await o.getTemporaryExchangeToken();return{accountUrl:o.client.baseUrl,jwt:n}}),Kr=Jc("exchangeToken/pollExchangeToken",(t={},e)=>{let{interval:o=1e3*60*30}=t,{dispatch:n}=e;return n(Fr()),setInterval(()=>n(Fr()),o)}),ep=dy({name:"exchangeToken",initialState:gy,reducers:{stopPollExchangeToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Fr.fulfilled,(e,o)=>{e.jwt=o.payload.jwt,e.accountUrl=o.payload.accountUrl}),t.addCase(Kr.fulfilled,(e,o)=>{e.interval=o.payload})}}),{stopPollExchangeToken:tp}=ep.actions,op=ep.reducer;function np(t){let{customMessages:e,autoflows:o}=t;return o.fetchState==="loading"&&o.isInitialRequest===!0||e.fetchState==="loading"&&e.isInitialRequest===!0}import{Fragment as Cy}from"react";import{connect as wy}from"react-redux";import _y from"classnames";import{Fragment as xy}from"react";import my from"classnames";var sp={root:"_root_838fd_1"};import{jsx as hy}from"react/jsx-runtime";var fy=({className:t,children:e})=>{let o=S("Unicode",sp);return hy("span",{className:my(t,o.root),children:e})},rp=fy;var ip={isDisabled:"_isDisabled_1rmfm_1",buttonStart:"_buttonStart_1rmfm_5",root:"_root_1rmfm_8",buttonStop:"_buttonStop_1rmfm_8",stateBadge:"_stateBadge_1rmfm_19",isCompleted:"_isCompleted_1rmfm_26",isStarted:"_isStarted_1rmfm_30",isAborted:"_isAborted_1rmfm_34"};var Ur={};q(Ur,{enUS:()=>yy,nlNL:()=>Sy});var yy={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"}]},Sy={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 et,jsxs as Un}from"react/jsx-runtime";var by=({disabled:t,state:e,displayName:o,description:n,onStartAutoflow:s,onStopAutoflow:r})=>{let i=S("Autoflow",ip),a=T(Ur),l=e==="Started"?"stop":"start",c=l==="start"?"\u25B6":l==="stop"?"\u25FC":"";return Un(M,{className:_y(i.root,{[i.isDisabled]:t,[i.isCompleted]:e==="Completed",[i.isAborted]:e==="Aborted",[i.isStarted]:e==="Started"}),children:[et(N,{children:Un(N.Content,{children:[Un(N.Title,{children:[e&&et("span",{className:i.stateBadge,children:a(e)}),o]}),et("span",{children:n})]})}),et(M.Actions,{fixed:e==="Started",children:et(M.ActionButton,{primary:!0,className:l==="start"?i.buttonStart:i.buttonStop,onClick:e==="Started"?r:s,disabled:t,label:Un(xy,{children:[et(rp,{children:c})," ",et("span",{children:a(l)})]})})})]})},ap=by;import{jsx as lp}from"react/jsx-runtime";var Ty=(t,e)=>{let o=e.filter(n=>n.state==="Started");return o.length>0?o.indexOf(t)===-1:!1},Ey=({autoflows:t,onStartAutoflow:e,onStopAutoflow:o,platformSessionId:n})=>lp(Cy,{children:t.map(s=>lp(ap,{displayName:s.displayName,description:s.description,disabled:s.isBusy||Ty(s,t),state:s.state,onStartAutoflow:()=>e({platformSessionId:n,triggerPayload:s.triggerPayload}),onStopAutoflow:()=>o({platformSessionId:n,triggerPayload:s.triggerPayload})},s.displayName))}),ky=({autoflows:t,conversation:e})=>{var o;return{autoflows:t.list,platformSessionId:(o=e.current)==null?void 0:o.sessionId}},Ry={onStartAutoflow:Hr,onStopAutoflow:Br},cp=wy(ky,Ry)(Ey);import{useEffect as Iy,useState as Py}from"react";import{useDispatch as Ay}from"react-redux";import dp from"classnames";import{jsx as pp}from"react/jsx-runtime";var zr=()=>pp("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:pp("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 up={root:"_root_rjdyr_1",entity:"_entity_rjdyr_10",entityText:"_entityText_rjdyr_46",iconWrapper:"_iconWrapper_rjdyr_53",icon:"_icon_rjdyr_53",iconClicked:"_iconClicked_rjdyr_67"};import{jsx as Nt,jsxs as gp}from"react/jsx-runtime";var Ly=({entities:t})=>{let e=S("EntitiesWidgetList",up),[o,n]=Py(void 0),s=Ay(),r=()=>{n(void 0)},i=a=>{t&&(n(t.indexOf(a)),ro(a.text),s(z({name:"entity copied",data:{entity:a,type:"copy"}})))};return Iy(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[o]),!t||t.length===0?null:Nt("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,l)=>gp("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[Nt("span",{className:e.entityText,children:a.text}),gp("span",{className:e.iconWrapper,children:[Nt("span",{className:dp(e.icon),children:Nt(zr,{})}),Nt("span",{className:dp(e.icon,o===l&&e.iconClicked),children:Nt(zr,{})})]})]},a.text))})},mp=Ly;import My from"classnames";import{useCallback as fp}from"react";import{useDispatch as Oy,useSelector as zn}from"react-redux";var ke={root:"_root_1e6ej_1",title:"_title_1e6ej_8",isUsed:"_isUsed_1e6ej_13",quickReplies:"_quickReplies_1e6ej_22",quickReply:"_quickReply_1e6ej_29",hasError:"_hasError_1e6ej_39",label:"_label_1e6ej_43",errorIcon:"_errorIcon_1e6ej_48"};import{jsx as Ke,jsxs as jn}from"react/jsx-runtime";var Ny=({suggestion:t})=>{let e=T(Qe),o=Oy(),n=zn(Vc(t.text)),s=zn(Wc(t.text)),r=zn(Gc(t.text)),i=zn(ko),{replyOptions:a}=t,l=fp(p=>{p.preventDefault(),p.stopPropagation(),!(n||!i)&&o(Fn({platformSessionId:i,suggestion:t}))},[t,n,o,i]),c=fp(p=>{if(p.preventDefault(),p.stopPropagation(),!i||!a)return;let u=parseInt(p.target.dataset.index,10),d=a[u];o(Kn({platformSessionId:i,reply:d,suggestion:t}))},[t,n,o,i]);return jn(M,{onClick:l,className:My(ke.root,{[ke.isUsed]:n,[ke.hasError]:r}),children:[Ke(N,{children:jn(N.Content,{children:[jn(N.Title,{className:ke.title,children:[t.text," ",Ke(ls,{className:ke.label,children:"analyse tool"})," ",r&&Ke("span",{className:ke.errorIcon,role:"img","aria-label":e("sendingError"),title:e("sendingError"),children:"!"})]}),a&&a.length>0&&Ke("ul",{className:ke.quickReplies,children:a.map(p=>Ke("li",{className:ke.quickReply,children:p.title},p.title))})]})}),jn(M.Actions,{fixed:r||n,children:[a&&a.length>0&&Ke(M.DropdownButton,{label:e("answer"),disabled:s,children:a.map((p,u)=>Ke(M.DropdownItem,{index:u,label:p.title,onClick:c},p.title))}),Ke(M.ActionButton,{primary:!0,disabled:n,onClick:l,label:e(n?"suggestionSent":r?"tryAgain":"sendSuggestion")})]})]})},hp=Ny;import{jsx as yp}from"react/jsx-runtime";var Sp=()=>yp("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:yp("path",{d:"M17 13.5v6H5v-12h6m3-3h6v6m0-6-9 9",stroke:"currentColor",strokeWidth:"1.5",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"})});import{useSelector as By}from"react-redux";import{useCallback as Dy}from"react";import{jsx as tt,jsxs as qn}from"react/jsx-runtime";var Hy=({suggestion:t,lines:e,onEdit:o,onUse:n})=>{var d;let s=t.text||t.url||t.message,r=mn(s),i=T(Qe),a=b("showImages"),l=b("fallbackImage"),c=g=>{g.preventDefault(),g.stopPropagation(),n(s)},p=g=>{g.preventDefault(),g.stopPropagation(),o(t)},u=Dy(g=>{window.open(r,"_blank"),g.stopPropagation(),g.preventDefault()},[r]);return qn(M,{onClick:c,"data-testid":"edit-suggestion",children:[qn(N,{children:[a&&t.image&&tt(N.Image,{src:Hn(t,"small",l||void 0),title:t.title}),qn(N.Content,{children:[t.title&&tt(N.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((d=t.searchKeywords)==null?void 0:d.length)>0&&tt(M.Labels,{labels:t.searchKeywords}),tt(N.Content,{cropText:e==="single",lineClamp:e==="multiple",children:s})]})]}),qn(M.Actions,{children:[r&&tt(M.ActionButton,{onClick:u,label:i("visitUrl")}),tt(M.ActionButton,{primary:!0,onClick:p,label:i("preview")}),tt(M.ActionButton,{primary:!0,onClick:c,label:i("useSuggestion")})]})]})},vp=Hy;import{Fragment as Ky,jsx as _p}from"react/jsx-runtime";var Fy=({contentType:t,lines:e,suggestions:o})=>{let n=ne(),s=By(bt),r=a=>{n.send(rr,{state:s,suggestion:a,contentType:t})},i=(a,l)=>{n.send(be,{text:a,suggestion:{...l,source:l.source,sourceText:l.text}})};return _p(Ky,{children:o.map(a=>_p(vp,{suggestion:a,lines:e,onEdit:l=>r(l),onUse:l=>i(l,a)},a.text||a.url||a.message))})},xp=Fy;var jr={};q(jr,{enUS:()=>Uy,nlNL:()=>zy});var Uy={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"}],actions:[{type:0,value:"Shortcuts"}],linkPersonalcollection:[{type:0,value:"Personal Collection"}],linkSummary:[{type:0,value:"Summarize"}],linkKnowledgeSearch:[{type:0,value:"Knowledge Assist"}],linkSearch:[{type:0,value:"Search"}]},zy={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"}],actions:[{type:0,value:"Shortcuts"}],linkPersonalcollection:[{type:0,value:"Personal Collection"}],linkSummary:[{type:0,value:"Gesprek samenvatten"}],linkKnowledgeSearch:[{type:0,value:"Knowledge assist"}],linkSearch:[{type:0,value:"Zoeken"}]};var bp={root:"_root_x0pwe_1",loginText:"_loginText_x0pwe_7",stateText:"_stateText_x0pwe_8",sectionList:"_sectionList_x0pwe_20",shortcutList:"_shortcutList_x0pwe_24",shortcut:"_shortcut_x0pwe_24",link:"_link_x0pwe_52"};import{jsx as Cp}from"react/jsx-runtime";var wp=()=>Cp("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:Cp("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 Tp}from"react/jsx-runtime";var Ep=()=>Tp("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:Tp("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{jsx as L,jsxs as Dt}from"react/jsx-runtime";var Vn=(t,e)=>{let o=J(le);qy(()=>o?e.every(n=>!!n)?t():()=>{}:()=>{},[...e,o])},Wy=()=>{let t=T(jr),e=Vy(),o=b("isEmbedded"),n=S("Widget",bp),s=b("showAutoflows"),r=b("showCustomMessages"),i=b("showPersonalCollectionLink"),a=b("showSummaryCommand"),l=b("showKnowledgeSearch"),c=b("showSearch"),p=J(Pt),u=J(Cn),d=J(Fc),g=J(_n),f=J(qc),m=J(Ro),v=J(dt),w=J(le),h=J(ko),y=J(np),x=J(bt),C=ne(),F=J($a),D=J(Yc("/admin/personal-collection")),Y=b("adminUrl");if(Vn(()=>(e(go(h)),e(Xc(h)),()=>{e(Qc(h))}),[e,v,r,h]),Vn(()=>(e(Ee(h)),e(Kc(h)),()=>{e(Uc(h))}),[e,v,s,h]),Vn(()=>{u.forEach(({type:k})=>{e(k==="entities"?ce():_e(k))})},[e,v,m,p]),Vn(()=>(e(Kr()),()=>{e(tp())}),[e,v,i,m]),v===!1)return L("div",{className:n.stateText,children:L("div",{children:L("p",{children:t("notSupported")})})},"supported");if(w===!1)return L("div",{className:n.loginText,children:L("div",{children:L(Pn,{isEmbedded:o,loginUrl:Y})})},"login");if(!p||!h||w===null||F||y)return L("div",{className:n.stateText,children:L("div",{children:L("p",{children:t("waiting")})})},"waiting");let H=c||a||l||D;return L("div",{className:jy(n.root),"data-testid":"widget",children:Dt(ps,{className:n.sectionList,children:[H&&L(je,{title:t("actions"),type:"shortcuts",children:Dt("div",{className:n.shortcutList,children:[c&&Dt("button",{className:n.shortcut,"data-testid":"shortcut-search",onClick:()=>C.send("ShowCommandPalette",{isOpen:!0}),children:[L(_t,{}),t("linkSearch")]}),a&&Dt("button",{className:n.shortcut,"data-testid":"shortcut-summary",onClick:()=>C.send("ShowCommandPalette",{isOpen:!0,page:"summary"}),children:[L(Ep,{}),t("linkSummary")]}),l&&Dt("button",{className:n.shortcut,"data-testid":"shortcut-knowledge-assist",onClick:()=>C.send("ShowCommandPalette",{isOpen:!0,page:"knowledgeAssist"}),children:[L(wp,{}),t("linkKnowledgeSearch")]}),D&&Dt("a",{className:n.shortcut,target:"_blank",href:D,"data-testid":"shortcut-personal-collection",rel:"noreferrer",children:[L(Sp,{}),t("linkPersonalcollection")]})]})}),r&&f.length>0&&L(je,{type:"custom-messages","data-testid":"custom-messages",children:L(se,{withDivider:!0,children:f.map(k=>L(hp,{suggestion:k},k.text))})}),s&&d.length>0&&L(je,{type:"autoflows",title:t("titleAutoflows"),"data-testid":"autoflows",children:L(se,{withDivider:!0,children:L(cp,{})})}),u.map(({type:k,title:O,amount:G,lines:ts})=>{var ze;switch(k){case"entities":return g&&g.length>0&&L(je,{type:k,title:O,"data-testid":`type-${k}`,children:L(mp,{entities:g})},k);default:return((ze=x[k])==null?void 0:ze.fetchState)==="done"&&x[k].suggestions.length>0&&L(je,{type:k,title:O,"data-testid":`type-${k}`,children:L(se,{withDivider:!0,children:L(xp,{lines:ts,contentType:k,suggestions:x[k].suggestions.slice(0,G)||[]})})},k)}})]})})},kp=Wy;function ho(t){let e=new Range;return e.selectNodeContents(t),e}function Rp(t,e,o){try{return ot(t,e,o),!0}catch{return!1}}function Wn(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function Gn(t){return"tagName"in t&&t.tagName==="BR"}var fo=/[\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(l,c){let p=-1,u=/[\u200B-\u200D\uFEFF]/;if(!u.test(l))return c;for(let d=0;d<=l.length;d++)if(u.test(l[d])||p++,p===c)return d;throw new Error("Offset out of range")}function a(l){switch(l.nodeType){case Node.TEXT_NODE:{let c=l.textContent,p=c.replace(fo,""),u=s+p.length,d=e>=s&&e<=u,g=o>=s&&o<=u;if(d){let f=i(c,e-s);f===0&&!g?n.setStartBefore(l):n.setStart(l,f)}g&&(n.setEnd(l,i(c,o-s)),r=!0),s=u;break}case Node.ELEMENT_NODE:{if(Gn(l)&&(s===e&&n.setStartBefore(l),s++,s===o)){n.setEndAfter(l),r=!0;return}for(let p=0;p<l.childNodes.length&&(a(l.childNodes[p]),!r);p++);let c=l.lastChild;Wn(l)&&c&&!Wn(c)&&!Gn(c)&&s++;break}default:break}}if(a(t),n.startContainer===document)throw new Error("Offsets out of bound");return n}function $n(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,l,c=0;function p(u){let d=u===o,g=u===s;switch(u.nodeType){case Node.TEXT_NODE:{let f=u.textContent;d&&(a=c+f.substring(0,n).replace(fo,"").length),g&&(l=c+f.substring(0,r).replace(fo,"").length),c+=f.replace(fo,"").length;break}case Node.ELEMENT_NODE:{let f=u.nextSibling===null;Gn(u)&&!f&&c++;for(let m=0;m<u.childNodes.length;m++){let v=d&&m===n,w=g&&m===r;if(v&&(a=c),w&&(l=c),l!==void 0||((!v||!i)&&p(u.childNodes[m]),g&&m===r-1&&(l=c),l!==void 0))break}!g&&Wn(u)&&!f&&c++,g&&(l=c);break}default:break}}if(p(t),l===void 0)throw new Error("Could not determine start and end");return{start:a??l,end:l}}function Xn(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 l(c){let p=c===o,u=c===s;switch(p&&i++,c.nodeType){case Node.TEXT_NODE:{if(i!==0)return;let d=p?n:0,g=u?r:void 0,f=c.textContent.replace(fo,"");d===0&&g===void 0?a+=f:a+=f.substring(d,g);break}case Node.ELEMENT_NODE:{let d=c.nextSibling===null;i===0&&Gn(c)&&!d&&(a+=`
4
- `);for(let g=p?n:0;g<(u?Math.min(r,c.childNodes.length):c.childNodes.length)&&(l(c.childNodes[g]),i!==1);g++);!u&&i===0&&Wn(c)&&!d&&(a+=`
5
- `);break}default:break}u&&i++}return l(t),a}function Ip(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var Ht=class extends Me{observer;lastKnownSelection=null;getRootNode(){return this.element.getRootNode()}getText(){let e=new Range;return e.selectNodeContents(this.element),Xn(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!Ip(o)&&(e.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=e.getBoundingClientRect(),e.deleteContents(),!Ip(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let e=this.getRange();if(e)return $n(this.element,e);let o=this.lastKnownSelection;if(o&&Rp(this.element,o.start,o.end))return o;let n=ho(this.element);return n.collapse(!1),$n(this.element,n)}getSelectedText(){let{start:e,end:o}=this.getSelection();return Xn(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(){super.listen(),this.observer=new MutationObserver(()=>{setTimeout(()=>{this.triggerChange()},0)}),this.observer.observe(this.element,{attributes:!0,characterData:!0,childList:!0,subtree:!0});let e=this.element.isContentEditable,o=new MutationObserver(()=>{this.element.isContentEditable!==e&&(e=this.element.isContentEditable,this.emit(this.element.isContentEditable?"enabled":"disabled"))});o.observe(this.element,{attributes:!0,attributeFilter:["contenteditable"]}),this.disposeHandlers.push(()=>o.disconnect())}dispose(){super.dispose(),this.observer&&this.observer.disconnect()}};var qr=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(e)}close(){this.disposeHandlers.forEach(e=>e()),this.broadcastChannel.close()}},Vr=class{constructor(e,o,n){this.name=e;this.targetOrigin=o;this.options=n;this.iframe=this.createIframe(),document.body.appendChild(this.iframe)}iframe;disposeHandlers=[];createIframe(){let e=`deepdesk-iframe-${this.name}`,o=document.getElementById(e);if(o)return o;let n=document.createElement("iframe"),s=`${this.targetOrigin}/v2/widget/liveengage/channel.html`,r=new URLSearchParams({channel:this.name,host:window.location.origin});return this.options.debug&&r.set("debug","1"),n.style.position="absolute",n.style.left="-999em",n.style.width="0px",n.style.height="0px",n.tabIndex=-1,n.id=e,n.title=`iframe-${this.name}`,n.src=`${s}?${r.toString()}`,n}onMessage(e){window.addEventListener("message",e),this.disposeHandlers.push(()=>{window.removeEventListener("message",e)})}postMessage(e){var o;(o=this.iframe.contentWindow)==null||o.postMessage(e,this.targetOrigin)}close(){var e;this.disposeHandlers.forEach(o=>o()),(e=this.iframe)==null||e.remove()}},Wr=class{constructor(e){this.params=e;this.deepdeskUrl=e.deepdeskUrl,this.eventMap=e.eventMap,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(),E.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 Vr(e,this.deepdeskUrl,{debug:!0}):new qr(e),n=s=>{var r,i;s.origin===this.deepdeskUrl&&s.data.type==="event"&&s.data.channel===e&&(E.info("Received broadcast event",this.sessionId,s),(i=(r=this.eventMap)[s.data.name])==null||i.call(r,s.data.payload))};return o.onMessage(n),o}send(e,o){var s,r,i;if(!this.sessionId)return;E.info("broadcast event",{sessionId:this.sessionId,name:e,payload:o});let n={type:"event",name:e,payload:o};(r=(s=this.eventMap)[e])==null||r.call(s,o),(i=this.channel)==null||i.postMessage({...n,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)}},Pp=Wr;var Bt=class extends Error{constructor(o,n){super(o);this.body=n}name="CustomError"};var Gr=t=>new Promise(e=>{setTimeout(e,t)});var Ft=class extends Bt{name="ClientError"},$r=class extends Bt{name="ServerError"},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,{abortLatest:l=!1,attempts:c=1,retryDelay:p=500,refreshTokenOn401:u=!0,retryOnError:d=x=>x instanceof TypeError,retryOnResponse:g=x=>x.status>=500,version:f="v1",...m}=o,v={credentials:"include",...m,headers:{"Content-Type":"application/json",...m.headers}};o.method!==void 0&&o.method!=="GET"&&this.csrfToken&&(v.headers={...v.headers,"X-CSRFToken":this.csrfToken}),typeof f=="string"&&(v.headers={...v.headers,"X-Deepdesk-API-Version":f});let w=c,h=!1;if(!a)throw new Error("fetch is not set");this.latestRequestByUrl[i]&&l&&(this.latestRequestByUrl[i].isAborted=!0,this.latestRequestByUrl[i].reject(new Error("Aborted"))),this.latestRequestByUrl[i]=r;let y=async()=>(w--,a(i,v).then(async x=>g(x)&&!r.isAborted&&w>0?(await Gr(p),y()):x.status===401&&u===!0&&h===!1?(h=!0,await this.refreshToken(),y()):x).catch(async x=>{if(d(x)&&!r.isAborted&&w>0)return await Gr(p),y();throw x}));y().then(x=>x.json().catch(()=>null).then(C=>{x.status>=500?s(new $r("Server Error",C)):x.status===401?s(new Ft("Unauthorized",C)):x.status===403?s(new Ft("Forbidden",C)):x.status===404?s(new Ft("Not Found",C)):x.status>=400&&s(new Ft("Bad Request",C)),delete this.latestRequestByUrl[i],n(C)})).catch(x=>{s(x)})})}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 Gy;(e=>{let t;(l=>(l.SEND_MESSAGE="Send Message",l.HANDLING_TIME="Handling Time",l.START_AUTOFLOW="Start Autoflow",l.ABORT_AUTOFLOW="Abort Autoflow",l.ADD_TO_PERSONAL_COLLECTION="Add to personal collection",l.DELETE_FROM_PERSONAL_COLLECTION="Delete from personal collection"))(t=e.EventType||={})})(Gy||={});function Qn(t){return{...A(t),tags:t.tags}}var Ue=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(),E.info(`Creating conversation for session ${e.sessionId} and agent ${e.agentId}`);let o=await this.client.post("/api/conversations",{...B(e),tags:e.tags},{version:"v2"});return Qn(o)}async getProfile(e){let o=await this.client.get(`/apis/admin/profiles/${e}/`,{version:null});return A(o)}async getContentTypes(){let e=await this.client.get("/apis/admin/content-types/",{version:null});return A(e)}async getPlatformConfig(){let{config:e}=await this.client.get("/platform/config/",{version:null});return A(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(),E.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 Qn(r)}async isConversationSupported(e,o={}){E.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=B(o);o.tags&&(n.tags=o.tags);let s=await this.client.put(`/api/conversations/${e}`,n,{version:"v2"});return Qn(s)}async postMessages(e,o){return(await this.client.post(`/api/conversations/${e}/messages`,o.map(s=>({...B(s),tags:s.tags})),{version:"v2"})).map(s=>Qn(s))}async sendEvent(e,o){let{data:n,...s}=o,r=Object.entries(this.latestReceivedDeepdeskVersions).reduce((i,[a,l])=>({...i,[a]:l}),{});return this.client.post("/api/events",B({...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:B({...o,...n})})}async getEntities(e){return(await this.client.post("/api/entities",{messages:e.filter(n=>n.text)})).entities}async getSummary(e,o={}){return(await this.client.post("/api/summary",{conversation:{messages:e.filter(s=>s.text&&s.source)},prompt_instruction:o.promptInstruction,model:o.model})).summary}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 E.warn(`Invalid token '${e}'`),o})}async authenticateWithKey(e,o){await this.client.post("/apis/admin/session/api-key/",B(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}`,B(o),{abortLatest:!0})).map(r=>({...A(r),text:r.text||r.url||r.message,source:n,type:n})).filter((r,i,a)=>i===a.findIndex(l=>l.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`,B(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 A(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",B(e),{abortLatest:!0});return A(o)}async search(e){let o=await this.client.post(`/api/profiles/${e.profile}/search`,B(e),{version:"v2"});return A(o)}async knowledgeAssist(e,o,n){let s=await this.client.post("/api/knowledge-search/search",B({question:e.question,promptInstruction:e.promptInstruction,profile:n,chatHistory:o.map(r=>({question:r.question,answer:r.answer.answer}))}),{version:"v2"});return A(s)}async requestLoginByEmail(e){let o=await this.client.post("/apis/admin/session/passwordless/request/",{email:e},{version:null});return A(o)}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 A(o)}handleDeepdeskVersionHeaders(e){e.headers.forEach((o,n)=>{let s=n.toLowerCase(),r=s.match(li);if(!o||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&o&&a!==o&&E.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(o)}`),this.latestReceivedDeepdeskVersions[i]=o})}};var yo=class{constructor(e,o){this.url=e;this.options={timeout:25e3,...o}}eventListeners={};options;timeoutTimer;eventSource;proxyEvent(e){this.eventSource.addEventListener(Qs(e),o=>{let{data:n}=o;try{let s=JSON.parse(n);this.emit(e,A(s))}catch{E.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 $y;(e=>{let t;(r=>(r.Started="Started",r.Aborted="Aborted",r.Completed="Completed"))(t=e.AutoflowSessionState||={})})($y||={});var So=class{constructor(e,o={}){this.apiUrl=e;this.client=new he(e,o)}client;streams={};logger=E;async getCustomMessages(e){let o=await this.client.get(`/sessions/${e}/suggestions`);return A(o.suggestions)}async sendCustomMessage(e,o){let n=await this.client.post(`/sessions/${e}/messages`,B(o));return A(n)}async answerCustomMessage(e,o){await this.client.post(`/sessions/${e}/answers`,B(o))}async getAutoflows(e){let o=await this.client.get(`/sessions/${e}/autoflows`);return A(o.autoflows)}async startAutoflowSession(e){let o=await this.client.post("/autoflow-sessions",B(e));return A(o)}async stopAutoflowSession(e){await this.client.delete(`/autoflow-sessions/${e}`)}openStream(e){return this.streams[e]||(this.streams[e]=new yo(`${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 tS,configureStore as oS}from"@reduxjs/toolkit";import{createSlice as Xy}from"@reduxjs/toolkit";var Ap={startTime:null,stopTime:null},Lp=Xy({name:"handlingTime",initialState:Ap,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(R,()=>Ap)}}),{handlingTimeStart:Mp,handlingTimeStop:Zn,handlingTimeReset:Op}=Lp.actions,Np=Lp.reducer;var Dp=(t={})=>{let e={onAuthError:Tt(!1),...t};return o=>n=>s=>("error"in s&&s.error.message==="Unauthorized"&&o.dispatch(e.onAuthError),n(s))};import{createAsyncThunk as Qy,createSlice as Zy}from"@reduxjs/toolkit";var Jn={list:{keywordMatches:[]},fetchState:"idle",isInitialRequest:null};var nt=Qy("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 Jn.list;if(!r)throw new Error("No current conversation to fetch pinned messages");return o.getStyleSuggestions({profileCode:r,message:t})}),Jy=Zy({name:"styleSuggestions",initialState:Jn,reducers:{},extraReducers:t=>{t.addCase(nt.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(nt.rejected,e=>{e.fetchState="error"}).addCase(nt.fulfilled,(e,o)=>{e.fetchState="done",Ie(e.list,o.payload)||(e.list=o.payload)}).addCase(We,e=>{e.list=Jn.list}).addCase(R,()=>Jn)}}),Hp=Jy.reducer;var Bp=(t={})=>{let e,o=!0,n={getStyleSuggestions:nt,debounce:500,...t};return s=>r=>i=>{var g;let a=s.getState().input.text,l=r(i),c=s.getState();if(c.auth.isLoggedIn!==!0)return l;let{showStyleSuggestions:p}=c.settings;if(!((g=c.conversation.current)==null?void 0:g.id)||!p)return l;let{text:d}=c.input;return d===a&&!o||(clearTimeout(e),d==="")||(e=setTimeout(()=>{o=!1,s.dispatch(n.getStyleSuggestions({text:d}))},t.debounce)),l}};function Yy(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var Fp=(t={})=>{let e={getTextSuggestions:_e,getAutocompleteSuggestions:eo,debounce:200,check:Lt,...t},o;return n=>s=>r=>{var m;let{input:{userCommitted:i}}=n.getState(),a=s(r),l=n.getState();if(l.auth.isLoggedIn!==!0)return a;let{recommendTextSuggestions:c,showTabCompletion:p}=l.settings,u=(m=l.conversation.current)==null?void 0:m.id,d=r.type===yn.toString();if(!u||!c&&!p)return a;let{input:{userCommitted:g}}=l;return Yy(g,i)&&!d||(clearTimeout(o),!e.check(l))||(o=setTimeout(()=>{let v=gt(l);v===""?n.dispatch(e.getTextSuggestions("default")):n.dispatch(e.getAutocompleteSuggestions(v))},d?0:e.debounce)),a}};var Kp=nt.fulfilled.toString();function eS(t,e){let o=new Set([...e.keywordMatches.map(s=>s.keyword)]),n=[];return o.forEach(s=>{let r=t.keywordMatches.filter(l=>l.keyword===s),i=e.keywordMatches.filter(l=>l.keyword===s),a=i.length-r.length;a<=0||n.push(...i.slice(0,a))}),n}var Up=t=>e=>o=>n=>{var c;if(n.type!==Kp){o(n);return}let s=e.getState().styleSuggestions.list;o(n);let r=e.getState(),i=r.styleSuggestions.list,a=(c=r.conversation)==null?void 0:c.current;if(s===i)return;let l=eS(s,i);n.type===Kp&&l.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:l}})};var nS=tS({activeSuggestion:sl,answer:Vl,auth:yl,autoflows:zc,conversation:mi,contentTypes:Rl,customMessages:Zc,exchangeToken:op,entities:Al,handlingTime:Np,info:ka,input:Ss.reducer,overlayInput:$.reducer,settings:pi,profile:Ql,search:Ma,summary:Bl,styleSuggestions:Hp,ui:ll,textSuggestions:Ya});function zp(t){return oS({reducer:nS,middleware:e=>[...e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI,deepdeskBrokerAPI:t.deepdeskBrokerAPI}},serializableCheck:!1}),Dp(),Fp({debounce:200}),Bp({debounce:500}),Up(t.deepdeskAPI),...t.middleware?t.middleware:[]],preloadedState:t.preloadedState})}var sS=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=ms("inlineSuggestions")(s);switch(n.type){case xe.toString():{let l=Ga(n.payload.contentType)(e.getState()),c=l.indexOf(n.payload.suggestion);t.emit("edit-suggestion",{contentType:n.payload.contentType,index:c,suggestions:l});break}case Tt.toString():{!n.payload&&t.emit("logout",void 0);break}case re.toString():{let{start:l,end:c}=s.input.selection;t.emit("select-suggestion",{type:sS(n.payload.suggestion),...n.payload,replace:n.payload.replace==="selection"?{start:l,end:c}:{start:0,end:c}},{mayApplyChanges:!0});break}case No.toString():{let{start:l,end:c}=s.input.selection;t.emit("replace",{...n.payload,replace:n.payload.replace==="selection"?{start:l,end:c}:{start:0,end:c}},{mayApplyChanges:!0});break}case jt.toString():{let l=e.getState(),{text:c,selection:p}=l.input.userCommitted;t.emit("reset",{text:c,selectionAfter:p},{mayApplyChanges:!0});break}case Fo.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 ce.fulfilled.toString():n.payload.length>0&&t.sendEvent("entities found",{conversationId:s.conversation.current.id,data:{entities:n.payload}});break;case Ce.fulfilled.toString():t.sendEvent("conversation summarized",{conversationId:s.conversation.current.id,data:{summary:n.payload.summary}});break;case z.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 Do.toString():t.handleKeyDown(n.payload);break;case We.toString():t.logSendMessage(n.payload);break;case Ho.toString():t.logSendEditSuggestionMessage(n.payload);break;case Bo.toString():t.handleInputChanged(n.payload);break;default:break}let i=o(n);switch(n.type){case We.toString():t.handleAfterSendMessage(n.payload);break;case to.toString():t.onUpdateShowTabHint(n.payload);break;case Zn.toString():t.logHandlingTime();break;case re.toString():{r&&(e.dispatch(ue([])),e.dispatch(Le()));break}case ue.toString():{r&&n.payload.length>0&&e.dispatch(Ae(0));break}default:break}return i},jp=rS;function Xr(t){return t.toISOString().replace("T"," ").replace("Z","")}function qp(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:Xr(o),timeStop:Xr(n)}}function Qr(t,e,o){var D,Y,H;let{text:n,metrics:{numCharsTyped:s,numCharsPasted:r,numCharsCut:i,numCharsDeleted:a,numPaste:l,agentStartedTypingTimestamp:c,externalTimeTotalSeconds:p,pastes:u,cuts:d,deletions:g,textSuggestions:f,offeredTextSuggestions:m}}=e[t],v=n.length,h=f.reduce((k,{text:O,searchTerm:G})=>k+O.length-(G?G.length:0),0),y=c??Date.now(),x=(Date.now()-y)/1e3+(p||0),C=s/x,F=f.reduce((k,{searchTerm:O})=>k+(O?O.length:0),0);return{conversationId:e.conversation.current.id,source:"agent",text:n,clientVersion:o.version,pastes:u,cuts:d,deletions:g,lenTextTyped:s+F,lenTextTotal:v,lenTextAssisted:h,lenTextPasted:r,lenTextCut:i,lenTextDeleted:a,timeTotalSeconds:x,charsPerSecond:C,numPastes:l,textSuggestionsV2:f,suggestionsCounters:[{source:"gpt",countOffered:m.filter(k=>k.source==="gpt").length}],agentId:(D=e.info.agentInfo)==null?void 0:D.agentId,agentName:(Y=e.info.agentInfo)==null?void 0:Y.agentName,agentEmail:(H=e.info.agentInfo)==null?void 0:H.agentEmail}}function Vp(t,e){let o=t.closest(e);if(o)return o;let n=t.getRootNode().host;return n instanceof HTMLElement?Vp(n,e):null}function Wp(t,e){return Vp(t,e)}function Gp(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function iS(t){return typeof t=="object"&&t!==null&&"tagName"in t}function Zr(t){return iS(t)&&(Fe(t)||tn(t))}var $p=(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{E.warn("[Deepdesk] SessionStorage is blocked by browser")}}});function aS(t){return t.offsetParent!==null}function Xp(t){if(!aS(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 Jr(t,e,o=100){let n=Xp(t);e({isVisible:n});let s=setInterval(()=>{let r=Xp(t);r!==n&&(n=r,e({isVisible:n}))},o);return()=>{clearTimeout(s)}}import{jsx as W}from"react/jsx-runtime";var Qp=$p("showTabHint",!0),es=class t{static version="10.6.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:l}){let c=e.replace(/\/api$/,"");this.deepdeskApi=new Ue(c,{token:r,fetch:i}),this.version=n,this.instanceId=t.count++;let p={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[jp({emit:(u,d,g)=>this.emit(u,d,g),handleAfterSendMessage:u=>this.handleAfterSendMessage(u),handleInputChanged:u=>this.handleInputChanged(u),handleKeyDown:u=>this.handleKeyDown(u),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:u=>this.logSendMessage(u),logSendEditSuggestionMessage:u=>this.logSendEditMessage(u),onUpdateShowTabHint:u=>Qp.update(u),sendEvent:(u,d)=>this.deepdeskApi.sendEvent(u,d)})]};o&&Object.assign(p,{deepdeskBrokerAPI:new So(o)}),this.store=zp(p),this.broadcastEvents=new Pp({debug:!0,deepdeskUrl:c,eventMap:Sl(this.store),createCustomChannel:l}),this.store.dispatch(zt),this.store.dispatch(to(Qp.value())),this.store.dispatch(zt({locale:s,adminUrl:c,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?(E.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(E.warn("Profile has not been loaded (yet)"),!0):(E.warn("No conversation loaded (yet)"),!0)}login(){return this.store.dispatch(Tt(null)),this.store.dispatch(Be()),new Promise(e=>{let o=this.store.subscribe(()=>{let n=this.store.getState();le(n)&&ul(n)!=="loading"&&e()});this.unmountHandlers.push(()=>{o()})})}isLoggedIn(){return this.deepdeskApi.isLoggedIn()}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){E.warn("Failed to attach user:",o)}}async isConversationSupported(e,o){return(await this.store.dispatch(hs({sessionId:e,options:o}))).payload}async createConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(Io(e))).payload}async getConversationBySessionId(e,o){return this.hasConversation()&&this.sessionId()!==e&&this.resetConversation(),(await this.store.dispatch(Po({sessionId:e,options:o}))).payload}async upsertConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(ys(e))).payload}async postMessages(e){return(await this.store.dispatch(Lo(e))).payload}async updateConversation(e){return(await this.store.dispatch(Ao(e))).payload}resetConversation(){this.store.dispatch(R()),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(zt(e))}setVisitorInfo(e){this.store.dispatch(Ea(e))}async setAgentInfo(e){await this.store.dispatch(Zt(e))}async setAgentSettings(e){await this.store.dispatch(Js(e))}async getAgentSettings(){return(await this.store.dispatch(Ys())).payload}async refresh(){if(this.shouldAbort())return Promise.resolve();this.inputMediator&&this.handleInputChanged(this.inputMediator.getText());let e=[];return this.store.dispatch(yn()),e.push(this.refreshWidgetSuggestions()),Promise.all(e).then(()=>{})}notifyInputChanged(e){this.store.dispatch(Bo(e))}notifyKeyDown(e){this.store.dispatch(Do(e))}notifyPaste(e,o){this.store.dispatch(Ti({text:e,selectionText:o}))}notifyCut(e){this.store.dispatch(Ci(e))}notifyExternalSuggestion(e){this.store.dispatch(re(e)),this.store.dispatch(Le())}notifyEditSuggestion(e){this.store.dispatch(Za(e.contentType,e.suggestions)),this.store.dispatch(xe({contentType:e.contentType,suggestion:typeof e.index=="number"?e.suggestions[e.index]:null}))}handleInputChanged(e){let{overlayCollapsed:o,openOverlayWhenTyping:n}=this.state.ui;o&&n&&this.store.dispatch(He({collapse:!1})),this.inputMediator&&this.store.dispatch(yi({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,l=s!==-1;if(this.store.dispatch(wi(Oo(e))),e.key!=="Tab"&&!this.settings.showTextSuggestions)return;let c=()=>{o||!a||r&&(e.shiftKey||(this.store.dispatch(_i()),i||this.stageSelectedSuggestion({inputType:"arrow"}),e.preventDefault()))},p=()=>{if(o||!a||!r||e.shiftKey)return;this.store.dispatch(bi());let{selectedSuggestionIndex:u}=this.state.input;e.preventDefault(),!i&&(u===-1?this.store.dispatch(jt()):this.stageSelectedSuggestion({inputType:"arrow"}))};switch(e.key){case"Up":case"ArrowUp":i?p():c();return;case"Down":case"ArrowDown":{i?c():p();return}case"Esc":case"Escape":{i&&l&&this.store.dispatch(Ae(-1)),this.state.input.selectedSuggestionIndex!==-1?(this.store.dispatch(Ae(-1)),this.store.dispatch(jt()),e.preventDefault()):o||(this.store.dispatch(He({collapse:!0})),this.store.dispatch(il(!0)),e.preventDefault());return}case"Tab":{let{userCommitted:u}=this.state.input,d=u.text.substring(0,u.selection.end),{tabCompletionSuggestion:g}=this.state.input;this.store.dispatch(to(!1)),this.state.input.selectedSuggestionIndex>-1?this.stageSelectedSuggestion({inputType:"tab"}):!i&&this.settings.showTabCompletion&&g&&g.text.startsWith(d)&&(this.store.dispatch(re({text:g.text,suggestion:g,eventMetrics:{inputType:"tab"},replace:"until-selection-end"})),this.store.dispatch(Le())),e.preventDefault();break}default:}}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(Ei()),this.store.dispatch(ue([]))}handlingTimeStart(){this.state.handlingTime.startTime||(E.info("Start handling time"),this.store.dispatch(Mp()))}handlingTimeStop(){this.state.handlingTime.startTime&&(E.info("Stop handling time"),this.store.dispatch(Zn()))}logSendMessage(e){let o=Qr("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)}logSendEditMessage(e){let o=Qr("overlayInput",this.state,{version:this.version});e&&Object.assign(o,{text:e}),this.store.dispatch(vi(this.state.overlayInput.metrics))}logHandlingTime(){let e=qp(this.state,{version:this.version});this.deepdeskApi.sendEventV1("Handling Time",e),this.store.dispatch(Op())}notifySubmit(e={}){this.shouldAbort()||(this.store.dispatch(Le()),this.store.dispatch(We(e.text??this.state.input.text)))}stageSelectedSuggestion(e){let o=this.state.input.selectedSuggestionIndex,{textSuggestions:n}=this.state.input;this.store.dispatch(re({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){E.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),E.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]=St(o,n);return r.setAttribute("translate","no"),r.dataset.testid=e,s&&r.classList.add(s),this.unmountHandlers.push(()=>{Yn(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,l]=St(r,{appendTo:document.body});a.dataset.testid=o,a.style.zIndex="2",a.appendChild(n),this.unmountHandlers.push(()=>{Yn(s),l()})}else document.body.appendChild(n);return s}createContainer(e,o=document.body){let n=window.getComputedStyle(o),s=document.createElement("div");return $e(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(()=>{Yn(s),s.remove()}),s}mount(e,o={}){if(this.isMounted)throw new Error("[Deepdesk] This instance was already mounted. Make sure to unmount before you remount.");if(!Zr(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:l,showSuggestionsBeforePattern:c,showSuggestionsAfterPattern:p,isEmbedded:u,detectSubmit:d,insertLink:g,inputMediator:f,closestScrollSelector:m,appendOverlayTo:v,inlineSuggestions:w}=o;if(this.configure({showStyleSuggestions:s,showTabCompletion:r,textSuggestionsCount:a,showMidSentenceSuggestions:l,showSuggestionsBeforePattern:c,showSuggestionsAfterPattern:p,showTextSuggestions:i,insertLink:g,isEmbedded:u,inlineSuggestions:w}),o.automaticHandlingTime&&this.setupHandlingTime(e),$e(e),this.inputMediator=f||(Fe(e)?new Oe(e):new Ht(e)),this.inputMediator.on("change",({plainText:y})=>{this.notifyInputChanged(y)}),this.inputMediator.on("updated",()=>{this.inputMediator&&this.store.dispatch(ki({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()}))}),this.inputMediator.on("keydown",y=>{this.notifyKeyDown(y)}),this.inputMediator.on("paste",({pastedText:y,selectionText:x})=>{this.notifyPaste(y,x)}),this.inputMediator.on("cut",({selectionText:y})=>{this.notifyCut(y)}),w){if(Fe(e))throw new Error("[Deepdesk] Inline suggestion is not supported for textarea yet.");let y=this.createInlineContainer(e,"deepdesk-caret");vo(W(Mt,{store:this.store,customStyles:n,children:W(wt,{broadcastEvents:this.broadcastEvents,children:W(ic,{})})}),y),this.inputMediator.on("caret",x=>{this.store.dispatch(ue([])),x?(y.style.display="block",y.style.top=`${x.top}px`,y.style.left=`${x.left}px`):y.style.display="none"})}else{let y=m&&Wp(e,m)||void 0,x=this.overlayContainerFactory("deepdesk-tab-completion",y||e,{appendTo:v,closestScrollElement:y,mirrorOverflow:!0,onRemove:()=>this.unmount()},n==null?void 0:n.rootNode),C=this.overlayContainerFactory("deepdesk-suggestions-overlay",y||e,{appendTo:v},n==null?void 0:n.suggestionsRootNode);vo(W(Mt,{store:this.store,customStyles:n,children:W(wt,{broadcastEvents:this.broadcastEvents,children:W(Dc,{inputElement:e})})}),x),vo(W(Mt,{store:this.store,customStyles:n,children:W(wt,{broadcastEvents:this.broadcastEvents,children:W(fc,{})})}),C)}vo(W(Mt,{store:this.store,customStyles:n,children:W(wt,{broadcastEvents:this.broadcastEvents,children:W(ec,{})})}),this.createContainer("deepdesk-overlays"));let h;this.inputMediator.on("selection",y=>{clearTimeout(h),y===null?h=setTimeout(()=>{y!==null&&this.store.dispatch(vs(y))},500):this.store.dispatch(vs(y))}),this.inputMediator.on("disabled",()=>{var y;(y=this.inputMediator)==null||y.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{d&&this.notifySubmit()}),this.inputMediator.on("blur",()=>this.store.dispatch(Ct(!1))),this.inputMediator.on("focus",()=>this.store.dispatch(Ct(!0))),this.store.dispatch(Si({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),this.whenConversationLoaded(()=>{var y;this.refresh(),this.broadcastEvents.setSessionId((y=this.state.conversation.current)==null?void 0:y.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&&E.warn("A widget was already rendered for this instance. Make sure to unmountWidget before rerendering"),!this.shouldRender)return;let{customStyles:n,showImages:s,showPersonalCollectionLink:r,isEmbedded:i}=o;this.widgetRoot=e,this.configure({showImages:s,showPersonalCollectionLink:r,isEmbedded:i}),vo(W(Mt,{store:this.store,customStyles:n,children:W(wt,{broadcastEvents:this.broadcastEvents,children:W(kp,{})})}),e),this.whenConversationLoaded(()=>{var a;this.broadcastEvents.setSessionId((a=this.state.conversation.current)==null?void 0:a.sessionId)})}unmountWidget(){this.widgetRoot&&Yn(this.widgetRoot),this.widgetRoot=null}setupHandlingTime(e){let o=Jr(e,({isVisible:n})=>{n?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),o()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){Gp(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfigPromise=null;loadProfileConfig(){return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(this.loadProfileConfigPromise=Promise.resolve().then(async()=>{await this.store.dispatch(io());let e=Pt(this.state);e&&this.store.dispatch(zt({showSearch:e.search,showAutoflows:e.autoflows,showCustomMessages:e.customMessages,showImageSearch:e.imageSearch,showEntitiesCommand:e.entitiesCommand,showSummaryCommand:e.summarizer,showKnowledgeSearch:e.knowledgeAssistForAgents,recommendTextSuggestions:e.recommendTextSuggestions}))}),this.loadProfileConfigPromise)}async checkForTrialMode(e){try{let{account:o}=await this.deepdeskApi.getPlatformConfig();if(!o.isTrial){this.shouldRender=!0;return}if(E.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;E.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=Cn(this.state);try{o.forEach(({type:n})=>{n==="entities"?this.store.dispatch(ce()):this.store.dispatch(_e(n))})}catch(n){this.handleError(n)}}};async function lS(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},l=()=>{if(o.setValue)return o.setValue(i);t.value=i};return Promise.resolve(l()).then(()=>{t.selectionStart=a.start,t.selectionEnd=a.end,t.blur(),t.focus()})}async function cS(t,e,o={}){let n=o.replace?ot(t,o.replace.start,o.replace.end):ho(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(`
3
+ `,Ge.MISSING_INTL_API,i);var x=o.getPluralRules(e,{type:p.pluralType}).select(d-(p.offset||0));y=p.options[x]||p.options.other}if(!y)throw new ks(p.value,d,Object.keys(p.options),i);a.push.apply(a,Gt(y.value,e,o,n,s,d-(p.offset||0)));continue}}return fd(a)}function yd(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 Sd(t,e){return e?Object.keys(t).reduce(function(o,n){return o[n]=yd(t[n],e[n]),o},ee({},t)):t}function Rs(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,o){t[e]=o}}}}}function vd(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:Zo(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.NumberFormat).bind.apply(e,Ko([void 0],o,!1)))},{cache:Rs(t.number),strategy:Jo.variadic}),getDateTimeFormat:Zo(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.DateTimeFormat).bind.apply(e,Ko([void 0],o,!1)))},{cache:Rs(t.dateTime),strategy:Jo.variadic}),getPluralRules:Zo(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.PluralRules).bind.apply(e,Ko([void 0],o,!1)))},{cache:Rs(t.pluralRules),strategy:Jo.variadic})}}var Ui=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(c){var p=r.formatToParts(c);if(p.length===1)return p[0].value;var u=p.reduce(function(d,g){return!d.length||g.type!==j.literal||typeof d[d.length-1]!="string"?d.push(g.value):d[d.length-1]+=g.value,d},[]);return u.length<=1?u[0]||"":u},this.formatToParts=function(c){return Gt(r.ast,r.locales,r.formatters,r.formats,c,void 0,r.message)},this.resolvedOptions=function(){var c;return{locale:((c=r.resolvedLocale)===null||c===void 0?void 0:c.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,l=Mi(i,["formatters"]);this.ast=t.__parse(e,ee(ee({},l),{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=Sd(t.formats,n),this.formatters=s&&s.formatters||vd(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=Di,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 bd(t,e){return e.split(".").reduce((o,n)=>o?o[n]:void 0,t)}var Cd="dummy",Is=_d(null);function T(t){let e=xd(Is);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=bd(o,n);return r?new Ui(r).format(s):(e!==Cd&&console.warn(`${n} does not exist in messages of ${e}`),`[${n}]`)}}import{jsx as zi,jsxs as wd}from"react/jsx-runtime";var Yo=()=>wd("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[zi("title",{id:"angleLeftTitle",children:"AngleLeft"}),zi("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 ji,jsxs as Td}from"react/jsx-runtime";var qi=()=>Td("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleRightTitle",children:[ji("title",{id:"angleRightTitle",children:"AngleRight"}),ji("path",{d:"M64 448c-8.188 0-16.38-3.125-22.62-9.375c-12.5-12.5-12.5-32.75 0-45.25L178.8 256L41.38 118.6c-12.5-12.5-12.5-32.75 0-45.25s32.75-12.5 45.25 0l160 160c12.5 12.5 12.5 32.75 0 45.25l-160 160C80.38 444.9 72.19 448 64 448z"})]});import{useEffect as Xt,useRef as Fs,useState as Xd}from"react";import{useDispatch as Qd}from"react-redux";import{Interweave as ca}from"interweave";import pa from"classnames";var Ps={root:"_root_kxnai_1",agentText:"_agentText_kxnai_3",textInput:"_textInput_kxnai_8",textInputWrapper:"_textInputWrapper_kxnai_27",alert:"_alert_kxnai_31",alertText:"_alertText_kxnai_50",warning:"_warning_kxnai_60",success:"_success_kxnai_69"};import{Matcher as Id}from"interweave";import Pd from"classnames";import{useEffect as Ed,useRef as kd,useState as Rd}from"react";function Vi(t,e){let o;return[(...n)=>{window.cancelAnimationFrame(o);let s=e?e(...n):n;o=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(o)]}function en(t){let e=kd(null),[o,n]=Rd(!1);return Ed(()=>{let s=!1,r=parseFloat(window.getComputedStyle(document.body).zoom??"1"),[i,a]=Vi((p,u)=>{let d=e.current;if(!d)return;let g=p/r,f=u/r,m=d.getBoundingClientRect(),v=g>m.x&&g<m.x+m.width&&f>m.y&&f<m.y+m.height;v&&!s?(s=!0,n(!0)):!v&&s&&(s=!1,n(!1))},({clientX:p,clientY:u})=>[p,u]),[l,c]=Vi(()=>{s=!1,n(!1)});return t.addEventListener("mousemove",i),t.addEventListener("mouseleave",l),()=>{a(),c(),t.removeEventListener("mousemove",i),t.removeEventListener("mouseleave",l)}},[e]),[e,o]}var Se={root:"_root_81non_1",container:"_container_81non_3",agentText:"_agentText_81non_5",tabText:"_tabText_81non_6",hint:"_hint_81non_6",matchSelection:"_matchSelection_81non_10",focus:"_focus_81non_16",resetIndent:"_resetIndent_81non_20",matchKeyword:"_matchKeyword_81non_24",matchPlaceholder:"_matchPlaceholder_81non_25",hover:"_hover_81non_31",hintText:"_hintText_81non_64",popover:"_popover_81non_72",popoverRoot:"_popoverRoot_81non_77",popoverContentContainer:"_popoverContentContainer_81non_81",popoverContent:"_popoverContent_81non_81",selectionOptions:"_selectionOptions_81non_107",selectionOptionsIsHidden:"_selectionOptionsIsHidden_81non_112",selectionOptionsButton:"_selectionOptionsButton_81non_116",caret:"_caret_81non_132",popoverSuggestionsRoot:"_popoverSuggestionsRoot_81non_136",suggestionsOverlayInputStyles:"_suggestionsOverlayInputStyles_81non_141"};import{jsx as Wi}from"react/jsx-runtime";var Ad=({inputElement:t,children:e})=>{let o=S("TabCompletion",Se),[n,s]=en(t);return Wi("mark",{ref:n,className:Pd(o.matchPlaceholder,{[o.hover]:s}),children:e})},ft=class extends Id{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 Wi(Ad,{inputElement:o.inputElement,children:e},`placeholder_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import{useEffect as Ld,useRef as Md,useState as Od}from"react";function tn(t){return t.contentEditable==="true"}function Nd(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 Gi(t){let{selectionStart:e,selectionEnd:o}=tn(t)?Nd(t):t;return[e,o]}function on(t){let[,e]=Od(),o=Md(null);return o.current=Gi(t),Ld(()=>{let n=()=>{let[s,r]=o.current??[],i=Gi(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 nn(t,e){if(!e)return;let o=t,{value:n}=o,[s,r]=e,i=n.match(pt);if(!i||i.length===0)return;let a=0;i.find(l=>{let c=n.indexOf(l,a);return s>c&&r<c+l.length?(o.selectionStart=c,o.selectionEnd=c+l.length,!0):(a=c+l.length,!1)})}import{useEffect as Dd}from"react";function ht(t){Dd(()=>{let e=o=>{o.isWithinRoot||t(o)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function $e(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}var $i,de=new Map,Hd=["bottom","height","left","right","top","width"],Bd=(t={},e={})=>Hd.some(o=>t[o]!==e[o]);function Xi(t){var o,n;let e=((n=(o=t.ownerDocument)==null?void 0:o.defaultView)==null?void 0:n.frameElement)??null;return e?[e,...Xi(e)]:[]}function Qi(t,e){return!t||!e?null:{...t,top:t.top+e.top,left:t.left+e.left}}var sn=!1,Zi=()=>{sn=!0;let t=[];if(de.forEach((e,o)=>{if(!o.isConnected){e.rect=null,t.push(e),de.delete(o);return}let n=o.getBoundingClientRect();Bd(n,e.rect)&&(e.rect=n,t.push(e))}),t.forEach(e=>{let o=e.parentRects?e.parentRects.reduce(Qi,e.rect):e.rect;e.callbacks.forEach(n=>n(o))}),de.size===0){sn=!1;return}$i=window.requestAnimationFrame(Zi)};function As(t,e){let o=Xi(t),n=[],s=o.map((r,i)=>As(r,a=>{n[i]=a;let l=de.get(t);if(!l)return;let c=n.reduce(Qi,l.rect);l.callbacks.forEach(p=>p(c))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),de.has(t)){let i=de.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else de.set(t,{rect:void 0,callbacks:[e],parentRects:n});r&&!sn&&Zi()},unobserve(){s.forEach(i=>i.unobserve());let r=de.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||de.delete(t),de.size||(cancelAnimationFrame($i),sn=!1)}}}}var Ji,ge=new Map,Yi=()=>{ge.forEach((t,e)=>{if(!e.isConnected){ge.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)))}),ge.size!==0&&(Ji=window.requestAnimationFrame(Yi))};function ea(t,e){return{observe(){let o=ge.size===0;ge.has(t)?ge.get(t).callbacks.push(e):ge.set(t,{visible:void 0,callbacks:[e]}),o&&Yi()},unobserve(){let o=ge.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||ge.delete(t),ge.size||cancelAnimationFrame(Ji)}}}}var Ls=["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 Ms(t,e,o){return o.forEach(n=>{e.style[n]=t[n]})}function yt(t){return parseFloat(t)}function rn(t){return Math.round(t*1e6)}function ta(t){return t/1e6}function Os(t,e,o){if(t.boxSizing==="content-box")return;let{clientWidth:n}=e,s=yt(t.width),r=yt(t.borderLeftWidth),i=yt(t.borderRightWidth),a=yt(t.paddingRight),l=ta(rn(s)-rn(r)-rn(i)),c=ta(rn(n));if(l-c>2){let p=l-c;o.style.paddingRight=`${a+p}px`}}function St(t,e={}){var l;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",$e(o);let n=window.getComputedStyle(t),s=!0,r=()=>{o.scrollTop=t.scrollTop};Ms(n,o,Ls),Os(n,t,o),e.mirrorOverflow&&(o.style.overflow="hidden",t.addEventListener("scroll",r));let i=ea(t,()=>{Ms(n,o,Ls),Os(n,t,o),r(),setTimeout(r,0)}),a=As(t,c=>{if(c===null){e.onRemove&&e.onRemove(),o.remove();return}if(c.height===0&&c.width===0){if(s===!0)return;e.onHide&&e.onHide(),o.style.display="none",s=!0;return}if(Ms(n,o,Ls),Os(n,t,o),r(),o.style.top=`${c.top}px`,o.style.left=`${c.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let p=e.closestScrollElement.getBoundingClientRect(),u=window.getComputedStyle(e.closestScrollElement),d=yt(u.borderTopWidth),g=yt(u.borderBottomWidth),f=p.top+d-c.top,m=c.top+c.height+-(p.top+p.height-g);o.style.clipPath=`inset(${f}px 0px ${m}px 0px)`}s&&(o.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(o):(l=t.parentElement)==null||l.appendChild(o),a.observe(),i.observe(),[o,()=>{t.removeEventListener("scroll",r),a.unobserve(),i.unobserve()}]}var Ns={};q(Ns,{enUS:()=>Fd,nlNL:()=>Kd});var Fd={placeholders:[{type:6,value:"placeholderSize",options:{"=0":{value:[{type:0,value:"No placeholders found"}]},one:{value:[{type:0,value:"There is one placeholder in your message"}]},other:{value:[{type:0,value:"There are "},{type:7},{type:0,value:" placeholders in your message"}]}},offset:0,pluralType:"cardinal"}]},Kd={placeholders:[{type:6,value:"placeholderSize",options:{"=0":{value:[{type:0,value:"Alle placeholders zijn uit je bericht"}]},one:{value:[{type:0,value:"Er is 1 placeholder in jouw bericht"}]},other:{value:[{type:0,value:"Er zijn "},{type:7},{type:0,value:" placeholders in jouw bericht"}]}},offset:0,pluralType:"cardinal"}]};import{jsx as oa,jsxs as Ud}from"react/jsx-runtime";var na=()=>Ud("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 512 512","aria-labelledby":"circleCheckTitle",children:[oa("title",{id:"circleCheckTitle",children:"Check"}),oa("path",{d:"M243.8 339.8C232.9 350.7 215.1 350.7 204.2 339.8L140.2 275.8C129.3 264.9 129.3 247.1 140.2 236.2C151.1 225.3 168.9 225.3 179.8 236.2L224 280.4L332.2 172.2C343.1 161.3 360.9 161.3 371.8 172.2C382.7 183.1 382.7 200.9 371.8 211.8L243.8 339.8zM512 256C512 397.4 397.4 512 256 512C114.6 512 0 397.4 0 256C0 114.6 114.6 0 256 0C397.4 0 512 114.6 512 256zM256 48C141.1 48 48 141.1 48 256C48 370.9 141.1 464 256 464C370.9 464 464 370.9 464 256C464 141.1 370.9 48 256 48z"})]});import{jsx as sa}from"react/jsx-runtime";var ra=()=>sa("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",fill:"currentColor",children:sa("path",{d:"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224c0-17.7-14.3-32-32-32s-32 14.3-32 32s14.3 32 32 32s32-14.3 32-32z"})});function zd(t){let e=t.scrollHeight>t.clientHeight,n=window.getComputedStyle(t).overflowY.indexOf("hidden")!==-1;return e&&!n}function an(t){return t?t instanceof ShadowRoot?an(t.host):t===t.ownerDocument.body?t.ownerDocument:zd(t)?t:an(t.parentNode):document.body}var ia=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(ia||{}),Me=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();Ie(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(ia).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(){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 e=new MutationObserver(()=>{this.element.isConnected||(this.emit("unmounted"),this.dispose())});e.observe(document.body,{subtree:!0,childList:!0}),this.disposeHandlers.push(()=>{e.disconnect()});let o=an(this.element);if(o){let n=()=>{this.currentCaret!==null&&(this.currentCaret=null,this.emit("caret",null))};o.addEventListener("scroll",n),this.disposeHandlers.push(()=>{o.removeEventListener("scroll",n)})}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}};var Oe=class extends Me{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())}};var jd=/[.*+?^${}()|[\]\\]/g,qd=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function Vd(t){return t.replace(jd,"\\$&")}function Wd(t,e){let o=t.split("").findIndex((n,s)=>n!==e[s]);return o>-1?o:Math.min(t.length,e.length)}function Gd(t){return t.search(qd)}function aa(t,e=[]){let o=t;return e.forEach(n=>{if(!n)return;let s=new RegExp(`\\b(${Vd(n)})\\b`,"gi");o=o.replace(s,"<strong>$1</strong>")}),o}function la(t){return t.replace(pt,'<mark data-type="placeholder">$1</mark>')}function $t(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function $d(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 Ds(t,e,o={}){if(e){let n=Wd(e.toLowerCase(),t.toLowerCase()),s=$t(t.substring(n,t.length));if(o.stripAgentPart){let l=t.substring(0,n),c=Gd(l);return`<span style="opacity: 0.5">${l.substring(c+1)}</span>${s}`}let i=e.split(ai).length>3||e.length>30?$d(e.trim(),n):0;return`${`${i>0?"\u2026":""}${$t(t.substring(i,n))}`}<strong>${s}</strong>`}return t}function Hs(t){return/<\/?[a-z][\s\S]*>/i.test(t)}function ln(t){if(Hs(t)){let o=/<body[^>]*>([\s\S]*)<\/body>/gi.exec(t);return o?o[1]:""}return t}import{jsx as ae,jsxs as Bs}from"react/jsx-runtime";var Zd=({value:t,onUse:e,...o})=>{var u;let n=T(Ns),s=Qd(),r=Hs(t),i=S("EditSuggestionTextInput",Ps),[a,l]=Xd(null),c=Fs(null),p=((u=t.match(pt))==null?void 0:u.length)||0;return Xt(()=>{let d;return c.current&&(l(c.current),d=new Oe(c.current),d.on("change",({plainText:g})=>{s($.actions.userInput({text:g,selection:d.getSelection()}))}),d.on("keydown",g=>{s($.actions.registerKeyDown(Oo(g))),g.code==="Enter"&&g.shiftKey&&e(d.getText())}),d.on("paste",({pastedText:g,selectionText:f})=>{s($.actions.registerPaste({text:g,selectionText:f}))}),d.on("cut",({selectionText:g})=>{s($.actions.registerCut(g))})),()=>{s($.actions.reset()),d.dispose(),d.deactivate()}},[c]),Xt(()=>{t&&c.current&&(c.current.value=t)},[t,c]),Xt(()=>{c.current&&setTimeout(()=>{if(!c.current)return;let d=c.current.value.length;c.current.setSelectionRange(d,d),c.current.focus()},0)},[c]),r?ae("div",{className:i.textInputWrapper,children:ae(ca,{className:i.textInput,tagName:"div",content:t})}):Bs("div",{className:i.textInputWrapper,children:[ae("textarea",{...o,ref:c,"data-testid":"edit-suggestion-dialog-textarea",className:i.textInput,defaultValue:t,onChange:()=>{}}),a&&ae(Jd,{inputElement:c.current,value:t}),Bs("div",{className:pa(i.alert,p===0?i.success:i.warning),children:[ae("div",{className:i.alertText,children:n("placeholders",{placeholderSize:p})}),p===0?ae(na,{}):ae(ra,{})]})]})},Jd=({inputElement:t,value:e})=>{let o=S("EditSuggestionTextInput",Ps),n=Fs(null),s=on(t);return Xt(()=>{nn(t,s)},[s,t]),ae(Yd,{inputElement:t,children:Bs("div",{ref:n,className:pa(o.root,o.agentText),children:[ae(ca,{tagName:"span",disableLineBreaks:!0,content:e,matchers:[new ft("placeholders")],inputElement:t,boundaryRef:n}),ae("br",{})]})})},Yd=({inputElement:t,children:e})=>{let o=Fs(null);return Xt(()=>{if(!o.current)return()=>{};let[n,s]=St(t,{overlayContainer:o.current,mirrorOverflow:!0});return n.setAttribute("translate","no"),()=>{s()}},[o.current]),ae("div",{ref:o,children:e})},ua=Zd;import{useEffect as zg,useState as jg,useRef as qg}from"react";import{useState as og}from"react";import Ks from"classnames";var X={root:"_root_pc5uy_1",list:"_list_pc5uy_2",listWrapper:"_listWrapper_pc5uy_6",listHorizontal:"_listHorizontal_pc5uy_10",page:"_page_pc5uy_19",search:"_search_pc5uy_25",pageNav:"_pageNav_pc5uy_33",pageTitle:"_pageTitle_pc5uy_41",pageBackButton:"_pageBackButton_pc5uy_48",listHeading:"_listHeading_pc5uy_62",listItem:"_listItem_pc5uy_70",listItemContent:"_listItemContent_pc5uy_79",listItemText:"_listItemText_pc5uy_97",listItemDescription:"_listItemDescription_pc5uy_105",listItemActions:"_listItemActions_pc5uy_112",truncate:"_truncate_pc5uy_123",lineClamp:"_lineClamp_pc5uy_129",listItemTitle:"_listItemTitle_pc5uy_136",listItemAction:"_listItemAction_pc5uy_112",listItemPrimaryAction:"_listItemPrimaryAction_pc5uy_157",listItemSelected:"_listItemSelected_pc5uy_162",sources:"_sources_pc5uy_166",sourcesTitle:"_sourcesTitle_pc5uy_173",source:"_source_pc5uy_166",icon:"_icon_pc5uy_188",searchIcon:"_searchIcon_pc5uy_205",searchInputWrapper:"_searchInputWrapper_pc5uy_210",searchInput:"_searchInput_pc5uy_210",select:"_select_pc5uy_231",selectType:"_selectType_pc5uy_248",selectWrapper:"_selectWrapper_pc5uy_252",image:"_image_pc5uy_282",imageSrc:"_imageSrc_pc5uy_289",imageSrcHidden:"_imageSrcHidden_pc5uy_300",imageSrcStatus:"_imageSrcStatus_pc5uy_304",imageTitle:"_imageTitle_pc5uy_314",actions:"_actions_pc5uy_319",actionsWrapper:"_actionsWrapper_pc5uy_323",actionsBar:"_actionsBar_pc5uy_329",actionButton:"_actionButton_pc5uy_338",actionShortcut:"_actionShortcut_pc5uy_356",actionShortcutFixKerning:"_actionShortcutFixKerning_pc5uy_363"};var Xe={};q(Xe,{enUS:()=>eg,nlNL:()=>tg});var eg={visitUrl:[{type:0,value:"Visit"}],back:[{type:0,value:"Back"}],loading:[{type:0,value:"Loading..."}],imageError:[{type:0,value:"Could not load image"}]},tg={visitUrl:[{type:0,value:"Bekijk"}],back:[{type:0,value:"Terug"}],loading:[{type:0,value:"Laden..."}],imageError:[{type:0,value:"Kan afbeelding niet laden"}]};import{jsx as Qt,jsxs as sg}from"react/jsx-runtime";var ng=({src:t,title:e})=>{let o=S("CommandPalette",X),[n,s]=og("loading"),r=T(Xe);return sg("div",{className:o.image,children:[Qt("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:Ks(o.imageSrc,{[o.imageSrcHidden]:["loading","error"].includes(n)})}),n==="loading"&&Qt("span",{className:Ks(o.imageSrc,o.imageSrcStatus),children:r("loading")}),n==="error"&&Qt("span",{className:Ks(o.imageSrc,o.imageSrcStatus),children:Qt(bo,{})}),e&&Qt("span",{className:o.imageTitle,children:e})]})},da=ng;import rg from"react";import ig from"classnames";import{jsx as ga,jsxs as ag}from"react/jsx-runtime";function Us({children:t,heading:e,orientation:o}){let n=S("CommandPalette",X);return rg.Children.count(t)===0?null:ag("div",{"data-testid":"commandpalette-list",className:n.list,children:[e&&ga("h4",{className:n.listHeading,children:e}),ga("div",{className:ig(n.listWrapper,o==="horizontal"&&n.listHorizontal),children:t})]})}import un from"classnames";import zs from"react";import{jsx as lg}from"react/jsx-runtime";var ma=zs.createContext(void 0);function Ne(){let t=zs.useContext(ma);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var fa=({children:t,page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r})=>{let i=zs.useMemo(()=>({page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r}),[o,e,s]);return lg(ma.Provider,{value:i,children:t})};import cg,{useState as ha,useEffect as ya,useMemo as pg,useRef as Sa,useCallback as ug,useContext as dg}from"react";import gg from"classnames";var js={root:"_root_1oh4w_1",trigger:"_trigger_1oh4w_5",content:"_content_1oh4w_19",contentOpen:"_contentOpen_1oh4w_33",contentTop:"_contentTop_1oh4w_37",contentBottom:"_contentBottom_1oh4w_41",item:"_item_1oh4w_45"};import{jsx as cn,jsxs as yg}from"react/jsx-runtime";var mg=0,va=cg.createContext(null),fg=()=>{let t=dg(va);if(!t)throw new Error("Invalid DropdownContext");return t},_a=({trigger:t,children:e,position:o="bottom"})=>{let n=pg(()=>++mg,[]),s=Sa(null),r=Sa(null),i=S("Dropdown",js),[a,l]=ha(!1),[c,p]=ha(o),u=g=>{g.preventDefault(),g.stopPropagation(),l(!a)},d=ug(([g])=>{!g.isIntersecting&&a&&p(c==="top"?"bottom":"top")},[a]);return ya(()=>{let g=f=>{s.current&&!s.current.contains(f.target)&&l(!1)};return document.addEventListener("click",g),()=>{document.removeEventListener("click",g)}},[]),ya(()=>{if(!r.current&&!a)return()=>{};let g=new IntersectionObserver(d,{root:null,rootMargin:"0px",threshold:1});return r.current&&g.observe(r.current),()=>{r.current&&g.unobserve(r.current)}},[r,a]),cn(va.Provider,{value:{setIsOpen:l},children:yg("div",{ref:s,className:i.root,children:[cn("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}),cn("div",{"data-testid":"dropdown-content",ref:r,"aria-hidden":!a,"aria-labelledby":`dropdown-${n}`,className:gg(i.content,{[i.contentOpen]:a,[i.contentTop]:c==="top",[i.contentBottom]:c==="bottom"}),children:e})]})})};function hg({as:t,children:e,onClick:o,...n}){let s=t||"button",r=S("Dropdown",js),{setIsOpen:i}=fg(),a=l=>{i(!1),o(l),l.stopPropagation()};return cn(s,{type:"button",className:r.item,onClick:a,...n,children:e})}_a.Item=hg;var qs=_a;import{jsx as xa}from"react/jsx-runtime";var ba=t=>xa("svg",{xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512",...t,children:xa("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 Qe={};q(Qe,{enUS:()=>Sg,nlNL:()=>vg});var Sg={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"}]},vg={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 Vs}from"react/jsx-runtime";var _g="%0d%0a%0d%0a%0d%0a",xg=(t,e)=>{let o=[`Suggestie: ${encodeURIComponent(e)}`,"Beschrijf je feedback:"];return`mailto:${t.join(",")}?subject=Suggestie feedback&body=${o.join(_g)}`},bg=({suggestion:t,onFeedback:e})=>{let o=T(Qe),n=b("suggestionFeedbackEmailAddresses");return!n||n.length===0?null:Vs(qs,{trigger:Vs(ba,{"data-testid":"feedback-dropdown-trigger"}),children:Vs(qs.Item,{as:"a",href:xg(n,t),onClick:e,children:o("giveFeedback")})})},pn=bg;import{Interweave as Cg}from"interweave";import{jsx as De,jsxs as Ws}from"react/jsx-runtime";function Gs({closeOnSelect:t=!0,lineClamp:e,children:o,onClick:n,onFeedback:s,onSourceClick:r,index:i,description:a,sources:l,styles:c,...p}){let{selected:u,setSelected:d,onChangeOpen:g}=Ne(),f=S("CommandPalette",X);function m(v){n(v),t&&g(!1)}return Ws("div",{className:un(f.listItem,u===i&&f.listItemSelected),children:[De("button",{onMouseEnter:()=>d(i),type:"button",className:un("command-palette-list-item",f.listItemAction,f.listItemPrimaryAction),"aria-disabled":p.disabled??!1,onClick:m,...p,children:Ws("div",{className:f.listItemContent,children:[typeof o=="string"?De("p",{className:un(f.listItemText,f.truncate,c==null?void 0:c.title),children:o}):o,a&&De(Cg,{tagName:"p",allowList:[],content:ln(a),className:un(f.listItemDescription,c==null?void 0:c.description,e?f.lineClamp:f.truncate)})]})}),s&&u===i&&De("div",{className:f.listItemActions,children:De(pn,{suggestion:String(o),onFeedback:s})}),l&&Ws("div",{className:f.sources,children:[De("span",{className:f.sourcesTitle,children:"Sources"}),l.map(v=>v.url?De("a",{className:f.source,href:v.url,target:"_blank",title:v.url,rel:"noopener noreferrer",onClick:()=>r&&r(v),children:v.name},v.url):De("span",{className:f.source,children:v.name},v.name))]})]})}import{jsx as Ca,jsxs as $s}from"react/jsx-runtime";function Xs({children:t,title:e,id:o,onDismiss:n}){let s=T(Xe),r=S("CommandPalette",X),{page:i}=Ne();return i!==o?null:$s("div",{className:r.page,id:`page_${o}`,tabIndex:-1,children:[n&&$s("div",{className:r.pageNav,children:[$s("button",{className:r.pageBackButton,type:"button",onClick:n,children:[Ca(Yo,{}),s("back")]}),e&&Ca("h3",{className:r.pageTitle,children:e})]}),t]})}import{Fragment as Og,useCallback as Ng,useEffect as Dg,useRef as Hg}from"react";var dn=()=>/Mac/i.test(navigator.platform);import{createAsyncThunk as Rg,createSlice as Ig}from"@reduxjs/toolkit";var wg={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},E=wg;import{createAsyncThunk as Zs,createSlice as Eg}from"@reduxjs/toolkit";function Tg(t){return t.replace(/(_\w)/g,e=>e[1].toUpperCase())}function A(t){return Array.isArray(t)?t.map(A):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[Tg(o)]:A(t[o])}),{}):t}function Qs(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function B(t){return Array.isArray(t)?t.map(B):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[Qs(o)]:B(t[o])}),{}):t}var kg={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,fetchState:"idle"},Jt=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)||""}},Zt=Zs("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?A(n):(await o.client.patch("/apis/admin/session/me/",s,{version:null}),A(n))}),Js=Zs("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}),Ys=Zs("info/getAgentSettings",async(t,e)=>{let{deepdeskAPI:o}=e.extra;return(await o.client.get("/apis/admin/session/me/",{version:null})).ui_config}),wa=t=>t.info.agentInfo,Ta=Eg({name:"info",initialState:kg,reducers:{setVisitorInfo(t,e){t.visitorInfo={...t.visitorInfo,...e.payload}}},extraReducers:t=>{t.addCase(Zt.pending,(e,o)=>{e.fetchState="loading",e.agentInfo={...e.agentInfo,...o.meta.arg}}).addCase(Zt.rejected,e=>{e.fetchState="error"}).addCase(Zt.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(Js.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(Ys.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(R,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:Ea}=Ta.actions,ka=Ta.reducer;var gn={list:[],fetchState:"idle",isOpen:!1,page:"search"},Ra=t=>t.search.isOpen,Ia=t=>t.search.page,Pa=t=>t.search.list;function Aa(t,e=o=>o){return o=>o.search.list.filter(n=>n.type===t).map(e)}var Ze=Rg("search/getAll",async(t,e)=>{var i;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(i=n.conversation.current)==null?void 0:i.profileCode;if(!s)throw new Error("Profile should be provided in order to be able to search");let{results:r}=await o.search({profile:s,query:t.query,filters:{type:t.type},params:Jt(n),tags:t.tags});return r.map(a=>({...a,source:`search-${a.type.toLowerCase()}`,searchTerm:t.query}))}),La=Ig({name:"search",initialState:gn,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=gn.fetchState,t.list=gn.list}},extraReducers:t=>{t.addCase(Ze.pending,e=>{e.fetchState="loading"}).addCase(Ze.rejected,(e,o)=>{e.fetchState="error",E.error(o.error)}).addCase(Ze.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload}).addCase(R,()=>gn)}}),{resetSearch:mn,setIsOpen:te,setPage:V}=La.actions,Ma=La.reducer;var Pg=/(https?:\/\/[^\s]+)/,fn=t=>t.split(" ").find(e=>Pg.test(e));import Oa from"classnames";import{jsx as Lg,jsxs as Mg}from"react/jsx-runtime";var Ag=({onClick:t,shortKeys:e,children:o,...n})=>{let s=S("CommandPalette",X);return Mg("button",{type:"button",...n,onClick:t,className:Oa(s.actionButton,n.className),children:[o,e&&e.map(r=>Lg("span",{className:Oa(s.actionShortcut,r===8629&&s.actionShortcutFixKerning),children:typeof r=="number"?String.fromCharCode(r):r},r))]})},vt=Ag;import{jsx as hn,jsxs as er}from"react/jsx-runtime";var Bg=({children:t,primaryLabel:e,secondaryLabel:o,onPrimary:n,onSecondary:s,list:r})=>{let i=S("CommandPalette",X),a=T(Xe),{selected:l,setSelected:c}=Ne(),p=r[l],u=p&&typeof p.text=="string"&&fn(p.text),d=Hg(null);function g(y){if(!d.current)return;let x=d.current.querySelectorAll(".command-palette-list-item"),C=0,F=0;y==="down"?(x.forEach((Y,H)=>{H===l&&(C=H)}),F=C===x.length-1?0:C+1):y==="up"?(x.forEach((Y,H)=>{H===l&&(C=H)}),F=C?C-1:x.length-1):c(0);let D=x[F];D&&typeof F=="number"&&(c(F),D.scrollIntoView&&D.scrollIntoView({behavior:"smooth",block:F?"center":"end"}))}function f(){if(!d.current)return;let y=d.current.querySelectorAll(".command-palette-list-item"),x=0;y.forEach((F,D)=>{D===l&&(x=D)});let C=y[x];C&&C.click()}let m=()=>{u&&window.open(u,"_blank")},v=()=>{p&&n(p,l)},w=()=>{!p.type||["IMAGE","command"].includes(p.type)||s&&s(p,l)},h=Ng(y=>{if(y.key==="Enter"&&y.altKey&&u){m();return}if(y.key==="Enter"&&y.shiftKey){w();return}if(y.key==="ArrowDown"){y.preventDefault(),y.stopPropagation(),g("down");return}if(y.key==="ArrowUp"){y.preventDefault(),y.stopPropagation(),g("up");return}y.key==="Enter"&&l!==-1&&(y.preventDefault(),y.stopPropagation(),f())},[l]);return Dg(()=>(window.addEventListener("keyup",h),()=>{window.removeEventListener("keyup",h)}),[h]),er("div",{className:i.actions,children:[hn("div",{className:i.actionsWrapper,ref:d,children:t}),er("div",{className:i.actionsBar,children:[u&&hn(vt,{onClick:m,shortKeys:[dn()?8997:"ALT",8629],children:a("visitUrl")}),p&&er(Og,{children:[s&&p.type&&!["command","image"].includes(p.type.toLowerCase())&&hn(vt,{onClick:w,shortKeys:[8679,8629],children:o}),hn(vt,{onClick:v,shortKeys:[8629],children:e})]})]})]})},Da=Bg;import{forwardRef as Kg}from"react";import{jsx as Ha,jsxs as Fg}from"react/jsx-runtime";var _t=()=>Fg("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[Ha("path",{d:"M0 0h24v24H0z",fill:"none"}),Ha("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 xt,jsxs as tr}from"react/jsx-runtime";function Ug({onChange:t,onChangeType:e,placeholder:o,typePlaceholder:n,types:s,value:r,selectedType:i},a){let l=S("CommandPalette",X);return tr("div",{className:l.search,children:[xt("div",{className:l.searchIcon,children:xt(_t,{})}),tr("div",{className:l.searchInputWrapper,children:[xt("input",{ref:a,spellCheck:!1,autoComplete:"off",onChange:c=>{t(c.currentTarget.value)},onFocus:c=>{c.currentTarget.select()},className:l.searchInput,placeholder:o,value:r,type:"text",id:"command-palette-search-input",autoFocus:!0}),s&&s.length>0&&xt("div",{className:l.selectWrapper,children:tr("select",{"data-testid":"command-palette-type-select",className:l.select,onChange:c=>e(c.target.value===n?void 0:c.target.value),value:i||n,children:[n&&xt("option",{children:n}),s.map(c=>xt("option",{value:c.value,children:c.label},c.value))]})})]})]})}var Ba=Kg(Ug);import{jsx as Fa,jsxs as Vg}from"react/jsx-runtime";function Je({placeholder:t="Start typing to search...",typePlaceholder:e="All types",defaultPage:o="search",page:n,onChangePage:s,onChangeSearch:r,onChangeType:i,onChangeOpen:a,selectedType:l,types:c,children:p,isOpen:u,search:d}){let[g,f]=jg(0),m=qg(null),v=()=>{s&&s(o),i(void 0),r(""),a(!1)},w=()=>{var h;if(n!==o&&s){s(o);return}if(l&&i){i(void 0),(h=m.current)==null||h.focus();return}if(d.length>0){r("");return}a(!1)};return zg(()=>{f(0)},[d,n]),Fa(mt,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:u,onBack:w,onClose:v,children:Vg(fa,{selected:g,setSelected:f,isOpen:u,onChangeOpen:a,page:n,children:[n===o&&Fa(Ba,{ref:m,onChange:r,onChangeType:i,placeholder:t,value:d,selectedType:l,types:c,typePlaceholder:e}),p]})})}Je.Page=Xs;Je.List=Us;Je.Image=da;Je.ListItem=Gs;Je.ActionsBar=Da;Je.Button=vt;var I=Je;import{jsx as ve,jsxs as Yt}from"react/jsx-runtime";var $g=({suggestion:t,onUse:e,onDismiss:o,onTouched:n,onNext:s,onPrevious:r})=>{let i=t.text||t.url||t.message,a=S("EditSuggestionForm",Li),l=Wg(),c=T(xs),p=Gg(f=>f.overlayInput.text);Ka(()=>{t&&(l($.actions.reset()),l($.actions.stageSuggestion({text:i,suggestion:t,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"})),l($.actions.commitSuggestion()))},[t]);let u=f=>{f.preventDefault(),d(p)},d=f=>{l(Ho(f)),e(f)},g=f=>m=>{p!==i?window.confirm(c("warning"))&&f(m):f(m)};return Ka(()=>{n&&n(p!==i)},[n,t,p]),Yt("div",{className:a.root,children:[Yt("div",{className:a.content,children:[t.title&&ve("h3",{className:a.title,children:t.title}),t.searchKeywords&&t.searchKeywords.length>0&&ve(gs,{labels:t.searchKeywords}),ve(ua,{onUse:d,value:ln(p)})]}),Yt("form",{className:a.actions,onSubmit:u,children:[Yt("div",{children:[ve("button",{disabled:!r,className:a.pagination,type:"button",onClick:r&&g(r),children:ve(Yo,{})}),ve("button",{disabled:!s,className:a.pagination,type:"button",onClick:s&&g(s),children:ve(qi,{})})]}),Yt("div",{className:a.primaryButtons,children:[ve(I.Button,{onClick:g(o),shortKeys:["esc"],children:c("dismiss")}),ve(I.Button,{shortKeys:[8679,8629],type:"submit",children:c("add")})]})]})]})},yn=$g;import{createAction as Zg,createAsyncThunk as qa,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 Ua(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],l=r===o.length-2;n+=i.length;let c=n;if(l){let u=a.charAt(0),d=0;do c=u?e.indexOf(u,c+1):-1,d+=1;while(c!==-1&&a.indexOf(e.slice(c))!==0);if(c===-1&&d>2)return t}else c=a&&a!==""?e.indexOf(a,n):-1;let p=c===-1?e.slice(n):e.slice(n,c);s.push(p),n=c}return s.join("")}function za(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var Va={suggestions:[],fetchState:"idle",isInitialRequest:null},ja={default:Va},Wa=t=>e=>{var o;return((o=e.textSuggestions[t])==null?void 0:o.suggestions)||[]},Ga=t=>e=>{var o;return((o=e.textSuggestions[t])==null?void 0:o.suggestions)??[]},$a=t=>{let e=Object.keys(t.textSuggestions).map(o=>{var n;return(n=t.textSuggestions[o])==null?void 0:n.fetchState});return e.length===0?!0:e.every(o=>o!=="done")},bt=t=>t.textSuggestions,Xa=t=>{let e=t.toLowerCase();return o=>{let n=o.text.toLowerCase();return n.startsWith(e)&&n.length>e.length}},Sn=Zg("textSuggestions/refresh"),_e=qa("textSuggestions/recommendations",async(t,e)=>{var c;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(c=n.conversation.current)==null?void 0:c.id,{textSuggestionsCount:r,inlineSuggestions:i}=n.settings,a=gt(n);if(!s)throw new Error("No current conversation to fetch text suggestions");let l=await o.getTextSuggestions(s,Jt(n),t);if(t==="default"){let p=i?l.filter(Xa(a)):l;e.dispatch(ue(p.slice(0,r)))}return l}),eo=qa("textSuggestions/autocompletions",async(t,e)=>{var c;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(c=n.conversation.current)==null?void 0:c.id,{textSuggestionsCount:r,deanonymize:i,inlineSuggestions:a}=n.settings;if(!s)throw new Error("No current conversation to fetch text suggestions");let l=await o.getAutocompleteSuggestions(s,{...Jt(n),input:t});if(!e.getState().input.text)throw new Error("Abort");return a&&(l=l.filter(Xa(t))),i&&(l=l.map(p=>({...p,text:p.source!=="trie-with-typos"?Ua(p.text,t):p.text}))),l=za(l,r),e.dispatch(ue(l)),l}),Qa=Jg({name:"textSuggestions",initialState:ja,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(_e.pending,(e,o)=>{let n=o.meta.arg,s=e[n]||Va;return{...e,[n]:{...s,fetchState:"loading",isInitialRequest:s.isInitialRequest===null}}}).addCase(_e.rejected,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="error")}).addCase(_e.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(R,()=>ja)}}),{setTextSuggestions:Za,setSuggestionState:Ja}=Qa.actions,Ya=Qa.reducer;import{createSlice as Yg}from"@reduxjs/toolkit";var el={contentType:null,suggestion:null},tl=t=>t.activeSuggestion.suggestion,ol=t=>t.activeSuggestion.contentType,nl=Yg({name:"activeSuggestion",initialState:el,reducers:{setActiveSuggestion(t,e){let{contentType:o,suggestion:n}=e.payload;t.contentType=o,t.suggestion=n},resetActiveSuggestion(t){t.contentType=null,t.suggestion=null}},extraReducers:t=>{t.addCase(R,()=>el)}}),{setActiveSuggestion:xe,resetActiveSuggestion:or}=nl.actions,sl=nl.reducer;var nr={};q(nr,{enUS:()=>em,nlNL:()=>tm});var em={warning:[{type:0,value:"Are you sure you want to discard the message?"}],editContentLabel:[{type:0,value:"Edit and view suggestion"}],overlayLabel:[{type:0,value:"Close dialog"}]},tm={warning:[{type:0,value:"Weet je zeker dat je de wijzigingen wilt weggooien?"}],editContentLabel:[{type:0,value:"Bewerk en bekijk suggestie"}],overlayLabel:[{type:0,value:"Sluit"}]};import{createSlice as om}from"@reduxjs/toolkit";var nm={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1};var vn=({ui:t})=>t.overlayCollapsed;var rl=om({name:"ui",initialState:nm,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:Ct,setOverlayCollapsed:He,setOpenOverlayWhenTyping:il,setOverlayCollapsedUserOverwrite:al}=rl.actions,ll=rl.reducer;import cl,{useContext as sm}from"react";import{jsx as rm}from"react/jsx-runtime";var pl=cl.createContext(null),wt=({broadcastEvents:t,children:e})=>{let o=cl.useMemo(()=>t,[]);return rm(pl.Provider,{value:o,children:e})},ne=()=>{let t=sm(pl);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createAsyncThunk as sr,createSlice as im}from"@reduxjs/toolkit";var am={isLoggedIn:!0,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1},le=t=>t.auth.isLoggedIn,ul=t=>t.auth.loginFetchState,dl=t=>t.auth.verifyFetchState,gl=t=>t.auth.showLoginOverlay,Be=sr("auth/validate",async(t,e)=>e.extra.deepdeskAPI.isLoggedIn()),ml=sr("auth/requestLogin",async({email:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.requestLoginByEmail(t)}),oo=sr("auth/verifyLoginToken",async({token:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.verifyLoginToken(t)}),fl=im({name:"auth",initialState:am,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload}},extraReducers:t=>{t.addCase(Be.pending,e=>{e.loginFetchState="loading"}),t.addCase(Be.fulfilled,(e,{payload:o})=>{e.isLoggedIn=o,e.loginFetchState="done"}),t.addCase(Be.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(oo.pending,e=>{e.verifyFetchState="loading"}),t.addCase(oo.rejected,e=>{e.verifyFetchState="error"}),t.addCase(oo.fulfilled,(e,o)=>{o.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:Tt,setShowLoginOverlay:hl}=fl.actions,yl=fl.reducer;var rr="SetActiveSuggestion",Et="ShowLoginOverlay",ir="UserLoggedIn",lm="UserLoggedOut",be="ApplySuggestion",ar="ApplyImageSuggestion",cm="ShowCommandPalette",pm=t=>({[rr]:e=>{t.dispatch(Ja(e.state)),t.dispatch(xe({contentType:e.contentType,suggestion:e.suggestion}))},[cm]:e=>{t.dispatch(te(e.isOpen)),e.page&&t.dispatch(V(e.page))},[Et]:e=>{t.dispatch(hl(e))},[ir]:()=>{t.dispatch(Be())},[lm]:()=>{t.dispatch(Be())},[ar]:e=>{t.dispatch(Fo({suggestion:e.suggestion}))},[be]:e=>{t.dispatch(re({...e,eventMetrics:{inputType:"mouse"},replace:"selection"})),t.dispatch(Le())}}),Sl=pm;import{jsx as vl}from"react/jsx-runtime";var gm=()=>{var f;let[t,e]=um(!1),o=lr(tl),n=lr(ol),s=lr(bt),r=dm(),i=ne(),a=T(nr),l=()=>{o!==null&&t?window.confirm(a("warning"))&&c():c()},c=()=>{r(or()),r(Ct(!0)),r($.actions.reset())},p=(m,v)=>{r(or()),r(Ct(!0)),i.send(be,{text:m,suggestion:{...v,source:`${v.source||"text_recommendation"}-preview`}})};if(o===null||n===null)return null;let u=(f=s[n])==null?void 0:f.suggestions.indexOf(o),d=u===0||u===null?void 0:()=>r(xe({contentType:n,suggestion:s[n].suggestions[u-1]})),g=u===s[n].suggestions.length-1||u===null?void 0:()=>r(xe({contentType:n,suggestion:s[n].suggestions[u+1]}));return vl(mt,{autoFocus:!0,isOpen:u!==null,onClose:l,onBack:l,contentAriaLabel:a("editContentLabel"),overlayAriaLabel:a("overlayLabel"),children:vl(yn,{onTouched:e,onDismiss:c,onUse:m=>p(m,o),suggestion:o,onNext:g,onPrevious:d})})},_l=gm;import{useSelector as Tl}from"react-redux";import pr from"classnames";import{useCallback as Cl,useEffect as vm,useMemo as _m,useState as ur}from"react";import{useDispatch as xm,useSelector as bm}from"react-redux";import mm from"classnames";var xl={root:"_root_1ukx5_1"};import{jsx as hm}from"react/jsx-runtime";var fm=({className:t,value:e,...o})=>{let n=S("TextInput",xl);return hm("input",{className:mm(t,n.root),type:"text",value:e,...o})},no=fm;var cr={};q(cr,{enUS:()=>ym,nlNL:()=>Sm});var ym={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"}]},Sm={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 bl={root:"_root_1edpl_1",anchorButton:"_anchorButton_1edpl_5",errorMessage:"_errorMessage_1edpl_19",title:"_title_1edpl_25",subtitle:"_subtitle_1edpl_31",text:"_text_1edpl_38",input:"_input_1edpl_43",actions:"_actions_1edpl_48",button:"_button_1edpl_55",primaryButton:"_primaryButton_1edpl_70"};import{jsx as Q,jsxs as _n}from"react/jsx-runtime";var Cm=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch{return t}},wm=({agentEmail:t,isOpen:e,origin:o="",onSuccess:n,onDismiss:s})=>{let r=T(cr),i=S("LoginTokenDialog",bl),a=bm(dl),l=xm(),c=b("productName"),[p,u]=ur(t||""),[d,g]=ur(0),[f,m]=ur(""),v=Cl(async x=>{x.preventDefault(),l(ml({email:p})),g(1)},[o,p]),w=()=>{m(""),g(0)},h=Cl(async x=>{x.preventDefault();let C=Cm(x.target.elements.token.value);if(!C){m(r("verifyCodeError",{login:y}));return}l(oo({token:C}))},[o]),y=_m(()=>x=>Q("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:w,children:x},"back-button"),[]);return vm(()=>{a==="error"&&m(r("verifyCodeError",{login:y})),a==="done"&&n()},[a]),Q(mt,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:c}),overlayAriaLabel:r("promptTitle",{productName:c}),onClose:s,onBack:s,children:_n("div",{className:i.root,children:[Q("h1",{className:i.title,children:r("promptTitle",{productName:c})}),d===0&&_n("form",{onSubmit:v,children:[Q("h2",{className:i.subtitle,children:r("requestCodeTitle")}),Q("p",{className:i.text,children:r("requestCodeBody",{productName:c})}),Q(no,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:p,onChange:x=>u(x.target.value)}),Q("div",{className:i.actions,children:Q("button",{type:"submit",className:pr(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),d===1&&_n("form",{onSubmit:h,children:[Q("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),Q("p",{className:i.text,children:r("verifyCodeBody")}),Q(no,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),f&&Q("div",{className:i.errorMessage,children:f}),_n("div",{className:i.actions,children:[Q("button",{type:"button",className:pr(i.button),onClick:w,children:r("back")}),Q("button",{type:"submit",className:pr(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},wl=wm;import{jsx as Em}from"react/jsx-runtime";var Tm=()=>{let t=Tl(gl),e=Tl(wa),o=b("adminUrl"),n=ne(),s=()=>n.send(Et,!1),r=()=>{n.send(Et,!1),n.send(ir)};return Em(wl,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:o,onDismiss:s,onSuccess:r})},El=Tm;import Sf from"lodash.debounce";import{useCallback as Tn,useEffect as vr,useState as ao}from"react";import{useDispatch as vf,useSelector as At}from"react-redux";import{createAsyncThunk as km,createSlice as Rm}from"@reduxjs/toolkit";var Im={data:null,fetchState:"idle"},kl=t=>t.contentTypes.data,so=km("contentTypes/getContentTypes",async(t,e)=>e.extra.deepdeskAPI.getContentTypes()),Pm=Rm({name:"contentTypes",initialState:Im,reducers:{},extraReducers:t=>{t.addCase(so.pending,e=>{e.fetchState="loading"}).addCase(so.rejected,e=>{e.fetchState="error"}).addCase(so.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),Rl=Pm.reducer;function ro(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 Am}from"react";function Il(t,e){Am(()=>{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 Ml,useRef as Bm}from"react";import{useSelector as Fm,useDispatch as Km}from"react-redux";import{createAsyncThunk as Lm,createSlice as Mm}from"@reduxjs/toolkit";var Pl={data:null,fetchState:"idle"},xn=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},ce=Lm("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)}),Om=t=>t.filter((e,o)=>o===t.findIndex(n=>n.text===e.text)),Nm=Mm({name:"entities",initialState:Pl,reducers:{},extraReducers:t=>{t.addCase(ce.pending,e=>{e.fetchState="loading"}).addCase(ce.rejected,e=>{e.fetchState="error"}).addCase(ce.fulfilled,(e,o)=>{e.fetchState="done",e.data=Om(e.data?[...e.data,...o.payload]:o.payload)}).addCase(R,()=>Pl)}}),Al=Nm.reducer;var dr={};q(dr,{enUS:()=>Dm,nlNL:()=>Hm});var Dm={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},Hm={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var Ll={root:"_root_17kae_1",empty:"_empty_17kae_5"};import{jsx as bn,jsxs as zm}from"react/jsx-runtime";var Um=({onCopy:t,onUse:e})=>{let o=Bm(null),n=S("EntitiesList",Ll),s=T(dr),r=Fm(xn),i=Km();return Ml(()=>{i(ce())},[]),Ml(()=>{o.current&&o.current.focus()},[o]),zm("div",{className:n.root,ref:o,tabIndex:-1,children:[r&&r.length>0&&bn(I.ActionsBar,{primaryLabel:s("copy"),secondaryLabel:s("use"),onPrimary:(a,l)=>t(r[l]),onSecondary:(a,l)=>e(r[l]),list:r.map(a=>({text:a.text,type:a.label,primaryAction:"copy",secondaryAction:"use"})),children:bn(I.List,{children:r.map((a,l)=>bn(I.ListItem,{index:l,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities")}),r&&r.length===0&&bn("p",{className:n.empty,children:s("noResults")})]})},Ol=Um;import{Fragment as $m,useEffect as Cn,useRef as Xm,useState as Qm}from"react";import{useSelector as Kl,useDispatch as Zm}from"react-redux";import{createAsyncThunk as jm,createSlice as qm}from"@reduxjs/toolkit";var Nl={data:null,fetchState:"idle"},Dl=t=>t.summary.data,Hl=t=>t.summary.fetchState==="error",Ce=jm("summary/getSummary",async(t,e)=>{let o=e.getState().profile.data;if(!o)throw new Error("Profile is not defined");let{deepdeskAPI:n,dynamicThunkObject:s}=e.extra;if(!s.conversationQuery)return Promise.reject(new Error("setConversationQuery method is not defined"));let r=s.conversationQuery,i=await r();return i.length===0?Promise.reject(new Error("No messages are included")):{summary:await n.getSummary(i,{promptInstruction:o.summarizerPromptInstruction,model:o.summarizerModel})}}),Vm=qm({name:"summary",initialState:Nl,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)}).addCase(R,()=>Nl)}}),Bl=Vm.reducer;var gr={};q(gr,{enUS:()=>Wm,nlNL:()=>Gm});var Wm={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."}]},Gm={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 Fl={root:"_root_6ahh3_1",actions:"_actions_6ahh3_5",main:"_main_6ahh3_11",textInput:"_textInput_6ahh3_15",loading:"_loading_6ahh3_34",error:"_error_6ahh3_38"};import{jsx as kt,jsxs as Ym}from"react/jsx-runtime";var Jm=({onCopy:t})=>{let e=Xm(null),o=S("SummaryForm",Fl),[n,s]=Qm(""),r=T(gr),i=Kl(Dl),a=Kl(Hl),l=Zm(),c=()=>{l(z({name:"summary copied to clipboard",data:{originalText:i,finalText:n},options:{includeConversationData:!0}})),t(n)},p=()=>{let u=document.getSelection();u&&l(z({name:"summary copied to clipboard",data:{originalText:i,finalText:u==null?void 0:u.toString()},options:{includeConversationData:!0}}))};return Cn(()=>{l(Ce())},[]),Cn(()=>{s(i||"")},[i]),Cn(()=>{e.current&&i&&e.current.focus()},[e,i]),Cn(()=>{let u=d=>{d.key==="Enter"&&d.shiftKey&&c()};return document.addEventListener("keydown",u),()=>{document.removeEventListener("keydown",u)}},[n]),kt("div",{className:o.root,tabIndex:-1,children:a?kt("p",{className:o.error,children:r("error")}):Ym($m,{children:[kt("div",{className:o.main,children:kt("textarea",{placeholder:i?void 0:r("loading"),disabled:!i,className:o.textInput,ref:e,value:n,onCopy:p,onChange:u=>s(u.target.value)})}),kt("div",{className:o.actions,children:kt(I.Button,{shortKeys:[8679,8629],onClick:c,children:r("copy")})})]})})},Ul=Jm;var mr={};q(mr,{enUS:()=>ef,nlNL:()=>tf});var ef={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?"}]},tf={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 pf,{useEffect as yr,useRef as uf}from"react";import{useDispatch as df,useSelector as $l}from"react-redux";var fr={};q(fr,{enUS:()=>of,nlNL:()=>nf});var of={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"}]},nf={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 zl={root:"_root_1g4pq_1",title:"_title_1g4pq_9",empty:"_empty_1g4pq_20",status:"_status_1g4pq_24",form:"_form_1g4pq_30",input:"_input_1g4pq_43",submit:"_submit_1g4pq_55",question:"_question_1g4pq_63",answer:"_answer_1g4pq_67",alignRight:"_alignRight_1g4pq_73"};import{createAction as sf,createAsyncThunk as rf,createSlice as af}from"@reduxjs/toolkit";var hr={data:[],fetchState:"idle"},jl=t=>{var e;return(e=t.answer)==null?void 0:e.data},ql=t=>t.answer.fetchState,It=sf("answer/resetKnowledgeSearch"),Rt=rf("answer/getAnswer",async(t,e)=>{var i;let{deepdeskAPI:o}=e.extra,n=e.getState().answer.data,s=(i=e.getState().conversation.current)==null?void 0:i.profileCode;if(!s)throw new Error("Profile is not defined");let r=await o.knowledgeAssist({promptInstruction:t.promptInstruction,question:t.question},n,s);return{question:t.question,answer:r}}),lf=af({name:"answer",initialState:hr,reducers:{},extraReducers:t=>{t.addCase(Rt.pending,e=>{e.fetchState="loading"}).addCase(Rt.rejected,e=>{e.fetchState="error"}).addCase(Rt.fulfilled,(e,o)=>{e.fetchState="done",e.data=[...e.data,o.payload]}).addCase(R,()=>hr).addCase(It,()=>hr)}}),Vl=lf.reducer;import{jsx as Wl,jsxs as cf}from"react/jsx-runtime";var Gl=()=>cf("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 512 512","aria-labelledby":"paperPlaneTitle",children:[Wl("title",{id:"paperPlaneTitle",children:"PaperPlane"}),Wl("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 we,jsxs as Sr}from"react/jsx-runtime";var gf=({onUse:t,onResetQuestion:e,question:o,promptInstruction:n})=>{let[s,r]=pf.useState(""),{setSelected:i}=Ne(),a=uf(null),l=S("EntitiesList",zl),c=T(fr),p=df(),u=$l(jl),d=$l(ql),g=async m=>{m.preventDefault(),m.stopPropagation(),s!==""&&p(Rt({question:s,promptInstruction:n}))},f=(m,v)=>{p(z({name:"knowledge assist source viewed",data:{question:v,sourceViewed:m.url||m.name},options:{includeConversationData:!0}}))};return yr(()=>{var m;o&&d==="idle"?p(Rt({question:o,promptInstruction:n})):(m=a.current)==null||m.focus()},[a,d]),yr(()=>{d==="done"&&(p(z({name:"knowledge assist question answered",data:{question:s||o,sources:u[u.length-1].answer.sources,answer:u[u.length-1].answer.answer,isFollowUpQuestion:u.length>1},options:{includeConversationData:!0}})),i(u.length-1),r(""))},[d,u]),yr(()=>{a.current&&a.current.scrollIntoView({behavior:"smooth"})},[a,u]),Sr("div",{className:l.root,children:[u.length>0&&we("div",{className:l.alignRight,children:we(I.Button,{onClick:e,children:c("reset")})}),Sr(I.ActionsBar,{list:u.map(({answer:m})=>({text:m.answer,type:"answer"})),primaryLabel:c("use"),onPrimary:m=>t(m.text),children:[u.map(({question:m,answer:v},w)=>we(I.List,{children:we(I.ListItem,{"data-testid":"knowledge-search-answer",index:w,description:v.answer,closeOnSelect:!0,onClick:()=>t(v.answer),onSourceClick:h=>f(h,m),sources:v.sources,styles:{title:l.question,description:l.answer},children:m})},`${v.answer}_${w}`)),d==="loading"&&we("p",{className:l.status,children:c("loading")}),d==="error"&&we("p",{className:l.status,children:c("error")}),Sr("form",{className:l.form,onSubmit:g,children:[we("input",{ref:a,placeholder:c("anotherQuestion"),className:l.input,type:"text",value:s,onFocus:()=>{i(-1)},onChange:m=>{i(-1),r(m.target.value)}}),we("button",{type:"submit",className:l.submit,children:we(Gl,{})})]})]})]})},Xl=gf;import{createAsyncThunk as mf,createSlice as ff}from"@reduxjs/toolkit";var hf={data:null,fetchState:"idle"},Pt=t=>t.profile.data,wn=t=>t.profile.data?t.profile.data.uiConfig.widget.types.filter(e=>e.isActive):[],io=mf("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)}),yf=ff({name:"profile",initialState:hf,reducers:{},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.data=o.payload})}}),Ql=yf.reducer;import{jsx as Z,jsxs as Jl}from"react/jsx-runtime";var _f=200,xf=5,bf=4,Cf=t=>t.reduce((e,o)=>[...e,...o.list.map(n=>({...n,type:o.value}))],[]),Zl=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),wf=()=>{let t=vf(),e=ne(),o=T(mr),[n,s]=ao(!1),[r,i]=ao(""),a=At(Ia),l=At(Pt),[c,p]=ao(null),[u,d]=ao([]),[g,f]=ao(),m=At(le),v=b("showSearch"),w=b("showEntitiesCommand"),h=b("showSummaryCommand"),y=b("showKnowledgeSearch"),x=b("showImageSearch"),C=b("searchTriggerKey"),F=At(kl),D=At(Pa),Y=At(Ra),H=_=>ss(D.filter(P=>P.type===_.toUpperCase()),_),k=[{value:"PERSONAL",label:o("personalSuggestions"),list:H("PERSONAL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"URL",label:o("urlSuggestions"),list:H("URL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"STICKYMESSAGE",label:o("pinnedMessages"),list:H("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"IMAGE",label:o("imageSuggestions"),lineClamp:!1,list:H("IMAGE"),listOrientation:"horizontal",shouldShow:x}].filter(_=>_.shouldShow),O=[{label:o("entitiesClipboard"),onClick:()=>t(V("entities")),shouldShow:w&&Zl(o("entitiesClipboard"),r)},{label:o("summaryClipboard"),onClick:()=>t(V("summary")),shouldShow:h&&Zl(o("summaryClipboard"),r)},{label:r?`${o("knowledgeAssist")}: ${r}`:o("knowledgeAssist"),onClick:()=>t(V("knowledgeAssist")),shouldShow:y}].filter(_=>_.shouldShow),G=(F==null?void 0:F.map(_=>({value:_.code.toUpperCase(),label:`${_.name}s`,list:H(_.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[],os=Tn(Sf((_,P)=>{t(Ze({query:_,type:P,tags:["search-overlay"]}))},_f),[]),ze=Cf([...G,...k]),Zp=Tn((_,P)=>{if(!P)return;let Re=[...k,...G].find(({value:rt})=>rt===P);Re&&(t(V("edit")),p({..._,searchTerm:void 0}),d(Re.list))},[t,c,G]),ns=Tn((_,P)=>{switch(P.type){case"IMAGE":e.send(ar,{suggestion:P});break;default:e.send(be,{text:_,suggestion:P})}t(te(!1))},[t]),Jp=_=>{ro(_.text),t(z({name:"entity copied",data:{entity:_,type:"copy"}})),t(te(!1))},Yp=Tn(_=>{t(z({name:"suggestion feedback",data:{text:_.text,source:"search",context:r},options:{includeConversationData:!0}}))},[r]),eu=_=>{e.send(be,{text:_,suggestion:{source:"knowledge-assist",text:_}}),t(z({name:"answer used",data:{originalText:_},options:{includeConversationData:!0}})),i(""),t(V("search")),t(It()),t(te(!1))},tu=_=>{ro(_),t(te(!1))},ou=_=>{e.send(be,{text:_.text,suggestion:{source:"entity",text:_.text}}),t(te(!1))},nu=c===null||u.indexOf(c)-1<0?void 0:()=>p(u[u.indexOf(c)-1]),su=c===null||u.indexOf(c)===u.length-1?void 0:()=>p(u[u.indexOf(c)+1]);function ss(_,P){return _.slice(0,g?10:P.toLowerCase()==="image"?bf:xf)}function Yr(_,P,Re){return P.reduce((rt,_o)=>Re&&g===Re?_o.length+rt:ss(_o,Re).length+rt,_)}function st(_){return P=>{n?window.confirm(o("warning"))&&(_(P),s(!1)):_(P)}}return vr(()=>{r?os(r,g):t(mn())},[r,g]),vr(()=>{a==="search"&&t(It())},[a]),vr(()=>{m&&t(so())},[m]),Il(C,()=>t(te(!0))),!v||!l?null:Jl(I,{placeholder:o("searchPlaceholder"),typePlaceholder:o("typePlaceholder"),onChangeSearch:i,onChangeOpen:st(_=>t(te(_))),onChangeType:_=>f(_),onChangePage:st(_=>t(V(_))),selectedType:g,search:r,page:a,isOpen:Y,types:[...G,...k],children:[Z(I.Page,{id:"search",children:Jl(I.ActionsBar,{list:[...O.map(_=>({text:_.label,type:"command"})),...ze.map(_=>({text:_.text||_.url||_.message,type:_.type}))],primaryLabel:o("use"),secondaryLabel:o("preview"),onPrimary:({text:_},P)=>ns(_,ze[P]),onSecondary:(_,P)=>{Zp(ze[P-O.length],ze[P-O.length].type)},children:[O.length>0&&Z(I.List,{heading:o("commands"),children:O.map((_,P)=>Z(I.ListItem,{index:Yr(P,[],"commands"),closeOnSelect:!1,onClick:_.onClick,children:_.label},_.label))}),[...G,...k].map(({value:_,label:P,list:Re,lineClamp:rt,listOrientation:_o},ru)=>Z(I.List,{heading:P,orientation:_o==="horizontal"?"horizontal":"vertical",children:ss(Re,_).map((oe,iu)=>Z(I.ListItem,{index:Yr(O.length+iu,[...G,...k].slice(0,ru).map(({list:au})=>au),_),closeOnSelect:!1,lineClamp:rt,onClick:()=>ns(oe.text,oe),description:_!=="IMAGE"?oe.title&&oe.text:void 0,onFeedback:_!=="IMAGE"?()=>Yp(oe):void 0,children:_==="IMAGE"?Z(I.Image,{title:oe.title||oe.text,src:oe.image}):oe.title||oe.text},`${oe.id}-${oe.text}`))},_))]})}),Z(I.Page,{id:"edit",onDismiss:st(()=>{t(V("search")),p(null)}),children:c&&Z(yn,{suggestion:c,onTouched:s,onDismiss:()=>{s(!1),t(V("search")),p(null),d([])},onNext:su,onPrevious:nu,onUse:_=>{t(V("search")),ns(_,{...c,source:`${c.source||"text_recommendation"}-preview`}),t(te(!1)),d([]),p(null)}})}),Z(I.Page,{id:"entities",title:o("entitiesTitle"),onDismiss:st(()=>{t(V("search"))}),children:Z(Ol,{onUse:ou,onCopy:Jp})}),Z(I.Page,{id:"summary",title:o("summaryTitle"),onDismiss:st(()=>{t(V("search"))}),children:Z(Ul,{onCopy:tu})}),Z(I.Page,{id:"knowledgeAssist",title:o("knowledgeAssist"),onDismiss:st(()=>{t(It()),t(V("search"))}),children:Z(Xl,{promptInstruction:l.knowledgeAssistPromptInstruction,question:r,onUse:eu,onResetQuestion:()=>{t(It()),i("")}})})]})},Yl=wf;import{jsx as _r,jsxs as kf}from"react/jsx-runtime";var Ef=()=>{let t=b("showSearch"),e=b("isEmbedded");return kf(Tf,{children:[t&&_r(Yl,{}),_r(_l,{}),e&&_r(El,{})]})},ec=Ef;import{connect as qf,useDispatch as Vf,useSelector as Rn}from"react-redux";function Lt(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{Fragment as Uf,useMemo as zf}from"react";import{Interweave as Pf}from"interweave";import{useEffect as Af,useMemo as Lf,useRef as Mf}from"react";import{useDispatch as Of,useSelector as Nf}from"react-redux";import{useEffect as Rf}from"react";function tc(t,e,o){Rf(()=>{let n=t.current;return n?(n.addEventListener(e,o),()=>{n.removeEventListener(e,o)}):()=>{}},[t,e,o])}var oc={root:"_root_4u430_1",actions:"_actions_4u430_8",badge:"_badge_4u430_15",formattedText:"_formattedText_4u430_19"};import{jsx as En,jsxs as Kf}from"react/jsx-runtime";var Df=["search","personal-collection-search","search-autocomplete"];function Hf(t,e,o,n={}){let s="";return Df.includes(e)?s=aa(Ds(t,o,{stripAgentPart:!0}),n.searchKeywords??[o]):s=Ds(t,o,n),n.placeholders===!0&&(s=la(s)),s}var Bf=()=>{},Ff=({index:t,selected:e,suggestion:o,onFeedback:n})=>{let s=b("inlineSuggestions"),r=Nf(gt),i=Of(),a=S("TextSuggestion",oc),l=Mf(null);Af(()=>{let p=setTimeout(()=>{i(xi({text:o.text,suggestion:o}))},500);return()=>{clearTimeout(p)}},[o]),tc(l,"click",()=>{i(Ae(t)),i(re({suggestion:o,text:o.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let c=Lf(()=>Hf(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:Kf("div",{className:a.root,onMouseEnter:()=>i(Ae(t)),children:[En(M,{ref:l,as:"button","data-testid":"suggestions-overlay-item",selected:e,onClick:Bf,children:En(Pf,{containerTagName:"div",noWrap:!1,tagName:"span",className:a.formattedText,content:c})}),e&&n&&En("div",{className:a.actions,children:En(pn,{onFeedback:()=>n(o),suggestion:o.text})})]})},nc=Ff;import{jsx as sc}from"react/jsx-runtime";var jf=({onFeedback:t,suggestions:e,selectedIndex:o,reverse:n})=>{let s=zf(()=>{let r=e.map((i,a)=>sc(nc,{index:a,selected:a===o,suggestion:i,onFeedback:t},`${i.text}-${i.source}`));return n?r.reverse():r},[e,o,n]);return sc(Uf,{children:s})},kn=jf;var rc={root:"_root_otdbu_1",paper:"_paper_otdbu_11"};import{jsx as In}from"react/jsx-runtime";var Wf=({textSuggestions:t,selectedIndex:e})=>{let o=S("InlineSuggestionsOverlay",rc),n=Rn(Lt),s=Vf(),r=Rn(le),i=Rn(dt),a=Rn(vn),l=b("showTextSuggestions");return ht(()=>{s(He({collapse:!0,skipWhenInputFocus:!0}))}),a||!n||!l||t.length===0||r!==!0||i===!1?null:In("div",{className:o.root,"data-variant":"inline",children:In("div",{className:o.paper,children:In(se,{children:In(kn,{suggestions:t,selectedIndex:e})})})})},Gf=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),ic=qf(Gf)(Wf);import Tr from"classnames";import{useEffect as rh,useRef as ih,useState as ah}from"react";import{connect as lh,useDispatch as ch,useSelector as lo}from"react-redux";import{useState as $f}from"react";function ac(t,e){let[o,n]=$f(()=>{if(typeof window>"u")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return E.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){E.error(i)}}]}import Zf from"classnames";import{Fragment as Jf,useCallback as br,useMemo as cc}from"react";var xr={};q(xr,{enUS:()=>Xf,nlNL:()=>Qf});var Xf={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"}]}]},Qf={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 lc={root:"_root_1vfca_1",anchor:"_anchor_1vfca_6",anchorButton:"_anchorButton_1vfca_11"};import{jsx as Pn,jsxs as pc}from"react/jsx-runtime";var Cr=(t,e,o)=>n=>Pn("button",{className:t.anchorButton,type:"button",value:e,onClick:o,children:n},e),Yf=({className:t,loginUrl:e,isEmbedded:o,onSnooze:n})=>{let s=T(xr),r=ne(),i=S("Login",lc),a=b("productName"),l=br(m=>{m.preventDefault(),n&&n(parseInt(m.target.value,10))},[]),c=br(m=>{m.preventDefault(),r.send(Et,!0)},[e]),p=cc(()=>m=>Pn("a",{href:e,className:i.anchor,target:"_blank",rel:"noreferrer",children:m},"login"),[e]),u=br(m=>Pn("button",{type:"button",className:i.anchorButton,onClick:c,children:m},"prompt"),[c]),{min:d,hour:g,day:f}=cc(()=>({min:Cr(i,60*10,l),hour:Cr(i,60*60,l),day:Cr(i,60*60*12,l)}),[]);return pc("div",{className:Zf(t,i.root),children:[s("loginPlease",{login:o?u:p,productName:a}),n&&pc(Jf,{children:[Pn("br",{}),s("snooze",{min:d,hour:g,day:f})]})]})},An=Yf;import{useDispatch as eh}from"react-redux";var uc={root:"_root_1g8fi_1",text:"_text_1g8fi_19"};import{jsx as dc,jsxs as oh}from"react/jsx-runtime";var th=({title:t})=>{let e=S("SearchTrigger",uc),o=eh();return oh("button",{type:"button",className:e.root,onClick:()=>o(te(!0)),children:[dc(_t,{}),dc("span",{className:e.text,children:t})]})},gc=th;var wr={};q(wr,{enUS:()=>nh,nlNL:()=>sh});var nh={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"}]},sh={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 mc={root:"_root_onpov_1",isInline:"_isInline_onpov_14",toggleButton:"_toggleButton_onpov_21",toggleButtonWrapper:"_toggleButtonWrapper_onpov_25",toggleButtonWrapperHidden:"_toggleButtonWrapperHidden_onpov_32",isCollapsed:"_isCollapsed_onpov_36",collapsible:"_collapsible_onpov_36",hints:"_hints_onpov_44",hintsHidden:"_hintsHidden_onpov_51",triggers:"_triggers_onpov_56",triggersRight:"_triggersRight_onpov_71"};import{jsx as U,jsxs as co}from"react/jsx-runtime";var ph=({textSuggestions:t,selectedIndex:e})=>{let o=S("SuggestionsOverlay",mc),n=T(wr),s=lo(Lt),r=hi(),i=ch(),a=ih(null),l=b("searchTriggerKey"),c=b("productName"),p=lo(vn),u=lo(le),d=lo(dt),[g,f]=ah(null),m=b("showSearch"),v=b("showTextSuggestions"),w=b("adminUrl"),h=b("isEmbedded"),[y,x]=ac("dd-snooze-until-ms",0),C=p||y>Date.now(),F=lo(O=>O.input.text),D=t.filter(O=>O.source!=="gpt").length,Y=()=>{C&&x(0),i(al(!C))},H=O=>{i(z({name:"suggestion feedback",data:{text:O.text,source:"overlay",context:F},options:{includeConversationData:!0}}))},k=O=>{let G=Date.now()+O*1e3;x(G),E.info(`Snooze until: ${new Date(G)}`),i(He({collapse:!0}))};return rh(()=>{D===0&&f(null)},[t,D]),ht(()=>{i(He({collapse:!0,skipWhenInputFocus:!0}))}),u===null||d===!1?null:u===!1?co("div",{ref:a,className:Tr(o.root,{[o.isCollapsed]:C}),children:[!C&&co("div",{className:o.triggers,children:[U("div",{style:{flex:1}}),U("div",{className:o.triggersRight,children:U(ct,{className:o.toggleButton,title:n("collapse"),onClick:Y,isCollapsed:!1})})]}),U("div",{className:o.toggleButtonWrapper,children:U(ct,{className:o.toggleButton,title:n("open",{productName:c}),onClick:Y,isCollapsed:!0})}),U("div",{className:o.collapsible,children:U(An,{loginUrl:w,isEmbedded:h,onSnooze:k})})]}):!r||!s?null:co("div",{ref:a,className:Tr(o.root,{[o.isCollapsed]:C}),children:[!C&&co("div",{className:o.triggers,children:[U("div",{style:{flex:1},children:m&&U("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>f(n(dn()?"searchHintMac":"searchHintWindows",{searchTriggerKey:l.toUpperCase()})),onMouseLeave:()=>f(null),children:U(gc,{title:n("search")})})}),co("div",{className:o.triggersRight,onFocus:()=>{},children:[U("div",{className:Tr(!g&&o.hintsHidden,o.hints),children:g}),U(ct,{className:o.toggleButton,title:n("collapse"),onClick:Y,isCollapsed:!1})]})]}),U("div",{className:o.toggleButtonWrapper,children:U(ct,{className:o.toggleButton,title:n("open",{productName:c}),onClick:Y,isCollapsed:!0})}),D>0&&v&&U("div",{className:o.collapsible,onFocus:()=>{},children:U(se,{children:U(kn,{onFeedback:H,suggestions:t,selectedIndex:e,reverse:!0})})})]})},uh=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),fc=lh(uh)(ph);import{Provider as dh}from"react-redux";import{jsx as Ln}from"react/jsx-runtime";var gh=({children:t})=>{let o=b("locale").replace("-","");return Ln(Is.Provider,{value:o,children:t})},mh=({store:t,customStyles:e={},children:o})=>Ln(dh,{store:t,children:Ln(gh,{children:Ln(Kt.Provider,{value:e,children:o})})}),Mt=mh;import Dr from"classnames";import{Interweave as ty}from"interweave";import{useCallback as oy,useEffect as ny,useMemo as Nc,useRef as sy}from"react";import{connect as ry}from"react-redux";import{cloneElement as fh}from"react";var hh=["div","span","mark","strong","b","i","u","em"];function Er(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(hh.includes(s)){let i=Array.isArray(n.props.children)?n.props.children:[n.props.children];return[...t.slice(0,t.length-1),fh(n,{children:Er(i,e,o+1)})]}return[...t,...e]}function Fe(t){return t.tagName.toLowerCase()==="textarea"}var hc={root:"_root_81non_1",container:"_container_81non_3",agentText:"_agentText_81non_5",tabText:"_tabText_81non_6",hint:"_hint_81non_6",matchSelection:"_matchSelection_81non_10",focus:"_focus_81non_16",resetIndent:"_resetIndent_81non_20",matchKeyword:"_matchKeyword_81non_24",matchPlaceholder:"_matchPlaceholder_81non_25",hover:"_hover_81non_31",hintText:"_hintText_81non_64",popover:"_popover_81non_72",popoverRoot:"_popoverRoot_81non_77",popoverContentContainer:"_popoverContentContainer_81non_81",popoverContent:"_popoverContent_81non_81",selectionOptions:"_selectionOptions_81non_107",selectionOptionsIsHidden:"_selectionOptionsIsHidden_81non_112",selectionOptionsButton:"_selectionOptionsButton_81non_116",caret:"_caret_81non_132",popoverSuggestionsRoot:"_popoverSuggestionsRoot_81non_136",suggestionsOverlayInputStyles:"_suggestionsOverlayInputStyles_81non_141"};import Mh from"classnames";import{Matcher as Oh}from"interweave";import{useEffect as Nh,useMemo as Dh}from"react";function yc(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function Mn(t){return e=>{t.forEach(o=>{typeof o=="function"?o(e):o!=null&&(o.current=e)})}}function Sc(t){return t!=null}import Cc from"classnames";import{createRef as Eh,useCallback as Rr,useMemo as kh,useRef as Rh,useState as Ih}from"react";import{useState as yh,useLayoutEffect as Sh}from"react";var vh=["bottom","height","left","right","top","width"],_h=(t={},e={})=>vh.some(o=>t[o]!==e[o]),Te=new Map,vc,_c=()=>{let t=[],e=[];Te.forEach((o,n)=>{if(n instanceof Element&&!n.isConnected){e.push(n);return}let s=n.getBoundingClientRect();_h(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))}),vc=window.requestAnimationFrame(_c)};function xh(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&&_c()},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(vc)}}}}function kr(t){let[e,o]=yh(null);return Sh(()=>{if(!t.current)return;let n=xh(t.current,s=>{o(s)});return n.observe(),()=>{n.unobserve()}},[t]),e}import{useContext as bh,useLayoutEffect as Ch,useState as wh}from"react";import{createPortal as Th}from"react-dom";var xc={root:"_root_1jq08_1"};var bc=({children:t})=>{let[e,o]=wh(null),n=bh(Kt);return Ch(()=>{let s=document.createElement("div");return $e(s),s.classList.add(xc.root),n!=null&&n.portalRootNode&&s.classList.add(n==null?void 0:n.portalRootNode),document.body.appendChild(s),o(s),()=>{s.isConnected&&document.body.removeChild(s)}},[]),e?Th(t,e):null};var me={ref:"_ref_1rcyi_1",root:"_root_1rcyi_7",positionAbove:"_positionAbove_1rcyi_13",positionBelow:"_positionBelow_1rcyi_17",positionLeft:"_positionLeft_1rcyi_21",positionRight:"_positionRight_1rcyi_25",alignStart:"_alignStart_1rcyi_29",alignCenter:"_alignCenter_1rcyi_34",alignEnd:"_alignEnd_1rcyi_40"};import{jsx as Ir}from"react/jsx-runtime";var On=(t=!1)=>{let[e,o]=Ih(t),n=Rr(()=>o(!0),[]),s=Rr(()=>o(!1),[]),r=Rr(()=>o(a=>!a),[]),i=Rh(null);return{opened:e,open:n,close:s,toggle:r,triggerRef:i}};function Pr(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 Nn=({className:t,triggerRef:e,boundaryRef:o=Eh(),position:n="above",align:s="center",children:r,toStyle:i=Pr,...a})=>{let l=kr(e),c=kr(o),p=kh(()=>i(l,c,0),[l,c]);return Ir(bc,{children:Ir("div",{className:Cc(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:p,...a,role:"dialog",children:Ir("div",{className:Cc(t,me.root),children:r})})})};import Ph from"classnames";import{forwardRef as Ah,useRef as Lh}from"react";import{jsx as wc}from"react/jsx-runtime";var Dn=Ah(({className:t,children:e,...o},n)=>{let s=Lh(null),r=S("TabCompletion",Se);return wc("div",{ref:Mn([s,n]),className:Ph(t,r.popoverContentContainer),...o,children:wc("div",{className:r.popoverContent,children:e})})});import{jsx as po,jsxs as Fh}from"react/jsx-runtime";var Hh=t=>e=>{let o=Pr(e);return"top"in o&&(o.width=t.width-(e.left-t.left)-10),o},Bh=({inputElement:t,boundaryRef:e,inputStyle:o,children:n,suggestion:s})=>{let r=S("TabCompletion",Se),i=On(),a=Dh(()=>Hh(t.getBoundingClientRect()),[t]),[l,c]=en(t);return Nh(()=>{c?i.open():i.close()},[c]),Fh("span",{children:[po("mark",{ref:Mn([l,i.triggerRef]),className:Mh(r.matchKeyword,{[r.hover]:c}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:n}),i.opened&&po(Nn,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:po(Dn,{style:o,children:po("div",{className:r.hintText,children:s})})})]})},Hn=class extends Oh{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${yc(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(Sc);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 po(Bh,{inputElement:o.inputElement,suggestion:o.suggestion,inputStyle:o.inputStyle,boundaryRef:o.boundaryRef,children:e},`keyword_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import Nr from"classnames";import{Matcher as $h}from"interweave";import{createRef as Xh,forwardRef as Qh,useCallback as Zh,useEffect as Lc,useRef as Mc,useState as Oc}from"react";import{useDispatch as Jh}from"react-redux";import{jsx as Tc}from"react/jsx-runtime";var Ec=()=>Tc("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:Tc("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 Kh,useEffect as Rc,useState as Ic}from"react";import{useDispatch as Uh,useSelector as Pc}from"react-redux";import zh from"lodash.debounce";var kc={root:"_root_1muu8_1",content:"_content_1muu8_7"};function Bn(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 Ar(t){return t.replace("https://www.","").replace("https://","")}import{jsx as Ye,jsxs as Lr}from"react/jsx-runtime";var jh=3,qh=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),Vh=({onSelectLink:t,onDismiss:e,placeholder:o,visitUrlText:n,linkCount:s=jh})=>{let r=S("LinkSearch",kc),[i,a]=Ic(""),l=Uh(),c=Pc(Wa("url")),p=Pc(Aa("URL",qh)),[u,d]=Ic(p.length-1),g=b("fallbackImage"),f=h=>{let y=h.target;a(y.value)},m=(h,y)=>{h.stopPropagation(),h.preventDefault(),window.open(y,"_blank")},v=h=>{var C;let y=u-1<0?p.length-1:u-1,x=u+1===p.length?0:u+1;h.code==="Escape"&&(a(""),e()),h.code==="ArrowUp"&&d(y),h.code==="ArrowDown"&&d(x),h.code==="Enter"&&t(((C=p[u])==null?void 0:C.text)||i)},w=Kh(zh(h=>{l(Ze({query:h,type:"URL",tags:["link-search"]}))},300),[]);return Rc(()=>{i&&w(i)},[i]),Rc(()=>()=>{l(mn())},[]),Lr("div",{className:r.root,children:[Ye(se,{withDivider:!0,children:(i?p:c).slice(0,s).map((h,y)=>Ye(M,{selected:u===y,onClick:()=>t(h.text),"data-testid":"linksearch-suggestion",children:Lr(N,{children:[Ye(N.Image,{src:Bn(h,"small",g||void 0),title:h.title||h.text}),Lr(N.Content,{className:r.content,cropText:!0,children:[Ye(N.Title,{children:h.title||Ar(h.text)}),h.title&&Ar(h.text)]}),Ye(M.Actions,{children:Ye(M.ActionButton,{label:n,onClick:x=>m(x,h.text)})})]})},h.text))}),Ye(no,{value:i,onChange:f,autoFocus:!0,placeholder:o,onKeyUp:v})]})},Ac=Vh;var Mr={};q(Mr,{enUS:()=>Wh,nlNL:()=>Gh});var Wh={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}]},Gh={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 Or}from"react/jsx-runtime";var Yh=Qh((t,e)=>{let o=S("TabCompletion",Se);return fe("mark",{ref:e,className:Nr(o.matchSelection)},"selection-start")}),ey=({startRef:t,boundaryRef:e,inputStyle:o,inputElement:n,children:s})=>{let r=T(Mr),i=S("TabCompletion",Se),a=Mc(null),l=Mc(null),[c,p]=Oc(null),u=Jh(),d=On(document.activeElement===n),[g]=Oc(()=>document.createRange());d.triggerRef.current=g,Lc(()=>()=>g.detach(),[]),Lc(()=>{let m=t.current,v=a.current;!m||!v||(g.setStart(m,0),g.setEnd(v,0))},[t.current,a.current]),ht(()=>{d.close()});let f=Zh(m=>{let v=g.toString(),w=/^http(s?):\/\//.test(m)?m:`https://${m}`;u(No({text:`[${v}](${w})`,replace:"selection"}))},[]);return Or("span",{children:[fe("mark",{ref:a,className:Nr(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":d.opened?"true":"false",children:s}),d.opened&&fe(Nn,{className:i.popoverRoot,triggerRef:d.triggerRef,boundaryRef:e,position:"above",align:"start",children:Or(Dn,{style:o,ref:l,children:[fe("div",{className:Nr(i.selectionOptions,{[i.selectionOptionsIsHidden]:c!==null}),children:Or("button",{type:"button",tabIndex:c===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>p("insertLink"),children:[fe(Ec,{}),fe("span",{children:"\xA0"}),fe("span",{children:r("insertLink")})]})}),c==="insertLink"&&fe(Ac,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:f,onDismiss:()=>{p(null),d.close()}})]})})]},"selection-end")},Fn=class extends $h{charCount=0;foundIndex=0;startRef=null;props;onBeforeParse(e,o){return this.props=o,this.charCount=0,this.startRef=Xh(),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(Yh,{ref:this.startRef}):fe(ey,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{jsx as Ot,jsxs as ly}from"react/jsx-runtime";var iy=({enabled:t,content:e,tabText:o,showTabHint:n,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:l})=>{let c=S("TabCompletion",hc),p=b("insertLink"),u=b("showMidSentenceSuggestions"),d=b("inlineSuggestions"),g=on(a),f=sy(null);ny(()=>{Fe(a)&&g&&nn(a,g)},[g]);let m=oy(h=>{if(!s||!o)return h;let y=[Ot("span",{className:c.resetIndent,children:"\u200B"},"u200B"),Ot("span",{"data-testid":"tab-completion",className:Dr(c.tabText,c.resetIndent),"data-source":l,children:o},"tabText")];return n&&y.push(Ot("span",{className:Dr(c.hint,c.resetIndent),children:Ot(ls,{keyCode:"tab"},"tabHint")})),Er(h,y)},[s,o,n]),v=Nc(()=>{let h=[];return p&&h.push(new Fn("selection")),h.push(new ft("placeholders")),r&&h.push(new Hn("keywords")),h},[d,p,r]),w=Nc(()=>{let h=window.getComputedStyle(a);return{"--dd-color":h.color,"--dd-font-size":h.fontSize,"--dd-font-family":h.fontFamily,"--dd-font-variant":h.fontVariant}},[]);return t?ly("div",{ref:h=>{h!=null&&h.parentElement&&(f.current=h==null?void 0:h.parentElement)},className:c.root,style:w,children:[Ot(ty,{tagName:"span",containerTagName:"div",className:Dr(c.container,c.agentText),disableLineBreaks:Fe(a),content:e||"\u200B",onAfterParse:m,matchers:v,selection:g,keywordMatches:i,inputElement:a,inputStyle:w,boundaryRef:f,inlineSuggestionsOnlyAtEnd:!u}),Ot("br",{})]}):null},ay=({input:t,ui:e,settings:o,styleSuggestions:n,conversation:s})=>{var m;let{tabCompletionSuggestion:r}=t,i=(r==null?void 0:r.text)||"",a=(r==null?void 0:r.source)||"",l=t.html??$t(t.text),c=i.indexOf(t.text)===0?i.slice(t.text.length):"",{showTabHint:p}=e,{isSupported:u}=s,{showTabCompletion:d,visible:g,showStyleSuggestions:f}=o;return{showTabHint:p,showStyleSuggestions:f,showTabCompletion:d,content:l,tabText:c,source:a,keywordMatches:((m=n.list)==null?void 0:m.keywordMatches)??[],enabled:g&&u!==!1}},Dc=ry(ay)(iy);import jy from"classnames";import{useEffect as qy}from"react";import{useDispatch as Vy,useSelector as J}from"react-redux";import{createAsyncThunk as uo,createSlice as cy}from"@reduxjs/toolkit";var Hc={list:[],fetchState:"idle",isInitialRequest:null},Fc=t=>t.autoflows.list||[],Bc=t=>e=>{var o;return(o=e.list)==null?void 0:o.find(n=>n.triggerPayload===t)},Ee=uo("autoflows/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getAutoflows(t)}),Hr=uo("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(Ee(t.platformSessionId))}),Br=uo("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(Ee(t.platformSessionId))}),py=cy({name:"autoflows",initialState:Hc,reducers:{},extraReducers:t=>{t.addCase(Hr.pending,(e,o)=>{let n=Bc(o.meta.arg.triggerPayload)(e);n.state="Started",n.isBusy=!0}),t.addCase(Br.pending,(e,o)=>{let n=Bc(o.meta.arg.triggerPayload)(e);n.state="Aborted",n.isBusy=!0}),t.addCase(Ee.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}),t.addCase(Ee.rejected,e=>{e.fetchState="error"}),t.addCase(Ee.fulfilled,(e,o)=>{e.list=o.payload,e.fetchState="done"}),t.addCase(R,()=>Hc)}}),Kc=uo("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(Ee(t))}),s.on("sessionCompleted",()=>{o(Ee(t))})}),Uc=uo("autoflows/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),zc=py.reducer;import{createAsyncThunk as mo,createSlice as uy}from"@reduxjs/toolkit";var jc={list:[],fetchState:"idle",isInitialRequest:null,sentSuggestions:[],errorSuggestions:[],answeredSuggestions:[]},qc=t=>t.customMessages.list,Vc=t=>e=>!!e.customMessages.sentSuggestions.find(o=>o===t),Wc=t=>e=>!!e.customMessages.answeredSuggestions.find(o=>o===t),Gc=t=>e=>!!e.customMessages.errorSuggestions.find(o=>o===t),go=mo("customMessages/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getCustomMessages(t)}),Kn=mo("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)}),Un=mo("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=uy({name:"customMessages",initialState:jc,reducers:{onCustomMessage(t,e){Array.isArray(e.payload)?t.list=e.payload:t.list=[e.payload]}},extraReducers:t=>{t.addCase(go.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(go.rejected,e=>{e.fetchState="error"}).addCase(go.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload||[]}).addCase(Kn.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.errorSuggestions=e.errorSuggestions.filter(n=>o.meta.arg.suggestion.text!==n)}).addCase(Kn.rejected,(e,o)=>{let n=e.sentSuggestions.indexOf(o.meta.arg.suggestion.text);e.errorSuggestions.push(...e.sentSuggestions.splice(n,1))}).addCase(Un.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.answeredSuggestions.push(o.meta.arg.suggestion.text)}).addCase(Un.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(R,()=>jc)}}),Xc=mo("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))})}),Qc=mo("customMessages/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),Zc=$c.reducer;import{createAsyncThunk as Jc,createSlice as dy}from"@reduxjs/toolkit";var gy={jwt:null,accountUrl:null,interval:null},Yc=t=>e=>{let{exchangeToken:{jwt:o,accountUrl:n}}=e;return o&&n?`${n}/apis/admin/session/jwt/?jwt=${o}&redirect=${t}`:null},Fr=Jc("exchangeToken/getTemporaryExchangeToken",async(t,e)=>{let{deepdeskAPI:o}=e.extra,n=await o.getTemporaryExchangeToken();return{accountUrl:o.client.baseUrl,jwt:n}}),Kr=Jc("exchangeToken/pollExchangeToken",(t={},e)=>{let{interval:o=1e3*60*30}=t,{dispatch:n}=e;return n(Fr()),setInterval(()=>n(Fr()),o)}),ep=dy({name:"exchangeToken",initialState:gy,reducers:{stopPollExchangeToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Fr.fulfilled,(e,o)=>{e.jwt=o.payload.jwt,e.accountUrl=o.payload.accountUrl}),t.addCase(Kr.fulfilled,(e,o)=>{e.interval=o.payload})}}),{stopPollExchangeToken:tp}=ep.actions,op=ep.reducer;function np(t){let{customMessages:e,autoflows:o}=t;return o.fetchState==="loading"&&o.isInitialRequest===!0||e.fetchState==="loading"&&e.isInitialRequest===!0}import{Fragment as Cy}from"react";import{connect as wy}from"react-redux";import _y from"classnames";import{Fragment as xy}from"react";import my from"classnames";var sp={root:"_root_838fd_1"};import{jsx as hy}from"react/jsx-runtime";var fy=({className:t,children:e})=>{let o=S("Unicode",sp);return hy("span",{className:my(t,o.root),children:e})},rp=fy;var ip={isDisabled:"_isDisabled_1rmfm_1",buttonStart:"_buttonStart_1rmfm_5",root:"_root_1rmfm_8",buttonStop:"_buttonStop_1rmfm_8",stateBadge:"_stateBadge_1rmfm_19",isCompleted:"_isCompleted_1rmfm_26",isStarted:"_isStarted_1rmfm_30",isAborted:"_isAborted_1rmfm_34"};var Ur={};q(Ur,{enUS:()=>yy,nlNL:()=>Sy});var yy={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"}]},Sy={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 et,jsxs as zn}from"react/jsx-runtime";var by=({disabled:t,state:e,displayName:o,description:n,onStartAutoflow:s,onStopAutoflow:r})=>{let i=S("Autoflow",ip),a=T(Ur),l=e==="Started"?"stop":"start",c=l==="start"?"\u25B6":l==="stop"?"\u25FC":"";return zn(M,{className:_y(i.root,{[i.isDisabled]:t,[i.isCompleted]:e==="Completed",[i.isAborted]:e==="Aborted",[i.isStarted]:e==="Started"}),children:[et(N,{children:zn(N.Content,{children:[zn(N.Title,{children:[e&&et("span",{className:i.stateBadge,children:a(e)}),o]}),et("span",{children:n})]})}),et(M.Actions,{fixed:e==="Started",children:et(M.ActionButton,{primary:!0,className:l==="start"?i.buttonStart:i.buttonStop,onClick:e==="Started"?r:s,disabled:t,label:zn(xy,{children:[et(rp,{children:c})," ",et("span",{children:a(l)})]})})})]})},ap=by;import{jsx as lp}from"react/jsx-runtime";var Ty=(t,e)=>{let o=e.filter(n=>n.state==="Started");return o.length>0?o.indexOf(t)===-1:!1},Ey=({autoflows:t,onStartAutoflow:e,onStopAutoflow:o,platformSessionId:n})=>lp(Cy,{children:t.map(s=>lp(ap,{displayName:s.displayName,description:s.description,disabled:s.isBusy||Ty(s,t),state:s.state,onStartAutoflow:()=>e({platformSessionId:n,triggerPayload:s.triggerPayload}),onStopAutoflow:()=>o({platformSessionId:n,triggerPayload:s.triggerPayload})},s.displayName))}),ky=({autoflows:t,conversation:e})=>{var o;return{autoflows:t.list,platformSessionId:(o=e.current)==null?void 0:o.sessionId}},Ry={onStartAutoflow:Hr,onStopAutoflow:Br},cp=wy(ky,Ry)(Ey);import{useEffect as Iy,useState as Py}from"react";import{useDispatch as Ay}from"react-redux";import dp from"classnames";import{jsx as pp}from"react/jsx-runtime";var zr=()=>pp("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:pp("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 up={root:"_root_rjdyr_1",entity:"_entity_rjdyr_10",entityText:"_entityText_rjdyr_46",iconWrapper:"_iconWrapper_rjdyr_53",icon:"_icon_rjdyr_53",iconClicked:"_iconClicked_rjdyr_67"};import{jsx as Nt,jsxs as gp}from"react/jsx-runtime";var Ly=({entities:t})=>{let e=S("EntitiesWidgetList",up),[o,n]=Py(void 0),s=Ay(),r=()=>{n(void 0)},i=a=>{t&&(n(t.indexOf(a)),ro(a.text),s(z({name:"entity copied",data:{entity:a,type:"copy"}})))};return Iy(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[o]),!t||t.length===0?null:Nt("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,l)=>gp("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[Nt("span",{className:e.entityText,children:a.text}),gp("span",{className:e.iconWrapper,children:[Nt("span",{className:dp(e.icon),children:Nt(zr,{})}),Nt("span",{className:dp(e.icon,o===l&&e.iconClicked),children:Nt(zr,{})})]})]},a.text))})},mp=Ly;import My from"classnames";import{useCallback as fp}from"react";import{useDispatch as Oy,useSelector as jn}from"react-redux";var ke={root:"_root_1e6ej_1",title:"_title_1e6ej_8",isUsed:"_isUsed_1e6ej_13",quickReplies:"_quickReplies_1e6ej_22",quickReply:"_quickReply_1e6ej_29",hasError:"_hasError_1e6ej_39",label:"_label_1e6ej_43",errorIcon:"_errorIcon_1e6ej_48"};import{jsx as Ke,jsxs as qn}from"react/jsx-runtime";var Ny=({suggestion:t})=>{let e=T(Qe),o=Oy(),n=jn(Vc(t.text)),s=jn(Wc(t.text)),r=jn(Gc(t.text)),i=jn(ko),{replyOptions:a}=t,l=fp(p=>{p.preventDefault(),p.stopPropagation(),!(n||!i)&&o(Kn({platformSessionId:i,suggestion:t}))},[t,n,o,i]),c=fp(p=>{if(p.preventDefault(),p.stopPropagation(),!i||!a)return;let u=parseInt(p.target.dataset.index,10),d=a[u];o(Un({platformSessionId:i,reply:d,suggestion:t}))},[t,n,o,i]);return qn(M,{onClick:l,className:My(ke.root,{[ke.isUsed]:n,[ke.hasError]:r}),children:[Ke(N,{children:qn(N.Content,{children:[qn(N.Title,{className:ke.title,children:[t.text," ",Ke(cs,{className:ke.label,children:"analyse tool"})," ",r&&Ke("span",{className:ke.errorIcon,role:"img","aria-label":e("sendingError"),title:e("sendingError"),children:"!"})]}),a&&a.length>0&&Ke("ul",{className:ke.quickReplies,children:a.map(p=>Ke("li",{className:ke.quickReply,children:p.title},p.title))})]})}),qn(M.Actions,{fixed:r||n,children:[a&&a.length>0&&Ke(M.DropdownButton,{label:e("answer"),disabled:s,children:a.map((p,u)=>Ke(M.DropdownItem,{index:u,label:p.title,onClick:c},p.title))}),Ke(M.ActionButton,{primary:!0,disabled:n,onClick:l,label:e(n?"suggestionSent":r?"tryAgain":"sendSuggestion")})]})]})},hp=Ny;import{jsx as yp}from"react/jsx-runtime";var Sp=()=>yp("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:yp("path",{d:"M17 13.5v6H5v-12h6m3-3h6v6m0-6-9 9",stroke:"currentColor",strokeWidth:"1.5",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"})});import{useSelector as By}from"react-redux";import{useCallback as Dy}from"react";import{jsx as tt,jsxs as Vn}from"react/jsx-runtime";var Hy=({suggestion:t,lines:e,onEdit:o,onUse:n})=>{var d;let s=t.text||t.url||t.message,r=fn(s),i=T(Qe),a=b("showImages"),l=b("fallbackImage"),c=g=>{g.preventDefault(),g.stopPropagation(),n(s)},p=g=>{g.preventDefault(),g.stopPropagation(),o(t)},u=Dy(g=>{window.open(r,"_blank"),g.stopPropagation(),g.preventDefault()},[r]);return Vn(M,{onClick:c,"data-testid":"edit-suggestion",children:[Vn(N,{children:[a&&t.image&&tt(N.Image,{src:Bn(t,"small",l||void 0),title:t.title}),Vn(N.Content,{children:[t.title&&tt(N.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((d=t.searchKeywords)==null?void 0:d.length)>0&&tt(M.Labels,{labels:t.searchKeywords}),tt(N.Content,{cropText:e==="single",lineClamp:e==="multiple",children:s})]})]}),Vn(M.Actions,{children:[r&&tt(M.ActionButton,{onClick:u,label:i("visitUrl")}),tt(M.ActionButton,{primary:!0,onClick:p,label:i("preview")}),tt(M.ActionButton,{primary:!0,onClick:c,label:i("useSuggestion")})]})]})},vp=Hy;import{Fragment as Ky,jsx as _p}from"react/jsx-runtime";var Fy=({contentType:t,lines:e,suggestions:o})=>{let n=ne(),s=By(bt),r=a=>{n.send(rr,{state:s,suggestion:a,contentType:t})},i=(a,l)=>{n.send(be,{text:a,suggestion:{...l,source:l.source,sourceText:l.text}})};return _p(Ky,{children:o.map(a=>_p(vp,{suggestion:a,lines:e,onEdit:l=>r(l),onUse:l=>i(l,a)},a.text||a.url||a.message))})},xp=Fy;var jr={};q(jr,{enUS:()=>Uy,nlNL:()=>zy});var Uy={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"}],actions:[{type:0,value:"Shortcuts"}],linkPersonalcollection:[{type:0,value:"Personal Collection"}],linkSummary:[{type:0,value:"Summarize"}],linkKnowledgeSearch:[{type:0,value:"Knowledge Assist"}],linkSearch:[{type:0,value:"Search"}]},zy={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"}],actions:[{type:0,value:"Shortcuts"}],linkPersonalcollection:[{type:0,value:"Personal Collection"}],linkSummary:[{type:0,value:"Gesprek samenvatten"}],linkKnowledgeSearch:[{type:0,value:"Knowledge assist"}],linkSearch:[{type:0,value:"Zoeken"}]};var bp={root:"_root_x0pwe_1",loginText:"_loginText_x0pwe_7",stateText:"_stateText_x0pwe_8",sectionList:"_sectionList_x0pwe_20",shortcutList:"_shortcutList_x0pwe_24",shortcut:"_shortcut_x0pwe_24",link:"_link_x0pwe_52"};import{jsx as Cp}from"react/jsx-runtime";var wp=()=>Cp("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:Cp("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 Tp}from"react/jsx-runtime";var Ep=()=>Tp("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:Tp("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{jsx as L,jsxs as Dt}from"react/jsx-runtime";var Wn=(t,e)=>{let o=J(le);qy(()=>o?e.every(n=>!!n)?t():()=>{}:()=>{},[...e,o])},Wy=()=>{let t=T(jr),e=Vy(),o=b("isEmbedded"),n=S("Widget",bp),s=b("showAutoflows"),r=b("showCustomMessages"),i=b("showPersonalCollectionLink"),a=b("showSummaryCommand"),l=b("showKnowledgeSearch"),c=b("showSearch"),p=J(Pt),u=J(wn),d=J(Fc),g=J(xn),f=J(qc),m=J(Ro),v=J(dt),w=J(le),h=J(ko),y=J(np),x=J(bt),C=ne(),F=J($a),D=J(Yc("/admin/personal-collection")),Y=b("adminUrl");if(Wn(()=>(e(go(h)),e(Xc(h)),()=>{e(Qc(h))}),[e,v,r,h]),Wn(()=>(e(Ee(h)),e(Kc(h)),()=>{e(Uc(h))}),[e,v,s,h]),Wn(()=>{u.forEach(({type:k})=>{e(k==="entities"?ce():_e(k))})},[e,v,m,p]),Wn(()=>(e(Kr()),()=>{e(tp())}),[e,v,i,m]),v===!1)return L("div",{className:n.stateText,children:L("div",{children:L("p",{children:t("notSupported")})})},"supported");if(w===!1)return L("div",{className:n.loginText,children:L("div",{children:L(An,{isEmbedded:o,loginUrl:Y})})},"login");if(!p||!h||w===null||F||y)return L("div",{className:n.stateText,children:L("div",{children:L("p",{children:t("waiting")})})},"waiting");let H=c||a||l||D;return L("div",{className:jy(n.root),"data-testid":"widget",children:Dt(us,{className:n.sectionList,children:[H&&L(je,{title:t("actions"),type:"shortcuts",children:Dt("div",{className:n.shortcutList,children:[c&&Dt("button",{className:n.shortcut,"data-testid":"shortcut-search",onClick:()=>C.send("ShowCommandPalette",{isOpen:!0}),children:[L(_t,{}),t("linkSearch")]}),a&&Dt("button",{className:n.shortcut,"data-testid":"shortcut-summary",onClick:()=>C.send("ShowCommandPalette",{isOpen:!0,page:"summary"}),children:[L(Ep,{}),t("linkSummary")]}),l&&Dt("button",{className:n.shortcut,"data-testid":"shortcut-knowledge-assist",onClick:()=>C.send("ShowCommandPalette",{isOpen:!0,page:"knowledgeAssist"}),children:[L(wp,{}),t("linkKnowledgeSearch")]}),D&&Dt("a",{className:n.shortcut,target:"_blank",href:D,"data-testid":"shortcut-personal-collection",rel:"noreferrer",children:[L(Sp,{}),t("linkPersonalcollection")]})]})}),r&&f.length>0&&L(je,{type:"custom-messages","data-testid":"custom-messages",children:L(se,{withDivider:!0,children:f.map(k=>L(hp,{suggestion:k},k.text))})}),s&&d.length>0&&L(je,{type:"autoflows",title:t("titleAutoflows"),"data-testid":"autoflows",children:L(se,{withDivider:!0,children:L(cp,{})})}),u.map(({type:k,title:O,amount:G,lines:os})=>{var ze;switch(k){case"entities":return g&&g.length>0&&L(je,{type:k,title:O,"data-testid":`type-${k}`,children:L(mp,{entities:g})},k);default:return((ze=x[k])==null?void 0:ze.fetchState)==="done"&&x[k].suggestions.length>0&&L(je,{type:k,title:O,"data-testid":`type-${k}`,children:L(se,{withDivider:!0,children:L(xp,{lines:os,contentType:k,suggestions:x[k].suggestions.slice(0,G)||[]})})},k)}})]})})},kp=Wy;function ho(t){let e=new Range;return e.selectNodeContents(t),e}function Rp(t,e,o){try{return ot(t,e,o),!0}catch{return!1}}function Gn(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function $n(t){return"tagName"in t&&t.tagName==="BR"}var fo=/[\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(l,c){let p=-1,u=/[\u200B-\u200D\uFEFF]/;if(!u.test(l))return c;for(let d=0;d<=l.length;d++)if(u.test(l[d])||p++,p===c)return d;throw new Error("Offset out of range")}function a(l){switch(l.nodeType){case Node.TEXT_NODE:{let c=l.textContent,p=c.replace(fo,""),u=s+p.length,d=e>=s&&e<=u,g=o>=s&&o<=u;if(d){let f=i(c,e-s);f===0&&!g?n.setStartBefore(l):n.setStart(l,f)}g&&(n.setEnd(l,i(c,o-s)),r=!0),s=u;break}case Node.ELEMENT_NODE:{if($n(l)&&(s===e&&n.setStartBefore(l),s++,s===o)){n.setEndAfter(l),r=!0;return}for(let p=0;p<l.childNodes.length&&(a(l.childNodes[p]),!r);p++);let c=l.lastChild;Gn(l)&&c&&!Gn(c)&&!$n(c)&&s++;break}default:break}}if(a(t),n.startContainer===document)throw new Error("Offsets out of bound");return n}function Xn(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,l,c=0;function p(u){let d=u===o,g=u===s;switch(u.nodeType){case Node.TEXT_NODE:{let f=u.textContent;d&&(a=c+f.substring(0,n).replace(fo,"").length),g&&(l=c+f.substring(0,r).replace(fo,"").length),c+=f.replace(fo,"").length;break}case Node.ELEMENT_NODE:{let f=u.nextSibling===null;$n(u)&&!f&&c++;for(let m=0;m<u.childNodes.length;m++){let v=d&&m===n,w=g&&m===r;if(v&&(a=c),w&&(l=c),l!==void 0||((!v||!i)&&p(u.childNodes[m]),g&&m===r-1&&(l=c),l!==void 0))break}!g&&Gn(u)&&!f&&c++,g&&(l=c);break}default:break}}if(p(t),l===void 0)throw new Error("Could not determine start and end");return{start:a??l,end:l}}function Qn(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 l(c){let p=c===o,u=c===s;switch(p&&i++,c.nodeType){case Node.TEXT_NODE:{if(i!==0)return;let d=p?n:0,g=u?r:void 0,f=c.textContent.replace(fo,"");d===0&&g===void 0?a+=f:a+=f.substring(d,g);break}case Node.ELEMENT_NODE:{let d=c.nextSibling===null;i===0&&$n(c)&&!d&&(a+=`
4
+ `);for(let g=p?n:0;g<(u?Math.min(r,c.childNodes.length):c.childNodes.length)&&(l(c.childNodes[g]),i!==1);g++);!u&&i===0&&Gn(c)&&!d&&(a+=`
5
+ `);break}default:break}u&&i++}return l(t),a}function Ip(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var Ht=class extends Me{observer;lastKnownSelection=null;getRootNode(){return this.element.getRootNode()}getText(){let e=new Range;return e.selectNodeContents(this.element),Qn(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!Ip(o)&&(e.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=e.getBoundingClientRect(),e.deleteContents(),!Ip(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let e=this.getRange();if(e)return Xn(this.element,e);let o=this.lastKnownSelection;if(o&&Rp(this.element,o.start,o.end))return o;let n=ho(this.element);return n.collapse(!1),Xn(this.element,n)}getSelectedText(){let{start:e,end:o}=this.getSelection();return Qn(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(){super.listen(),this.observer=new MutationObserver(()=>{setTimeout(()=>{this.triggerChange()},0)}),this.observer.observe(this.element,{attributes:!0,characterData:!0,childList:!0,subtree:!0});let e=this.element.isContentEditable,o=new MutationObserver(()=>{this.element.isContentEditable!==e&&(e=this.element.isContentEditable,this.emit(this.element.isContentEditable?"enabled":"disabled"))});o.observe(this.element,{attributes:!0,attributeFilter:["contenteditable"]}),this.disposeHandlers.push(()=>o.disconnect())}dispose(){super.dispose(),this.observer&&this.observer.disconnect()}};var qr=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(e)}close(){this.disposeHandlers.forEach(e=>e()),this.broadcastChannel.close()}},Vr=class{constructor(e,o,n){this.name=e;this.targetOrigin=o;this.options=n;this.iframe=this.createIframe(),document.body.appendChild(this.iframe)}iframe;disposeHandlers=[];createIframe(){let e=`deepdesk-iframe-${this.name}`,o=document.getElementById(e);if(o)return o;let n=document.createElement("iframe"),s=`${this.targetOrigin}/v2/widget/liveengage/channel.html`,r=new URLSearchParams({channel:this.name,host:window.location.origin});return this.options.debug&&r.set("debug","1"),n.style.position="absolute",n.style.left="-999em",n.style.width="0px",n.style.height="0px",n.tabIndex=-1,n.id=e,n.title=`iframe-${this.name}`,n.src=`${s}?${r.toString()}`,n}onMessage(e){window.addEventListener("message",e),this.disposeHandlers.push(()=>{window.removeEventListener("message",e)})}postMessage(e){var o;(o=this.iframe.contentWindow)==null||o.postMessage(e,this.targetOrigin)}close(){var e;this.disposeHandlers.forEach(o=>o()),(e=this.iframe)==null||e.remove()}},Wr=class{constructor(e){this.params=e;this.deepdeskUrl=e.deepdeskUrl,this.eventMap=e.eventMap,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(),E.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 Vr(e,this.deepdeskUrl,{debug:!0}):new qr(e),n=s=>{var r,i;s.origin===this.deepdeskUrl&&s.data.type==="event"&&s.data.channel===e&&(E.info("Received broadcast event",this.sessionId,s),(i=(r=this.eventMap)[s.data.name])==null||i.call(r,s.data.payload))};return o.onMessage(n),o}send(e,o){var s,r,i;if(!this.sessionId)return;E.info("broadcast event",{sessionId:this.sessionId,name:e,payload:o});let n={type:"event",name:e,payload:o};(r=(s=this.eventMap)[e])==null||r.call(s,o),(i=this.channel)==null||i.postMessage({...n,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)}},Pp=Wr;var Bt=class extends Error{constructor(o,n){super(o);this.body=n}name="CustomError"};var Gr=t=>new Promise(e=>{setTimeout(e,t)});var Ft=class extends Bt{name="ClientError"},$r=class extends Bt{name="ServerError"},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,{abortLatest:l=!1,attempts:c=1,retryDelay:p=500,refreshTokenOn401:u=!0,retryOnError:d=x=>x instanceof TypeError,retryOnResponse:g=x=>x.status>=500,version:f="v1",...m}=o,v={credentials:"include",...m,headers:{"Content-Type":"application/json",...m.headers}};o.method!==void 0&&o.method!=="GET"&&this.csrfToken&&(v.headers={...v.headers,"X-CSRFToken":this.csrfToken}),typeof f=="string"&&(v.headers={...v.headers,"X-Deepdesk-API-Version":f});let w=c,h=!1;if(!a)throw new Error("fetch is not set");this.latestRequestByUrl[i]&&l&&(this.latestRequestByUrl[i].isAborted=!0,this.latestRequestByUrl[i].reject(new Error("Aborted"))),this.latestRequestByUrl[i]=r;let y=async()=>(w--,a(i,v).then(async x=>g(x)&&!r.isAborted&&w>0?(await Gr(p),y()):x.status===401&&u===!0&&h===!1?(h=!0,await this.refreshToken(),y()):x).catch(async x=>{if(d(x)&&!r.isAborted&&w>0)return await Gr(p),y();throw x}));y().then(x=>x.json().catch(()=>null).then(C=>{x.status>=500?s(new $r("Server Error",C)):x.status===401?s(new Ft("Unauthorized",C)):x.status===403?s(new Ft("Forbidden",C)):x.status===404?s(new Ft("Not Found",C)):x.status>=400&&s(new Ft("Bad Request",C)),delete this.latestRequestByUrl[i],n(C)})).catch(x=>{s(x)})})}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 Gy;(e=>{let t;(l=>(l.SEND_MESSAGE="Send Message",l.HANDLING_TIME="Handling Time",l.START_AUTOFLOW="Start Autoflow",l.ABORT_AUTOFLOW="Abort Autoflow",l.ADD_TO_PERSONAL_COLLECTION="Add to personal collection",l.DELETE_FROM_PERSONAL_COLLECTION="Delete from personal collection"))(t=e.EventType||={})})(Gy||={});function Zn(t){return{...A(t),tags:t.tags}}var Ue=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(),E.info(`Creating conversation for session ${e.sessionId} and agent ${e.agentId}`);let o=await this.client.post("/api/conversations",{...B(e),tags:e.tags},{version:"v2"});return Zn(o)}async getProfile(e){let o=await this.client.get(`/apis/admin/profiles/${e}/`,{version:null});return A(o)}async getContentTypes(){let e=await this.client.get("/apis/admin/content-types/",{version:null});return A(e)}async getPlatformConfig(){let{config:e}=await this.client.get("/platform/config/",{version:null});return A(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(),E.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 Zn(r)}async isConversationSupported(e,o={}){E.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=B(o);o.tags&&(n.tags=o.tags);let s=await this.client.put(`/api/conversations/${e}`,n,{version:"v2"});return Zn(s)}async postMessages(e,o){return(await this.client.post(`/api/conversations/${e}/messages`,o.map(s=>({...B(s),tags:s.tags})),{version:"v2"})).map(s=>Zn(s))}async sendEvent(e,o){let{data:n,...s}=o,r=Object.entries(this.latestReceivedDeepdeskVersions).reduce((i,[a,l])=>({...i,[a]:l}),{});return this.client.post("/api/events",B({...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:B({...o,...n})})}async getEntities(e){return(await this.client.post("/api/entities",{messages:e.filter(n=>n.text)})).entities}async getSummary(e,o={}){return(await this.client.post("/api/summary",{conversation:{messages:e.filter(s=>s.text&&s.source)},prompt_instruction:o.promptInstruction,model:o.model})).summary}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 E.warn(`Invalid token '${e}'`),o})}async authenticateWithKey(e,o){await this.client.post("/apis/admin/session/api-key/",B(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}`,B(o),{abortLatest:!0})).map(r=>({...A(r),text:r.text||r.url||r.message,source:n,type:n})).filter((r,i,a)=>i===a.findIndex(l=>l.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`,B(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 A(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",B(e),{abortLatest:!0});return A(o)}async search(e){let o=await this.client.post(`/api/profiles/${e.profile}/search`,B(e),{version:"v2"});return A(o)}async knowledgeAssist(e,o,n){let s=await this.client.post("/api/knowledge-search/search",B({question:e.question,promptInstruction:e.promptInstruction,profile:n,chatHistory:o.map(r=>({question:r.question,answer:r.answer.answer}))}),{version:"v2"});return A(s)}async requestLoginByEmail(e){let o=await this.client.post("/apis/admin/session/passwordless/request/",{email:e},{version:null});return A(o)}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 A(o)}handleDeepdeskVersionHeaders(e){e.headers.forEach((o,n)=>{let s=n.toLowerCase(),r=s.match(li);if(!o||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&o&&a!==o&&E.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(o)}`),this.latestReceivedDeepdeskVersions[i]=o})}};var yo=class{constructor(e,o){this.url=e;this.options={timeout:25e3,...o}}eventListeners={};options;timeoutTimer;eventSource;proxyEvent(e){this.eventSource.addEventListener(Qs(e),o=>{let{data:n}=o;try{let s=JSON.parse(n);this.emit(e,A(s))}catch{E.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 $y;(e=>{let t;(r=>(r.Started="Started",r.Aborted="Aborted",r.Completed="Completed"))(t=e.AutoflowSessionState||={})})($y||={});var So=class{constructor(e,o={}){this.apiUrl=e;this.client=new he(e,o)}client;streams={};logger=E;async getCustomMessages(e){let o=await this.client.get(`/sessions/${e}/suggestions`);return A(o.suggestions)}async sendCustomMessage(e,o){let n=await this.client.post(`/sessions/${e}/messages`,B(o));return A(n)}async answerCustomMessage(e,o){await this.client.post(`/sessions/${e}/answers`,B(o))}async getAutoflows(e){let o=await this.client.get(`/sessions/${e}/autoflows`);return A(o.autoflows)}async startAutoflowSession(e){let o=await this.client.post("/autoflow-sessions",B(e));return A(o)}async stopAutoflowSession(e){await this.client.delete(`/autoflow-sessions/${e}`)}openStream(e){return this.streams[e]||(this.streams[e]=new yo(`${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 tS,configureStore as oS}from"@reduxjs/toolkit";import{createSlice as Xy}from"@reduxjs/toolkit";var Ap={startTime:null,stopTime:null},Lp=Xy({name:"handlingTime",initialState:Ap,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(R,()=>Ap)}}),{handlingTimeStart:Mp,handlingTimeStop:Jn,handlingTimeReset:Op}=Lp.actions,Np=Lp.reducer;var Dp=(t={})=>{let e={onAuthError:Tt(!1),...t};return o=>n=>s=>("error"in s&&s.error.message==="Unauthorized"&&o.dispatch(e.onAuthError),n(s))};import{createAsyncThunk as Qy,createSlice as Zy}from"@reduxjs/toolkit";var Yn={list:{keywordMatches:[]},fetchState:"idle",isInitialRequest:null};var nt=Qy("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 Yn.list;if(!r)throw new Error("No current conversation to fetch pinned messages");return o.getStyleSuggestions({profileCode:r,message:t})}),Jy=Zy({name:"styleSuggestions",initialState:Yn,reducers:{},extraReducers:t=>{t.addCase(nt.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(nt.rejected,e=>{e.fetchState="error"}).addCase(nt.fulfilled,(e,o)=>{e.fetchState="done",Ie(e.list,o.payload)||(e.list=o.payload)}).addCase(We,e=>{e.list=Yn.list}).addCase(R,()=>Yn)}}),Hp=Jy.reducer;var Bp=(t={})=>{let e,o=!0,n={getStyleSuggestions:nt,debounce:500,...t};return s=>r=>i=>{var g;let a=s.getState().input.text,l=r(i),c=s.getState();if(c.auth.isLoggedIn!==!0)return l;let{showStyleSuggestions:p}=c.settings;if(!((g=c.conversation.current)==null?void 0:g.id)||!p)return l;let{text:d}=c.input;return d===a&&!o||(clearTimeout(e),d==="")||(e=setTimeout(()=>{o=!1,s.dispatch(n.getStyleSuggestions({text:d}))},t.debounce)),l}};function Yy(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var Fp=(t={})=>{let e={getTextSuggestions:_e,getAutocompleteSuggestions:eo,debounce:200,check:Lt,...t},o;return n=>s=>r=>{var m;let{input:{userCommitted:i}}=n.getState(),a=s(r),l=n.getState();if(l.auth.isLoggedIn!==!0)return a;let{recommendTextSuggestions:c,showTabCompletion:p}=l.settings,u=(m=l.conversation.current)==null?void 0:m.id,d=r.type===Sn.toString();if(!u||!c&&!p)return a;let{input:{userCommitted:g}}=l;return Yy(g,i)&&!d||(clearTimeout(o),!e.check(l))||(o=setTimeout(()=>{let v=gt(l);v===""?n.dispatch(e.getTextSuggestions("default")):n.dispatch(e.getAutocompleteSuggestions(v))},d?0:e.debounce)),a}};var Kp=nt.fulfilled.toString();function eS(t,e){let o=new Set([...e.keywordMatches.map(s=>s.keyword)]),n=[];return o.forEach(s=>{let r=t.keywordMatches.filter(l=>l.keyword===s),i=e.keywordMatches.filter(l=>l.keyword===s),a=i.length-r.length;a<=0||n.push(...i.slice(0,a))}),n}var Up=t=>e=>o=>n=>{var c;if(n.type!==Kp){o(n);return}let s=e.getState().styleSuggestions.list;o(n);let r=e.getState(),i=r.styleSuggestions.list,a=(c=r.conversation)==null?void 0:c.current;if(s===i)return;let l=eS(s,i);n.type===Kp&&l.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:l}})};var nS=tS({activeSuggestion:sl,answer:Vl,auth:yl,autoflows:zc,conversation:mi,contentTypes:Rl,customMessages:Zc,exchangeToken:op,entities:Al,handlingTime:Np,info:ka,input:vs.reducer,overlayInput:$.reducer,settings:pi,profile:Ql,search:Ma,summary:Bl,styleSuggestions:Hp,ui:ll,textSuggestions:Ya});function zp(t){return oS({reducer:nS,middleware:e=>[...e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI,deepdeskBrokerAPI:t.deepdeskBrokerAPI}},serializableCheck:!1}),Dp(),Fp({debounce:200}),Bp({debounce:500}),Up(t.deepdeskAPI),...t.middleware?t.middleware:[]],preloadedState:t.preloadedState})}var sS=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=fs("inlineSuggestions")(s);switch(n.type){case xe.toString():{let l=Ga(n.payload.contentType)(e.getState()),c=l.indexOf(n.payload.suggestion);t.emit("edit-suggestion",{contentType:n.payload.contentType,index:c,suggestions:l});break}case Tt.toString():{!n.payload&&t.emit("logout",void 0);break}case re.toString():{let{start:l,end:c}=s.input.selection;t.emit("select-suggestion",{type:sS(n.payload.suggestion),...n.payload,replace:n.payload.replace==="selection"?{start:l,end:c}:{start:0,end:c}},{mayApplyChanges:!0});break}case No.toString():{let{start:l,end:c}=s.input.selection;t.emit("replace",{...n.payload,replace:n.payload.replace==="selection"?{start:l,end:c}:{start:0,end:c}},{mayApplyChanges:!0});break}case jt.toString():{let l=e.getState(),{text:c,selection:p}=l.input.userCommitted;t.emit("reset",{text:c,selectionAfter:p},{mayApplyChanges:!0});break}case Fo.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 ce.fulfilled.toString():n.payload.length>0&&t.sendEvent("entities found",{conversationId:s.conversation.current.id,data:{entities:n.payload}});break;case Ce.fulfilled.toString():t.sendEvent("conversation summarized",{conversationId:s.conversation.current.id,data:{summary:n.payload.summary}});break;case z.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 Do.toString():t.handleKeyDown(n.payload);break;case We.toString():t.logSendMessage(n.payload);break;case Ho.toString():t.logSendEditSuggestionMessage(n.payload);break;case Bo.toString():t.handleInputChanged(n.payload);break;default:break}let i=o(n);switch(n.type){case We.toString():t.handleAfterSendMessage(n.payload);break;case to.toString():t.onUpdateShowTabHint(n.payload);break;case Jn.toString():t.logHandlingTime();break;case re.toString():{r&&(e.dispatch(ue([])),e.dispatch(Le()));break}case ue.toString():{r&&n.payload.length>0&&e.dispatch(Ae(0));break}default:break}return i},jp=rS;function Xr(t){return t.toISOString().replace("T"," ").replace("Z","")}function qp(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:Xr(o),timeStop:Xr(n)}}function Qr(t,e,o){var D,Y,H;let{text:n,metrics:{numCharsTyped:s,numCharsPasted:r,numCharsCut:i,numCharsDeleted:a,numPaste:l,agentStartedTypingTimestamp:c,externalTimeTotalSeconds:p,pastes:u,cuts:d,deletions:g,textSuggestions:f,offeredTextSuggestions:m}}=e[t],v=n.length,h=f.reduce((k,{text:O,searchTerm:G})=>k+O.length-(G?G.length:0),0),y=c??Date.now(),x=(Date.now()-y)/1e3+(p||0),C=s/x,F=f.reduce((k,{searchTerm:O})=>k+(O?O.length:0),0);return{conversationId:e.conversation.current.id,source:"agent",text:n,clientVersion:o.version,pastes:u,cuts:d,deletions:g,lenTextTyped:s+F,lenTextTotal:v,lenTextAssisted:h,lenTextPasted:r,lenTextCut:i,lenTextDeleted:a,timeTotalSeconds:x,charsPerSecond:C,numPastes:l,textSuggestionsV2:f,suggestionsCounters:[{source:"gpt",countOffered:m.filter(k=>k.source==="gpt").length}],agentId:(D=e.info.agentInfo)==null?void 0:D.agentId,agentName:(Y=e.info.agentInfo)==null?void 0:Y.agentName,agentEmail:(H=e.info.agentInfo)==null?void 0:H.agentEmail}}function Vp(t,e){let o=t.closest(e);if(o)return o;let n=t.getRootNode().host;return n instanceof HTMLElement?Vp(n,e):null}function Wp(t,e){return Vp(t,e)}function Gp(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function iS(t){return typeof t=="object"&&t!==null&&"tagName"in t}function Zr(t){return iS(t)&&(Fe(t)||tn(t))}var $p=(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{E.warn("[Deepdesk] SessionStorage is blocked by browser")}}});function aS(t){return t.offsetParent!==null}function Xp(t){if(!aS(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 Jr(t,e,o=100){let n=Xp(t);e({isVisible:n});let s=setInterval(()=>{let r=Xp(t);r!==n&&(n=r,e({isVisible:n}))},o);return()=>{clearTimeout(s)}}import{jsx as W}from"react/jsx-runtime";var Qp=$p("showTabHint",!0),ts=class t{static version="10.6.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:l}){let c=e.replace(/\/api$/,"");this.deepdeskApi=new Ue(c,{token:r,fetch:i}),this.version=n,this.instanceId=t.count++;let p={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[jp({emit:(u,d,g)=>this.emit(u,d,g),handleAfterSendMessage:u=>this.handleAfterSendMessage(u),handleInputChanged:u=>this.handleInputChanged(u),handleKeyDown:u=>this.handleKeyDown(u),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:u=>this.logSendMessage(u),logSendEditSuggestionMessage:u=>this.logSendEditMessage(u),onUpdateShowTabHint:u=>Qp.update(u),sendEvent:(u,d)=>this.deepdeskApi.sendEvent(u,d)})]};o&&Object.assign(p,{deepdeskBrokerAPI:new So(o)}),this.store=zp(p),this.broadcastEvents=new Pp({debug:!0,deepdeskUrl:c,eventMap:Sl(this.store),createCustomChannel:l}),this.store.dispatch(zt),this.store.dispatch(to(Qp.value())),this.store.dispatch(zt({locale:s,adminUrl:c,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?(E.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(E.warn("Profile has not been loaded (yet)"),!0):(E.warn("No conversation loaded (yet)"),!0)}login(){return this.store.dispatch(Tt(null)),this.store.dispatch(Be()),new Promise(e=>{let o=this.store.subscribe(()=>{let n=this.store.getState();le(n)&&ul(n)!=="loading"&&e()});this.unmountHandlers.push(()=>{o()})})}isLoggedIn(){return this.deepdeskApi.isLoggedIn()}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){E.warn("Failed to attach user:",o)}}async isConversationSupported(e,o){return(await this.store.dispatch(ys({sessionId:e,options:o}))).payload}async createConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(Io(e))).payload}async getConversationBySessionId(e,o){return this.hasConversation()&&this.sessionId()!==e&&this.resetConversation(),(await this.store.dispatch(Po({sessionId:e,options:o}))).payload}async upsertConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(Ss(e))).payload}async postMessages(e){return(await this.store.dispatch(Lo(e))).payload}async updateConversation(e){return(await this.store.dispatch(Ao(e))).payload}resetConversation(){this.store.dispatch(R()),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(zt(e))}setVisitorInfo(e){this.store.dispatch(Ea(e))}async setAgentInfo(e){await this.store.dispatch(Zt(e))}async setAgentSettings(e){await this.store.dispatch(Js(e))}async getAgentSettings(){return(await this.store.dispatch(Ys())).payload}async refresh(){if(this.shouldAbort())return Promise.resolve();this.inputMediator&&this.handleInputChanged(this.inputMediator.getText());let e=[];return this.store.dispatch(Sn()),e.push(this.refreshWidgetSuggestions()),Promise.all(e).then(()=>{})}notifyInputChanged(e){this.store.dispatch(Bo(e))}notifyKeyDown(e){this.store.dispatch(Do(e))}notifyPaste(e,o){this.store.dispatch(Ti({text:e,selectionText:o}))}notifyCut(e){this.store.dispatch(Ci(e))}notifyExternalSuggestion(e){this.store.dispatch(re(e)),this.store.dispatch(Le())}notifyEditSuggestion(e){this.store.dispatch(Za(e.contentType,e.suggestions)),this.store.dispatch(xe({contentType:e.contentType,suggestion:typeof e.index=="number"?e.suggestions[e.index]:null}))}handleInputChanged(e){let{overlayCollapsed:o,openOverlayWhenTyping:n}=this.state.ui;o&&n&&this.store.dispatch(He({collapse:!1})),this.inputMediator&&this.store.dispatch(yi({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,l=s!==-1;if(this.store.dispatch(wi(Oo(e))),e.key!=="Tab"&&!this.settings.showTextSuggestions)return;let c=()=>{o||!a||r&&(e.shiftKey||(this.store.dispatch(_i()),i||this.stageSelectedSuggestion({inputType:"arrow"}),e.preventDefault()))},p=()=>{if(o||!a||!r||e.shiftKey)return;this.store.dispatch(bi());let{selectedSuggestionIndex:u}=this.state.input;e.preventDefault(),!i&&(u===-1?this.store.dispatch(jt()):this.stageSelectedSuggestion({inputType:"arrow"}))};switch(e.key){case"Up":case"ArrowUp":i?p():c();return;case"Down":case"ArrowDown":{i?c():p();return}case"Esc":case"Escape":{i&&l&&this.store.dispatch(Ae(-1)),this.state.input.selectedSuggestionIndex!==-1?(this.store.dispatch(Ae(-1)),this.store.dispatch(jt()),e.preventDefault()):o||(this.store.dispatch(He({collapse:!0})),this.store.dispatch(il(!0)),e.preventDefault());return}case"Tab":{let{userCommitted:u}=this.state.input,d=u.text.substring(0,u.selection.end),{tabCompletionSuggestion:g}=this.state.input;this.store.dispatch(to(!1)),this.state.input.selectedSuggestionIndex>-1?this.stageSelectedSuggestion({inputType:"tab"}):!i&&this.settings.showTabCompletion&&g&&g.text.startsWith(d)&&(this.store.dispatch(re({text:g.text,suggestion:g,eventMetrics:{inputType:"tab"},replace:"until-selection-end"})),this.store.dispatch(Le())),e.preventDefault();break}default:}}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(Ei()),this.store.dispatch(ue([]))}handlingTimeStart(){this.state.handlingTime.startTime||(E.info("Start handling time"),this.store.dispatch(Mp()))}handlingTimeStop(){this.state.handlingTime.startTime&&(E.info("Stop handling time"),this.store.dispatch(Jn()))}logSendMessage(e){let o=Qr("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)}logSendEditMessage(e){let o=Qr("overlayInput",this.state,{version:this.version});e&&Object.assign(o,{text:e}),this.store.dispatch(vi(this.state.overlayInput.metrics))}logHandlingTime(){let e=qp(this.state,{version:this.version});this.deepdeskApi.sendEventV1("Handling Time",e),this.store.dispatch(Op())}notifySubmit(e={}){this.shouldAbort()||(this.store.dispatch(Le()),this.store.dispatch(We(e.text??this.state.input.text)))}stageSelectedSuggestion(e){let o=this.state.input.selectedSuggestionIndex,{textSuggestions:n}=this.state.input;this.store.dispatch(re({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){E.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),E.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]=St(o,n);return r.setAttribute("translate","no"),r.dataset.testid=e,s&&r.classList.add(s),this.unmountHandlers.push(()=>{es(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,l]=St(r,{appendTo:document.body});a.dataset.testid=o,a.style.zIndex="2",a.appendChild(n),this.unmountHandlers.push(()=>{es(s),l()})}else document.body.appendChild(n);return s}createContainer(e,o=document.body){let n=window.getComputedStyle(o),s=document.createElement("div");return $e(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(()=>{es(s),s.remove()}),s}mount(e,o={}){if(this.isMounted)throw new Error("[Deepdesk] This instance was already mounted. Make sure to unmount before you remount.");if(!Zr(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:l,showSuggestionsBeforePattern:c,showSuggestionsAfterPattern:p,isEmbedded:u,detectSubmit:d,insertLink:g,inputMediator:f,closestScrollSelector:m,appendOverlayTo:v,inlineSuggestions:w}=o;if(this.configure({showStyleSuggestions:s,showTabCompletion:r,textSuggestionsCount:a,showMidSentenceSuggestions:l,showSuggestionsBeforePattern:c,showSuggestionsAfterPattern:p,showTextSuggestions:i,insertLink:g,isEmbedded:u,inlineSuggestions:w}),o.automaticHandlingTime&&this.setupHandlingTime(e),$e(e),this.inputMediator=f||(Fe(e)?new Oe(e):new Ht(e)),this.inputMediator.on("change",({plainText:y})=>{this.notifyInputChanged(y)}),this.inputMediator.on("updated",()=>{this.inputMediator&&this.store.dispatch(ki({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()}))}),this.inputMediator.on("keydown",y=>{this.notifyKeyDown(y)}),this.inputMediator.on("paste",({pastedText:y,selectionText:x})=>{this.notifyPaste(y,x)}),this.inputMediator.on("cut",({selectionText:y})=>{this.notifyCut(y)}),w){if(Fe(e))throw new Error("[Deepdesk] Inline suggestion is not supported for textarea yet.");let y=this.createInlineContainer(e,"deepdesk-caret");vo(W(Mt,{store:this.store,customStyles:n,children:W(wt,{broadcastEvents:this.broadcastEvents,children:W(ic,{})})}),y),this.inputMediator.on("caret",x=>{this.store.dispatch(ue([])),x?(y.style.display="block",y.style.top=`${x.top}px`,y.style.left=`${x.left}px`):y.style.display="none"})}else{let y=m&&Wp(e,m)||void 0,x=this.overlayContainerFactory("deepdesk-tab-completion",y||e,{appendTo:v,closestScrollElement:y,mirrorOverflow:!0,onRemove:()=>this.unmount()},n==null?void 0:n.rootNode),C=this.overlayContainerFactory("deepdesk-suggestions-overlay",y||e,{appendTo:v},n==null?void 0:n.suggestionsRootNode);vo(W(Mt,{store:this.store,customStyles:n,children:W(wt,{broadcastEvents:this.broadcastEvents,children:W(Dc,{inputElement:e})})}),x),vo(W(Mt,{store:this.store,customStyles:n,children:W(wt,{broadcastEvents:this.broadcastEvents,children:W(fc,{})})}),C)}vo(W(Mt,{store:this.store,customStyles:n,children:W(wt,{broadcastEvents:this.broadcastEvents,children:W(ec,{})})}),this.createContainer("deepdesk-overlays"));let h;this.inputMediator.on("selection",y=>{clearTimeout(h),y===null?h=setTimeout(()=>{y!==null&&this.store.dispatch(_s(y))},500):this.store.dispatch(_s(y))}),this.inputMediator.on("disabled",()=>{var y;(y=this.inputMediator)==null||y.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{d&&this.notifySubmit()}),this.inputMediator.on("blur",()=>this.store.dispatch(Ct(!1))),this.inputMediator.on("focus",()=>this.store.dispatch(Ct(!0))),this.store.dispatch(Si({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),this.whenConversationLoaded(()=>{var y;this.refresh(),this.broadcastEvents.setSessionId((y=this.state.conversation.current)==null?void 0:y.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&&E.warn("A widget was already rendered for this instance. Make sure to unmountWidget before rerendering"),!this.shouldRender)return;let{customStyles:n,showImages:s,showPersonalCollectionLink:r,isEmbedded:i}=o;this.widgetRoot=e,this.configure({showImages:s,showPersonalCollectionLink:r,isEmbedded:i}),vo(W(Mt,{store:this.store,customStyles:n,children:W(wt,{broadcastEvents:this.broadcastEvents,children:W(kp,{})})}),e),this.whenConversationLoaded(()=>{var a;this.broadcastEvents.setSessionId((a=this.state.conversation.current)==null?void 0:a.sessionId)})}unmountWidget(){this.widgetRoot&&es(this.widgetRoot),this.widgetRoot=null}setupHandlingTime(e){let o=Jr(e,({isVisible:n})=>{n?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),o()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){Gp(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfigPromise=null;loadProfileConfig(){return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(this.loadProfileConfigPromise=Promise.resolve().then(async()=>{await this.store.dispatch(io());let e=Pt(this.state);e&&this.store.dispatch(zt({showSearch:e.search,showAutoflows:e.autoflows,showCustomMessages:e.customMessages,showImageSearch:e.imageSearch,showEntitiesCommand:e.entitiesCommand,showSummaryCommand:e.summarizer,showKnowledgeSearch:e.knowledgeAssistForAgents,recommendTextSuggestions:e.recommendTextSuggestions}))}),this.loadProfileConfigPromise)}async checkForTrialMode(e){try{let{account:o}=await this.deepdeskApi.getPlatformConfig();if(!o.isTrial){this.shouldRender=!0;return}if(E.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;E.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=wn(this.state);try{o.forEach(({type:n})=>{n==="entities"?this.store.dispatch(ce()):this.store.dispatch(_e(n))})}catch(n){this.handleError(n)}}};async function lS(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},l=()=>{if(o.setValue)return o.setValue(i);t.value=i};return Promise.resolve(l()).then(()=>{t.selectionStart=a.start,t.selectionEnd=a.end,t.blur(),t.focus()})}async function cS(t,e,o={}){let n=o.replace?ot(t,o.replace.start,o.replace.end):ho(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(`
6
6
  `).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()}})}async function pS(t,e){let o;t.dispatchEvent(new InputEvent("beforeinput",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0}));let n=()=>{let r=(t.ownerDocument.defaultView??window).getSelection();if(!r)return;let i=r.getRangeAt(0);i&&(i.deleteContents(),o=document.createElement("span"),i.insertNode(o),e.split(`
7
- `).reverse().forEach((a,l)=>{l>0&&i.insertNode(document.createElement("br")),i.insertNode(document.createTextNode(a))}),i.collapse(!1))};return Promise.resolve(n()).then(()=>{if(t.dispatchEvent(new InputEvent("input",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0})),t.focus(),!!o)try{o.scrollIntoView&&o.scrollIntoView({block:"nearest",inline:"nearest"})}finally{o&&o.remove()}})}function uS(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}async function dS(t,e,o){await new Ue(t).authenticateWithKey(e,o)}async function gS(t){let o=await new he(t).get("/platform/config/",{version:null});return A(o)}async function mS(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 fS(t,e){let o=await mS(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{N as Card,Ht as ContentEditableInput,Ue as DeepdeskAPI,es as DeepdeskSDK,he as HTTPClient,Me as InputMediator,qe as InputType,as as KeyboardHint,ls as Label,Eo as Locale,je as Section,ps as SectionList,pe as Sources,M as Suggestion,se as SuggestionList,Oe as TextAreaInput,ct as ToggleButton,fS as attachFile,dS as authenticateWithKey,ho as createFullRange,St as createOverlayContainer,ot as createRangeFromOffsets,$t as escapeHTML,gS as fetchPlatformConfig,uS as formatTextMarkup,$n as getRangeOffsets,Xn as getRangeText,pS as insertCKEditor,Zr as isSupportedInputElement,cS as updateContentEditable,lS as updateTextArea,S as useStyles,Jr as waitForElementVisibilityChange};
7
+ `).reverse().forEach((a,l)=>{l>0&&i.insertNode(document.createElement("br")),i.insertNode(document.createTextNode(a))}),i.collapse(!1))};return Promise.resolve(n()).then(()=>{if(t.dispatchEvent(new InputEvent("input",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0})),t.focus(),!!o)try{o.scrollIntoView&&o.scrollIntoView({block:"nearest",inline:"nearest"})}finally{o&&o.remove()}})}function uS(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}async function dS(t,e,o){await new Ue(t).authenticateWithKey(e,o)}async function gS(t){let o=await new he(t).get("/platform/config/",{version:null});return A(o)}async function mS(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 fS(t,e){let o=await mS(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{N as Card,Ht as ContentEditableInput,Ue as DeepdeskAPI,ts as DeepdeskSDK,he as HTTPClient,Me as InputMediator,qe as InputType,ls as KeyboardHint,cs as Label,Eo as Locale,je as Section,us as SectionList,pe as Sources,M as Suggestion,se as SuggestionList,Oe as TextAreaInput,ct as ToggleButton,fS as attachFile,dS as authenticateWithKey,ho as createFullRange,St as createOverlayContainer,ot as createRangeFromOffsets,$t as escapeHTML,gS as fetchPlatformConfig,uS as formatTextMarkup,Xn as getRangeOffsets,Qn as getRangeText,pS as insertCKEditor,Zr as isSupportedInputElement,cS as updateContentEditable,lS as updateTextArea,S as useStyles,Jr as waitForElementVisibilityChange};