@deepdesk/deepdesk-sdk 10.12.1-beta.2 → 10.12.1-beta.3

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,11 +1,11 @@
1
- var Kd=Object.defineProperty;var V=(t,e)=>{for(var o in e)Kd(t,o,{get:e[o],enumerable:!0})};import ms from"classnames";import qd,{createContext as Wd,useContext as fs,useEffect as $d,useState as Gd}from"react";import Ud,{useContext as zd}from"react";import jd from"classnames";var Wt=Ud.createContext({});function y(t,e){let{debug:o,...n}=zd(Wt),s=n[t];return s?Object.entries(e).reduce((r,[i,a])=>{let l=s[i];return{...r,[i]:jd(a,l,o?`${t}__${i}`:!1)}},{}):e}var fi={root:"_root_vr71j_1"};import{jsx as Po,jsxs as Vd}from"react/jsx-runtime";var Ao=()=>Vd("svg",{className:fi.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[Po("defs",{children:Po("style",{children:".cls-1 { fill: #b3b3b3; }"})}),Po("title",{children:"Failed loading image"}),Po("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 gs={root:"_root_1yiwn_1",imageWrapper:"_imageWrapper_1yiwn_7",image:"_image_1yiwn_7",content:"_content_1yiwn_24",title:"_title_1yiwn_35",contentIsCropped:"_contentIsCropped_1yiwn_45",lineClamp:"_lineClamp_1yiwn_51",expandOnHover:"_expandOnHover_1yiwn_58"};import{jsx as gt}from"react/jsx-runtime";var Lo=Wd(gs),Xd=({title:t,src:e})=>{let o=fs(Lo),[n,s]=Gd(!1);return $d(()=>{s(!1)},[e]),gt("div",{className:o.imageWrapper,children:e&&!n?gt("img",{className:o.image,alt:t,src:e,onError:()=>s(!0)}):gt(Ao,{})})},Zd=({className:t,lineClamp:e=!1,cropText:o=!1,children:n})=>{let s=fs(Lo);return gt("div",{className:ms(s.content,t,{[s.contentIsCropped]:o,[s.lineClamp]:e}),children:n})},Qd=({as:t="h1",cropText:e=!1,className:o,children:n,...s})=>{let r=fs(Lo);return qd.createElement(t,{className:ms(r.title,o,{[r.contentIsCropped]:e}),...s},n)},Mo=({expandOnHover:t,children:e})=>{let o=y("Card",gs);return gt("div",{className:ms(o.root,{[o.expandOnHover]:t}),children:gt(Lo.Provider,{value:o,children:e})})};Mo.Image=Xd;Mo.Content=Zd;Mo.Title=Qd;var H=Mo;import Jd from"classnames";var hi={root:"_root_cq1yq_1"};import{jsx as tu}from"react/jsx-runtime";var Yd={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},eu=({className:t,keyCode:e,...o})=>{let n=y("KeyboardHint",hi);return tu("span",{"data-key":Yd[e],className:Jd(t,n.root),...o})},hs=eu;import ou from"classnames";var yi={root:"_root_4a08n_1"};import{jsx as su}from"react/jsx-runtime";var nu=({className:t,children:e,...o})=>{let n=y("Label",yi);return su("span",{...o,className:ou(t,n.root),children:e})},ys=nu;var vi={root:"_root_jlggj_1",subTitleContainer:"_subTitleContainer_jlggj_5",subtitle:"_subtitle_jlggj_9",suggestions:"_suggestions_jlggj_17"};import{jsx as vs,jsxs as iu}from"react/jsx-runtime";var ru=({title:t,children:e,type:o,...n})=>{let s=y("Section",vi);return iu("section",{...n,className:s.root,"data-section-type":o,children:[t&&vs("div",{className:s.subTitleContainer,children:vs("span",{className:s.subtitle,children:t})}),vs("div",{className:s.suggestions,children:e})]})},Ne=ru;import au from"classnames";import lu from"react";var Si={root:"_root_19wxp_1"};import{jsx as pu}from"react/jsx-runtime";var cu=lu.forwardRef(({className:t,children:e},o)=>{let n=y("SectionList",Si);return pu("div",{ref:o,className:au(n.root,t),children:e})}),Ss=cu;import No from"classnames";import du,{createContext as uu,useCallback as gu,useContext as $t}from"react";var _s={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 _e,jsxs as vu}from"react/jsx-runtime";var mt=uu(_s),mu=({fixed:t,children:e,...o})=>{let n=$t(mt);return _e("div",{...o,className:No(n.actions,{[n.actionsIsFixed]:t}),children:e})},fu=({className:t,primary:e,disabled:o,label:n,children:s})=>{let r=$t(mt);return vu("div",{className:No(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[n,_e("ul",{className:r.dropdownList,children:s})]})},hu=({index:t,label:e,onClick:o})=>{let n=$t(mt);return _e("li",{className:n.dropdownItem,children:_e("button",{className:n.dropdownItemButton,type:"button","data-index":t,onClick:o,children:e})})},yu=({className:t,primary:e,disabled:o,onClick:n,label:s})=>{let r=$t(mt);return _e("button",{type:"button",className:No(t,r.actionButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onClick:n??(i=>i.stopPropagation()),disabled:o,"aria-hidden":o,children:s})},xs=({labels:t})=>{let e=$t(mt);return _e("div",{className:e.labels,children:t.map(o=>_e("span",{className:e.label,children:o},o))})},ft=du.forwardRef(({className:t,selected:e,onClick:o,children:n,as:s="div",...r},i)=>{let a=y("Suggestion",_s),l=gu(c=>{c.preventDefault(),o&&o(c)},[o]);return _e(s,{...r,ref:i,className:No(t,a.root,{[a.isSelected]:e,[a.isClickable]:!!o}),onClick:l,children:_e(mt.Provider,{value:a,children:n})})});ft.Labels=xs;ft.Actions=mu;ft.ActionButton=yu;ft.DropdownButton=fu;ft.DropdownItem=hu;var P=ft;import Su from"classnames";var _i={root:"_root_fp74r_1",isWithDivider:"_isWithDivider_fp74r_9"};import{jsx as xu}from"react/jsx-runtime";var _u=({withDivider:t,children:e})=>{let o=y("SuggestionList",_i);return xu("div",{"data-testid":"suggestions-overlay-list",className:Su(o.root,{[o.isWithDivider]:t}),children:e})},re=_u;import bu from"classnames";var xi={root:"_root_1wpmq_1",isCollapsed:"_isCollapsed_1wpmq_17"};import{jsx as bs}from"react/jsx-runtime";var Cu=({className:t,isCollapsed:e,title:o,onClick:n})=>{let s=y("ToggleButton",xi);return bs("button",{type:"button",className:bu(s.root,t,{[s.isCollapsed]:e}),onClick:n,title:o,children:bs("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:bs("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},ht=Cu;var bi=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,yt=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var Ci=/x-deepdesk-(([a-z0-9\-_])+-version)/,ge=(f=>(f.SEARCH="search",f.TEMPLATE="template",f.ELASTIC_SEARCH="search-autocomplete",f.GPT="gpt",f.TRIE="trie",f.TRIE_WITH_TYPOS="trie-with-typos",f.SEMANTIC="semantic",f.TEXT_RECOMMENDATION="text_recommendation",f.URL_RECOMMENDATION="url_recommendation",f.LINK_RECOMMENDATION="link_recommendation",f.PERSONAL_COLLECTION="personal-collection",f.PERSONAL_COLLECTION_SEARCH="personal-collection-search",f.SEARCH_OVERLAY="search-overlay",f.SEARCH_PREVIEW="search-preview",f.SEARCH_URL="search-url",f))(ge||{}),Ge=(r=>(r.ENTER="enter",r.TAB="tab",r.ARROW="arrow",r.HOTKEY="hotkey",r.MOUSE="mouse",r))(Ge||{});import{render as jt,unmountComponentAtNode as ps}from"react-dom";import{Fragment as hh}from"react";import{createSlice as wu}from"@reduxjs/toolkit";import{useSelector as Tu}from"react-redux";var Oo=(o=>(o.NL_NL="nl-NL",o.EN_US="en-US",o))(Oo||{});var Eu={locale:"en-US",deanonymize:!1,fallbackImage:!1,isEmbedded:!1,showAutoflows:!1,showCustomMessages:!1,showImages:!1,showSearch:!1,showImageSearch:!1,showStyleSuggestions:!1,showMidSentenceSuggestions:!1,showSuggestionsBeforePattern:!1,showSuggestionsAfterPattern:!1,showTabCompletion:!0,showTextSuggestions:!0,showEntitiesCommand:!1,showSummaryCommand:!1,showKnowledgeSearch:!1,textSuggestionsCount:3,recommendTextSuggestions:!0,searchTriggerKey:"k",visible:!0,insertLink:!1,inlineSuggestions:!1,floatingMenu:!1,adminUrl:void 0,productName:"Deepdesk"},wi=wu({name:"settings",initialState:Eu,reducers:{set(t,e){Object.entries(e.payload).forEach(o=>{let[n,s]=o;typeof s>"u"||(t[n]=s)})}}}),{set:Gt}=wi.actions,Cs=t=>e=>e.settings[t],C=t=>Tu(Cs(t)),Ti=wi.reducer;import{useState as Gm}from"react";import{useDispatch as Xm,useSelector as yr}from"react-redux";import{createAction as Xe,createSlice as Ou}from"@reduxjs/toolkit";import{diffChars as Du}from"diff";import{useSelector as Hu}from"react-redux";function Ei(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function Oe(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)=>Oe(r,e[i],o-1)):Ei(t)&&Ei(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>Oe(t[i],e[i],o-1)):!1}function ku(t){return Math.max(...t.map(e=>e.length))}function Ru(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 ki(t,e){let n=[...t.map(({text:s})=>s.split(/\b(\w+)\b/))];for(let s=0;s<ku(n);s++){let r=Ru(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 Iu=2;function ws(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let o=ki(t,Iu);return o&&o.text!==e?o:t[0]}import{createAction as Au,createAsyncThunk as vt,createSlice as Lu}from"@reduxjs/toolkit";var Pu={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},w=Pu;var Ri={current:null,isSupported:null},A=Au("resetConversation"),Do=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.sessionId)||null},Ho=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},St=t=>t.conversation.isSupported,Ts=vt("conversation/isSupported",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.isConversationSupported(t.sessionId,t.options)}),Bo=vt("conversation/create",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.createConversation(t)}),Fo=vt("conversation/bySessionId",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.getConversationBySessionId(t.sessionId,t.options)}),Ko=vt("conversation/update",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Ho(e.getState());if(!n)throw new Error("No current conversation to update");return o.updateConversation(n,t)}),Es=vt("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})})}),Uo=vt("conversation/postMessages",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Ho(e.getState());if(!n)throw new Error("No current conversation to update messages");return o.postMessages(n,t.map(s=>({...s})))}),Mu=[Bo.rejected,Fo.rejected,Ko.rejected,Uo.rejected].map(t=>t==null?void 0:t.toString()),Nu=Lu({name:"conversation",initialState:Ri,reducers:{},extraReducers:t=>{t.addCase(Ts.fulfilled,(e,o)=>{e.isSupported=o.payload}).addCase(Bo.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Fo.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Es.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Ko.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Uo.fulfilled,(e,o)=>{e.current&&(e.current.messages=o.payload)}).addCase(A,()=>Ri).addMatcher(e=>Mu.includes(e.type),(e,o)=>{var n;throw w.info("Conversation action rejected",o.type,((n=o.error)==null?void 0:n.message)||"No message"),new Error(o.error.message)})}}),Ii=Nu.reducer;var De={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 jo(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 Vo=Xe("input/replaceText"),qo=Xe("input/keyDown"),Ze=Xe("input/sendMessage"),Wo=Xe("input/sendEditSuggestionMessage"),$o=Xe("input/uiInputChange"),Go=Xe("input/applyImageSuggestion"),W=Xe("input/sendEvent");function zo(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,d=o==="search"||o==="personal-collection-search",g=e.slice(t.userCommitted.text.substring(0,t.userCommitted.selection.start).length);(d||p==="selection")&&(g=e),t.stagedSuggestion.suggestion.source==="search-overlay"&&(g=l),t.userCommitted.text=t.text,t.userCommitted.selection=t.selection,t.metrics.textSuggestions.push({text:g,source:o,abVariant:n,abTestName:s,inputType:c,sourceText:i,trainingJobs:r||[],searchTerm:d?t.userCommitted.text:a}),t.stagedSuggestion=null,t.textSuggestions=[],t.selectedSuggestionIndex=-1}var Pi=t=>Ou({name:t,initialState:De,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,{...De,selection:e.selection})},resetToCommitted(e){e.text=e.userCommitted.text,e.selection=e.userCommitted.selection,e.stagedSuggestion=null,e.tabCompletionSuggestion=ws(e.textSuggestions,e.userCommitted.text)},changeSelection(e,o){o.payload&&(Oe(e.selection,o.payload)||(e.selection=o.payload,e.userCommitted.selection=e.selection,e.stagedSuggestion&&zo(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:d,ctrlKey:g,metaKey:u,altKey:m}=e.previousKeyDownEvent;switch(p){case"Enter":d&&(e.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:f}=e,{text:h}=o.payload,E=Du(f,h);f.length-h.length>1&&e.metrics.deletions.push(...E.filter(x=>x.removed).map(x=>x.value)),e.metrics.numCharsDeleted+=f.length-h.length;break}case"C":case"V":case"X":if(!g&&!u){e.metrics.numCharsTyped+=1;let f=((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;f&&f.length>0&&(e.metrics.numCharsDeleted+=f.length,e.metrics.deletions.push(f))}break;case"Shift":break;default:if(!g&&!u&&!m){e.metrics.numCharsTyped+=1;let f=((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;f&&f.length>0&&(e.metrics.numCharsDeleted+=f.length,e.metrics.deletions.push(f))}}}!e.metrics.agentStartedTypingTimestamp&&o.payload.text!==e.text&&(e.metrics.agentStartedTypingTimestamp=Date.now()),o.payload.text===""&&(e.metrics=De.metrics,e.textSuggestions=[],e.stagedSuggestion=null),e.text!==o.payload.text&&zo(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"&&zo(e)},commitSuggestion(e){zo(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=ws(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)},setMetrics(e,{payload:o}){e.metrics=o}},extraReducers:e=>{e.addCase(A,o=>{o.tabCompletionSuggestion=De.tabCompletionSuggestion,o.previousKeyDownEvent=De.previousKeyDownEvent,o.textSuggestions=De.textSuggestions,o.selectedSuggestionIndex=De.selectedSuggestionIndex,o.metrics=De.metrics})}}),ks=Pi("input"),_t=t=>t.input.userCommitted.text.substring(0,t.input.userCommitted.selection.end),Bu=t=>t.input.selection,Ai=()=>Hu(Bu),{userInput:Li,changeSelection:Rs,initialInput:Mi,mergeMetrics:Ni,nextTextSuggestionIndex:Oi,offeredTextSuggestion:Di,previousTextSuggestionIndex:Hi,registerCut:Bi,registerKeyDown:Fi,registerPaste:Ki,reset:Ui,resetToCommitted:Xt,platformInput:zi,setSelectedTextSuggestionIndex:He,setTextSuggestions:me,stageSuggestion:le,commitSuggestion:xe,setMetrics:ji}=ks.actions,J=Pi("overlay");import{useEffect as qi,useRef as Wi}from"react";var Vi={root:"_root_1h19b_1",content:"_content_1h19b_24"};import{jsx as $i}from"react/jsx-runtime";var Fu=({isOpen:t,autoFocus:e,children:o,onClose:n,onBack:s,overlayAriaLabel:r,contentAriaLabel:i})=>{let a=Wi(null),l=Wi(null),c=y("Dialog",Vi);return qi(()=>{var g,u;let p=m=>{m.key==="Escape"&&(m.preventDefault(),m.stopPropagation(),s())},d=m=>{let f=window.getSelection();f!=null&&f.toString()||m.target===a.current&&t&&n()};return(g=a.current)==null||g.addEventListener("click",d),(u=a.current)==null||u.addEventListener("keyup",p),()=>{var m,f;(m=a.current)==null||m.removeEventListener("click",d),(f=a.current)==null||f.removeEventListener("keyup",p)}},[a,l,s,n]),qi(()=>{var p,d;!a.current||!t||!e||(d=(p=a.current)==null?void 0:p.querySelector("input, textarea"))==null||d.focus()},[t,e,a]),t?$i("div",{role:"dialog","data-testid":"dialog",className:c.root,"aria-label":r,ref:a,children:$i("div",{ref:l,"data-testid":"dialog-content",className:c.content,"aria-label":i,children:o})}):null},xt=Fu;import{useEffect as rl}from"react";import{useDispatch as Tm,useSelector as Em}from"react-redux";var Is={};V(Is,{enUS:()=>Ku,nlNL:()=>Uu});var Ku={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?"}]},Uu={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 Gi={root:"_root_jcr8j_1",content:"_content_jcr8j_3",title:"_title_jcr8j_7",actions:"_actions_jcr8j_15",pagination:"_pagination_jcr8j_19",primaryButton:"_primaryButton_jcr8j_50",primaryButtons:"_primaryButtons_jcr8j_54"};import{createContext as Yu,useContext as eg}from"react";var Ps=function(t,e){return Ps=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])},Ps(t,e)};function Zt(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");Ps(t,e);function o(){this.constructor=t}t.prototype=e===null?Object.create(e):(o.prototype=e.prototype,new o)}var oe=function(){return oe=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},oe.apply(this,arguments)};function Xi(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 Xo(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 Zo;(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"})(Zo||(Zo={}));var Qo=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var ce;(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"})(ce||(ce={}));var Jo;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(Jo||(Jo={}));function As(t){return t.type===ce.literal}function Zi(t){return t.type===ce.argument}function Yo(t){return t.type===ce.number}function en(t){return t.type===ce.date}function tn(t){return t.type===ce.time}function on(t){return t.type===ce.select}function nn(t){return t.type===ce.plural}function Qi(t){return t.type===ce.pound}function sn(t){return t.type===ce.tag}function rn(t){return!!(t&&typeof t=="object"&&t.type===Jo.number)}function Qt(t){return!!(t&&typeof t=="object"&&t.type===Jo.dateTime)}function Ls(t){t.forEach(function(e){if(delete e.location,on(e)||nn(e))for(var o in e.options)delete e.options[o].location,Ls(e.options[o].value);else Yo(e)&&rn(e.style)||(en(e)||tn(e))&&Qt(e.style)?delete e.style.location:sn(e)&&Ls(e.children)})}function Ji(t,e){e===void 0&&(e={}),e=oe({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var o=new Qo(t,e).parse();if(o.err){var n=SyntaxError(Zo[o.err.kind]);throw n.location=o.err.location,n.originalMessage=o.err.message,n}return e!=null&&e.captureLocation||Ls(o.val),o.val}function an(t,e){var o=e&&e.cache?e.cache:$u,n=e&&e.serializer?e.serializer:Wu,s=e&&e.strategy?e.strategy:ju;return s(t,{cache:o,serializer:n})}function zu(t){return t==null||typeof t=="number"||typeof t=="boolean"}function Yi(t,e,o,n){var s=zu(n)?n:o(n),r=e.get(s);return typeof r>"u"&&(r=t.call(this,n),e.set(s,r)),r}function ea(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 Ms(t,e,o,n,s){return o.bind(e,t,n,s)}function ju(t,e){var o=t.length===1?Yi:ea;return Ms(t,this,o,e.cache.create(),e.serializer)}function Vu(t,e){return Ms(t,this,ea,e.cache.create(),e.serializer)}function qu(t,e){return Ms(t,this,Yi,e.cache.create(),e.serializer)}var Wu=function(){return JSON.stringify(arguments)};function Ns(){this.cache=Object.create(null)}Ns.prototype.get=function(t){return this.cache[t]};Ns.prototype.set=function(t,e){this.cache[t]=e};var $u={create:function(){return new Ns}},ln={variadic:Vu,monadic:qu};var Qe;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(Qe||(Qe={}));var Jt=function(t){Zt(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 Os=function(t){Zt(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('", "'),'"'),Qe.INVALID_VALUE,r)||this}return e}(Jt);var ta=function(t){Zt(e,t);function e(o,n,s){return t.call(this,'Value for "'.concat(o,'" must be of type ').concat(n),Qe.INVALID_VALUE,s)||this}return e}(Jt);var oa=function(t){Zt(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,'"'),Qe.MISSING_VALUE,n)||this}return e}(Jt);var $;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})($||($={}));function Gu(t){return t.length<2?t:t.reduce(function(e,o){var n=e[e.length-1];return!n||n.type!==$.literal||o.type!==$.literal?e.push(o):n.value+=o.value,e},[])}function Xu(t){return typeof t=="function"}function Yt(t,e,o,n,s,r,i){if(t.length===1&&As(t[0]))return[{type:$.literal,value:t[0].value}];for(var a=[],l=0,c=t;l<c.length;l++){var p=c[l];if(As(p)){a.push({type:$.literal,value:p.value});continue}if(Qi(p)){typeof r=="number"&&a.push({type:$.literal,value:o.getNumberFormat(e).format(r)});continue}var d=p.value;if(!(s&&d in s))throw new oa(d,i);var g=s[d];if(Zi(p)){(!g||typeof g=="string"||typeof g=="number")&&(g=typeof g=="string"||typeof g=="number"?String(g):""),a.push({type:typeof g=="string"?$.literal:$.object,value:g});continue}if(en(p)){var u=typeof p.style=="string"?n.date[p.style]:Qt(p.style)?p.style.parsedOptions:void 0;a.push({type:$.literal,value:o.getDateTimeFormat(e,u).format(g)});continue}if(tn(p)){var u=typeof p.style=="string"?n.time[p.style]:Qt(p.style)?p.style.parsedOptions:n.time.medium;a.push({type:$.literal,value:o.getDateTimeFormat(e,u).format(g)});continue}if(Yo(p)){var u=typeof p.style=="string"?n.number[p.style]:rn(p.style)?p.style.parsedOptions:void 0;u&&u.scale&&(g=g*(u.scale||1)),a.push({type:$.literal,value:o.getNumberFormat(e,u).format(g)});continue}if(sn(p)){var m=p.children,f=p.value,h=s[f];if(!Xu(h))throw new ta(f,"function",i);var E=Yt(m,e,o,n,s,r),x=h(E.map(function(v){return v.value}));Array.isArray(x)||(x=[x]),a.push.apply(a,x.map(function(v){return{type:typeof v=="string"?$.literal:$.object,value:v}}))}if(on(p)){var _=p.options[g]||p.options.other;if(!_)throw new Os(p.value,g,Object.keys(p.options),i);a.push.apply(a,Yt(_.value,e,o,n,s));continue}if(nn(p)){var _=p.options["=".concat(g)];if(!_){if(!Intl.PluralRules)throw new Jt(`Intl.PluralRules is not available in this environment.
1
+ var jd=Object.defineProperty;var V=(t,e)=>{for(var o in e)jd(t,o,{get:e[o],enumerable:!0})};import fs from"classnames";import Xd,{createContext as Zd,useContext as Oo,useEffect as Qd,useState as Jd}from"react";import Vd,{useContext as qd}from"react";import Wd from"classnames";var qt=Vd.createContext({});function y(t,e){let{debug:o,...n}=qd(qt),s=n[t];return s?Object.entries(e).reduce((r,[i,a])=>{let l=s[i];return{...r,[i]:Wd(a,l,o?`${t}__${i}`:!1)}},{}):e}import{jsx as mi,jsxs as $d}from"react/jsx-runtime";var fi=({className:t})=>$d("svg",{viewBox:"0 0 12 12",version:"1.1",xmlns:"http://www.w3.org/2000/svg",className:t,children:[mi("line",{x1:"1",y1:"11",x2:"11",y2:"1",stroke:"black",strokeWidth:"2"}),mi("line",{x1:"1",y1:"1",x2:"11",y2:"11",stroke:"black",strokeWidth:"2"})]});var hi={root:"_root_vr71j_1"};import{jsx as Mo,jsxs as Gd}from"react/jsx-runtime";var No=()=>Gd("svg",{className:hi.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[Mo("defs",{children:Mo("style",{children:".cls-1 { fill: #b3b3b3; }"})}),Mo("title",{children:"Failed loading image"}),Mo("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 ms={root:"_root_15d2a_1",imageWrapper:"_imageWrapper_15d2a_7",image:"_image_15d2a_7",content:"_content_15d2a_24",title:"_title_15d2a_35",contentIsCropped:"_contentIsCropped_15d2a_45",lineClamp:"_lineClamp_15d2a_51",closeIcon:"_closeIcon_15d2a_58"};import{jsx as Ne}from"react/jsx-runtime";var Wt=Zd(ms),Yd=({title:t,src:e})=>{let o=Oo(Wt),[n,s]=Jd(!1);return Qd(()=>{s(!1)},[e]),Ne("div",{className:o.imageWrapper,children:e&&!n?Ne("img",{className:o.image,alt:t,src:e,onError:()=>s(!0)}):Ne(No,{})})},eu=({className:t,lineClamp:e=!1,cropText:o=!1,children:n})=>{let s=Oo(Wt);return Ne("div",{className:fs(s.content,t,{[s.contentIsCropped]:o,[s.lineClamp]:e}),children:n})},tu=({as:t="h1",cropText:e=!1,className:o,children:n,...s})=>{let r=Oo(Wt);return Xd.createElement(t,{className:fs(r.title,o,{[r.contentIsCropped]:e}),...s},n)},ou=({className:t,title:e,...o})=>{let n=Oo(Wt);return Ne("div",{className:fs(n.closeIcon,t),title:e,role:"button","aria-label":e,...o,children:Ne(fi,{})})},$t=({children:t})=>{let e=y("Card",ms);return Ne("div",{className:e.root,children:Ne(Wt.Provider,{value:e,children:t})})};$t.Image=Yd;$t.Content=eu;$t.Title=tu;$t.CloseIcon=ou;var O=$t;import nu from"classnames";var yi={root:"_root_cq1yq_1"};import{jsx as iu}from"react/jsx-runtime";var su={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},ru=({className:t,keyCode:e,...o})=>{let n=y("KeyboardHint",yi);return iu("span",{"data-key":su[e],className:nu(t,n.root),...o})},hs=ru;import au from"classnames";var vi={root:"_root_4a08n_1"};import{jsx as cu}from"react/jsx-runtime";var lu=({className:t,children:e,...o})=>{let n=y("Label",vi);return cu("span",{...o,className:au(t,n.root),children:e})},ys=lu;var Si={root:"_root_jlggj_1",subTitleContainer:"_subTitleContainer_jlggj_5",subtitle:"_subtitle_jlggj_9",suggestions:"_suggestions_jlggj_17"};import{jsx as vs,jsxs as du}from"react/jsx-runtime";var pu=({title:t,children:e,type:o,...n})=>{let s=y("Section",Si);return du("section",{...n,className:s.root,"data-section-type":o,children:[t&&vs("div",{className:s.subTitleContainer,children:vs("span",{className:s.subtitle,children:t})}),vs("div",{className:s.suggestions,children:e})]})},Oe=pu;import uu from"classnames";import gu from"react";var _i={root:"_root_19wxp_1"};import{jsx as fu}from"react/jsx-runtime";var mu=gu.forwardRef(({className:t,children:e},o)=>{let n=y("SectionList",_i);return fu("div",{ref:o,className:uu(n.root,t),children:e})}),Ss=mu;import Do from"classnames";import hu,{createContext as yu,useCallback as vu,useContext as Gt}from"react";var _s={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 _e,jsxs as Cu}from"react/jsx-runtime";var gt=yu(_s),Su=({fixed:t,children:e,...o})=>{let n=Gt(gt);return _e("div",{...o,className:Do(n.actions,{[n.actionsIsFixed]:t}),children:e})},_u=({className:t,primary:e,disabled:o,label:n,children:s})=>{let r=Gt(gt);return Cu("div",{className:Do(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[n,_e("ul",{className:r.dropdownList,children:s})]})},xu=({index:t,label:e,onClick:o})=>{let n=Gt(gt);return _e("li",{className:n.dropdownItem,children:_e("button",{className:n.dropdownItemButton,type:"button","data-index":t,onClick:o,children:e})})},bu=({className:t,primary:e,disabled:o,onClick:n,label:s})=>{let r=Gt(gt);return _e("button",{type:"button",className:Do(t,r.actionButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onClick:n??(i=>i.stopPropagation()),disabled:o,"aria-hidden":o,children:s})},xs=({labels:t})=>{let e=Gt(gt);return _e("div",{className:e.labels,children:t.map(o=>_e("span",{className:e.label,children:o},o))})},mt=hu.forwardRef(({className:t,selected:e,onClick:o,children:n,as:s="div",...r},i)=>{let a=y("Suggestion",_s),l=vu(c=>{c.preventDefault(),o&&o(c)},[o]);return _e(s,{...r,ref:i,className:Do(t,a.root,{[a.isSelected]:e,[a.isClickable]:!!o}),onClick:l,children:_e(gt.Provider,{value:a,children:n})})});mt.Labels=xs;mt.Actions=Su;mt.ActionButton=bu;mt.DropdownButton=_u;mt.DropdownItem=xu;var M=mt;import wu from"classnames";var xi={root:"_root_fp74r_1",isWithDivider:"_isWithDivider_fp74r_9"};import{jsx as Eu}from"react/jsx-runtime";var Tu=({withDivider:t,children:e})=>{let o=y("SuggestionList",xi);return Eu("div",{"data-testid":"suggestions-overlay-list",className:wu(o.root,{[o.isWithDivider]:t}),children:e})},re=Tu;import ku from"classnames";var bi={root:"_root_1wpmq_1",isCollapsed:"_isCollapsed_1wpmq_17"};import{jsx as bs}from"react/jsx-runtime";var Iu=({className:t,isCollapsed:e,title:o,onClick:n})=>{let s=y("ToggleButton",bi);return bs("button",{type:"button",className:ku(s.root,t,{[s.isCollapsed]:e}),onClick:n,title:o,children:bs("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:bs("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},ft=Iu;var Ci=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,ht=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var wi=/x-deepdesk-(([a-z0-9\-_])+-version)/,ge=(f=>(f.SEARCH="search",f.TEMPLATE="template",f.ELASTIC_SEARCH="search-autocomplete",f.GPT="gpt",f.TRIE="trie",f.TRIE_WITH_TYPOS="trie-with-typos",f.SEMANTIC="semantic",f.TEXT_RECOMMENDATION="text_recommendation",f.URL_RECOMMENDATION="url_recommendation",f.LINK_RECOMMENDATION="link_recommendation",f.PERSONAL_COLLECTION="personal-collection",f.PERSONAL_COLLECTION_SEARCH="personal-collection-search",f.SEARCH_OVERLAY="search-overlay",f.SEARCH_PREVIEW="search-preview",f.SEARCH_URL="search-url",f))(ge||{}),Xe=(r=>(r.ENTER="enter",r.TAB="tab",r.ARROW="arrow",r.HOTKEY="hotkey",r.MOUSE="mouse",r))(Xe||{});import{render as zt,unmountComponentAtNode as ds}from"react-dom";import{Fragment as xh}from"react";import{createSlice as Ru}from"@reduxjs/toolkit";import{useSelector as Pu}from"react-redux";var Ho=(o=>(o.NL_NL="nl-NL",o.EN_US="en-US",o))(Ho||{});var Au={locale:"en-US",deanonymize:!1,fallbackImage:!1,isEmbedded:!1,showAutoflows:!1,showCustomMessages:!1,showImages:!1,showSearch:!1,showImageSearch:!1,showStyleSuggestions:!1,showMidSentenceSuggestions:!1,showSuggestionsBeforePattern:!1,showSuggestionsAfterPattern:!1,showTabCompletion:!0,showTextSuggestions:!0,showEntitiesCommand:!1,showSummaryCommand:!1,showKnowledgeSearch:!1,textSuggestionsCount:3,recommendTextSuggestions:!0,searchTriggerKey:"k",visible:!0,insertLink:!1,inlineSuggestions:!1,floatingMenu:!1,adminUrl:void 0,productName:"Deepdesk"},Ti=Ru({name:"settings",initialState:Au,reducers:{set(t,e){Object.entries(e.payload).forEach(o=>{let[n,s]=o;typeof s>"u"||(t[n]=s)})}}}),{set:Xt}=Ti.actions,Cs=t=>e=>e.settings[t],C=t=>Pu(Cs(t)),Ei=Ti.reducer;import{useState as Ym}from"react";import{useDispatch as ef,useSelector as yr}from"react-redux";import{createAction as Ze,createSlice as Ku}from"@reduxjs/toolkit";import{diffChars as Uu}from"diff";import{useSelector as zu}from"react-redux";function ki(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function De(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)=>De(r,e[i],o-1)):ki(t)&&ki(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>De(t[i],e[i],o-1)):!1}function Lu(t){return Math.max(...t.map(e=>e.length))}function Mu(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 Ii(t,e){let n=[...t.map(({text:s})=>s.split(/\b(\w+)\b/))];for(let s=0;s<Lu(n);s++){let r=Mu(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 Nu=2;function ws(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let o=Ii(t,Nu);return o&&o.text!==e?o:t[0]}import{createAction as Du,createAsyncThunk as yt,createSlice as Hu}from"@reduxjs/toolkit";var Ou={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},w=Ou;var Ri={current:null,isSupported:null},P=Du("resetConversation"),Bo=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.sessionId)||null},Fo=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},vt=t=>t.conversation.isSupported,Ts=yt("conversation/isSupported",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.isConversationSupported(t.sessionId,t.options)}),Ko=yt("conversation/create",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.createConversation(t)}),Uo=yt("conversation/bySessionId",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.getConversationBySessionId(t.sessionId,t.options)}),zo=yt("conversation/update",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Fo(e.getState());if(!n)throw new Error("No current conversation to update");return o.updateConversation(n,t)}),Es=yt("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})})}),jo=yt("conversation/postMessages",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Fo(e.getState());if(!n)throw new Error("No current conversation to update messages");return o.postMessages(n,t.map(s=>({...s})))}),Bu=[Ko.rejected,Uo.rejected,zo.rejected,jo.rejected].map(t=>t==null?void 0:t.toString()),Fu=Hu({name:"conversation",initialState:Ri,reducers:{},extraReducers:t=>{t.addCase(Ts.fulfilled,(e,o)=>{e.isSupported=o.payload}).addCase(Ko.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Uo.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Es.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(zo.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(jo.fulfilled,(e,o)=>{e.current&&(e.current.messages=o.payload)}).addCase(P,()=>Ri).addMatcher(e=>Bu.includes(e.type),(e,o)=>{var n;throw w.info("Conversation action rejected",o.type,((n=o.error)==null?void 0:n.message)||"No message"),new Error(o.error.message)})}}),Pi=Fu.reducer;var He={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 qo(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 Wo=Ze("input/replaceText"),$o=Ze("input/keyDown"),Qe=Ze("input/sendMessage"),Go=Ze("input/sendEditSuggestionMessage"),Xo=Ze("input/uiInputChange"),Zo=Ze("input/applyImageSuggestion"),W=Ze("input/sendEvent");function Vo(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,d=o==="search"||o==="personal-collection-search",g=e.slice(t.userCommitted.text.substring(0,t.userCommitted.selection.start).length);(d||p==="selection")&&(g=e),t.stagedSuggestion.suggestion.source==="search-overlay"&&(g=l),t.userCommitted.text=t.text,t.userCommitted.selection=t.selection,t.metrics.textSuggestions.push({text:g,source:o,abVariant:n,abTestName:s,inputType:c,sourceText:i,trainingJobs:r||[],searchTerm:d?t.userCommitted.text:a}),t.stagedSuggestion=null,t.textSuggestions=[],t.selectedSuggestionIndex=-1}var Ai=t=>Ku({name:t,initialState:He,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,{...He,selection:e.selection})},resetToCommitted(e){e.text=e.userCommitted.text,e.selection=e.userCommitted.selection,e.stagedSuggestion=null,e.tabCompletionSuggestion=ws(e.textSuggestions,e.userCommitted.text)},changeSelection(e,o){o.payload&&(De(e.selection,o.payload)||(e.selection=o.payload,e.userCommitted.selection=e.selection,e.stagedSuggestion&&Vo(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:d,ctrlKey:g,metaKey:u,altKey:m}=e.previousKeyDownEvent;switch(p){case"Enter":d&&(e.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:f}=e,{text:h}=o.payload,E=Uu(f,h);f.length-h.length>1&&e.metrics.deletions.push(...E.filter(x=>x.removed).map(x=>x.value)),e.metrics.numCharsDeleted+=f.length-h.length;break}case"C":case"V":case"X":if(!g&&!u){e.metrics.numCharsTyped+=1;let f=((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;f&&f.length>0&&(e.metrics.numCharsDeleted+=f.length,e.metrics.deletions.push(f))}break;case"Shift":break;default:if(!g&&!u&&!m){e.metrics.numCharsTyped+=1;let f=((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;f&&f.length>0&&(e.metrics.numCharsDeleted+=f.length,e.metrics.deletions.push(f))}}}!e.metrics.agentStartedTypingTimestamp&&o.payload.text!==e.text&&(e.metrics.agentStartedTypingTimestamp=Date.now()),o.payload.text===""&&(e.metrics=He.metrics,e.textSuggestions=[],e.stagedSuggestion=null),e.text!==o.payload.text&&Vo(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"&&Vo(e)},commitSuggestion(e){Vo(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=ws(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)},setMetrics(e,{payload:o}){e.metrics=o}},extraReducers:e=>{e.addCase(P,o=>{o.tabCompletionSuggestion=He.tabCompletionSuggestion,o.previousKeyDownEvent=He.previousKeyDownEvent,o.textSuggestions=He.textSuggestions,o.selectedSuggestionIndex=He.selectedSuggestionIndex,o.metrics=He.metrics})}}),ks=Ai("input"),St=t=>t.input.userCommitted.text.substring(0,t.input.userCommitted.selection.end),ju=t=>t.input.selection,Li=()=>zu(ju),{userInput:Mi,changeSelection:Is,initialInput:Ni,mergeMetrics:Oi,nextTextSuggestionIndex:Di,offeredTextSuggestion:Hi,previousTextSuggestionIndex:Bi,registerCut:Fi,registerKeyDown:Ki,registerPaste:Ui,reset:zi,resetToCommitted:Zt,platformInput:ji,setSelectedTextSuggestionIndex:Be,setTextSuggestions:me,stageSuggestion:le,commitSuggestion:xe,setMetrics:Vi}=ks.actions,J=Ai("overlay");import{useEffect as Wi,useRef as $i}from"react";var qi={root:"_root_1h19b_1",content:"_content_1h19b_24"};import{jsx as Gi}from"react/jsx-runtime";var Vu=({isOpen:t,autoFocus:e,children:o,onClose:n,onBack:s,overlayAriaLabel:r,contentAriaLabel:i})=>{let a=$i(null),l=$i(null),c=y("Dialog",qi);return Wi(()=>{var g,u;let p=m=>{m.key==="Escape"&&(m.preventDefault(),m.stopPropagation(),s())},d=m=>{let f=window.getSelection();f!=null&&f.toString()||m.target===a.current&&t&&n()};return(g=a.current)==null||g.addEventListener("click",d),(u=a.current)==null||u.addEventListener("keyup",p),()=>{var m,f;(m=a.current)==null||m.removeEventListener("click",d),(f=a.current)==null||f.removeEventListener("keyup",p)}},[a,l,s,n]),Wi(()=>{var p,d;!a.current||!t||!e||(d=(p=a.current)==null?void 0:p.querySelector("input, textarea"))==null||d.focus()},[t,e,a]),t?Gi("div",{role:"dialog","data-testid":"dialog",className:c.root,"aria-label":r,ref:a,children:Gi("div",{ref:l,"data-testid":"dialog-content",className:c.content,"aria-label":i,children:o})}):null},_t=Vu;import{useEffect as il}from"react";import{useDispatch as Pm,useSelector as Am}from"react-redux";var Rs={};V(Rs,{enUS:()=>qu,nlNL:()=>Wu});var qu={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?"}]},Wu={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 Xi={root:"_root_jcr8j_1",content:"_content_jcr8j_3",title:"_title_jcr8j_7",actions:"_actions_jcr8j_15",pagination:"_pagination_jcr8j_19",primaryButton:"_primaryButton_jcr8j_50",primaryButtons:"_primaryButtons_jcr8j_54"};import{createContext as sg,useContext as rg}from"react";var Ps=function(t,e){return Ps=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])},Ps(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");Ps(t,e);function o(){this.constructor=t}t.prototype=e===null?Object.create(e):(o.prototype=e.prototype,new o)}var oe=function(){return oe=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},oe.apply(this,arguments)};function Zi(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 Qo(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 Jo;(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"})(Jo||(Jo={}));var Yo=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var ce;(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"})(ce||(ce={}));var en;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(en||(en={}));function As(t){return t.type===ce.literal}function Qi(t){return t.type===ce.argument}function tn(t){return t.type===ce.number}function on(t){return t.type===ce.date}function nn(t){return t.type===ce.time}function sn(t){return t.type===ce.select}function rn(t){return t.type===ce.plural}function Ji(t){return t.type===ce.pound}function an(t){return t.type===ce.tag}function ln(t){return!!(t&&typeof t=="object"&&t.type===en.number)}function Jt(t){return!!(t&&typeof t=="object"&&t.type===en.dateTime)}function Ls(t){t.forEach(function(e){if(delete e.location,sn(e)||rn(e))for(var o in e.options)delete e.options[o].location,Ls(e.options[o].value);else tn(e)&&ln(e.style)||(on(e)||nn(e))&&Jt(e.style)?delete e.style.location:an(e)&&Ls(e.children)})}function Yi(t,e){e===void 0&&(e={}),e=oe({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var o=new Yo(t,e).parse();if(o.err){var n=SyntaxError(Jo[o.err.kind]);throw n.location=o.err.location,n.originalMessage=o.err.message,n}return e!=null&&e.captureLocation||Ls(o.val),o.val}function cn(t,e){var o=e&&e.cache?e.cache:Ju,n=e&&e.serializer?e.serializer:Qu,s=e&&e.strategy?e.strategy:Gu;return s(t,{cache:o,serializer:n})}function $u(t){return t==null||typeof t=="number"||typeof t=="boolean"}function ea(t,e,o,n){var s=$u(n)?n:o(n),r=e.get(s);return typeof r>"u"&&(r=t.call(this,n),e.set(s,r)),r}function ta(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 Ms(t,e,o,n,s){return o.bind(e,t,n,s)}function Gu(t,e){var o=t.length===1?ea:ta;return Ms(t,this,o,e.cache.create(),e.serializer)}function Xu(t,e){return Ms(t,this,ta,e.cache.create(),e.serializer)}function Zu(t,e){return Ms(t,this,ea,e.cache.create(),e.serializer)}var Qu=function(){return JSON.stringify(arguments)};function Ns(){this.cache=Object.create(null)}Ns.prototype.get=function(t){return this.cache[t]};Ns.prototype.set=function(t,e){this.cache[t]=e};var Ju={create:function(){return new Ns}},pn={variadic:Xu,monadic:Zu};var Je;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(Je||(Je={}));var Yt=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 Os=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('", "'),'"'),Je.INVALID_VALUE,r)||this}return e}(Yt);var oa=function(t){Qt(e,t);function e(o,n,s){return t.call(this,'Value for "'.concat(o,'" must be of type ').concat(n),Je.INVALID_VALUE,s)||this}return e}(Yt);var na=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,'"'),Je.MISSING_VALUE,n)||this}return e}(Yt);var $;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})($||($={}));function Yu(t){return t.length<2?t:t.reduce(function(e,o){var n=e[e.length-1];return!n||n.type!==$.literal||o.type!==$.literal?e.push(o):n.value+=o.value,e},[])}function eg(t){return typeof t=="function"}function eo(t,e,o,n,s,r,i){if(t.length===1&&As(t[0]))return[{type:$.literal,value:t[0].value}];for(var a=[],l=0,c=t;l<c.length;l++){var p=c[l];if(As(p)){a.push({type:$.literal,value:p.value});continue}if(Ji(p)){typeof r=="number"&&a.push({type:$.literal,value:o.getNumberFormat(e).format(r)});continue}var d=p.value;if(!(s&&d in s))throw new na(d,i);var g=s[d];if(Qi(p)){(!g||typeof g=="string"||typeof g=="number")&&(g=typeof g=="string"||typeof g=="number"?String(g):""),a.push({type:typeof g=="string"?$.literal:$.object,value:g});continue}if(on(p)){var u=typeof p.style=="string"?n.date[p.style]:Jt(p.style)?p.style.parsedOptions:void 0;a.push({type:$.literal,value:o.getDateTimeFormat(e,u).format(g)});continue}if(nn(p)){var u=typeof p.style=="string"?n.time[p.style]:Jt(p.style)?p.style.parsedOptions:n.time.medium;a.push({type:$.literal,value:o.getDateTimeFormat(e,u).format(g)});continue}if(tn(p)){var u=typeof p.style=="string"?n.number[p.style]:ln(p.style)?p.style.parsedOptions:void 0;u&&u.scale&&(g=g*(u.scale||1)),a.push({type:$.literal,value:o.getNumberFormat(e,u).format(g)});continue}if(an(p)){var m=p.children,f=p.value,h=s[f];if(!eg(h))throw new oa(f,"function",i);var E=eo(m,e,o,n,s,r),x=h(E.map(function(v){return v.value}));Array.isArray(x)||(x=[x]),a.push.apply(a,x.map(function(v){return{type:typeof v=="string"?$.literal:$.object,value:v}}))}if(sn(p)){var _=p.options[g]||p.options.other;if(!_)throw new Os(p.value,g,Object.keys(p.options),i);a.push.apply(a,eo(_.value,e,o,n,s));continue}if(rn(p)){var _=p.options["=".concat(g)];if(!_){if(!Intl.PluralRules)throw new Yt(`Intl.PluralRules is not available in this environment.
2
2
  Try polyfilling it using "@formatjs/intl-pluralrules"
3
- `,Qe.MISSING_INTL_API,i);var b=o.getPluralRules(e,{type:p.pluralType}).select(g-(p.offset||0));_=p.options[b]||p.options.other}if(!_)throw new Os(p.value,g,Object.keys(p.options),i);a.push.apply(a,Yt(_.value,e,o,n,s,g-(p.offset||0)));continue}}return Gu(a)}function Zu(t,e){return e?oe(oe(oe({},t||{}),e||{}),Object.keys(t).reduce(function(o,n){return o[n]=oe(oe({},t[n]),e[n]||{}),o},{})):t}function Qu(t,e){return e?Object.keys(t).reduce(function(o,n){return o[n]=Zu(t[n],e[n]),o},oe({},t)):t}function Ds(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,o){t[e]=o}}}}}function Ju(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:an(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.NumberFormat).bind.apply(e,Xo([void 0],o,!1)))},{cache:Ds(t.number),strategy:ln.variadic}),getDateTimeFormat:an(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.DateTimeFormat).bind.apply(e,Xo([void 0],o,!1)))},{cache:Ds(t.dateTime),strategy:ln.variadic}),getPluralRules:an(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.PluralRules).bind.apply(e,Xo([void 0],o,!1)))},{cache:Ds(t.pluralRules),strategy:ln.variadic})}}var na=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 d=p.reduce(function(g,u){return!g.length||u.type!==$.literal||typeof g[g.length-1]!="string"?g.push(u.value):g[g.length-1]+=u.value,g},[]);return d.length<=1?d[0]||"":d},this.formatToParts=function(c){return Yt(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=Xi(i,["formatters"]);this.ast=t.__parse(e,oe(oe({},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=Qu(t.formats,n),this.formatters=s&&s.formatters||Ju(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=Ji,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 tg(t,e){return e.split(".").reduce((o,n)=>o?o[n]:void 0,t)}var og="dummy",Hs=Yu(null);function T(t){let e=eg(Hs);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=tg(o,n);return r?new na(r).format(s):(e!==og&&console.warn(`${n} does not exist in messages of ${e}`),`[${n}]`)}}import{jsx as sa,jsxs as ng}from"react/jsx-runtime";var cn=()=>ng("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[sa("title",{id:"angleLeftTitle",children:"AngleLeft"}),sa("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 ra,jsxs as sg}from"react/jsx-runtime";var ia=()=>sg("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleRightTitle",children:[ra("title",{id:"angleRightTitle",children:"AngleRight"}),ra("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 to,useRef as Ws,useState as Rg}from"react";import{useDispatch as Ig}from"react-redux";import{Interweave as ka}from"interweave";import Ra from"classnames";var Bs={root:"_root_smoda_1",agentText:"_agentText_smoda_3",textInput:"_textInput_smoda_8",textInputWrapper:"_textInputWrapper_smoda_27",alert:"_alert_smoda_31",alertText:"_alertText_smoda_50",warning:"_warning_smoda_60",success:"_success_smoda_69"};import{Matcher as lg}from"interweave";import cg from"classnames";import{useEffect as rg,useRef as ig,useState as ag}from"react";function aa(t,e){let o;return[(...n)=>{window.cancelAnimationFrame(o);let s=e?e(...n):n;o=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(o)]}function pn(t){let e=ig(null),[o,n]=ag(!1);return rg(()=>{let s=!1,r=parseFloat(window.getComputedStyle(document.body).zoom??"1"),[i,a]=aa((p,d)=>{let g=e.current;if(!g)return;let u=p/r,m=d/r,f=g.getBoundingClientRect(),h=u>f.x&&u<f.x+f.width&&m>f.y&&m<f.y+f.height;h&&!s?(s=!0,n(!0)):!h&&s&&(s=!1,n(!1))},({clientX:p,clientY:d})=>[p,d]),[l,c]=aa(()=>{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 be={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 la}from"react/jsx-runtime";var pg=({inputElement:t,children:e})=>{let o=y("TabCompletion",be),[n,s]=pn(t);return la("mark",{ref:n,className:cg(o.matchPlaceholder,{[o.hover]:s}),children:e})},bt=class extends lg{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 la(pg,{inputElement:o.inputElement,children:e},`placeholder_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import{useEffect as dg,useRef as ug,useState as gg}from"react";function dn(t){return t.contentEditable==="true"}function mg(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 ca(t){let{selectionStart:e,selectionEnd:o}=dn(t)?mg(t):t;return[e,o]}function un(t){let[,e]=gg(),o=ug(null);return o.current=ca(t),dg(()=>{let n=()=>{let[s,r]=o.current??[],i=ca(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 gn(t,e){if(!e)return;let o=t,{value:n}=o,[s,r]=e,i=n.match(yt);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 fg}from"react";function Ct(t){fg(()=>{let e=o=>{o.isWithinRoot||t(o)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function Je(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}var pa,fe=new Map,hg=["bottom","height","left","right","top","width"],yg=(t={},e={})=>hg.some(o=>t[o]!==e[o]);function da(t){var o,n;if(t.ownerDocument===document)return[];let e=((n=(o=t.ownerDocument)==null?void 0:o.defaultView)==null?void 0:n.frameElement)??null;return e?[e,...da(e)]:[]}function ua(t,e){return!t||!e?null:{...t,top:t.top+e.top,left:t.left+e.left}}var mn=!1,ga=()=>{mn=!0;let t=[];if(fe.forEach((e,o)=>{if(!o.isConnected){e.rect=null,t.push(e),fe.delete(o);return}let n=o.getBoundingClientRect();yg(n,e.rect)&&(e.rect=n,t.push(e))}),t.forEach(e=>{let o=e.parentRects?e.parentRects.reduce(ua,e.rect):e.rect;e.callbacks.forEach(n=>n(o))}),fe.size===0){mn=!1;return}pa=window.requestAnimationFrame(ga)};function Fs(t,e){let o=da(t),n=[],s=o.map((r,i)=>Fs(r,a=>{n[i]=a;let l=fe.get(t);if(!l)return;let c=n.reduce(ua,l.rect);l.callbacks.forEach(p=>p(c))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),fe.has(t)){let i=fe.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else fe.set(t,{rect:void 0,callbacks:[e],parentRects:n});r&&!mn&&ga()},unobserve(){s.forEach(i=>i.unobserve());let r=fe.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||fe.delete(t),fe.size||(cancelAnimationFrame(pa),mn=!1)}}}}var ma,he=new Map,fa=()=>{he.forEach((t,e)=>{if(!e.isConnected){he.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)))}),he.size!==0&&(ma=window.requestAnimationFrame(fa))};function ha(t,e){return{observe(){let o=he.size===0;he.has(t)?he.get(t).callbacks.push(e):he.set(t,{visible:void 0,callbacks:[e]}),o&&fa()},unobserve(){let o=he.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||he.delete(t),he.size||cancelAnimationFrame(ma)}}}}var Ks=["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 Us(t,e,o){return o.forEach(n=>{e.style[n]=t[n]})}function wt(t){return parseFloat(t)}function fn(t){return Math.round(t*1e6)}function ya(t){return t/1e6}function zs(t,e,o){if(t.boxSizing==="content-box")return;let{clientWidth:n}=e,s=wt(t.width),r=wt(t.borderLeftWidth),i=wt(t.borderRightWidth),a=wt(t.paddingRight),l=ya(fn(s)-fn(r)-fn(i)),c=ya(fn(n));if(l-c>2){let p=l-c;o.style.paddingRight=`${a+p}px`}}function Tt(t,e={}){var p;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",Je(o);let n=window.getComputedStyle(t),s=!0,r=()=>{o.scrollTop=t.scrollTop};Us(n,o,Ks),zs(n,t,o),e.mirrorOverflow&&(o.style.overflow="hidden",t.addEventListener("scroll",r));let i=ha(t,()=>{Us(n,o,Ks),zs(n,t,o),r(),setTimeout(r,0)}),a,l=!0,c=Fs(t,d=>{if(d===null){e.onRemove&&e.onRemove(),o.remove();return}if(!l&&e.onMoveStart&&(Promise.resolve().then(()=>e.onMoveStart()),l=!0),clearTimeout(a),a=setTimeout(()=>{e.onMoveEnd&&e.onMoveEnd(),l=!1},200),d.height===0&&d.width===0){if(s===!0)return;e.onHide&&e.onHide(),o.style.display="none",s=!0;return}if(Us(n,o,Ks),zs(n,t,o),r(),o.style.top=`${d.top}px`,o.style.left=`${d.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let g=e.closestScrollElement.getBoundingClientRect(),u=window.getComputedStyle(e.closestScrollElement),m=wt(u.borderTopWidth),f=wt(u.borderBottomWidth),h=g.top+m-d.top,E=d.top+d.height+-(g.top+g.height-f);o.style.clipPath=`inset(${h}px 0px ${E}px 0px)`}s&&(o.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(o):(p=t.parentElement)==null||p.appendChild(o),c.observe(),i.observe(),[o,()=>{t.removeEventListener("scroll",r),c.unobserve(),i.unobserve()}]}var js={};V(js,{enUS:()=>vg,nlNL:()=>Sg});var vg={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"}]},Sg={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 va,jsxs as _g}from"react/jsx-runtime";var Sa=()=>_g("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 512 512","aria-labelledby":"circleCheckTitle",children:[va("title",{id:"circleCheckTitle",children:"Check"}),va("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 _a}from"react/jsx-runtime";var xa=()=>_a("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",fill:"currentColor",children:_a("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"})});var ba=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(ba||{}),Be=class{constructor(e){this.element=e;this.currentText=this.getText(),this.currentHTML=this.getHTML(),this.listen()}eventListeners={};disposeHandlers=[];currentText="";currentCaret=null;currentSelection={start:0,end:0};currentHTML="";isFocused=!1;isActive=!0;isSettingValue=!1;isSubmitting=!1;isPossibleClearInputAction=!1;isDisposed=!1;addEventListener(e,o){let n=s=>{o(s)};this.element.addEventListener(e,n),this.disposeHandlers.push(()=>{this.element.removeEventListener(e,n)})}removeEventListener(e,o){this.element.removeEventListener(e,o)}triggerChange(){let e=this.getText(),o=this.getHTML(),n=e!==this.currentText;this.isActive&&(e===""&&this.currentText!==""&&!this.isSettingValue&&!this.isPossibleClearInputAction&&(this.isSubmitting=!0,this.emit("submit")),!this.isSettingValue&&n&&!this.isSubmitting&&this.emit("change",{plainText:e}),n&&(this.currentSelection=this.getSelection()),this.currentText=e,this.isSubmitting=!1,(this.currentHTML!==o||o===null&&n)&&(this.emit("updated",{plainText:e}),this.triggerCaretPosition(),this.currentHTML=o))}triggerSelection(){let e=this.getSelection();(e.start!==this.currentSelection.start||e.end!==this.currentSelection.end)&&(this.currentSelection=e,this.emit("selection",e),this.triggerCaretPosition())}triggerCaretPosition(){let e=this.getCaretPosition();Oe(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(ba).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",o=>this.handleKeyDown(o)),this.addEventListener("keyup",o=>this.handleKeyUp(o)),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",o=>this.handlePaste(o)),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()}),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 Fe=class extends Be{lastKnownSelection=null;getText(){return this.element.value}getHTML(){return null}getSelection(){let{selectionStart:e,selectionEnd:o}=this.element;return{start:e,end:o}}getSelectedText(){let e=this.getSelection();return e?this.getText().slice(e.start,e.end):""}getCaretPosition(){return null}applyChanges(e){if(!this.isActive)return;this.isSettingValue=!0;let o=this.getText(),n=e(this.element);return Promise.resolve(n).then(()=>{this.currentText=this.getText(),o!==this.currentText&&this.triggerChange(),this.isSettingValue=!1})}listen(){super.listen();let e=Object.getOwnPropertyDescriptor(window.HTMLTextAreaElement.prototype,"value");Object.defineProperty(this.element,"value",{configurable:!0,get:()=>{var s;return(s=e==null?void 0:e.get)==null?void 0:s.call(this.element)},set:s=>{var r;(r=e==null?void 0:e.set)==null||r.call(this.element,s),this.triggerChange()}});let o=this.element.disabled,n=new MutationObserver(()=>{this.element.disabled!==o&&(o=this.element.disabled,this.emit(o?"disabled":"enabled"))});n.observe(this.element,{attributes:!0,attributeFilter:["disabled"]}),this.disposeHandlers.push(()=>n.disconnect())}};var xg=/[.*+?^${}()|[\]\\]/g,bg=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function Cg(t){return t.replace(xg,"\\$&")}function wg(t,e){let o=t.split("").findIndex((n,s)=>n!==e[s]);return o>-1?o:Math.min(t.length,e.length)}function Tg(t){return t.search(bg)}function Ca(t,e=[]){let o=t;return e.forEach(n=>{if(!n)return;let s=new RegExp(`\\b(${Cg(n)})\\b`,"gi");o=o.replace(s,"<strong>$1</strong>")}),o}function wa(t){return t.replace(yt,'<mark data-type="placeholder">$1</mark>')}function eo(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function Eg(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 Vs(t,e,o={}){if(e){let n=wg(e.toLowerCase(),t.toLowerCase()),s=eo(t.substring(n,t.length));if(o.stripAgentPart){let l=t.substring(0,n),c=Tg(l);return`<span style="opacity: 0.5">${l.substring(c+1)}</span>${s}`}let i=e.split(bi).length>3||e.length>30?Eg(e.trim(),n):0;return`${`${i>0?"\u2026":""}${eo(t.substring(i,n))}`}<strong>${s}</strong>`}return t}var kg=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function Et(t){return kg.test(t)}function Ta(t){if(Et(t)){let o=/<body[^>]*>([\s\S]*)<\/body>/gi.exec(t);return o?o[1]:""}return t}function Ea(t){let e=document.createElement("template");return e.innerHTML=t,e.content.textContent??""}import{jsx as pe,jsxs as qs}from"react/jsx-runtime";var Pg=({value:t,onUse:e,...o})=>{var d;let n=T(js),s=Ig(),r=Et(t),i=y("EditSuggestionTextInput",Bs),[a,l]=Rg(null),c=Ws(null),p=((d=t.match(yt))==null?void 0:d.length)||0;return to(()=>{let g;return c.current&&(l(c.current),g=new Fe(c.current),g.on("change",({plainText:u})=>{s(J.actions.userInput({text:u,selection:g.getSelection()}))}),g.on("keydown",u=>{s(J.actions.registerKeyDown(jo(u))),u.code==="Enter"&&u.shiftKey&&e(g.getText())}),g.on("paste",({pastedText:u,selectionText:m})=>{s(J.actions.registerPaste({text:u,selectionText:m}))}),g.on("cut",({selectionText:u})=>{s(J.actions.registerCut(u))})),()=>{s(J.actions.reset()),g.dispose(),g.deactivate()}},[c]),to(()=>{t&&c.current&&(c.current.value=t)},[t,c]),to(()=>{c.current&&setTimeout(()=>{if(!c.current)return;let g=c.current.value.length;c.current.setSelectionRange(g,g),c.current.focus()},0)},[c]),r?pe("div",{className:i.textInputWrapper,children:pe(ka,{className:i.textInput,tagName:"div",content:t})}):qs("div",{className:i.textInputWrapper,children:[pe("textarea",{...o,ref:c,"data-testid":"edit-suggestion-dialog-textarea",className:i.textInput,defaultValue:t,onChange:()=>{}}),a&&pe(Ag,{inputElement:c.current,value:t}),qs("div",{className:Ra(i.alert,p===0?i.success:i.warning),children:[pe("div",{className:i.alertText,children:n("placeholders",{placeholderSize:p})}),p===0?pe(Sa,{}):pe(xa,{})]})]})},Ag=({inputElement:t,value:e})=>{let o=y("EditSuggestionTextInput",Bs),n=Ws(null),s=un(t);return to(()=>{gn(t,s)},[s,t]),pe(Lg,{inputElement:t,children:qs("div",{ref:n,className:Ra(o.root,o.agentText),children:[pe(ka,{tagName:"span",disableLineBreaks:!0,content:e,matchers:[new bt("placeholders")],inputElement:t,boundaryRef:n}),pe("br",{})]})})},Lg=({inputElement:t,children:e})=>{let o=Ws(null);return to(()=>{if(!o.current)return()=>{};let[n,s]=Tt(t,{overlayContainer:o.current,mirrorOverflow:!0});return n.setAttribute("translate","no"),()=>{s()}},[o.current]),pe("div",{ref:o,children:e})},Ia=Pg;import{useEffect as xm,useState as bm,useRef as Cm}from"react";import{useState as Og}from"react";import $s from"classnames";var Y={root:"_root_1xflk_1",list:"_list_1xflk_2",listWrapper:"_listWrapper_1xflk_6",listHorizontal:"_listHorizontal_1xflk_10",page:"_page_1xflk_19",search:"_search_1xflk_25",pageNav:"_pageNav_1xflk_33",pageTitle:"_pageTitle_1xflk_41",pageBackButton:"_pageBackButton_1xflk_48",listHeader:"_listHeader_1xflk_62",listHeading:"_listHeading_1xflk_68",listMoreButton:"_listMoreButton_1xflk_76",listItem:"_listItem_1xflk_87",listItemContent:"_listItemContent_1xflk_96",listItemText:"_listItemText_1xflk_114",listItemDescription:"_listItemDescription_1xflk_122",listItemActions:"_listItemActions_1xflk_129",truncate:"_truncate_1xflk_140",lineClamp:"_lineClamp_1xflk_146",listItemTitle:"_listItemTitle_1xflk_153",listItemAction:"_listItemAction_1xflk_129",listItemPrimaryAction:"_listItemPrimaryAction_1xflk_174",listItemSelected:"_listItemSelected_1xflk_179",sources:"_sources_1xflk_183",sourcesTitle:"_sourcesTitle_1xflk_190",source:"_source_1xflk_183",icon:"_icon_1xflk_205",searchIcon:"_searchIcon_1xflk_222",searchInputWrapper:"_searchInputWrapper_1xflk_227",searchInput:"_searchInput_1xflk_227",select:"_select_1xflk_248",selectType:"_selectType_1xflk_265",selectWrapper:"_selectWrapper_1xflk_269",image:"_image_1xflk_299",imageSrc:"_imageSrc_1xflk_306",imageSrcHidden:"_imageSrcHidden_1xflk_317",imageSrcStatus:"_imageSrcStatus_1xflk_321",imageTitle:"_imageTitle_1xflk_331",actions:"_actions_1xflk_336",actionsWrapper:"_actionsWrapper_1xflk_340",actionsBar:"_actionsBar_1xflk_346",actionButton:"_actionButton_1xflk_355",hasShortKeys:"_hasShortKeys_1xflk_368",actionShortcut:"_actionShortcut_1xflk_377",actionShortcutFixKerning:"_actionShortcutFixKerning_1xflk_384"};var Ce={};V(Ce,{enUS:()=>Mg,nlNL:()=>Ng});var Mg={visitUrl:[{type:0,value:"Visit"}],back:[{type:0,value:"Back"}],loading:[{type:0,value:"Loading..."}],imageError:[{type:0,value:"Could not load image"}],showAll:[{type:0,value:"Show more"}]},Ng={visitUrl:[{type:0,value:"Bekijk"}],back:[{type:0,value:"Terug"}],loading:[{type:0,value:"Laden..."}],imageError:[{type:0,value:"Kan afbeelding niet laden"}],showAll:[{type:0,value:"Toon meer"}]};import{jsx as oo,jsxs as Hg}from"react/jsx-runtime";var Dg=({src:t,title:e})=>{let o=y("CommandPalette",Y),[n,s]=Og("loading"),r=T(Ce);return Hg("div",{className:o.image,children:[oo("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:$s(o.imageSrc,{[o.imageSrcHidden]:["loading","error"].includes(n)})}),n==="loading"&&oo("span",{className:$s(o.imageSrc,o.imageSrcStatus),children:r("loading")}),n==="error"&&oo("span",{className:$s(o.imageSrc,o.imageSrcStatus),children:oo(Ao,{})}),e&&oo("span",{className:o.imageTitle,children:e})]})},Pa=Dg;import Bg from"react";import Fg from"classnames";import{jsx as Gs,jsxs as Aa}from"react/jsx-runtime";function Xs({children:t,heading:e,orientation:o,hasMore:n,onShowAll:s}){let r=T(Ce),i=y("CommandPalette",Y);return Bg.Children.count(t)===0?null:Aa("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||n)&&Aa("div",{className:i.listHeader,children:[e&&Gs("h4",{className:i.listHeading,children:e}),n&&s&&Gs("button",{onClick:s,className:i.listMoreButton,type:"button",children:r("showAll")})]}),Gs("div",{className:Fg(i.listWrapper,o==="horizontal"&&i.listHorizontal),children:t})]})}import vn from"classnames";import{Interweave as tm}from"interweave";import Kg,{useState as La,useEffect as Ma,useMemo as Ug,useRef as Na,useCallback as zg,useContext as jg}from"react";import Vg from"classnames";var Zs={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 hn,jsxs as Gg}from"react/jsx-runtime";var qg=0,Oa=Kg.createContext(null),Wg=()=>{let t=jg(Oa);if(!t)throw new Error("Invalid DropdownContext");return t},Da=({trigger:t,children:e,position:o="bottom"})=>{let n=Ug(()=>++qg,[]),s=Na(null),r=Na(null),i=y("Dropdown",Zs),[a,l]=La(!1),[c,p]=La(o),d=u=>{u.preventDefault(),u.stopPropagation(),l(!a)},g=zg(([u])=>{!u.isIntersecting&&a&&p(c==="top"?"bottom":"top")},[a]);return Ma(()=>{let u=m=>{s.current&&!s.current.contains(m.target)&&l(!1)};return document.addEventListener("click",u),()=>{document.removeEventListener("click",u)}},[]),Ma(()=>{if(!r.current&&!a)return()=>{};let u=new IntersectionObserver(g,{root:null,rootMargin:"0px",threshold:1});return r.current&&u.observe(r.current),()=>{r.current&&u.unobserve(r.current)}},[r,a]),hn(Oa.Provider,{value:{setIsOpen:l},children:Gg("div",{ref:s,className:i.root,children:[hn("button",{id:`dropdown-${n}`,"data-testid":"dropdown-trigger","aria-haspopup":"true","aria-expanded":a,"aria-label":"Dropdown trigger",type:"button",className:i.trigger,onClick:d,children:t}),hn("div",{"data-testid":"dropdown-content",ref:r,"aria-hidden":!a,"aria-labelledby":`dropdown-${n}`,className:Vg(i.content,{[i.contentOpen]:a,[i.contentTop]:c==="top",[i.contentBottom]:c==="bottom"}),children:e})]})})};function $g({as:t,children:e,onClick:o,...n}){let s=t||"button",r=y("Dropdown",Zs),{setIsOpen:i}=Wg(),a=l=>{i(!1),o(l),l.stopPropagation()};return hn(s,{type:"button",className:r.item,onClick:a,...n,children:e})}Da.Item=$g;var Qs=Da;import{jsx as Ha}from"react/jsx-runtime";var Ba=t=>Ha("svg",{xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512",...t,children:Ha("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 Ye={};V(Ye,{enUS:()=>Xg,nlNL:()=>Zg});var Xg={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"}]},Zg={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 Js}from"react/jsx-runtime";var Qg="%0d%0a%0d%0a%0d%0a",Jg=(t,e)=>{let o=[`Suggestie: ${encodeURIComponent(e)}`,"Beschrijf je feedback:"];return`mailto:${t.join(",")}?subject=Suggestie feedback&body=${o.join(Qg)}`},Yg=({suggestion:t,onFeedback:e})=>{let o=T(Ye),n=C("suggestionFeedbackEmailAddresses");return!n||n.length===0?null:Js(Qs,{trigger:Js(Ba,{"data-testid":"feedback-dropdown-trigger"}),children:Js(Qs.Item,{as:"a",href:Jg(n,t),onClick:e,children:o("giveFeedback")})})},yn=Yg;import Ys from"react";import{jsx as em}from"react/jsx-runtime";var Fa=Ys.createContext(void 0);function Ke(){let t=Ys.useContext(Fa);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Ka=({children:t,page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r})=>{let i=Ys.useMemo(()=>({page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r}),[o,e,s]);return em(Fa.Provider,{value:i,children:t})};import{jsx as Ue,jsxs as er}from"react/jsx-runtime";function tr({closeOnSelect:t=!0,lineClamp:e,children:o,onClick:n,onFeedback:s,onSourceClick:r,index:i,description:a,sources:l,styles:c,...p}){let{selected:d,setSelected:g,onChangeOpen:u}=Ke(),m=y("CommandPalette",Y);function f(h){n(h),t&&u(!1)}return er("div",{className:vn(m.listItem,d===i&&m.listItemSelected),children:[Ue("button",{onMouseEnter:()=>g(i),type:"button",className:vn("command-palette-list-item",m.listItemAction,m.listItemPrimaryAction),"aria-disabled":p.disabled??!1,onClick:f,...p,children:er("div",{className:m.listItemContent,children:[typeof o=="string"?Ue("p",{className:vn(m.listItemText,m.truncate,c==null?void 0:c.title),children:o}):o,a&&Ue(tm,{tagName:"p",allowList:[],content:Et(a)?Ea(a):a,className:vn(m.listItemDescription,c==null?void 0:c.description,e?m.lineClamp:m.truncate)})]})}),s&&d===i&&Ue("div",{className:m.listItemActions,children:Ue(yn,{suggestion:String(o),onFeedback:s})}),l&&er("div",{className:m.sources,children:[Ue("span",{className:m.sourcesTitle,children:"Sources"}),l.map(h=>h.url?Ue("a",{className:m.source,href:h.url,target:"_blank",title:h.url,rel:"noopener noreferrer",onClick:()=>r&&r(h),children:h.name},h.url):Ue("span",{className:m.source,children:h.name},h.name))]})]})}import{jsx as Ua,jsxs as or}from"react/jsx-runtime";function nr({children:t,title:e,id:o,onDismiss:n}){let s=T(Ce),r=y("CommandPalette",Y),{page:i}=Ke();return i!==o?null:or("div",{className:r.page,id:`page_${o}`,tabIndex:-1,children:[n&&or("div",{className:r.pageNav,children:[or("button",{className:r.pageBackButton,type:"button",onClick:n,children:[Ua(cn,{}),s("back")]}),e&&Ua("h3",{className:r.pageTitle,children:e})]}),t]})}import{Fragment as dm,useCallback as um,useEffect as gm,useRef as mm}from"react";import{createAsyncThunk as rm,createSlice as im}from"@reduxjs/toolkit";import{createAsyncThunk as rr,createSlice as nm}from"@reduxjs/toolkit";function om(t){return t.replace(/(_\w)/g,e=>e[1].toUpperCase())}function L(t){return Array.isArray(t)?t.map(L):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[om(o)]:L(t[o])}),{}):t}function sr(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function z(t){return Array.isArray(t)?t.map(z):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[sr(o)]:z(t[o])}),{}):t}var sm={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,fetchState:"idle"},so=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)||""}},no=rr("info/setAgentInfo",async(t,e)=>{let{deepdeskAPI:o}=e.extra;if(!t.agentId&&!t.agentNickname)throw new Error("At least provide agentId or agentNickname");let n=await o.client.get("/apis/admin/session/me/",{version:null}),s={};return n.external_id||(s.external_id=t.agentId),n.nickname||(s.nickname=t.agentNickname),!s.external_id&&!s.nickname?L(n):(await o.client.patch("/apis/admin/session/me/",s,{version:null}),L(n))}),ir=rr("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}),ar=rr("info/getAgentSettings",async(t,e)=>{let{deepdeskAPI:o}=e.extra;return(await o.client.get("/apis/admin/session/me/",{version:null})).ui_config}),za=t=>t.info.agentInfo,ja=nm({name:"info",initialState:sm,reducers:{setVisitorInfo(t,e){t.visitorInfo={...t.visitorInfo,...e.payload}}},extraReducers:t=>{t.addCase(no.pending,(e,o)=>{e.fetchState="loading",e.agentInfo={...e.agentInfo,...o.meta.arg}}).addCase(no.rejected,e=>{e.fetchState="error"}).addCase(no.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(ir.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(ar.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(A,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:Va}=ja.actions,qa=ja.reducer;var Sn={list:[],fetchState:"idle",isOpen:!1,page:"search",aggregates:{}},Wa=t=>t.search.isOpen,$a=t=>t.search.page,Ga=t=>t.search.list,Xa=t=>t.search.aggregates;function Za(t,e=o=>o){return o=>o.search.list.filter(n=>n.type===t).map(e)}var et=rm("search/getAll",async(t,e)=>{var a;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(a=n.conversation.current)==null?void 0:a.profileCode;if(!s)throw new Error("Profile should be provided in order to be able to search");let{results:r,aggregates:i}=await o.search({profile:s,query:t.query,tags:t.tags,size:t.size,current:t.current,filters:{type:t.type},params:so(n)});return{results:r.map(l=>({...l,source:`search-${l.type.toLowerCase()}`,searchTerm:t.query})),aggregates:i}}),Qa=im({name:"search",initialState:Sn,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=Sn.fetchState,t.list=Sn.list}},extraReducers:t=>{t.addCase(et.pending,e=>{e.fetchState="loading"}).addCase(et.rejected,(e,o)=>{e.fetchState="error",w.error(o.error)}).addCase(et.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload.results,e.aggregates=o.payload.aggregates||{}}).addCase(A,()=>Sn)}}),{resetSearch:_n,setIsOpen:G,setPage:X}=Qa.actions,Ja=Qa.reducer;var am=/(https?:\/\/[^\s]+)/,xn=t=>t.split(" ").find(e=>am.test(e));var bn=()=>/Mac/i.test(navigator.platform);import Ya from"classnames";import{jsx as cm,jsxs as pm}from"react/jsx-runtime";var lm=({onClick:t,shortKeys:e,children:o,...n})=>{let s=y("CommandPalette",Y);return pm("button",{type:"button",...n,onClick:t,className:Ya(s.actionButton,n.className,{[s.hasShortKeys]:e&&e.length>0}),children:[o,e&&e.map(r=>cm("span",{className:Ya(s.actionShortcut,r===8629&&s.actionShortcutFixKerning),children:typeof r=="number"?String.fromCharCode(r):r},r))]})},kt=lm;import{jsx as Cn,jsxs as lr}from"react/jsx-runtime";var fm=["url","URL"],hm=["default","pinned-message","DEFAULT","STICKYMESSAGE"],ym=({children:t,primaryLabel:e,secondaryLabel:o,onPrimary:n,onSecondary:s,list:r})=>{let i=y("CommandPalette",Y),a=T(Ce),{selected:l,setSelected:c}=Ke(),p=r[l],d=p&&p.type&&fm.includes(p.type),g=p&&p.type&&hm.includes(p.type)||p&&"secondaryAction"in p,u=d?xn(p.text):null,m=mm(null);function f(v){if(!m.current)return;let I=m.current.querySelectorAll(".command-palette-list-item"),N=0,B=0;v==="down"?(I.forEach((U,F)=>{F===l&&(N=F)}),B=N===I.length-1?0:N+1):v==="up"?(I.forEach((U,F)=>{F===l&&(N=F)}),B=N?N-1:I.length-1):c(0);let O=I[B];O&&typeof B=="number"&&(c(B),O.scrollIntoView&&O.scrollIntoView({behavior:"smooth",block:B?"center":"end"}))}function h(){if(!m.current)return;let v=m.current.querySelectorAll(".command-palette-list-item"),I=0;v.forEach((B,O)=>{O===l&&(I=O)});let N=v[I];N&&N.click()}let E=()=>{u&&window.open(u,"_blank")},x=()=>{p&&n(p,l)},_=()=>{!s||!g||s(p,l)},b=um(v=>{if(v.key==="Enter"&&v.altKey&&u){E();return}if(v.key==="Enter"&&v.shiftKey){_();return}if(v.key==="ArrowDown"){v.preventDefault(),v.stopPropagation(),f("down");return}if(v.key==="ArrowUp"){v.preventDefault(),v.stopPropagation(),f("up");return}v.key==="Enter"&&l!==-1&&(v.preventDefault(),v.stopPropagation(),h())},[l]);return gm(()=>(window.addEventListener("keyup",b),()=>{window.removeEventListener("keyup",b)}),[b]),lr("div",{className:i.actions,children:[Cn("div",{className:i.actionsWrapper,ref:m,children:t}),lr("div",{className:i.actionsBar,children:[u&&Cn(kt,{onClick:E,shortKeys:[bn()?8997:"ALT",8629],children:a("visitUrl")}),p&&lr(dm,{children:[s&&g&&Cn(kt,{onClick:_,shortKeys:[8679,8629],children:o}),Cn(kt,{onClick:x,shortKeys:[8629],children:e})]})]})]})},tl=ym;import{forwardRef as Sm}from"react";import{jsx as ol,jsxs as vm}from"react/jsx-runtime";var Rt=()=>vm("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[ol("path",{d:"M0 0h24v24H0z",fill:"none"}),ol("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 It,jsxs as cr}from"react/jsx-runtime";function _m({onChange:t,onChangeType:e,placeholder:o,typePlaceholder:n,types:s,value:r,selectedType:i},a){let l=y("CommandPalette",Y);return cr("div",{className:l.search,children:[It("div",{className:l.searchIcon,children:It(Rt,{})}),cr("div",{className:l.searchInputWrapper,children:[It("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&&It("div",{className:l.selectWrapper,children:cr("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&&It("option",{children:n}),s.map(c=>It("option",{value:c.value,children:c.label},c.value))]})})]})]})}var nl=Sm(_m);import{jsx as sl,jsxs as wm}from"react/jsx-runtime";function tt({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:d,search:g}){let[u,m]=bm(0),f=Cm(null),h=()=>{s&&s(o),i(void 0),r(""),a(!1)},E=()=>{var x;if(n!==o&&s){s(o);return}if(l&&i){i(void 0),(x=f.current)==null||x.focus();return}if(g.length>0){r("");return}a(!1)};return xm(()=>{m(0)},[g,n]),sl(xt,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:d,onBack:E,onClose:h,children:wm(Ka,{selected:u,setSelected:m,isOpen:d,onChangeOpen:a,page:n,children:[n===o&&sl(nl,{ref:f,onChange:r,onChangeType:i,placeholder:t,value:g,selectedType:l,types:c,typePlaceholder:e}),p]})})}tt.Page=nr;tt.List=Xs;tt.Image=Pa;tt.ListItem=tr;tt.ActionsBar=tl;tt.Button=kt;var R=tt;import{jsx as we,jsxs as ro}from"react/jsx-runtime";var km=({suggestion:t,onUse:e,onDismiss:o,onTouched:n,onNext:s,onPrevious:r})=>{let i=t.text||t.url||t.message,a=y("EditSuggestionForm",Gi),l=Tm(),c=T(Is),p=Em(m=>m.overlayInput.text);rl(()=>{t&&(l(J.actions.reset()),l(J.actions.stageSuggestion({text:i,suggestion:t,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"})),l(J.actions.commitSuggestion()))},[t]);let d=m=>{m.preventDefault(),g(p)},g=m=>{l(Wo(m)),e(m)},u=m=>f=>{p!==i?window.confirm(c("warning"))&&m(f):m(f)};return rl(()=>{n&&n(p!==i)},[n,t,p]),ro("div",{className:a.root,children:[ro("div",{className:a.content,children:[t.title&&we("h3",{className:a.title,children:t.title}),t.searchKeywords&&t.searchKeywords.length>0&&we(xs,{labels:t.searchKeywords}),we(Ia,{onUse:g,value:Ta(p)})]}),ro("form",{className:a.actions,onSubmit:d,children:[ro("div",{children:[we("button",{disabled:!r,className:a.pagination,type:"button",onClick:r&&u(r),children:we(cn,{})}),we("button",{disabled:!s,className:a.pagination,type:"button",onClick:s&&u(s),children:we(ia,{})})]}),ro("div",{className:a.primaryButtons,children:[we(R.Button,{onClick:u(o),shortKeys:["esc"],children:c("dismiss")}),we(R.Button,{shortKeys:[8679,8629],type:"submit",children:c("add")})]})]})]})},wn=km;import{createAction as Pm,createAsyncThunk as cl,createSlice as Am}from"@reduxjs/toolkit";var Rm=["{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}"],Im=new RegExp(Rm.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function il(t,e){let o=t.split(Im),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 d=a.charAt(0),g=0;do c=d?e.indexOf(d,c+1):-1,g+=1;while(c!==-1&&a.indexOf(e.slice(c))!==0);if(c===-1&&g>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 al(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var pl={suggestions:[],fetchState:"idle",isInitialRequest:null},ll={default:pl},Tn=t=>e=>{var o;return((o=e.textSuggestions[t])==null?void 0:o.suggestions)??[]},dl=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")},ze=t=>t.textSuggestions,ul=t=>{let e=t.toLowerCase();return o=>{let n=o.text.toLowerCase();return n.startsWith(e)&&n.length>e.length}},En=Pm("textSuggestions/refresh"),de=cl("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=_t(n);if(!s)throw new Error("No current conversation to fetch text suggestions");let l=await o.getTextSuggestions(s,so(n),t);if(t==="default"){let p=i?l.filter(ul(a)):l;e.dispatch(me(p.slice(0,r)))}return l}),io=cl("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,{...so(n),input:t});if(!e.getState().input.text)throw new Error("Abort");return a&&(l=l.filter(ul(t))),i&&(l=l.map(p=>({...p,text:p.source!=="trie-with-typos"?il(p.text,t):p.text}))),l=al(l,r),e.dispatch(me(l)),l}),gl=Am({name:"textSuggestions",initialState:ll,reducers:{setTextSuggestions:{reducer(t,e){let{contentType:o}=e.payload;t[o].fetchState="done",t[o].suggestions=e.payload.suggestions},prepare(t,e){return{payload:{contentType:t,suggestions:e}}}},setSuggestionState(t,e){return e.payload}},extraReducers:t=>{t.addCase(de.pending,(e,o)=>{let n=o.meta.arg,s=e[n]||pl;return{...e,[n]:{...s,fetchState:"loading",isInitialRequest:s.isInitialRequest===null}}}).addCase(de.rejected,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="error")}).addCase(de.fulfilled,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="done",e[n].suggestions=o.payload)}).addCase(io.pending,e=>{e.default.fetchState="loading"}).addCase(io.rejected,e=>{e.default.fetchState="error"}).addCase(io.fulfilled,(e,o)=>{e.default.fetchState="done",e.default.suggestions=o.payload}).addCase(A,()=>ll)}}),{setTextSuggestions:ml,setSuggestionState:fl}=gl.actions,hl=gl.reducer;import{createSlice as Lm}from"@reduxjs/toolkit";var yl={contentType:null,suggestion:null},vl=t=>t.activeSuggestion.suggestion,Sl=t=>t.activeSuggestion.contentType,_l=Lm({name:"activeSuggestion",initialState:yl,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(A,()=>yl)}}),{setActiveSuggestion:Te,resetActiveSuggestion:pr}=_l.actions,xl=_l.reducer;var dr={};V(dr,{enUS:()=>Mm,nlNL:()=>Nm});var Mm={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"}]},Nm={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 Dm={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1};var kn=({ui:t})=>t.overlayCollapsed;var bl=Om({name:"ui",initialState:Dm,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:ao,setInputHasFocus:Pt,setOverlayCollapsed:je,setOpenOverlayWhenTyping:Cl,setOverlayCollapsedUserOverwrite:wl}=bl.actions,Tl=bl.reducer;import El,{useContext as Hm}from"react";import{jsx as Bm}from"react/jsx-runtime";var kl=El.createContext(null),ot=({broadcastEvents:t,children:e})=>{let o=El.useMemo(()=>t,[]);return Bm(kl.Provider,{value:o,children:e})},ie=()=>{let t=Hm(kl);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createAsyncThunk as ur,createSlice as Fm}from"@reduxjs/toolkit";var Km={isLoggedIn:!0,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1},Z=t=>t.auth.isLoggedIn,Rl=t=>t.auth.loginFetchState,Il=t=>t.auth.verifyFetchState,Pl=t=>t.auth.showLoginOverlay,Ee=ur("auth/validate",async(t,e)=>e.extra.deepdeskAPI.isLoggedIn()),Al=ur("auth/requestLogin",async({email:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.requestLoginByEmail(t)}),lo=ur("auth/verifyLoginToken",async({token:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.verifyLoginToken(t)}),Ll=Fm({name:"auth",initialState:Km,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload}},extraReducers:t=>{t.addCase(Ee.pending,e=>{e.loginFetchState="loading"}),t.addCase(Ee.fulfilled,(e,{payload:o})=>{e.isLoggedIn=o,e.loginFetchState="done"}),t.addCase(Ee.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(lo.pending,e=>{e.verifyFetchState="loading"}),t.addCase(lo.rejected,e=>{e.verifyFetchState="error"}),t.addCase(lo.fulfilled,(e,o)=>{o.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:At,setShowLoginOverlay:Ml}=Ll.actions,Nl=Ll.reducer;import{createAction as Um,createAsyncThunk as zm,createSlice as jm}from"@reduxjs/toolkit";var gr={cues:[],fetchState:"idle"},Ol=t=>{var e;return(e=t.rules)==null?void 0:e.cues},Vm=Um("rules/resetCues"),ke=zm("rules/evaluate",async(t,e)=>{var r;let{deepdeskAPI:o}=e.extra,n=(r=e.getState().conversation.current)==null?void 0:r.id;if(!n)throw new Error("No current conversation to evaulate rules");return await o.evaluateRule(t.label,n,t.params)}),Dl=jm({name:"answer",initialState:gr,reducers:{removeCue(t,e){t.cues=t.cues.filter(o=>o.id!==e.payload.id)}},extraReducers:t=>{t.addCase(ke.pending,e=>{e.fetchState="loading"}).addCase(ke.rejected,e=>{e.fetchState="error"}).addCase(ke.fulfilled,(e,o)=>{let n=Date.now(),s=o.payload.map(a=>({id:a.id||a.text,timestamp:n,...a})),r=s.map(a=>a.id),i=e.cues.filter(a=>!r.includes(a.id));e.fetchState="done",e.cues=[...s,...i]}).addCase(A,()=>gr).addCase(Vm.toString(),()=>gr)}}),{removeCue:U1}=Dl.actions,Hl=Dl.reducer;var mr="SetActiveSuggestion",fr="SetCues",Lt="ShowLoginOverlay",co="UserLoggedIn",qm="UserLoggedOut",Re="ApplySuggestion",hr="ApplyImageSuggestion",Wm="ShowCommandPalette",$m=t=>({[mr]:e=>{t.dispatch(fl(e.state)),t.dispatch(Te({contentType:e.contentType,suggestion:e.suggestion}))},[fr]:e=>{t.dispatch({type:ke.fulfilled,payload:e})},[Wm]:e=>{t.dispatch(G(e.isOpen)),e.page&&t.dispatch(X(e.page))},[Lt]:e=>{t.dispatch(Ml(e))},[co]:()=>{t.dispatch(Ee())},[qm]:()=>{t.dispatch(Ee())},[hr]:e=>{t.dispatch(Go({suggestion:e.suggestion}))},[Re]:e=>{t.dispatch(le({...e,eventMetrics:{inputType:"mouse"},replace:"selection"})),t.dispatch(xe())}}),Bl=$m;import{jsx as Fl}from"react/jsx-runtime";var Zm=()=>{var m;let[t,e]=Gm(!1),o=yr(vl),n=yr(Sl),s=yr(ze),r=Xm(),i=ie(),a=T(dr),l=()=>{o!==null&&t?window.confirm(a("warning"))&&c():c()},c=()=>{r(pr()),r(Pt(!0)),r(J.actions.reset())},p=(f,h)=>{r(pr()),r(Pt(!0)),i.send(Re,{text:f,suggestion:{...h,source:`${h.source||"text_recommendation"}-preview`}})};if(o===null||n===null)return null;let d=(m=s[n])==null?void 0:m.suggestions.indexOf(o),g=d===0||d===null?void 0:()=>r(Te({contentType:n,suggestion:s[n].suggestions[d-1]})),u=d===s[n].suggestions.length-1||d===null?void 0:()=>r(Te({contentType:n,suggestion:s[n].suggestions[d+1]}));return Fl(xt,{autoFocus:!0,isOpen:d!==null,onClose:l,onBack:l,contentAriaLabel:a("editContentLabel"),overlayAriaLabel:a("overlayLabel"),children:Fl(wn,{onTouched:e,onDismiss:c,onUse:f=>p(f,o),suggestion:o,onNext:u,onPrevious:g})})},Kl=Zm;import{useSelector as ql}from"react-redux";import Sr from"classnames";import{useCallback as jl,useEffect as of,useMemo as nf,useState as _r}from"react";import{useDispatch as sf,useSelector as rf}from"react-redux";import Qm from"classnames";var Ul={root:"_root_1ukx5_1"};import{jsx as Ym}from"react/jsx-runtime";var Jm=({className:t,value:e,...o})=>{let n=y("TextInput",Ul);return Ym("input",{className:Qm(t,n.root),type:"text",value:e,...o})},po=Jm;var vr={};V(vr,{enUS:()=>ef,nlNL:()=>tf});var ef={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"}]},tf={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 zl={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 ee,jsxs as Rn}from"react/jsx-runtime";var af=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch{return t}},lf=({agentEmail:t,isOpen:e,origin:o="",onSuccess:n,onDismiss:s})=>{let r=T(vr),i=y("LoginTokenDialog",zl),a=rf(Il),l=sf(),c=C("productName"),[p,d]=_r(t||""),[g,u]=_r(0),[m,f]=_r(""),h=jl(async b=>{b.preventDefault(),l(Al({email:p})),u(1)},[o,p]),E=()=>{f(""),u(0)},x=jl(async b=>{b.preventDefault();let v=af(b.target.elements.token.value);if(!v){f(r("verifyCodeError",{login:_}));return}l(lo({token:v}))},[o]),_=nf(()=>b=>ee("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:E,children:b},"back-button"),[]);return of(()=>{a==="error"&&f(r("verifyCodeError",{login:_})),a==="done"&&n()},[a]),ee(xt,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:c}),overlayAriaLabel:r("promptTitle",{productName:c}),onClose:s,onBack:s,children:Rn("div",{className:i.root,children:[ee("h1",{className:i.title,children:r("promptTitle",{productName:c})}),g===0&&Rn("form",{onSubmit:h,children:[ee("h2",{className:i.subtitle,children:r("requestCodeTitle")}),ee("p",{className:i.text,children:r("requestCodeBody",{productName:c})}),ee(po,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:p,onChange:b=>d(b.target.value)}),ee("div",{className:i.actions,children:ee("button",{type:"submit",className:Sr(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),g===1&&Rn("form",{onSubmit:x,children:[ee("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),ee("p",{className:i.text,children:r("verifyCodeBody")}),ee(po,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),m&&ee("div",{className:i.errorMessage,children:m}),Rn("div",{className:i.actions,children:[ee("button",{type:"button",className:Sr(i.button),onClick:E,children:r("back")}),ee("button",{type:"submit",className:Sr(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},Vl=lf;import{jsx as pf}from"react/jsx-runtime";var cf=()=>{let t=ql(Pl),e=ql(za),o=C("adminUrl"),n=ie(),s=()=>n.send(Lt,!1),r=()=>{n.send(Lt,!1),n.send(co)};return pf(Vl,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:o,onDismiss:s,onSuccess:r})},Wl=cf;import ch from"lodash.debounce";import{useCallback as Nn,useEffect as kr,useState as ho}from"react";import{useDispatch as ph,useSelector as st}from"react-redux";import{createAsyncThunk as df,createSlice as uf}from"@reduxjs/toolkit";var gf={data:null,fetchState:"idle"},$l=t=>t.contentTypes.data,uo=df("contentTypes/getContentTypes",async(t,e)=>e.extra.deepdeskAPI.getContentTypes()),mf=uf({name:"contentTypes",initialState:gf,reducers:{},extraReducers:t=>{t.addCase(uo.pending,e=>{e.fetchState="loading"}).addCase(uo.rejected,e=>{e.fetchState="error"}).addCase(uo.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),Gl=mf.reducer;function nt(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 ff}from"react";function Xl(t,e){ff(()=>{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 Yl,useRef as bf}from"react";import{useSelector as Cf,useDispatch as wf}from"react-redux";import{createAsyncThunk as hf,createSlice as yf}from"@reduxjs/toolkit";var Zl={data:null,fetchState:"idle"},In=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},ue=hf("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)}),vf=t=>t.filter((e,o)=>o===t.findIndex(n=>n.text===e.text)),Sf=yf({name:"entities",initialState:Zl,reducers:{},extraReducers:t=>{t.addCase(ue.pending,e=>{e.fetchState="loading"}).addCase(ue.rejected,e=>{e.fetchState="error"}).addCase(ue.fulfilled,(e,o)=>{e.fetchState="done",e.data=vf(e.data?[...e.data,...o.payload]:o.payload)}).addCase(A,()=>Zl)}}),Ql=Sf.reducer;var xr={};V(xr,{enUS:()=>_f,nlNL:()=>xf});var _f={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},xf={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var Jl={root:"_root_17kae_1",empty:"_empty_17kae_5"};import{jsx as Pn,jsxs as Ef}from"react/jsx-runtime";var Tf=({onCopy:t,onUse:e})=>{let o=bf(null),n=y("EntitiesList",Jl),s=T(xr),r=Cf(In),i=wf();return Yl(()=>{i(ue())},[]),Yl(()=>{o.current&&o.current.focus()},[o]),Ef("div",{className:n.root,ref:o,tabIndex:-1,children:[r&&r.length>0&&Pn(R.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:Pn(R.List,{children:r.map((a,l)=>Pn(R.ListItem,{index:l,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities")}),r&&r.length===0&&Pn("p",{className:n.empty,children:s("noResults")})]})},ec=Tf;import{Fragment as Lf,useEffect as An,useRef as Mf,useState as Nf}from"react";import{useSelector as ic,useDispatch as Of}from"react-redux";import{createAsyncThunk as kf,createSlice as Rf}from"@reduxjs/toolkit";var tc={data:null,fetchState:"idle"},oc=t=>t.summary.data,nc=t=>t.summary.fetchState==="error",Ie=kf("summary/getSummary",async(t,e)=>{var p,d,g;let o=e.getState().profile.data,n=(p=e.getState().conversation.current)==null?void 0:p.sessionId,s=(g=(d=e.getState().info)==null?void 0:d.agentInfo)==null?void 0:g.agentId;if(!o)throw new Error("Profile is not defined");let{deepdeskAPI:r,dynamicThunkObject:i}=e.extra;if(!i.conversationQuery)return Promise.reject(new Error("setConversationQuery method is not defined"));let a=i.conversationQuery,l=await a();if(l.length===0)return Promise.reject(new Error("No messages are included"));let c=await r.getSummary(l,{externalConversationId:n,agentId:s,promptInstruction:o.summarizerPromptInstruction,model:o.summarizerModel});return c?{summary:c}:Promise.reject(new Error("Summary is not provided"))}),If=Rf({name:"summary",initialState:tc,reducers:{},extraReducers:t=>{t.addCase(Ie.pending,e=>{e.data=null,e.fetchState="loading"}).addCase(Ie.rejected,e=>{e.data=null,e.fetchState="error"}).addCase(Ie.fulfilled,(e,o)=>{e.fetchState="done",o.payload&&(e.data=o.payload.summary)}).addCase(A,()=>tc)}}),sc=If.reducer;var br={};V(br,{enUS:()=>Pf,nlNL:()=>Af});var Pf={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."}]},Af={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 rc={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 Mt,jsxs as Hf}from"react/jsx-runtime";var Df=({onCopy:t})=>{let e=Mf(null),o=y("SummaryForm",rc),[n,s]=Nf(""),r=T(br),i=ic(oc),a=ic(nc),l=Of(),c=()=>{l(W({name:"summary copied to clipboard",data:{originalText:i,finalText:n},options:{includeConversationData:!0}})),t(n)},p=()=>{let d=document.getSelection();d&&l(W({name:"summary copied to clipboard",data:{originalText:i,finalText:d==null?void 0:d.toString()},options:{includeConversationData:!0}}))};return An(()=>{l(Ie())},[]),An(()=>{s(i||"")},[i]),An(()=>{e.current&&i&&e.current.focus()},[e,i]),An(()=>{let d=g=>{g.key==="Enter"&&g.shiftKey&&c()};return document.addEventListener("keydown",d),()=>{document.removeEventListener("keydown",d)}},[n]),Mt("div",{className:o.root,tabIndex:-1,children:a?Mt("p",{className:o.error,children:r("error")}):Hf(Lf,{children:[Mt("div",{className:o.main,children:Mt("textarea",{placeholder:i?void 0:r("loading"),disabled:!i,className:o.textInput,ref:e,value:n,onCopy:p,onChange:d=>s(d.target.value)})}),Mt("div",{className:o.actions,children:Mt(R.Button,{shortKeys:[8679,8629],onClick:c,children:r("copy")})})]})})},ac=Df;var go={};V(go,{enUS:()=>Bf,nlNL:()=>Ff});var Bf={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?"}]},Ff={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 Qf,{useEffect as Tr,useRef as Jf}from"react";import{useDispatch as Yf,useSelector as hc}from"react-redux";var Cr={};V(Cr,{enUS:()=>Kf,nlNL:()=>Uf});var Kf={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"}]},Uf={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 lc={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 Wf,createAsyncThunk as $f,createSlice as Gf}from"@reduxjs/toolkit";import{createAsyncThunk as zf,createSlice as jf}from"@reduxjs/toolkit";var Vf={data:null,fetchState:"idle"},cc=t=>{var e;return(e=t.knowledgeAssistant)==null?void 0:e.data},mo=zf("knowledgeAssistant/getKnowledgeAssistant",async(t,e)=>{var i;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=n.conversation.current;if(!s||!s.profileCode)throw new Error("No conversation of conversation profileCode found");let r=(i=n.profile.data)==null?void 0:i.knowledgeAssistant;return r?o.getKnowledgeAssistant(r):null}),qf=jf({name:"knowledgeAssistant",initialState:Vf,reducers:{},extraReducers:t=>{t.addCase(mo.pending,e=>{e.fetchState="loading"}).addCase(mo.rejected,e=>{e.fetchState="error"}).addCase(mo.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),pc=qf.reducer;var wr={data:[],fetchState:"idle"},dc=t=>{var e;return(e=t.answer)==null?void 0:e.data},uc=t=>t.answer.fetchState,Ot=Wf("answer/resetKnowledgeSearch"),Nt=$f("answer/getAnswer",async(t,e)=>{var l,c,p;let{deepdeskAPI:o}=e.extra,n=e.getState().answer.data,s=cc(e.getState()),r=(l=e.getState().conversation.current)==null?void 0:l.sessionId,i=(p=(c=e.getState().info)==null?void 0:c.agentInfo)==null?void 0:p.agentId;if(!s)throw new Error("KnowledgeAssistant is not defined");let a=await o.knowledgeAssist({promptInstruction:s.prompt,question:t},n,s.code,{agentId:i,conversationId:r});return{question:t,answer:a}}),Xf=Gf({name:"answer",initialState:wr,reducers:{},extraReducers:t=>{t.addCase(Nt.pending,e=>{e.fetchState="loading"}).addCase(Nt.rejected,e=>{e.fetchState="error"}).addCase(Nt.fulfilled,(e,o)=>{e.fetchState="done",e.data=[...e.data,o.payload]}).addCase(A,()=>wr).addCase(Ot,()=>wr)}}),gc=Xf.reducer;import{jsx as mc,jsxs as Zf}from"react/jsx-runtime";var fc=()=>Zf("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 512 512","aria-labelledby":"paperPlaneTitle",children:[mc("title",{id:"paperPlaneTitle",children:"PaperPlane"}),mc("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 Pe,jsxs as Er}from"react/jsx-runtime";var eh=({onUse:t,onResetQuestion:e,question:o})=>{let[n,s]=Qf.useState(""),{setSelected:r}=Ke(),i=Jf(null),a=y("EntitiesList",lc),l=T(Cr),c=Yf(),p=hc(dc),d=hc(uc),g=async m=>{m.preventDefault(),m.stopPropagation(),n!==""&&c(Nt(n))},u=(m,f)=>{c(W({name:"knowledge assist source viewed",data:{question:f,sourceViewed:m.url||m.name},options:{includeConversationData:!0}}))};return Tr(()=>{var m;o&&d==="idle"?c(Nt(o)):(m=i.current)==null||m.focus()},[i,d]),Tr(()=>{d==="done"&&(c(W({name:"knowledge assist question answered",data:{question:n||o,sources:p[p.length-1].answer.sources,answer:p[p.length-1].answer.answer,isFollowUpQuestion:p.length>1},options:{includeConversationData:!0}})),r(p.length-1),s(""))},[d,p]),Tr(()=>{i.current&&i.current.scrollIntoView({behavior:"smooth"})},[i,p]),Er("div",{className:a.root,children:[p.length>0&&Pe("div",{className:a.alignRight,children:Pe(R.Button,{onClick:e,children:l("reset")})}),Er(R.ActionsBar,{list:p.map(({answer:m})=>({text:m.answer,type:"answer"})),primaryLabel:l("use"),onPrimary:m=>t(m.text),children:[p.map(({question:m,answer:f},h)=>Pe(R.List,{children:Pe(R.ListItem,{"data-testid":"knowledge-search-answer",index:h,description:f.answer,closeOnSelect:!0,onClick:()=>t(f.answer),onSourceClick:E=>u(E,m),sources:f.sources,styles:{title:a.question,description:a.answer},children:m})},`${f.answer}_${h}`)),d==="loading"&&Pe("p",{className:a.status,children:l("loading")}),d==="error"&&Pe("p",{className:a.status,children:l("error")}),Er("form",{className:a.form,onSubmit:g,children:[Pe("input",{ref:i,placeholder:l("anotherQuestion"),className:a.input,type:"text",value:n,onFocus:()=>{r(-1)},onChange:m=>{r(-1),s(m.target.value)}}),Pe("button",{type:"submit",className:a.submit,children:Pe(fc,{})})]})]})]})},yc=eh;import{createAsyncThunk as th,createSlice as oh}from"@reduxjs/toolkit";var nh={data:null,fetchState:"idle"},Ve=t=>t.profile.data,Ln=t=>t.profile.data?t.profile.data.uiConfig.widget.types.filter(e=>e.isActive):[],fo=th("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)}),sh=oh({name:"profile",initialState:nh,reducers:{},extraReducers:t=>{t.addCase(fo.pending,e=>{e.fetchState="loading"}).addCase(fo.rejected,e=>{e.fetchState="error"}).addCase(fo.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),vc=sh.reducer;import{useEffect as rh}from"react";import{useDispatch as ih}from"react-redux";import{useSelector as Sc}from"react-redux";import{jsx as Mn,jsxs as lh}from"react/jsx-runtime";var ah=({commands:t,onClick:e,onEdit:o})=>{var p,d,g;let n=ih(),s=T(go),r=Sc(Ve),i=Sc(ze),a=((g=(d=(p=r==null?void 0:r.uiConfig)==null?void 0:p.search)==null?void 0:d.initialTypes)==null?void 0:g.filter(({isActive:u})=>u))||[],l=0,c=a.map(({type:u})=>{var m;return(m=i[u])==null?void 0:m.suggestions.map(f=>({text:f.text||f.url||f.message,type:u}))}).flat(1);return rh(()=>{a.forEach(({type:u})=>{(!i[u]||i[u].suggestions.length===0)&&n(de(u))})},[]),lh(R.ActionsBar,{list:[...t.map(u=>({text:u.label,type:"command"})),...c],primaryLabel:s("use"),secondaryLabel:s("preview"),onPrimary:({text:u},m)=>e(u,c[m]),onSecondary:(u,m)=>{let f=m-t.length;o(c[f],i[c[f].type].suggestions)},children:[t.length>0&&Mn(R.List,{heading:s("commands"),children:t.map((u,m)=>Mn(R.ListItem,{index:m,closeOnSelect:!1,onClick:u.onClick,children:u.label},u.label))}),a.map(({type:u,title:m})=>{var f;return Mn(R.List,{heading:m,orientation:"vertical",children:(f=i[u])==null?void 0:f.suggestions.map(h=>(l++,Mn(R.ListItem,{index:l+t.length-1,closeOnSelect:!1,description:h.text,onClick:()=>e(h.text,h),"data-testid":"search-overlay-suggestion",children:h.title},`${h.id}-${h.text}`)))},u)})]})},_c=ah;import{jsx as te,jsxs as Rr}from"react/jsx-runtime";var dh=200,uh=5,gh=4,mh=t=>t.reduce((e,o)=>[...e,...o.list.map(n=>({...n,type:o.value}))],[]),xc=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),fh=()=>{let t=ph(),e=ie(),o=T(go),[n,s]=ho(!1),[r,i]=ho(""),a=st($a),l=st(Ve),[c,p]=ho(null),[d,g]=ho([]),[u,m]=ho(),f=st(Z),h=C("showSearch"),E=C("showEntitiesCommand"),x=C("showSummaryCommand"),_=C("showKnowledgeSearch"),b=C("showImageSearch"),v=C("searchTriggerKey"),I=st($l),N=st(Ga),B=st(Xa),O=st(Wa),U=S=>ko(N.filter(D=>D.type===S.toUpperCase()),S),F=[{value:"PERSONAL",label:o("personalSuggestions"),list:U("PERSONAL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"URL",label:o("urlSuggestions"),list:U("URL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"STICKYMESSAGE",label:o("pinnedMessages"),list:U("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"IMAGE",label:o("imageSuggestions"),lineClamp:!1,list:U("IMAGE"),listOrientation:"horizontal",shouldShow:b}].filter(S=>S.shouldShow),k=[{label:o("entitiesClipboard"),onClick:()=>t(X("entities")),shouldShow:E&&xc(o("entitiesClipboard"),r)},{label:o("summaryClipboard"),onClick:()=>t(X("summary")),shouldShow:x&&xc(o("summaryClipboard"),r)},{label:r?`${o("knowledgeAssist")}: ${r}`:o("knowledgeAssist"),onClick:()=>t(X("knowledgeAssist")),shouldShow:_}].filter(S=>S.shouldShow),ne=(I==null?void 0:I.map(S=>({value:S.code.toUpperCase(),label:`${S.name}s`,list:U(S.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[],us=Nn(ch((S,D)=>{t(et({query:S,type:D,tags:["search-overlay"],size:u?50:20}))},dh),[u]),Vt=mh([...ne,...F]),qt=Nn((S,D)=>{t(X("edit")),p({...S,searchTerm:void 0}),g(D)},[t,c,ne]),dt=Nn((S,D)=>{switch(D.type){case"IMAGE":e.send(hr,{suggestion:D});break;default:e.send(Re,{text:S,suggestion:D})}t(G(!1))},[t]),Pd=S=>{nt(S.text),t(W({name:"entity copied",data:{entity:S,type:"copy"}})),t(G(!1))},Ad=Nn(S=>{t(W({name:"suggestion feedback",data:{text:S.text,source:"search",context:r},options:{includeConversationData:!0}}))},[r]),Ld=S=>{e.send(Re,{text:S,suggestion:{source:"knowledge-assist",text:S}}),t(W({name:"answer used",data:{originalText:S},options:{includeConversationData:!0}})),i(""),t(X("search")),t(Ot()),t(G(!1))},Md=S=>{nt(S),t(G(!1))},Nd=S=>{e.send(Re,{text:S.text,suggestion:{source:"entity",text:S.text}}),t(G(!1))},Od=c===null||d.indexOf(c)-1<0?void 0:()=>p(d[d.indexOf(c)-1]),Dd=c===null||d.indexOf(c)===d.length-1?void 0:()=>p(d[d.indexOf(c)+1]);function ko(S,D){return S.slice(0,u?10:D.toLowerCase()==="image"?gh:uh)}function mi(S,D,ae){return D.reduce((Ro,Io)=>ae&&u===ae?Io.length+Ro:ko(Io,ae).length+Ro,S)}function ut(S){return D=>{n?window.confirm(o("warning"))&&(S(D),s(!1)):S(D)}}return kr(()=>{r?us(r,u):t(_n())},[r,u]),kr(()=>{a==="search"&&t(Ot())},[a]),kr(()=>{f&&t(uo())},[f]),Xl(v,()=>t(G(!0))),!h||!l?null:Rr(R,{placeholder:o("searchPlaceholder"),typePlaceholder:o("typePlaceholder"),onChangeSearch:i,onChangeOpen:ut(S=>t(G(S))),onChangeType:S=>m(S),onChangePage:ut(S=>t(X(S))),selectedType:u,search:r,page:a,isOpen:O,types:[...ne,...F],children:[Rr(R.Page,{id:"search",children:[r.length===0&&te(_c,{commands:k,onClick:dt,onEdit:qt}),r.length>0&&Rr(R.ActionsBar,{list:[...k.map(S=>({text:S.label,type:"command"})),...Vt.map(S=>({text:S.text||S.url||S.message,type:S.type}))],primaryLabel:o("use"),secondaryLabel:o("preview"),onPrimary:({text:S},D)=>dt(S,Vt[D]),onSecondary:(S,D)=>{let ae=Vt[D-k.length];!ae||!ae.type||qt(ae,U(ae.type))},children:[k.length>0&&te(R.List,{heading:o("commands"),children:k.map((S,D)=>te(R.ListItem,{index:mi(D,[],"commands"),closeOnSelect:!1,onClick:S.onClick,children:S.label},S.label))}),[...ne,...F].map(({value:S,label:D,list:ae,lineClamp:Ro,listOrientation:Io},Hd)=>te(R.List,{heading:D,orientation:Io==="horizontal"?"horizontal":"vertical",onShowAll:()=>m(S),hasMore:!u&&B[S.toLowerCase()]>ko(ae,S).length,children:ko(ae,S).map((se,Bd)=>te(R.ListItem,{index:mi(k.length+Bd,[...ne,...F].slice(0,Hd).map(({list:Fd})=>Fd),S),closeOnSelect:!1,lineClamp:Ro,onClick:()=>dt(se.text,se),description:S!=="IMAGE"?se.title&&se.text:void 0,onFeedback:S!=="IMAGE"?()=>Ad(se):void 0,children:S==="IMAGE"?te(R.Image,{title:se.title||se.text,src:se.image}):se.title||se.text},`${se.id}-${se.text}`))},S))]})]}),te(R.Page,{id:"edit",onDismiss:ut(()=>{t(X("search")),p(null)}),children:c&&te(wn,{suggestion:c,onTouched:s,onDismiss:()=>{s(!1),t(X("search")),p(null),g([])},onNext:Dd,onPrevious:Od,onUse:S=>{t(X("search")),dt(S,{...c,source:`${c.source||"text_recommendation"}-preview`}),t(G(!1)),g([]),p(null)}})}),te(R.Page,{id:"entities",title:o("entitiesTitle"),onDismiss:ut(()=>{t(X("search"))}),children:te(ec,{onUse:Nd,onCopy:Pd})}),te(R.Page,{id:"summary",title:o("summaryTitle"),onDismiss:ut(()=>{t(X("search"))}),children:te(ac,{onCopy:Md})}),te(R.Page,{id:"knowledgeAssist",title:o("knowledgeAssist"),onDismiss:ut(()=>{t(Ot()),t(X("search"))}),children:te(yc,{question:r,onUse:Ld,onResetQuestion:()=>{t(Ot()),i("")}})})]})},bc=fh;import{jsx as Ir,jsxs as vh}from"react/jsx-runtime";var yh=()=>{let t=C("showSearch"),e=C("isEmbedded");return vh(hh,{children:[t&&Ir(bc,{}),Ir(Kl,{}),e&&Ir(Wl,{})]})},Cc=yh;import bh from"classnames";import{useSelector as Ch}from"react-redux";import{jsx as Pr}from"react/jsx-runtime";var wc=({className:t})=>Pr("svg",{version:"1.1",xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 512 512",xmlSpace:"preserve",className:t,children:Pr("g",{children:Pr("path",{d:`M163.4,233h186v-70c0-25.6-9.4-47.8-27.3-65.7C304.2,79.4,282,70,256.4,70s-47.8,9.4-65.7,27.3
3
+ `,Je.MISSING_INTL_API,i);var b=o.getPluralRules(e,{type:p.pluralType}).select(g-(p.offset||0));_=p.options[b]||p.options.other}if(!_)throw new Os(p.value,g,Object.keys(p.options),i);a.push.apply(a,eo(_.value,e,o,n,s,g-(p.offset||0)));continue}}return Yu(a)}function tg(t,e){return e?oe(oe(oe({},t||{}),e||{}),Object.keys(t).reduce(function(o,n){return o[n]=oe(oe({},t[n]),e[n]||{}),o},{})):t}function og(t,e){return e?Object.keys(t).reduce(function(o,n){return o[n]=tg(t[n],e[n]),o},oe({},t)):t}function Ds(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,o){t[e]=o}}}}}function ng(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:cn(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.NumberFormat).bind.apply(e,Qo([void 0],o,!1)))},{cache:Ds(t.number),strategy:pn.variadic}),getDateTimeFormat:cn(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.DateTimeFormat).bind.apply(e,Qo([void 0],o,!1)))},{cache:Ds(t.dateTime),strategy:pn.variadic}),getPluralRules:cn(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.PluralRules).bind.apply(e,Qo([void 0],o,!1)))},{cache:Ds(t.pluralRules),strategy:pn.variadic})}}var sa=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 d=p.reduce(function(g,u){return!g.length||u.type!==$.literal||typeof g[g.length-1]!="string"?g.push(u.value):g[g.length-1]+=u.value,g},[]);return d.length<=1?d[0]||"":d},this.formatToParts=function(c){return eo(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=Zi(i,["formatters"]);this.ast=t.__parse(e,oe(oe({},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=og(t.formats,n),this.formatters=s&&s.formatters||ng(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=Yi,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 ig(t,e){return e.split(".").reduce((o,n)=>o?o[n]:void 0,t)}var ag="dummy",Hs=sg(null);function T(t){let e=rg(Hs);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=ig(o,n);return r?new sa(r).format(s):(e!==ag&&console.warn(`${n} does not exist in messages of ${e}`),`[${n}]`)}}import{jsx as ra,jsxs as lg}from"react/jsx-runtime";var dn=()=>lg("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[ra("title",{id:"angleLeftTitle",children:"AngleLeft"}),ra("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 ia,jsxs as cg}from"react/jsx-runtime";var aa=()=>cg("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleRightTitle",children:[ia("title",{id:"angleRightTitle",children:"AngleRight"}),ia("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 oo,useRef as Ws,useState as Mg}from"react";import{useDispatch as Ng}from"react-redux";import{Interweave as Ia}from"interweave";import Ra from"classnames";var Bs={root:"_root_smoda_1",agentText:"_agentText_smoda_3",textInput:"_textInput_smoda_8",textInputWrapper:"_textInputWrapper_smoda_27",alert:"_alert_smoda_31",alertText:"_alertText_smoda_50",warning:"_warning_smoda_60",success:"_success_smoda_69"};import{Matcher as gg}from"interweave";import mg from"classnames";import{useEffect as pg,useRef as dg,useState as ug}from"react";function la(t,e){let o;return[(...n)=>{window.cancelAnimationFrame(o);let s=e?e(...n):n;o=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(o)]}function un(t){let e=dg(null),[o,n]=ug(!1);return pg(()=>{let s=!1,r=parseFloat(window.getComputedStyle(document.body).zoom??"1"),[i,a]=la((p,d)=>{let g=e.current;if(!g)return;let u=p/r,m=d/r,f=g.getBoundingClientRect(),h=u>f.x&&u<f.x+f.width&&m>f.y&&m<f.y+f.height;h&&!s?(s=!0,n(!0)):!h&&s&&(s=!1,n(!1))},({clientX:p,clientY:d})=>[p,d]),[l,c]=la(()=>{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 be={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 ca}from"react/jsx-runtime";var fg=({inputElement:t,children:e})=>{let o=y("TabCompletion",be),[n,s]=un(t);return ca("mark",{ref:n,className:mg(o.matchPlaceholder,{[o.hover]:s}),children:e})},xt=class extends gg{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 ca(fg,{inputElement:o.inputElement,children:e},`placeholder_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import{useEffect as hg,useRef as yg,useState as vg}from"react";function gn(t){return t.contentEditable==="true"}function Sg(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 pa(t){let{selectionStart:e,selectionEnd:o}=gn(t)?Sg(t):t;return[e,o]}function mn(t){let[,e]=vg(),o=yg(null);return o.current=pa(t),hg(()=>{let n=()=>{let[s,r]=o.current??[],i=pa(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 fn(t,e){if(!e)return;let o=t,{value:n}=o,[s,r]=e,i=n.match(ht);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 _g}from"react";function bt(t){_g(()=>{let e=o=>{o.isWithinRoot||t(o)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function Ye(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}var da,fe=new Map,xg=["bottom","height","left","right","top","width"],bg=(t={},e={})=>xg.some(o=>t[o]!==e[o]);function ua(t){var o,n;if(t.ownerDocument===document)return[];let e=((n=(o=t.ownerDocument)==null?void 0:o.defaultView)==null?void 0:n.frameElement)??null;return e?[e,...ua(e)]:[]}function ga(t,e){return!t||!e?null:{...t,top:t.top+e.top,left:t.left+e.left}}var hn=!1,ma=()=>{hn=!0;let t=[];if(fe.forEach((e,o)=>{if(!o.isConnected){e.rect=null,t.push(e),fe.delete(o);return}let n=o.getBoundingClientRect();bg(n,e.rect)&&(e.rect=n,t.push(e))}),t.forEach(e=>{let o=e.parentRects?e.parentRects.reduce(ga,e.rect):e.rect;e.callbacks.forEach(n=>n(o))}),fe.size===0){hn=!1;return}da=window.requestAnimationFrame(ma)};function Fs(t,e){let o=ua(t),n=[],s=o.map((r,i)=>Fs(r,a=>{n[i]=a;let l=fe.get(t);if(!l)return;let c=n.reduce(ga,l.rect);l.callbacks.forEach(p=>p(c))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),fe.has(t)){let i=fe.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else fe.set(t,{rect:void 0,callbacks:[e],parentRects:n});r&&!hn&&ma()},unobserve(){s.forEach(i=>i.unobserve());let r=fe.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||fe.delete(t),fe.size||(cancelAnimationFrame(da),hn=!1)}}}}var fa,he=new Map,ha=()=>{he.forEach((t,e)=>{if(!e.isConnected){he.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)))}),he.size!==0&&(fa=window.requestAnimationFrame(ha))};function ya(t,e){return{observe(){let o=he.size===0;he.has(t)?he.get(t).callbacks.push(e):he.set(t,{visible:void 0,callbacks:[e]}),o&&ha()},unobserve(){let o=he.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||he.delete(t),he.size||cancelAnimationFrame(fa)}}}}var Ks=["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 Us(t,e,o){return o.forEach(n=>{e.style[n]=t[n]})}function Ct(t){return parseFloat(t)}function yn(t){return Math.round(t*1e6)}function va(t){return t/1e6}function zs(t,e,o){if(t.boxSizing==="content-box")return;let{clientWidth:n}=e,s=Ct(t.width),r=Ct(t.borderLeftWidth),i=Ct(t.borderRightWidth),a=Ct(t.paddingRight),l=va(yn(s)-yn(r)-yn(i)),c=va(yn(n));if(l-c>2){let p=l-c;o.style.paddingRight=`${a+p}px`}}function wt(t,e={}){var p;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",Ye(o);let n=window.getComputedStyle(t),s=!0,r=()=>{o.scrollTop=t.scrollTop};Us(n,o,Ks),zs(n,t,o),e.mirrorOverflow&&(o.style.overflow="hidden",t.addEventListener("scroll",r));let i=ya(t,()=>{Us(n,o,Ks),zs(n,t,o),r(),setTimeout(r,0)}),a,l=!0,c=Fs(t,d=>{if(d===null){e.onRemove&&e.onRemove(),o.remove();return}if(!l&&e.onMoveStart&&(Promise.resolve().then(()=>e.onMoveStart()),l=!0),clearTimeout(a),a=setTimeout(()=>{e.onMoveEnd&&e.onMoveEnd(),l=!1},200),d.height===0&&d.width===0){if(s===!0)return;e.onHide&&e.onHide(),o.style.display="none",s=!0;return}if(Us(n,o,Ks),zs(n,t,o),r(),o.style.top=`${d.top}px`,o.style.left=`${d.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let g=e.closestScrollElement.getBoundingClientRect(),u=window.getComputedStyle(e.closestScrollElement),m=Ct(u.borderTopWidth),f=Ct(u.borderBottomWidth),h=g.top+m-d.top,E=d.top+d.height+-(g.top+g.height-f);o.style.clipPath=`inset(${h}px 0px ${E}px 0px)`}s&&(o.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(o):(p=t.parentElement)==null||p.appendChild(o),c.observe(),i.observe(),[o,()=>{t.removeEventListener("scroll",r),c.unobserve(),i.unobserve()}]}var js={};V(js,{enUS:()=>Cg,nlNL:()=>wg});var Cg={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"}]},wg={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 Sa,jsxs as Tg}from"react/jsx-runtime";var _a=()=>Tg("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 512 512","aria-labelledby":"circleCheckTitle",children:[Sa("title",{id:"circleCheckTitle",children:"Check"}),Sa("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 xa}from"react/jsx-runtime";var ba=()=>xa("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",fill:"currentColor",children:xa("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"})});var Ca=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(Ca||{}),Fe=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();De(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(Ca).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",o=>this.handleKeyDown(o)),this.addEventListener("keyup",o=>this.handleKeyUp(o)),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",o=>this.handlePaste(o)),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()}),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 Ke=class extends Fe{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 Eg=/[.*+?^${}()|[\]\\]/g,kg=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function Ig(t){return t.replace(Eg,"\\$&")}function Rg(t,e){let o=t.split("").findIndex((n,s)=>n!==e[s]);return o>-1?o:Math.min(t.length,e.length)}function Pg(t){return t.search(kg)}function wa(t,e=[]){let o=t;return e.forEach(n=>{if(!n)return;let s=new RegExp(`\\b(${Ig(n)})\\b`,"gi");o=o.replace(s,"<strong>$1</strong>")}),o}function Ta(t){return t.replace(ht,'<mark data-type="placeholder">$1</mark>')}function to(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}function Ag(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 Vs(t,e,o={}){if(e){let n=Rg(e.toLowerCase(),t.toLowerCase()),s=to(t.substring(n,t.length));if(o.stripAgentPart){let l=t.substring(0,n),c=Pg(l);return`<span style="opacity: 0.5">${l.substring(c+1)}</span>${s}`}let i=e.split(Ci).length>3||e.length>30?Ag(e.trim(),n):0;return`${`${i>0?"\u2026":""}${to(t.substring(i,n))}`}<strong>${s}</strong>`}return t}var Lg=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function Tt(t){return Lg.test(t)}function Ea(t){if(Tt(t)){let o=/<body[^>]*>([\s\S]*)<\/body>/gi.exec(t);return o?o[1]:""}return t}function ka(t){let e=document.createElement("template");return e.innerHTML=t,e.content.textContent??""}import{jsx as pe,jsxs as qs}from"react/jsx-runtime";var Og=({value:t,onUse:e,...o})=>{var d;let n=T(js),s=Ng(),r=Tt(t),i=y("EditSuggestionTextInput",Bs),[a,l]=Mg(null),c=Ws(null),p=((d=t.match(ht))==null?void 0:d.length)||0;return oo(()=>{let g;return c.current&&(l(c.current),g=new Ke(c.current),g.on("change",({plainText:u})=>{s(J.actions.userInput({text:u,selection:g.getSelection()}))}),g.on("keydown",u=>{s(J.actions.registerKeyDown(qo(u))),u.code==="Enter"&&u.shiftKey&&e(g.getText())}),g.on("paste",({pastedText:u,selectionText:m})=>{s(J.actions.registerPaste({text:u,selectionText:m}))}),g.on("cut",({selectionText:u})=>{s(J.actions.registerCut(u))})),()=>{s(J.actions.reset()),g.dispose(),g.deactivate()}},[c]),oo(()=>{t&&c.current&&(c.current.value=t)},[t,c]),oo(()=>{c.current&&setTimeout(()=>{if(!c.current)return;let g=c.current.value.length;c.current.setSelectionRange(g,g),c.current.focus()},0)},[c]),r?pe("div",{className:i.textInputWrapper,children:pe(Ia,{className:i.textInput,tagName:"div",content:t})}):qs("div",{className:i.textInputWrapper,children:[pe("textarea",{...o,ref:c,"data-testid":"edit-suggestion-dialog-textarea",className:i.textInput,defaultValue:t,onChange:()=>{}}),a&&pe(Dg,{inputElement:c.current,value:t}),qs("div",{className:Ra(i.alert,p===0?i.success:i.warning),children:[pe("div",{className:i.alertText,children:n("placeholders",{placeholderSize:p})}),p===0?pe(_a,{}):pe(ba,{})]})]})},Dg=({inputElement:t,value:e})=>{let o=y("EditSuggestionTextInput",Bs),n=Ws(null),s=mn(t);return oo(()=>{fn(t,s)},[s,t]),pe(Hg,{inputElement:t,children:qs("div",{ref:n,className:Ra(o.root,o.agentText),children:[pe(Ia,{tagName:"span",disableLineBreaks:!0,content:e,matchers:[new xt("placeholders")],inputElement:t,boundaryRef:n}),pe("br",{})]})})},Hg=({inputElement:t,children:e})=>{let o=Ws(null);return oo(()=>{if(!o.current)return()=>{};let[n,s]=wt(t,{overlayContainer:o.current,mirrorOverflow:!0});return n.setAttribute("translate","no"),()=>{s()}},[o.current]),pe("div",{ref:o,children:e})},Pa=Og;import{useEffect as Em,useState as km,useRef as Im}from"react";import{useState as Kg}from"react";import $s from"classnames";var Y={root:"_root_1xflk_1",list:"_list_1xflk_2",listWrapper:"_listWrapper_1xflk_6",listHorizontal:"_listHorizontal_1xflk_10",page:"_page_1xflk_19",search:"_search_1xflk_25",pageNav:"_pageNav_1xflk_33",pageTitle:"_pageTitle_1xflk_41",pageBackButton:"_pageBackButton_1xflk_48",listHeader:"_listHeader_1xflk_62",listHeading:"_listHeading_1xflk_68",listMoreButton:"_listMoreButton_1xflk_76",listItem:"_listItem_1xflk_87",listItemContent:"_listItemContent_1xflk_96",listItemText:"_listItemText_1xflk_114",listItemDescription:"_listItemDescription_1xflk_122",listItemActions:"_listItemActions_1xflk_129",truncate:"_truncate_1xflk_140",lineClamp:"_lineClamp_1xflk_146",listItemTitle:"_listItemTitle_1xflk_153",listItemAction:"_listItemAction_1xflk_129",listItemPrimaryAction:"_listItemPrimaryAction_1xflk_174",listItemSelected:"_listItemSelected_1xflk_179",sources:"_sources_1xflk_183",sourcesTitle:"_sourcesTitle_1xflk_190",source:"_source_1xflk_183",icon:"_icon_1xflk_205",searchIcon:"_searchIcon_1xflk_222",searchInputWrapper:"_searchInputWrapper_1xflk_227",searchInput:"_searchInput_1xflk_227",select:"_select_1xflk_248",selectType:"_selectType_1xflk_265",selectWrapper:"_selectWrapper_1xflk_269",image:"_image_1xflk_299",imageSrc:"_imageSrc_1xflk_306",imageSrcHidden:"_imageSrcHidden_1xflk_317",imageSrcStatus:"_imageSrcStatus_1xflk_321",imageTitle:"_imageTitle_1xflk_331",actions:"_actions_1xflk_336",actionsWrapper:"_actionsWrapper_1xflk_340",actionsBar:"_actionsBar_1xflk_346",actionButton:"_actionButton_1xflk_355",hasShortKeys:"_hasShortKeys_1xflk_368",actionShortcut:"_actionShortcut_1xflk_377",actionShortcutFixKerning:"_actionShortcutFixKerning_1xflk_384"};var Ce={};V(Ce,{enUS:()=>Bg,nlNL:()=>Fg});var Bg={visitUrl:[{type:0,value:"Visit"}],back:[{type:0,value:"Back"}],loading:[{type:0,value:"Loading..."}],imageError:[{type:0,value:"Could not load image"}],showAll:[{type:0,value:"Show more"}]},Fg={visitUrl:[{type:0,value:"Bekijk"}],back:[{type:0,value:"Terug"}],loading:[{type:0,value:"Laden..."}],imageError:[{type:0,value:"Kan afbeelding niet laden"}],showAll:[{type:0,value:"Toon meer"}]};import{jsx as no,jsxs as zg}from"react/jsx-runtime";var Ug=({src:t,title:e})=>{let o=y("CommandPalette",Y),[n,s]=Kg("loading"),r=T(Ce);return zg("div",{className:o.image,children:[no("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:$s(o.imageSrc,{[o.imageSrcHidden]:["loading","error"].includes(n)})}),n==="loading"&&no("span",{className:$s(o.imageSrc,o.imageSrcStatus),children:r("loading")}),n==="error"&&no("span",{className:$s(o.imageSrc,o.imageSrcStatus),children:no(No,{})}),e&&no("span",{className:o.imageTitle,children:e})]})},Aa=Ug;import jg from"react";import Vg from"classnames";import{jsx as Gs,jsxs as La}from"react/jsx-runtime";function Xs({children:t,heading:e,orientation:o,hasMore:n,onShowAll:s}){let r=T(Ce),i=y("CommandPalette",Y);return jg.Children.count(t)===0?null:La("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||n)&&La("div",{className:i.listHeader,children:[e&&Gs("h4",{className:i.listHeading,children:e}),n&&s&&Gs("button",{onClick:s,className:i.listMoreButton,type:"button",children:r("showAll")})]}),Gs("div",{className:Vg(i.listWrapper,o==="horizontal"&&i.listHorizontal),children:t})]})}import _n from"classnames";import{Interweave as im}from"interweave";import qg,{useState as Ma,useEffect as Na,useMemo as Wg,useRef as Oa,useCallback as $g,useContext as Gg}from"react";import Xg from"classnames";var Zs={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 vn,jsxs as Yg}from"react/jsx-runtime";var Zg=0,Da=qg.createContext(null),Qg=()=>{let t=Gg(Da);if(!t)throw new Error("Invalid DropdownContext");return t},Ha=({trigger:t,children:e,position:o="bottom"})=>{let n=Wg(()=>++Zg,[]),s=Oa(null),r=Oa(null),i=y("Dropdown",Zs),[a,l]=Ma(!1),[c,p]=Ma(o),d=u=>{u.preventDefault(),u.stopPropagation(),l(!a)},g=$g(([u])=>{!u.isIntersecting&&a&&p(c==="top"?"bottom":"top")},[a]);return Na(()=>{let u=m=>{s.current&&!s.current.contains(m.target)&&l(!1)};return document.addEventListener("click",u),()=>{document.removeEventListener("click",u)}},[]),Na(()=>{if(!r.current&&!a)return()=>{};let u=new IntersectionObserver(g,{root:null,rootMargin:"0px",threshold:1});return r.current&&u.observe(r.current),()=>{r.current&&u.unobserve(r.current)}},[r,a]),vn(Da.Provider,{value:{setIsOpen:l},children:Yg("div",{ref:s,className:i.root,children:[vn("button",{id:`dropdown-${n}`,"data-testid":"dropdown-trigger","aria-haspopup":"true","aria-expanded":a,"aria-label":"Dropdown trigger",type:"button",className:i.trigger,onClick:d,children:t}),vn("div",{"data-testid":"dropdown-content",ref:r,"aria-hidden":!a,"aria-labelledby":`dropdown-${n}`,className:Xg(i.content,{[i.contentOpen]:a,[i.contentTop]:c==="top",[i.contentBottom]:c==="bottom"}),children:e})]})})};function Jg({as:t,children:e,onClick:o,...n}){let s=t||"button",r=y("Dropdown",Zs),{setIsOpen:i}=Qg(),a=l=>{i(!1),o(l),l.stopPropagation()};return vn(s,{type:"button",className:r.item,onClick:a,...n,children:e})}Ha.Item=Jg;var Qs=Ha;import{jsx as Ba}from"react/jsx-runtime";var Fa=t=>Ba("svg",{xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512",...t,children:Ba("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 et={};V(et,{enUS:()=>em,nlNL:()=>tm});var em={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"}]},tm={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 Js}from"react/jsx-runtime";var om="%0d%0a%0d%0a%0d%0a",nm=(t,e)=>{let o=[`Suggestie: ${encodeURIComponent(e)}`,"Beschrijf je feedback:"];return`mailto:${t.join(",")}?subject=Suggestie feedback&body=${o.join(om)}`},sm=({suggestion:t,onFeedback:e})=>{let o=T(et),n=C("suggestionFeedbackEmailAddresses");return!n||n.length===0?null:Js(Qs,{trigger:Js(Fa,{"data-testid":"feedback-dropdown-trigger"}),children:Js(Qs.Item,{as:"a",href:nm(n,t),onClick:e,children:o("giveFeedback")})})},Sn=sm;import Ys from"react";import{jsx as rm}from"react/jsx-runtime";var Ka=Ys.createContext(void 0);function Ue(){let t=Ys.useContext(Ka);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Ua=({children:t,page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r})=>{let i=Ys.useMemo(()=>({page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r}),[o,e,s]);return rm(Ka.Provider,{value:i,children:t})};import{jsx as ze,jsxs as er}from"react/jsx-runtime";function tr({closeOnSelect:t=!0,lineClamp:e,children:o,onClick:n,onFeedback:s,onSourceClick:r,index:i,description:a,sources:l,styles:c,...p}){let{selected:d,setSelected:g,onChangeOpen:u}=Ue(),m=y("CommandPalette",Y);function f(h){n(h),t&&u(!1)}return er("div",{className:_n(m.listItem,d===i&&m.listItemSelected),children:[ze("button",{onMouseEnter:()=>g(i),type:"button",className:_n("command-palette-list-item",m.listItemAction,m.listItemPrimaryAction),"aria-disabled":p.disabled??!1,onClick:f,...p,children:er("div",{className:m.listItemContent,children:[typeof o=="string"?ze("p",{className:_n(m.listItemText,m.truncate,c==null?void 0:c.title),children:o}):o,a&&ze(im,{tagName:"p",allowList:[],content:Tt(a)?ka(a):a,className:_n(m.listItemDescription,c==null?void 0:c.description,e?m.lineClamp:m.truncate)})]})}),s&&d===i&&ze("div",{className:m.listItemActions,children:ze(Sn,{suggestion:String(o),onFeedback:s})}),l&&er("div",{className:m.sources,children:[ze("span",{className:m.sourcesTitle,children:"Sources"}),l.map(h=>h.url?ze("a",{className:m.source,href:h.url,target:"_blank",title:h.url,rel:"noopener noreferrer",onClick:()=>r&&r(h),children:h.name},h.url):ze("span",{className:m.source,children:h.name},h.name))]})]})}import{jsx as za,jsxs as or}from"react/jsx-runtime";function nr({children:t,title:e,id:o,onDismiss:n}){let s=T(Ce),r=y("CommandPalette",Y),{page:i}=Ue();return i!==o?null:or("div",{className:r.page,id:`page_${o}`,tabIndex:-1,children:[n&&or("div",{className:r.pageNav,children:[or("button",{className:r.pageBackButton,type:"button",onClick:n,children:[za(dn,{}),s("back")]}),e&&za("h3",{className:r.pageTitle,children:e})]}),t]})}import{Fragment as hm,useCallback as ym,useEffect as vm,useRef as Sm}from"react";import{createAsyncThunk as pm,createSlice as dm}from"@reduxjs/toolkit";import{createAsyncThunk as rr,createSlice as lm}from"@reduxjs/toolkit";function am(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,[am(o)]:A(t[o])}),{}):t}function sr(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function z(t){return Array.isArray(t)?t.map(z):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[sr(o)]:z(t[o])}),{}):t}var cm={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,fetchState:"idle"},ro=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)||""}},so=rr("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))}),ir=rr("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}),ar=rr("info/getAgentSettings",async(t,e)=>{let{deepdeskAPI:o}=e.extra;return(await o.client.get("/apis/admin/session/me/",{version:null})).ui_config}),ja=t=>t.info.agentInfo,Va=lm({name:"info",initialState:cm,reducers:{setVisitorInfo(t,e){t.visitorInfo={...t.visitorInfo,...e.payload}}},extraReducers:t=>{t.addCase(so.pending,(e,o)=>{e.fetchState="loading",e.agentInfo={...e.agentInfo,...o.meta.arg}}).addCase(so.rejected,e=>{e.fetchState="error"}).addCase(so.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(ir.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(ar.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(P,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:qa}=Va.actions,Wa=Va.reducer;var xn={list:[],fetchState:"idle",isOpen:!1,page:"search",aggregates:{}},$a=t=>t.search.isOpen,Ga=t=>t.search.page,Xa=t=>t.search.list,Za=t=>t.search.aggregates;function Qa(t,e=o=>o){return o=>o.search.list.filter(n=>n.type===t).map(e)}var tt=pm("search/getAll",async(t,e)=>{var a;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(a=n.conversation.current)==null?void 0:a.profileCode;if(!s)throw new Error("Profile should be provided in order to be able to search");let{results:r,aggregates:i}=await o.search({profile:s,query:t.query,tags:t.tags,size:t.size,current:t.current,filters:{type:t.type},params:ro(n)});return{results:r.map(l=>({...l,source:`search-${l.type.toLowerCase()}`,searchTerm:t.query})),aggregates:i}}),Ja=dm({name:"search",initialState:xn,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=xn.fetchState,t.list=xn.list}},extraReducers:t=>{t.addCase(tt.pending,e=>{e.fetchState="loading"}).addCase(tt.rejected,(e,o)=>{e.fetchState="error",w.error(o.error)}).addCase(tt.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload.results,e.aggregates=o.payload.aggregates||{}}).addCase(P,()=>xn)}}),{resetSearch:bn,setIsOpen:G,setPage:X}=Ja.actions,Ya=Ja.reducer;var um=/(https?:\/\/[^\s]+)/,Cn=t=>t.split(" ").find(e=>um.test(e));var wn=()=>/Mac/i.test(navigator.platform);import el from"classnames";import{jsx as mm,jsxs as fm}from"react/jsx-runtime";var gm=({onClick:t,shortKeys:e,children:o,...n})=>{let s=y("CommandPalette",Y);return fm("button",{type:"button",...n,onClick:t,className:el(s.actionButton,n.className,{[s.hasShortKeys]:e&&e.length>0}),children:[o,e&&e.map(r=>mm("span",{className:el(s.actionShortcut,r===8629&&s.actionShortcutFixKerning),children:typeof r=="number"?String.fromCharCode(r):r},r))]})},Et=gm;import{jsx as Tn,jsxs as lr}from"react/jsx-runtime";var _m=["url","URL"],xm=["default","pinned-message","DEFAULT","STICKYMESSAGE"],bm=({children:t,primaryLabel:e,secondaryLabel:o,onPrimary:n,onSecondary:s,list:r})=>{let i=y("CommandPalette",Y),a=T(Ce),{selected:l,setSelected:c}=Ue(),p=r[l],d=p&&p.type&&_m.includes(p.type),g=p&&p.type&&xm.includes(p.type)||p&&"secondaryAction"in p,u=d?Cn(p.text):null,m=Sm(null);function f(v){if(!m.current)return;let R=m.current.querySelectorAll(".command-palette-list-item"),N=0,B=0;v==="down"?(R.forEach((U,F)=>{F===l&&(N=F)}),B=N===R.length-1?0:N+1):v==="up"?(R.forEach((U,F)=>{F===l&&(N=F)}),B=N?N-1:R.length-1):c(0);let D=R[B];D&&typeof B=="number"&&(c(B),D.scrollIntoView&&D.scrollIntoView({behavior:"smooth",block:B?"center":"end"}))}function h(){if(!m.current)return;let v=m.current.querySelectorAll(".command-palette-list-item"),R=0;v.forEach((B,D)=>{D===l&&(R=D)});let N=v[R];N&&N.click()}let E=()=>{u&&window.open(u,"_blank")},x=()=>{p&&n(p,l)},_=()=>{!s||!g||s(p,l)},b=ym(v=>{if(v.key==="Enter"&&v.altKey&&u){E();return}if(v.key==="Enter"&&v.shiftKey){_();return}if(v.key==="ArrowDown"){v.preventDefault(),v.stopPropagation(),f("down");return}if(v.key==="ArrowUp"){v.preventDefault(),v.stopPropagation(),f("up");return}v.key==="Enter"&&l!==-1&&(v.preventDefault(),v.stopPropagation(),h())},[l]);return vm(()=>(window.addEventListener("keyup",b),()=>{window.removeEventListener("keyup",b)}),[b]),lr("div",{className:i.actions,children:[Tn("div",{className:i.actionsWrapper,ref:m,children:t}),lr("div",{className:i.actionsBar,children:[u&&Tn(Et,{onClick:E,shortKeys:[wn()?8997:"ALT",8629],children:a("visitUrl")}),p&&lr(hm,{children:[s&&g&&Tn(Et,{onClick:_,shortKeys:[8679,8629],children:o}),Tn(Et,{onClick:x,shortKeys:[8629],children:e})]})]})]})},ol=bm;import{forwardRef as wm}from"react";import{jsx as nl,jsxs as Cm}from"react/jsx-runtime";var kt=()=>Cm("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[nl("path",{d:"M0 0h24v24H0z",fill:"none"}),nl("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 It,jsxs as cr}from"react/jsx-runtime";function Tm({onChange:t,onChangeType:e,placeholder:o,typePlaceholder:n,types:s,value:r,selectedType:i},a){let l=y("CommandPalette",Y);return cr("div",{className:l.search,children:[It("div",{className:l.searchIcon,children:It(kt,{})}),cr("div",{className:l.searchInputWrapper,children:[It("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&&It("div",{className:l.selectWrapper,children:cr("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&&It("option",{children:n}),s.map(c=>It("option",{value:c.value,children:c.label},c.value))]})})]})]})}var sl=wm(Tm);import{jsx as rl,jsxs as Rm}from"react/jsx-runtime";function ot({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:d,search:g}){let[u,m]=km(0),f=Im(null),h=()=>{s&&s(o),i(void 0),r(""),a(!1)},E=()=>{var x;if(n!==o&&s){s(o);return}if(l&&i){i(void 0),(x=f.current)==null||x.focus();return}if(g.length>0){r("");return}a(!1)};return Em(()=>{m(0)},[g,n]),rl(_t,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:d,onBack:E,onClose:h,children:Rm(Ua,{selected:u,setSelected:m,isOpen:d,onChangeOpen:a,page:n,children:[n===o&&rl(sl,{ref:f,onChange:r,onChangeType:i,placeholder:t,value:g,selectedType:l,types:c,typePlaceholder:e}),p]})})}ot.Page=nr;ot.List=Xs;ot.Image=Aa;ot.ListItem=tr;ot.ActionsBar=ol;ot.Button=Et;var I=ot;import{jsx as we,jsxs as io}from"react/jsx-runtime";var Lm=({suggestion:t,onUse:e,onDismiss:o,onTouched:n,onNext:s,onPrevious:r})=>{let i=t.text||t.url||t.message,a=y("EditSuggestionForm",Xi),l=Pm(),c=T(Rs),p=Am(m=>m.overlayInput.text);il(()=>{t&&(l(J.actions.reset()),l(J.actions.stageSuggestion({text:i,suggestion:t,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"})),l(J.actions.commitSuggestion()))},[t]);let d=m=>{m.preventDefault(),g(p)},g=m=>{l(Go(m)),e(m)},u=m=>f=>{p!==i?window.confirm(c("warning"))&&m(f):m(f)};return il(()=>{n&&n(p!==i)},[n,t,p]),io("div",{className:a.root,children:[io("div",{className:a.content,children:[t.title&&we("h3",{className:a.title,children:t.title}),t.searchKeywords&&t.searchKeywords.length>0&&we(xs,{labels:t.searchKeywords}),we(Pa,{onUse:g,value:Ea(p)})]}),io("form",{className:a.actions,onSubmit:d,children:[io("div",{children:[we("button",{disabled:!r,className:a.pagination,type:"button",onClick:r&&u(r),children:we(dn,{})}),we("button",{disabled:!s,className:a.pagination,type:"button",onClick:s&&u(s),children:we(aa,{})})]}),io("div",{className:a.primaryButtons,children:[we(I.Button,{onClick:u(o),shortKeys:["esc"],children:c("dismiss")}),we(I.Button,{shortKeys:[8679,8629],type:"submit",children:c("add")})]})]})]})},En=Lm;import{createAction as Om,createAsyncThunk as pl,createSlice as Dm}from"@reduxjs/toolkit";var Mm=["{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}"],Nm=new RegExp(Mm.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function al(t,e){let o=t.split(Nm),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 d=a.charAt(0),g=0;do c=d?e.indexOf(d,c+1):-1,g+=1;while(c!==-1&&a.indexOf(e.slice(c))!==0);if(c===-1&&g>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 ll(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var dl={suggestions:[],fetchState:"idle",isInitialRequest:null},cl={default:dl},kn=t=>e=>{var o;return((o=e.textSuggestions[t])==null?void 0:o.suggestions)??[]},ul=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")},je=t=>t.textSuggestions,gl=t=>{let e=t.toLowerCase();return o=>{let n=o.text.toLowerCase();return n.startsWith(e)&&n.length>e.length}},In=Om("textSuggestions/refresh"),de=pl("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=St(n);if(!s)throw new Error("No current conversation to fetch text suggestions");let l=await o.getTextSuggestions(s,ro(n),t);if(t==="default"){let p=i?l.filter(gl(a)):l;e.dispatch(me(p.slice(0,r)))}return l}),ao=pl("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,{...ro(n),input:t});if(!e.getState().input.text)throw new Error("Abort");return a&&(l=l.filter(gl(t))),i&&(l=l.map(p=>({...p,text:p.source!=="trie-with-typos"?al(p.text,t):p.text}))),l=ll(l,r),e.dispatch(me(l)),l}),ml=Dm({name:"textSuggestions",initialState:cl,reducers:{setTextSuggestions:{reducer(t,e){let{contentType:o}=e.payload;t[o].fetchState="done",t[o].suggestions=e.payload.suggestions},prepare(t,e){return{payload:{contentType:t,suggestions:e}}}},setSuggestionState(t,e){return e.payload}},extraReducers:t=>{t.addCase(de.pending,(e,o)=>{let n=o.meta.arg,s=e[n]||dl;return{...e,[n]:{...s,fetchState:"loading",isInitialRequest:s.isInitialRequest===null}}}).addCase(de.rejected,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="error")}).addCase(de.fulfilled,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="done",e[n].suggestions=o.payload)}).addCase(ao.pending,e=>{e.default.fetchState="loading"}).addCase(ao.rejected,e=>{e.default.fetchState="error"}).addCase(ao.fulfilled,(e,o)=>{e.default.fetchState="done",e.default.suggestions=o.payload}).addCase(P,()=>cl)}}),{setTextSuggestions:fl,setSuggestionState:hl}=ml.actions,yl=ml.reducer;import{createSlice as Hm}from"@reduxjs/toolkit";var vl={contentType:null,suggestion:null},Sl=t=>t.activeSuggestion.suggestion,_l=t=>t.activeSuggestion.contentType,xl=Hm({name:"activeSuggestion",initialState:vl,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(P,()=>vl)}}),{setActiveSuggestion:Te,resetActiveSuggestion:pr}=xl.actions,bl=xl.reducer;var dr={};V(dr,{enUS:()=>Bm,nlNL:()=>Fm});var Bm={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"}]},Fm={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 Km}from"@reduxjs/toolkit";var Um={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1};var Rn=({ui:t})=>t.overlayCollapsed;var Cl=Km({name:"ui",initialState:Um,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:lo,setInputHasFocus:Rt,setOverlayCollapsed:Ve,setOpenOverlayWhenTyping:wl,setOverlayCollapsedUserOverwrite:Tl}=Cl.actions,El=Cl.reducer;import kl,{useContext as zm}from"react";import{jsx as jm}from"react/jsx-runtime";var Il=kl.createContext(null),nt=({broadcastEvents:t,children:e})=>{let o=kl.useMemo(()=>t,[]);return jm(Il.Provider,{value:o,children:e})},ie=()=>{let t=zm(Il);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createAsyncThunk as ur,createSlice as Vm}from"@reduxjs/toolkit";var qm={isLoggedIn:!0,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1},Z=t=>t.auth.isLoggedIn,Rl=t=>t.auth.loginFetchState,Pl=t=>t.auth.verifyFetchState,Al=t=>t.auth.showLoginOverlay,Ee=ur("auth/validate",async(t,e)=>e.extra.deepdeskAPI.isLoggedIn()),Ll=ur("auth/requestLogin",async({email:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.requestLoginByEmail(t)}),co=ur("auth/verifyLoginToken",async({token:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.verifyLoginToken(t)}),Ml=Vm({name:"auth",initialState:qm,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload}},extraReducers:t=>{t.addCase(Ee.pending,e=>{e.loginFetchState="loading"}),t.addCase(Ee.fulfilled,(e,{payload:o})=>{e.isLoggedIn=o,e.loginFetchState="done"}),t.addCase(Ee.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(co.pending,e=>{e.verifyFetchState="loading"}),t.addCase(co.rejected,e=>{e.verifyFetchState="error"}),t.addCase(co.fulfilled,(e,o)=>{o.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:Pt,setShowLoginOverlay:Nl}=Ml.actions,Ol=Ml.reducer;import{createAction as Wm,createAsyncThunk as $m,createSlice as Gm}from"@reduxjs/toolkit";var gr={cues:[],fetchState:"idle"},Dl=t=>{var e;return(e=t.rules)==null?void 0:e.cues},Xm=Wm("rules/resetCues"),ke=$m("rules/evaluate",async(t,e)=>{var r;let{deepdeskAPI:o}=e.extra,n=(r=e.getState().conversation.current)==null?void 0:r.id;if(!n)throw new Error("No current conversation to evaulate rules");return await o.evaluateRule(t.label,n,t.params)}),Hl=Gm({name:"answer",initialState:gr,reducers:{removeCue(t,e){t.cues=t.cues.filter(o=>o.id!==e.payload.id)}},extraReducers:t=>{t.addCase(ke.pending,e=>{e.fetchState="loading"}).addCase(ke.rejected,e=>{e.fetchState="error"}).addCase(ke.fulfilled,(e,o)=>{let n=Date.now(),s=o.payload.map(a=>({id:a.id||a.text,timestamp:n,...a})),r=s.map(a=>a.id),i=e.cues.filter(a=>!r.includes(a.id));e.fetchState="done",e.cues=[...s,...i]}).addCase(P,()=>gr).addCase(Xm.toString(),()=>gr)}}),{removeCue:Bl}=Hl.actions,Fl=Hl.reducer;var mr="SetActiveSuggestion",fr="SetCues",At="ShowLoginOverlay",po="UserLoggedIn",Zm="UserLoggedOut",Ie="ApplySuggestion",hr="ApplyImageSuggestion",Qm="ShowCommandPalette",Jm=t=>({[mr]:e=>{t.dispatch(hl(e.state)),t.dispatch(Te({contentType:e.contentType,suggestion:e.suggestion}))},[fr]:e=>{t.dispatch({type:ke.fulfilled,payload:e})},[Qm]:e=>{t.dispatch(G(e.isOpen)),e.page&&t.dispatch(X(e.page))},[At]:e=>{t.dispatch(Nl(e))},[po]:()=>{t.dispatch(Ee())},[Zm]:()=>{t.dispatch(Ee())},[hr]:e=>{t.dispatch(Zo({suggestion:e.suggestion}))},[Ie]:e=>{t.dispatch(le({...e,eventMetrics:{inputType:"mouse"},replace:"selection"})),t.dispatch(xe())}}),Kl=Jm;import{jsx as Ul}from"react/jsx-runtime";var tf=()=>{var m;let[t,e]=Ym(!1),o=yr(Sl),n=yr(_l),s=yr(je),r=ef(),i=ie(),a=T(dr),l=()=>{o!==null&&t?window.confirm(a("warning"))&&c():c()},c=()=>{r(pr()),r(Rt(!0)),r(J.actions.reset())},p=(f,h)=>{r(pr()),r(Rt(!0)),i.send(Ie,{text:f,suggestion:{...h,source:`${h.source||"text_recommendation"}-preview`}})};if(o===null||n===null)return null;let d=(m=s[n])==null?void 0:m.suggestions.indexOf(o),g=d===0||d===null?void 0:()=>r(Te({contentType:n,suggestion:s[n].suggestions[d-1]})),u=d===s[n].suggestions.length-1||d===null?void 0:()=>r(Te({contentType:n,suggestion:s[n].suggestions[d+1]}));return Ul(_t,{autoFocus:!0,isOpen:d!==null,onClose:l,onBack:l,contentAriaLabel:a("editContentLabel"),overlayAriaLabel:a("overlayLabel"),children:Ul(En,{onTouched:e,onDismiss:c,onUse:f=>p(f,o),suggestion:o,onNext:u,onPrevious:g})})},zl=tf;import{useSelector as $l}from"react-redux";import Sr from"classnames";import{useCallback as ql,useEffect as lf,useMemo as cf,useState as _r}from"react";import{useDispatch as pf,useSelector as df}from"react-redux";import of from"classnames";var jl={root:"_root_1ukx5_1"};import{jsx as sf}from"react/jsx-runtime";var nf=({className:t,value:e,...o})=>{let n=y("TextInput",jl);return sf("input",{className:of(t,n.root),type:"text",value:e,...o})},uo=nf;var vr={};V(vr,{enUS:()=>rf,nlNL:()=>af});var rf={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"}]},af={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 Vl={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 ee,jsxs as Pn}from"react/jsx-runtime";var uf=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch{return t}},gf=({agentEmail:t,isOpen:e,origin:o="",onSuccess:n,onDismiss:s})=>{let r=T(vr),i=y("LoginTokenDialog",Vl),a=df(Pl),l=pf(),c=C("productName"),[p,d]=_r(t||""),[g,u]=_r(0),[m,f]=_r(""),h=ql(async b=>{b.preventDefault(),l(Ll({email:p})),u(1)},[o,p]),E=()=>{f(""),u(0)},x=ql(async b=>{b.preventDefault();let v=uf(b.target.elements.token.value);if(!v){f(r("verifyCodeError",{login:_}));return}l(co({token:v}))},[o]),_=cf(()=>b=>ee("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:E,children:b},"back-button"),[]);return lf(()=>{a==="error"&&f(r("verifyCodeError",{login:_})),a==="done"&&n()},[a]),ee(_t,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:c}),overlayAriaLabel:r("promptTitle",{productName:c}),onClose:s,onBack:s,children:Pn("div",{className:i.root,children:[ee("h1",{className:i.title,children:r("promptTitle",{productName:c})}),g===0&&Pn("form",{onSubmit:h,children:[ee("h2",{className:i.subtitle,children:r("requestCodeTitle")}),ee("p",{className:i.text,children:r("requestCodeBody",{productName:c})}),ee(uo,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:p,onChange:b=>d(b.target.value)}),ee("div",{className:i.actions,children:ee("button",{type:"submit",className:Sr(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),g===1&&Pn("form",{onSubmit:x,children:[ee("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),ee("p",{className:i.text,children:r("verifyCodeBody")}),ee(uo,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),m&&ee("div",{className:i.errorMessage,children:m}),Pn("div",{className:i.actions,children:[ee("button",{type:"button",className:Sr(i.button),onClick:E,children:r("back")}),ee("button",{type:"submit",className:Sr(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},Wl=gf;import{jsx as ff}from"react/jsx-runtime";var mf=()=>{let t=$l(Al),e=$l(ja),o=C("adminUrl"),n=ie(),s=()=>n.send(At,!1),r=()=>{n.send(At,!1),n.send(po)};return ff(Wl,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:o,onDismiss:s,onSuccess:r})},Gl=mf;import mh from"lodash.debounce";import{useCallback as Dn,useEffect as kr,useState as vo}from"react";import{useDispatch as fh,useSelector as st}from"react-redux";import{createAsyncThunk as hf,createSlice as yf}from"@reduxjs/toolkit";var vf={data:null,fetchState:"idle"},Xl=t=>t.contentTypes.data,go=hf("contentTypes/getContentTypes",async(t,e)=>e.extra.deepdeskAPI.getContentTypes()),Sf=yf({name:"contentTypes",initialState:vf,reducers:{},extraReducers:t=>{t.addCase(go.pending,e=>{e.fetchState="loading"}).addCase(go.rejected,e=>{e.fetchState="error"}).addCase(go.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),Zl=Sf.reducer;function mo(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 _f}from"react";function Ql(t,e){_f(()=>{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 tc,useRef as kf}from"react";import{useSelector as If,useDispatch as Rf}from"react-redux";import{createAsyncThunk as xf,createSlice as bf}from"@reduxjs/toolkit";var Jl={data:null,fetchState:"idle"},An=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},ue=xf("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)}),Cf=t=>t.filter((e,o)=>o===t.findIndex(n=>n.text===e.text)),wf=bf({name:"entities",initialState:Jl,reducers:{},extraReducers:t=>{t.addCase(ue.pending,e=>{e.fetchState="loading"}).addCase(ue.rejected,e=>{e.fetchState="error"}).addCase(ue.fulfilled,(e,o)=>{e.fetchState="done",e.data=Cf(e.data?[...e.data,...o.payload]:o.payload)}).addCase(P,()=>Jl)}}),Yl=wf.reducer;var xr={};V(xr,{enUS:()=>Tf,nlNL:()=>Ef});var Tf={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},Ef={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var ec={root:"_root_17kae_1",empty:"_empty_17kae_5"};import{jsx as Ln,jsxs as Af}from"react/jsx-runtime";var Pf=({onCopy:t,onUse:e})=>{let o=kf(null),n=y("EntitiesList",ec),s=T(xr),r=If(An),i=Rf();return tc(()=>{i(ue())},[]),tc(()=>{o.current&&o.current.focus()},[o]),Af("div",{className:n.root,ref:o,tabIndex:-1,children:[r&&r.length>0&&Ln(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:Ln(I.List,{children:r.map((a,l)=>Ln(I.ListItem,{index:l,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities")}),r&&r.length===0&&Ln("p",{className:n.empty,children:s("noResults")})]})},oc=Pf;import{Fragment as Hf,useEffect as Mn,useRef as Bf,useState as Ff}from"react";import{useSelector as lc,useDispatch as Kf}from"react-redux";import{createAsyncThunk as Lf,createSlice as Mf}from"@reduxjs/toolkit";var nc={data:null,fetchState:"idle"},sc=t=>t.summary.data,rc=t=>t.summary.fetchState==="error",Re=Lf("summary/getSummary",async(t,e)=>{var p,d,g;let o=e.getState().profile.data,n=(p=e.getState().conversation.current)==null?void 0:p.sessionId,s=(g=(d=e.getState().info)==null?void 0:d.agentInfo)==null?void 0:g.agentId;if(!o)throw new Error("Profile is not defined");let{deepdeskAPI:r,dynamicThunkObject:i}=e.extra;if(!i.conversationQuery)return Promise.reject(new Error("setConversationQuery method is not defined"));let a=i.conversationQuery,l=await a();if(l.length===0)return Promise.reject(new Error("No messages are included"));let c=await r.getSummary(l,{externalConversationId:n,agentId:s,promptInstruction:o.summarizerPromptInstruction,model:o.summarizerModel});return c?{summary:c}:Promise.reject(new Error("Summary is not provided"))}),Nf=Mf({name:"summary",initialState:nc,reducers:{},extraReducers:t=>{t.addCase(Re.pending,e=>{e.data=null,e.fetchState="loading"}).addCase(Re.rejected,e=>{e.data=null,e.fetchState="error"}).addCase(Re.fulfilled,(e,o)=>{e.fetchState="done",o.payload&&(e.data=o.payload.summary)}).addCase(P,()=>nc)}}),ic=Nf.reducer;var br={};V(br,{enUS:()=>Of,nlNL:()=>Df});var Of={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."}]},Df={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 ac={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 Lt,jsxs as zf}from"react/jsx-runtime";var Uf=({onCopy:t})=>{let e=Bf(null),o=y("SummaryForm",ac),[n,s]=Ff(""),r=T(br),i=lc(sc),a=lc(rc),l=Kf(),c=()=>{l(W({name:"summary copied to clipboard",data:{originalText:i,finalText:n},options:{includeConversationData:!0}})),t(n)},p=()=>{let d=document.getSelection();d&&l(W({name:"summary copied to clipboard",data:{originalText:i,finalText:d==null?void 0:d.toString()},options:{includeConversationData:!0}}))};return Mn(()=>{l(Re())},[]),Mn(()=>{s(i||"")},[i]),Mn(()=>{e.current&&i&&e.current.focus()},[e,i]),Mn(()=>{let d=g=>{g.key==="Enter"&&g.shiftKey&&c()};return document.addEventListener("keydown",d),()=>{document.removeEventListener("keydown",d)}},[n]),Lt("div",{className:o.root,tabIndex:-1,children:a?Lt("p",{className:o.error,children:r("error")}):zf(Hf,{children:[Lt("div",{className:o.main,children:Lt("textarea",{placeholder:i?void 0:r("loading"),disabled:!i,className:o.textInput,ref:e,value:n,onCopy:p,onChange:d=>s(d.target.value)})}),Lt("div",{className:o.actions,children:Lt(I.Button,{shortKeys:[8679,8629],onClick:c,children:r("copy")})})]})})},cc=Uf;var fo={};V(fo,{enUS:()=>jf,nlNL:()=>Vf});var jf={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?"}]},Vf={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 oh,{useEffect as Tr,useRef as nh}from"react";import{useDispatch as sh,useSelector as vc}from"react-redux";var Cr={};V(Cr,{enUS:()=>qf,nlNL:()=>Wf});var qf={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"}]},Wf={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 pc={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 Qf,createAsyncThunk as Jf,createSlice as Yf}from"@reduxjs/toolkit";import{createAsyncThunk as $f,createSlice as Gf}from"@reduxjs/toolkit";var Xf={data:null,fetchState:"idle"},dc=t=>{var e;return(e=t.knowledgeAssistant)==null?void 0:e.data},ho=$f("knowledgeAssistant/getKnowledgeAssistant",async(t,e)=>{var i;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=n.conversation.current;if(!s||!s.profileCode)throw new Error("No conversation of conversation profileCode found");let r=(i=n.profile.data)==null?void 0:i.knowledgeAssistant;return r?o.getKnowledgeAssistant(r):null}),Zf=Gf({name:"knowledgeAssistant",initialState:Xf,reducers:{},extraReducers:t=>{t.addCase(ho.pending,e=>{e.fetchState="loading"}).addCase(ho.rejected,e=>{e.fetchState="error"}).addCase(ho.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),uc=Zf.reducer;var wr={data:[],fetchState:"idle"},gc=t=>{var e;return(e=t.answer)==null?void 0:e.data},mc=t=>t.answer.fetchState,Nt=Qf("answer/resetKnowledgeSearch"),Mt=Jf("answer/getAnswer",async(t,e)=>{var l,c,p;let{deepdeskAPI:o}=e.extra,n=e.getState().answer.data,s=dc(e.getState()),r=(l=e.getState().conversation.current)==null?void 0:l.sessionId,i=(p=(c=e.getState().info)==null?void 0:c.agentInfo)==null?void 0:p.agentId;if(!s)throw new Error("KnowledgeAssistant is not defined");let a=await o.knowledgeAssist({promptInstruction:s.prompt,question:t},n,s.code,{agentId:i,conversationId:r});return{question:t,answer:a}}),eh=Yf({name:"answer",initialState:wr,reducers:{},extraReducers:t=>{t.addCase(Mt.pending,e=>{e.fetchState="loading"}).addCase(Mt.rejected,e=>{e.fetchState="error"}).addCase(Mt.fulfilled,(e,o)=>{e.fetchState="done",e.data=[...e.data,o.payload]}).addCase(P,()=>wr).addCase(Nt,()=>wr)}}),fc=eh.reducer;import{jsx as hc,jsxs as th}from"react/jsx-runtime";var yc=()=>th("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 512 512","aria-labelledby":"paperPlaneTitle",children:[hc("title",{id:"paperPlaneTitle",children:"PaperPlane"}),hc("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 Pe,jsxs as Er}from"react/jsx-runtime";var rh=({onUse:t,onResetQuestion:e,question:o})=>{let[n,s]=oh.useState(""),{setSelected:r}=Ue(),i=nh(null),a=y("EntitiesList",pc),l=T(Cr),c=sh(),p=vc(gc),d=vc(mc),g=async m=>{m.preventDefault(),m.stopPropagation(),n!==""&&c(Mt(n))},u=(m,f)=>{c(W({name:"knowledge assist source viewed",data:{question:f,sourceViewed:m.url||m.name},options:{includeConversationData:!0}}))};return Tr(()=>{var m;o&&d==="idle"?c(Mt(o)):(m=i.current)==null||m.focus()},[i,d]),Tr(()=>{d==="done"&&(c(W({name:"knowledge assist question answered",data:{question:n||o,sources:p[p.length-1].answer.sources,answer:p[p.length-1].answer.answer,isFollowUpQuestion:p.length>1},options:{includeConversationData:!0}})),r(p.length-1),s(""))},[d,p]),Tr(()=>{i.current&&i.current.scrollIntoView({behavior:"smooth"})},[i,p]),Er("div",{className:a.root,children:[p.length>0&&Pe("div",{className:a.alignRight,children:Pe(I.Button,{onClick:e,children:l("reset")})}),Er(I.ActionsBar,{list:p.map(({answer:m})=>({text:m.answer,type:"answer"})),primaryLabel:l("use"),onPrimary:m=>t(m.text),children:[p.map(({question:m,answer:f},h)=>Pe(I.List,{children:Pe(I.ListItem,{"data-testid":"knowledge-search-answer",index:h,description:f.answer,closeOnSelect:!0,onClick:()=>t(f.answer),onSourceClick:E=>u(E,m),sources:f.sources,styles:{title:a.question,description:a.answer},children:m})},`${f.answer}_${h}`)),d==="loading"&&Pe("p",{className:a.status,children:l("loading")}),d==="error"&&Pe("p",{className:a.status,children:l("error")}),Er("form",{className:a.form,onSubmit:g,children:[Pe("input",{ref:i,placeholder:l("anotherQuestion"),className:a.input,type:"text",value:n,onFocus:()=>{r(-1)},onChange:m=>{r(-1),s(m.target.value)}}),Pe("button",{type:"submit",className:a.submit,children:Pe(yc,{})})]})]})]})},Sc=rh;import{createAsyncThunk as ih,createSlice as ah}from"@reduxjs/toolkit";var lh={data:null,fetchState:"idle"},qe=t=>t.profile.data,Nn=t=>t.profile.data?t.profile.data.uiConfig.widget.types.filter(e=>e.isActive):[],yo=ih("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)}),ch=ah({name:"profile",initialState:lh,reducers:{},extraReducers:t=>{t.addCase(yo.pending,e=>{e.fetchState="loading"}).addCase(yo.rejected,e=>{e.fetchState="error"}).addCase(yo.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),_c=ch.reducer;import{useEffect as ph}from"react";import{useDispatch as dh}from"react-redux";import{useSelector as xc}from"react-redux";import{jsx as On,jsxs as gh}from"react/jsx-runtime";var uh=({commands:t,onClick:e,onEdit:o})=>{var p,d,g;let n=dh(),s=T(fo),r=xc(qe),i=xc(je),a=((g=(d=(p=r==null?void 0:r.uiConfig)==null?void 0:p.search)==null?void 0:d.initialTypes)==null?void 0:g.filter(({isActive:u})=>u))||[],l=0,c=a.map(({type:u})=>{var m;return(m=i[u])==null?void 0:m.suggestions.map(f=>({text:f.text||f.url||f.message,type:u}))}).flat(1);return ph(()=>{a.forEach(({type:u})=>{(!i[u]||i[u].suggestions.length===0)&&n(de(u))})},[]),gh(I.ActionsBar,{list:[...t.map(u=>({text:u.label,type:"command"})),...c],primaryLabel:s("use"),secondaryLabel:s("preview"),onPrimary:({text:u},m)=>e(u,c[m]),onSecondary:(u,m)=>{let f=m-t.length;o(c[f],i[c[f].type].suggestions)},children:[t.length>0&&On(I.List,{heading:s("commands"),children:t.map((u,m)=>On(I.ListItem,{index:m,closeOnSelect:!1,onClick:u.onClick,children:u.label},u.label))}),a.map(({type:u,title:m})=>{var f;return On(I.List,{heading:m,orientation:"vertical",children:(f=i[u])==null?void 0:f.suggestions.map(h=>(l++,On(I.ListItem,{index:l+t.length-1,closeOnSelect:!1,description:h.text,onClick:()=>e(h.text,h),"data-testid":"search-overlay-suggestion",children:h.title},`${h.id}-${h.text}`)))},u)})]})},bc=uh;import{jsx as te,jsxs as Ir}from"react/jsx-runtime";var hh=200,yh=5,vh=4,Sh=t=>t.reduce((e,o)=>[...e,...o.list.map(n=>({...n,type:o.value}))],[]),Cc=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),_h=()=>{let t=fh(),e=ie(),o=T(fo),[n,s]=vo(!1),[r,i]=vo(""),a=st(Ga),l=st(qe),[c,p]=vo(null),[d,g]=vo([]),[u,m]=vo(),f=st(Z),h=C("showSearch"),E=C("showEntitiesCommand"),x=C("showSummaryCommand"),_=C("showKnowledgeSearch"),b=C("showImageSearch"),v=C("searchTriggerKey"),R=st(Xl),N=st(Xa),B=st(Za),D=st($a),U=S=>Po(N.filter(H=>H.type===S.toUpperCase()),S),F=[{value:"PERSONAL",label:o("personalSuggestions"),list:U("PERSONAL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"URL",label:o("urlSuggestions"),list:U("URL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"STICKYMESSAGE",label:o("pinnedMessages"),list:U("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"IMAGE",label:o("imageSuggestions"),lineClamp:!1,list:U("IMAGE"),listOrientation:"horizontal",shouldShow:b}].filter(S=>S.shouldShow),k=[{label:o("entitiesClipboard"),onClick:()=>t(X("entities")),shouldShow:E&&Cc(o("entitiesClipboard"),r)},{label:o("summaryClipboard"),onClick:()=>t(X("summary")),shouldShow:x&&Cc(o("summaryClipboard"),r)},{label:r?`${o("knowledgeAssist")}: ${r}`:o("knowledgeAssist"),onClick:()=>t(X("knowledgeAssist")),shouldShow:_}].filter(S=>S.shouldShow),ne=(R==null?void 0:R.map(S=>({value:S.code.toUpperCase(),label:`${S.name}s`,list:U(S.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[],gs=Dn(mh((S,H)=>{t(tt({query:S,type:H,tags:["search-overlay"],size:u?50:20}))},hh),[u]),jt=Sh([...ne,...F]),Vt=Dn((S,H)=>{t(X("edit")),p({...S,searchTerm:void 0}),g(H)},[t,c,ne]),dt=Dn((S,H)=>{switch(H.type){case"IMAGE":e.send(hr,{suggestion:H});break;default:e.send(Ie,{text:S,suggestion:H})}t(G(!1))},[t]),Md=S=>{mo(S.text),t(W({name:"entity copied",data:{entity:S,type:"copy"}})),t(G(!1))},Nd=Dn(S=>{t(W({name:"suggestion feedback",data:{text:S.text,source:"search",context:r},options:{includeConversationData:!0}}))},[r]),Od=S=>{e.send(Ie,{text:S,suggestion:{source:"knowledge-assist",text:S}}),t(W({name:"answer used",data:{originalText:S},options:{includeConversationData:!0}})),i(""),t(X("search")),t(Nt()),t(G(!1))},Dd=S=>{mo(S),t(G(!1))},Hd=S=>{e.send(Ie,{text:S.text,suggestion:{source:"entity",text:S.text}}),t(G(!1))},Bd=c===null||d.indexOf(c)-1<0?void 0:()=>p(d[d.indexOf(c)-1]),Fd=c===null||d.indexOf(c)===d.length-1?void 0:()=>p(d[d.indexOf(c)+1]);function Po(S,H){return S.slice(0,u?10:H.toLowerCase()==="image"?vh:yh)}function gi(S,H,ae){return H.reduce((Ao,Lo)=>ae&&u===ae?Lo.length+Ao:Po(Lo,ae).length+Ao,S)}function ut(S){return H=>{n?window.confirm(o("warning"))&&(S(H),s(!1)):S(H)}}return kr(()=>{r?gs(r,u):t(bn())},[r,u]),kr(()=>{a==="search"&&t(Nt())},[a]),kr(()=>{f&&t(go())},[f]),Ql(v,()=>t(G(!0))),!h||!l?null:Ir(I,{placeholder:o("searchPlaceholder"),typePlaceholder:o("typePlaceholder"),onChangeSearch:i,onChangeOpen:ut(S=>t(G(S))),onChangeType:S=>m(S),onChangePage:ut(S=>t(X(S))),selectedType:u,search:r,page:a,isOpen:D,types:[...ne,...F],children:[Ir(I.Page,{id:"search",children:[r.length===0&&te(bc,{commands:k,onClick:dt,onEdit:Vt}),r.length>0&&Ir(I.ActionsBar,{list:[...k.map(S=>({text:S.label,type:"command"})),...jt.map(S=>({text:S.text||S.url||S.message,type:S.type}))],primaryLabel:o("use"),secondaryLabel:o("preview"),onPrimary:({text:S},H)=>dt(S,jt[H]),onSecondary:(S,H)=>{let ae=jt[H-k.length];!ae||!ae.type||Vt(ae,U(ae.type))},children:[k.length>0&&te(I.List,{heading:o("commands"),children:k.map((S,H)=>te(I.ListItem,{index:gi(H,[],"commands"),closeOnSelect:!1,onClick:S.onClick,children:S.label},S.label))}),[...ne,...F].map(({value:S,label:H,list:ae,lineClamp:Ao,listOrientation:Lo},Kd)=>te(I.List,{heading:H,orientation:Lo==="horizontal"?"horizontal":"vertical",onShowAll:()=>m(S),hasMore:!u&&B[S.toLowerCase()]>Po(ae,S).length,children:Po(ae,S).map((se,Ud)=>te(I.ListItem,{index:gi(k.length+Ud,[...ne,...F].slice(0,Kd).map(({list:zd})=>zd),S),closeOnSelect:!1,lineClamp:Ao,onClick:()=>dt(se.text,se),description:S!=="IMAGE"?se.title&&se.text:void 0,onFeedback:S!=="IMAGE"?()=>Nd(se):void 0,children:S==="IMAGE"?te(I.Image,{title:se.title||se.text,src:se.image}):se.title||se.text},`${se.id}-${se.text}`))},S))]})]}),te(I.Page,{id:"edit",onDismiss:ut(()=>{t(X("search")),p(null)}),children:c&&te(En,{suggestion:c,onTouched:s,onDismiss:()=>{s(!1),t(X("search")),p(null),g([])},onNext:Fd,onPrevious:Bd,onUse:S=>{t(X("search")),dt(S,{...c,source:`${c.source||"text_recommendation"}-preview`}),t(G(!1)),g([]),p(null)}})}),te(I.Page,{id:"entities",title:o("entitiesTitle"),onDismiss:ut(()=>{t(X("search"))}),children:te(oc,{onUse:Hd,onCopy:Md})}),te(I.Page,{id:"summary",title:o("summaryTitle"),onDismiss:ut(()=>{t(X("search"))}),children:te(cc,{onCopy:Dd})}),te(I.Page,{id:"knowledgeAssist",title:o("knowledgeAssist"),onDismiss:ut(()=>{t(Nt()),t(X("search"))}),children:te(Sc,{question:r,onUse:Od,onResetQuestion:()=>{t(Nt()),i("")}})})]})},wc=_h;import{jsx as Rr,jsxs as Ch}from"react/jsx-runtime";var bh=()=>{let t=C("showSearch"),e=C("isEmbedded");return Ch(xh,{children:[t&&Rr(wc,{}),Rr(zl,{}),e&&Rr(Gl,{})]})},Tc=bh;import kh from"classnames";import{useSelector as Ih}from"react-redux";import{jsx as Pr}from"react/jsx-runtime";var Ec=({className:t})=>Pr("svg",{version:"1.1",xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 512 512",xmlSpace:"preserve",className:t,children:Pr("g",{children:Pr("path",{d:`M163.4,233h186v-70c0-25.6-9.4-47.8-27.3-65.7C304.2,79.4,282,70,256.4,70s-47.8,9.4-65.7,27.3
4
4
  c-17.9,17.9-27.3,40.1-27.3,65.7C163.4,163,163.4,233,163.4,233z M465.5,267.9V477c0,9.4-3.4,17.9-10.2,24.7
5
5
  c-6.8,6.8-15.4,10.2-24.7,10.2h-349c-9.4,0-17.9-3.4-24.7-10.2c-6.8-6.8-10.2-15.4-10.2-24.7V267.9c0-9.4,3.4-17.9,10.2-24.7
6
6
  c6.8-6.8,15.4-10.2,24.7-10.2h11.9v-70c0-44.4,16.2-82.8,47.8-115.2S212.1,0,256.4,0s82.8,16.2,115.2,47.8
7
- c32.4,32.4,47.8,70,47.8,115.2v70h11.9c9.4,0,17.9,3.4,24.7,10.2C462.1,250,465.5,257.7,465.5,267.9z`})})});import{jsx as Tc}from"react/jsx-runtime";var Sh={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},Ec=({className:t,color:e})=>Tc("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:Tc("path",{d:"M172.03 0.0199966H0V86.03C47.5 86.03 86 124.54 86 172.04C86 124.54 124.51 86.03 172.01 86.03C219.51 86.03 258.03 124.54 258.03 172.04C258.03 219.54 219.52 258.05 172.01 258.05C124.5 258.05 86 219.54 86 172.04C86 219.54 47.5 258.05 0 258.05V344.06H172.03C267.04 344.06 344.06 267.04 344.06 172.03C344.06 77.02 267.04 0 172.03 0V0.0199966Z",fill:Sh[e||"pink"]})});var kc={root:"_root_1tvv4_1",text:"_text_1tvv4_18",isLoggedIn:"_isLoggedIn_1tvv4_25",isLoggedOut:"_isLoggedOut_1tvv4_29",icon:"_icon_1tvv4_39",logo:"_logo_1tvv4_44",lock:"_lock_1tvv4_49"};var Ar={};V(Ar,{enUS:()=>_h,nlNL:()=>xh});var _h={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},xh={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as wh}from"react-redux";import{jsx as Lr,jsxs as Rc}from"react/jsx-runtime";var Ic=({onLogIn:t})=>{let e=T(Ar),o=C("floatingMenu"),n=C("productName"),s=wh(),r=Ch(Z),i=y("FloatingMenu",kc);if(r===null||o===!1)return null;let a=()=>{r===!0?s(G(!0)):t()};return Rc("button",{className:bh(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[Lr("div",{className:i.text,children:e(r?"search":"signin",{productName:n})}),Rc("div",{className:i.icon,children:[Lr(Ec,{className:i.logo,color:"pink"}),r===!1&&Lr(wc,{className:i.lock})]})]})};import{useEffect as Uh,useRef as zh}from"react";import{connect as jh,useDispatch as Vh,useSelector as Hn}from"react-redux";function Dt(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 Bh,useMemo as Fh}from"react";import{Interweave as kh}from"interweave";import{useEffect as Rh,useMemo as Ih,useRef as Ph}from"react";import{useDispatch as Ah,useSelector as Lh}from"react-redux";import{useEffect as Th}from"react";function Pc(t,e,o){Th(()=>{let n=t.current;return n?(n.addEventListener(e,o),()=>{n.removeEventListener(e,o)}):()=>{}},[t,e,o])}var Ac={root:"_root_4u430_1",actions:"_actions_4u430_8",badge:"_badge_4u430_15",formattedText:"_formattedText_4u430_19"};import{jsx as On,jsxs as Hh}from"react/jsx-runtime";var Mh=["search","personal-collection-search","search-autocomplete"];function Nh(t,e,o,n={}){let s="";return Mh.includes(e)?s=Ca(Vs(t,o,{stripAgentPart:!0}),n.searchKeywords??[o]):s=Vs(t,o,n),n.placeholders===!0&&(s=wa(s)),s}var Oh=()=>{},Dh=({index:t,selected:e,suggestion:o,onFeedback:n})=>{let s=C("inlineSuggestions"),r=Lh(_t),i=Ah(),a=y("TextSuggestion",Ac),l=Ph(null);Rh(()=>{let p=setTimeout(()=>{i(Di({text:o.text,suggestion:o}))},500);return()=>{clearTimeout(p)}},[o]),Pc(l,"click",()=>{i(He(t)),i(le({suggestion:o,text:o.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let c=Ih(()=>Nh(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:Hh("div",{className:a.root,onMouseEnter:()=>i(He(t)),children:[On(P,{ref:l,as:"button","data-testid":"suggestions-overlay-item",selected:e,onClick:Oh,children:On(kh,{containerTagName:"div",noWrap:!1,tagName:"span",className:a.formattedText,content:c})}),e&&n&&On("div",{className:a.actions,children:On(yn,{onFeedback:()=>n(o),suggestion:o.text})})]})},Lc=Dh;import{jsx as Mc}from"react/jsx-runtime";var Kh=({onFeedback:t,suggestions:e,selectedIndex:o,reverse:n})=>{let s=Fh(()=>{let r=e.map((i,a)=>Mc(Lc,{index:a,selected:a===o,suggestion:i,onFeedback:t},`${i.text}-${i.source}`));return n?r.reverse():r},[e,o,n]);return Mc(Bh,{children:s})},Dn=Kh;var Nc={root:"_root_otdbu_1",paper:"_paper_otdbu_11"};import{jsx as Bn}from"react/jsx-runtime";var qh=({textSuggestions:t,selectedIndex:e})=>{let o=zh(null),n=y("InlineSuggestionsOverlay",Nc),s=Hn(Dt),r=Vh(),i=Hn(Z),a=Hn(St),l=Hn(kn),c=C("showTextSuggestions");return Ct(()=>{r(je({collapse:!0,skipWhenInputFocus:!0}))}),Uh(()=>{let p=o.current;if(!p||!p.parentElement)return;p.parentElement.style.left="0px";let d=p.getBoundingClientRect();p.parentElement.style.left=`${Math.min(window.innerWidth-4-d.right,0)}px`}),l||!s||!c||t.length===0||i!==!0||a===!1?null:Bn("div",{className:n.root,"data-variant":"inline",children:Bn("div",{ref:o,className:n.paper,children:Bn(re,{children:Bn(Dn,{suggestions:t,selectedIndex:e})})})})},Wh=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),Oc=jh(Wh)(qh);import{Provider as $h}from"react-redux";import{jsx as Fn}from"react/jsx-runtime";var Gh=({children:t})=>{let o=C("locale").replace("-","");return Fn(Hs.Provider,{value:o,children:t})},Xh=({store:t,customStyles:e={},children:o})=>Fn($h,{store:t,children:Fn(Gh,{children:Fn(Wt.Provider,{value:e,children:o})})}),rt=Xh;import Hr from"classnames";import{useEffect as ay,useRef as ly,useState as cy}from"react";import{connect as py,useDispatch as dy,useSelector as yo}from"react-redux";import{useState as Zh}from"react";function Dc(t,e){let[o,n]=Zh(()=>{if(typeof window>"u")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return w.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){w.error(i)}}]}import Yh from"classnames";import{Fragment as ey,useCallback as Nr,useMemo as Bc}from"react";var Mr={};V(Mr,{enUS:()=>Qh,nlNL:()=>Jh});var Qh={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"}]}]},Jh={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 Hc={root:"_root_1vfca_1",anchor:"_anchor_1vfca_6",anchorButton:"_anchorButton_1vfca_11"};import{jsx as Kn,jsxs as Fc}from"react/jsx-runtime";var Or=(t,e,o)=>n=>Kn("button",{className:t.anchorButton,type:"button",value:e,onClick:o,children:n},e),ty=({className:t,loginUrl:e,isEmbedded:o,onSnooze:n,onLogIn:s})=>{let r=T(Mr),i=ie(),a=y("Login",Hc),l=C("productName"),c=Nr(h=>{h.preventDefault(),n&&n(parseInt(h.target.value,10))},[]),p=Nr(h=>{h.preventDefault(),i.send(Lt,!0)},[e]),d=Bc(()=>h=>Kn("a",{onClick:x=>{x.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:h},"login"),[e]),g=Nr(h=>Kn("button",{type:"button",className:a.anchorButton,onClick:p,children:h},"prompt"),[p]),{min:u,hour:m,day:f}=Bc(()=>({min:Or(a,60*10,c),hour:Or(a,60*60,c),day:Or(a,60*60*12,c)}),[]);return Fc("div",{className:Yh(t,a.root),children:[r("loginPlease",{login:o?g:d,productName:l}),n&&Fc(ey,{children:[Kn("br",{}),r("snooze",{min:u,hour:m,day:f})]})]})},Un=ty;import{useDispatch as oy}from"react-redux";var Kc={root:"_root_1g8fi_1",text:"_text_1g8fi_19"};import{jsx as Uc,jsxs as sy}from"react/jsx-runtime";var ny=({title:t})=>{let e=y("SearchTrigger",Kc),o=oy();return sy("button",{type:"button",className:e.root,onClick:()=>o(G(!0)),children:[Uc(Rt,{}),Uc("span",{className:e.text,children:t})]})},zc=ny;var Dr={};V(Dr,{enUS:()=>ry,nlNL:()=>iy});var ry={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"}]},iy={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 jc={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 q,jsxs as vo}from"react/jsx-runtime";var uy=({textSuggestions:t,selectedIndex:e,onLogIn:o})=>{let n=y("SuggestionsOverlay",jc),s=T(Dr),r=yo(Dt),i=Ai(),a=dy(),l=ly(null),c=C("searchTriggerKey"),p=C("productName"),d=yo(kn),g=yo(Z),u=yo(St),[m,f]=cy(null),h=C("showSearch"),E=C("showTextSuggestions"),x=C("adminUrl"),_=C("isEmbedded"),[b,v]=Dc("dd-snooze-until-ms",0),I=d||b>Date.now(),N=yo(k=>k.input.text),B=t.filter(k=>k.source!=="gpt").length,O=()=>{I&&v(0),a(wl(!I))},U=k=>{a(W({name:"suggestion feedback",data:{text:k.text,source:"overlay",context:N},options:{includeConversationData:!0}}))},F=k=>{let ne=Date.now()+k*1e3;v(ne),w.info(`Snooze until: ${new Date(ne)}`),a(je({collapse:!0}))};return ay(()=>{B===0&&f(null)},[t,B]),Ct(()=>{a(je({collapse:!0,skipWhenInputFocus:!0}))}),g===null||u===!1?null:g===!1?vo("div",{ref:l,className:Hr(n.root,{[n.isCollapsed]:I}),children:[!I&&vo("div",{className:n.triggers,children:[q("div",{style:{flex:1}}),q("div",{className:n.triggersRight,children:q(ht,{className:n.toggleButton,title:s("collapse"),onClick:O,isCollapsed:!1})})]}),q("div",{className:n.toggleButtonWrapper,children:q(ht,{className:n.toggleButton,title:s("open",{productName:p}),onClick:O,isCollapsed:!0})}),q("div",{className:n.collapsible,children:q(Un,{loginUrl:x,isEmbedded:_,onLogIn:o,onSnooze:F})})]}):!i||!r?null:vo("div",{ref:l,className:Hr(n.root,{[n.isCollapsed]:I}),children:[!I&&vo("div",{className:n.triggers,children:[q("div",{style:{flex:1},children:h&&q("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>f(s(bn()?"searchHintMac":"searchHintWindows",{searchTriggerKey:c.toUpperCase()})),onMouseLeave:()=>f(null),children:q(zc,{title:s("search")})})}),vo("div",{className:n.triggersRight,onFocus:()=>{},children:[q("div",{className:Hr(!m&&n.hintsHidden,n.hints),children:m}),q(ht,{className:n.toggleButton,title:s("collapse"),onClick:O,isCollapsed:!1})]})]}),q("div",{className:n.toggleButtonWrapper,children:q(ht,{className:n.toggleButton,title:s("open",{productName:p}),onClick:O,isCollapsed:!0})}),B>0&&E&&q("div",{className:n.collapsible,onFocus:()=>{},children:q(re,{children:q(Dn,{onFeedback:U,suggestions:t,selectedIndex:e,reverse:!0})})})]})},gy=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),Vc=py(gy)(uy);import Gr from"classnames";import{Interweave as ev}from"interweave";import{useCallback as tv,useEffect as ov,useMemo as pp,useRef as nv}from"react";import{connect as sv}from"react-redux";import{cloneElement as my}from"react";var fy=["div","span","mark","strong","b","i","u","em"];function Br(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(fy.includes(s)){let i=Array.isArray(n.props.children)?n.props.children:[n.props.children];return[...t.slice(0,t.length-1),my(n,{children:Br(i,e,o+1)})]}return[...t,...e]}function qe(t){return t.tagName.toLowerCase()==="textarea"}var qc={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 Ly from"classnames";import{Matcher as My}from"interweave";import{useEffect as Ny,useMemo as Oy}from"react";function Wc(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function zn(t){return e=>{t.forEach(o=>{typeof o=="function"?o(e):o!=null&&(o.current=e)})}}function $c(t){return t!=null}import Jc from"classnames";import{createRef as Ty,useCallback as Kr,useMemo as Ey,useRef as ky,useState as Ry}from"react";import{useState as hy,useLayoutEffect as yy}from"react";var vy=["bottom","height","left","right","top","width"],Sy=(t={},e={})=>vy.some(o=>t[o]!==e[o]),Ae=new Map,Gc,Xc=()=>{let t=[],e=[];Ae.forEach((o,n)=>{if(n instanceof Element&&!n.isConnected){e.push(n);return}let s=n.getBoundingClientRect();Sy(s,o.rect)&&(o.rect=s,t.push(o))}),e.forEach(o=>{Ae.delete(o)}),t.forEach(o=>{o.callbacks.forEach(n=>n(o.rect))}),Gc=window.requestAnimationFrame(Xc)};function _y(t,e){return{observe(){let o=Ae.size===0;if(Ae.has(t)){let n=Ae.get(t);n.callbacks.push(e),n.rect&&e(n.rect)}else Ae.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});o&&Xc()},unobserve(){let o=Ae.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||Ae.delete(t),Ae.size||cancelAnimationFrame(Gc)}}}}function Fr(t){let[e,o]=hy(null);return yy(()=>{if(!t.current)return;let n=_y(t.current,s=>{o(s)});return n.observe(),()=>{n.unobserve()}},[t]),e}import{useContext as xy,useLayoutEffect as by,useState as Cy}from"react";import{createPortal as wy}from"react-dom";var Zc={root:"_root_1jq08_1"};var Qc=({children:t})=>{let[e,o]=Cy(null),n=xy(Wt);return by(()=>{let s=document.createElement("div");return Je(s),s.classList.add(Zc.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?wy(t,e):null};var ye={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 Ur}from"react/jsx-runtime";var jn=(t=!1)=>{let[e,o]=Ry(t),n=Kr(()=>o(!0),[]),s=Kr(()=>o(!1),[]),r=Kr(()=>o(a=>!a),[]),i=ky(null);return{opened:e,open:n,close:s,toggle:r,triggerRef:i}};function zr(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 Vn=({className:t,triggerRef:e,boundaryRef:o=Ty(),position:n="above",align:s="center",children:r,toStyle:i=zr,...a})=>{let l=Fr(e),c=Fr(o),p=Ey(()=>i(l,c,0),[l,c]);return Ur(Qc,{children:Ur("div",{className:Jc(ye.ref,{[ye.positionAbove]:n==="above",[ye.positionBelow]:n==="below",[ye.positionLeft]:n==="left",[ye.positionRight]:n==="right",[ye.alignStart]:s==="start",[ye.alignCenter]:s==="center",[ye.alignEnd]:s==="end"}),style:p,...a,role:"dialog",children:Ur("div",{className:Jc(t,ye.root),children:r})})})};import Iy from"classnames";import{forwardRef as Py,useRef as Ay}from"react";import{jsx as Yc}from"react/jsx-runtime";var qn=Py(({className:t,children:e,...o},n)=>{let s=Ay(null),r=y("TabCompletion",be);return Yc("div",{ref:zn([s,n]),className:Iy(t,r.popoverContentContainer),...o,children:Yc("div",{className:r.popoverContent,children:e})})});import{jsx as So,jsxs as By}from"react/jsx-runtime";var Dy=t=>e=>{let o=zr(e);return"top"in o&&(o.width=t.width-(e.left-t.left)-10),o},Hy=({inputElement:t,boundaryRef:e,inputStyle:o,children:n,suggestion:s})=>{let r=y("TabCompletion",be),i=jn(),a=Oy(()=>Dy(t.getBoundingClientRect()),[t]),[l,c]=pn(t);return Ny(()=>{c?i.open():i.close()},[c]),By("span",{children:[So("mark",{ref:zn([l,i.triggerRef]),className:Ly(r.matchKeyword,{[r.hover]:c}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:n}),i.opened&&So(Vn,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:So(qn,{style:o,children:So("div",{className:r.hintText,children:s})})})]})},Wn=class extends My{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${Wc(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($c);if(o.length===0)return null;let n=o.reduce((s,r)=>r.index<s.index?r:s);return this.usedKeywordMatches.add(n.preparedKeywordMatch),n}replaceWith(e,o){return So(Hy,{inputElement:o.inputElement,suggestion:o.suggestion,inputStyle:o.inputStyle,boundaryRef:o.boundaryRef,children:e},`keyword_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import $r from"classnames";import{Matcher as $y}from"interweave";import{createRef as Gy,forwardRef as Xy,useCallback as Zy,useEffect as ap,useRef as lp,useState as cp}from"react";import{useDispatch as Qy}from"react-redux";import{jsx as ep}from"react/jsx-runtime";var tp=()=>ep("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:ep("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 Fy,useEffect as np,useState as sp}from"react";import{useDispatch as Ky,useSelector as rp}from"react-redux";import Uy from"lodash.debounce";var op={root:"_root_1muu8_1",content:"_content_1muu8_7"};function $n(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 jr(t){return t.replace("https://www.","").replace("https://","")}import{jsx as it,jsxs as Vr}from"react/jsx-runtime";var zy=3,jy=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),Vy=({onSelectLink:t,onDismiss:e,placeholder:o,visitUrlText:n,linkCount:s=zy})=>{let r=y("LinkSearch",op),[i,a]=sp(""),l=Ky(),c=rp(Tn("url")),p=rp(Za("URL",jy)),[d,g]=sp(p.length-1),u=C("fallbackImage"),m=x=>{let _=x.target;a(_.value)},f=(x,_)=>{x.stopPropagation(),x.preventDefault(),window.open(_,"_blank")},h=x=>{var v;let _=d-1<0?p.length-1:d-1,b=d+1===p.length?0:d+1;x.code==="Escape"&&(a(""),e()),x.code==="ArrowUp"&&g(_),x.code==="ArrowDown"&&g(b),x.code==="Enter"&&t(((v=p[d])==null?void 0:v.text)||i)},E=Fy(Uy(x=>{l(et({query:x,type:"URL",tags:["link-search"]}))},300),[]);return np(()=>{i&&E(i)},[i]),np(()=>()=>{l(_n())},[]),Vr("div",{className:r.root,children:[it(re,{withDivider:!0,children:(i?p:c).slice(0,s).map((x,_)=>it(P,{selected:d===_,onClick:()=>t(x.text),"data-testid":"linksearch-suggestion",children:Vr(H,{children:[it(H.Image,{src:$n(x,"small",u||void 0),title:x.title||x.text}),Vr(H.Content,{className:r.content,cropText:!0,children:[it(H.Title,{children:x.title||jr(x.text)}),x.title&&jr(x.text)]}),it(P.Actions,{children:it(P.ActionButton,{label:n,onClick:b=>f(b,x.text)})})]})},x.text))}),it(po,{value:i,onChange:m,autoFocus:!0,placeholder:o,onKeyUp:h})]})},ip=Vy;var qr={};V(qr,{enUS:()=>qy,nlNL:()=>Wy});var qy={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}]},Wy={insertLink:[{type:0,value:"Voeg link toe"}],linkInputPlaceholder:[{type:0,value:"Zoek, typ of plak link"}],visitUrl:[{type:0,value:"Bekijk"}]};import{jsx as ve,jsxs as Wr}from"react/jsx-runtime";var Jy=Xy((t,e)=>{let o=y("TabCompletion",be);return ve("mark",{ref:e,className:$r(o.matchSelection)},"selection-start")}),Yy=({startRef:t,boundaryRef:e,inputStyle:o,inputElement:n,children:s})=>{let r=T(qr),i=y("TabCompletion",be),a=lp(null),l=lp(null),[c,p]=cp(null),d=Qy(),g=jn(document.activeElement===n),[u]=cp(()=>document.createRange());g.triggerRef.current=u,ap(()=>()=>u.detach(),[]),ap(()=>{let f=t.current,h=a.current;!f||!h||(u.setStart(f,0),u.setEnd(h,0))},[t.current,a.current]),Ct(()=>{g.close()});let m=Zy(f=>{let h=u.toString(),E=/^http(s?):\/\//.test(f)?f:`https://${f}`;d(Vo({text:`[${h}](${E})`,replace:"selection"}))},[]);return Wr("span",{children:[ve("mark",{ref:a,className:$r(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":g.opened?"true":"false",children:s}),g.opened&&ve(Vn,{className:i.popoverRoot,triggerRef:g.triggerRef,boundaryRef:e,position:"above",align:"start",children:Wr(qn,{style:o,ref:l,children:[ve("div",{className:$r(i.selectionOptions,{[i.selectionOptionsIsHidden]:c!==null}),children:Wr("button",{type:"button",tabIndex:c===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>p("insertLink"),children:[ve(tp,{}),ve("span",{children:"\xA0"}),ve("span",{children:r("insertLink")})]})}),c==="insertLink"&&ve(ip,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:m,onDismiss:()=>{p(null),g.close()}})]})})]},"selection-end")},Gn=class extends $y{charCount=0;foundIndex=0;startRef=null;props;onBeforeParse(e,o){return this.props=o,this.charCount=0,this.startRef=Gy(),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?ve(Jy,{ref:this.startRef}):ve(Yy,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as rv}from"react-redux";import{jsx as Ht,jsxs as lv}from"react/jsx-runtime";var iv=({enabled:t,content:e,tabText:o,showTabHint:n,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:l})=>{let c=y("TabCompletion",qc),p=C("insertLink"),d=C("showMidSentenceSuggestions"),g=C("inlineSuggestions"),u=un(a),m=nv(null),f=rv(Z);ov(()=>{qe(a)&&u&&gn(a,u)},[u]);let h=tv(_=>{if(!s||!o)return _;let b=[Ht("span",{className:c.resetIndent,children:"\u200B"},"u200B"),Ht("span",{"data-testid":"tab-completion",className:Gr(c.tabText,c.resetIndent),"data-source":l,children:o},"tabText")];return n&&b.push(Ht("span",{className:Gr(c.hint,c.resetIndent),children:Ht(hs,{keyCode:"tab"},"tabHint")})),Br(_,b)},[s,o,n]),E=pp(()=>{let _=[];return p&&_.push(new Gn("selection")),_.push(new bt("placeholders")),r&&_.push(new Wn("keywords")),_},[g,p,r]),x=pp(()=>{let _=window.getComputedStyle(a);return{"--dd-color":_.color,"--dd-font-size":_.fontSize,"--dd-font-family":_.fontFamily,"--dd-font-variant":_.fontVariant}},[]);return!t||!f?null:lv("div",{ref:_=>{_!=null&&_.parentElement&&(m.current=_==null?void 0:_.parentElement)},className:c.root,style:x,children:[Ht(ev,{tagName:"span",containerTagName:"div",className:Gr(c.container,c.agentText),disableLineBreaks:qe(a),content:e||"\u200B",onAfterParse:h,matchers:E,selection:u,keywordMatches:i,inputElement:a,inputStyle:x,boundaryRef:m,inlineSuggestionsOnlyAtEnd:!d}),Ht("br",{})]})},av=({input:t,ui:e,settings:o,styleSuggestions:n,conversation:s})=>{var f;let{tabCompletionSuggestion:r}=t,i=(r==null?void 0:r.text)||"",a=(r==null?void 0:r.source)||"",l=t.html??eo(t.text),c=i.indexOf(t.text)===0?i.slice(t.text.length):"",{showTabHint:p}=e,{isSupported:d}=s,{showTabCompletion:g,visible:u,showStyleSuggestions:m}=o;return{showTabHint:p,showStyleSuggestions:m,showTabCompletion:g,content:l,tabText:c,source:a,keywordMatches:((f=n.list)==null?void 0:f.keywordMatches)??[],enabled:u&&d!==!1}},dp=sv(av)(iv);import Zv from"classnames";import{useEffect as Qv}from"react";import{useDispatch as Jv,useSelector as Q}from"react-redux";import{createAsyncThunk as _o,createSlice as cv}from"@reduxjs/toolkit";var up={list:[],fetchState:"idle",isInitialRequest:null},mp=t=>t.autoflows.list||[],gp=t=>e=>{var o;return(o=e.list)==null?void 0:o.find(n=>n.triggerPayload===t)},Le=_o("autoflows/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getAutoflows(t)}),Xr=_o("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(Le(t.platformSessionId))}),Zr=_o("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(Le(t.platformSessionId))}),pv=cv({name:"autoflows",initialState:up,reducers:{},extraReducers:t=>{t.addCase(Xr.pending,(e,o)=>{let n=gp(o.meta.arg.triggerPayload)(e);n.state="Started",n.isBusy=!0}),t.addCase(Zr.pending,(e,o)=>{let n=gp(o.meta.arg.triggerPayload)(e);n.state="Aborted",n.isBusy=!0}),t.addCase(Le.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}),t.addCase(Le.rejected,e=>{e.fetchState="error"}),t.addCase(Le.fulfilled,(e,o)=>{e.list=o.payload,e.fetchState="done"}),t.addCase(A,()=>up)}}),fp=_o("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(Le(t))}),s.on("sessionCompleted",()=>{o(Le(t))})}),hp=_o("autoflows/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),yp=pv.reducer;import{createAsyncThunk as bo,createSlice as dv}from"@reduxjs/toolkit";var vp={list:[],fetchState:"idle",isInitialRequest:null,sentSuggestions:[],errorSuggestions:[],answeredSuggestions:[]},Sp=t=>t.customMessages.list,_p=t=>e=>!!e.customMessages.sentSuggestions.find(o=>o===t),xp=t=>e=>!!e.customMessages.answeredSuggestions.find(o=>o===t),bp=t=>e=>!!e.customMessages.errorSuggestions.find(o=>o===t),xo=bo("customMessages/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getCustomMessages(t)}),Xn=bo("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)}),Zn=bo("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)}),Cp=dv({name:"customMessages",initialState:vp,reducers:{onCustomMessage(t,e){Array.isArray(e.payload)?t.list=e.payload:t.list=[e.payload]}},extraReducers:t=>{t.addCase(xo.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(xo.rejected,e=>{e.fetchState="error"}).addCase(xo.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload||[]}).addCase(Xn.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.errorSuggestions=e.errorSuggestions.filter(n=>o.meta.arg.suggestion.text!==n)}).addCase(Xn.rejected,(e,o)=>{let n=e.sentSuggestions.indexOf(o.meta.arg.suggestion.text);e.errorSuggestions.push(...e.sentSuggestions.splice(n,1))}).addCase(Zn.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.answeredSuggestions.push(o.meta.arg.suggestion.text)}).addCase(Zn.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(A,()=>vp)}}),wp=bo("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(Cp.actions.onCustomMessage(r))})}),Tp=bo("customMessages/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),Ep=Cp.reducer;import{createAsyncThunk as kp,createSlice as uv}from"@reduxjs/toolkit";var gv={token:null,accountUrl:null,interval:null},Rp=t=>e=>{let{passwordlessToken:{token:o,accountUrl:n}}=e;return o&&n?`${n}/apis/admin/session/passwordless/login/?token=${o}&redirect=${t}`:null},Qr=kp("passwordlessToken/getTemporaryPasswordlessToken",async(t,e)=>{let{deepdeskAPI:o}=e.extra,n=await o.requestPasswordlessToken();return{accountUrl:o.client.baseUrl,token:n}}),Jr=kp("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:o=1e3*60*10}=t,{dispatch:n}=e;return n(Qr()),setInterval(()=>n(Qr()),o)}),Ip=uv({name:"passwordlessToken",initialState:gv,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Qr.fulfilled,(e,o)=>{e.token=o.payload.token,e.accountUrl=o.payload.accountUrl}),t.addCase(Jr.fulfilled,(e,o)=>{e.interval=o.payload})}}),{stopPollPasswordlessToken:Pp}=Ip.actions,Ap=Ip.reducer;function Lp(t){let{customMessages:e,autoflows:o}=t;return o.fetchState==="loading"&&o.isInitialRequest===!0||e.fetchState==="loading"&&e.isInitialRequest===!0}import{Fragment as Cv}from"react";import{connect as wv}from"react-redux";import _v from"classnames";import{Fragment as xv}from"react";import mv from"classnames";var Mp={root:"_root_838fd_1"};import{jsx as hv}from"react/jsx-runtime";var fv=({className:t,children:e})=>{let o=y("Unicode",Mp);return hv("span",{className:mv(t,o.root),children:e})},Np=fv;var Op={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 Yr={};V(Yr,{enUS:()=>yv,nlNL:()=>vv});var yv={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"}]},vv={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 at,jsxs as Qn}from"react/jsx-runtime";var bv=({disabled:t,state:e,displayName:o,description:n,onStartAutoflow:s,onStopAutoflow:r})=>{let i=y("Autoflow",Op),a=T(Yr),l=e==="Started"?"stop":"start",c=l==="start"?"\u25B6":l==="stop"?"\u25FC":"";return Qn(P,{className:_v(i.root,{[i.isDisabled]:t,[i.isCompleted]:e==="Completed",[i.isAborted]:e==="Aborted",[i.isStarted]:e==="Started"}),children:[at(H,{children:Qn(H.Content,{children:[Qn(H.Title,{children:[e&&at("span",{className:i.stateBadge,children:a(e)}),o]}),at("span",{children:n})]})}),at(P.Actions,{fixed:e==="Started",children:at(P.ActionButton,{primary:!0,className:l==="start"?i.buttonStart:i.buttonStop,onClick:e==="Started"?r:s,disabled:t,label:Qn(xv,{children:[at(Np,{children:c})," ",at("span",{children:a(l)})]})})})]})},Dp=bv;import{jsx as Hp}from"react/jsx-runtime";var Tv=(t,e)=>{let o=e.filter(n=>n.state==="Started");return o.length>0?o.indexOf(t)===-1:!1},Ev=({autoflows:t,onStartAutoflow:e,onStopAutoflow:o,platformSessionId:n})=>Hp(Cv,{children:t.map(s=>Hp(Dp,{displayName:s.displayName,description:s.description,disabled:s.isBusy||Tv(s,t),state:s.state,onStartAutoflow:()=>e({platformSessionId:n,triggerPayload:s.triggerPayload}),onStopAutoflow:()=>o({platformSessionId:n,triggerPayload:s.triggerPayload})},s.displayName))}),kv=({autoflows:t,conversation:e})=>{var o;return{autoflows:t.list,platformSessionId:(o=e.current)==null?void 0:o.sessionId}},Rv={onStartAutoflow:Xr,onStopAutoflow:Zr},Bp=wv(kv,Rv)(Ev);import Iv from"classnames";import{useCallback as Fp}from"react";import{useDispatch as Pv,useSelector as Jn}from"react-redux";var Me={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 We,jsxs as Yn}from"react/jsx-runtime";var Av=({suggestion:t})=>{let e=T(Ye),o=Pv(),n=Jn(_p(t.text)),s=Jn(xp(t.text)),r=Jn(bp(t.text)),i=Jn(Do),{replyOptions:a}=t,l=Fp(p=>{p.preventDefault(),p.stopPropagation(),!(n||!i)&&o(Xn({platformSessionId:i,suggestion:t}))},[t,n,o,i]),c=Fp(p=>{if(p.preventDefault(),p.stopPropagation(),!i||!a)return;let d=parseInt(p.target.dataset.index,10),g=a[d];o(Zn({platformSessionId:i,reply:g,suggestion:t}))},[t,n,o,i]);return Yn(P,{onClick:l,className:Iv(Me.root,{[Me.isUsed]:n,[Me.hasError]:r}),children:[We(H,{children:Yn(H.Content,{children:[Yn(H.Title,{className:Me.title,children:[t.text," ",We(ys,{className:Me.label,children:"analyse tool"})," ",r&&We("span",{className:Me.errorIcon,role:"img","aria-label":e("sendingError"),title:e("sendingError"),children:"!"})]}),a&&a.length>0&&We("ul",{className:Me.quickReplies,children:a.map(p=>We("li",{className:Me.quickReply,children:p.title},p.title))})]})}),Yn(P.Actions,{fixed:r||n,children:[a&&a.length>0&&We(P.DropdownButton,{label:e("answer"),disabled:s,children:a.map((p,d)=>We(P.DropdownItem,{index:d,label:p.title,onClick:c},p.title))}),We(P.ActionButton,{primary:!0,disabled:n,onClick:l,label:e(n?"suggestionSent":r?"tryAgain":"sendSuggestion")})]})]})},Kp=Av;import{useEffect as Lv,useState as Mv}from"react";import{useDispatch as Nv}from"react-redux";import jp from"classnames";import{jsx as Up}from"react/jsx-runtime";var ei=()=>Up("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:Up("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 zp={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 Bt,jsxs as Vp}from"react/jsx-runtime";var Ov=({entities:t})=>{let e=y("EntitiesWidgetList",zp),[o,n]=Mv(void 0),s=Nv(),r=()=>{n(void 0)},i=a=>{t&&(n(t.indexOf(a)),nt(a.text),s(W({name:"entity copied",data:{entity:a,type:"copy"}})))};return Lv(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[o]),!t||t.length===0?null:Bt("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,l)=>Vp("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[Bt("span",{className:e.entityText,children:a.text}),Vp("span",{className:e.iconWrapper,children:[Bt("span",{className:jp(e.icon),children:Bt(ei,{})}),Bt("span",{className:jp(e.icon,o===l&&e.iconClicked),children:Bt(ei,{})})]})]},a.text))})},qp=Ov;import{jsx as Wp}from"react/jsx-runtime";var $p=()=>Wp("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Wp("path",{d:"M17 13.5v6H5v-12h6m3-3h6v6m0-6-9 9",stroke:"currentColor",strokeWidth:"1.5",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"})});import{jsx as Gp}from"react/jsx-runtime";var Xp=()=>Gp("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:Gp("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 Zp}from"react/jsx-runtime";var Qp=()=>Zp("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:Zp("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{useSelector as Bv}from"react-redux";import{useCallback as Dv}from"react";import{jsx as lt,jsxs as es}from"react/jsx-runtime";var Hv=({suggestion:t,lines:e,onEdit:o,onUse:n})=>{var g;let s=t.text||t.url||t.message,r=xn(s),i=T(Ye),a=C("showImages"),l=C("fallbackImage"),c=u=>{u.preventDefault(),u.stopPropagation(),n(s)},p=u=>{u.preventDefault(),u.stopPropagation(),o(t)},d=Dv(u=>{window.open(r,"_blank"),u.stopPropagation(),u.preventDefault()},[r]);return es(P,{onClick:c,"data-testid":"edit-suggestion",children:[es(H,{children:[a&&t.image&&lt(H.Image,{src:$n(t,"small",l||void 0),title:t.title}),es(H.Content,{children:[t.title&&lt(H.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((g=t.searchKeywords)==null?void 0:g.length)>0&&lt(P.Labels,{labels:t.searchKeywords}),lt(H.Content,{cropText:e==="single",lineClamp:e==="multiple",children:s})]})]}),es(P.Actions,{children:[r&&lt(P.ActionButton,{onClick:d,label:i("visitUrl")}),lt(P.ActionButton,{primary:!0,onClick:p,label:i("preview")}),lt(P.ActionButton,{primary:!0,onClick:c,label:i("useSuggestion")})]})]})},Jp=Hv;import{Fragment as Kv,jsx as Yp}from"react/jsx-runtime";var Fv=({contentType:t,lines:e,suggestions:o})=>{let n=ie(),s=Bv(ze),r=a=>{n.send(mr,{state:s,suggestion:a,contentType:t})},i=(a,l)=>{n.send(Re,{text:a,suggestion:{...l,source:l.source,sourceText:l.text}})};return Yp(Kv,{children:o.map(a=>Yp(Jp,{suggestion:a,lines:e,onEdit:l=>r(l),onUse:l=>i(l,a)},a.text||a.url||a.message))})},ed=Fv;var ti={};V(ti,{enUS:()=>Uv,nlNL:()=>zv});var Uv={waiting:[{type:0,value:"Loading\u2026"}],notSupported:[{type:0,value:"This conversation is not supported"}],noResults:[{type:0,value:"No results found\u2026"}],titleAutoflows:[{type:0,value:"Autoflows"}],titleCustomMessages:[{type:0,value:"Quick replies"}],titleCues:[{type:0,value:"Assistant updates"}],actions:[{type:0,value:"Shortcuts"}],linkStudioLogin:[{type:0,value:"My "},{type:1,value:"productName"}],linkSummary:[{type:0,value:"Summarize"}],linkKnowledgeSearch:[{type:0,value:"Knowledge Assist"}],linkSearch:[{type:0,value:"Search"}]},zv={waiting:[{type:0,value:"Laden\u2026"}],notSupported:[{type:0,value:"Dit gesprek wordt niet ondersteund"}],noResults:[{type:0,value:"Geen resultaten gevonden\u2026"}],titleAutoflows:[{type:0,value:"Autoflows"}],titleCustomMessages:[{type:0,value:"Quick replies"}],titleCues:[{type:0,value:"Assistant updates"}],actions:[{type:0,value:"Shortcuts"}],linkStudioLogin:[{type:0,value:"Mijn "},{type:1,value:"productName"}],linkSummary:[{type:0,value:"Gesprek samenvatten"}],linkKnowledgeSearch:[{type:0,value:"Knowledge assist"}],linkSearch:[{type:0,value:"Zoeken"}]};var td={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{useEffect as qv,useState as Wv}from"react";var oi={};V(oi,{enUS:()=>jv,nlNL:()=>Vv});var jv={copyCue:[{type:0,value:"Copy"}],copiedCue:[{type:0,value:"Copied!"}],removeCue:[{type:0,value:"Discard"}]},Vv={copyCue:[{type:0,value:"Kopieer"}],copiedCue:[{type:0,value:"Gekopieerd!"}],removeCue:[{type:0,value:"Verwijderen"}]};import{jsx as ts,jsxs as ni}from"react/jsx-runtime";var $v=({cue:t,onRemove:e,onCopy:o})=>{let n=T(oi),[s,r]=Wv(!1),i=l=>{l.preventDefault(),l.stopPropagation(),o&&(o(t.text),r(!0))},a=l=>{l.preventDefault(),l.stopPropagation(),e&&e(t.id)};return qv(()=>{if(!s)return;let l=setTimeout(()=>{r(!1)},1e3);return()=>{clearTimeout(l)}},[s]),ts(P,{"data-testid":"cue",children:ni(H,{expandOnHover:!0,children:[ni(H.Content,{lineClamp:!0,children:[t.title&&ts(H.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.text]}),ni(P.Actions,{children:[e&&ts(P.ActionButton,{primary:!0,onClick:a,label:n("removeCue")}),o&&ts(P.ActionButton,{primary:!0,onClick:i,label:n(s?"copiedCue":"copyCue")})]})]})})},od=$v;import{Fragment as Xv,jsx as nd}from"react/jsx-runtime";var Gv=({cues:t,onCopyCue:e,onRemoveCue:o})=>nd(Xv,{children:t.map(n=>nd(od,{cue:n,onRemove:o,onCopy:e},`${n.id}_${n.timestamp}`))}),sd=Gv;import{jsx as M,jsxs as Ft}from"react/jsx-runtime";var os=(t,e)=>{let o=Q(Z);Qv(()=>o?e.every(n=>!!n)?t():()=>{}:()=>{},[...e,o])},Yv=({onLogIn:t})=>{let e=T(ti),o=Jv(),n=C("isEmbedded"),s=y("Widget",td),r=C("showAutoflows"),i=C("showCustomMessages"),a=C("showSummaryCommand"),l=C("showKnowledgeSearch"),c=C("showSearch"),p=Q(Ve),d=Q(Ln),g=Q(mp),u=Q(Ol),m=Q(In),f=Q(Sp),h=Q(Ho),E=Q(St),x=Q(Z),_=Q(Do),b=Q(Lp),v=Q(ze),I=ie(),N=Q(dl),B=Q(Rp("/admin/")),O=C("adminUrl"),U=C("productName");if(os(()=>(o(xo(_)),o(wp(_)),()=>{o(Tp(_))}),[o,E,i,_]),os(()=>(o(Le(_)),o(fp(_)),()=>{o(hp(_))}),[o,E,r,_]),os(()=>{d.forEach(({type:k})=>{o(k==="entities"?ue():de(k))})},[o,E,h,p]),os(()=>(o(Jr()),()=>{o(Pp())}),[o]),E===!1)return M("div",{className:s.stateText,children:M("div",{children:M("p",{children:e("notSupported")})})},"supported");if(x===!1)return M("div",{className:s.loginText,children:M("div",{children:M(Un,{isEmbedded:n,loginUrl:O,onLogIn:t})})},"login");if(!p||!_||x===null||N||b)return M("div",{className:s.stateText,children:M("div",{children:M("p",{children:e("waiting")})})},"waiting");let F=c||a||l||B;return M("div",{className:Zv(s.root),"data-testid":"widget",children:Ft(Ss,{className:s.sectionList,children:[F&&M(Ne,{title:e("actions"),type:"shortcuts",children:Ft("div",{className:s.shortcutList,children:[c&&Ft("button",{className:s.shortcut,"data-testid":"shortcut-search",onClick:()=>I.send("ShowCommandPalette",{isOpen:!0}),children:[M(Rt,{}),e("linkSearch")]}),a&&Ft("button",{className:s.shortcut,"data-testid":"shortcut-summary",onClick:()=>I.send("ShowCommandPalette",{isOpen:!0,page:"summary"}),children:[M(Qp,{}),e("linkSummary")]}),l&&Ft("button",{className:s.shortcut,"data-testid":"shortcut-knowledge-assist",onClick:()=>I.send("ShowCommandPalette",{isOpen:!0,page:"knowledgeAssist"}),children:[M(Xp,{}),e("linkKnowledgeSearch")]}),B&&Ft("a",{className:s.shortcut,target:"_blank",href:B,"data-testid":"shortcut-studio-login",rel:"noreferrer",children:[M($p,{}),e("linkStudioLogin",{productName:U})]})]})}),i&&f.length>0&&M(Ne,{type:"custom-messages","data-testid":"custom-messages",children:M(re,{withDivider:!0,children:f.map(k=>M(Kp,{suggestion:k},k.text))})}),r&&g.length>0&&M(Ne,{type:"autoflows",title:e("titleAutoflows"),"data-testid":"autoflows",children:M(re,{withDivider:!0,children:M(Bp,{})})}),d.map(({type:k,title:ne,amount:us,lines:Vt})=>{var qt;switch(k){case"entities":return m&&m.length>0&&M(Ne,{type:k,title:ne,"data-testid":`type-${k}`,children:M(qp,{entities:m})},k);case"cues":return u&&u.length>0&&M(Ne,{type:k,title:ne,"data-testid":`type-${k}`,children:M(re,{withDivider:!0,children:M(sd,{cues:u,onCopyCue:dt=>nt(dt)})})},k);default:return((qt=v[k])==null?void 0:qt.fetchState)==="done"&&v[k].suggestions.length>0&&M(Ne,{type:k,title:ne,"data-testid":`type-${k}`,children:M(re,{withDivider:!0,children:M(ed,{lines:Vt,contentType:k,suggestions:v[k].suggestions.slice(0,us)||[]})})},k)}})]})})},rd=Yv;function wo(t){let e=new Range;return e.selectNodeContents(t),e}function id(t,e,o){try{return ct(t,e,o),!0}catch{return!1}}function ns(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function ss(t){return"tagName"in t&&t.tagName==="BR"}var Co=/[\u200B-\u200D\uFEFF]/g;function ct(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,d=/[\u200B-\u200D\uFEFF]/;if(!d.test(l))return c;for(let g=0;g<=l.length;g++)if(d.test(l[g])||p++,p===c)return g;throw new Error("Offset out of range")}function a(l){switch(l.nodeType){case Node.TEXT_NODE:{let c=l.textContent,p=c.replace(Co,""),d=s+p.length,g=e>=s&&e<=d,u=o>=s&&o<=d;if(g){let m=i(c,e-s);m===0&&!u?n.setStartBefore(l):n.setStart(l,m)}u&&(n.setEnd(l,i(c,o-s)),r=!0),s=d;break}case Node.ELEMENT_NODE:{if(ss(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;ns(l)&&c&&!ns(c)&&!ss(c)&&s++;break}default:break}}if(a(t),n.startContainer===document)throw new Error("Offsets out of bound");return n}function rs(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(d){let g=d===o,u=d===s;switch(d.nodeType){case Node.TEXT_NODE:{let m=d.textContent;g&&(a=c+m.substring(0,n).replace(Co,"").length),u&&(l=c+m.substring(0,r).replace(Co,"").length),c+=m.replace(Co,"").length;break}case Node.ELEMENT_NODE:{let m=d.nextSibling===null;ss(d)&&!m&&c++;for(let f=0;f<d.childNodes.length;f++){let h=g&&f===n,E=u&&f===r;if(h&&(a=c),E&&(l=c),l!==void 0||((!h||!i)&&p(d.childNodes[f]),u&&f===r-1&&(l=c),l!==void 0))break}!u&&ns(d)&&!m&&c++,u&&(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 is(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,d=c===s;switch(p&&i++,c.nodeType){case Node.TEXT_NODE:{if(i!==0)return;let g=p?n:0,u=d?r:void 0,m=c.textContent.replace(Co,"");g===0&&u===void 0?a+=m:a+=m.substring(g,u);break}case Node.ELEMENT_NODE:{let g=c.nextSibling===null;i===0&&ss(c)&&!g&&(a+=`
8
- `);for(let u=p?n:0;u<(d?Math.min(r,c.childNodes.length):c.childNodes.length)&&(l(c.childNodes[u]),i!==1);u++);!d&&i===0&&ns(c)&&!g&&(a+=`
9
- `);break}default:break}d&&i++}return l(t),a}function ad(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var Kt=class extends Be{observer;lastKnownSelection=null;getRootNode(){return this.element.getRootNode()}getText(){let e=new Range;return e.selectNodeContents(this.element),is(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!ad(o)&&(e.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=e.getBoundingClientRect(),e.deleteContents(),!ad(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let e=this.getRange();if(e)return rs(this.element,e);let o=this.lastKnownSelection;if(o&&id(this.element,o.start,o.end))return o;let n=wo(this.element);return n.collapse(!1),rs(this.element,n)}getSelectedText(){let{start:e,end:o}=this.getSelection();return is(this.element,ct(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()}};function ld(t,e,o){let n=`deepdesk-iframe-${t}`,s=document.getElementById(n);if(s)return s;let r=document.createElement("iframe"),i=new URL(e);return Object.entries(o).forEach(([a,l])=>{i.searchParams.append(a,l)}),r.style.position="absolute",r.style.left="-999em",r.style.width="0px",r.style.height="0px",r.tabIndex=-1,r.id=n,r.title=`iframe-${t}`,r.src=i.toString(),window.document.body.appendChild(r),r}var si=class{constructor(e){this.name=e;this.broadcastChannel=new BroadcastChannel(e)}broadcastChannel;disposeHandlers=[];onMessage(e){this.broadcastChannel.addEventListener("message",e),this.disposeHandlers.push(()=>{this.broadcastChannel.removeEventListener("message",e)})}postMessage(e){this.broadcastChannel.postMessage(JSON.stringify(e))}close(){this.disposeHandlers.forEach(e=>e()),this.broadcastChannel.close()}},ri=class{constructor(e,o,n){this.name=e;this.targetOrigin=o;this.options=n;this.iframe=ld(e,`${this.targetOrigin}/sdk/proxy/proxy.html`,{channel:this.name,host:window.location.origin,debug:"1"}),document.body.appendChild(this.iframe)}iframe;disposeHandlers=[];onMessage(e){window.addEventListener("message",e),this.disposeHandlers.push(()=>{window.removeEventListener("message",e)})}postMessage(e){var o;(o=this.iframe.contentWindow)==null||o.postMessage(JSON.stringify(e),this.targetOrigin)}close(){var e;this.disposeHandlers.forEach(o=>o()),(e=this.iframe)==null||e.remove()}},ii=class{constructor(e){this.params=e;this.deepdeskUrl=e.deepdeskUrl,this.eventMap=e.eventMap,this.sessionId="deepdesk-general",this.defaultChannel=this.createChannel("deepdesk-general")}sessionId;deepdeskUrl;channel;defaultChannel;eventMap;get isCrossOrigin(){return this.params.deepdeskUrl!==(this.params.origin||window.location.origin)}setSessionId(e){this.sessionId!==e&&(this.cleanup(),w.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 ri(e,this.deepdeskUrl,{debug:!0}):new si(e),n=s=>{var i,a;if(s.origin!==this.deepdeskUrl)return;let r=typeof s.data=="string"?JSON.parse(s.data):s.data;r.type==="event"&&r.channel===e&&(w.info("Received broadcast event",this.sessionId,s),(a=(i=this.eventMap)[r.name])==null||a.call(i,r.payload))};return o.onMessage(n),o}send(e,o,n){var i,a;w.info("Broadcast event",{sessionId:this.sessionId,name:e,payload:o});let s={type:"event",name:e,payload:o};n!==!1&&((a=(i=this.eventMap)[e])==null||a.call(i,o));let r=this.sessionId==="deepdesk-general"?this.defaultChannel:this.channel;r==null||r.postMessage({...s,channel:this.sessionId})}cleanup(e=!1){var o,n;(o=this.channel)==null||o.close(),delete this.channel,e&&((n=this.defaultChannel)==null||n.close(),delete this.defaultChannel)}},cd=ii;var Ut=class extends Error{constructor(o,n){super(o);this.body=n}name="CustomError"};var ai=t=>new Promise(e=>{setTimeout(e,t)});var zt=class extends Ut{name="ClientError"},li=class extends Ut{name="ServerError"},Se=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:d=!0,retryOnError:g=b=>b instanceof TypeError,retryOnResponse:u=b=>b.status>=500,version:m="v1",...f}=o,h={credentials:"include",...f,headers:{"Content-Type":"application/json",...f.headers}};o.method!==void 0&&o.method!=="GET"&&this.csrfToken&&(h.headers={...h.headers,"X-CSRFToken":this.csrfToken}),typeof m=="string"&&(h.headers={...h.headers,"X-Deepdesk-API-Version":m});let E=c,x=!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 _=async()=>(E--,a(i,h).then(async b=>u(b)&&!r.isAborted&&E>0?(await ai(p),_()):b.status===401&&d===!0&&x===!1?(x=!0,await this.refreshToken(),_()):b).catch(async b=>{if(g(b)&&!r.isAborted&&E>0)return await ai(p),_();throw b}));_().then(b=>b.json().catch(()=>null).then(v=>{b.status>=500?s(new li("Server Error",v)):b.status===401?s(new zt("Unauthorized",v)):b.status===403?s(new zt("Forbidden",v)):b.status===404?s(new zt("Not Found",v)):b.status>=400&&s(new zt("Bad Request",v)),delete this.latestRequestByUrl[i],n(v)})).catch(b=>{s(b)})})}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 eS;(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||={})})(eS||={});function as(t){return{...L(t),tags:t.tags}}var $e=class t{constructor(e,o={}){this.options=o;this.client=new Se(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(),w.info(`Creating conversation for session ${e.sessionId} and agent ${e.agentId}`);let o=await this.client.post("/api/conversations",{...z(e),tags:e.tags},{version:"v2"});return as(o)}async getProfile(e){let o=await this.client.get(`/apis/admin/profiles/${e}/`,{version:null});return L(o)}async getKnowledgeAssistant(e){let o=await this.client.get(`/apis/admin/knowledge-assist/assistants/${e}/`,{version:null});return L(o)}async getContentTypes(){let e=await this.client.get("/apis/admin/content-types/",{version:null});return L(e)}async getPlatformConfig(){let{config:e}=await this.client.get("/platform/config/",{version:null});return L(e)}async checkUserExists(e){let{exists:o}=await this.client.get(`/apis/admin/users/exists?external_id=${e}`);return o}async getConversationBySessionId(e,o={}){await this.preflight(),w.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 w.info(`Successfully retrieved conversation ${r.id} for session ${e}`),as(r)}async isConversationSupported(e,o={}){w.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=z(o);o.tags&&(n.tags=o.tags);let s=await this.client.put(`/api/conversations/${e}`,n,{version:"v2"});return as(s)}async postMessages(e,o){return(await this.client.post(`/api/conversations/${e}/messages`,o.map(s=>({...z(s),tags:s.tags})),{version:"v2"})).map(s=>as(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",z({...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:z({...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),agent_id:o.agentId,id:o.externalConversationId},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 w.warn(`Invalid token '${e}'`),o})}async authenticateWithKey(e,o){await this.client.post("/apis/admin/session/api-key/",z(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}`,z(o),{abortLatest:!0})).map(r=>({...L(r),text:r.text||r.url||r.message,source:n,type:n})).filter((r,i,a)=>i===a.findIndex(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`,z(o),{abortLatest:!0})).map(s=>({score:1,source:s.source,sourceText:s.source_text,text:s.label,trainingJobs:s.training_jobs,searchKeywords:s.search_keywords,type:s.source})).filter((s,r,i)=>r===i.findIndex(a=>a.text===s.text))}async getPinnedMessages(e){let o=await this.client.get(`/api/conversations/${e}/sticky-messages`,{abortLatest:!0});return L(o).map(n=>({...n,text:n.message,source:"sticky-messages",type:"pinned-message"}))}async getStyleSuggestions(e){let o=await this.client.post("/api/style-suggestions",z(e),{abortLatest:!0});return L(o)}async search(e){let o=await this.client.post(`/api/profiles/${e.profile}/search`,z(e),{version:"v2"});return L(o)}async knowledgeAssist(e,o,n,s={}){let r=await this.client.post(`/api/knowledge-assist/assistants/${n}/search`,z({question:e.question,promptInstruction:e.promptInstruction,chatHistory:o.map(i=>({question:i.question,answer:i.answer.answer})),agentId:s.agentId,conversationId:s.conversationId}),{version:"v2"});return L(r)}async requestLoginByEmail(e){let o=await this.client.post("/apis/admin/session/passwordless/request/",{email:e},{version:null});return L(o)}async requestPasswordlessToken(){let e=await this.client.get("/apis/admin/session/passwordless/request/",{version:null});return L(e.token)}async getCsrfToken(){let{token:e}=await this.client.get("/apis/admin/session/csrf/",{version:null});return e}async verifyLoginToken(e){let o=await this.client.post("/apis/admin/session/passwordless/login/",{token:e},{version:null});return L(o)}async evaluateRule(e,o,n,s={}){let r=new URLSearchParams;s.raiseForFailingConditions&&r.set("raise_for_failing_conditions","true");let i=await this.client.post(`/api/conversations/${o}/rules/${e}/evaluate?${r.toString()}`,n,{version:"v2"});return L(i.cues)}handleDeepdeskVersionHeaders(e){e.headers.forEach((o,n)=>{let s=n.toLowerCase(),r=s.match(Ci);if(!o||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&o&&a!==o&&w.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(o)}`),this.latestReceivedDeepdeskVersions[i]=o})}};var To=class{constructor(e,o){this.url=e;this.options={timeout:25e3,...o}}eventListeners={};options;timeoutTimer;eventSource;proxyEvent(e){this.eventSource.addEventListener(sr(e),o=>{let{data:n}=o;try{let s=JSON.parse(n);this.emit(e,L(s))}catch{w.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 tS;(e=>{let t;(r=>(r.Started="Started",r.Aborted="Aborted",r.Completed="Completed"))(t=e.AutoflowSessionState||={})})(tS||={});var Eo=class{constructor(e,o={}){this.apiUrl=e;this.client=new Se(e,o)}client;streams={};logger=w;async getCustomMessages(e){let o=await this.client.get(`/sessions/${e}/suggestions`);return L(o.suggestions)}async sendCustomMessage(e,o){let n=await this.client.post(`/sessions/${e}/messages`,z(o));return L(n)}async answerCustomMessage(e,o){await this.client.post(`/sessions/${e}/answers`,z(o))}async getAutoflows(e){let o=await this.client.get(`/sessions/${e}/autoflows`);return L(o.autoflows)}async startAutoflowSession(e){let o=await this.client.post("/autoflow-sessions",z(e));return L(o)}async stopAutoflowSession(e){await this.client.delete(`/autoflow-sessions/${e}`)}openStream(e){return this.streams[e]||(this.streams[e]=new To(`${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 lS,configureStore as cS}from"@reduxjs/toolkit";import{createSlice as oS}from"@reduxjs/toolkit";var pd={startTime:null,stopTime:null},dd=oS({name:"handlingTime",initialState:pd,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(A,()=>pd)}}),{handlingTimeStart:ud,handlingTimeStop:ls,handlingTimeReset:gd}=dd.actions,md=dd.reducer;var fd=(t={})=>{let e={onAuthError:At(!1),...t};return o=>n=>s=>("error"in s&&s.error.message==="Unauthorized"&&o.dispatch(e.onAuthError),n(s))};import{createAsyncThunk as nS,createSlice as sS}from"@reduxjs/toolkit";var cs={list:{keywordMatches:[]},fetchState:"idle",isInitialRequest:null};var pt=nS("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 cs.list;if(!r)throw new Error("No current conversation to fetch pinned messages");return o.getStyleSuggestions({profileCode:r,message:t})}),rS=sS({name:"styleSuggestions",initialState:cs,reducers:{},extraReducers:t=>{t.addCase(pt.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(pt.rejected,e=>{e.fetchState="error"}).addCase(pt.fulfilled,(e,o)=>{e.fetchState="done",Oe(e.list,o.payload)||(e.list=o.payload)}).addCase(Ze,e=>{e.list=cs.list}).addCase(A,()=>cs)}}),hd=rS.reducer;var yd=(t={})=>{let e,o=!0,n={getStyleSuggestions:pt,debounce:500,...t};return s=>r=>i=>{var u;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(!((u=c.conversation.current)==null?void 0:u.id)||!p)return l;let{text:g}=c.input;return g===a&&!o||(clearTimeout(e),g==="")||(e=setTimeout(()=>{o=!1,s.dispatch(n.getStyleSuggestions({text:g}))},t.debounce)),l}};function iS(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var vd=(t={})=>{let e={getTextSuggestions:de,getAutocompleteSuggestions:io,debounce:200,check:Dt,...t},o;return n=>s=>r=>{var f;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,d=(f=l.conversation.current)==null?void 0:f.id,g=r.type===En.toString();if(!d||!c&&!p)return a;let{input:{userCommitted:u}}=l;return iS(u,i)&&!g||(clearTimeout(o),!e.check(l))||(o=setTimeout(()=>{let h=_t(l);h===""?n.dispatch(e.getTextSuggestions("default")):n.dispatch(e.getAutocompleteSuggestions(h))},g?0:e.debounce)),a}};var Sd=pt.fulfilled.toString();function aS(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 _d=t=>e=>o=>n=>{var c;if(n.type!==Sd){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=aS(s,i);n.type===Sd&&l.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:l}})};var pS=lS({activeSuggestion:xl,answer:gc,auth:Nl,autoflows:yp,conversation:Ii,contentTypes:Gl,customMessages:Ep,passwordlessToken:Ap,entities:Ql,knowledgeAssistant:pc,handlingTime:md,info:qa,input:ks.reducer,overlayInput:J.reducer,settings:Ti,profile:vc,search:Ja,summary:sc,styleSuggestions:hd,ui:Tl,rules:Hl,textSuggestions:hl});function xd(t){return cS({reducer:pS,middleware:e=>[...e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI,deepdeskBrokerAPI:t.deepdeskBrokerAPI}},serializableCheck:!1}),fd(),vd({debounce:200}),yd({debounce:500}),_d(t.deepdeskAPI),...t.middleware?t.middleware:[]],preloadedState:t.preloadedState})}var dS=t=>{var e;return((e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())??"unknown"},uS=t=>e=>o=>n=>{var a;let s=e.getState(),r=Cs("inlineSuggestions")(s);switch(n.type){case Te.toString():{let l=Tn(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 At.toString():{!n.payload&&t.emit("logout",void 0);break}case le.toString():{let{start:l,end:c}=s.input.selection;t.emit("select-suggestion",{type:dS(n.payload.suggestion),...n.payload,replace:n.payload.replace==="selection"?{start:l,end:c}:{start:0,end:c}},{mayApplyChanges:!0});break}case Vo.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 Xt.toString():{let l=e.getState(),{text:c,selection:p}=l.input.userCommitted;t.emit("reset",{text:c,selectionAfter:p},{mayApplyChanges:!0});break}case Go.toString():t.emit("select-image",n.payload,{mayApplyChanges:!0}),t.sendEvent("Image attached",{conversationId:s.conversation.current.id,data:{path:n.payload.suggestion.image,title:n.payload.suggestion.title}});break;case ue.fulfilled.toString():n.payload.length>0&&t.sendEvent("entities found",{conversationId:s.conversation.current.id,data:{entities:n.payload}});break;case Ie.fulfilled.toString():t.sendEvent("conversation summarized",{conversationId:s.conversation.current.id,data:{summary:n.payload.summary}});break;case W.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 qo.toString():t.handleKeyDown(n.payload);break;case Ze.toString():t.logSendMessage(n.payload);break;case Wo.toString():t.logSendEditSuggestionMessage(n.payload);break;case $o.toString():t.handleInputChanged(n.payload);break;case ke.fulfilled.toString():t.broadcast(fr,n.payload,!1),t.emit("cues",n.payload);break;default:break}let i=o(n);switch(n.type){case Ze.toString():t.handleAfterSendMessage(n.payload);break;case ao.toString():t.onUpdateShowTabHint(n.payload);break;case ls.toString():t.logHandlingTime();break;case le.toString():{r&&(e.dispatch(me([])),e.dispatch(xe()));break}case me.toString():{r&&n.payload.length>0&&e.dispatch(He(0));break}default:break}return i},bd=uS;function ci(t){return t.toISOString().replace("T"," ").replace("Z","")}function Cd(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:ci(o),timeStop:ci(n)}}function pi(t,e,o){var N,B,O;let{text:n,metrics:{numCharsTyped:s,numCharsPasted:r,numCharsCut:i,numCharsDeleted:a,numPaste:l,agentStartedTypingTimestamp:c,externalTimeTotalSeconds:p,pastes:d,cuts:g,deletions:u,textSuggestions:m,offeredTextSuggestions:f}}=e[t],h=n.length,x=m.reduce((U,{text:F,searchTerm:k})=>U+F.length-(k?k.length:0),0),_=c??Date.now(),b=(Date.now()-_)/1e3+(p||0),v=s/b,I=m.reduce((U,{searchTerm:F})=>U+(F?F.length:0),0);return{conversationId:e.conversation.current.id,source:"agent",text:n,clientVersion:o.version,pastes:d,cuts:g,deletions:u,lenTextTyped:s+I,lenTextTotal:h,lenTextAssisted:x,lenTextPasted:r,lenTextCut:i,lenTextDeleted:a,timeTotalSeconds:b,charsPerSecond:v,numPastes:l,textSuggestionsV2:m,suggestionsCounters:[{source:"gpt",countOffered:f.filter(U=>U.source==="gpt").length}],agentId:(N=e.info.agentInfo)==null?void 0:N.agentId,agentName:(B=e.info.agentInfo)==null?void 0:B.agentName,agentEmail:(O=e.info.agentInfo)==null?void 0:O.agentEmail}}function di(t,e){var r;let o=t.closest(e);if(o)return o;let n=t.getRootNode().host;if(n instanceof HTMLElement)return di(n,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?di(s,e):null}function wd(t,e){return di(t,e)}function Td(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function gS(t){return typeof t=="object"&&t!==null&&"tagName"in t}function ui(t){return gS(t)&&(qe(t)||dn(t))}var Ed=(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{w.warn("[Deepdesk] SessionStorage is blocked by browser")}}});function mS(t){return t.offsetParent!==null}function kd(t){if(!mS(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 gi(t,e,o=100){let n=kd(t);e({isVisible:n});let s=setInterval(()=>{let r=kd(t);r!==n&&(n=r,e({isVisible:n}))},o);return()=>{clearTimeout(s)}}import{jsx as j}from"react/jsx-runtime";var Rd=Ed("showTabHint",!0),ds=class t{static version="10.12.1-beta.2";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 $e(c,{token:r,fetch:i}),this.version=n,this.instanceId=t.count++;let p={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[bd({broadcast:(d,g,u)=>{this.broadcastEvents.send(d,g,u)},emit:(d,g,u)=>this.emit(d,g,u),handleAfterSendMessage:d=>this.handleAfterSendMessage(d),handleInputChanged:d=>this.handleInputChanged(d),handleKeyDown:d=>this.handleKeyDown(d),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:d=>this.logSendMessage(d),logSendEditSuggestionMessage:d=>this.logSendEditMessage(d),onUpdateShowTabHint:d=>Rd.update(d),sendEvent:(d,g)=>this.deepdeskApi.sendEvent(d,g)})]};o&&Object.assign(p,{deepdeskBrokerAPI:new Eo(o)}),this.store=xd(p),this.broadcastEvents=new cd({debug:!0,deepdeskUrl:c,eventMap:Bl(this.store),createCustomChannel:l}),this.store.dispatch(Gt),this.store.dispatch(ao(Rd.value())),this.store.dispatch(Gt({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?(w.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(w.warn("Profile has not been loaded (yet)"),!0):(w.warn("No conversation loaded (yet)"),!0)}login(){return this.store.dispatch(At(null)),this.store.dispatch(Ee()),new Promise(e=>{let o=this.store.subscribe(()=>{let n=this.store.getState();Z(n)&&Rl(n)!=="loading"&&(o(),e())});this.unmountHandlers.push(()=>{o()})})}async isLoggedIn(){return(await this.store.dispatch(Ee())).payload}async setPlatformAgentId(e){try{if((await this.deepdeskApi.client.get("/apis/admin/session/me/",{version:null})).external_id)return;await this.deepdeskApi.client.request("/apis/admin/session/me/",{method:"PATCH",body:JSON.stringify({external_id:e}),version:null})}catch(o){w.warn("Failed to attach user:",o)}}async isConversationSupported(e,o){return(await this.store.dispatch(Ts({sessionId:e,options:o}))).payload}async createConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(Bo(e))).payload}async getConversationBySessionId(e,o){return this.hasConversation()&&this.sessionId()!==e&&this.resetConversation(),(await this.store.dispatch(Fo({sessionId:e,options:o}))).payload}async upsertConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(Es(e))).payload}async postMessages(e){return(await this.store.dispatch(Uo(e))).payload}async updateConversation(e){return(await this.store.dispatch(Ko(e))).payload}resetConversation(){this.store.dispatch(A()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}async getSummary(){let e=await this.store.dispatch(Ie());if(e.error)throw new Error(e.error.message);return e.payload.summary}configure(e){this.store.dispatch(Gt(e))}setVisitorInfo(e){this.store.dispatch(Va(e))}async setAgentInfo(e){await this.store.dispatch(no(e))}async setAgentSettings(e){await this.store.dispatch(ir(e))}async getAgentSettings(){return(await this.store.dispatch(ar())).payload}async refresh(){if(this.shouldAbort())return Promise.resolve();this.inputMediator&&this.handleInputChanged(this.inputMediator.getText());let e=[];return this.store.dispatch(En()),e.push(this.refreshWidgetSuggestions()),Promise.all(e).then(()=>{})}notifyInputChanged(e){this.store.dispatch($o(e))}notifyKeyDown(e){this.store.dispatch(qo(e))}notifyPaste(e,o){this.store.dispatch(Ki({text:e,selectionText:o}))}notifyCut(e){this.store.dispatch(Bi(e))}notifyExternalSuggestion(e){this.store.dispatch(le(e)),this.store.dispatch(xe())}notifyEditSuggestion(e){this.store.dispatch(ml(e.contentType,e.suggestions)),this.store.dispatch(Te({contentType:e.contentType,suggestion:typeof e.index=="number"?e.suggestions[e.index]:null}))}async evaluateRule(e,o={}){let{payload:n,error:s}=await this.store.dispatch(ke({label:e,params:o}));if(s)throw s;return n}handleInputChanged(e){let{overlayCollapsed:o,openOverlayWhenTyping:n}=this.state.ui;o&&n&&this.store.dispatch(je({collapse:!1})),this.inputMediator&&this.store.dispatch(Li({text:e,html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),!this.shouldAbort()&&(this.isMounted||this.store.dispatch(me([])))}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(Fi(jo(e))),e.key!=="Tab"&&!this.settings.showTextSuggestions)return;let c=()=>{o||!a||r&&(e.shiftKey||(this.store.dispatch(Oi()),i||this.stageSelectedSuggestion({inputType:"arrow"}),e.preventDefault()))},p=()=>{o||!a||i&&s<=0||r&&(e.shiftKey||(this.store.dispatch(Hi()),e.preventDefault(),!i&&(this.state.input.selectedSuggestionIndex===-1?this.store.dispatch(Xt()):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(He(-1)),this.state.input.selectedSuggestionIndex!==-1?(this.store.dispatch(He(-1)),this.store.dispatch(Xt()),e.preventDefault()):o||(this.store.dispatch(je({collapse:!0})),this.store.dispatch(Cl(!0)),e.preventDefault());return}case"Tab":{let{userCommitted:d}=this.state.input,g=d.text.substring(0,d.selection.end),{tabCompletionSuggestion:u}=this.state.input;this.store.dispatch(ao(!1)),this.state.input.selectedSuggestionIndex>-1?this.stageSelectedSuggestion({inputType:"tab"}):!i&&this.settings.showTabCompletion&&u&&u.text.startsWith(g)&&(this.store.dispatch(le({text:u.text,suggestion:u,eventMetrics:{inputType:"tab"},replace:"until-selection-end"})),this.store.dispatch(xe())),e.preventDefault();break}default:}}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(Ui()),this.store.dispatch(me([]))}handlingTimeStart(){this.state.handlingTime.startTime||(w.info("Start handling time"),this.store.dispatch(ud()))}handlingTimeStop(){this.state.handlingTime.startTime&&(w.info("Stop handling time"),this.store.dispatch(ls()))}logSendMessage(e){let o=pi("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=pi("overlayInput",this.state,{version:this.version});e&&Object.assign(o,{text:e}),this.store.dispatch(Ni(this.state.overlayInput.metrics))}logHandlingTime(){let e=Cd(this.state,{version:this.version});this.deepdeskApi.sendEventV1("Handling Time",e),this.store.dispatch(gd())}notifySubmit(e={}){this.shouldAbort()||(this.store.dispatch(xe()),this.store.dispatch(Ze(e.text??this.state.input.text)))}stageSelectedSuggestion(e){let o=this.state.input.selectedSuggestionIndex,{textSuggestions:n}=this.state.input;this.store.dispatch(le({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){w.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),w.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]=Tt(o,n);return r.setAttribute("translate","no"),r.dataset.testid=e,s&&r.classList.add(s),this.unmountHandlers.push(()=>{ps(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]=Tt(r,{appendTo:document.body,onMoveStart:()=>{s.style.display="none"}});a.dataset.testid=o,a.style.zIndex="2",a.appendChild(n),this.unmountHandlers.push(()=>{ps(s),l()})}else document.body.appendChild(n);return s}createContainer(e,o=document.body){let n=window.getComputedStyle(o),s=document.createElement("div");return Je(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(()=>{ps(s),s.remove()}),s}storeMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,o=JSON.stringify({text:this.state.input.text,metrics:this.state.input.metrics});window.sessionStorage.setItem(e,o),w.info(`Stored analytics for ${this.conversationId()}`)}catch{}}restoreMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,o=window.sessionStorage.getItem(e);if(!o)return;let n=JSON.parse(o);n.text.trim()===this.state.input.text.trim()?(w.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(ji(n.metrics))):w.warn(`Metrics mismatch, disregarding stored metrics for ${this.conversationId()}`),window.sessionStorage.removeItem(e)}catch{}}mount(e,o={}){if(this.isMounted)throw new Error("[Deepdesk] This instance was already mounted. Make sure to unmount before you remount.");if(!ui(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:d,detectSubmit:g,insertLink:u,inputMediator:m,closestScrollSelector:f,appendOverlayTo:h,inlineSuggestions:E,floatingMenu:x}=o;this.configure({showStyleSuggestions:s,showTabCompletion:r,textSuggestionsCount:a,showMidSentenceSuggestions:l,showSuggestionsBeforePattern:c,showSuggestionsAfterPattern:p,showTextSuggestions:i,insertLink:u,isEmbedded:d,inlineSuggestions:E,floatingMenu:!!x}),o.automaticHandlingTime&&this.setupHandlingTime(e),Je(e),this.inputMediator=m||(qe(e)?new Fe(e):new Kt(e)),this.inputMediator.on("change",({plainText:v})=>{this.notifyInputChanged(v)}),this.inputMediator.on("updated",()=>{this.inputMediator&&this.store.dispatch(zi({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()}))}),this.inputMediator.on("keydown",v=>{this.notifyKeyDown(v)}),this.inputMediator.on("paste",({pastedText:v,selectionText:I})=>{this.notifyPaste(v,I)}),this.inputMediator.on("cut",({selectionText:v})=>{this.notifyCut(v)});let _=f&&wd(e,f)||void 0;if(E){let{customStyles:v,appendOverlayTo:I}=o;if(qe(e))throw new Error("[Deepdesk] Inline suggestion is not supported for textarea yet.");let N=this.createInlineContainer(e,"deepdesk-caret");jt(j(rt,{store:this.store,customStyles:v,children:j(ot,{broadcastEvents:this.broadcastEvents,children:j(Oc,{})})}),N),this.inputMediator.on("caret",O=>{this.store.dispatch(me([])),O?(N.style.display="block",N.style.top=`${O.top}px`,N.style.left=`${O.left}px`):N.style.display="none"});let B=this.overlayContainerFactory("floating-menu",_||e,{appendTo:typeof x=="object"&&"appendOverlayTo"in x?x.appendOverlayTo:I},v==null?void 0:v.floatingMenuRootNode);jt(j(rt,{store:this.store,customStyles:v,children:j(ot,{broadcastEvents:this.broadcastEvents,children:j(Ic,{onLogIn:()=>this.loginViaPopup().catch(O=>w.warn(O.message))})})}),B)}else{let v=this.overlayContainerFactory("deepdesk-tab-completion",_||e,{appendTo:h,closestScrollElement:_,mirrorOverflow:!0,onRemove:()=>this.unmount()},n==null?void 0:n.rootNode),I=this.overlayContainerFactory("deepdesk-suggestions-overlay",_||e,{appendTo:h},n==null?void 0:n.suggestionsRootNode);jt(j(rt,{store:this.store,customStyles:n,children:j(ot,{broadcastEvents:this.broadcastEvents,children:j(dp,{inputElement:e})})}),v),jt(j(rt,{store:this.store,customStyles:n,children:j(ot,{broadcastEvents:this.broadcastEvents,children:j(Vc,{onLogIn:()=>this.loginViaPopup().catch(N=>w.warn(N.message))})})}),I)}jt(j(rt,{store:this.store,customStyles:n,children:j(ot,{broadcastEvents:this.broadcastEvents,children:j(Cc,{})})}),this.createContainer("deepdesk-overlays"));let b;this.inputMediator.on("selection",v=>{clearTimeout(b),v===null?b=setTimeout(()=>{v!==null&&this.store.dispatch(Rs(v))},500):this.store.dispatch(Rs(v))}),this.inputMediator.on("disabled",()=>{var v;(v=this.inputMediator)==null||v.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{g&&this.notifySubmit()}),this.inputMediator.on("blur",()=>this.store.dispatch(Pt(!1))),this.inputMediator.on("focus",()=>this.store.dispatch(Pt(!0))),this.store.dispatch(Mi({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),this.unmountHandlers.push(()=>{this.state.input.text!==""&&(this.store.dispatch(xe()),this.storeMetrics())}),this.whenConversationLoaded(()=>{var v;this.restoreMetrics(),this.refresh(),this.broadcastEvents.setSessionId((v=this.state.conversation.current)==null?void 0:v.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&&w.warn("A widget was already rendered for this instance. Make sure to unmountWidget before rerendering"),!this.shouldRender)return;let{customStyles:n,showImages:s,isEmbedded:r}=o;this.widgetRoot=e,this.configure({showImages:s,isEmbedded:r}),jt(j(rt,{store:this.store,customStyles:n,children:j(ot,{broadcastEvents:this.broadcastEvents,children:j(rd,{onLogIn:()=>this.loginViaPopup().catch(i=>w.warn(i.message))})})}),e),this.whenConversationLoaded(()=>{var i;this.broadcastEvents.setSessionId((i=this.state.conversation.current)==null?void 0:i.sessionId)})}unmountWidget(){this.widgetRoot&&ps(this.widgetRoot),this.widgetRoot=null}setupHandlingTime(e){let o=gi(e,({isVisible:n})=>{n?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),o()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){Td(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfigPromise=null;loadProfileConfig(){return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(this.loadProfileConfigPromise=Promise.resolve().then(async()=>{await this.store.dispatch(fo());let e=Ve(this.state);e&&(await this.store.dispatch(mo()),this.store.dispatch(Gt({showSearch:e.search,showAutoflows:e.autoflows,showCustomMessages:e.customMessages,showImageSearch:e.imageSearch,showEntitiesCommand:e.entitiesCommand,showSummaryCommand:e.summarizer,showKnowledgeSearch:!!e.knowledgeAssistant,recommendTextSuggestions:e.recommendTextSuggestions})))}),this.loadProfileConfigPromise)}async loginViaPopup(e){return new Promise((o,n)=>{let s=new MessageChannel,r=s.port1,i=this.state.settings.adminUrl,a=new URL(e!=null&&e.url?e==null?void 0:e.url:`${i}/platform/sso/`);a.searchParams.append("redirect","/sdk/popup/close.html");let l=!1,c=()=>{p&&!p.closed&&p.close(),window.removeEventListener("message",d),clearInterval(g)};r.onmessage=async u=>{var m,f;if((m=u.data)!=null&&m.jwt)try{await this.deepdeskApi.exchangeTokenForAccessCookie((f=u.data)==null?void 0:f.jwt),await this.isLoggedIn(),this.broadcastEvents.send(co),l=!0,s.port1.close(),o()}catch(h){console.error(h),n(h)}finally{l=!0,c()}};let p=window.open(a.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");p===null&&n(new Error("Popup blocked by browser"));let d=async u=>{var m;if(u.origin===a.origin)switch((m=u.data)==null?void 0:m.type){case"deepdesk-popup-loaded":{try{let f=JSON.stringify({type:"deepdesk-popup-create-channel"});p==null||p.postMessage(f,a.origin,[s.port2])}catch(f){w.error("Error posting message to popup",f),n(f)}break}case"deepdesk-popup-error":{c(),u.data.message==="Timeout"&&w.warn("Popup timed out. Check if the account's platform url is configured correctly."),n(new Error(u.data.message));break}}};window.addEventListener("message",d);let g=setInterval(()=>{p&&!p.closed||(c(),l||n(new Error("Popup closed by user")))},200);this.unmountHandlers.push(c)})}async checkForTrialMode(e){try{let{account:o}=await this.deepdeskApi.getPlatformConfig();if(!o.isTrial){this.shouldRender=!0;return}if(w.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;w.info(n),this.shouldRender=!1}}async refreshWidgetSuggestions(){if(!this.widgetRoot||this.shouldAbort())return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let o=Ln(this.state);try{o.forEach(({type:n})=>{n==="entities"?this.store.dispatch(ue()):this.store.dispatch(de(n))})}catch(n){this.handleError(n)}}};async function fS(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 hS(t,e,o={}){let n=o.replace?ct(t,o.replace.start,o.replace.end):wo(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(`
10
- `).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?ct(t,o.selectionAfter.start,o.selectionAfter.end):(n.collapse(!1),n),a=window.getSelection();a==null||a.removeAllRanges(),a==null||a.addRange(i)}if(!s)return;s.scrollIntoView&&s.scrollIntoView({block:"nearest",inline:"nearest"})}finally{s&&s.remove()}})}function yS(t){let e=document.createElement("template");return e.innerHTML=t.replace(/(\[([^\]]+)])\(([^)]+)\)/g,'<a href="$3" target="_blank" rel="noopener noreferrer">$2</a>'),e.content}function vS(t){let e=document.createDocumentFragment();return t.split(`
11
- `).forEach((o,n)=>{n>0&&e.appendChild(document.createElement("br"));let s={index:0},r=0;for(;s=o.slice(r).match(/(\[([^\]]+)])\(([^)]+)\)/);){let i=document.createElement("a");i.href=s[3],i.setAttribute("target","_blank"),i.setAttribute("rel","noopener noreferrer"),i.appendChild(document.createTextNode(s[2])),e.appendChild(document.createTextNode(o.slice(r,r+s.index))),e.appendChild(i),r=r+s.index+s[0].length}e.appendChild(document.createTextNode(o.slice(r)))}),e}function Id(t,e){return!t.contains(e)||e===t?null:e.parentNode===t?e:Id(t,e.parentNode)}async function SS(t,e,{isBlock:o,isHTML:n}={}){let s;t.dispatchEvent(new InputEvent("beforeinput",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0}));let r=()=>{let i=t.ownerDocument.defaultView??window,a=i.getSelection();if((!a||a.rangeCount===0)&&(t.focus(),a=i.getSelection()),!a||a.rangeCount===0)return;let l=a.getRangeAt(0);if(!l)return;s=document.createElement("span"),l.insertNode(s);let c=n?yS(e):vS(e);if(o){let p=l.startContainer===t?t.childNodes[l.startOffset]:l.startContainer,d=Id(t,p)??t.firstChild;t.insertBefore(c,(d==null?void 0:d.nextSibling)??null)}else l.insertNode(c),l.collapse(!1)};return Promise.resolve(r()).then(()=>{if(t.dispatchEvent(new InputEvent("input",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0})),t.focus(),!!s)try{s.scrollIntoView&&s.scrollIntoView({block:"nearest",inline:"nearest"})}finally{s&&s.remove()}})}function _S(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}async function xS(t,e,o){await new $e(t).authenticateWithKey(e,o)}async function bS(t){let o=await new Se(t).get("/platform/config/",{version:null});return L(o)}async function CS(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 wS(t,e){let o=await CS(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{H as Card,Kt as ContentEditableInput,$e as DeepdeskAPI,ds as DeepdeskSDK,Se as HTTPClient,Be as InputMediator,Ge as InputType,hs as KeyboardHint,ys as Label,Oo as Locale,Ne as Section,Ss as SectionList,ge as Sources,P as Suggestion,re as SuggestionList,Fe as TextAreaInput,ht as ToggleButton,wS as attachFile,xS as authenticateWithKey,wo as createFullRange,Tt as createOverlayContainer,ct as createRangeFromOffsets,eo as escapeHTML,bS as fetchPlatformConfig,_S as formatTextMarkup,rs as getRangeOffsets,is as getRangeText,SS as insertCKEditor,Et as isHTML,ui as isSupportedInputElement,hS as updateContentEditable,fS as updateTextArea,y as useStyles,gi as waitForElementVisibilityChange};
7
+ c32.4,32.4,47.8,70,47.8,115.2v70h11.9c9.4,0,17.9,3.4,24.7,10.2C462.1,250,465.5,257.7,465.5,267.9z`})})});import{jsx as kc}from"react/jsx-runtime";var wh={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},Ic=({className:t,color:e})=>kc("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:kc("path",{d:"M172.03 0.0199966H0V86.03C47.5 86.03 86 124.54 86 172.04C86 124.54 124.51 86.03 172.01 86.03C219.51 86.03 258.03 124.54 258.03 172.04C258.03 219.54 219.52 258.05 172.01 258.05C124.5 258.05 86 219.54 86 172.04C86 219.54 47.5 258.05 0 258.05V344.06H172.03C267.04 344.06 344.06 267.04 344.06 172.03C344.06 77.02 267.04 0 172.03 0V0.0199966Z",fill:wh[e||"pink"]})});var Rc={root:"_root_1tvv4_1",text:"_text_1tvv4_18",isLoggedIn:"_isLoggedIn_1tvv4_25",isLoggedOut:"_isLoggedOut_1tvv4_29",icon:"_icon_1tvv4_39",logo:"_logo_1tvv4_44",lock:"_lock_1tvv4_49"};var Ar={};V(Ar,{enUS:()=>Th,nlNL:()=>Eh});var Th={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},Eh={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as Rh}from"react-redux";import{jsx as Lr,jsxs as Pc}from"react/jsx-runtime";var Ac=({onLogIn:t})=>{let e=T(Ar),o=C("floatingMenu"),n=C("productName"),s=Rh(),r=Ih(Z),i=y("FloatingMenu",Rc);if(r===null||o===!1)return null;let a=()=>{r===!0?s(G(!0)):t()};return Pc("button",{className:kh(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[Lr("div",{className:i.text,children:e(r?"search":"signin",{productName:n})}),Pc("div",{className:i.icon,children:[Lr(Ic,{className:i.logo,color:"pink"}),r===!1&&Lr(Ec,{className:i.lock})]})]})};import{useEffect as Wh,useRef as $h}from"react";import{connect as Gh,useDispatch as Xh,useSelector as Fn}from"react-redux";function Ot(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 jh,useMemo as Vh}from"react";import{Interweave as Lh}from"interweave";import{useEffect as Mh,useMemo as Nh,useRef as Oh}from"react";import{useDispatch as Dh,useSelector as Hh}from"react-redux";import{useEffect as Ph}from"react";function Lc(t,e,o){Ph(()=>{let n=t.current;return n?(n.addEventListener(e,o),()=>{n.removeEventListener(e,o)}):()=>{}},[t,e,o])}var Mc={root:"_root_4u430_1",actions:"_actions_4u430_8",badge:"_badge_4u430_15",formattedText:"_formattedText_4u430_19"};import{jsx as Hn,jsxs as zh}from"react/jsx-runtime";var Bh=["search","personal-collection-search","search-autocomplete"];function Fh(t,e,o,n={}){let s="";return Bh.includes(e)?s=wa(Vs(t,o,{stripAgentPart:!0}),n.searchKeywords??[o]):s=Vs(t,o,n),n.placeholders===!0&&(s=Ta(s)),s}var Kh=()=>{},Uh=({index:t,selected:e,suggestion:o,onFeedback:n})=>{let s=C("inlineSuggestions"),r=Hh(St),i=Dh(),a=y("TextSuggestion",Mc),l=Oh(null);Mh(()=>{let p=setTimeout(()=>{i(Hi({text:o.text,suggestion:o}))},500);return()=>{clearTimeout(p)}},[o]),Lc(l,"click",()=>{i(Be(t)),i(le({suggestion:o,text:o.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let c=Nh(()=>Fh(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:zh("div",{className:a.root,onMouseEnter:()=>i(Be(t)),children:[Hn(M,{ref:l,as:"button","data-testid":"suggestions-overlay-item",selected:e,onClick:Kh,children:Hn(Lh,{containerTagName:"div",noWrap:!1,tagName:"span",className:a.formattedText,content:c})}),e&&n&&Hn("div",{className:a.actions,children:Hn(Sn,{onFeedback:()=>n(o),suggestion:o.text})})]})},Nc=Uh;import{jsx as Oc}from"react/jsx-runtime";var qh=({onFeedback:t,suggestions:e,selectedIndex:o,reverse:n})=>{let s=Vh(()=>{let r=e.map((i,a)=>Oc(Nc,{index:a,selected:a===o,suggestion:i,onFeedback:t},`${i.text}-${i.source}`));return n?r.reverse():r},[e,o,n]);return Oc(jh,{children:s})},Bn=qh;var Dc={root:"_root_otdbu_1",paper:"_paper_otdbu_11"};import{jsx as Kn}from"react/jsx-runtime";var Zh=({textSuggestions:t,selectedIndex:e})=>{let o=$h(null),n=y("InlineSuggestionsOverlay",Dc),s=Fn(Ot),r=Xh(),i=Fn(Z),a=Fn(vt),l=Fn(Rn),c=C("showTextSuggestions");return bt(()=>{r(Ve({collapse:!0,skipWhenInputFocus:!0}))}),Wh(()=>{let p=o.current;if(!p||!p.parentElement)return;p.parentElement.style.left="0px";let d=p.getBoundingClientRect();p.parentElement.style.left=`${Math.min(window.innerWidth-4-d.right,0)}px`}),l||!s||!c||t.length===0||i!==!0||a===!1?null:Kn("div",{className:n.root,"data-variant":"inline",children:Kn("div",{ref:o,className:n.paper,children:Kn(re,{children:Kn(Bn,{suggestions:t,selectedIndex:e})})})})},Qh=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),Hc=Gh(Qh)(Zh);import{Provider as Jh}from"react-redux";import{jsx as Un}from"react/jsx-runtime";var Yh=({children:t})=>{let o=C("locale").replace("-","");return Un(Hs.Provider,{value:o,children:t})},ey=({store:t,customStyles:e={},children:o})=>Un(Jh,{store:t,children:Un(Yh,{children:Un(qt.Provider,{value:e,children:o})})}),rt=ey;import Hr from"classnames";import{useEffect as uy,useRef as gy,useState as my}from"react";import{connect as fy,useDispatch as hy,useSelector as So}from"react-redux";import{useState as ty}from"react";function Bc(t,e){let[o,n]=ty(()=>{if(typeof window>"u")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return w.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){w.error(i)}}]}import sy from"classnames";import{Fragment as ry,useCallback as Nr,useMemo as Kc}from"react";var Mr={};V(Mr,{enUS:()=>oy,nlNL:()=>ny});var oy={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"}]}]},ny={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 Fc={root:"_root_1vfca_1",anchor:"_anchor_1vfca_6",anchorButton:"_anchorButton_1vfca_11"};import{jsx as zn,jsxs as Uc}from"react/jsx-runtime";var Or=(t,e,o)=>n=>zn("button",{className:t.anchorButton,type:"button",value:e,onClick:o,children:n},e),iy=({className:t,loginUrl:e,isEmbedded:o,onSnooze:n,onLogIn:s})=>{let r=T(Mr),i=ie(),a=y("Login",Fc),l=C("productName"),c=Nr(h=>{h.preventDefault(),n&&n(parseInt(h.target.value,10))},[]),p=Nr(h=>{h.preventDefault(),i.send(At,!0)},[e]),d=Kc(()=>h=>zn("a",{onClick:x=>{x.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:h},"login"),[e]),g=Nr(h=>zn("button",{type:"button",className:a.anchorButton,onClick:p,children:h},"prompt"),[p]),{min:u,hour:m,day:f}=Kc(()=>({min:Or(a,60*10,c),hour:Or(a,60*60,c),day:Or(a,60*60*12,c)}),[]);return Uc("div",{className:sy(t,a.root),children:[r("loginPlease",{login:o?g:d,productName:l}),n&&Uc(ry,{children:[zn("br",{}),r("snooze",{min:u,hour:m,day:f})]})]})},jn=iy;import{useDispatch as ay}from"react-redux";var zc={root:"_root_1g8fi_1",text:"_text_1g8fi_19"};import{jsx as jc,jsxs as cy}from"react/jsx-runtime";var ly=({title:t})=>{let e=y("SearchTrigger",zc),o=ay();return cy("button",{type:"button",className:e.root,onClick:()=>o(G(!0)),children:[jc(kt,{}),jc("span",{className:e.text,children:t})]})},Vc=ly;var Dr={};V(Dr,{enUS:()=>py,nlNL:()=>dy});var py={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"}]},dy={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 qc={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 q,jsxs as _o}from"react/jsx-runtime";var yy=({textSuggestions:t,selectedIndex:e,onLogIn:o})=>{let n=y("SuggestionsOverlay",qc),s=T(Dr),r=So(Ot),i=Li(),a=hy(),l=gy(null),c=C("searchTriggerKey"),p=C("productName"),d=So(Rn),g=So(Z),u=So(vt),[m,f]=my(null),h=C("showSearch"),E=C("showTextSuggestions"),x=C("adminUrl"),_=C("isEmbedded"),[b,v]=Bc("dd-snooze-until-ms",0),R=d||b>Date.now(),N=So(k=>k.input.text),B=t.filter(k=>k.source!=="gpt").length,D=()=>{R&&v(0),a(Tl(!R))},U=k=>{a(W({name:"suggestion feedback",data:{text:k.text,source:"overlay",context:N},options:{includeConversationData:!0}}))},F=k=>{let ne=Date.now()+k*1e3;v(ne),w.info(`Snooze until: ${new Date(ne)}`),a(Ve({collapse:!0}))};return uy(()=>{B===0&&f(null)},[t,B]),bt(()=>{a(Ve({collapse:!0,skipWhenInputFocus:!0}))}),g===null||u===!1?null:g===!1?_o("div",{ref:l,className:Hr(n.root,{[n.isCollapsed]:R}),children:[!R&&_o("div",{className:n.triggers,children:[q("div",{style:{flex:1}}),q("div",{className:n.triggersRight,children:q(ft,{className:n.toggleButton,title:s("collapse"),onClick:D,isCollapsed:!1})})]}),q("div",{className:n.toggleButtonWrapper,children:q(ft,{className:n.toggleButton,title:s("open",{productName:p}),onClick:D,isCollapsed:!0})}),q("div",{className:n.collapsible,children:q(jn,{loginUrl:x,isEmbedded:_,onLogIn:o,onSnooze:F})})]}):!i||!r?null:_o("div",{ref:l,className:Hr(n.root,{[n.isCollapsed]:R}),children:[!R&&_o("div",{className:n.triggers,children:[q("div",{style:{flex:1},children:h&&q("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>f(s(wn()?"searchHintMac":"searchHintWindows",{searchTriggerKey:c.toUpperCase()})),onMouseLeave:()=>f(null),children:q(Vc,{title:s("search")})})}),_o("div",{className:n.triggersRight,onFocus:()=>{},children:[q("div",{className:Hr(!m&&n.hintsHidden,n.hints),children:m}),q(ft,{className:n.toggleButton,title:s("collapse"),onClick:D,isCollapsed:!1})]})]}),q("div",{className:n.toggleButtonWrapper,children:q(ft,{className:n.toggleButton,title:s("open",{productName:p}),onClick:D,isCollapsed:!0})}),B>0&&E&&q("div",{className:n.collapsible,onFocus:()=>{},children:q(re,{children:q(Bn,{onFeedback:U,suggestions:t,selectedIndex:e,reverse:!0})})})]})},vy=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),Wc=fy(vy)(yy);import Gr from"classnames";import{Interweave as rv}from"interweave";import{useCallback as iv,useEffect as av,useMemo as up,useRef as lv}from"react";import{connect as cv}from"react-redux";import{cloneElement as Sy}from"react";var _y=["div","span","mark","strong","b","i","u","em"];function Br(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(_y.includes(s)){let i=Array.isArray(n.props.children)?n.props.children:[n.props.children];return[...t.slice(0,t.length-1),Sy(n,{children:Br(i,e,o+1)})]}return[...t,...e]}function We(t){return t.tagName.toLowerCase()==="textarea"}var $c={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 Hy from"classnames";import{Matcher as By}from"interweave";import{useEffect as Fy,useMemo as Ky}from"react";function Gc(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function Vn(t){return e=>{t.forEach(o=>{typeof o=="function"?o(e):o!=null&&(o.current=e)})}}function Xc(t){return t!=null}import ep from"classnames";import{createRef as Py,useCallback as Kr,useMemo as Ay,useRef as Ly,useState as My}from"react";import{useState as xy,useLayoutEffect as by}from"react";var Cy=["bottom","height","left","right","top","width"],wy=(t={},e={})=>Cy.some(o=>t[o]!==e[o]),Ae=new Map,Zc,Qc=()=>{let t=[],e=[];Ae.forEach((o,n)=>{if(n instanceof Element&&!n.isConnected){e.push(n);return}let s=n.getBoundingClientRect();wy(s,o.rect)&&(o.rect=s,t.push(o))}),e.forEach(o=>{Ae.delete(o)}),t.forEach(o=>{o.callbacks.forEach(n=>n(o.rect))}),Zc=window.requestAnimationFrame(Qc)};function Ty(t,e){return{observe(){let o=Ae.size===0;if(Ae.has(t)){let n=Ae.get(t);n.callbacks.push(e),n.rect&&e(n.rect)}else Ae.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});o&&Qc()},unobserve(){let o=Ae.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||Ae.delete(t),Ae.size||cancelAnimationFrame(Zc)}}}}function Fr(t){let[e,o]=xy(null);return by(()=>{if(!t.current)return;let n=Ty(t.current,s=>{o(s)});return n.observe(),()=>{n.unobserve()}},[t]),e}import{useContext as Ey,useLayoutEffect as ky,useState as Iy}from"react";import{createPortal as Ry}from"react-dom";var Jc={root:"_root_1jq08_1"};var Yc=({children:t})=>{let[e,o]=Iy(null),n=Ey(qt);return ky(()=>{let s=document.createElement("div");return Ye(s),s.classList.add(Jc.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?Ry(t,e):null};var ye={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 Ur}from"react/jsx-runtime";var qn=(t=!1)=>{let[e,o]=My(t),n=Kr(()=>o(!0),[]),s=Kr(()=>o(!1),[]),r=Kr(()=>o(a=>!a),[]),i=Ly(null);return{opened:e,open:n,close:s,toggle:r,triggerRef:i}};function zr(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 Wn=({className:t,triggerRef:e,boundaryRef:o=Py(),position:n="above",align:s="center",children:r,toStyle:i=zr,...a})=>{let l=Fr(e),c=Fr(o),p=Ay(()=>i(l,c,0),[l,c]);return Ur(Yc,{children:Ur("div",{className:ep(ye.ref,{[ye.positionAbove]:n==="above",[ye.positionBelow]:n==="below",[ye.positionLeft]:n==="left",[ye.positionRight]:n==="right",[ye.alignStart]:s==="start",[ye.alignCenter]:s==="center",[ye.alignEnd]:s==="end"}),style:p,...a,role:"dialog",children:Ur("div",{className:ep(t,ye.root),children:r})})})};import Ny from"classnames";import{forwardRef as Oy,useRef as Dy}from"react";import{jsx as tp}from"react/jsx-runtime";var $n=Oy(({className:t,children:e,...o},n)=>{let s=Dy(null),r=y("TabCompletion",be);return tp("div",{ref:Vn([s,n]),className:Ny(t,r.popoverContentContainer),...o,children:tp("div",{className:r.popoverContent,children:e})})});import{jsx as xo,jsxs as jy}from"react/jsx-runtime";var Uy=t=>e=>{let o=zr(e);return"top"in o&&(o.width=t.width-(e.left-t.left)-10),o},zy=({inputElement:t,boundaryRef:e,inputStyle:o,children:n,suggestion:s})=>{let r=y("TabCompletion",be),i=qn(),a=Ky(()=>Uy(t.getBoundingClientRect()),[t]),[l,c]=un(t);return Fy(()=>{c?i.open():i.close()},[c]),jy("span",{children:[xo("mark",{ref:Vn([l,i.triggerRef]),className:Hy(r.matchKeyword,{[r.hover]:c}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:n}),i.opened&&xo(Wn,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:xo($n,{style:o,children:xo("div",{className:r.hintText,children:s})})})]})},Gn=class extends By{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${Gc(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(Xc);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 xo(zy,{inputElement:o.inputElement,suggestion:o.suggestion,inputStyle:o.inputStyle,boundaryRef:o.boundaryRef,children:e},`keyword_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import $r from"classnames";import{Matcher as Jy}from"interweave";import{createRef as Yy,forwardRef as ev,useCallback as tv,useEffect as cp,useRef as pp,useState as dp}from"react";import{useDispatch as ov}from"react-redux";import{jsx as op}from"react/jsx-runtime";var np=()=>op("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:op("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 Vy,useEffect as rp,useState as ip}from"react";import{useDispatch as qy,useSelector as ap}from"react-redux";import Wy from"lodash.debounce";var sp={root:"_root_1muu8_1",content:"_content_1muu8_7"};function Xn(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 jr(t){return t.replace("https://www.","").replace("https://","")}import{jsx as it,jsxs as Vr}from"react/jsx-runtime";var $y=3,Gy=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),Xy=({onSelectLink:t,onDismiss:e,placeholder:o,visitUrlText:n,linkCount:s=$y})=>{let r=y("LinkSearch",sp),[i,a]=ip(""),l=qy(),c=ap(kn("url")),p=ap(Qa("URL",Gy)),[d,g]=ip(p.length-1),u=C("fallbackImage"),m=x=>{let _=x.target;a(_.value)},f=(x,_)=>{x.stopPropagation(),x.preventDefault(),window.open(_,"_blank")},h=x=>{var v;let _=d-1<0?p.length-1:d-1,b=d+1===p.length?0:d+1;x.code==="Escape"&&(a(""),e()),x.code==="ArrowUp"&&g(_),x.code==="ArrowDown"&&g(b),x.code==="Enter"&&t(((v=p[d])==null?void 0:v.text)||i)},E=Vy(Wy(x=>{l(tt({query:x,type:"URL",tags:["link-search"]}))},300),[]);return rp(()=>{i&&E(i)},[i]),rp(()=>()=>{l(bn())},[]),Vr("div",{className:r.root,children:[it(re,{withDivider:!0,children:(i?p:c).slice(0,s).map((x,_)=>it(M,{selected:d===_,onClick:()=>t(x.text),"data-testid":"linksearch-suggestion",children:Vr(O,{children:[it(O.Image,{src:Xn(x,"small",u||void 0),title:x.title||x.text}),Vr(O.Content,{className:r.content,cropText:!0,children:[it(O.Title,{children:x.title||jr(x.text)}),x.title&&jr(x.text)]}),it(M.Actions,{children:it(M.ActionButton,{label:n,onClick:b=>f(b,x.text)})})]})},x.text))}),it(uo,{value:i,onChange:m,autoFocus:!0,placeholder:o,onKeyUp:h})]})},lp=Xy;var qr={};V(qr,{enUS:()=>Zy,nlNL:()=>Qy});var Zy={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}]},Qy={insertLink:[{type:0,value:"Voeg link toe"}],linkInputPlaceholder:[{type:0,value:"Zoek, typ of plak link"}],visitUrl:[{type:0,value:"Bekijk"}]};import{jsx as ve,jsxs as Wr}from"react/jsx-runtime";var nv=ev((t,e)=>{let o=y("TabCompletion",be);return ve("mark",{ref:e,className:$r(o.matchSelection)},"selection-start")}),sv=({startRef:t,boundaryRef:e,inputStyle:o,inputElement:n,children:s})=>{let r=T(qr),i=y("TabCompletion",be),a=pp(null),l=pp(null),[c,p]=dp(null),d=ov(),g=qn(document.activeElement===n),[u]=dp(()=>document.createRange());g.triggerRef.current=u,cp(()=>()=>u.detach(),[]),cp(()=>{let f=t.current,h=a.current;!f||!h||(u.setStart(f,0),u.setEnd(h,0))},[t.current,a.current]),bt(()=>{g.close()});let m=tv(f=>{let h=u.toString(),E=/^http(s?):\/\//.test(f)?f:`https://${f}`;d(Wo({text:`[${h}](${E})`,replace:"selection"}))},[]);return Wr("span",{children:[ve("mark",{ref:a,className:$r(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":g.opened?"true":"false",children:s}),g.opened&&ve(Wn,{className:i.popoverRoot,triggerRef:g.triggerRef,boundaryRef:e,position:"above",align:"start",children:Wr($n,{style:o,ref:l,children:[ve("div",{className:$r(i.selectionOptions,{[i.selectionOptionsIsHidden]:c!==null}),children:Wr("button",{type:"button",tabIndex:c===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>p("insertLink"),children:[ve(np,{}),ve("span",{children:"\xA0"}),ve("span",{children:r("insertLink")})]})}),c==="insertLink"&&ve(lp,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:m,onDismiss:()=>{p(null),g.close()}})]})})]},"selection-end")},Zn=class extends Jy{charCount=0;foundIndex=0;startRef=null;props;onBeforeParse(e,o){return this.props=o,this.charCount=0,this.startRef=Yy(),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?ve(nv,{ref:this.startRef}):ve(sv,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as pv}from"react-redux";import{jsx as Dt,jsxs as gv}from"react/jsx-runtime";var dv=({enabled:t,content:e,tabText:o,showTabHint:n,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:l})=>{let c=y("TabCompletion",$c),p=C("insertLink"),d=C("showMidSentenceSuggestions"),g=C("inlineSuggestions"),u=mn(a),m=lv(null),f=pv(Z);av(()=>{We(a)&&u&&fn(a,u)},[u]);let h=iv(_=>{if(!s||!o)return _;let b=[Dt("span",{className:c.resetIndent,children:"\u200B"},"u200B"),Dt("span",{"data-testid":"tab-completion",className:Gr(c.tabText,c.resetIndent),"data-source":l,children:o},"tabText")];return n&&b.push(Dt("span",{className:Gr(c.hint,c.resetIndent),children:Dt(hs,{keyCode:"tab"},"tabHint")})),Br(_,b)},[s,o,n]),E=up(()=>{let _=[];return p&&_.push(new Zn("selection")),_.push(new xt("placeholders")),r&&_.push(new Gn("keywords")),_},[g,p,r]),x=up(()=>{let _=window.getComputedStyle(a);return{"--dd-color":_.color,"--dd-font-size":_.fontSize,"--dd-font-family":_.fontFamily,"--dd-font-variant":_.fontVariant}},[]);return!t||!f?null:gv("div",{ref:_=>{_!=null&&_.parentElement&&(m.current=_==null?void 0:_.parentElement)},className:c.root,style:x,children:[Dt(rv,{tagName:"span",containerTagName:"div",className:Gr(c.container,c.agentText),disableLineBreaks:We(a),content:e||"\u200B",onAfterParse:h,matchers:E,selection:u,keywordMatches:i,inputElement:a,inputStyle:x,boundaryRef:m,inlineSuggestionsOnlyAtEnd:!d}),Dt("br",{})]})},uv=({input:t,ui:e,settings:o,styleSuggestions:n,conversation:s})=>{var f;let{tabCompletionSuggestion:r}=t,i=(r==null?void 0:r.text)||"",a=(r==null?void 0:r.source)||"",l=t.html??to(t.text),c=i.indexOf(t.text)===0?i.slice(t.text.length):"",{showTabHint:p}=e,{isSupported:d}=s,{showTabCompletion:g,visible:u,showStyleSuggestions:m}=o;return{showTabHint:p,showStyleSuggestions:m,showTabCompletion:g,content:l,tabText:c,source:a,keywordMatches:((f=n.list)==null?void 0:f.keywordMatches)??[],enabled:u&&d!==!1}},gp=cv(uv)(dv);import tS from"classnames";import{useEffect as oS}from"react";import{useDispatch as nS,useSelector as Q}from"react-redux";import{createAsyncThunk as bo,createSlice as mv}from"@reduxjs/toolkit";var mp={list:[],fetchState:"idle",isInitialRequest:null},hp=t=>t.autoflows.list||[],fp=t=>e=>{var o;return(o=e.list)==null?void 0:o.find(n=>n.triggerPayload===t)},Le=bo("autoflows/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getAutoflows(t)}),Xr=bo("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(Le(t.platformSessionId))}),Zr=bo("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(Le(t.platformSessionId))}),fv=mv({name:"autoflows",initialState:mp,reducers:{},extraReducers:t=>{t.addCase(Xr.pending,(e,o)=>{let n=fp(o.meta.arg.triggerPayload)(e);n.state="Started",n.isBusy=!0}),t.addCase(Zr.pending,(e,o)=>{let n=fp(o.meta.arg.triggerPayload)(e);n.state="Aborted",n.isBusy=!0}),t.addCase(Le.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}),t.addCase(Le.rejected,e=>{e.fetchState="error"}),t.addCase(Le.fulfilled,(e,o)=>{e.list=o.payload,e.fetchState="done"}),t.addCase(P,()=>mp)}}),yp=bo("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(Le(t))}),s.on("sessionCompleted",()=>{o(Le(t))})}),vp=bo("autoflows/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),Sp=fv.reducer;import{createAsyncThunk as wo,createSlice as hv}from"@reduxjs/toolkit";var _p={list:[],fetchState:"idle",isInitialRequest:null,sentSuggestions:[],errorSuggestions:[],answeredSuggestions:[]},xp=t=>t.customMessages.list,bp=t=>e=>!!e.customMessages.sentSuggestions.find(o=>o===t),Cp=t=>e=>!!e.customMessages.answeredSuggestions.find(o=>o===t),wp=t=>e=>!!e.customMessages.errorSuggestions.find(o=>o===t),Co=wo("customMessages/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getCustomMessages(t)}),Qn=wo("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)}),Jn=wo("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)}),Tp=hv({name:"customMessages",initialState:_p,reducers:{onCustomMessage(t,e){Array.isArray(e.payload)?t.list=e.payload:t.list=[e.payload]}},extraReducers:t=>{t.addCase(Co.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(Co.rejected,e=>{e.fetchState="error"}).addCase(Co.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload||[]}).addCase(Qn.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.errorSuggestions=e.errorSuggestions.filter(n=>o.meta.arg.suggestion.text!==n)}).addCase(Qn.rejected,(e,o)=>{let n=e.sentSuggestions.indexOf(o.meta.arg.suggestion.text);e.errorSuggestions.push(...e.sentSuggestions.splice(n,1))}).addCase(Jn.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.answeredSuggestions.push(o.meta.arg.suggestion.text)}).addCase(Jn.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(P,()=>_p)}}),Ep=wo("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(Tp.actions.onCustomMessage(r))})}),kp=wo("customMessages/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),Ip=Tp.reducer;import{createAsyncThunk as Rp,createSlice as yv}from"@reduxjs/toolkit";var vv={token:null,accountUrl:null,interval:null},Pp=t=>e=>{let{passwordlessToken:{token:o,accountUrl:n}}=e;return o&&n?`${n}/apis/admin/session/passwordless/login/?token=${o}&redirect=${t}`:null},Qr=Rp("passwordlessToken/getTemporaryPasswordlessToken",async(t,e)=>{let{deepdeskAPI:o}=e.extra,n=await o.requestPasswordlessToken();return{accountUrl:o.client.baseUrl,token:n}}),Jr=Rp("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:o=1e3*60*10}=t,{dispatch:n}=e;return n(Qr()),setInterval(()=>n(Qr()),o)}),Ap=yv({name:"passwordlessToken",initialState:vv,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Qr.fulfilled,(e,o)=>{e.token=o.payload.token,e.accountUrl=o.payload.accountUrl}),t.addCase(Jr.fulfilled,(e,o)=>{e.interval=o.payload})}}),{stopPollPasswordlessToken:Lp}=Ap.actions,Mp=Ap.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 Iv}from"react";import{connect as Rv}from"react-redux";import Tv from"classnames";import{Fragment as Ev}from"react";import Sv from"classnames";var Op={root:"_root_838fd_1"};import{jsx as xv}from"react/jsx-runtime";var _v=({className:t,children:e})=>{let o=y("Unicode",Op);return xv("span",{className:Sv(t,o.root),children:e})},Dp=_v;var Hp={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 Yr={};V(Yr,{enUS:()=>bv,nlNL:()=>Cv});var bv={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"}]},Cv={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 at,jsxs as Yn}from"react/jsx-runtime";var kv=({disabled:t,state:e,displayName:o,description:n,onStartAutoflow:s,onStopAutoflow:r})=>{let i=y("Autoflow",Hp),a=T(Yr),l=e==="Started"?"stop":"start",c=l==="start"?"\u25B6":l==="stop"?"\u25FC":"";return Yn(M,{className:Tv(i.root,{[i.isDisabled]:t,[i.isCompleted]:e==="Completed",[i.isAborted]:e==="Aborted",[i.isStarted]:e==="Started"}),children:[at(O,{children:Yn(O.Content,{children:[Yn(O.Title,{children:[e&&at("span",{className:i.stateBadge,children:a(e)}),o]}),at("span",{children:n})]})}),at(M.Actions,{fixed:e==="Started",children:at(M.ActionButton,{primary:!0,className:l==="start"?i.buttonStart:i.buttonStop,onClick:e==="Started"?r:s,disabled:t,label:Yn(Ev,{children:[at(Dp,{children:c})," ",at("span",{children:a(l)})]})})})]})},Bp=kv;import{jsx as Fp}from"react/jsx-runtime";var Pv=(t,e)=>{let o=e.filter(n=>n.state==="Started");return o.length>0?o.indexOf(t)===-1:!1},Av=({autoflows:t,onStartAutoflow:e,onStopAutoflow:o,platformSessionId:n})=>Fp(Iv,{children:t.map(s=>Fp(Bp,{displayName:s.displayName,description:s.description,disabled:s.isBusy||Pv(s,t),state:s.state,onStartAutoflow:()=>e({platformSessionId:n,triggerPayload:s.triggerPayload}),onStopAutoflow:()=>o({platformSessionId:n,triggerPayload:s.triggerPayload})},s.displayName))}),Lv=({autoflows:t,conversation:e})=>{var o;return{autoflows:t.list,platformSessionId:(o=e.current)==null?void 0:o.sessionId}},Mv={onStartAutoflow:Xr,onStopAutoflow:Zr},Kp=Rv(Lv,Mv)(Av);import Nv from"classnames";import{useCallback as Up}from"react";import{useDispatch as Ov,useSelector as es}from"react-redux";var Me={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 $e,jsxs as ts}from"react/jsx-runtime";var Dv=({suggestion:t})=>{let e=T(et),o=Ov(),n=es(bp(t.text)),s=es(Cp(t.text)),r=es(wp(t.text)),i=es(Bo),{replyOptions:a}=t,l=Up(p=>{p.preventDefault(),p.stopPropagation(),!(n||!i)&&o(Qn({platformSessionId:i,suggestion:t}))},[t,n,o,i]),c=Up(p=>{if(p.preventDefault(),p.stopPropagation(),!i||!a)return;let d=parseInt(p.target.dataset.index,10),g=a[d];o(Jn({platformSessionId:i,reply:g,suggestion:t}))},[t,n,o,i]);return ts(M,{onClick:l,className:Nv(Me.root,{[Me.isUsed]:n,[Me.hasError]:r}),children:[$e(O,{children:ts(O.Content,{children:[ts(O.Title,{className:Me.title,children:[t.text," ",$e(ys,{className:Me.label,children:"analyse tool"})," ",r&&$e("span",{className:Me.errorIcon,role:"img","aria-label":e("sendingError"),title:e("sendingError"),children:"!"})]}),a&&a.length>0&&$e("ul",{className:Me.quickReplies,children:a.map(p=>$e("li",{className:Me.quickReply,children:p.title},p.title))})]})}),ts(M.Actions,{fixed:r||n,children:[a&&a.length>0&&$e(M.DropdownButton,{label:e("answer"),disabled:s,children:a.map((p,d)=>$e(M.DropdownItem,{index:d,label:p.title,onClick:c},p.title))}),$e(M.ActionButton,{primary:!0,disabled:n,onClick:l,label:e(n?"suggestionSent":r?"tryAgain":"sendSuggestion")})]})]})},zp=Dv;import{useEffect as Hv,useState as Bv}from"react";import{useDispatch as Fv}from"react-redux";import qp from"classnames";import{jsx as jp}from"react/jsx-runtime";var ei=()=>jp("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:jp("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 Vp={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 Ht,jsxs as Wp}from"react/jsx-runtime";var Kv=({entities:t})=>{let e=y("EntitiesWidgetList",Vp),[o,n]=Bv(void 0),s=Fv(),r=()=>{n(void 0)},i=a=>{t&&(n(t.indexOf(a)),mo(a.text),s(W({name:"entity copied",data:{entity:a,type:"copy"}})))};return Hv(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[o]),!t||t.length===0?null:Ht("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,l)=>Wp("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[Ht("span",{className:e.entityText,children:a.text}),Wp("span",{className:e.iconWrapper,children:[Ht("span",{className:qp(e.icon),children:Ht(ei,{})}),Ht("span",{className:qp(e.icon,o===l&&e.iconClicked),children:Ht(ei,{})})]})]},a.text))})},$p=Kv;import{jsx as Gp}from"react/jsx-runtime";var Xp=()=>Gp("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Gp("path",{d:"M17 13.5v6H5v-12h6m3-3h6v6m0-6-9 9",stroke:"currentColor",strokeWidth:"1.5",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"})});import{jsx as Zp}from"react/jsx-runtime";var Qp=()=>Zp("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:Zp("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 Jp}from"react/jsx-runtime";var Yp=()=>Jp("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:Jp("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{useEffect as jv,useState as Vv}from"react";var ti={};V(ti,{enUS:()=>Uv,nlNL:()=>zv});var Uv={copyCue:[{type:0,value:"Copy"}],copiedCue:[{type:0,value:"Copied!"}],removeCue:[{type:0,value:"Close"}]},zv={copyCue:[{type:0,value:"Kopieer"}],copiedCue:[{type:0,value:"Gekopieerd!"}],removeCue:[{type:0,value:"Sluiten"}]};import{jsx as To,jsxs as ed}from"react/jsx-runtime";var qv=({cue:t,onRemove:e,onCopy:o})=>{let n=T(ti),[s,r]=Vv(!1),i=l=>{l.preventDefault(),l.stopPropagation(),o&&(o(t.text),r(!0))},a=l=>{l.preventDefault(),l.stopPropagation(),e&&e(t.id)};return jv(()=>{if(!s)return;let l=setTimeout(()=>{r(!1)},1e3);return()=>{clearTimeout(l)}},[s]),To(M,{"data-testid":"cue",children:ed(O,{children:[ed(O.Content,{children:[t.title&&To(O.Title,{"data-testid":"widget-cue-title",children:t.title}),t.text]}),To(M.Actions,{children:o&&To(M.ActionButton,{primary:!0,onClick:i,label:n(s?"copiedCue":"copyCue")})}),To(O.CloseIcon,{title:n("removeCue"),onClick:a})]})})},td=qv;import{Fragment as $v,jsx as od}from"react/jsx-runtime";var Wv=({cues:t,onCopyCue:e,onRemoveCue:o})=>od($v,{children:t.map(n=>od(td,{cue:n,onRemove:o,onCopy:e},`${n.id}_${n.timestamp}`))}),nd=Wv;import{useSelector as Zv}from"react-redux";import{useCallback as Gv}from"react";import{jsx as lt,jsxs as os}from"react/jsx-runtime";var Xv=({suggestion:t,lines:e,onEdit:o,onUse:n})=>{var g;let s=t.text||t.url||t.message,r=Cn(s),i=T(et),a=C("showImages"),l=C("fallbackImage"),c=u=>{u.preventDefault(),u.stopPropagation(),n(s)},p=u=>{u.preventDefault(),u.stopPropagation(),o(t)},d=Gv(u=>{window.open(r,"_blank"),u.stopPropagation(),u.preventDefault()},[r]);return os(M,{onClick:c,"data-testid":"edit-suggestion",children:[os(O,{children:[a&&t.image&&lt(O.Image,{src:Xn(t,"small",l||void 0),title:t.title}),os(O.Content,{children:[t.title&&lt(O.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((g=t.searchKeywords)==null?void 0:g.length)>0&&lt(M.Labels,{labels:t.searchKeywords}),lt(O.Content,{cropText:e==="single",lineClamp:e==="multiple",children:s})]})]}),os(M.Actions,{children:[r&&lt(M.ActionButton,{onClick:d,label:i("visitUrl")}),lt(M.ActionButton,{primary:!0,onClick:p,label:i("preview")}),lt(M.ActionButton,{primary:!0,onClick:c,label:i("useSuggestion")})]})]})},sd=Xv;import{Fragment as Jv,jsx as rd}from"react/jsx-runtime";var Qv=({contentType:t,lines:e,suggestions:o})=>{let n=ie(),s=Zv(je),r=a=>{n.send(mr,{state:s,suggestion:a,contentType:t})},i=(a,l)=>{n.send(Ie,{text:a,suggestion:{...l,source:l.source,sourceText:l.text}})};return rd(Jv,{children:o.map(a=>rd(sd,{suggestion:a,lines:e,onEdit:l=>r(l),onUse:l=>i(l,a)},a.text||a.url||a.message))})},id=Qv;var oi={};V(oi,{enUS:()=>Yv,nlNL:()=>eS});var Yv={waiting:[{type:0,value:"Loading\u2026"}],notSupported:[{type:0,value:"This conversation is not supported"}],noResults:[{type:0,value:"No results found\u2026"}],titleAutoflows:[{type:0,value:"Autoflows"}],titleCustomMessages:[{type:0,value:"Quick replies"}],titleCues:[{type:0,value:"Assistant updates"}],actions:[{type:0,value:"Shortcuts"}],linkStudioLogin:[{type:0,value:"My "},{type:1,value:"productName"}],linkSummary:[{type:0,value:"Summarize"}],linkKnowledgeSearch:[{type:0,value:"Knowledge Assist"}],linkSearch:[{type:0,value:"Search"}]},eS={waiting:[{type:0,value:"Laden\u2026"}],notSupported:[{type:0,value:"Dit gesprek wordt niet ondersteund"}],noResults:[{type:0,value:"Geen resultaten gevonden\u2026"}],titleAutoflows:[{type:0,value:"Autoflows"}],titleCustomMessages:[{type:0,value:"Quick replies"}],titleCues:[{type:0,value:"Assistant updates"}],actions:[{type:0,value:"Shortcuts"}],linkStudioLogin:[{type:0,value:"Mijn "},{type:1,value:"productName"}],linkSummary:[{type:0,value:"Gesprek samenvatten"}],linkKnowledgeSearch:[{type:0,value:"Knowledge assist"}],linkSearch:[{type:0,value:"Zoeken"}]};var ad={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 L,jsxs as Bt}from"react/jsx-runtime";var ns=(t,e)=>{let o=Q(Z);oS(()=>o?e.every(n=>!!n)?t():()=>{}:()=>{},[...e,o])},sS=({onLogIn:t})=>{let e=T(oi),o=nS(),n=C("isEmbedded"),s=y("Widget",ad),r=C("showAutoflows"),i=C("showCustomMessages"),a=C("showSummaryCommand"),l=C("showKnowledgeSearch"),c=C("showSearch"),p=Q(qe),d=Q(Nn),g=Q(hp),u=Q(Dl),m=Q(An),f=Q(xp),h=Q(Fo),E=Q(vt),x=Q(Z),_=Q(Bo),b=Q(Np),v=Q(je),R=ie(),N=Q(ul),B=Q(Pp("/admin/")),D=C("adminUrl"),U=C("productName");if(ns(()=>(o(Co(_)),o(Ep(_)),()=>{o(kp(_))}),[o,E,i,_]),ns(()=>(o(Le(_)),o(yp(_)),()=>{o(vp(_))}),[o,E,r,_]),ns(()=>{d.forEach(({type:k})=>{o(k==="entities"?ue():de(k))})},[o,E,h,p]),ns(()=>(o(Jr()),()=>{o(Lp())}),[o]),E===!1)return L("div",{className:s.stateText,children:L("div",{children:L("p",{children:e("notSupported")})})},"supported");if(x===!1)return L("div",{className:s.loginText,children:L("div",{children:L(jn,{isEmbedded:n,loginUrl:D,onLogIn:t})})},"login");if(!p||!_||x===null||N||b)return L("div",{className:s.stateText,children:L("div",{children:L("p",{children:e("waiting")})})},"waiting");let F=c||a||l||B;return L("div",{className:tS(s.root),"data-testid":"widget",children:Bt(Ss,{className:s.sectionList,children:[F&&L(Oe,{title:e("actions"),type:"shortcuts",children:Bt("div",{className:s.shortcutList,children:[c&&Bt("button",{className:s.shortcut,"data-testid":"shortcut-search",onClick:()=>R.send("ShowCommandPalette",{isOpen:!0}),children:[L(kt,{}),e("linkSearch")]}),a&&Bt("button",{className:s.shortcut,"data-testid":"shortcut-summary",onClick:()=>R.send("ShowCommandPalette",{isOpen:!0,page:"summary"}),children:[L(Yp,{}),e("linkSummary")]}),l&&Bt("button",{className:s.shortcut,"data-testid":"shortcut-knowledge-assist",onClick:()=>R.send("ShowCommandPalette",{isOpen:!0,page:"knowledgeAssist"}),children:[L(Qp,{}),e("linkKnowledgeSearch")]}),B&&Bt("a",{className:s.shortcut,target:"_blank",href:B,"data-testid":"shortcut-studio-login",rel:"noreferrer",children:[L(Xp,{}),e("linkStudioLogin",{productName:U})]})]})}),i&&f.length>0&&L(Oe,{type:"custom-messages","data-testid":"custom-messages",children:L(re,{withDivider:!0,children:f.map(k=>L(zp,{suggestion:k},k.text))})}),r&&g.length>0&&L(Oe,{type:"autoflows",title:e("titleAutoflows"),"data-testid":"autoflows",children:L(re,{withDivider:!0,children:L(Kp,{})})}),d.map(({type:k,title:ne,amount:gs,lines:jt})=>{var Vt;switch(k){case"entities":return m&&m.length>0&&L(Oe,{type:k,title:ne,"data-testid":`type-${k}`,children:L($p,{entities:m})},k);case"cues":return u&&u.length>0&&L(Oe,{type:k,title:ne,"data-testid":`type-${k}`,children:L(re,{withDivider:!0,children:L(nd,{cues:u,onRemoveCue:dt=>o(Bl({id:dt}))})})},k);default:return((Vt=v[k])==null?void 0:Vt.fetchState)==="done"&&v[k].suggestions.length>0&&L(Oe,{type:k,title:ne,"data-testid":`type-${k}`,children:L(re,{withDivider:!0,children:L(id,{lines:jt,contentType:k,suggestions:v[k].suggestions.slice(0,gs)||[]})})},k)}})]})})},ld=sS;function ko(t){let e=new Range;return e.selectNodeContents(t),e}function cd(t,e,o){try{return ct(t,e,o),!0}catch{return!1}}function ss(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function rs(t){return"tagName"in t&&t.tagName==="BR"}var Eo=/[\u200B-\u200D\uFEFF]/g;function ct(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,d=/[\u200B-\u200D\uFEFF]/;if(!d.test(l))return c;for(let g=0;g<=l.length;g++)if(d.test(l[g])||p++,p===c)return g;throw new Error("Offset out of range")}function a(l){switch(l.nodeType){case Node.TEXT_NODE:{let c=l.textContent,p=c.replace(Eo,""),d=s+p.length,g=e>=s&&e<=d,u=o>=s&&o<=d;if(g){let m=i(c,e-s);m===0&&!u?n.setStartBefore(l):n.setStart(l,m)}u&&(n.setEnd(l,i(c,o-s)),r=!0),s=d;break}case Node.ELEMENT_NODE:{if(rs(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;ss(l)&&c&&!ss(c)&&!rs(c)&&s++;break}default:break}}if(a(t),n.startContainer===document)throw new Error("Offsets out of bound");return n}function is(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(d){let g=d===o,u=d===s;switch(d.nodeType){case Node.TEXT_NODE:{let m=d.textContent;g&&(a=c+m.substring(0,n).replace(Eo,"").length),u&&(l=c+m.substring(0,r).replace(Eo,"").length),c+=m.replace(Eo,"").length;break}case Node.ELEMENT_NODE:{let m=d.nextSibling===null;rs(d)&&!m&&c++;for(let f=0;f<d.childNodes.length;f++){let h=g&&f===n,E=u&&f===r;if(h&&(a=c),E&&(l=c),l!==void 0||((!h||!i)&&p(d.childNodes[f]),u&&f===r-1&&(l=c),l!==void 0))break}!u&&ss(d)&&!m&&c++,u&&(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 as(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,d=c===s;switch(p&&i++,c.nodeType){case Node.TEXT_NODE:{if(i!==0)return;let g=p?n:0,u=d?r:void 0,m=c.textContent.replace(Eo,"");g===0&&u===void 0?a+=m:a+=m.substring(g,u);break}case Node.ELEMENT_NODE:{let g=c.nextSibling===null;i===0&&rs(c)&&!g&&(a+=`
8
+ `);for(let u=p?n:0;u<(d?Math.min(r,c.childNodes.length):c.childNodes.length)&&(l(c.childNodes[u]),i!==1);u++);!d&&i===0&&ss(c)&&!g&&(a+=`
9
+ `);break}default:break}d&&i++}return l(t),a}function pd(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var Ft=class extends Fe{observer;lastKnownSelection=null;getRootNode(){return this.element.getRootNode()}getText(){let e=new Range;return e.selectNodeContents(this.element),as(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!pd(o)&&(e.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=e.getBoundingClientRect(),e.deleteContents(),!pd(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let e=this.getRange();if(e)return is(this.element,e);let o=this.lastKnownSelection;if(o&&cd(this.element,o.start,o.end))return o;let n=ko(this.element);return n.collapse(!1),is(this.element,n)}getSelectedText(){let{start:e,end:o}=this.getSelection();return as(this.element,ct(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()}};function dd(t,e,o){let n=`deepdesk-iframe-${t}`,s=document.getElementById(n);if(s)return s;let r=document.createElement("iframe"),i=new URL(e);return Object.entries(o).forEach(([a,l])=>{i.searchParams.append(a,l)}),r.style.position="absolute",r.style.left="-999em",r.style.width="0px",r.style.height="0px",r.tabIndex=-1,r.id=n,r.title=`iframe-${t}`,r.src=i.toString(),window.document.body.appendChild(r),r}var ni=class{constructor(e){this.name=e;this.broadcastChannel=new BroadcastChannel(e)}broadcastChannel;disposeHandlers=[];onMessage(e){this.broadcastChannel.addEventListener("message",e),this.disposeHandlers.push(()=>{this.broadcastChannel.removeEventListener("message",e)})}postMessage(e){this.broadcastChannel.postMessage(JSON.stringify(e))}close(){this.disposeHandlers.forEach(e=>e()),this.broadcastChannel.close()}},si=class{constructor(e,o,n){this.name=e;this.targetOrigin=o;this.options=n;this.iframe=dd(e,`${this.targetOrigin}/sdk/proxy/proxy.html`,{channel:this.name,host:window.location.origin,debug:"1"}),document.body.appendChild(this.iframe)}iframe;disposeHandlers=[];onMessage(e){window.addEventListener("message",e),this.disposeHandlers.push(()=>{window.removeEventListener("message",e)})}postMessage(e){var o;(o=this.iframe.contentWindow)==null||o.postMessage(JSON.stringify(e),this.targetOrigin)}close(){var e;this.disposeHandlers.forEach(o=>o()),(e=this.iframe)==null||e.remove()}},ri=class{constructor(e){this.params=e;this.deepdeskUrl=e.deepdeskUrl,this.eventMap=e.eventMap,this.sessionId="deepdesk-general",this.defaultChannel=this.createChannel("deepdesk-general")}sessionId;deepdeskUrl;channel;defaultChannel;eventMap;get isCrossOrigin(){return this.params.deepdeskUrl!==(this.params.origin||window.location.origin)}setSessionId(e){this.sessionId!==e&&(this.cleanup(),w.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 si(e,this.deepdeskUrl,{debug:!0}):new ni(e),n=s=>{var i,a;if(s.origin!==this.deepdeskUrl)return;let r=typeof s.data=="string"?JSON.parse(s.data):s.data;r.type==="event"&&r.channel===e&&(w.info("Received broadcast event",this.sessionId,s),(a=(i=this.eventMap)[r.name])==null||a.call(i,r.payload))};return o.onMessage(n),o}send(e,o,n){var i,a;w.info("Broadcast event",{sessionId:this.sessionId,name:e,payload:o});let s={type:"event",name:e,payload:o};n!==!1&&((a=(i=this.eventMap)[e])==null||a.call(i,o));let r=this.sessionId==="deepdesk-general"?this.defaultChannel:this.channel;r==null||r.postMessage({...s,channel:this.sessionId})}cleanup(e=!1){var o,n;(o=this.channel)==null||o.close(),delete this.channel,e&&((n=this.defaultChannel)==null||n.close(),delete this.defaultChannel)}},ud=ri;var Kt=class extends Error{constructor(o,n){super(o);this.body=n}name="CustomError"};var ii=t=>new Promise(e=>{setTimeout(e,t)});var Ut=class extends Kt{name="ClientError"},ai=class extends Kt{name="ServerError"},Se=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:d=!0,retryOnError:g=b=>b instanceof TypeError,retryOnResponse:u=b=>b.status>=500,version:m="v1",...f}=o,h={credentials:"include",...f,headers:{"Content-Type":"application/json",...f.headers}};o.method!==void 0&&o.method!=="GET"&&this.csrfToken&&(h.headers={...h.headers,"X-CSRFToken":this.csrfToken}),typeof m=="string"&&(h.headers={...h.headers,"X-Deepdesk-API-Version":m});let E=c,x=!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 _=async()=>(E--,a(i,h).then(async b=>u(b)&&!r.isAborted&&E>0?(await ii(p),_()):b.status===401&&d===!0&&x===!1?(x=!0,await this.refreshToken(),_()):b).catch(async b=>{if(g(b)&&!r.isAborted&&E>0)return await ii(p),_();throw b}));_().then(b=>b.json().catch(()=>null).then(v=>{b.status>=500?s(new ai("Server Error",v)):b.status===401?s(new Ut("Unauthorized",v)):b.status===403?s(new Ut("Forbidden",v)):b.status===404?s(new Ut("Not Found",v)):b.status>=400&&s(new Ut("Bad Request",v)),delete this.latestRequestByUrl[i],n(v)})).catch(b=>{s(b)})})}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 rS;(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||={})})(rS||={});function ls(t){return{...A(t),tags:t.tags}}var Ge=class t{constructor(e,o={}){this.options=o;this.client=new Se(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(),w.info(`Creating conversation for session ${e.sessionId} and agent ${e.agentId}`);let o=await this.client.post("/api/conversations",{...z(e),tags:e.tags},{version:"v2"});return ls(o)}async getProfile(e){let o=await this.client.get(`/apis/admin/profiles/${e}/`,{version:null});return A(o)}async getKnowledgeAssistant(e){let o=await this.client.get(`/apis/admin/knowledge-assist/assistants/${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(),w.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 w.info(`Successfully retrieved conversation ${r.id} for session ${e}`),ls(r)}async isConversationSupported(e,o={}){w.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=z(o);o.tags&&(n.tags=o.tags);let s=await this.client.put(`/api/conversations/${e}`,n,{version:"v2"});return ls(s)}async postMessages(e,o){return(await this.client.post(`/api/conversations/${e}/messages`,o.map(s=>({...z(s),tags:s.tags})),{version:"v2"})).map(s=>ls(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",z({...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:z({...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),agent_id:o.agentId,id:o.externalConversationId},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 w.warn(`Invalid token '${e}'`),o})}async authenticateWithKey(e,o){await this.client.post("/apis/admin/session/api-key/",z(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}`,z(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`,z(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",z(e),{abortLatest:!0});return A(o)}async search(e){let o=await this.client.post(`/api/profiles/${e.profile}/search`,z(e),{version:"v2"});return A(o)}async knowledgeAssist(e,o,n,s={}){let r=await this.client.post(`/api/knowledge-assist/assistants/${n}/search`,z({question:e.question,promptInstruction:e.promptInstruction,chatHistory:o.map(i=>({question:i.question,answer:i.answer.answer})),agentId:s.agentId,conversationId:s.conversationId}),{version:"v2"});return A(r)}async requestLoginByEmail(e){let o=await this.client.post("/apis/admin/session/passwordless/request/",{email:e},{version:null});return A(o)}async requestPasswordlessToken(){let e=await this.client.get("/apis/admin/session/passwordless/request/",{version:null});return A(e.token)}async getCsrfToken(){let{token:e}=await this.client.get("/apis/admin/session/csrf/",{version:null});return e}async verifyLoginToken(e){let o=await this.client.post("/apis/admin/session/passwordless/login/",{token:e},{version:null});return A(o)}async evaluateRule(e,o,n,s={}){let r=new URLSearchParams;s.raiseForFailingConditions&&r.set("raise_for_failing_conditions","true");let i=await this.client.post(`/api/conversations/${o}/rules/${e}/evaluate?${r.toString()}`,n,{version:"v2"});return A(i.cues)}handleDeepdeskVersionHeaders(e){e.headers.forEach((o,n)=>{let s=n.toLowerCase(),r=s.match(wi);if(!o||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&o&&a!==o&&w.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(o)}`),this.latestReceivedDeepdeskVersions[i]=o})}};var Io=class{constructor(e,o){this.url=e;this.options={timeout:25e3,...o}}eventListeners={};options;timeoutTimer;eventSource;proxyEvent(e){this.eventSource.addEventListener(sr(e),o=>{let{data:n}=o;try{let s=JSON.parse(n);this.emit(e,A(s))}catch{w.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 iS;(e=>{let t;(r=>(r.Started="Started",r.Aborted="Aborted",r.Completed="Completed"))(t=e.AutoflowSessionState||={})})(iS||={});var Ro=class{constructor(e,o={}){this.apiUrl=e;this.client=new Se(e,o)}client;streams={};logger=w;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`,z(o));return A(n)}async answerCustomMessage(e,o){await this.client.post(`/sessions/${e}/answers`,z(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",z(e));return A(o)}async stopAutoflowSession(e){await this.client.delete(`/autoflow-sessions/${e}`)}openStream(e){return this.streams[e]||(this.streams[e]=new Io(`${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 gS,configureStore as mS}from"@reduxjs/toolkit";import{createSlice as aS}from"@reduxjs/toolkit";var gd={startTime:null,stopTime:null},md=aS({name:"handlingTime",initialState:gd,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(P,()=>gd)}}),{handlingTimeStart:fd,handlingTimeStop:cs,handlingTimeReset:hd}=md.actions,yd=md.reducer;var vd=(t={})=>{let e={onAuthError:Pt(!1),...t};return o=>n=>s=>("error"in s&&s.error.message==="Unauthorized"&&o.dispatch(e.onAuthError),n(s))};import{createAsyncThunk as lS,createSlice as cS}from"@reduxjs/toolkit";var ps={list:{keywordMatches:[]},fetchState:"idle",isInitialRequest:null};var pt=lS("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 ps.list;if(!r)throw new Error("No current conversation to fetch pinned messages");return o.getStyleSuggestions({profileCode:r,message:t})}),pS=cS({name:"styleSuggestions",initialState:ps,reducers:{},extraReducers:t=>{t.addCase(pt.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(pt.rejected,e=>{e.fetchState="error"}).addCase(pt.fulfilled,(e,o)=>{e.fetchState="done",De(e.list,o.payload)||(e.list=o.payload)}).addCase(Qe,e=>{e.list=ps.list}).addCase(P,()=>ps)}}),Sd=pS.reducer;var _d=(t={})=>{let e,o=!0,n={getStyleSuggestions:pt,debounce:500,...t};return s=>r=>i=>{var u;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(!((u=c.conversation.current)==null?void 0:u.id)||!p)return l;let{text:g}=c.input;return g===a&&!o||(clearTimeout(e),g==="")||(e=setTimeout(()=>{o=!1,s.dispatch(n.getStyleSuggestions({text:g}))},t.debounce)),l}};function dS(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var xd=(t={})=>{let e={getTextSuggestions:de,getAutocompleteSuggestions:ao,debounce:200,check:Ot,...t},o;return n=>s=>r=>{var f;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,d=(f=l.conversation.current)==null?void 0:f.id,g=r.type===In.toString();if(!d||!c&&!p)return a;let{input:{userCommitted:u}}=l;return dS(u,i)&&!g||(clearTimeout(o),!e.check(l))||(o=setTimeout(()=>{let h=St(l);h===""?n.dispatch(e.getTextSuggestions("default")):n.dispatch(e.getAutocompleteSuggestions(h))},g?0:e.debounce)),a}};var bd=pt.fulfilled.toString();function uS(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 Cd=t=>e=>o=>n=>{var c;if(n.type!==bd){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=uS(s,i);n.type===bd&&l.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:l}})};var fS=gS({activeSuggestion:bl,answer:fc,auth:Ol,autoflows:Sp,conversation:Pi,contentTypes:Zl,customMessages:Ip,passwordlessToken:Mp,entities:Yl,knowledgeAssistant:uc,handlingTime:yd,info:Wa,input:ks.reducer,overlayInput:J.reducer,settings:Ei,profile:_c,search:Ya,summary:ic,styleSuggestions:Sd,ui:El,rules:Fl,textSuggestions:yl});function wd(t){return mS({reducer:fS,middleware:e=>[...e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI,deepdeskBrokerAPI:t.deepdeskBrokerAPI}},serializableCheck:!1}),vd(),xd({debounce:200}),_d({debounce:500}),Cd(t.deepdeskAPI),...t.middleware?t.middleware:[]],preloadedState:t.preloadedState})}var hS=t=>{var e;return((e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())??"unknown"},yS=t=>e=>o=>n=>{var a;let s=e.getState(),r=Cs("inlineSuggestions")(s);switch(n.type){case Te.toString():{let l=kn(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 Pt.toString():{!n.payload&&t.emit("logout",void 0);break}case le.toString():{let{start:l,end:c}=s.input.selection;t.emit("select-suggestion",{type:hS(n.payload.suggestion),...n.payload,replace:n.payload.replace==="selection"?{start:l,end:c}:{start:0,end:c}},{mayApplyChanges:!0});break}case Wo.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 Zt.toString():{let l=e.getState(),{text:c,selection:p}=l.input.userCommitted;t.emit("reset",{text:c,selectionAfter:p},{mayApplyChanges:!0});break}case Zo.toString():t.emit("select-image",n.payload,{mayApplyChanges:!0}),t.sendEvent("Image attached",{conversationId:s.conversation.current.id,data:{path:n.payload.suggestion.image,title:n.payload.suggestion.title}});break;case ue.fulfilled.toString():n.payload.length>0&&t.sendEvent("entities found",{conversationId:s.conversation.current.id,data:{entities:n.payload}});break;case Re.fulfilled.toString():t.sendEvent("conversation summarized",{conversationId:s.conversation.current.id,data:{summary:n.payload.summary}});break;case W.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 $o.toString():t.handleKeyDown(n.payload);break;case Qe.toString():t.logSendMessage(n.payload);break;case Go.toString():t.logSendEditSuggestionMessage(n.payload);break;case Xo.toString():t.handleInputChanged(n.payload);break;case ke.fulfilled.toString():t.broadcast(fr,n.payload,!1),t.emit("cues",n.payload);break;default:break}let i=o(n);switch(n.type){case Qe.toString():t.handleAfterSendMessage(n.payload);break;case lo.toString():t.onUpdateShowTabHint(n.payload);break;case cs.toString():t.logHandlingTime();break;case le.toString():{r&&(e.dispatch(me([])),e.dispatch(xe()));break}case me.toString():{r&&n.payload.length>0&&e.dispatch(Be(0));break}default:break}return i},Td=yS;function li(t){return t.toISOString().replace("T"," ").replace("Z","")}function Ed(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:li(o),timeStop:li(n)}}function ci(t,e,o){var N,B,D;let{text:n,metrics:{numCharsTyped:s,numCharsPasted:r,numCharsCut:i,numCharsDeleted:a,numPaste:l,agentStartedTypingTimestamp:c,externalTimeTotalSeconds:p,pastes:d,cuts:g,deletions:u,textSuggestions:m,offeredTextSuggestions:f}}=e[t],h=n.length,x=m.reduce((U,{text:F,searchTerm:k})=>U+F.length-(k?k.length:0),0),_=c??Date.now(),b=(Date.now()-_)/1e3+(p||0),v=s/b,R=m.reduce((U,{searchTerm:F})=>U+(F?F.length:0),0);return{conversationId:e.conversation.current.id,source:"agent",text:n,clientVersion:o.version,pastes:d,cuts:g,deletions:u,lenTextTyped:s+R,lenTextTotal:h,lenTextAssisted:x,lenTextPasted:r,lenTextCut:i,lenTextDeleted:a,timeTotalSeconds:b,charsPerSecond:v,numPastes:l,textSuggestionsV2:m,suggestionsCounters:[{source:"gpt",countOffered:f.filter(U=>U.source==="gpt").length}],agentId:(N=e.info.agentInfo)==null?void 0:N.agentId,agentName:(B=e.info.agentInfo)==null?void 0:B.agentName,agentEmail:(D=e.info.agentInfo)==null?void 0:D.agentEmail}}function pi(t,e){var r;let o=t.closest(e);if(o)return o;let n=t.getRootNode().host;if(n instanceof HTMLElement)return pi(n,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?pi(s,e):null}function kd(t,e){return pi(t,e)}function Id(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function vS(t){return typeof t=="object"&&t!==null&&"tagName"in t}function di(t){return vS(t)&&(We(t)||gn(t))}var Rd=(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{w.warn("[Deepdesk] SessionStorage is blocked by browser")}}});function SS(t){return t.offsetParent!==null}function Pd(t){if(!SS(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 ui(t,e,o=100){let n=Pd(t);e({isVisible:n});let s=setInterval(()=>{let r=Pd(t);r!==n&&(n=r,e({isVisible:n}))},o);return()=>{clearTimeout(s)}}import{jsx as j}from"react/jsx-runtime";var Ad=Rd("showTabHint",!0),us=class t{static version="10.12.1-beta.3";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 Ge(c,{token:r,fetch:i}),this.version=n,this.instanceId=t.count++;let p={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[Td({broadcast:(d,g,u)=>{this.broadcastEvents.send(d,g,u)},emit:(d,g,u)=>this.emit(d,g,u),handleAfterSendMessage:d=>this.handleAfterSendMessage(d),handleInputChanged:d=>this.handleInputChanged(d),handleKeyDown:d=>this.handleKeyDown(d),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:d=>this.logSendMessage(d),logSendEditSuggestionMessage:d=>this.logSendEditMessage(d),onUpdateShowTabHint:d=>Ad.update(d),sendEvent:(d,g)=>this.deepdeskApi.sendEvent(d,g)})]};o&&Object.assign(p,{deepdeskBrokerAPI:new Ro(o)}),this.store=wd(p),this.broadcastEvents=new ud({debug:!0,deepdeskUrl:c,eventMap:Kl(this.store),createCustomChannel:l}),this.store.dispatch(Xt),this.store.dispatch(lo(Ad.value())),this.store.dispatch(Xt({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?(w.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(w.warn("Profile has not been loaded (yet)"),!0):(w.warn("No conversation loaded (yet)"),!0)}login(){return this.store.dispatch(Pt(null)),this.store.dispatch(Ee()),new Promise(e=>{let o=this.store.subscribe(()=>{let n=this.store.getState();Z(n)&&Rl(n)!=="loading"&&(o(),e())});this.unmountHandlers.push(()=>{o()})})}async isLoggedIn(){return(await this.store.dispatch(Ee())).payload}async setPlatformAgentId(e){try{if((await this.deepdeskApi.client.get("/apis/admin/session/me/",{version:null})).external_id)return;await this.deepdeskApi.client.request("/apis/admin/session/me/",{method:"PATCH",body:JSON.stringify({external_id:e}),version:null})}catch(o){w.warn("Failed to attach user:",o)}}async isConversationSupported(e,o){return(await this.store.dispatch(Ts({sessionId:e,options:o}))).payload}async createConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(Ko(e))).payload}async getConversationBySessionId(e,o){return this.hasConversation()&&this.sessionId()!==e&&this.resetConversation(),(await this.store.dispatch(Uo({sessionId:e,options:o}))).payload}async upsertConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(Es(e))).payload}async postMessages(e){return(await this.store.dispatch(jo(e))).payload}async updateConversation(e){return(await this.store.dispatch(zo(e))).payload}resetConversation(){this.store.dispatch(P()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}async getSummary(){let e=await this.store.dispatch(Re());if(e.error)throw new Error(e.error.message);return e.payload.summary}configure(e){this.store.dispatch(Xt(e))}setVisitorInfo(e){this.store.dispatch(qa(e))}async setAgentInfo(e){await this.store.dispatch(so(e))}async setAgentSettings(e){await this.store.dispatch(ir(e))}async getAgentSettings(){return(await this.store.dispatch(ar())).payload}async refresh(){if(this.shouldAbort())return Promise.resolve();this.inputMediator&&this.handleInputChanged(this.inputMediator.getText());let e=[];return this.store.dispatch(In()),e.push(this.refreshWidgetSuggestions()),Promise.all(e).then(()=>{})}notifyInputChanged(e){this.store.dispatch(Xo(e))}notifyKeyDown(e){this.store.dispatch($o(e))}notifyPaste(e,o){this.store.dispatch(Ui({text:e,selectionText:o}))}notifyCut(e){this.store.dispatch(Fi(e))}notifyExternalSuggestion(e){this.store.dispatch(le(e)),this.store.dispatch(xe())}notifyEditSuggestion(e){this.store.dispatch(fl(e.contentType,e.suggestions)),this.store.dispatch(Te({contentType:e.contentType,suggestion:typeof e.index=="number"?e.suggestions[e.index]:null}))}async evaluateRule(e,o={}){let{payload:n,error:s}=await this.store.dispatch(ke({label:e,params:o}));if(s)throw s;return n}handleInputChanged(e){let{overlayCollapsed:o,openOverlayWhenTyping:n}=this.state.ui;o&&n&&this.store.dispatch(Ve({collapse:!1})),this.inputMediator&&this.store.dispatch(Mi({text:e,html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),!this.shouldAbort()&&(this.isMounted||this.store.dispatch(me([])))}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(Ki(qo(e))),e.key!=="Tab"&&!this.settings.showTextSuggestions)return;let c=()=>{o||!a||r&&(e.shiftKey||(this.store.dispatch(Di()),i||this.stageSelectedSuggestion({inputType:"arrow"}),e.preventDefault()))},p=()=>{o||!a||i&&s<=0||r&&(e.shiftKey||(this.store.dispatch(Bi()),e.preventDefault(),!i&&(this.state.input.selectedSuggestionIndex===-1?this.store.dispatch(Zt()):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(Be(-1)),this.state.input.selectedSuggestionIndex!==-1?(this.store.dispatch(Be(-1)),this.store.dispatch(Zt()),e.preventDefault()):o||(this.store.dispatch(Ve({collapse:!0})),this.store.dispatch(wl(!0)),e.preventDefault());return}case"Tab":{let{userCommitted:d}=this.state.input,g=d.text.substring(0,d.selection.end),{tabCompletionSuggestion:u}=this.state.input;this.store.dispatch(lo(!1)),this.state.input.selectedSuggestionIndex>-1?this.stageSelectedSuggestion({inputType:"tab"}):!i&&this.settings.showTabCompletion&&u&&u.text.startsWith(g)&&(this.store.dispatch(le({text:u.text,suggestion:u,eventMetrics:{inputType:"tab"},replace:"until-selection-end"})),this.store.dispatch(xe())),e.preventDefault();break}default:}}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(zi()),this.store.dispatch(me([]))}handlingTimeStart(){this.state.handlingTime.startTime||(w.info("Start handling time"),this.store.dispatch(fd()))}handlingTimeStop(){this.state.handlingTime.startTime&&(w.info("Stop handling time"),this.store.dispatch(cs()))}logSendMessage(e){let o=ci("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=ci("overlayInput",this.state,{version:this.version});e&&Object.assign(o,{text:e}),this.store.dispatch(Oi(this.state.overlayInput.metrics))}logHandlingTime(){let e=Ed(this.state,{version:this.version});this.deepdeskApi.sendEventV1("Handling Time",e),this.store.dispatch(hd())}notifySubmit(e={}){this.shouldAbort()||(this.store.dispatch(xe()),this.store.dispatch(Qe(e.text??this.state.input.text)))}stageSelectedSuggestion(e){let o=this.state.input.selectedSuggestionIndex,{textSuggestions:n}=this.state.input;this.store.dispatch(le({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){w.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),w.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]=wt(o,n);return r.setAttribute("translate","no"),r.dataset.testid=e,s&&r.classList.add(s),this.unmountHandlers.push(()=>{ds(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]=wt(r,{appendTo:document.body,onMoveStart:()=>{s.style.display="none"}});a.dataset.testid=o,a.style.zIndex="2",a.appendChild(n),this.unmountHandlers.push(()=>{ds(s),l()})}else document.body.appendChild(n);return s}createContainer(e,o=document.body){let n=window.getComputedStyle(o),s=document.createElement("div");return Ye(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(()=>{ds(s),s.remove()}),s}storeMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,o=JSON.stringify({text:this.state.input.text,metrics:this.state.input.metrics});window.sessionStorage.setItem(e,o),w.info(`Stored analytics for ${this.conversationId()}`)}catch{}}restoreMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,o=window.sessionStorage.getItem(e);if(!o)return;let n=JSON.parse(o);n.text.trim()===this.state.input.text.trim()?(w.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(Vi(n.metrics))):w.warn(`Metrics mismatch, disregarding stored metrics for ${this.conversationId()}`),window.sessionStorage.removeItem(e)}catch{}}mount(e,o={}){if(this.isMounted)throw new Error("[Deepdesk] This instance was already mounted. Make sure to unmount before you remount.");if(!di(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:d,detectSubmit:g,insertLink:u,inputMediator:m,closestScrollSelector:f,appendOverlayTo:h,inlineSuggestions:E,floatingMenu:x}=o;this.configure({showStyleSuggestions:s,showTabCompletion:r,textSuggestionsCount:a,showMidSentenceSuggestions:l,showSuggestionsBeforePattern:c,showSuggestionsAfterPattern:p,showTextSuggestions:i,insertLink:u,isEmbedded:d,inlineSuggestions:E,floatingMenu:!!x}),o.automaticHandlingTime&&this.setupHandlingTime(e),Ye(e),this.inputMediator=m||(We(e)?new Ke(e):new Ft(e)),this.inputMediator.on("change",({plainText:v})=>{this.notifyInputChanged(v)}),this.inputMediator.on("updated",()=>{this.inputMediator&&this.store.dispatch(ji({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()}))}),this.inputMediator.on("keydown",v=>{this.notifyKeyDown(v)}),this.inputMediator.on("paste",({pastedText:v,selectionText:R})=>{this.notifyPaste(v,R)}),this.inputMediator.on("cut",({selectionText:v})=>{this.notifyCut(v)});let _=f&&kd(e,f)||void 0;if(E){let{customStyles:v,appendOverlayTo:R}=o;if(We(e))throw new Error("[Deepdesk] Inline suggestion is not supported for textarea yet.");let N=this.createInlineContainer(e,"deepdesk-caret");zt(j(rt,{store:this.store,customStyles:v,children:j(nt,{broadcastEvents:this.broadcastEvents,children:j(Hc,{})})}),N),this.inputMediator.on("caret",D=>{this.store.dispatch(me([])),D?(N.style.display="block",N.style.top=`${D.top}px`,N.style.left=`${D.left}px`):N.style.display="none"});let B=this.overlayContainerFactory("floating-menu",_||e,{appendTo:typeof x=="object"&&"appendOverlayTo"in x?x.appendOverlayTo:R},v==null?void 0:v.floatingMenuRootNode);zt(j(rt,{store:this.store,customStyles:v,children:j(nt,{broadcastEvents:this.broadcastEvents,children:j(Ac,{onLogIn:()=>this.loginViaPopup().catch(D=>w.warn(D.message))})})}),B)}else{let v=this.overlayContainerFactory("deepdesk-tab-completion",_||e,{appendTo:h,closestScrollElement:_,mirrorOverflow:!0,onRemove:()=>this.unmount()},n==null?void 0:n.rootNode),R=this.overlayContainerFactory("deepdesk-suggestions-overlay",_||e,{appendTo:h},n==null?void 0:n.suggestionsRootNode);zt(j(rt,{store:this.store,customStyles:n,children:j(nt,{broadcastEvents:this.broadcastEvents,children:j(gp,{inputElement:e})})}),v),zt(j(rt,{store:this.store,customStyles:n,children:j(nt,{broadcastEvents:this.broadcastEvents,children:j(Wc,{onLogIn:()=>this.loginViaPopup().catch(N=>w.warn(N.message))})})}),R)}zt(j(rt,{store:this.store,customStyles:n,children:j(nt,{broadcastEvents:this.broadcastEvents,children:j(Tc,{})})}),this.createContainer("deepdesk-overlays"));let b;this.inputMediator.on("selection",v=>{clearTimeout(b),v===null?b=setTimeout(()=>{v!==null&&this.store.dispatch(Is(v))},500):this.store.dispatch(Is(v))}),this.inputMediator.on("disabled",()=>{var v;(v=this.inputMediator)==null||v.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{g&&this.notifySubmit()}),this.inputMediator.on("blur",()=>this.store.dispatch(Rt(!1))),this.inputMediator.on("focus",()=>this.store.dispatch(Rt(!0))),this.store.dispatch(Ni({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),this.unmountHandlers.push(()=>{this.state.input.text!==""&&(this.store.dispatch(xe()),this.storeMetrics())}),this.whenConversationLoaded(()=>{var v;this.restoreMetrics(),this.refresh(),this.broadcastEvents.setSessionId((v=this.state.conversation.current)==null?void 0:v.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&&w.warn("A widget was already rendered for this instance. Make sure to unmountWidget before rerendering"),!this.shouldRender)return;let{customStyles:n,showImages:s,isEmbedded:r}=o;this.widgetRoot=e,this.configure({showImages:s,isEmbedded:r}),zt(j(rt,{store:this.store,customStyles:n,children:j(nt,{broadcastEvents:this.broadcastEvents,children:j(ld,{onLogIn:()=>this.loginViaPopup().catch(i=>w.warn(i.message))})})}),e),this.whenConversationLoaded(()=>{var i;this.broadcastEvents.setSessionId((i=this.state.conversation.current)==null?void 0:i.sessionId)})}unmountWidget(){this.widgetRoot&&ds(this.widgetRoot),this.widgetRoot=null}setupHandlingTime(e){let o=ui(e,({isVisible:n})=>{n?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),o()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){Id(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfigPromise=null;loadProfileConfig(){return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(this.loadProfileConfigPromise=Promise.resolve().then(async()=>{await this.store.dispatch(yo());let e=qe(this.state);e&&(await this.store.dispatch(ho()),this.store.dispatch(Xt({showSearch:e.search,showAutoflows:e.autoflows,showCustomMessages:e.customMessages,showImageSearch:e.imageSearch,showEntitiesCommand:e.entitiesCommand,showSummaryCommand:e.summarizer,showKnowledgeSearch:!!e.knowledgeAssistant,recommendTextSuggestions:e.recommendTextSuggestions})))}),this.loadProfileConfigPromise)}async loginViaPopup(e){return new Promise((o,n)=>{let s=new MessageChannel,r=s.port1,i=this.state.settings.adminUrl,a=new URL(e!=null&&e.url?e==null?void 0:e.url:`${i}/platform/sso/`);a.searchParams.append("redirect","/sdk/popup/close.html");let l=!1,c=()=>{p&&!p.closed&&p.close(),window.removeEventListener("message",d),clearInterval(g)};r.onmessage=async u=>{var m,f;if((m=u.data)!=null&&m.jwt)try{await this.deepdeskApi.exchangeTokenForAccessCookie((f=u.data)==null?void 0:f.jwt),await this.isLoggedIn(),this.broadcastEvents.send(po),l=!0,s.port1.close(),o()}catch(h){console.error(h),n(h)}finally{l=!0,c()}};let p=window.open(a.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");p===null&&n(new Error("Popup blocked by browser"));let d=async u=>{var m;if(u.origin===a.origin)switch((m=u.data)==null?void 0:m.type){case"deepdesk-popup-loaded":{try{let f=JSON.stringify({type:"deepdesk-popup-create-channel"});p==null||p.postMessage(f,a.origin,[s.port2])}catch(f){w.error("Error posting message to popup",f),n(f)}break}case"deepdesk-popup-error":{c(),u.data.message==="Timeout"&&w.warn("Popup timed out. Check if the account's platform url is configured correctly."),n(new Error(u.data.message));break}}};window.addEventListener("message",d);let g=setInterval(()=>{p&&!p.closed||(c(),l||n(new Error("Popup closed by user")))},200);this.unmountHandlers.push(c)})}async checkForTrialMode(e){try{let{account:o}=await this.deepdeskApi.getPlatformConfig();if(!o.isTrial){this.shouldRender=!0;return}if(w.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;w.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=Nn(this.state);try{o.forEach(({type:n})=>{n==="entities"?this.store.dispatch(ue()):this.store.dispatch(de(n))})}catch(n){this.handleError(n)}}};async function _S(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 xS(t,e,o={}){let n=o.replace?ct(t,o.replace.start,o.replace.end):ko(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(`
10
+ `).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?ct(t,o.selectionAfter.start,o.selectionAfter.end):(n.collapse(!1),n),a=window.getSelection();a==null||a.removeAllRanges(),a==null||a.addRange(i)}if(!s)return;s.scrollIntoView&&s.scrollIntoView({block:"nearest",inline:"nearest"})}finally{s&&s.remove()}})}function bS(t){let e=document.createElement("template");return e.innerHTML=t.replace(/(\[([^\]]+)])\(([^)]+)\)/g,'<a href="$3" target="_blank" rel="noopener noreferrer">$2</a>'),e.content}function CS(t){let e=document.createDocumentFragment();return t.split(`
11
+ `).forEach((o,n)=>{n>0&&e.appendChild(document.createElement("br"));let s={index:0},r=0;for(;s=o.slice(r).match(/(\[([^\]]+)])\(([^)]+)\)/);){let i=document.createElement("a");i.href=s[3],i.setAttribute("target","_blank"),i.setAttribute("rel","noopener noreferrer"),i.appendChild(document.createTextNode(s[2])),e.appendChild(document.createTextNode(o.slice(r,r+s.index))),e.appendChild(i),r=r+s.index+s[0].length}e.appendChild(document.createTextNode(o.slice(r)))}),e}function Ld(t,e){return!t.contains(e)||e===t?null:e.parentNode===t?e:Ld(t,e.parentNode)}async function wS(t,e,{isBlock:o,isHTML:n}={}){let s;t.dispatchEvent(new InputEvent("beforeinput",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0}));let r=()=>{let i=t.ownerDocument.defaultView??window,a=i.getSelection();if((!a||a.rangeCount===0)&&(t.focus(),a=i.getSelection()),!a||a.rangeCount===0)return;let l=a.getRangeAt(0);if(!l)return;s=document.createElement("span"),l.insertNode(s);let c=n?bS(e):CS(e);if(o){let p=l.startContainer===t?t.childNodes[l.startOffset]:l.startContainer,d=Ld(t,p)??t.firstChild;t.insertBefore(c,(d==null?void 0:d.nextSibling)??null)}else l.insertNode(c),l.collapse(!1)};return Promise.resolve(r()).then(()=>{if(t.dispatchEvent(new InputEvent("input",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0})),t.focus(),!!s)try{s.scrollIntoView&&s.scrollIntoView({block:"nearest",inline:"nearest"})}finally{s&&s.remove()}})}function TS(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}async function ES(t,e,o){await new Ge(t).authenticateWithKey(e,o)}async function kS(t){let o=await new Se(t).get("/platform/config/",{version:null});return A(o)}async function IS(t){let o=await(t.fetch??window.fetch)(t.url),n=await o.blob();return new File([n],t.name,{type:t.mimeType??o.headers.get("Content-Type")??"image/jpeg"})}async function RS(t,e){let o=await IS(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{O as Card,Ft as ContentEditableInput,Ge as DeepdeskAPI,us as DeepdeskSDK,Se as HTTPClient,Fe as InputMediator,Xe as InputType,hs as KeyboardHint,ys as Label,Ho as Locale,Oe as Section,Ss as SectionList,ge as Sources,M as Suggestion,re as SuggestionList,Ke as TextAreaInput,ft as ToggleButton,RS as attachFile,ES as authenticateWithKey,ko as createFullRange,wt as createOverlayContainer,ct as createRangeFromOffsets,to as escapeHTML,kS as fetchPlatformConfig,TS as formatTextMarkup,is as getRangeOffsets,as as getRangeText,wS as insertCKEditor,Tt as isHTML,di as isSupportedInputElement,xS as updateContentEditable,_S as updateTextArea,y as useStyles,ui as waitForElementVisibilityChange};