@deepdesk/deepdesk-sdk 10.9.3-beta.5 → 10.9.3-beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +5 -5
- package/dist/index.esm.js +7 -7
- package/dist/index.iife.js +12 -12
- package/package.json +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
var Cd=Object.defineProperty;var j=(t,e)=>{for(var o in e)Cd(t,o,{get:e[o],enumerable:!0})};import ps from"classnames";import Rd,{createContext as Id,useContext as ds,useEffect as Pd,useState as Ad}from"react";import wd,{useContext as Td}from"react";import Ed from"classnames";var zt=wd.createContext({});function y(t,e){let{debug:o,...n}=Td(zt),s=n[t];return s?Object.entries(e).reduce((r,[i,a])=>{let l=s[i];return{...r,[i]:Ed(a,l,o?`${t}__${i}`:!1)}},{}):e}var ci={root:"_root_vr71j_1"};import{jsx as Eo,jsxs as kd}from"react/jsx-runtime";var ko=()=>kd("svg",{className:ci.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[Eo("defs",{children:Eo("style",{children:".cls-1 { fill: #b3b3b3; }"})}),Eo("title",{children:"Failed loading image"}),Eo("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 cs={root:"_root_4e7lf_1",imageWrapper:"_imageWrapper_4e7lf_7",image:"_image_4e7lf_7",content:"_content_4e7lf_24",title:"_title_4e7lf_35",contentIsCropped:"_contentIsCropped_4e7lf_45",lineClamp:"_lineClamp_4e7lf_51"};import{jsx as ct}from"react/jsx-runtime";var Ro=Id(cs),Ld=({title:t,src:e})=>{let o=ds(Ro),[n,s]=Ad(!1);return Pd(()=>{s(!1)},[e]),ct("div",{className:o.imageWrapper,children:e&&!n?ct("img",{className:o.image,alt:t,src:e,onError:()=>s(!0)}):ct(ko,{})})},Md=({className:t,lineClamp:e=!1,cropText:o=!1,children:n})=>{let s=ds(Ro);return ct("div",{className:ps(s.content,t,{[s.contentIsCropped]:o,[s.lineClamp]:e}),children:n})},Nd=({as:t="h1",cropText:e=!1,className:o,children:n,...s})=>{let r=ds(Ro);return Rd.createElement(t,{className:ps(r.title,o,{[r.contentIsCropped]:e}),...s},n)},Io=({children:t})=>{let e=y("Card",cs);return ct("div",{className:ps(e.root),children:ct(Ro.Provider,{value:e,children:t})})};Io.Image=Ld;Io.Content=Md;Io.Title=Nd;var H=Io;import Od from"classnames";var pi={root:"_root_cq1yq_1"};import{jsx as Bd}from"react/jsx-runtime";var Dd={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},Hd=({className:t,keyCode:e,...o})=>{let n=y("KeyboardHint",pi);return Bd("span",{"data-key":Dd[e],className:Od(t,n.root),...o})},us=Hd;import Fd from"classnames";var di={root:"_root_4a08n_1"};import{jsx as Ud}from"react/jsx-runtime";var Kd=({className:t,children:e,...o})=>{let n=y("Label",di);return Ud("span",{...o,className:Fd(t,n.root),children:e})},gs=Kd;var ui={root:"_root_jlggj_1",subTitleContainer:"_subTitleContainer_jlggj_5",subtitle:"_subtitle_jlggj_9",suggestions:"_suggestions_jlggj_17"};import{jsx as ms,jsxs as jd}from"react/jsx-runtime";var zd=({title:t,children:e,type:o,...n})=>{let s=y("Section",ui);return jd("section",{...n,className:s.root,"data-section-type":o,children:[t&&ms("div",{className:s.subTitleContainer,children:ms("span",{className:s.subtitle,children:t})}),ms("div",{className:s.suggestions,children:e})]})},qe=zd;import qd from"classnames";import Vd from"react";var gi={root:"_root_19wxp_1"};import{jsx as Gd}from"react/jsx-runtime";var Wd=Vd.forwardRef(({className:t,children:e},o)=>{let n=y("SectionList",gi);return Gd("div",{ref:o,className:qd(n.root,t),children:e})}),fs=Wd;import Po from"classnames";import $d,{createContext as Xd,useCallback as Qd,useContext as jt}from"react";var hs={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 Se,jsxs as tu}from"react/jsx-runtime";var pt=Xd(hs),Zd=({fixed:t,children:e,...o})=>{let n=jt(pt);return Se("div",{...o,className:Po(n.actions,{[n.actionsIsFixed]:t}),children:e})},Jd=({className:t,primary:e,disabled:o,label:n,children:s})=>{let r=jt(pt);return tu("div",{className:Po(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[n,Se("ul",{className:r.dropdownList,children:s})]})},Yd=({index:t,label:e,onClick:o})=>{let n=jt(pt);return Se("li",{className:n.dropdownItem,children:Se("button",{className:n.dropdownItemButton,type:"button","data-index":t,onClick:o,children:e})})},eu=({className:t,primary:e,disabled:o,onClick:n,label:s})=>{let r=jt(pt);return Se("button",{type:"button",className:Po(t,r.actionButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onClick:n??(i=>i.stopPropagation()),disabled:o,"aria-hidden":o,children:s})},ys=({labels:t})=>{let e=jt(pt);return Se("div",{className:e.labels,children:t.map(o=>Se("span",{className:e.label,children:o},o))})},dt=$d.forwardRef(({className:t,selected:e,onClick:o,children:n,as:s="div",...r},i)=>{let a=y("Suggestion",hs),l=Qd(c=>{c.preventDefault(),o&&o(c)},[o]);return Se(s,{...r,ref:i,className:Po(t,a.root,{[a.isSelected]:e,[a.isClickable]:!!o}),onClick:l,children:Se(pt.Provider,{value:a,children:n})})});dt.Labels=ys;dt.Actions=Zd;dt.ActionButton=eu;dt.DropdownButton=Jd;dt.DropdownItem=Yd;var D=dt;import ou from"classnames";var mi={root:"_root_fp74r_1",isWithDivider:"_isWithDivider_fp74r_9"};import{jsx as su}from"react/jsx-runtime";var nu=({withDivider:t,children:e})=>{let o=y("SuggestionList",mi);return su("div",{"data-testid":"suggestions-overlay-list",className:ou(o.root,{[o.isWithDivider]:t}),children:e})},re=nu;import ru from"classnames";var fi={root:"_root_1wpmq_1",isCollapsed:"_isCollapsed_1wpmq_17"};import{jsx as vs}from"react/jsx-runtime";var iu=({className:t,isCollapsed:e,title:o,onClick:n})=>{let s=y("ToggleButton",fi);return vs("button",{type:"button",className:ru(s.root,t,{[s.isCollapsed]:e}),onClick:n,title:o,children:vs("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:vs("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},ut=iu;var hi=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,gt=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var yi=/x-deepdesk-(([a-z0-9\-_])+-version)/,ue=(m=>(m.SEARCH="search",m.TEMPLATE="template",m.ELASTIC_SEARCH="search-autocomplete",m.GPT="gpt",m.TRIE="trie",m.TRIE_WITH_TYPOS="trie-with-typos",m.SEMANTIC="semantic",m.TEXT_RECOMMENDATION="text_recommendation",m.URL_RECOMMENDATION="url_recommendation",m.LINK_RECOMMENDATION="link_recommendation",m.PERSONAL_COLLECTION="personal-collection",m.PERSONAL_COLLECTION_SEARCH="personal-collection-search",m.SEARCH_OVERLAY="search-overlay",m.SEARCH_PREVIEW="search-preview",m.SEARCH_URL="search-url",m))(ue||{}),Ve=(r=>(r.ENTER="enter",r.TAB="tab",r.ARROW="arrow",r.HOTKEY="hotkey",r.MOUSE="mouse",r))(Ve||{});import{render as Ft,unmountComponentAtNode as is}from"react-dom";import{Fragment as jf}from"react";import{createSlice as au}from"@reduxjs/toolkit";import{useSelector as lu}from"react-redux";var Ao=(o=>(o.NL_NL="nl-NL",o.EN_US="en-US",o))(Ao||{});var cu={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"},vi=au({name:"settings",initialState:cu,reducers:{set(t,e){Object.entries(e.payload).forEach(o=>{let[n,s]=o;typeof s>"u"||(t[n]=s)})}}}),{set:qt}=vi.actions,Ss=t=>e=>e.settings[t],C=t=>lu(Ss(t)),Si=vi.reducer;import{useState as Em}from"react";import{useDispatch as km,useSelector as dr}from"react-redux";import{createAction as We,createSlice as yu}from"@reduxjs/toolkit";import{diffChars as vu}from"diff";import{useSelector as Su}from"react-redux";function _i(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function Ae(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)=>Ae(r,e[i],o-1)):_i(t)&&_i(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>Ae(t[i],e[i],o-1)):!1}function pu(t){return Math.max(...t.map(e=>e.length))}function du(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 xi(t,e){let n=[...t.map(({text:s})=>s.split(/\b(\w+)\b/))];for(let s=0;s<pu(n);s++){let r=du(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 uu=2;function _s(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let o=xi(t,uu);return o&&o.text!==e?o:t[0]}import{createAction as gu,createAsyncThunk as mt,createSlice as mu}from"@reduxjs/toolkit";var bi={current:null,isSupported:null},A=gu("resetConversation"),Lo=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.sessionId)||null},Mo=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},ft=t=>t.conversation.isSupported,xs=mt("conversation/isSupported",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.isConversationSupported(t.sessionId,t.options)}),No=mt("conversation/create",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.createConversation(t)}),Oo=mt("conversation/bySessionId",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.getConversationBySessionId(t.sessionId,t.options)}),Do=mt("conversation/update",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Mo(e.getState());if(!n)throw new Error("No current conversation to update");return o.updateConversation(n,t)}),bs=mt("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})})}),Ho=mt("conversation/postMessages",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Mo(e.getState());if(!n)throw new Error("No current conversation to update messages");return o.postMessages(n,t.map(s=>({...s})))}),fu=[No.rejected,Oo.rejected,Do.rejected,Ho.rejected].map(t=>t==null?void 0:t.toString()),hu=mu({name:"conversation",initialState:bi,reducers:{},extraReducers:t=>{t.addCase(xs.fulfilled,(e,o)=>{e.isSupported=o.payload}).addCase(No.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Oo.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(bs.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Do.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Ho.fulfilled,(e,o)=>{e.current&&(e.current.messages=o.payload)}).addCase(A,()=>bi).addMatcher(e=>fu.includes(e.type),(e,o)=>{throw new Error(o.error.message)})}}),Ci=hu.reducer;var Le={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 Fo(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 Ko=We("input/replaceText"),Uo=We("input/keyDown"),Ge=We("input/sendMessage"),zo=We("input/sendEditSuggestionMessage"),jo=We("input/uiInputChange"),qo=We("input/applyImageSuggestion"),q=We("input/sendEvent");function Bo(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",u=e.slice(t.userCommitted.text.substring(0,t.userCommitted.selection.start).length);(d||p==="selection")&&(u=e),t.stagedSuggestion.suggestion.source==="search-overlay"&&(u=l),t.userCommitted.text=t.text,t.userCommitted.selection=t.selection,t.metrics.textSuggestions.push({text:u,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 wi=t=>yu({name:t,initialState:Le,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,{...Le,selection:e.selection})},resetToCommitted(e){e.text=e.userCommitted.text,e.selection=e.userCommitted.selection,e.stagedSuggestion=null,e.tabCompletionSuggestion=_s(e.textSuggestions,e.userCommitted.text)},changeSelection(e,o){o.payload&&(Ae(e.selection,o.payload)||(e.selection=o.payload,e.userCommitted.selection=e.selection,e.stagedSuggestion&&Bo(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:u,metaKey:g,altKey:f}=e.previousKeyDownEvent;switch(p){case"Enter":d&&(e.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:m}=e,{text:v}=o.payload,w=vu(m,v);m.length-v.length>1&&e.metrics.deletions.push(...w.filter(h=>h.removed).map(h=>h.value)),e.metrics.numCharsDeleted+=m.length-v.length;break}case"C":case"V":case"X":if(!u&&!g){e.metrics.numCharsTyped+=1;let m=((i=e.selection)==null?void 0:i.start)!==void 0&&((a=e.selection)==null?void 0:a.end)!==void 0?e.text.substring(e.selection.start,e.selection.end):null;m&&m.length>0&&(e.metrics.numCharsDeleted+=m.length,e.metrics.deletions.push(m))}break;case"Shift":break;default:if(!u&&!g&&!f){e.metrics.numCharsTyped+=1;let m=((l=e.selection)==null?void 0:l.start)!==void 0&&((c=e.selection)==null?void 0:c.end)!==void 0?e.text.substring(e.selection.start,e.selection.end):null;m&&m.length>0&&(e.metrics.numCharsDeleted+=m.length,e.metrics.deletions.push(m))}}}!e.metrics.agentStartedTypingTimestamp&&o.payload.text!==e.text&&(e.metrics.agentStartedTypingTimestamp=Date.now()),o.payload.text===""&&(e.metrics=Le.metrics,e.textSuggestions=[],e.stagedSuggestion=null),e.text!==o.payload.text&&Bo(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"&&Bo(e)},commitSuggestion(e){Bo(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=_s(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=Le.tabCompletionSuggestion,o.previousKeyDownEvent=Le.previousKeyDownEvent,o.textSuggestions=Le.textSuggestions,o.selectedSuggestionIndex=Le.selectedSuggestionIndex,o.metrics=Le.metrics})}}),Cs=wi("input"),ht=t=>t.input.userCommitted.text.substring(0,t.input.userCommitted.selection.end),_u=t=>t.input.selection,Ti=()=>Su(_u),{userInput:Ei,changeSelection:ws,initialInput:ki,mergeMetrics:Ri,nextTextSuggestionIndex:Ii,offeredTextSuggestion:Pi,previousTextSuggestionIndex:Ai,registerCut:Li,registerKeyDown:Mi,registerPaste:Ni,reset:Oi,resetToCommitted:Vt,platformInput:Di,setSelectedTextSuggestionIndex:Me,setTextSuggestions:ge,stageSuggestion:ie,commitSuggestion:_e,setMetrics:Hi}=Cs.actions,Q=wi("overlay");import{useEffect as Fi,useRef as Ki}from"react";var Bi={root:"_root_1qp5s_1",content:"_content_1qp5s_23"};import{jsx as Ui}from"react/jsx-runtime";var xu=({isOpen:t,autoFocus:e,children:o,onClose:n,onBack:s,overlayAriaLabel:r,contentAriaLabel:i})=>{let a=Ki(null),l=Ki(null),c=y("Dialog",Bi);return Fi(()=>{var u,g;let p=f=>{f.key==="Escape"&&(f.preventDefault(),f.stopPropagation(),s())},d=f=>{let m=window.getSelection();m!=null&&m.toString()||f.target===a.current&&t&&n()};return(u=a.current)==null||u.addEventListener("click",d),(g=a.current)==null||g.addEventListener("keyup",p),()=>{var f,m;(f=a.current)==null||f.removeEventListener("click",d),(m=a.current)==null||m.removeEventListener("keyup",p)}},[a,l,s,n]),Fi(()=>{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?Ui("div",{role:"dialog","data-testid":"dialog",className:c.root,"aria-label":r,ref:a,children:Ui("div",{ref:l,"data-testid":"dialog-content",className:c.content,"aria-label":i,children:o})}):null},yt=xu;import{useEffect as Qa}from"react";import{useDispatch as am,useSelector as lm}from"react-redux";var Ts={};j(Ts,{enUS:()=>bu,nlNL:()=>Cu});var bu={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?"}]},Cu={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 zi={root:"_root_l80t9_1",content:"_content_l80t9_3",title:"_title_l80t9_7",actions:"_actions_l80t9_15",pagination:"_pagination_l80t9_20",primaryButton:"_primaryButton_l80t9_51",primaryButtons:"_primaryButtons_l80t9_55"};import{createContext as Ou,useContext as Du}from"react";var Es=function(t,e){return Es=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])},Es(t,e)};function Wt(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");Es(t,e);function o(){this.constructor=t}t.prototype=e===null?Object.create(e):(o.prototype=e.prototype,new o)}var te=function(){return te=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},te.apply(this,arguments)};function ji(t,e){var o={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(o[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,n=Object.getOwnPropertySymbols(t);s<n.length;s++)e.indexOf(n[s])<0&&Object.prototype.propertyIsEnumerable.call(t,n[s])&&(o[n[s]]=t[n[s]]);return o}function Vo(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 Wo;(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"})(Wo||(Wo={}));var Go=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var ae;(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"})(ae||(ae={}));var $o;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})($o||($o={}));function ks(t){return t.type===ae.literal}function qi(t){return t.type===ae.argument}function Xo(t){return t.type===ae.number}function Qo(t){return t.type===ae.date}function Zo(t){return t.type===ae.time}function Jo(t){return t.type===ae.select}function Yo(t){return t.type===ae.plural}function Vi(t){return t.type===ae.pound}function en(t){return t.type===ae.tag}function tn(t){return!!(t&&typeof t=="object"&&t.type===$o.number)}function Gt(t){return!!(t&&typeof t=="object"&&t.type===$o.dateTime)}function Rs(t){t.forEach(function(e){if(delete e.location,Jo(e)||Yo(e))for(var o in e.options)delete e.options[o].location,Rs(e.options[o].value);else Xo(e)&&tn(e.style)||(Qo(e)||Zo(e))&&Gt(e.style)?delete e.style.location:en(e)&&Rs(e.children)})}function Wi(t,e){e===void 0&&(e={}),e=te({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var o=new Go(t,e).parse();if(o.err){var n=SyntaxError(Wo[o.err.kind]);throw n.location=o.err.location,n.originalMessage=o.err.message,n}return e!=null&&e.captureLocation||Rs(o.val),o.val}function on(t,e){var o=e&&e.cache?e.cache:Iu,n=e&&e.serializer?e.serializer:Ru,s=e&&e.strategy?e.strategy:Tu;return s(t,{cache:o,serializer:n})}function wu(t){return t==null||typeof t=="number"||typeof t=="boolean"}function Gi(t,e,o,n){var s=wu(n)?n:o(n),r=e.get(s);return typeof r>"u"&&(r=t.call(this,n),e.set(s,r)),r}function $i(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 Is(t,e,o,n,s){return o.bind(e,t,n,s)}function Tu(t,e){var o=t.length===1?Gi:$i;return Is(t,this,o,e.cache.create(),e.serializer)}function Eu(t,e){return Is(t,this,$i,e.cache.create(),e.serializer)}function ku(t,e){return Is(t,this,Gi,e.cache.create(),e.serializer)}var Ru=function(){return JSON.stringify(arguments)};function Ps(){this.cache=Object.create(null)}Ps.prototype.get=function(t){return this.cache[t]};Ps.prototype.set=function(t,e){this.cache[t]=e};var Iu={create:function(){return new Ps}},nn={variadic:Eu,monadic:ku};var $e;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})($e||($e={}));var $t=function(t){Wt(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 As=function(t){Wt(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('", "'),'"'),$e.INVALID_VALUE,r)||this}return e}($t);var Xi=function(t){Wt(e,t);function e(o,n,s){return t.call(this,'Value for "'.concat(o,'" must be of type ').concat(n),$e.INVALID_VALUE,s)||this}return e}($t);var Qi=function(t){Wt(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,'"'),$e.MISSING_VALUE,n)||this}return e}($t);var V;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})(V||(V={}));function Pu(t){return t.length<2?t:t.reduce(function(e,o){var n=e[e.length-1];return!n||n.type!==V.literal||o.type!==V.literal?e.push(o):n.value+=o.value,e},[])}function Au(t){return typeof t=="function"}function Xt(t,e,o,n,s,r,i){if(t.length===1&&ks(t[0]))return[{type:V.literal,value:t[0].value}];for(var a=[],l=0,c=t;l<c.length;l++){var p=c[l];if(ks(p)){a.push({type:V.literal,value:p.value});continue}if(Vi(p)){typeof r=="number"&&a.push({type:V.literal,value:o.getNumberFormat(e).format(r)});continue}var d=p.value;if(!(s&&d in s))throw new Qi(d,i);var u=s[d];if(qi(p)){(!u||typeof u=="string"||typeof u=="number")&&(u=typeof u=="string"||typeof u=="number"?String(u):""),a.push({type:typeof u=="string"?V.literal:V.object,value:u});continue}if(Qo(p)){var g=typeof p.style=="string"?n.date[p.style]:Gt(p.style)?p.style.parsedOptions:void 0;a.push({type:V.literal,value:o.getDateTimeFormat(e,g).format(u)});continue}if(Zo(p)){var g=typeof p.style=="string"?n.time[p.style]:Gt(p.style)?p.style.parsedOptions:n.time.medium;a.push({type:V.literal,value:o.getDateTimeFormat(e,g).format(u)});continue}if(Xo(p)){var g=typeof p.style=="string"?n.number[p.style]:tn(p.style)?p.style.parsedOptions:void 0;g&&g.scale&&(u=u*(g.scale||1)),a.push({type:V.literal,value:o.getNumberFormat(e,g).format(u)});continue}if(en(p)){var f=p.children,m=p.value,v=s[m];if(!Au(v))throw new Xi(m,"function",i);var w=Xt(f,e,o,n,s,r),h=v(w.map(function(_){return _.value}));Array.isArray(h)||(h=[h]),a.push.apply(a,h.map(function(_){return{type:typeof _=="string"?V.literal:V.object,value:_}}))}if(Jo(p)){var x=p.options[u]||p.options.other;if(!x)throw new As(p.value,u,Object.keys(p.options),i);a.push.apply(a,Xt(x.value,e,o,n,s));continue}if(Yo(p)){var x=p.options["=".concat(u)];if(!x){if(!Intl.PluralRules)throw new $t(`Intl.PluralRules is not available in this environment.
|
|
1
|
+
var Cd=Object.defineProperty;var j=(t,e)=>{for(var o in e)Cd(t,o,{get:e[o],enumerable:!0})};import ds from"classnames";import Id,{createContext as Rd,useContext as us,useEffect as Pd,useState as Ld}from"react";import wd,{useContext as Td}from"react";import Ed from"classnames";var zt=wd.createContext({});function y(t,e){let{debug:o,...n}=Td(zt),s=n[t];return s?Object.entries(e).reduce((r,[i,a])=>{let l=s[i];return{...r,[i]:Ed(a,l,o?`${t}__${i}`:!1)}},{}):e}var ci={root:"_root_vr71j_1"};import{jsx as Eo,jsxs as kd}from"react/jsx-runtime";var ko=()=>kd("svg",{className:ci.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[Eo("defs",{children:Eo("style",{children:".cls-1 { fill: #b3b3b3; }"})}),Eo("title",{children:"Failed loading image"}),Eo("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 ps={root:"_root_4e7lf_1",imageWrapper:"_imageWrapper_4e7lf_7",image:"_image_4e7lf_7",content:"_content_4e7lf_24",title:"_title_4e7lf_35",contentIsCropped:"_contentIsCropped_4e7lf_45",lineClamp:"_lineClamp_4e7lf_51"};import{jsx as ct}from"react/jsx-runtime";var Io=Rd(ps),Ad=({title:t,src:e})=>{let o=us(Io),[n,s]=Ld(!1);return Pd(()=>{s(!1)},[e]),ct("div",{className:o.imageWrapper,children:e&&!n?ct("img",{className:o.image,alt:t,src:e,onError:()=>s(!0)}):ct(ko,{})})},Md=({className:t,lineClamp:e=!1,cropText:o=!1,children:n})=>{let s=us(Io);return ct("div",{className:ds(s.content,t,{[s.contentIsCropped]:o,[s.lineClamp]:e}),children:n})},Nd=({as:t="h1",cropText:e=!1,className:o,children:n,...s})=>{let r=us(Io);return Id.createElement(t,{className:ds(r.title,o,{[r.contentIsCropped]:e}),...s},n)},Ro=({children:t})=>{let e=y("Card",ps);return ct("div",{className:ds(e.root),children:ct(Io.Provider,{value:e,children:t})})};Ro.Image=Ad;Ro.Content=Md;Ro.Title=Nd;var H=Ro;import Od from"classnames";var pi={root:"_root_cq1yq_1"};import{jsx as Bd}from"react/jsx-runtime";var Dd={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},Hd=({className:t,keyCode:e,...o})=>{let n=y("KeyboardHint",pi);return Bd("span",{"data-key":Dd[e],className:Od(t,n.root),...o})},gs=Hd;import Fd from"classnames";var di={root:"_root_4a08n_1"};import{jsx as Ud}from"react/jsx-runtime";var Kd=({className:t,children:e,...o})=>{let n=y("Label",di);return Ud("span",{...o,className:Fd(t,n.root),children:e})},ms=Kd;var ui={root:"_root_jlggj_1",subTitleContainer:"_subTitleContainer_jlggj_5",subtitle:"_subtitle_jlggj_9",suggestions:"_suggestions_jlggj_17"};import{jsx as fs,jsxs as jd}from"react/jsx-runtime";var zd=({title:t,children:e,type:o,...n})=>{let s=y("Section",ui);return jd("section",{...n,className:s.root,"data-section-type":o,children:[t&&fs("div",{className:s.subTitleContainer,children:fs("span",{className:s.subtitle,children:t})}),fs("div",{className:s.suggestions,children:e})]})},qe=zd;import qd from"classnames";import Vd from"react";var gi={root:"_root_19wxp_1"};import{jsx as Gd}from"react/jsx-runtime";var Wd=Vd.forwardRef(({className:t,children:e},o)=>{let n=y("SectionList",gi);return Gd("div",{ref:o,className:qd(n.root,t),children:e})}),hs=Wd;import Po from"classnames";import $d,{createContext as Xd,useCallback as Qd,useContext as jt}from"react";var ys={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 Se,jsxs as tu}from"react/jsx-runtime";var pt=Xd(ys),Zd=({fixed:t,children:e,...o})=>{let n=jt(pt);return Se("div",{...o,className:Po(n.actions,{[n.actionsIsFixed]:t}),children:e})},Jd=({className:t,primary:e,disabled:o,label:n,children:s})=>{let r=jt(pt);return tu("div",{className:Po(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[n,Se("ul",{className:r.dropdownList,children:s})]})},Yd=({index:t,label:e,onClick:o})=>{let n=jt(pt);return Se("li",{className:n.dropdownItem,children:Se("button",{className:n.dropdownItemButton,type:"button","data-index":t,onClick:o,children:e})})},eu=({className:t,primary:e,disabled:o,onClick:n,label:s})=>{let r=jt(pt);return Se("button",{type:"button",className:Po(t,r.actionButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onClick:n??(i=>i.stopPropagation()),disabled:o,"aria-hidden":o,children:s})},vs=({labels:t})=>{let e=jt(pt);return Se("div",{className:e.labels,children:t.map(o=>Se("span",{className:e.label,children:o},o))})},dt=$d.forwardRef(({className:t,selected:e,onClick:o,children:n,as:s="div",...r},i)=>{let a=y("Suggestion",ys),l=Qd(c=>{c.preventDefault(),o&&o(c)},[o]);return Se(s,{...r,ref:i,className:Po(t,a.root,{[a.isSelected]:e,[a.isClickable]:!!o}),onClick:l,children:Se(pt.Provider,{value:a,children:n})})});dt.Labels=vs;dt.Actions=Zd;dt.ActionButton=eu;dt.DropdownButton=Jd;dt.DropdownItem=Yd;var D=dt;import ou from"classnames";var mi={root:"_root_fp74r_1",isWithDivider:"_isWithDivider_fp74r_9"};import{jsx as su}from"react/jsx-runtime";var nu=({withDivider:t,children:e})=>{let o=y("SuggestionList",mi);return su("div",{"data-testid":"suggestions-overlay-list",className:ou(o.root,{[o.isWithDivider]:t}),children:e})},re=nu;import ru from"classnames";var fi={root:"_root_1wpmq_1",isCollapsed:"_isCollapsed_1wpmq_17"};import{jsx as Ss}from"react/jsx-runtime";var iu=({className:t,isCollapsed:e,title:o,onClick:n})=>{let s=y("ToggleButton",fi);return Ss("button",{type:"button",className:ru(s.root,t,{[s.isCollapsed]:e}),onClick:n,title:o,children:Ss("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:Ss("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},ut=iu;var hi=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,gt=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var yi=/x-deepdesk-(([a-z0-9\-_])+-version)/,ue=(m=>(m.SEARCH="search",m.TEMPLATE="template",m.ELASTIC_SEARCH="search-autocomplete",m.GPT="gpt",m.TRIE="trie",m.TRIE_WITH_TYPOS="trie-with-typos",m.SEMANTIC="semantic",m.TEXT_RECOMMENDATION="text_recommendation",m.URL_RECOMMENDATION="url_recommendation",m.LINK_RECOMMENDATION="link_recommendation",m.PERSONAL_COLLECTION="personal-collection",m.PERSONAL_COLLECTION_SEARCH="personal-collection-search",m.SEARCH_OVERLAY="search-overlay",m.SEARCH_PREVIEW="search-preview",m.SEARCH_URL="search-url",m))(ue||{}),Ve=(r=>(r.ENTER="enter",r.TAB="tab",r.ARROW="arrow",r.HOTKEY="hotkey",r.MOUSE="mouse",r))(Ve||{});import{render as Ft,unmountComponentAtNode as as}from"react-dom";import{Fragment as qf}from"react";import{createSlice as au}from"@reduxjs/toolkit";import{useSelector as lu}from"react-redux";var Lo=(o=>(o.NL_NL="nl-NL",o.EN_US="en-US",o))(Lo||{});var cu={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"},vi=au({name:"settings",initialState:cu,reducers:{set(t,e){Object.entries(e.payload).forEach(o=>{let[n,s]=o;typeof s>"u"||(t[n]=s)})}}}),{set:qt}=vi.actions,_s=t=>e=>e.settings[t],C=t=>lu(_s(t)),Si=vi.reducer;import{useState as Em}from"react";import{useDispatch as km,useSelector as ur}from"react-redux";import{createAction as We,createSlice as yu}from"@reduxjs/toolkit";import{diffChars as vu}from"diff";import{useSelector as Su}from"react-redux";function _i(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function Le(t,e,o=10){let n=typeof t,s=typeof e;if(o===0)throw new Error("Max depth deepEqual, possible circular references?");return n!==s?!1:t==null||n==="string"||n==="number"||n==="boolean"?t===e:Array.isArray(t)&&Array.isArray(e)?t.length!==e.length?!1:t.every((r,i)=>Le(r,e[i],o-1)):_i(t)&&_i(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>Le(t[i],e[i],o-1)):!1}function pu(t){return Math.max(...t.map(e=>e.length))}function du(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 xi(t,e){let n=[...t.map(({text:s})=>s.split(/\b(\w+)\b/))];for(let s=0;s<pu(n);s++){let r=du(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 uu=2;function xs(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let o=xi(t,uu);return o&&o.text!==e?o:t[0]}import{createAction as gu,createAsyncThunk as mt,createSlice as mu}from"@reduxjs/toolkit";var bi={current:null,isSupported:null},L=gu("resetConversation"),Ao=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.sessionId)||null},Mo=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},ft=t=>t.conversation.isSupported,bs=mt("conversation/isSupported",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.isConversationSupported(t.sessionId,t.options)}),No=mt("conversation/create",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.createConversation(t)}),Oo=mt("conversation/bySessionId",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.getConversationBySessionId(t.sessionId,t.options)}),Do=mt("conversation/update",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Mo(e.getState());if(!n)throw new Error("No current conversation to update");return o.updateConversation(n,t)}),Cs=mt("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})})}),Ho=mt("conversation/postMessages",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Mo(e.getState());if(!n)throw new Error("No current conversation to update messages");return o.postMessages(n,t.map(s=>({...s})))}),fu=[No.rejected,Oo.rejected,Do.rejected,Ho.rejected].map(t=>t==null?void 0:t.toString()),hu=mu({name:"conversation",initialState:bi,reducers:{},extraReducers:t=>{t.addCase(bs.fulfilled,(e,o)=>{e.isSupported=o.payload}).addCase(No.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Oo.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Cs.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Do.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Ho.fulfilled,(e,o)=>{e.current&&(e.current.messages=o.payload)}).addCase(L,()=>bi).addMatcher(e=>fu.includes(e.type),(e,o)=>{throw new Error(o.error.message)})}}),Ci=hu.reducer;var Ae={text:"",html:null,selection:{start:0,end:0},stagedSuggestion:null,userCommitted:{text:"",selection:{start:0,end:0}},tabCompletionSuggestion:void 0,previousKeyDownEvent:null,textSuggestions:[],selectedSuggestionIndex:-1,metrics:{numCharsTyped:0,numCharsPasted:0,numCharsCut:0,numCharsDeleted:0,numPaste:0,agentStartedTypingTimestamp:null,externalTimeTotalSeconds:null,pastes:[],deletions:[],offeredTextSuggestions:[],textSuggestions:[],cuts:[]}};function Fo(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 Ko=We("input/replaceText"),Uo=We("input/keyDown"),Ge=We("input/sendMessage"),zo=We("input/sendEditSuggestionMessage"),jo=We("input/uiInputChange"),qo=We("input/applyImageSuggestion"),q=We("input/sendEvent");function Bo(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",u=e.slice(t.userCommitted.text.substring(0,t.userCommitted.selection.start).length);(d||p==="selection")&&(u=e),t.stagedSuggestion.suggestion.source==="search-overlay"&&(u=l),t.userCommitted.text=t.text,t.userCommitted.selection=t.selection,t.metrics.textSuggestions.push({text:u,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 wi=t=>yu({name:t,initialState:Ae,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,{...Ae,selection:e.selection})},resetToCommitted(e){e.text=e.userCommitted.text,e.selection=e.userCommitted.selection,e.stagedSuggestion=null,e.tabCompletionSuggestion=xs(e.textSuggestions,e.userCommitted.text)},changeSelection(e,o){o.payload&&(Le(e.selection,o.payload)||(e.selection=o.payload,e.userCommitted.selection=e.selection,e.stagedSuggestion&&Bo(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:u,metaKey:g,altKey:f}=e.previousKeyDownEvent;switch(p){case"Enter":d&&(e.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:m}=e,{text:v}=o.payload,w=vu(m,v);m.length-v.length>1&&e.metrics.deletions.push(...w.filter(h=>h.removed).map(h=>h.value)),e.metrics.numCharsDeleted+=m.length-v.length;break}case"C":case"V":case"X":if(!u&&!g){e.metrics.numCharsTyped+=1;let m=((i=e.selection)==null?void 0:i.start)!==void 0&&((a=e.selection)==null?void 0:a.end)!==void 0?e.text.substring(e.selection.start,e.selection.end):null;m&&m.length>0&&(e.metrics.numCharsDeleted+=m.length,e.metrics.deletions.push(m))}break;case"Shift":break;default:if(!u&&!g&&!f){e.metrics.numCharsTyped+=1;let m=((l=e.selection)==null?void 0:l.start)!==void 0&&((c=e.selection)==null?void 0:c.end)!==void 0?e.text.substring(e.selection.start,e.selection.end):null;m&&m.length>0&&(e.metrics.numCharsDeleted+=m.length,e.metrics.deletions.push(m))}}}!e.metrics.agentStartedTypingTimestamp&&o.payload.text!==e.text&&(e.metrics.agentStartedTypingTimestamp=Date.now()),o.payload.text===""&&(e.metrics=Ae.metrics,e.textSuggestions=[],e.stagedSuggestion=null),e.text!==o.payload.text&&Bo(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"&&Bo(e)},commitSuggestion(e){Bo(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=xs(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(L,o=>{o.tabCompletionSuggestion=Ae.tabCompletionSuggestion,o.previousKeyDownEvent=Ae.previousKeyDownEvent,o.textSuggestions=Ae.textSuggestions,o.selectedSuggestionIndex=Ae.selectedSuggestionIndex,o.metrics=Ae.metrics})}}),ws=wi("input"),ht=t=>t.input.userCommitted.text.substring(0,t.input.userCommitted.selection.end),_u=t=>t.input.selection,Ti=()=>Su(_u),{userInput:Ei,changeSelection:Ts,initialInput:ki,mergeMetrics:Ii,nextTextSuggestionIndex:Ri,offeredTextSuggestion:Pi,previousTextSuggestionIndex:Li,registerCut:Ai,registerKeyDown:Mi,registerPaste:Ni,reset:Oi,resetToCommitted:Vt,platformInput:Di,setSelectedTextSuggestionIndex:Me,setTextSuggestions:ge,stageSuggestion:ie,commitSuggestion:_e,setMetrics:Hi}=ws.actions,Q=wi("overlay");import{useEffect as Fi,useRef as Ki}from"react";var Bi={root:"_root_1qp5s_1",content:"_content_1qp5s_23"};import{jsx as Ui}from"react/jsx-runtime";var xu=({isOpen:t,autoFocus:e,children:o,onClose:n,onBack:s,overlayAriaLabel:r,contentAriaLabel:i})=>{let a=Ki(null),l=Ki(null),c=y("Dialog",Bi);return Fi(()=>{var u,g;let p=f=>{f.key==="Escape"&&(f.preventDefault(),f.stopPropagation(),s())},d=f=>{let m=window.getSelection();m!=null&&m.toString()||f.target===a.current&&t&&n()};return(u=a.current)==null||u.addEventListener("click",d),(g=a.current)==null||g.addEventListener("keyup",p),()=>{var f,m;(f=a.current)==null||f.removeEventListener("click",d),(m=a.current)==null||m.removeEventListener("keyup",p)}},[a,l,s,n]),Fi(()=>{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?Ui("div",{role:"dialog","data-testid":"dialog",className:c.root,"aria-label":r,ref:a,children:Ui("div",{ref:l,"data-testid":"dialog-content",className:c.content,"aria-label":i,children:o})}):null},yt=xu;import{useEffect as Qa}from"react";import{useDispatch as am,useSelector as lm}from"react-redux";var Es={};j(Es,{enUS:()=>bu,nlNL:()=>Cu});var bu={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?"}]},Cu={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 zi={root:"_root_l80t9_1",content:"_content_l80t9_3",title:"_title_l80t9_7",actions:"_actions_l80t9_15",pagination:"_pagination_l80t9_20",primaryButton:"_primaryButton_l80t9_51",primaryButtons:"_primaryButtons_l80t9_55"};import{createContext as Ou,useContext as Du}from"react";var ks=function(t,e){return ks=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])},ks(t,e)};function Wt(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");ks(t,e);function o(){this.constructor=t}t.prototype=e===null?Object.create(e):(o.prototype=e.prototype,new o)}var te=function(){return te=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},te.apply(this,arguments)};function ji(t,e){var o={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(o[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,n=Object.getOwnPropertySymbols(t);s<n.length;s++)e.indexOf(n[s])<0&&Object.prototype.propertyIsEnumerable.call(t,n[s])&&(o[n[s]]=t[n[s]]);return o}function Vo(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 Wo;(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"})(Wo||(Wo={}));var Go=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var ae;(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"})(ae||(ae={}));var $o;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})($o||($o={}));function Is(t){return t.type===ae.literal}function qi(t){return t.type===ae.argument}function Xo(t){return t.type===ae.number}function Qo(t){return t.type===ae.date}function Zo(t){return t.type===ae.time}function Jo(t){return t.type===ae.select}function Yo(t){return t.type===ae.plural}function Vi(t){return t.type===ae.pound}function en(t){return t.type===ae.tag}function tn(t){return!!(t&&typeof t=="object"&&t.type===$o.number)}function Gt(t){return!!(t&&typeof t=="object"&&t.type===$o.dateTime)}function Rs(t){t.forEach(function(e){if(delete e.location,Jo(e)||Yo(e))for(var o in e.options)delete e.options[o].location,Rs(e.options[o].value);else Xo(e)&&tn(e.style)||(Qo(e)||Zo(e))&&Gt(e.style)?delete e.style.location:en(e)&&Rs(e.children)})}function Wi(t,e){e===void 0&&(e={}),e=te({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var o=new Go(t,e).parse();if(o.err){var n=SyntaxError(Wo[o.err.kind]);throw n.location=o.err.location,n.originalMessage=o.err.message,n}return e!=null&&e.captureLocation||Rs(o.val),o.val}function on(t,e){var o=e&&e.cache?e.cache:Ru,n=e&&e.serializer?e.serializer:Iu,s=e&&e.strategy?e.strategy:Tu;return s(t,{cache:o,serializer:n})}function wu(t){return t==null||typeof t=="number"||typeof t=="boolean"}function Gi(t,e,o,n){var s=wu(n)?n:o(n),r=e.get(s);return typeof r>"u"&&(r=t.call(this,n),e.set(s,r)),r}function $i(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 Ps(t,e,o,n,s){return o.bind(e,t,n,s)}function Tu(t,e){var o=t.length===1?Gi:$i;return Ps(t,this,o,e.cache.create(),e.serializer)}function Eu(t,e){return Ps(t,this,$i,e.cache.create(),e.serializer)}function ku(t,e){return Ps(t,this,Gi,e.cache.create(),e.serializer)}var Iu=function(){return JSON.stringify(arguments)};function Ls(){this.cache=Object.create(null)}Ls.prototype.get=function(t){return this.cache[t]};Ls.prototype.set=function(t,e){this.cache[t]=e};var Ru={create:function(){return new Ls}},nn={variadic:Eu,monadic:ku};var $e;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})($e||($e={}));var $t=function(t){Wt(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 As=function(t){Wt(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('", "'),'"'),$e.INVALID_VALUE,r)||this}return e}($t);var Xi=function(t){Wt(e,t);function e(o,n,s){return t.call(this,'Value for "'.concat(o,'" must be of type ').concat(n),$e.INVALID_VALUE,s)||this}return e}($t);var Qi=function(t){Wt(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,'"'),$e.MISSING_VALUE,n)||this}return e}($t);var V;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})(V||(V={}));function Pu(t){return t.length<2?t:t.reduce(function(e,o){var n=e[e.length-1];return!n||n.type!==V.literal||o.type!==V.literal?e.push(o):n.value+=o.value,e},[])}function Lu(t){return typeof t=="function"}function Xt(t,e,o,n,s,r,i){if(t.length===1&&Is(t[0]))return[{type:V.literal,value:t[0].value}];for(var a=[],l=0,c=t;l<c.length;l++){var p=c[l];if(Is(p)){a.push({type:V.literal,value:p.value});continue}if(Vi(p)){typeof r=="number"&&a.push({type:V.literal,value:o.getNumberFormat(e).format(r)});continue}var d=p.value;if(!(s&&d in s))throw new Qi(d,i);var u=s[d];if(qi(p)){(!u||typeof u=="string"||typeof u=="number")&&(u=typeof u=="string"||typeof u=="number"?String(u):""),a.push({type:typeof u=="string"?V.literal:V.object,value:u});continue}if(Qo(p)){var g=typeof p.style=="string"?n.date[p.style]:Gt(p.style)?p.style.parsedOptions:void 0;a.push({type:V.literal,value:o.getDateTimeFormat(e,g).format(u)});continue}if(Zo(p)){var g=typeof p.style=="string"?n.time[p.style]:Gt(p.style)?p.style.parsedOptions:n.time.medium;a.push({type:V.literal,value:o.getDateTimeFormat(e,g).format(u)});continue}if(Xo(p)){var g=typeof p.style=="string"?n.number[p.style]:tn(p.style)?p.style.parsedOptions:void 0;g&&g.scale&&(u=u*(g.scale||1)),a.push({type:V.literal,value:o.getNumberFormat(e,g).format(u)});continue}if(en(p)){var f=p.children,m=p.value,v=s[m];if(!Lu(v))throw new Xi(m,"function",i);var w=Xt(f,e,o,n,s,r),h=v(w.map(function(_){return _.value}));Array.isArray(h)||(h=[h]),a.push.apply(a,h.map(function(_){return{type:typeof _=="string"?V.literal:V.object,value:_}}))}if(Jo(p)){var x=p.options[u]||p.options.other;if(!x)throw new As(p.value,u,Object.keys(p.options),i);a.push.apply(a,Xt(x.value,e,o,n,s));continue}if(Yo(p)){var x=p.options["=".concat(u)];if(!x){if(!Intl.PluralRules)throw new $t(`Intl.PluralRules is not available in this environment.
|
|
2
2
|
Try polyfilling it using "@formatjs/intl-pluralrules"
|
|
3
|
-
`,$e.MISSING_INTL_API,i);var b=o.getPluralRules(e,{type:p.pluralType}).select(u-(p.offset||0));x=p.options[b]||p.options.other}if(!x)throw new As(p.value,u,Object.keys(p.options),i);a.push.apply(a,Xt(x.value,e,o,n,s,u-(p.offset||0)));continue}}return Pu(a)}function Lu(t,e){return e?te(te(te({},t||{}),e||{}),Object.keys(t).reduce(function(o,n){return o[n]=te(te({},t[n]),e[n]||{}),o},{})):t}function Mu(t,e){return e?Object.keys(t).reduce(function(o,n){return o[n]=Lu(t[n],e[n]),o},te({},t)):t}function Ls(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,o){t[e]=o}}}}}function Nu(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:on(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.NumberFormat).bind.apply(e,Vo([void 0],o,!1)))},{cache:Ls(t.number),strategy:nn.variadic}),getDateTimeFormat:on(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.DateTimeFormat).bind.apply(e,Vo([void 0],o,!1)))},{cache:Ls(t.dateTime),strategy:nn.variadic}),getPluralRules:on(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.PluralRules).bind.apply(e,Vo([void 0],o,!1)))},{cache:Ls(t.pluralRules),strategy:nn.variadic})}}var Zi=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(u,g){return!u.length||g.type!==V.literal||typeof u[u.length-1]!="string"?u.push(g.value):u[u.length-1]+=g.value,u},[]);return d.length<=1?d[0]||"":d},this.formatToParts=function(c){return Xt(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=ji(i,["formatters"]);this.ast=t.__parse(e,te(te({},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=Mu(t.formats,n),this.formatters=s&&s.formatters||Nu(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=Wi,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 Hu(t,e){return e.split(".").reduce((o,n)=>o?o[n]:void 0,t)}var Bu="dummy",Ms=Ou(null);function T(t){let e=Du(Ms);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=Hu(o,n);return r?new Zi(r).format(s):(e!==Bu&&console.warn(`${n} does not exist in messages of ${e}`),`[${n}]`)}}import{jsx as Ji,jsxs as Fu}from"react/jsx-runtime";var sn=()=>Fu("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[Ji("title",{id:"angleLeftTitle",children:"AngleLeft"}),Ji("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 Yi,jsxs as Ku}from"react/jsx-runtime";var ea=()=>Ku("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleRightTitle",children:[Yi("title",{id:"angleRightTitle",children:"AngleRight"}),Yi("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 Zt,useRef as js,useState as pg}from"react";import{useDispatch as dg}from"react-redux";import{Interweave as Sa}from"interweave";import _a from"classnames";var Ns={root:"_root_kxnai_1",agentText:"_agentText_kxnai_3",textInput:"_textInput_kxnai_8",textInputWrapper:"_textInputWrapper_kxnai_27",alert:"_alert_kxnai_31",alertText:"_alertText_kxnai_50",warning:"_warning_kxnai_60",success:"_success_kxnai_69"};import{Matcher as qu}from"interweave";import Vu from"classnames";import{useEffect as Uu,useRef as zu,useState as ju}from"react";function ta(t,e){let o;return[(...n)=>{window.cancelAnimationFrame(o);let s=e?e(...n):n;o=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(o)]}function rn(t){let e=zu(null),[o,n]=ju(!1);return Uu(()=>{let s=!1,r=parseFloat(window.getComputedStyle(document.body).zoom??"1"),[i,a]=ta((p,d)=>{let u=e.current;if(!u)return;let g=p/r,f=d/r,m=u.getBoundingClientRect(),v=g>m.x&&g<m.x+m.width&&f>m.y&&f<m.y+m.height;v&&!s?(s=!0,n(!0)):!v&&s&&(s=!1,n(!1))},({clientX:p,clientY:d})=>[p,d]),[l,c]=ta(()=>{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 xe={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 oa}from"react/jsx-runtime";var Wu=({inputElement:t,children:e})=>{let o=y("TabCompletion",xe),[n,s]=rn(t);return oa("mark",{ref:n,className:Vu(o.matchPlaceholder,{[o.hover]:s}),children:e})},vt=class extends qu{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 oa(Wu,{inputElement:o.inputElement,children:e},`placeholder_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import{useEffect as Gu,useRef as $u,useState as Xu}from"react";function an(t){return t.contentEditable==="true"}function Qu(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 na(t){let{selectionStart:e,selectionEnd:o}=an(t)?Qu(t):t;return[e,o]}function ln(t){let[,e]=Xu(),o=$u(null);return o.current=na(t),Gu(()=>{let n=()=>{let[s,r]=o.current??[],i=na(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 cn(t,e){if(!e)return;let o=t,{value:n}=o,[s,r]=e,i=n.match(gt);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 Zu}from"react";function St(t){Zu(()=>{let e=o=>{o.isWithinRoot||t(o)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function Xe(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}var sa,me=new Map,Ju=["bottom","height","left","right","top","width"],Yu=(t={},e={})=>Ju.some(o=>t[o]!==e[o]);function ra(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,...ra(e)]:[]}function ia(t,e){return!t||!e?null:{...t,top:t.top+e.top,left:t.left+e.left}}var pn=!1,aa=()=>{pn=!0;let t=[];if(me.forEach((e,o)=>{if(!o.isConnected){e.rect=null,t.push(e),me.delete(o);return}let n=o.getBoundingClientRect();Yu(n,e.rect)&&(e.rect=n,t.push(e))}),t.forEach(e=>{let o=e.parentRects?e.parentRects.reduce(ia,e.rect):e.rect;e.callbacks.forEach(n=>n(o))}),me.size===0){pn=!1;return}sa=window.requestAnimationFrame(aa)};function Os(t,e){let o=ra(t),n=[],s=o.map((r,i)=>Os(r,a=>{n[i]=a;let l=me.get(t);if(!l)return;let c=n.reduce(ia,l.rect);l.callbacks.forEach(p=>p(c))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),me.has(t)){let i=me.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else me.set(t,{rect:void 0,callbacks:[e],parentRects:n});r&&!pn&&aa()},unobserve(){s.forEach(i=>i.unobserve());let r=me.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||me.delete(t),me.size||(cancelAnimationFrame(sa),pn=!1)}}}}var la,fe=new Map,ca=()=>{fe.forEach((t,e)=>{if(!e.isConnected){fe.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)))}),fe.size!==0&&(la=window.requestAnimationFrame(ca))};function pa(t,e){return{observe(){let o=fe.size===0;fe.has(t)?fe.get(t).callbacks.push(e):fe.set(t,{visible:void 0,callbacks:[e]}),o&&ca()},unobserve(){let o=fe.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||fe.delete(t),fe.size||cancelAnimationFrame(la)}}}}var Ds=["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 Hs(t,e,o){return o.forEach(n=>{e.style[n]=t[n]})}function _t(t){return parseFloat(t)}function dn(t){return Math.round(t*1e6)}function da(t){return t/1e6}function Bs(t,e,o){if(t.boxSizing==="content-box")return;let{clientWidth:n}=e,s=_t(t.width),r=_t(t.borderLeftWidth),i=_t(t.borderRightWidth),a=_t(t.paddingRight),l=da(dn(s)-dn(r)-dn(i)),c=da(dn(n));if(l-c>2){let p=l-c;o.style.paddingRight=`${a+p}px`}}function xt(t,e={}){var l;let o=e.overlayContainer||document.createElement("div");o.style.display="none",o.style.position=e.position??"fixed",o.style.pointerEvents="none",o.style.borderColor="transparent",Xe(o);let n=window.getComputedStyle(t),s=!0,r=()=>{o.scrollTop=t.scrollTop};Hs(n,o,Ds),Bs(n,t,o),e.mirrorOverflow&&(o.style.overflow="hidden",t.addEventListener("scroll",r));let i=pa(t,()=>{Hs(n,o,Ds),Bs(n,t,o),r(),setTimeout(r,0)}),a=Os(t,c=>{if(c===null){e.onRemove&&e.onRemove(),o.remove();return}if(c.height===0&&c.width===0){if(s===!0)return;e.onHide&&e.onHide(),o.style.display="none",s=!0;return}if(Hs(n,o,Ds),Bs(n,t,o),r(),o.style.top=`${c.top}px`,o.style.left=`${c.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let p=e.closestScrollElement.getBoundingClientRect(),d=window.getComputedStyle(e.closestScrollElement),u=_t(d.borderTopWidth),g=_t(d.borderBottomWidth),f=p.top+u-c.top,m=c.top+c.height+-(p.top+p.height-g);o.style.clipPath=`inset(${f}px 0px ${m}px 0px)`}s&&(o.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(o):(l=t.parentElement)==null||l.appendChild(o),a.observe(),i.observe(),[o,()=>{t.removeEventListener("scroll",r),a.unobserve(),i.unobserve()}]}var Fs={};j(Fs,{enUS:()=>eg,nlNL:()=>tg});var eg={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"}]},tg={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 ua,jsxs as og}from"react/jsx-runtime";var ga=()=>og("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 512 512","aria-labelledby":"circleCheckTitle",children:[ua("title",{id:"circleCheckTitle",children:"Check"}),ua("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 ma}from"react/jsx-runtime";var fa=()=>ma("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",fill:"currentColor",children:ma("path",{d:"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224c0-17.7-14.3-32-32-32s-32 14.3-32 32s14.3 32 32 32s32-14.3 32-32z"})});function ng(t){let e=t.scrollHeight>t.clientHeight,n=window.getComputedStyle(t).overflowY.indexOf("hidden")!==-1;return e&&!n}function un(t){return t?t instanceof ShadowRoot?un(t.host):t===t.ownerDocument.body?t.ownerDocument:ng(t)?t:un(t.parentNode):document.body}var ha=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(ha||{}),Ne=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();Ae(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(ha).includes(o)||o.toLowerCase()==="z"&&(n||s),this.emit("keydown",e)}handleCut(){this.isPossibleClearInputAction=!0,this.emit("cut",{selectionText:this.getSelectedText()})}handlePaste(e){var n,s;let o=((n=e.clipboardData)==null?void 0:n.getData("text"))||((s=e.clipboardData)==null?void 0:s.getData("text/plain"))||"";this.emit("paste",{pastedText:o,selectionText:this.getSelectedText()})}listen(){this.addEventListener("keydown",n=>this.handleKeyDown(n)),this.addEventListener("keyup",n=>this.handleKeyUp(n)),this.addEventListener("input",()=>this.triggerChange()),this.addEventListener("change",()=>this.triggerChange()),this.addEventListener("focus",()=>this.handleFocus()),this.addEventListener("blur",()=>this.handleBlur()),this.addEventListener("cut",()=>this.handleCut()),this.addEventListener("paste",n=>this.handlePaste(n)),this.addEventListener("click",()=>this.triggerSelection()),document.activeElement===this.element&&setTimeout(()=>{this.handleFocus()},0);let e=new MutationObserver(()=>{this.element.isConnected||(this.emit("unmounted"),this.dispose())});e.observe(document.body,{subtree:!0,childList:!0}),this.disposeHandlers.push(()=>{e.disconnect()});let o=un(this.element);if(o){let n=()=>{this.currentCaret!==null&&(this.currentCaret=null,this.emit("caret",null))};o.addEventListener("scroll",n),this.disposeHandlers.push(()=>{o.removeEventListener("scroll",n)})}this.currentSelection=this.getSelection()}focus(){this.element.focus()}emit(e,...o){this.isDisposed||this.eventListeners[e]&&this.eventListeners[e].forEach(n=>{n(...o)})}on(e,o){this.isDisposed||(this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o))}activate(){let e=this.isActive===!1;this.isActive=!0,e&&this.triggerChange()}deactivate(){this.isActive=!1}dispose(){this.disposeHandlers.forEach(e=>e()),this.eventListeners={},this.isDisposed=!0}};var Oe=class extends Ne{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 sg=/[.*+?^${}()|[\]\\]/g,rg=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function ig(t){return t.replace(sg,"\\$&")}function ag(t,e){let o=t.split("").findIndex((n,s)=>n!==e[s]);return o>-1?o:Math.min(t.length,e.length)}function lg(t){return t.search(rg)}function ya(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 va(t){return t.replace(gt,'<mark data-type="placeholder">$1</mark>')}function Qt(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function cg(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 Ks(t,e,o={}){if(e){let n=ag(e.toLowerCase(),t.toLowerCase()),s=Qt(t.substring(n,t.length));if(o.stripAgentPart){let l=t.substring(0,n),c=lg(l);return`<span style="opacity: 0.5">${l.substring(c+1)}</span>${s}`}let i=e.split(hi).length>3||e.length>30?cg(e.trim(),n):0;return`${`${i>0?"\u2026":""}${Qt(t.substring(i,n))}`}<strong>${s}</strong>`}return t}function Us(t){return/<\/?[a-z][\s\S]*>/i.test(t)}function gn(t){if(Us(t)){let o=/<body[^>]*>([\s\S]*)<\/body>/gi.exec(t);return o?o[1]:""}return t}import{jsx as le,jsxs as zs}from"react/jsx-runtime";var ug=({value:t,onUse:e,...o})=>{var d;let n=T(Fs),s=dg(),r=Us(t),i=y("EditSuggestionTextInput",Ns),[a,l]=pg(null),c=js(null),p=((d=t.match(gt))==null?void 0:d.length)||0;return Zt(()=>{let u;return c.current&&(l(c.current),u=new Oe(c.current),u.on("change",({plainText:g})=>{s(Q.actions.userInput({text:g,selection:u.getSelection()}))}),u.on("keydown",g=>{s(Q.actions.registerKeyDown(Fo(g))),g.code==="Enter"&&g.shiftKey&&e(u.getText())}),u.on("paste",({pastedText:g,selectionText:f})=>{s(Q.actions.registerPaste({text:g,selectionText:f}))}),u.on("cut",({selectionText:g})=>{s(Q.actions.registerCut(g))})),()=>{s(Q.actions.reset()),u.dispose(),u.deactivate()}},[c]),Zt(()=>{t&&c.current&&(c.current.value=t)},[t,c]),Zt(()=>{c.current&&setTimeout(()=>{if(!c.current)return;let u=c.current.value.length;c.current.setSelectionRange(u,u),c.current.focus()},0)},[c]),r?le("div",{className:i.textInputWrapper,children:le(Sa,{className:i.textInput,tagName:"div",content:t})}):zs("div",{className:i.textInputWrapper,children:[le("textarea",{...o,ref:c,"data-testid":"edit-suggestion-dialog-textarea",className:i.textInput,defaultValue:t,onChange:()=>{}}),a&&le(gg,{inputElement:c.current,value:t}),zs("div",{className:_a(i.alert,p===0?i.success:i.warning),children:[le("div",{className:i.alertText,children:n("placeholders",{placeholderSize:p})}),p===0?le(ga,{}):le(fa,{})]})]})},gg=({inputElement:t,value:e})=>{let o=y("EditSuggestionTextInput",Ns),n=js(null),s=ln(t);return Zt(()=>{cn(t,s)},[s,t]),le(mg,{inputElement:t,children:zs("div",{ref:n,className:_a(o.root,o.agentText),children:[le(Sa,{tagName:"span",disableLineBreaks:!0,content:e,matchers:[new vt("placeholders")],inputElement:t,boundaryRef:n}),le("br",{})]})})},mg=({inputElement:t,children:e})=>{let o=js(null);return Zt(()=>{if(!o.current)return()=>{};let[n,s]=xt(t,{overlayContainer:o.current,mirrorOverflow:!0});return n.setAttribute("translate","no"),()=>{s()}},[o.current]),le("div",{ref:o,children:e})},xa=ug;import{useEffect as nm,useState as sm,useRef as rm}from"react";import{useState as yg}from"react";import qs from"classnames";var Z={root:"_root_pc5uy_1",list:"_list_pc5uy_2",listWrapper:"_listWrapper_pc5uy_6",listHorizontal:"_listHorizontal_pc5uy_10",page:"_page_pc5uy_19",search:"_search_pc5uy_25",pageNav:"_pageNav_pc5uy_33",pageTitle:"_pageTitle_pc5uy_41",pageBackButton:"_pageBackButton_pc5uy_48",listHeading:"_listHeading_pc5uy_62",listItem:"_listItem_pc5uy_70",listItemContent:"_listItemContent_pc5uy_79",listItemText:"_listItemText_pc5uy_97",listItemDescription:"_listItemDescription_pc5uy_105",listItemActions:"_listItemActions_pc5uy_112",truncate:"_truncate_pc5uy_123",lineClamp:"_lineClamp_pc5uy_129",listItemTitle:"_listItemTitle_pc5uy_136",listItemAction:"_listItemAction_pc5uy_112",listItemPrimaryAction:"_listItemPrimaryAction_pc5uy_157",listItemSelected:"_listItemSelected_pc5uy_162",sources:"_sources_pc5uy_166",sourcesTitle:"_sourcesTitle_pc5uy_173",source:"_source_pc5uy_166",icon:"_icon_pc5uy_188",searchIcon:"_searchIcon_pc5uy_205",searchInputWrapper:"_searchInputWrapper_pc5uy_210",searchInput:"_searchInput_pc5uy_210",select:"_select_pc5uy_231",selectType:"_selectType_pc5uy_248",selectWrapper:"_selectWrapper_pc5uy_252",image:"_image_pc5uy_282",imageSrc:"_imageSrc_pc5uy_289",imageSrcHidden:"_imageSrcHidden_pc5uy_300",imageSrcStatus:"_imageSrcStatus_pc5uy_304",imageTitle:"_imageTitle_pc5uy_314",actions:"_actions_pc5uy_319",actionsWrapper:"_actionsWrapper_pc5uy_323",actionsBar:"_actionsBar_pc5uy_329",actionButton:"_actionButton_pc5uy_338",actionShortcut:"_actionShortcut_pc5uy_356",actionShortcutFixKerning:"_actionShortcutFixKerning_pc5uy_363"};var Qe={};j(Qe,{enUS:()=>fg,nlNL:()=>hg});var fg={visitUrl:[{type:0,value:"Visit"}],back:[{type:0,value:"Back"}],loading:[{type:0,value:"Loading..."}],imageError:[{type:0,value:"Could not load image"}]},hg={visitUrl:[{type:0,value:"Bekijk"}],back:[{type:0,value:"Terug"}],loading:[{type:0,value:"Laden..."}],imageError:[{type:0,value:"Kan afbeelding niet laden"}]};import{jsx as Jt,jsxs as Sg}from"react/jsx-runtime";var vg=({src:t,title:e})=>{let o=y("CommandPalette",Z),[n,s]=yg("loading"),r=T(Qe);return Sg("div",{className:o.image,children:[Jt("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:qs(o.imageSrc,{[o.imageSrcHidden]:["loading","error"].includes(n)})}),n==="loading"&&Jt("span",{className:qs(o.imageSrc,o.imageSrcStatus),children:r("loading")}),n==="error"&&Jt("span",{className:qs(o.imageSrc,o.imageSrcStatus),children:Jt(ko,{})}),e&&Jt("span",{className:o.imageTitle,children:e})]})},ba=vg;import _g from"react";import xg from"classnames";import{jsx as Ca,jsxs as bg}from"react/jsx-runtime";function Vs({children:t,heading:e,orientation:o}){let n=y("CommandPalette",Z);return _g.Children.count(t)===0?null:bg("div",{"data-testid":"commandpalette-list",className:n.list,children:[e&&Ca("h4",{className:n.listHeading,children:e}),Ca("div",{className:xg(n.listWrapper,o==="horizontal"&&n.listHorizontal),children:t})]})}import hn from"classnames";import Ws from"react";import{jsx as Cg}from"react/jsx-runtime";var wa=Ws.createContext(void 0);function De(){let t=Ws.useContext(wa);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Ta=({children:t,page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r})=>{let i=Ws.useMemo(()=>({page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r}),[o,e,s]);return Cg(wa.Provider,{value:i,children:t})};import wg,{useState as Ea,useEffect as ka,useMemo as Tg,useRef as Ra,useCallback as Eg,useContext as kg}from"react";import Rg from"classnames";var Gs={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 mn,jsxs as Lg}from"react/jsx-runtime";var Ig=0,Ia=wg.createContext(null),Pg=()=>{let t=kg(Ia);if(!t)throw new Error("Invalid DropdownContext");return t},Pa=({trigger:t,children:e,position:o="bottom"})=>{let n=Tg(()=>++Ig,[]),s=Ra(null),r=Ra(null),i=y("Dropdown",Gs),[a,l]=Ea(!1),[c,p]=Ea(o),d=g=>{g.preventDefault(),g.stopPropagation(),l(!a)},u=Eg(([g])=>{!g.isIntersecting&&a&&p(c==="top"?"bottom":"top")},[a]);return ka(()=>{let g=f=>{s.current&&!s.current.contains(f.target)&&l(!1)};return document.addEventListener("click",g),()=>{document.removeEventListener("click",g)}},[]),ka(()=>{if(!r.current&&!a)return()=>{};let g=new IntersectionObserver(u,{root:null,rootMargin:"0px",threshold:1});return r.current&&g.observe(r.current),()=>{r.current&&g.unobserve(r.current)}},[r,a]),mn(Ia.Provider,{value:{setIsOpen:l},children:Lg("div",{ref:s,className:i.root,children:[mn("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}),mn("div",{"data-testid":"dropdown-content",ref:r,"aria-hidden":!a,"aria-labelledby":`dropdown-${n}`,className:Rg(i.content,{[i.contentOpen]:a,[i.contentTop]:c==="top",[i.contentBottom]:c==="bottom"}),children:e})]})})};function Ag({as:t,children:e,onClick:o,...n}){let s=t||"button",r=y("Dropdown",Gs),{setIsOpen:i}=Pg(),a=l=>{i(!1),o(l),l.stopPropagation()};return mn(s,{type:"button",className:r.item,onClick:a,...n,children:e})}Pa.Item=Ag;var $s=Pa;import{jsx as Aa}from"react/jsx-runtime";var La=t=>Aa("svg",{xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512",...t,children:Aa("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 Ze={};j(Ze,{enUS:()=>Mg,nlNL:()=>Ng});var Mg={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"}]},Ng={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 Xs}from"react/jsx-runtime";var Og="%0d%0a%0d%0a%0d%0a",Dg=(t,e)=>{let o=[`Suggestie: ${encodeURIComponent(e)}`,"Beschrijf je feedback:"];return`mailto:${t.join(",")}?subject=Suggestie feedback&body=${o.join(Og)}`},Hg=({suggestion:t,onFeedback:e})=>{let o=T(Ze),n=C("suggestionFeedbackEmailAddresses");return!n||n.length===0?null:Xs($s,{trigger:Xs(La,{"data-testid":"feedback-dropdown-trigger"}),children:Xs($s.Item,{as:"a",href:Dg(n,t),onClick:e,children:o("giveFeedback")})})},fn=Hg;import{Interweave as Bg}from"interweave";import{jsx as He,jsxs as Qs}from"react/jsx-runtime";function Zs({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:u,onChangeOpen:g}=De(),f=y("CommandPalette",Z);function m(v){n(v),t&&g(!1)}return Qs("div",{className:hn(f.listItem,d===i&&f.listItemSelected),children:[He("button",{onMouseEnter:()=>u(i),type:"button",className:hn("command-palette-list-item",f.listItemAction,f.listItemPrimaryAction),"aria-disabled":p.disabled??!1,onClick:m,...p,children:Qs("div",{className:f.listItemContent,children:[typeof o=="string"?He("p",{className:hn(f.listItemText,f.truncate,c==null?void 0:c.title),children:o}):o,a&&He(Bg,{tagName:"p",allowList:[],content:gn(a),className:hn(f.listItemDescription,c==null?void 0:c.description,e?f.lineClamp:f.truncate)})]})}),s&&d===i&&He("div",{className:f.listItemActions,children:He(fn,{suggestion:String(o),onFeedback:s})}),l&&Qs("div",{className:f.sources,children:[He("span",{className:f.sourcesTitle,children:"Sources"}),l.map(v=>v.url?He("a",{className:f.source,href:v.url,target:"_blank",title:v.url,rel:"noopener noreferrer",onClick:()=>r&&r(v),children:v.name},v.url):He("span",{className:f.source,children:v.name},v.name))]})]})}import{jsx as Ma,jsxs as Js}from"react/jsx-runtime";function Ys({children:t,title:e,id:o,onDismiss:n}){let s=T(Qe),r=y("CommandPalette",Z),{page:i}=De();return i!==o?null:Js("div",{className:r.page,id:`page_${o}`,tabIndex:-1,children:[n&&Js("div",{className:r.pageNav,children:[Js("button",{className:r.pageBackButton,type:"button",onClick:n,children:[Ma(sn,{}),s("back")]}),e&&Ma("h3",{className:r.pageTitle,children:e})]}),t]})}import{Fragment as Xg,useCallback as Qg,useEffect as Zg,useRef as Jg}from"react";var yn=()=>/Mac/i.test(navigator.platform);import{createAsyncThunk as jg,createSlice as qg}from"@reduxjs/toolkit";var Fg={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},E=Fg;import{createAsyncThunk as tr,createSlice as Ug}from"@reduxjs/toolkit";function Kg(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,[Kg(o)]:L(t[o])}),{}):t}function er(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function F(t){return Array.isArray(t)?t.map(F):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[er(o)]:F(t[o])}),{}):t}var zg={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,fetchState:"idle"},eo=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)||""}},Yt=tr("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))}),or=tr("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}),nr=tr("info/getAgentSettings",async(t,e)=>{let{deepdeskAPI:o}=e.extra;return(await o.client.get("/apis/admin/session/me/",{version:null})).ui_config}),Na=t=>t.info.agentInfo,Oa=Ug({name:"info",initialState:zg,reducers:{setVisitorInfo(t,e){t.visitorInfo={...t.visitorInfo,...e.payload}}},extraReducers:t=>{t.addCase(Yt.pending,(e,o)=>{e.fetchState="loading",e.agentInfo={...e.agentInfo,...o.meta.arg}}).addCase(Yt.rejected,e=>{e.fetchState="error"}).addCase(Yt.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(or.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(nr.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(A,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:Da}=Oa.actions,Ha=Oa.reducer;var vn={list:[],fetchState:"idle",isOpen:!1,page:"search"},Ba=t=>t.search.isOpen,Fa=t=>t.search.page,Ka=t=>t.search.list;function Ua(t,e=o=>o){return o=>o.search.list.filter(n=>n.type===t).map(e)}var Je=jg("search/getAll",async(t,e)=>{var i;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(i=n.conversation.current)==null?void 0:i.profileCode;if(!s)throw new Error("Profile should be provided in order to be able to search");let{results:r}=await o.search({profile:s,query:t.query,filters:{type:t.type},params:eo(n),tags:t.tags});return r.map(a=>({...a,source:`search-${a.type.toLowerCase()}`,searchTerm:t.query}))}),za=qg({name:"search",initialState:vn,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=vn.fetchState,t.list=vn.list}},extraReducers:t=>{t.addCase(Je.pending,e=>{e.fetchState="loading"}).addCase(Je.rejected,(e,o)=>{e.fetchState="error",E.error(o.error)}).addCase(Je.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload}).addCase(A,()=>vn)}}),{resetSearch:Sn,setIsOpen:W,setPage:G}=za.actions,ja=za.reducer;var Vg=/(https?:\/\/[^\s]+)/,_n=t=>t.split(" ").find(e=>Vg.test(e));import qa from"classnames";import{jsx as Gg,jsxs as $g}from"react/jsx-runtime";var Wg=({onClick:t,shortKeys:e,children:o,...n})=>{let s=y("CommandPalette",Z);return $g("button",{type:"button",...n,onClick:t,className:qa(s.actionButton,n.className),children:[o,e&&e.map(r=>Gg("span",{className:qa(s.actionShortcut,r===8629&&s.actionShortcutFixKerning),children:typeof r=="number"?String.fromCharCode(r):r},r))]})},bt=Wg;import{jsx as xn,jsxs as sr}from"react/jsx-runtime";var Yg=({children:t,primaryLabel:e,secondaryLabel:o,onPrimary:n,onSecondary:s,list:r})=>{let i=y("CommandPalette",Z),a=T(Qe),{selected:l,setSelected:c}=De(),p=r[l],d=p&&typeof p.text=="string"&&_n(p.text),u=Jg(null);function g(x){if(!u.current)return;let b=u.current.querySelectorAll(".command-palette-list-item"),_=0,I=0;x==="down"?(b.forEach(($,P)=>{P===l&&(_=P)}),I=_===b.length-1?0:_+1):x==="up"?(b.forEach(($,P)=>{P===l&&(_=P)}),I=_?_-1:b.length-1):c(0);let N=b[I];N&&typeof I=="number"&&(c(I),N.scrollIntoView&&N.scrollIntoView({behavior:"smooth",block:I?"center":"end"}))}function f(){if(!u.current)return;let x=u.current.querySelectorAll(".command-palette-list-item"),b=0;x.forEach((I,N)=>{N===l&&(b=N)});let _=x[b];_&&_.click()}let m=()=>{d&&window.open(d,"_blank")},v=()=>{p&&n(p,l)},w=()=>{!p.type||["IMAGE","command"].includes(p.type)||s&&s(p,l)},h=Qg(x=>{if(x.key==="Enter"&&x.altKey&&d){m();return}if(x.key==="Enter"&&x.shiftKey){w();return}if(x.key==="ArrowDown"){x.preventDefault(),x.stopPropagation(),g("down");return}if(x.key==="ArrowUp"){x.preventDefault(),x.stopPropagation(),g("up");return}x.key==="Enter"&&l!==-1&&(x.preventDefault(),x.stopPropagation(),f())},[l]);return Zg(()=>(window.addEventListener("keyup",h),()=>{window.removeEventListener("keyup",h)}),[h]),sr("div",{className:i.actions,children:[xn("div",{className:i.actionsWrapper,ref:u,children:t}),sr("div",{className:i.actionsBar,children:[d&&xn(bt,{onClick:m,shortKeys:[yn()?8997:"ALT",8629],children:a("visitUrl")}),p&&sr(Xg,{children:[s&&p.type&&!["command","image"].includes(p.type.toLowerCase())&&xn(bt,{onClick:w,shortKeys:[8679,8629],children:o}),xn(bt,{onClick:v,shortKeys:[8629],children:e})]})]})]})},Wa=Yg;import{forwardRef as tm}from"react";import{jsx as Ga,jsxs as em}from"react/jsx-runtime";var Ct=()=>em("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[Ga("path",{d:"M0 0h24v24H0z",fill:"none"}),Ga("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 wt,jsxs as rr}from"react/jsx-runtime";function om({onChange:t,onChangeType:e,placeholder:o,typePlaceholder:n,types:s,value:r,selectedType:i},a){let l=y("CommandPalette",Z);return rr("div",{className:l.search,children:[wt("div",{className:l.searchIcon,children:wt(Ct,{})}),rr("div",{className:l.searchInputWrapper,children:[wt("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&&wt("div",{className:l.selectWrapper,children:rr("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&&wt("option",{children:n}),s.map(c=>wt("option",{value:c.value,children:c.label},c.value))]})})]})]})}var $a=tm(om);import{jsx as Xa,jsxs as im}from"react/jsx-runtime";function Ye({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:u}){let[g,f]=sm(0),m=rm(null),v=()=>{s&&s(o),i(void 0),r(""),a(!1)},w=()=>{var h;if(n!==o&&s){s(o);return}if(l&&i){i(void 0),(h=m.current)==null||h.focus();return}if(u.length>0){r("");return}a(!1)};return nm(()=>{f(0)},[u,n]),Xa(yt,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:d,onBack:w,onClose:v,children:im(Ta,{selected:g,setSelected:f,isOpen:d,onChangeOpen:a,page:n,children:[n===o&&Xa($a,{ref:m,onChange:r,onChangeType:i,placeholder:t,value:u,selectedType:l,types:c,typePlaceholder:e}),p]})})}Ye.Page=Ys;Ye.List=Vs;Ye.Image=ba;Ye.ListItem=Zs;Ye.ActionsBar=Wa;Ye.Button=bt;var k=Ye;import{jsx as be,jsxs as to}from"react/jsx-runtime";var cm=({suggestion:t,onUse:e,onDismiss:o,onTouched:n,onNext:s,onPrevious:r})=>{let i=t.text||t.url||t.message,a=y("EditSuggestionForm",zi),l=am(),c=T(Ts),p=lm(f=>f.overlayInput.text);Qa(()=>{t&&(l(Q.actions.reset()),l(Q.actions.stageSuggestion({text:i,suggestion:t,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"})),l(Q.actions.commitSuggestion()))},[t]);let d=f=>{f.preventDefault(),u(p)},u=f=>{l(zo(f)),e(f)},g=f=>m=>{p!==i?window.confirm(c("warning"))&&f(m):f(m)};return Qa(()=>{n&&n(p!==i)},[n,t,p]),to("div",{className:a.root,children:[to("div",{className:a.content,children:[t.title&&be("h3",{className:a.title,children:t.title}),t.searchKeywords&&t.searchKeywords.length>0&&be(ys,{labels:t.searchKeywords}),be(xa,{onUse:u,value:gn(p)})]}),to("form",{className:a.actions,onSubmit:d,children:[to("div",{children:[be("button",{disabled:!r,className:a.pagination,type:"button",onClick:r&&g(r),children:be(sn,{})}),be("button",{disabled:!s,className:a.pagination,type:"button",onClick:s&&g(s),children:be(ea,{})})]}),to("div",{className:a.primaryButtons,children:[be(k.Button,{onClick:g(o),shortKeys:["esc"],children:c("dismiss")}),be(k.Button,{shortKeys:[8679,8629],type:"submit",children:c("add")})]})]})]})},bn=cm;import{createAction as um,createAsyncThunk as el,createSlice as gm}from"@reduxjs/toolkit";var pm=["{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}"],dm=new RegExp(pm.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function Za(t,e){let o=t.split(dm),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),u=0;do c=d?e.indexOf(d,c+1):-1,u+=1;while(c!==-1&&a.indexOf(e.slice(c))!==0);if(c===-1&&u>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 Ja(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var tl={suggestions:[],fetchState:"idle",isInitialRequest:null},Ya={default:tl},Cn=t=>e=>{var o;return((o=e.textSuggestions[t])==null?void 0:o.suggestions)??[]},ol=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")},Be=t=>t.textSuggestions,nl=t=>{let e=t.toLowerCase();return o=>{let n=o.text.toLowerCase();return n.startsWith(e)&&n.length>e.length}},wn=um("textSuggestions/refresh"),ce=el("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=ht(n);if(!s)throw new Error("No current conversation to fetch text suggestions");let l=await o.getTextSuggestions(s,eo(n),t);if(t==="default"){let p=i?l.filter(nl(a)):l;e.dispatch(ge(p.slice(0,r)))}return l}),oo=el("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,{...eo(n),input:t});if(!e.getState().input.text)throw new Error("Abort");return a&&(l=l.filter(nl(t))),i&&(l=l.map(p=>({...p,text:p.source!=="trie-with-typos"?Za(p.text,t):p.text}))),l=Ja(l,r),e.dispatch(ge(l)),l}),sl=gm({name:"textSuggestions",initialState:Ya,reducers:{setTextSuggestions:{reducer(t,e){let{contentType:o}=e.payload;t[o].fetchState="done",t[o].suggestions=e.payload.suggestions},prepare(t,e){return{payload:{contentType:t,suggestions:e}}}},setSuggestionState(t,e){return e.payload}},extraReducers:t=>{t.addCase(ce.pending,(e,o)=>{let n=o.meta.arg,s=e[n]||tl;return{...e,[n]:{...s,fetchState:"loading",isInitialRequest:s.isInitialRequest===null}}}).addCase(ce.rejected,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="error")}).addCase(ce.fulfilled,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="done",e[n].suggestions=o.payload)}).addCase(oo.pending,e=>{e.default.fetchState="loading"}).addCase(oo.rejected,e=>{e.default.fetchState="error"}).addCase(oo.fulfilled,(e,o)=>{e.default.fetchState="done",e.default.suggestions=o.payload}).addCase(A,()=>Ya)}}),{setTextSuggestions:rl,setSuggestionState:il}=sl.actions,al=sl.reducer;import{createSlice as mm}from"@reduxjs/toolkit";var ll={contentType:null,suggestion:null},cl=t=>t.activeSuggestion.suggestion,pl=t=>t.activeSuggestion.contentType,dl=mm({name:"activeSuggestion",initialState:ll,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,()=>ll)}}),{setActiveSuggestion:Ce,resetActiveSuggestion:ir}=dl.actions,ul=dl.reducer;var ar={};j(ar,{enUS:()=>fm,nlNL:()=>hm});var fm={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"}]},hm={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 ym}from"@reduxjs/toolkit";var vm={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1};var Tn=({ui:t})=>t.overlayCollapsed;var gl=ym({name:"ui",initialState:vm,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:no,setInputHasFocus:Tt,setOverlayCollapsed:Fe,setOpenOverlayWhenTyping:ml,setOverlayCollapsedUserOverwrite:fl}=gl.actions,hl=gl.reducer;import yl,{useContext as Sm}from"react";import{jsx as _m}from"react/jsx-runtime";var vl=yl.createContext(null),et=({broadcastEvents:t,children:e})=>{let o=yl.useMemo(()=>t,[]);return _m(vl.Provider,{value:o,children:e})},se=()=>{let t=Sm(vl);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createAsyncThunk as lr,createSlice as xm}from"@reduxjs/toolkit";var bm={isLoggedIn:!0,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1},oe=t=>t.auth.isLoggedIn,Sl=t=>t.auth.loginFetchState,_l=t=>t.auth.verifyFetchState,xl=t=>t.auth.showLoginOverlay,we=lr("auth/validate",async(t,e)=>e.extra.deepdeskAPI.isLoggedIn()),bl=lr("auth/requestLogin",async({email:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.requestLoginByEmail(t)}),so=lr("auth/verifyLoginToken",async({token:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.verifyLoginToken(t)}),Cl=xm({name:"auth",initialState:bm,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload}},extraReducers:t=>{t.addCase(we.pending,e=>{e.loginFetchState="loading"}),t.addCase(we.fulfilled,(e,{payload:o})=>{e.isLoggedIn=o,e.loginFetchState="done"}),t.addCase(we.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(so.pending,e=>{e.verifyFetchState="loading"}),t.addCase(so.rejected,e=>{e.verifyFetchState="error"}),t.addCase(so.fulfilled,(e,o)=>{o.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:Et,setShowLoginOverlay:wl}=Cl.actions,Tl=Cl.reducer;var cr="SetActiveSuggestion",kt="ShowLoginOverlay",ro="UserLoggedIn",Cm="UserLoggedOut",Te="ApplySuggestion",pr="ApplyImageSuggestion",wm="ShowCommandPalette",Tm=t=>({[cr]:e=>{t.dispatch(il(e.state)),t.dispatch(Ce({contentType:e.contentType,suggestion:e.suggestion}))},[wm]:e=>{t.dispatch(W(e.isOpen)),e.page&&t.dispatch(G(e.page))},[kt]:e=>{t.dispatch(wl(e))},[ro]:()=>{t.dispatch(we())},[Cm]:()=>{t.dispatch(we())},[pr]:e=>{t.dispatch(qo({suggestion:e.suggestion}))},[Te]:e=>{t.dispatch(ie({...e,eventMetrics:{inputType:"mouse"},replace:"selection"})),t.dispatch(_e())}}),El=Tm;import{jsx as kl}from"react/jsx-runtime";var Rm=()=>{var f;let[t,e]=Em(!1),o=dr(cl),n=dr(pl),s=dr(Be),r=km(),i=se(),a=T(ar),l=()=>{o!==null&&t?window.confirm(a("warning"))&&c():c()},c=()=>{r(ir()),r(Tt(!0)),r(Q.actions.reset())},p=(m,v)=>{r(ir()),r(Tt(!0)),i.send(Te,{text:m,suggestion:{...v,source:`${v.source||"text_recommendation"}-preview`}})};if(o===null||n===null)return null;let d=(f=s[n])==null?void 0:f.suggestions.indexOf(o),u=d===0||d===null?void 0:()=>r(Ce({contentType:n,suggestion:s[n].suggestions[d-1]})),g=d===s[n].suggestions.length-1||d===null?void 0:()=>r(Ce({contentType:n,suggestion:s[n].suggestions[d+1]}));return kl(yt,{autoFocus:!0,isOpen:d!==null,onClose:l,onBack:l,contentAriaLabel:a("editContentLabel"),overlayAriaLabel:a("overlayLabel"),children:kl(bn,{onTouched:e,onDismiss:c,onUse:m=>p(m,o),suggestion:o,onNext:g,onPrevious:u})})},Rl=Rm;import{useSelector as Ml}from"react-redux";import gr from"classnames";import{useCallback as Al,useEffect as Nm,useMemo as Om,useState as mr}from"react";import{useDispatch as Dm,useSelector as Hm}from"react-redux";import Im from"classnames";var Il={root:"_root_1ukx5_1"};import{jsx as Am}from"react/jsx-runtime";var Pm=({className:t,value:e,...o})=>{let n=y("TextInput",Il);return Am("input",{className:Im(t,n.root),type:"text",value:e,...o})},io=Pm;var ur={};j(ur,{enUS:()=>Lm,nlNL:()=>Mm});var Lm={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"}]},Mm={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 Pl={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 J,jsxs as En}from"react/jsx-runtime";var Bm=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch{return t}},Fm=({agentEmail:t,isOpen:e,origin:o="",onSuccess:n,onDismiss:s})=>{let r=T(ur),i=y("LoginTokenDialog",Pl),a=Hm(_l),l=Dm(),c=C("productName"),[p,d]=mr(t||""),[u,g]=mr(0),[f,m]=mr(""),v=Al(async b=>{b.preventDefault(),l(bl({email:p})),g(1)},[o,p]),w=()=>{m(""),g(0)},h=Al(async b=>{b.preventDefault();let _=Bm(b.target.elements.token.value);if(!_){m(r("verifyCodeError",{login:x}));return}l(so({token:_}))},[o]),x=Om(()=>b=>J("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:w,children:b},"back-button"),[]);return Nm(()=>{a==="error"&&m(r("verifyCodeError",{login:x})),a==="done"&&n()},[a]),J(yt,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:c}),overlayAriaLabel:r("promptTitle",{productName:c}),onClose:s,onBack:s,children:En("div",{className:i.root,children:[J("h1",{className:i.title,children:r("promptTitle",{productName:c})}),u===0&&En("form",{onSubmit:v,children:[J("h2",{className:i.subtitle,children:r("requestCodeTitle")}),J("p",{className:i.text,children:r("requestCodeBody",{productName:c})}),J(io,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:p,onChange:b=>d(b.target.value)}),J("div",{className:i.actions,children:J("button",{type:"submit",className:gr(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),u===1&&En("form",{onSubmit:h,children:[J("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),J("p",{className:i.text,children:r("verifyCodeBody")}),J(io,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),f&&J("div",{className:i.errorMessage,children:f}),En("div",{className:i.actions,children:[J("button",{type:"button",className:gr(i.button),onClick:w,children:r("back")}),J("button",{type:"submit",className:gr(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},Ll=Fm;import{jsx as Um}from"react/jsx-runtime";var Km=()=>{let t=Ml(xl),e=Ml(Na),o=C("adminUrl"),n=se(),s=()=>n.send(kt,!1),r=()=>{n.send(kt,!1),n.send(ro)};return Um(Ll,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:o,onDismiss:s,onSuccess:r})},Nl=Km;import Df from"lodash.debounce";import{useCallback as An,useEffect as br,useState as uo}from"react";import{useDispatch as Hf,useSelector as At}from"react-redux";import{createAsyncThunk as zm,createSlice as jm}from"@reduxjs/toolkit";var qm={data:null,fetchState:"idle"},Ol=t=>t.contentTypes.data,ao=zm("contentTypes/getContentTypes",async(t,e)=>e.extra.deepdeskAPI.getContentTypes()),Vm=jm({name:"contentTypes",initialState:qm,reducers:{},extraReducers:t=>{t.addCase(ao.pending,e=>{e.fetchState="loading"}).addCase(ao.rejected,e=>{e.fetchState="error"}).addCase(ao.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),Dl=Vm.reducer;function lo(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 Wm}from"react";function Hl(t,e){Wm(()=>{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 Ul,useRef as Ym}from"react";import{useSelector as ef,useDispatch as tf}from"react-redux";import{createAsyncThunk as Gm,createSlice as $m}from"@reduxjs/toolkit";var Bl={data:null,fetchState:"idle"},kn=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},pe=Gm("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)}),Xm=t=>t.filter((e,o)=>o===t.findIndex(n=>n.text===e.text)),Qm=$m({name:"entities",initialState:Bl,reducers:{},extraReducers:t=>{t.addCase(pe.pending,e=>{e.fetchState="loading"}).addCase(pe.rejected,e=>{e.fetchState="error"}).addCase(pe.fulfilled,(e,o)=>{e.fetchState="done",e.data=Xm(e.data?[...e.data,...o.payload]:o.payload)}).addCase(A,()=>Bl)}}),Fl=Qm.reducer;var fr={};j(fr,{enUS:()=>Zm,nlNL:()=>Jm});var Zm={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},Jm={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var Kl={root:"_root_17kae_1",empty:"_empty_17kae_5"};import{jsx as Rn,jsxs as nf}from"react/jsx-runtime";var of=({onCopy:t,onUse:e})=>{let o=Ym(null),n=y("EntitiesList",Kl),s=T(fr),r=ef(kn),i=tf();return Ul(()=>{i(pe())},[]),Ul(()=>{o.current&&o.current.focus()},[o]),nf("div",{className:n.root,ref:o,tabIndex:-1,children:[r&&r.length>0&&Rn(k.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:Rn(k.List,{children:r.map((a,l)=>Rn(k.ListItem,{index:l,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities")}),r&&r.length===0&&Rn("p",{className:n.empty,children:s("noResults")})]})},zl=of;import{Fragment as pf,useEffect as In,useRef as df,useState as uf}from"react";import{useSelector as $l,useDispatch as gf}from"react-redux";import{createAsyncThunk as sf,createSlice as rf}from"@reduxjs/toolkit";var jl={data:null,fetchState:"idle"},ql=t=>t.summary.data,Vl=t=>t.summary.fetchState==="error",Ee=sf("summary/getSummary",async(t,e)=>{let o=e.getState().profile.data;if(!o)throw new Error("Profile is not defined");let{deepdeskAPI:n,dynamicThunkObject:s}=e.extra;if(!s.conversationQuery)return Promise.reject(new Error("setConversationQuery method is not defined"));let r=s.conversationQuery,i=await r();if(i.length===0)return Promise.reject(new Error("No messages are included"));let a=await n.getSummary(i,{promptInstruction:o.summarizerPromptInstruction,model:o.summarizerModel});return a?{summary:a}:Promise.reject(new Error("Summary is not provided"))}),af=rf({name:"summary",initialState:jl,reducers:{},extraReducers:t=>{t.addCase(Ee.pending,e=>{e.data=null,e.fetchState="loading"}).addCase(Ee.rejected,e=>{e.data=null,e.fetchState="error"}).addCase(Ee.fulfilled,(e,o)=>{e.fetchState="done",o.payload&&(e.data=o.payload.summary)}).addCase(A,()=>jl)}}),Wl=af.reducer;var hr={};j(hr,{enUS:()=>lf,nlNL:()=>cf});var lf={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."}]},cf={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 Gl={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 Rt,jsxs as ff}from"react/jsx-runtime";var mf=({onCopy:t})=>{let e=df(null),o=y("SummaryForm",Gl),[n,s]=uf(""),r=T(hr),i=$l(ql),a=$l(Vl),l=gf(),c=()=>{l(q({name:"summary copied to clipboard",data:{originalText:i,finalText:n},options:{includeConversationData:!0}})),t(n)},p=()=>{let d=document.getSelection();d&&l(q({name:"summary copied to clipboard",data:{originalText:i,finalText:d==null?void 0:d.toString()},options:{includeConversationData:!0}}))};return In(()=>{l(Ee())},[]),In(()=>{s(i||"")},[i]),In(()=>{e.current&&i&&e.current.focus()},[e,i]),In(()=>{let d=u=>{u.key==="Enter"&&u.shiftKey&&c()};return document.addEventListener("keydown",d),()=>{document.removeEventListener("keydown",d)}},[n]),Rt("div",{className:o.root,tabIndex:-1,children:a?Rt("p",{className:o.error,children:r("error")}):ff(pf,{children:[Rt("div",{className:o.main,children:Rt("textarea",{placeholder:i?void 0:r("loading"),disabled:!i,className:o.textInput,ref:e,value:n,onCopy:p,onChange:d=>s(d.target.value)})}),Rt("div",{className:o.actions,children:Rt(k.Button,{shortKeys:[8679,8629],onClick:c,children:r("copy")})})]})})},Xl=mf;var co={};j(co,{enUS:()=>hf,nlNL:()=>yf});var hf={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?"}]},yf={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 Tf,{useEffect as Sr,useRef as Ef}from"react";import{useDispatch as kf,useSelector as oc}from"react-redux";var yr={};j(yr,{enUS:()=>vf,nlNL:()=>Sf});var vf={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"}]},Sf={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 Ql={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 _f,createAsyncThunk as xf,createSlice as bf}from"@reduxjs/toolkit";var vr={data:[],fetchState:"idle"},Zl=t=>{var e;return(e=t.answer)==null?void 0:e.data},Jl=t=>t.answer.fetchState,Pt=_f("answer/resetKnowledgeSearch"),It=xf("answer/getAnswer",async(t,e)=>{var i,a;let{deepdeskAPI:o}=e.extra,n=e.getState().answer.data,s=(a=(i=e.getState().profile)==null?void 0:i.data)==null?void 0:a.knowledgeAssistant;if(!s)throw new Error("KnowledgeAssistant is not defined");let r=await o.knowledgeAssist({promptInstruction:t.promptInstruction,question:t.question},n,s);return{question:t.question,answer:r}}),Cf=bf({name:"answer",initialState:vr,reducers:{},extraReducers:t=>{t.addCase(It.pending,e=>{e.fetchState="loading"}).addCase(It.rejected,e=>{e.fetchState="error"}).addCase(It.fulfilled,(e,o)=>{e.fetchState="done",e.data=[...e.data,o.payload]}).addCase(A,()=>vr).addCase(Pt,()=>vr)}}),Yl=Cf.reducer;import{jsx as ec,jsxs as wf}from"react/jsx-runtime";var tc=()=>wf("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 512 512","aria-labelledby":"paperPlaneTitle",children:[ec("title",{id:"paperPlaneTitle",children:"PaperPlane"}),ec("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 ke,jsxs as _r}from"react/jsx-runtime";var Rf=({onUse:t,onResetQuestion:e,question:o,promptInstruction:n})=>{let[s,r]=Tf.useState(""),{setSelected:i}=De(),a=Ef(null),l=y("EntitiesList",Ql),c=T(yr),p=kf(),d=oc(Zl),u=oc(Jl),g=async m=>{m.preventDefault(),m.stopPropagation(),s!==""&&p(It({question:s,promptInstruction:n}))},f=(m,v)=>{p(q({name:"knowledge assist source viewed",data:{question:v,sourceViewed:m.url||m.name},options:{includeConversationData:!0}}))};return Sr(()=>{var m;o&&u==="idle"?p(It({question:o,promptInstruction:n})):(m=a.current)==null||m.focus()},[a,u]),Sr(()=>{u==="done"&&(p(q({name:"knowledge assist question answered",data:{question:s||o,sources:d[d.length-1].answer.sources,answer:d[d.length-1].answer.answer,isFollowUpQuestion:d.length>1},options:{includeConversationData:!0}})),i(d.length-1),r(""))},[u,d]),Sr(()=>{a.current&&a.current.scrollIntoView({behavior:"smooth"})},[a,d]),_r("div",{className:l.root,children:[d.length>0&&ke("div",{className:l.alignRight,children:ke(k.Button,{onClick:e,children:c("reset")})}),_r(k.ActionsBar,{list:d.map(({answer:m})=>({text:m.answer,type:"answer"})),primaryLabel:c("use"),onPrimary:m=>t(m.text),children:[d.map(({question:m,answer:v},w)=>ke(k.List,{children:ke(k.ListItem,{"data-testid":"knowledge-search-answer",index:w,description:v.answer,closeOnSelect:!0,onClick:()=>t(v.answer),onSourceClick:h=>f(h,m),sources:v.sources,styles:{title:l.question,description:l.answer},children:m})},`${v.answer}_${w}`)),u==="loading"&&ke("p",{className:l.status,children:c("loading")}),u==="error"&&ke("p",{className:l.status,children:c("error")}),_r("form",{className:l.form,onSubmit:g,children:[ke("input",{ref:a,placeholder:c("anotherQuestion"),className:l.input,type:"text",value:s,onFocus:()=>{i(-1)},onChange:m=>{i(-1),r(m.target.value)}}),ke("button",{type:"submit",className:l.submit,children:ke(tc,{})})]})]})]})},nc=Rf;import{createAsyncThunk as If,createSlice as Pf}from"@reduxjs/toolkit";var Af={data:null,fetchState:"idle"},Ke=t=>t.profile.data,Pn=t=>t.profile.data?t.profile.data.uiConfig.widget.types.filter(e=>e.isActive):[],po=If("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)}),Lf=Pf({name:"profile",initialState:Af,reducers:{},extraReducers:t=>{t.addCase(po.pending,e=>{e.fetchState="loading"}).addCase(po.rejected,e=>{e.fetchState="error"}).addCase(po.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),sc=Lf.reducer;import{useEffect as Mf}from"react";import{useDispatch as Nf}from"react-redux";import{useSelector as rc}from"react-redux";import{jsx as xr}from"react/jsx-runtime";var Of=({onClick:t,onEdit:e})=>{var l,c;let o=Nf(),n=T(co),s=rc(Ke),r=rc(Be),i=((c=(l=s==null?void 0:s.uiConfig)==null?void 0:l.search)==null?void 0:c.initialTypes)||[],a=i.map(({type:p})=>{var d;return(d=r[p])==null?void 0:d.suggestions.map(u=>({text:u.text||u.url||u.message,type:p}))}).flat(1);return Mf(()=>{i.forEach(({type:p})=>{(!r[p]||r[p].suggestions.length===0)&&o(ce(p))})},[]),xr(k.ActionsBar,{list:a,primaryLabel:n("use"),secondaryLabel:n("preview"),onPrimary:({text:p},d)=>t(p,a[d]),onSecondary:(p,d)=>{e(a[d],r[a[d].type].suggestions)},children:i.map(({type:p,title:d})=>{var u;return xr(k.List,{heading:d,orientation:"vertical",children:(u=r[p])==null?void 0:u.suggestions.map((g,f)=>xr(k.ListItem,{index:f,closeOnSelect:!1,description:g.text,onClick:()=>t(g.text,g),"data-testid":"search-overlay-suggestion",children:g.title},`${g.id}-${g.text}`))},p)})})},ic=Of;import{jsx as Y,jsxs as Cr}from"react/jsx-runtime";var Bf=200,Ff=5,Kf=4,Uf=t=>t.reduce((e,o)=>[...e,...o.list.map(n=>({...n,type:o.value}))],[]),ac=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),zf=()=>{let t=Hf(),e=se(),o=T(co),[n,s]=uo(!1),[r,i]=uo(""),a=At(Fa),l=At(Ke),[c,p]=uo(null),[d,u]=uo([]),[g,f]=uo(),m=At(oe),v=C("showSearch"),w=C("showEntitiesCommand"),h=C("showSummaryCommand"),x=C("showKnowledgeSearch"),b=C("showImageSearch"),_=C("searchTriggerKey"),I=At(Ol),N=At(Ka),$=At(Ba),P=S=>ls(N.filter(O=>O.type===S.toUpperCase()),S),X=[{value:"PERSONAL",label:o("personalSuggestions"),list:P("PERSONAL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"URL",label:o("urlSuggestions"),list:P("URL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"STICKYMESSAGE",label:o("pinnedMessages"),list:P("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"IMAGE",label:o("imageSuggestions"),lineClamp:!1,list:P("IMAGE"),listOrientation:"horizontal",shouldShow:b}].filter(S=>S.shouldShow),R=[{label:o("entitiesClipboard"),onClick:()=>t(G("entities")),shouldShow:w&&ac(o("entitiesClipboard"),r)},{label:o("summaryClipboard"),onClick:()=>t(G("summary")),shouldShow:h&&ac(o("summaryClipboard"),r)},{label:r?`${o("knowledgeAssist")}: ${r}`:o("knowledgeAssist"),onClick:()=>t(G("knowledgeAssist")),shouldShow:x}].filter(S=>S.shouldShow),B=(I==null?void 0:I.map(S=>({value:S.code.toUpperCase(),label:`${S.name}s`,list:P(S.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[],at=An(Df((S,O)=>{t(Je({query:S,type:O,tags:["search-overlay"]}))},Bf),[]),Kt=Uf([...B,...X]),Ut=An((S,O)=>{t(G("edit")),p({...S,searchTerm:void 0}),u(O)},[t,c,B]),Co=An((S,O)=>{switch(O.type){case"IMAGE":e.send(pr,{suggestion:O});break;default:e.send(Te,{text:S,suggestion:O})}t(W(!1))},[t]),gd=S=>{lo(S.text),t(q({name:"entity copied",data:{entity:S,type:"copy"}})),t(W(!1))},md=An(S=>{t(q({name:"suggestion feedback",data:{text:S.text,source:"search",context:r},options:{includeConversationData:!0}}))},[r]),fd=S=>{e.send(Te,{text:S,suggestion:{source:"knowledge-assist",text:S}}),t(q({name:"answer used",data:{originalText:S},options:{includeConversationData:!0}})),i(""),t(G("search")),t(Pt()),t(W(!1))},hd=S=>{lo(S),t(W(!1))},yd=S=>{e.send(Te,{text:S.text,suggestion:{source:"entity",text:S.text}}),t(W(!1))},vd=c===null||d.indexOf(c)-1<0?void 0:()=>p(d[d.indexOf(c)-1]),Sd=c===null||d.indexOf(c)===d.length-1?void 0:()=>p(d[d.indexOf(c)+1]);function ls(S,O){return S.slice(0,g?10:O.toLowerCase()==="image"?Kf:Ff)}function li(S,O,de){return O.reduce((wo,To)=>de&&g===de?To.length+wo:ls(To,de).length+wo,S)}function lt(S){return O=>{n?window.confirm(o("warning"))&&(S(O),s(!1)):S(O)}}return br(()=>{r?at(r,g):t(Sn())},[r,g]),br(()=>{a==="search"&&t(Pt())},[a]),br(()=>{m&&t(ao())},[m]),Hl(_,()=>t(W(!0))),!v||!l?null:Cr(k,{placeholder:o("searchPlaceholder"),typePlaceholder:o("typePlaceholder"),onChangeSearch:i,onChangeOpen:lt(S=>t(W(S))),onChangeType:S=>f(S),onChangePage:lt(S=>t(G(S))),selectedType:g,search:r,page:a,isOpen:$,types:[...B,...X],children:[Cr(k.Page,{id:"search",children:[r.length===0&&Y(ic,{onClick:Co,onEdit:Ut,search:r}),r.length>0&&Cr(k.ActionsBar,{list:[...R.map(S=>({text:S.label,type:"command"})),...Kt.map(S=>({text:S.text||S.url||S.message,type:S.type}))],primaryLabel:o("use"),secondaryLabel:o("preview"),onPrimary:({text:S},O)=>Co(S,Kt[O]),onSecondary:(S,O)=>{let de=Kt[O-R.length];!de||!de.type||Ut(de,P(de.type))},children:[R.length>0&&Y(k.List,{heading:o("commands"),children:R.map((S,O)=>Y(k.ListItem,{index:li(O,[],"commands"),closeOnSelect:!1,onClick:S.onClick,children:S.label},S.label))}),[...B,...X].map(({value:S,label:O,list:de,lineClamp:wo,listOrientation:To},_d)=>Y(k.List,{heading:O,orientation:To==="horizontal"?"horizontal":"vertical",children:ls(de,S).map((ne,xd)=>Y(k.ListItem,{index:li(R.length+xd,[...B,...X].slice(0,_d).map(({list:bd})=>bd),S),closeOnSelect:!1,lineClamp:wo,onClick:()=>Co(ne.text,ne),description:S!=="IMAGE"?ne.title&&ne.text:void 0,onFeedback:S!=="IMAGE"?()=>md(ne):void 0,children:S==="IMAGE"?Y(k.Image,{title:ne.title||ne.text,src:ne.image}):ne.title||ne.text},`${ne.id}-${ne.text}`))},S))]})]}),Y(k.Page,{id:"edit",onDismiss:lt(()=>{t(G("search")),p(null)}),children:c&&Y(bn,{suggestion:c,onTouched:s,onDismiss:()=>{s(!1),t(G("search")),p(null),u([])},onNext:Sd,onPrevious:vd,onUse:S=>{t(G("search")),Co(S,{...c,source:`${c.source||"text_recommendation"}-preview`}),t(W(!1)),u([]),p(null)}})}),Y(k.Page,{id:"entities",title:o("entitiesTitle"),onDismiss:lt(()=>{t(G("search"))}),children:Y(zl,{onUse:yd,onCopy:gd})}),Y(k.Page,{id:"summary",title:o("summaryTitle"),onDismiss:lt(()=>{t(G("search"))}),children:Y(Xl,{onCopy:hd})}),Y(k.Page,{id:"knowledgeAssist",title:o("knowledgeAssist"),onDismiss:lt(()=>{t(Pt()),t(G("search"))}),children:Y(nc,{promptInstruction:l.knowledgeAssistPromptInstruction,question:r,onUse:fd,onResetQuestion:()=>{t(Pt()),i("")}})})]})},lc=zf;import{jsx as wr,jsxs as Vf}from"react/jsx-runtime";var qf=()=>{let t=C("showSearch"),e=C("isEmbedded");return Vf(jf,{children:[t&&wr(lc,{}),wr(Rl,{}),e&&wr(Nl,{})]})},cc=qf;import{useEffect as lh,useRef as ch}from"react";import{connect as ph,useDispatch as dh,useSelector as Nn}from"react-redux";function Lt(t){let{showMidSentenceSuggestions:e,showSuggestionsBeforePattern:o,showSuggestionsAfterPattern:n}=t.settings,{text:s,selection:r}=t.input.userCommitted;return r.start!==r.end?!1:r.end>=s.length?!0:e?o&&new RegExp(o).test(s.substring(r.end))||n&&new RegExp(n).test(s.substring(0,r.end))?!0:o===!1&&n===!1:!1}import{Fragment as rh,useMemo as ih}from"react";import{Interweave as $f}from"interweave";import{useEffect as Xf,useMemo as Qf,useRef as Zf}from"react";import{useDispatch as Jf,useSelector as Yf}from"react-redux";import{useEffect as Wf}from"react";function pc(t,e,o){Wf(()=>{let n=t.current;return n?(n.addEventListener(e,o),()=>{n.removeEventListener(e,o)}):()=>{}},[t,e,o])}var dc={root:"_root_4u430_1",actions:"_actions_4u430_8",badge:"_badge_4u430_15",formattedText:"_formattedText_4u430_19"};import{jsx as Ln,jsxs as sh}from"react/jsx-runtime";var eh=["search","personal-collection-search","search-autocomplete"];function th(t,e,o,n={}){let s="";return eh.includes(e)?s=ya(Ks(t,o,{stripAgentPart:!0}),n.searchKeywords??[o]):s=Ks(t,o,n),n.placeholders===!0&&(s=va(s)),s}var oh=()=>{},nh=({index:t,selected:e,suggestion:o,onFeedback:n})=>{let s=C("inlineSuggestions"),r=Yf(ht),i=Jf(),a=y("TextSuggestion",dc),l=Zf(null);Xf(()=>{let p=setTimeout(()=>{i(Pi({text:o.text,suggestion:o}))},500);return()=>{clearTimeout(p)}},[o]),pc(l,"click",()=>{i(Me(t)),i(ie({suggestion:o,text:o.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let c=Qf(()=>th(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:sh("div",{className:a.root,onMouseEnter:()=>i(Me(t)),children:[Ln(D,{ref:l,as:"button","data-testid":"suggestions-overlay-item",selected:e,onClick:oh,children:Ln($f,{containerTagName:"div",noWrap:!1,tagName:"span",className:a.formattedText,content:c})}),e&&n&&Ln("div",{className:a.actions,children:Ln(fn,{onFeedback:()=>n(o),suggestion:o.text})})]})},uc=nh;import{jsx as gc}from"react/jsx-runtime";var ah=({onFeedback:t,suggestions:e,selectedIndex:o,reverse:n})=>{let s=ih(()=>{let r=e.map((i,a)=>gc(uc,{index:a,selected:a===o,suggestion:i,onFeedback:t},`${i.text}-${i.source}`));return n?r.reverse():r},[e,o,n]);return gc(rh,{children:s})},Mn=ah;var mc={root:"_root_otdbu_1",paper:"_paper_otdbu_11"};import{jsx as On}from"react/jsx-runtime";var uh=({textSuggestions:t,selectedIndex:e})=>{let o=ch(null),n=y("InlineSuggestionsOverlay",mc),s=Nn(Lt),r=dh(),i=Nn(oe),a=Nn(ft),l=Nn(Tn),c=C("showTextSuggestions");return St(()=>{r(Fe({collapse:!0,skipWhenInputFocus:!0}))}),lh(()=>{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:On("div",{className:n.root,"data-variant":"inline",children:On("div",{ref:o,className:n.paper,children:On(re,{children:On(Mn,{suggestions:t,selectedIndex:e})})})})},gh=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),fc=ph(gh)(uh);import Ir from"classnames";import{useEffect as Th,useRef as Eh,useState as kh}from"react";import{connect as Rh,useDispatch as Ih,useSelector as go}from"react-redux";import{useState as mh}from"react";function hc(t,e){let[o,n]=mh(()=>{if(typeof window>"u")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return E.error(r),e}});return[o,r=>{try{let i=r instanceof Function?r(o):r;n(i),typeof window<"u"&&window.localStorage.setItem(t,JSON.stringify(i))}catch(i){E.error(i)}}]}import yh from"classnames";import{Fragment as vh,useCallback as Er,useMemo as vc}from"react";var Tr={};j(Tr,{enUS:()=>fh,nlNL:()=>hh});var fh={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"}]}]},hh={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 yc={root:"_root_1vfca_1",anchor:"_anchor_1vfca_6",anchorButton:"_anchorButton_1vfca_11"};import{jsx as Dn,jsxs as Sc}from"react/jsx-runtime";var kr=(t,e,o)=>n=>Dn("button",{className:t.anchorButton,type:"button",value:e,onClick:o,children:n},e),Sh=({className:t,loginUrl:e,isEmbedded:o,onSnooze:n,onLogIn:s})=>{let r=T(Tr),i=se(),a=y("Login",yc),l=C("productName"),c=Er(v=>{v.preventDefault(),n&&n(parseInt(v.target.value,10))},[]),p=Er(v=>{v.preventDefault(),i.send(kt,!0)},[e]),d=vc(()=>v=>Dn("a",{onClick:h=>{h.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:v},"login"),[e]),u=Er(v=>Dn("button",{type:"button",className:a.anchorButton,onClick:p,children:v},"prompt"),[p]),{min:g,hour:f,day:m}=vc(()=>({min:kr(a,60*10,c),hour:kr(a,60*60,c),day:kr(a,60*60*12,c)}),[]);return Sc("div",{className:yh(t,a.root),children:[r("loginPlease",{login:o?u:d,productName:l}),n&&Sc(vh,{children:[Dn("br",{}),r("snooze",{min:g,hour:f,day:m})]})]})},Hn=Sh;import{useDispatch as _h}from"react-redux";var _c={root:"_root_1g8fi_1",text:"_text_1g8fi_19"};import{jsx as xc,jsxs as bh}from"react/jsx-runtime";var xh=({title:t})=>{let e=y("SearchTrigger",_c),o=_h();return bh("button",{type:"button",className:e.root,onClick:()=>o(W(!0)),children:[xc(Ct,{}),xc("span",{className:e.text,children:t})]})},bc=xh;var Rr={};j(Rr,{enUS:()=>Ch,nlNL:()=>wh});var Ch={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"}]},wh={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 Cc={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 z,jsxs as mo}from"react/jsx-runtime";var Ph=({textSuggestions:t,selectedIndex:e,onLogIn:o})=>{let n=y("SuggestionsOverlay",Cc),s=T(Rr),r=go(Lt),i=Ti(),a=Ih(),l=Eh(null),c=C("searchTriggerKey"),p=C("productName"),d=go(Tn),u=go(oe),g=go(ft),[f,m]=kh(null),v=C("showSearch"),w=C("showTextSuggestions"),h=C("adminUrl"),x=C("isEmbedded"),[b,_]=hc("dd-snooze-until-ms",0),I=d||b>Date.now(),N=go(B=>B.input.text),$=t.filter(B=>B.source!=="gpt").length,P=()=>{I&&_(0),a(fl(!I))},X=B=>{a(q({name:"suggestion feedback",data:{text:B.text,source:"overlay",context:N},options:{includeConversationData:!0}}))},R=B=>{let at=Date.now()+B*1e3;_(at),E.info(`Snooze until: ${new Date(at)}`),a(Fe({collapse:!0}))};return Th(()=>{$===0&&m(null)},[t,$]),St(()=>{a(Fe({collapse:!0,skipWhenInputFocus:!0}))}),u===null||g===!1?null:u===!1?mo("div",{ref:l,className:Ir(n.root,{[n.isCollapsed]:I}),children:[!I&&mo("div",{className:n.triggers,children:[z("div",{style:{flex:1}}),z("div",{className:n.triggersRight,children:z(ut,{className:n.toggleButton,title:s("collapse"),onClick:P,isCollapsed:!1})})]}),z("div",{className:n.toggleButtonWrapper,children:z(ut,{className:n.toggleButton,title:s("open",{productName:p}),onClick:P,isCollapsed:!0})}),z("div",{className:n.collapsible,children:z(Hn,{loginUrl:h,isEmbedded:x,onLogIn:o,onSnooze:R})})]}):!i||!r?null:mo("div",{ref:l,className:Ir(n.root,{[n.isCollapsed]:I}),children:[!I&&mo("div",{className:n.triggers,children:[z("div",{style:{flex:1},children:v&&z("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>m(s(yn()?"searchHintMac":"searchHintWindows",{searchTriggerKey:c.toUpperCase()})),onMouseLeave:()=>m(null),children:z(bc,{title:s("search")})})}),mo("div",{className:n.triggersRight,onFocus:()=>{},children:[z("div",{className:Ir(!f&&n.hintsHidden,n.hints),children:f}),z(ut,{className:n.toggleButton,title:s("collapse"),onClick:P,isCollapsed:!1})]})]}),z("div",{className:n.toggleButtonWrapper,children:z(ut,{className:n.toggleButton,title:s("open",{productName:p}),onClick:P,isCollapsed:!0})}),$>0&&w&&z("div",{className:n.collapsible,onFocus:()=>{},children:z(re,{children:z(Mn,{onFeedback:X,suggestions:t,selectedIndex:e,reverse:!0})})})]})},Ah=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),wc=Rh(Ah)(Ph);import{Provider as Lh}from"react-redux";import{jsx as Bn}from"react/jsx-runtime";var Mh=({children:t})=>{let o=C("locale").replace("-","");return Bn(Ms.Provider,{value:o,children:t})},Nh=({store:t,customStyles:e={},children:o})=>Bn(Lh,{store:t,children:Bn(Mh,{children:Bn(zt.Provider,{value:e,children:o})})}),tt=Nh;import Kr from"classnames";import{Interweave as xy}from"interweave";import{useCallback as by,useEffect as Cy,useMemo as qc,useRef as wy}from"react";import{connect as Ty}from"react-redux";import{cloneElement as Oh}from"react";var Dh=["div","span","mark","strong","b","i","u","em"];function Pr(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(Dh.includes(s)){let i=Array.isArray(n.props.children)?n.props.children:[n.props.children];return[...t.slice(0,t.length-1),Oh(n,{children:Pr(i,e,o+1)})]}return[...t,...e]}function Ue(t){return t.tagName.toLowerCase()==="textarea"}var Tc={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 Yh from"classnames";import{Matcher as ey}from"interweave";import{useEffect as ty,useMemo as oy}from"react";function Ec(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function Fn(t){return e=>{t.forEach(o=>{typeof o=="function"?o(e):o!=null&&(o.current=e)})}}function kc(t){return t!=null}import Lc from"classnames";import{createRef as Wh,useCallback as Lr,useMemo as Gh,useRef as $h,useState as Xh}from"react";import{useState as Hh,useLayoutEffect as Bh}from"react";var Fh=["bottom","height","left","right","top","width"],Kh=(t={},e={})=>Fh.some(o=>t[o]!==e[o]),Re=new Map,Rc,Ic=()=>{let t=[],e=[];Re.forEach((o,n)=>{if(n instanceof Element&&!n.isConnected){e.push(n);return}let s=n.getBoundingClientRect();Kh(s,o.rect)&&(o.rect=s,t.push(o))}),e.forEach(o=>{Re.delete(o)}),t.forEach(o=>{o.callbacks.forEach(n=>n(o.rect))}),Rc=window.requestAnimationFrame(Ic)};function Uh(t,e){return{observe(){let o=Re.size===0;if(Re.has(t)){let n=Re.get(t);n.callbacks.push(e),n.rect&&e(n.rect)}else Re.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});o&&Ic()},unobserve(){let o=Re.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||Re.delete(t),Re.size||cancelAnimationFrame(Rc)}}}}function Ar(t){let[e,o]=Hh(null);return Bh(()=>{if(!t.current)return;let n=Uh(t.current,s=>{o(s)});return n.observe(),()=>{n.unobserve()}},[t]),e}import{useContext as zh,useLayoutEffect as jh,useState as qh}from"react";import{createPortal as Vh}from"react-dom";var Pc={root:"_root_1jq08_1"};var Ac=({children:t})=>{let[e,o]=qh(null),n=zh(zt);return jh(()=>{let s=document.createElement("div");return Xe(s),s.classList.add(Pc.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?Vh(t,e):null};var he={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 Mr}from"react/jsx-runtime";var Kn=(t=!1)=>{let[e,o]=Xh(t),n=Lr(()=>o(!0),[]),s=Lr(()=>o(!1),[]),r=Lr(()=>o(a=>!a),[]),i=$h(null);return{opened:e,open:n,close:s,toggle:r,triggerRef:i}};function Nr(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 Un=({className:t,triggerRef:e,boundaryRef:o=Wh(),position:n="above",align:s="center",children:r,toStyle:i=Nr,...a})=>{let l=Ar(e),c=Ar(o),p=Gh(()=>i(l,c,0),[l,c]);return Mr(Ac,{children:Mr("div",{className:Lc(he.ref,{[he.positionAbove]:n==="above",[he.positionBelow]:n==="below",[he.positionLeft]:n==="left",[he.positionRight]:n==="right",[he.alignStart]:s==="start",[he.alignCenter]:s==="center",[he.alignEnd]:s==="end"}),style:p,...a,role:"dialog",children:Mr("div",{className:Lc(t,he.root),children:r})})})};import Qh from"classnames";import{forwardRef as Zh,useRef as Jh}from"react";import{jsx as Mc}from"react/jsx-runtime";var zn=Zh(({className:t,children:e,...o},n)=>{let s=Jh(null),r=y("TabCompletion",xe);return Mc("div",{ref:Fn([s,n]),className:Qh(t,r.popoverContentContainer),...o,children:Mc("div",{className:r.popoverContent,children:e})})});import{jsx as fo,jsxs as ry}from"react/jsx-runtime";var ny=t=>e=>{let o=Nr(e);return"top"in o&&(o.width=t.width-(e.left-t.left)-10),o},sy=({inputElement:t,boundaryRef:e,inputStyle:o,children:n,suggestion:s})=>{let r=y("TabCompletion",xe),i=Kn(),a=oy(()=>ny(t.getBoundingClientRect()),[t]),[l,c]=rn(t);return ty(()=>{c?i.open():i.close()},[c]),ry("span",{children:[fo("mark",{ref:Fn([l,i.triggerRef]),className:Yh(r.matchKeyword,{[r.hover]:c}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:n}),i.opened&&fo(Un,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:fo(zn,{style:o,children:fo("div",{className:r.hintText,children:s})})})]})},jn=class extends ey{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${Ec(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(kc);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 fo(sy,{inputElement:o.inputElement,suggestion:o.suggestion,inputStyle:o.inputStyle,boundaryRef:o.boundaryRef,children:e},`keyword_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import Fr from"classnames";import{Matcher as my}from"interweave";import{createRef as fy,forwardRef as hy,useCallback as yy,useEffect as Uc,useRef as zc,useState as jc}from"react";import{useDispatch as vy}from"react-redux";import{jsx as Nc}from"react/jsx-runtime";var Oc=()=>Nc("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:Nc("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 iy,useEffect as Hc,useState as Bc}from"react";import{useDispatch as ay,useSelector as Fc}from"react-redux";import ly from"lodash.debounce";var Dc={root:"_root_1muu8_1",content:"_content_1muu8_7"};function qn(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 Or(t){return t.replace("https://www.","").replace("https://","")}import{jsx as ot,jsxs as Dr}from"react/jsx-runtime";var cy=3,py=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),dy=({onSelectLink:t,onDismiss:e,placeholder:o,visitUrlText:n,linkCount:s=cy})=>{let r=y("LinkSearch",Dc),[i,a]=Bc(""),l=ay(),c=Fc(Cn("url")),p=Fc(Ua("URL",py)),[d,u]=Bc(p.length-1),g=C("fallbackImage"),f=h=>{let x=h.target;a(x.value)},m=(h,x)=>{h.stopPropagation(),h.preventDefault(),window.open(x,"_blank")},v=h=>{var _;let x=d-1<0?p.length-1:d-1,b=d+1===p.length?0:d+1;h.code==="Escape"&&(a(""),e()),h.code==="ArrowUp"&&u(x),h.code==="ArrowDown"&&u(b),h.code==="Enter"&&t(((_=p[d])==null?void 0:_.text)||i)},w=iy(ly(h=>{l(Je({query:h,type:"URL",tags:["link-search"]}))},300),[]);return Hc(()=>{i&&w(i)},[i]),Hc(()=>()=>{l(Sn())},[]),Dr("div",{className:r.root,children:[ot(re,{withDivider:!0,children:(i?p:c).slice(0,s).map((h,x)=>ot(D,{selected:d===x,onClick:()=>t(h.text),"data-testid":"linksearch-suggestion",children:Dr(H,{children:[ot(H.Image,{src:qn(h,"small",g||void 0),title:h.title||h.text}),Dr(H.Content,{className:r.content,cropText:!0,children:[ot(H.Title,{children:h.title||Or(h.text)}),h.title&&Or(h.text)]}),ot(D.Actions,{children:ot(D.ActionButton,{label:n,onClick:b=>m(b,h.text)})})]})},h.text))}),ot(io,{value:i,onChange:f,autoFocus:!0,placeholder:o,onKeyUp:v})]})},Kc=dy;var Hr={};j(Hr,{enUS:()=>uy,nlNL:()=>gy});var uy={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}]},gy={insertLink:[{type:0,value:"Voeg link toe"}],linkInputPlaceholder:[{type:0,value:"Zoek, typ of plak link"}],visitUrl:[{type:0,value:"Bekijk"}]};import{jsx as ye,jsxs as Br}from"react/jsx-runtime";var Sy=hy((t,e)=>{let o=y("TabCompletion",xe);return ye("mark",{ref:e,className:Fr(o.matchSelection)},"selection-start")}),_y=({startRef:t,boundaryRef:e,inputStyle:o,inputElement:n,children:s})=>{let r=T(Hr),i=y("TabCompletion",xe),a=zc(null),l=zc(null),[c,p]=jc(null),d=vy(),u=Kn(document.activeElement===n),[g]=jc(()=>document.createRange());u.triggerRef.current=g,Uc(()=>()=>g.detach(),[]),Uc(()=>{let m=t.current,v=a.current;!m||!v||(g.setStart(m,0),g.setEnd(v,0))},[t.current,a.current]),St(()=>{u.close()});let f=yy(m=>{let v=g.toString(),w=/^http(s?):\/\//.test(m)?m:`https://${m}`;d(Ko({text:`[${v}](${w})`,replace:"selection"}))},[]);return Br("span",{children:[ye("mark",{ref:a,className:Fr(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":u.opened?"true":"false",children:s}),u.opened&&ye(Un,{className:i.popoverRoot,triggerRef:u.triggerRef,boundaryRef:e,position:"above",align:"start",children:Br(zn,{style:o,ref:l,children:[ye("div",{className:Fr(i.selectionOptions,{[i.selectionOptionsIsHidden]:c!==null}),children:Br("button",{type:"button",tabIndex:c===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>p("insertLink"),children:[ye(Oc,{}),ye("span",{children:"\xA0"}),ye("span",{children:r("insertLink")})]})}),c==="insertLink"&&ye(Kc,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:f,onDismiss:()=>{p(null),u.close()}})]})})]},"selection-end")},Vn=class extends my{charCount=0;foundIndex=0;startRef=null;props;onBeforeParse(e,o){return this.props=o,this.charCount=0,this.startRef=fy(),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?ye(Sy,{ref:this.startRef}):ye(_y,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{jsx as Mt,jsxs as Ry}from"react/jsx-runtime";var Ey=({enabled:t,content:e,tabText:o,showTabHint:n,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:l})=>{let c=y("TabCompletion",Tc),p=C("insertLink"),d=C("showMidSentenceSuggestions"),u=C("inlineSuggestions"),g=ln(a),f=wy(null);Cy(()=>{Ue(a)&&g&&cn(a,g)},[g]);let m=by(h=>{if(!s||!o)return h;let x=[Mt("span",{className:c.resetIndent,children:"\u200B"},"u200B"),Mt("span",{"data-testid":"tab-completion",className:Kr(c.tabText,c.resetIndent),"data-source":l,children:o},"tabText")];return n&&x.push(Mt("span",{className:Kr(c.hint,c.resetIndent),children:Mt(us,{keyCode:"tab"},"tabHint")})),Pr(h,x)},[s,o,n]),v=qc(()=>{let h=[];return p&&h.push(new Vn("selection")),h.push(new vt("placeholders")),r&&h.push(new jn("keywords")),h},[u,p,r]),w=qc(()=>{let h=window.getComputedStyle(a);return{"--dd-color":h.color,"--dd-font-size":h.fontSize,"--dd-font-family":h.fontFamily,"--dd-font-variant":h.fontVariant}},[]);return t?Ry("div",{ref:h=>{h!=null&&h.parentElement&&(f.current=h==null?void 0:h.parentElement)},className:c.root,style:w,children:[Mt(xy,{tagName:"span",containerTagName:"div",className:Kr(c.container,c.agentText),disableLineBreaks:Ue(a),content:e||"\u200B",onAfterParse:m,matchers:v,selection:g,keywordMatches:i,inputElement:a,inputStyle:w,boundaryRef:f,inlineSuggestionsOnlyAtEnd:!d}),Mt("br",{})]}):null},ky=({input:t,ui:e,settings:o,styleSuggestions:n,conversation:s})=>{var m;let{tabCompletionSuggestion:r}=t,i=(r==null?void 0:r.text)||"",a=(r==null?void 0:r.source)||"",l=t.html??Qt(t.text),c=i.indexOf(t.text)===0?i.slice(t.text.length):"",{showTabHint:p}=e,{isSupported:d}=s,{showTabCompletion:u,visible:g,showStyleSuggestions:f}=o;return{showTabHint:p,showStyleSuggestions:f,showTabCompletion:u,content:l,tabText:c,source:a,keywordMatches:((m=n.list)==null?void 0:m.keywordMatches)??[],enabled:g&&d!==!1}},Vc=Ty(ky)(Ey);import cv from"classnames";import{useEffect as pv}from"react";import{useDispatch as dv,useSelector as ee}from"react-redux";import{createAsyncThunk as ho,createSlice as Iy}from"@reduxjs/toolkit";var Wc={list:[],fetchState:"idle",isInitialRequest:null},$c=t=>t.autoflows.list||[],Gc=t=>e=>{var o;return(o=e.list)==null?void 0:o.find(n=>n.triggerPayload===t)},Ie=ho("autoflows/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getAutoflows(t)}),Ur=ho("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(Ie(t.platformSessionId))}),zr=ho("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(Ie(t.platformSessionId))}),Py=Iy({name:"autoflows",initialState:Wc,reducers:{},extraReducers:t=>{t.addCase(Ur.pending,(e,o)=>{let n=Gc(o.meta.arg.triggerPayload)(e);n.state="Started",n.isBusy=!0}),t.addCase(zr.pending,(e,o)=>{let n=Gc(o.meta.arg.triggerPayload)(e);n.state="Aborted",n.isBusy=!0}),t.addCase(Ie.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}),t.addCase(Ie.rejected,e=>{e.fetchState="error"}),t.addCase(Ie.fulfilled,(e,o)=>{e.list=o.payload,e.fetchState="done"}),t.addCase(A,()=>Wc)}}),Xc=ho("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(Ie(t))}),s.on("sessionCompleted",()=>{o(Ie(t))})}),Qc=ho("autoflows/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),Zc=Py.reducer;import{createAsyncThunk as vo,createSlice as Ay}from"@reduxjs/toolkit";var Jc={list:[],fetchState:"idle",isInitialRequest:null,sentSuggestions:[],errorSuggestions:[],answeredSuggestions:[]},Yc=t=>t.customMessages.list,ep=t=>e=>!!e.customMessages.sentSuggestions.find(o=>o===t),tp=t=>e=>!!e.customMessages.answeredSuggestions.find(o=>o===t),op=t=>e=>!!e.customMessages.errorSuggestions.find(o=>o===t),yo=vo("customMessages/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getCustomMessages(t)}),Wn=vo("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)}),Gn=vo("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)}),np=Ay({name:"customMessages",initialState:Jc,reducers:{onCustomMessage(t,e){Array.isArray(e.payload)?t.list=e.payload:t.list=[e.payload]}},extraReducers:t=>{t.addCase(yo.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(yo.rejected,e=>{e.fetchState="error"}).addCase(yo.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload||[]}).addCase(Wn.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.errorSuggestions=e.errorSuggestions.filter(n=>o.meta.arg.suggestion.text!==n)}).addCase(Wn.rejected,(e,o)=>{let n=e.sentSuggestions.indexOf(o.meta.arg.suggestion.text);e.errorSuggestions.push(...e.sentSuggestions.splice(n,1))}).addCase(Gn.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.answeredSuggestions.push(o.meta.arg.suggestion.text)}).addCase(Gn.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,()=>Jc)}}),sp=vo("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(np.actions.onCustomMessage(r))})}),rp=vo("customMessages/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),ip=np.reducer;import{createAsyncThunk as ap,createSlice as Ly}from"@reduxjs/toolkit";var My={token:null,accountUrl:null,interval:null},lp=t=>e=>{let{passwordlessToken:{token:o,accountUrl:n}}=e;return o&&n?`${n}/apis/admin/session/passwordless/login/?token=${o}&redirect=${t}`:null},jr=ap("passwordlessToken/getTemporaryPasswordlessToken",async(t,e)=>{let{deepdeskAPI:o}=e.extra,n=await o.requestPasswordlessToken();return{accountUrl:o.client.baseUrl,token:n}}),qr=ap("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:o=1e3*60*10}=t,{dispatch:n}=e;return n(jr()),setInterval(()=>n(jr()),o)}),cp=Ly({name:"passwordlessToken",initialState:My,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(jr.fulfilled,(e,o)=>{e.token=o.payload.token,e.accountUrl=o.payload.accountUrl}),t.addCase(qr.fulfilled,(e,o)=>{e.interval=o.payload})}}),{stopPollPasswordlessToken:pp}=cp.actions,dp=cp.reducer;function up(t){let{customMessages:e,autoflows:o}=t;return o.fetchState==="loading"&&o.isInitialRequest===!0||e.fetchState==="loading"&&e.isInitialRequest===!0}import{Fragment as jy}from"react";import{connect as qy}from"react-redux";import Ky from"classnames";import{Fragment as Uy}from"react";import Ny from"classnames";var gp={root:"_root_838fd_1"};import{jsx as Dy}from"react/jsx-runtime";var Oy=({className:t,children:e})=>{let o=y("Unicode",gp);return Dy("span",{className:Ny(t,o.root),children:e})},mp=Oy;var fp={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 Vr={};j(Vr,{enUS:()=>Hy,nlNL:()=>By});var Hy={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"}]},By={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 nt,jsxs as $n}from"react/jsx-runtime";var zy=({disabled:t,state:e,displayName:o,description:n,onStartAutoflow:s,onStopAutoflow:r})=>{let i=y("Autoflow",fp),a=T(Vr),l=e==="Started"?"stop":"start",c=l==="start"?"\u25B6":l==="stop"?"\u25FC":"";return $n(D,{className:Ky(i.root,{[i.isDisabled]:t,[i.isCompleted]:e==="Completed",[i.isAborted]:e==="Aborted",[i.isStarted]:e==="Started"}),children:[nt(H,{children:$n(H.Content,{children:[$n(H.Title,{children:[e&&nt("span",{className:i.stateBadge,children:a(e)}),o]}),nt("span",{children:n})]})}),nt(D.Actions,{fixed:e==="Started",children:nt(D.ActionButton,{primary:!0,className:l==="start"?i.buttonStart:i.buttonStop,onClick:e==="Started"?r:s,disabled:t,label:$n(Uy,{children:[nt(mp,{children:c})," ",nt("span",{children:a(l)})]})})})]})},hp=zy;import{jsx as yp}from"react/jsx-runtime";var Vy=(t,e)=>{let o=e.filter(n=>n.state==="Started");return o.length>0?o.indexOf(t)===-1:!1},Wy=({autoflows:t,onStartAutoflow:e,onStopAutoflow:o,platformSessionId:n})=>yp(jy,{children:t.map(s=>yp(hp,{displayName:s.displayName,description:s.description,disabled:s.isBusy||Vy(s,t),state:s.state,onStartAutoflow:()=>e({platformSessionId:n,triggerPayload:s.triggerPayload}),onStopAutoflow:()=>o({platformSessionId:n,triggerPayload:s.triggerPayload})},s.displayName))}),Gy=({autoflows:t,conversation:e})=>{var o;return{autoflows:t.list,platformSessionId:(o=e.current)==null?void 0:o.sessionId}},$y={onStartAutoflow:Ur,onStopAutoflow:zr},vp=qy(Gy,$y)(Wy);import{useEffect as Xy,useState as Qy}from"react";import{useDispatch as Zy}from"react-redux";import xp from"classnames";import{jsx as Sp}from"react/jsx-runtime";var Wr=()=>Sp("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:Sp("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 _p={root:"_root_rjdyr_1",entity:"_entity_rjdyr_10",entityText:"_entityText_rjdyr_46",iconWrapper:"_iconWrapper_rjdyr_53",icon:"_icon_rjdyr_53",iconClicked:"_iconClicked_rjdyr_67"};import{jsx as Nt,jsxs as bp}from"react/jsx-runtime";var Jy=({entities:t})=>{let e=y("EntitiesWidgetList",_p),[o,n]=Qy(void 0),s=Zy(),r=()=>{n(void 0)},i=a=>{t&&(n(t.indexOf(a)),lo(a.text),s(q({name:"entity copied",data:{entity:a,type:"copy"}})))};return Xy(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[o]),!t||t.length===0?null:Nt("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,l)=>bp("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[Nt("span",{className:e.entityText,children:a.text}),bp("span",{className:e.iconWrapper,children:[Nt("span",{className:xp(e.icon),children:Nt(Wr,{})}),Nt("span",{className:xp(e.icon,o===l&&e.iconClicked),children:Nt(Wr,{})})]})]},a.text))})},Cp=Jy;import Yy from"classnames";import{useCallback as wp}from"react";import{useDispatch as ev,useSelector as Xn}from"react-redux";var Pe={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 ze,jsxs as Qn}from"react/jsx-runtime";var tv=({suggestion:t})=>{let e=T(Ze),o=ev(),n=Xn(ep(t.text)),s=Xn(tp(t.text)),r=Xn(op(t.text)),i=Xn(Lo),{replyOptions:a}=t,l=wp(p=>{p.preventDefault(),p.stopPropagation(),!(n||!i)&&o(Wn({platformSessionId:i,suggestion:t}))},[t,n,o,i]),c=wp(p=>{if(p.preventDefault(),p.stopPropagation(),!i||!a)return;let d=parseInt(p.target.dataset.index,10),u=a[d];o(Gn({platformSessionId:i,reply:u,suggestion:t}))},[t,n,o,i]);return Qn(D,{onClick:l,className:Yy(Pe.root,{[Pe.isUsed]:n,[Pe.hasError]:r}),children:[ze(H,{children:Qn(H.Content,{children:[Qn(H.Title,{className:Pe.title,children:[t.text," ",ze(gs,{className:Pe.label,children:"analyse tool"})," ",r&&ze("span",{className:Pe.errorIcon,role:"img","aria-label":e("sendingError"),title:e("sendingError"),children:"!"})]}),a&&a.length>0&&ze("ul",{className:Pe.quickReplies,children:a.map(p=>ze("li",{className:Pe.quickReply,children:p.title},p.title))})]})}),Qn(D.Actions,{fixed:r||n,children:[a&&a.length>0&&ze(D.DropdownButton,{label:e("answer"),disabled:s,children:a.map((p,d)=>ze(D.DropdownItem,{index:d,label:p.title,onClick:c},p.title))}),ze(D.ActionButton,{primary:!0,disabled:n,onClick:l,label:e(n?"suggestionSent":r?"tryAgain":"sendSuggestion")})]})]})},Tp=tv;import{jsx as Ep}from"react/jsx-runtime";var kp=()=>Ep("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Ep("path",{d:"M17 13.5v6H5v-12h6m3-3h6v6m0-6-9 9",stroke:"currentColor",strokeWidth:"1.5",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"})});import{useSelector as sv}from"react-redux";import{useCallback as ov}from"react";import{jsx as st,jsxs as Zn}from"react/jsx-runtime";var nv=({suggestion:t,lines:e,onEdit:o,onUse:n})=>{var u;let s=t.text||t.url||t.message,r=_n(s),i=T(Ze),a=C("showImages"),l=C("fallbackImage"),c=g=>{g.preventDefault(),g.stopPropagation(),n(s)},p=g=>{g.preventDefault(),g.stopPropagation(),o(t)},d=ov(g=>{window.open(r,"_blank"),g.stopPropagation(),g.preventDefault()},[r]);return Zn(D,{onClick:c,"data-testid":"edit-suggestion",children:[Zn(H,{children:[a&&t.image&&st(H.Image,{src:qn(t,"small",l||void 0),title:t.title}),Zn(H.Content,{children:[t.title&&st(H.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((u=t.searchKeywords)==null?void 0:u.length)>0&&st(D.Labels,{labels:t.searchKeywords}),st(H.Content,{cropText:e==="single",lineClamp:e==="multiple",children:s})]})]}),Zn(D.Actions,{children:[r&&st(D.ActionButton,{onClick:d,label:i("visitUrl")}),st(D.ActionButton,{primary:!0,onClick:p,label:i("preview")}),st(D.ActionButton,{primary:!0,onClick:c,label:i("useSuggestion")})]})]})},Rp=nv;import{Fragment as iv,jsx as Ip}from"react/jsx-runtime";var rv=({contentType:t,lines:e,suggestions:o})=>{let n=se(),s=sv(Be),r=a=>{n.send(cr,{state:s,suggestion:a,contentType:t})},i=(a,l)=>{n.send(Te,{text:a,suggestion:{...l,source:l.source,sourceText:l.text}})};return Ip(iv,{children:o.map(a=>Ip(Rp,{suggestion:a,lines:e,onEdit:l=>r(l),onUse:l=>i(l,a)},a.text||a.url||a.message))})},Pp=rv;var Gr={};j(Gr,{enUS:()=>av,nlNL:()=>lv});var av={waiting:[{type:0,value:"Loading\u2026"}],notSupported:[{type:0,value:"This conversation is not supported"}],noResults:[{type:0,value:"No results found\u2026"}],titleAutoflows:[{type:0,value:"Autoflows"}],titleCustomMessages:[{type:0,value:"Quick replies"}],actions:[{type:0,value:"Shortcuts"}],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"}]},lv={waiting:[{type:0,value:"Laden\u2026"}],notSupported:[{type:0,value:"Dit gesprek wordt niet ondersteund"}],noResults:[{type:0,value:"Geen resultaten gevonden\u2026"}],titleAutoflows:[{type:0,value:"Autoflows"}],titleCustomMessages:[{type:0,value:"Quick replies"}],actions:[{type:0,value:"Shortcuts"}],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 Ap={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 Lp}from"react/jsx-runtime";var Mp=()=>Lp("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:Lp("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 Np}from"react/jsx-runtime";var Op=()=>Np("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:Np("path",{d:"M319-250h322v-60H319v60Zm0-170h322v-60H319v60ZM220-80q-24 0-42-18t-18-42v-680q0-24 18-42t42-18h361l219 219v521q0 24-18 42t-42 18H220Zm331-554v-186H220v680h520v-494H551ZM220-820v186-186 680-680Z"})});import{jsx as M,jsxs as Ot}from"react/jsx-runtime";var Jn=(t,e)=>{let o=ee(oe);pv(()=>o?e.every(n=>!!n)?t():()=>{}:()=>{},[...e,o])},uv=({onLogIn:t})=>{let e=T(Gr),o=dv(),n=C("isEmbedded"),s=y("Widget",Ap),r=C("showAutoflows"),i=C("showCustomMessages"),a=C("showSummaryCommand"),l=C("showKnowledgeSearch"),c=C("showSearch"),p=ee(Ke),d=ee(Pn),u=ee($c),g=ee(kn),f=ee(Yc),m=ee(Mo),v=ee(ft),w=ee(oe),h=ee(Lo),x=ee(up),b=ee(Be),_=se(),I=ee(ol),N=ee(lp("/admin/")),$=C("adminUrl"),P=C("productName");if(Jn(()=>(o(yo(h)),o(sp(h)),()=>{o(rp(h))}),[o,v,i,h]),Jn(()=>(o(Ie(h)),o(Xc(h)),()=>{o(Qc(h))}),[o,v,r,h]),Jn(()=>{d.forEach(({type:R})=>{o(R==="entities"?pe():ce(R))})},[o,v,m,p]),Jn(()=>(o(qr()),()=>{o(pp())}),[o]),v===!1)return M("div",{className:s.stateText,children:M("div",{children:M("p",{children:e("notSupported")})})},"supported");if(w===!1)return M("div",{className:s.loginText,children:M("div",{children:M(Hn,{isEmbedded:n,loginUrl:$,onLogIn:t})})},"login");if(!p||!h||w===null||I||x)return M("div",{className:s.stateText,children:M("div",{children:M("p",{children:e("waiting")})})},"waiting");let X=c||a||l||N;return M("div",{className:cv(s.root),"data-testid":"widget",children:Ot(fs,{className:s.sectionList,children:[X&&M(qe,{title:e("actions"),type:"shortcuts",children:Ot("div",{className:s.shortcutList,children:[c&&Ot("button",{className:s.shortcut,"data-testid":"shortcut-search",onClick:()=>_.send("ShowCommandPalette",{isOpen:!0}),children:[M(Ct,{}),e("linkSearch")]}),a&&Ot("button",{className:s.shortcut,"data-testid":"shortcut-summary",onClick:()=>_.send("ShowCommandPalette",{isOpen:!0,page:"summary"}),children:[M(Op,{}),e("linkSummary")]}),l&&Ot("button",{className:s.shortcut,"data-testid":"shortcut-knowledge-assist",onClick:()=>_.send("ShowCommandPalette",{isOpen:!0,page:"knowledgeAssist"}),children:[M(Mp,{}),e("linkKnowledgeSearch")]}),N&&Ot("a",{className:s.shortcut,target:"_blank",href:N,"data-testid":"shortcut-studio-login",rel:"noreferrer",children:[M(kp,{}),e("linkStudioLogin",{productName:P})]})]})}),i&&f.length>0&&M(qe,{type:"custom-messages","data-testid":"custom-messages",children:M(re,{withDivider:!0,children:f.map(R=>M(Tp,{suggestion:R},R.text))})}),r&&u.length>0&&M(qe,{type:"autoflows",title:e("titleAutoflows"),"data-testid":"autoflows",children:M(re,{withDivider:!0,children:M(vp,{})})}),d.map(({type:R,title:B,amount:at,lines:Kt})=>{var Ut;switch(R){case"entities":return g&&g.length>0&&M(qe,{type:R,title:B,"data-testid":`type-${R}`,children:M(Cp,{entities:g})},R);default:return((Ut=b[R])==null?void 0:Ut.fetchState)==="done"&&b[R].suggestions.length>0&&M(qe,{type:R,title:B,"data-testid":`type-${R}`,children:M(re,{withDivider:!0,children:M(Pp,{lines:Kt,contentType:R,suggestions:b[R].suggestions.slice(0,at)||[]})})},R)}})]})})},Dp=uv;function _o(t){let e=new Range;return e.selectNodeContents(t),e}function Hp(t,e,o){try{return rt(t,e,o),!0}catch{return!1}}function Yn(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function es(t){return"tagName"in t&&t.tagName==="BR"}var So=/[\u200B-\u200D\uFEFF]/g;function rt(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 u=0;u<=l.length;u++)if(d.test(l[u])||p++,p===c)return u;throw new Error("Offset out of range")}function a(l){switch(l.nodeType){case Node.TEXT_NODE:{let c=l.textContent,p=c.replace(So,""),d=s+p.length,u=e>=s&&e<=d,g=o>=s&&o<=d;if(u){let f=i(c,e-s);f===0&&!g?n.setStartBefore(l):n.setStart(l,f)}g&&(n.setEnd(l,i(c,o-s)),r=!0),s=d;break}case Node.ELEMENT_NODE:{if(es(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;Yn(l)&&c&&!Yn(c)&&!es(c)&&s++;break}default:break}}if(a(t),n.startContainer===document)throw new Error("Offsets out of bound");return n}function ts(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 u=d===o,g=d===s;switch(d.nodeType){case Node.TEXT_NODE:{let f=d.textContent;u&&(a=c+f.substring(0,n).replace(So,"").length),g&&(l=c+f.substring(0,r).replace(So,"").length),c+=f.replace(So,"").length;break}case Node.ELEMENT_NODE:{let f=d.nextSibling===null;es(d)&&!f&&c++;for(let m=0;m<d.childNodes.length;m++){let v=u&&m===n,w=g&&m===r;if(v&&(a=c),w&&(l=c),l!==void 0||((!v||!i)&&p(d.childNodes[m]),g&&m===r-1&&(l=c),l!==void 0))break}!g&&Yn(d)&&!f&&c++,g&&(l=c);break}default:break}}if(p(t),l===void 0)throw new Error("Could not determine start and end");return{start:a??l,end:l}}function os(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 u=p?n:0,g=d?r:void 0,f=c.textContent.replace(So,"");u===0&&g===void 0?a+=f:a+=f.substring(u,g);break}case Node.ELEMENT_NODE:{let u=c.nextSibling===null;i===0&&es(c)&&!u&&(a+=`
|
|
4
|
-
`);for(let g=p?n:0;g<(d?Math.min(r,c.childNodes.length):c.childNodes.length)&&(l(c.childNodes[g]),i!==1);g++);!d&&i===0&&
|
|
5
|
-
`);break}default:break}d&&i++}return l(t),a}function Bp(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var Dt=class extends Ne{observer;lastKnownSelection=null;getRootNode(){return this.element.getRootNode()}getText(){let e=new Range;return e.selectNodeContents(this.element),os(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!Bp(o)&&(e.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=e.getBoundingClientRect(),e.deleteContents(),!Bp(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let e=this.getRange();if(e)return ts(this.element,e);let o=this.lastKnownSelection;if(o&&Hp(this.element,o.start,o.end))return o;let n=_o(this.element);return n.collapse(!1),ts(this.element,n)}getSelectedText(){let{start:e,end:o}=this.getSelection();return os(this.element,rt(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 Fp(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 $r=class{constructor(e){this.name=e;this.broadcastChannel=new BroadcastChannel(e)}broadcastChannel;disposeHandlers=[];onMessage(e){this.broadcastChannel.addEventListener("message",e),this.disposeHandlers.push(()=>{this.broadcastChannel.removeEventListener("message",e)})}postMessage(e){this.broadcastChannel.postMessage(e)}close(){this.disposeHandlers.forEach(e=>e()),this.broadcastChannel.close()}},Xr=class{constructor(e,o,n){this.name=e;this.targetOrigin=o;this.options=n;this.iframe=Fp(e,`${this.targetOrigin}/v2/widget/liveengage/channel.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(e,this.targetOrigin)}close(){var e;this.disposeHandlers.forEach(o=>o()),(e=this.iframe)==null||e.remove()}},Qr=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(),E.info("Set sessionId",e),this.sessionId=e,this.channel=this.createChannel(e))}createChannel(e){let o=this.params.createCustomChannel?this.params.createCustomChannel(e):this.isCrossOrigin?new Xr(e,this.deepdeskUrl,{debug:!0}):new $r(e),n=s=>{var r,i;s.origin===this.deepdeskUrl&&s.data.type==="event"&&s.data.channel===e&&(E.info("Received broadcast event",this.sessionId,s),(i=(r=this.eventMap)[s.data.name])==null||i.call(r,s.data.payload))};return o.onMessage(n),o}send(e,o){var r,i;E.info("broadcast event",{sessionId:this.sessionId,name:e,payload:o});let n={type:"event",name:e,payload:o};(i=(r=this.eventMap)[e])==null||i.call(r,o);let s=this.sessionId==="deepdesk-general"?this.defaultChannel:this.channel;s==null||s.postMessage({...n,channel:this.sessionId})}cleanup(e=!1){var o,n;(o=this.channel)==null||o.close(),delete this.channel,e&&((n=this.defaultChannel)==null||n.close(),delete this.defaultChannel)}},Kp=Qr;var Ht=class extends Error{constructor(o,n){super(o);this.body=n}name="CustomError"};var Zr=t=>new Promise(e=>{setTimeout(e,t)});var Bt=class extends Ht{name="ClientError"},Jr=class extends Ht{name="ServerError"},ve=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:u=b=>b instanceof TypeError,retryOnResponse:g=b=>b.status>=500,version:f="v1",...m}=o,v={credentials:"include",...m,headers:{"Content-Type":"application/json",...m.headers}};o.method!==void 0&&o.method!=="GET"&&this.csrfToken&&(v.headers={...v.headers,"X-CSRFToken":this.csrfToken}),typeof f=="string"&&(v.headers={...v.headers,"X-Deepdesk-API-Version":f});let w=c,h=!1;if(!a)throw new Error("fetch is not set");this.latestRequestByUrl[i]&&l&&(this.latestRequestByUrl[i].isAborted=!0,this.latestRequestByUrl[i].reject(new Error("Aborted"))),this.latestRequestByUrl[i]=r;let x=async()=>(w--,a(i,v).then(async b=>g(b)&&!r.isAborted&&w>0?(await Zr(p),x()):b.status===401&&d===!0&&h===!1?(h=!0,await this.refreshToken(),x()):b).catch(async b=>{if(u(b)&&!r.isAborted&&w>0)return await Zr(p),x();throw b}));x().then(b=>b.json().catch(()=>null).then(_=>{b.status>=500?s(new Jr("Server Error",_)):b.status===401?s(new Bt("Unauthorized",_)):b.status===403?s(new Bt("Forbidden",_)):b.status===404?s(new Bt("Not Found",_)):b.status>=400&&s(new Bt("Bad Request",_)),delete this.latestRequestByUrl[i],n(_)})).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 gv;(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||={})})(gv||={});function ns(t){return{...L(t),tags:t.tags}}var je=class t{constructor(e,o={}){this.options=o;this.client=new ve(e,{fetch:o.fetch}),this.client.patchFetch(n=>async(s,r)=>{let i=await n(s,r);return this.handleDeepdeskVersionHeaders(i),i})}latestReceivedDeepdeskVersions={};client;shouldFetchCsrfToken=!0;static exchangeTokenPromise=null;async preflight(){if(this.shouldFetchCsrfToken){this.shouldFetchCsrfToken=!1;let e=await this.getCsrfToken();this.client.setCsrfToken(e)}return this.options.token?(t.exchangeTokenPromise||(t.exchangeTokenPromise=this.exchangeTokenForAccessCookie(this.options.token)),t.exchangeTokenPromise):Promise.resolve()}async createConversation(e){await this.preflight(),E.info(`Creating conversation for session ${e.sessionId} and agent ${e.agentId}`);let o=await this.client.post("/api/conversations",{...F(e),tags:e.tags},{version:"v2"});return ns(o)}async getProfile(e){let o=await this.client.get(`/apis/admin/profiles/${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(),E.info(`Getting conversation for session ${e}`);let{attempts:n=1,retryDelay:s=1e3}=o,r=await this.client.get(`/api/conversations/by_session_id/${e}`,{attempts:n,retryDelay:s,retryOnResponse:i=>i.status===404||i.status>=500,version:"v2"});return ns(r)}async isConversationSupported(e,o={}){E.info(`Check if conversation for session ${e} is supported`);let{attempts:n=1,retryDelay:s=1e3}=o;return(await this.client.get(`/api/conversations/by_session_id/${e}/active_profile`,{attempts:n,retryDelay:s,retryOnResponse:i=>i.status===404||i.status>=500,version:"v2"})).has_active_profile}async updateConversation(e,o){let n=F(o);o.tags&&(n.tags=o.tags);let s=await this.client.put(`/api/conversations/${e}`,n,{version:"v2"});return ns(s)}async postMessages(e,o){return(await this.client.post(`/api/conversations/${e}/messages`,o.map(s=>({...F(s),tags:s.tags})),{version:"v2"})).map(s=>ns(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",F({...r,...s,data:n,name:e}),{version:"v2"})}async sendEventV1(e,o){let n=Object.entries(this.latestReceivedDeepdeskVersions).reduce((s,[r,i])=>({...s,[r]:i}),{});return this.client.post("/api/events",{event:e,data:F({...o,...n})})}async getEntities(e){return(await this.client.post("/api/entities",{messages:e.filter(n=>n.text)})).entities}async getSummary(e,o={}){return(await this.client.post("/api/summary",{conversation:{messages:e.filter(s=>s.text&&s.source)},prompt_instruction:o.promptInstruction,model:o.model})).summary}async getTemporaryExchangeToken(){return(await this.client.get("/auth/exchange-token",{version:null})).jwt}async exchangeTokenForAccessCookie(e){return this.client.post("/apis/admin/session/jwt/",{jwt:e},{version:null}).catch(o=>{throw E.warn(`Invalid token '${e}'`),o})}async authenticateWithKey(e,o){await this.client.post("/apis/admin/session/api-key/",F(o),{version:null,refreshTokenOn401:!1,headers:{apikey:e}})}async getTextSuggestions(e,o={},n){return n==="sticky-messages"?this.getPinnedMessages(e):(await this.client.post(`/api/conversations/${e}/recommend/${n}`,F(o),{abortLatest:!0})).map(r=>({...L(r),text:r.text||r.url||r.message,source:n,type:n})).filter((r,i,a)=>i===a.findIndex(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`,F(o),{abortLatest:!0})).map(s=>({score:1,source:s.source,sourceText:s.source_text,text:s.label,trainingJobs:s.training_jobs,searchKeywords:s.search_keywords,type:s.source})).filter((s,r,i)=>r===i.findIndex(a=>a.text===s.text))}async getPinnedMessages(e){let o=await this.client.get(`/api/conversations/${e}/sticky-messages`,{abortLatest:!0});return L(o).map(n=>({...n,text:n.message,source:"sticky-messages",type:"pinned-message"}))}async getStyleSuggestions(e){let o=await this.client.post("/api/style-suggestions",F(e),{abortLatest:!0});return L(o)}async search(e){let o=await this.client.post(`/api/profiles/${e.profile}/search`,F(e),{version:"v2"});return L(o)}async knowledgeAssist(e,o,n){let s=await this.client.post(`/api/knowledge-assist/assistants/${n}/search`,F({question:e.question,promptInstruction:e.promptInstruction,chatHistory:o.map(r=>({question:r.question,answer:r.answer.answer}))}),{version:"v2"});return L(s)}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)}handleDeepdeskVersionHeaders(e){e.headers.forEach((o,n)=>{let s=n.toLowerCase(),r=s.match(yi);if(!o||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&o&&a!==o&&E.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(o)}`),this.latestReceivedDeepdeskVersions[i]=o})}};var xo=class{constructor(e,o){this.url=e;this.options={timeout:25e3,...o}}eventListeners={};options;timeoutTimer;eventSource;proxyEvent(e){this.eventSource.addEventListener(er(e),o=>{let{data:n}=o;try{let s=JSON.parse(n);this.emit(e,L(s))}catch{E.warn(`Invalid JSON for ${e}: ${n}`)}})}connect(){clearTimeout(this.timeoutTimer);let e=new EventSource(this.url,{withCredentials:!0});this.eventSource=e;let o=!1;e.onopen=()=>{o=!0},e.onerror=()=>{o&&e.readyState===2&&this.connect()},this.timeoutTimer=setTimeout(()=>{e.close(),this.connect()},this.options.timeout),Object.keys(this.eventListeners).forEach(n=>{this.proxyEvent(n)})}disconnect(){var e;clearTimeout(this.timeoutTimer),this.eventListeners={},(e=this.eventSource)==null||e.close()}emit(e,o){this.eventListeners[e]&&this.eventListeners[e].forEach(n=>n(o))}on(e,o){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o),this.proxyEvent(e),()=>{this.off(e,o)}}off(e,o){let n;this.eventListeners[e]&&(n=this.eventListeners[e].indexOf(o),n>-1&&this.eventListeners[e].splice(n,1))}};var mv;(e=>{let t;(r=>(r.Started="Started",r.Aborted="Aborted",r.Completed="Completed"))(t=e.AutoflowSessionState||={})})(mv||={});var bo=class{constructor(e,o={}){this.apiUrl=e;this.client=new ve(e,o)}client;streams={};logger=E;async getCustomMessages(e){let o=await this.client.get(`/sessions/${e}/suggestions`);return L(o.suggestions)}async sendCustomMessage(e,o){let n=await this.client.post(`/sessions/${e}/messages`,F(o));return L(n)}async answerCustomMessage(e,o){await this.client.post(`/sessions/${e}/answers`,F(o))}async getAutoflows(e){let o=await this.client.get(`/sessions/${e}/autoflows`);return L(o.autoflows)}async startAutoflowSession(e){let o=await this.client.post("/autoflow-sessions",F(e));return L(o)}async stopAutoflowSession(e){await this.client.delete(`/autoflow-sessions/${e}`)}openStream(e){return this.streams[e]||(this.streams[e]=new xo(`${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 xv,configureStore as bv}from"@reduxjs/toolkit";import{createSlice as fv}from"@reduxjs/toolkit";var Up={startTime:null,stopTime:null},zp=fv({name:"handlingTime",initialState:Up,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,()=>Up)}}),{handlingTimeStart:jp,handlingTimeStop:ss,handlingTimeReset:qp}=zp.actions,Vp=zp.reducer;var Wp=(t={})=>{let e={onAuthError:Et(!1),...t};return o=>n=>s=>("error"in s&&s.error.message==="Unauthorized"&&o.dispatch(e.onAuthError),n(s))};import{createAsyncThunk as hv,createSlice as yv}from"@reduxjs/toolkit";var rs={list:{keywordMatches:[]},fetchState:"idle",isInitialRequest:null};var it=hv("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 rs.list;if(!r)throw new Error("No current conversation to fetch pinned messages");return o.getStyleSuggestions({profileCode:r,message:t})}),vv=yv({name:"styleSuggestions",initialState:rs,reducers:{},extraReducers:t=>{t.addCase(it.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(it.rejected,e=>{e.fetchState="error"}).addCase(it.fulfilled,(e,o)=>{e.fetchState="done",Ae(e.list,o.payload)||(e.list=o.payload)}).addCase(Ge,e=>{e.list=rs.list}).addCase(A,()=>rs)}}),Gp=vv.reducer;var $p=(t={})=>{let e,o=!0,n={getStyleSuggestions:it,debounce:500,...t};return s=>r=>i=>{var g;let a=s.getState().input.text,l=r(i),c=s.getState();if(c.auth.isLoggedIn!==!0)return l;let{showStyleSuggestions:p}=c.settings;if(!((g=c.conversation.current)==null?void 0:g.id)||!p)return l;let{text:u}=c.input;return u===a&&!o||(clearTimeout(e),u==="")||(e=setTimeout(()=>{o=!1,s.dispatch(n.getStyleSuggestions({text:u}))},t.debounce)),l}};function Sv(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var Xp=(t={})=>{let e={getTextSuggestions:ce,getAutocompleteSuggestions:oo,debounce:200,check:Lt,...t},o;return n=>s=>r=>{var m;let{input:{userCommitted:i}}=n.getState(),a=s(r),l=n.getState();if(l.auth.isLoggedIn!==!0)return a;let{recommendTextSuggestions:c,showTabCompletion:p}=l.settings,d=(m=l.conversation.current)==null?void 0:m.id,u=r.type===wn.toString();if(!d||!c&&!p)return a;let{input:{userCommitted:g}}=l;return Sv(g,i)&&!u||(clearTimeout(o),!e.check(l))||(o=setTimeout(()=>{let v=ht(l);v===""?n.dispatch(e.getTextSuggestions("default")):n.dispatch(e.getAutocompleteSuggestions(v))},u?0:e.debounce)),a}};var Qp=it.fulfilled.toString();function _v(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 Zp=t=>e=>o=>n=>{var c;if(n.type!==Qp){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=_v(s,i);n.type===Qp&&l.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:l}})};var Cv=xv({activeSuggestion:ul,answer:Yl,auth:Tl,autoflows:Zc,conversation:Ci,contentTypes:Dl,customMessages:ip,passwordlessToken:dp,entities:Fl,handlingTime:Vp,info:Ha,input:Cs.reducer,overlayInput:Q.reducer,settings:Si,profile:sc,search:ja,summary:Wl,styleSuggestions:Gp,ui:hl,textSuggestions:al});function Jp(t){return bv({reducer:Cv,middleware:e=>[...e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI,deepdeskBrokerAPI:t.deepdeskBrokerAPI}},serializableCheck:!1}),Wp(),Xp({debounce:200}),$p({debounce:500}),Zp(t.deepdeskAPI),...t.middleware?t.middleware:[]],preloadedState:t.preloadedState})}var wv=t=>{var e;return((e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())??"unknown"},Tv=t=>e=>o=>n=>{var a;let s=e.getState(),r=Ss("inlineSuggestions")(s);switch(n.type){case Ce.toString():{let l=Cn(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 Et.toString():{!n.payload&&t.emit("logout",void 0);break}case ie.toString():{let{start:l,end:c}=s.input.selection;t.emit("select-suggestion",{type:wv(n.payload.suggestion),...n.payload,replace:n.payload.replace==="selection"?{start:l,end:c}:{start:0,end:c}},{mayApplyChanges:!0});break}case Ko.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 Vt.toString():{let l=e.getState(),{text:c,selection:p}=l.input.userCommitted;t.emit("reset",{text:c,selectionAfter:p},{mayApplyChanges:!0});break}case qo.toString():t.emit("select-image",n.payload,{mayApplyChanges:!0}),t.sendEvent("Image attached",{conversationId:s.conversation.current.id,data:{path:n.payload.suggestion.image,title:n.payload.suggestion.title}});break;case pe.fulfilled.toString():n.payload.length>0&&t.sendEvent("entities found",{conversationId:s.conversation.current.id,data:{entities:n.payload}});break;case Ee.fulfilled.toString():t.sendEvent("conversation summarized",{conversationId:s.conversation.current.id,data:{summary:n.payload.summary}});break;case q.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 Uo.toString():t.handleKeyDown(n.payload);break;case Ge.toString():t.logSendMessage(n.payload);break;case zo.toString():t.logSendEditSuggestionMessage(n.payload);break;case jo.toString():t.handleInputChanged(n.payload);break;default:break}let i=o(n);switch(n.type){case Ge.toString():t.handleAfterSendMessage(n.payload);break;case no.toString():t.onUpdateShowTabHint(n.payload);break;case ss.toString():t.logHandlingTime();break;case ie.toString():{r&&(e.dispatch(ge([])),e.dispatch(_e()));break}case ge.toString():{r&&n.payload.length>0&&e.dispatch(Me(0));break}default:break}return i},Yp=Tv;function Yr(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:Yr(o),timeStop:Yr(n)}}function ei(t,e,o){var N,$,P;let{text:n,metrics:{numCharsTyped:s,numCharsPasted:r,numCharsCut:i,numCharsDeleted:a,numPaste:l,agentStartedTypingTimestamp:c,externalTimeTotalSeconds:p,pastes:d,cuts:u,deletions:g,textSuggestions:f,offeredTextSuggestions:m}}=e[t],v=n.length,h=f.reduce((X,{text:R,searchTerm:B})=>X+R.length-(B?B.length:0),0),x=c??Date.now(),b=(Date.now()-x)/1e3+(p||0),_=s/b,I=f.reduce((X,{searchTerm:R})=>X+(R?R.length:0),0);return{conversationId:e.conversation.current.id,source:"agent",text:n,clientVersion:o.version,pastes:d,cuts:u,deletions:g,lenTextTyped:s+I,lenTextTotal:v,lenTextAssisted:h,lenTextPasted:r,lenTextCut:i,lenTextDeleted:a,timeTotalSeconds:b,charsPerSecond:_,numPastes:l,textSuggestionsV2:f,suggestionsCounters:[{source:"gpt",countOffered:m.filter(X=>X.source==="gpt").length}],agentId:(N=e.info.agentInfo)==null?void 0:N.agentId,agentName:($=e.info.agentInfo)==null?void 0:$.agentName,agentEmail:(P=e.info.agentInfo)==null?void 0:P.agentEmail}}function ti(t,e){var r;let o=t.closest(e);if(o)return o;let n=t.getRootNode().host;if(n instanceof HTMLElement)return ti(n,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?ti(s,e):null}function td(t,e){return ti(t,e)}function od(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function Ev(t){return typeof t=="object"&&t!==null&&"tagName"in t}function oi(t){return Ev(t)&&(Ue(t)||an(t))}var nd=(t,e)=>({value(){try{let o=sessionStorage.getItem(`dd-${t}`);if(!o)return e;try{return JSON.parse(o)}catch{return e}}catch{return e}},update(o){try{sessionStorage.setItem(`dd-${t}`,JSON.stringify(o))}catch{E.warn("[Deepdesk] SessionStorage is blocked by browser")}}});function kv(t){return t.offsetParent!==null}function sd(t){if(!kv(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 ni(t,e,o=100){let n=sd(t);e({isVisible:n});let s=setInterval(()=>{let r=sd(t);r!==n&&(n=r,e({isVisible:n}))},o);return()=>{clearTimeout(s)}}import Av from"classnames";import{useSelector as Lv}from"react-redux";import{jsx as si}from"react/jsx-runtime";var rd=({className:t})=>si("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:si("g",{children:si("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
|
+
`,$e.MISSING_INTL_API,i);var b=o.getPluralRules(e,{type:p.pluralType}).select(u-(p.offset||0));x=p.options[b]||p.options.other}if(!x)throw new As(p.value,u,Object.keys(p.options),i);a.push.apply(a,Xt(x.value,e,o,n,s,u-(p.offset||0)));continue}}return Pu(a)}function Au(t,e){return e?te(te(te({},t||{}),e||{}),Object.keys(t).reduce(function(o,n){return o[n]=te(te({},t[n]),e[n]||{}),o},{})):t}function Mu(t,e){return e?Object.keys(t).reduce(function(o,n){return o[n]=Au(t[n],e[n]),o},te({},t)):t}function Ms(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,o){t[e]=o}}}}}function Nu(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:on(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.NumberFormat).bind.apply(e,Vo([void 0],o,!1)))},{cache:Ms(t.number),strategy:nn.variadic}),getDateTimeFormat:on(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.DateTimeFormat).bind.apply(e,Vo([void 0],o,!1)))},{cache:Ms(t.dateTime),strategy:nn.variadic}),getPluralRules:on(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.PluralRules).bind.apply(e,Vo([void 0],o,!1)))},{cache:Ms(t.pluralRules),strategy:nn.variadic})}}var Zi=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(u,g){return!u.length||g.type!==V.literal||typeof u[u.length-1]!="string"?u.push(g.value):u[u.length-1]+=g.value,u},[]);return d.length<=1?d[0]||"":d},this.formatToParts=function(c){return Xt(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=ji(i,["formatters"]);this.ast=t.__parse(e,te(te({},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=Mu(t.formats,n),this.formatters=s&&s.formatters||Nu(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=Wi,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 Hu(t,e){return e.split(".").reduce((o,n)=>o?o[n]:void 0,t)}var Bu="dummy",Ns=Ou(null);function T(t){let e=Du(Ns);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=Hu(o,n);return r?new Zi(r).format(s):(e!==Bu&&console.warn(`${n} does not exist in messages of ${e}`),`[${n}]`)}}import{jsx as Ji,jsxs as Fu}from"react/jsx-runtime";var sn=()=>Fu("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[Ji("title",{id:"angleLeftTitle",children:"AngleLeft"}),Ji("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 Yi,jsxs as Ku}from"react/jsx-runtime";var ea=()=>Ku("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleRightTitle",children:[Yi("title",{id:"angleRightTitle",children:"AngleRight"}),Yi("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 Zt,useRef as qs,useState as pg}from"react";import{useDispatch as dg}from"react-redux";import{Interweave as Sa}from"interweave";import _a from"classnames";var Os={root:"_root_kxnai_1",agentText:"_agentText_kxnai_3",textInput:"_textInput_kxnai_8",textInputWrapper:"_textInputWrapper_kxnai_27",alert:"_alert_kxnai_31",alertText:"_alertText_kxnai_50",warning:"_warning_kxnai_60",success:"_success_kxnai_69"};import{Matcher as qu}from"interweave";import Vu from"classnames";import{useEffect as Uu,useRef as zu,useState as ju}from"react";function ta(t,e){let o;return[(...n)=>{window.cancelAnimationFrame(o);let s=e?e(...n):n;o=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(o)]}function rn(t){let e=zu(null),[o,n]=ju(!1);return Uu(()=>{let s=!1,r=parseFloat(window.getComputedStyle(document.body).zoom??"1"),[i,a]=ta((p,d)=>{let u=e.current;if(!u)return;let g=p/r,f=d/r,m=u.getBoundingClientRect(),v=g>m.x&&g<m.x+m.width&&f>m.y&&f<m.y+m.height;v&&!s?(s=!0,n(!0)):!v&&s&&(s=!1,n(!1))},({clientX:p,clientY:d})=>[p,d]),[l,c]=ta(()=>{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 xe={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 oa}from"react/jsx-runtime";var Wu=({inputElement:t,children:e})=>{let o=y("TabCompletion",xe),[n,s]=rn(t);return oa("mark",{ref:n,className:Vu(o.matchPlaceholder,{[o.hover]:s}),children:e})},vt=class extends qu{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 oa(Wu,{inputElement:o.inputElement,children:e},`placeholder_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import{useEffect as Gu,useRef as $u,useState as Xu}from"react";function an(t){return t.contentEditable==="true"}function Qu(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 na(t){let{selectionStart:e,selectionEnd:o}=an(t)?Qu(t):t;return[e,o]}function ln(t){let[,e]=Xu(),o=$u(null);return o.current=na(t),Gu(()=>{let n=()=>{let[s,r]=o.current??[],i=na(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 cn(t,e){if(!e)return;let o=t,{value:n}=o,[s,r]=e,i=n.match(gt);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 Zu}from"react";function St(t){Zu(()=>{let e=o=>{o.isWithinRoot||t(o)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function Xe(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}var sa,me=new Map,Ju=["bottom","height","left","right","top","width"],Yu=(t={},e={})=>Ju.some(o=>t[o]!==e[o]);function ra(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,...ra(e)]:[]}function ia(t,e){return!t||!e?null:{...t,top:t.top+e.top,left:t.left+e.left}}var pn=!1,aa=()=>{pn=!0;let t=[];if(me.forEach((e,o)=>{if(!o.isConnected){e.rect=null,t.push(e),me.delete(o);return}let n=o.getBoundingClientRect();Yu(n,e.rect)&&(e.rect=n,t.push(e))}),t.forEach(e=>{let o=e.parentRects?e.parentRects.reduce(ia,e.rect):e.rect;e.callbacks.forEach(n=>n(o))}),me.size===0){pn=!1;return}sa=window.requestAnimationFrame(aa)};function Ds(t,e){let o=ra(t),n=[],s=o.map((r,i)=>Ds(r,a=>{n[i]=a;let l=me.get(t);if(!l)return;let c=n.reduce(ia,l.rect);l.callbacks.forEach(p=>p(c))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),me.has(t)){let i=me.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else me.set(t,{rect:void 0,callbacks:[e],parentRects:n});r&&!pn&&aa()},unobserve(){s.forEach(i=>i.unobserve());let r=me.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||me.delete(t),me.size||(cancelAnimationFrame(sa),pn=!1)}}}}var la,fe=new Map,ca=()=>{fe.forEach((t,e)=>{if(!e.isConnected){fe.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)))}),fe.size!==0&&(la=window.requestAnimationFrame(ca))};function pa(t,e){return{observe(){let o=fe.size===0;fe.has(t)?fe.get(t).callbacks.push(e):fe.set(t,{visible:void 0,callbacks:[e]}),o&&ca()},unobserve(){let o=fe.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||fe.delete(t),fe.size||cancelAnimationFrame(la)}}}}var Hs=["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 Bs(t,e,o){return o.forEach(n=>{e.style[n]=t[n]})}function _t(t){return parseFloat(t)}function dn(t){return Math.round(t*1e6)}function da(t){return t/1e6}function Fs(t,e,o){if(t.boxSizing==="content-box")return;let{clientWidth:n}=e,s=_t(t.width),r=_t(t.borderLeftWidth),i=_t(t.borderRightWidth),a=_t(t.paddingRight),l=da(dn(s)-dn(r)-dn(i)),c=da(dn(n));if(l-c>2){let p=l-c;o.style.paddingRight=`${a+p}px`}}function xt(t,e={}){var l;let o=e.overlayContainer||document.createElement("div");o.style.display="none",o.style.position=e.position??"fixed",o.style.pointerEvents="none",o.style.borderColor="transparent",Xe(o);let n=window.getComputedStyle(t),s=!0,r=()=>{o.scrollTop=t.scrollTop};Bs(n,o,Hs),Fs(n,t,o),e.mirrorOverflow&&(o.style.overflow="hidden",t.addEventListener("scroll",r));let i=pa(t,()=>{Bs(n,o,Hs),Fs(n,t,o),r(),setTimeout(r,0)}),a=Ds(t,c=>{if(c===null){e.onRemove&&e.onRemove(),o.remove();return}if(c.height===0&&c.width===0){if(s===!0)return;e.onHide&&e.onHide(),o.style.display="none",s=!0;return}if(Bs(n,o,Hs),Fs(n,t,o),r(),o.style.top=`${c.top}px`,o.style.left=`${c.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let p=e.closestScrollElement.getBoundingClientRect(),d=window.getComputedStyle(e.closestScrollElement),u=_t(d.borderTopWidth),g=_t(d.borderBottomWidth),f=p.top+u-c.top,m=c.top+c.height+-(p.top+p.height-g);o.style.clipPath=`inset(${f}px 0px ${m}px 0px)`}s&&(o.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(o):(l=t.parentElement)==null||l.appendChild(o),a.observe(),i.observe(),[o,()=>{t.removeEventListener("scroll",r),a.unobserve(),i.unobserve()}]}var Ks={};j(Ks,{enUS:()=>eg,nlNL:()=>tg});var eg={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"}]},tg={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 ua,jsxs as og}from"react/jsx-runtime";var ga=()=>og("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 512 512","aria-labelledby":"circleCheckTitle",children:[ua("title",{id:"circleCheckTitle",children:"Check"}),ua("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 ma}from"react/jsx-runtime";var fa=()=>ma("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",fill:"currentColor",children:ma("path",{d:"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224c0-17.7-14.3-32-32-32s-32 14.3-32 32s14.3 32 32 32s32-14.3 32-32z"})});function ng(t){let e=t.scrollHeight>t.clientHeight,n=window.getComputedStyle(t).overflowY.indexOf("hidden")!==-1;return e&&!n}function un(t){return t?t instanceof ShadowRoot?un(t.host):t===t.ownerDocument.body?t.ownerDocument:ng(t)?t:un(t.parentNode):document.body}var ha=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(ha||{}),Ne=class{constructor(e){this.element=e;this.currentText=this.getText(),this.currentHTML=this.getHTML(),this.listen()}eventListeners={};disposeHandlers=[];currentText="";currentCaret=null;currentSelection={start:0,end:0};currentHTML="";isFocused=!1;isActive=!0;isSettingValue=!1;isSubmitting=!1;isPossibleClearInputAction=!1;isDisposed=!1;addEventListener(e,o){let n=s=>{o(s)};this.element.addEventListener(e,n),this.disposeHandlers.push(()=>{this.element.removeEventListener(e,n)})}removeEventListener(e,o){this.element.removeEventListener(e,o)}triggerChange(){let e=this.getText(),o=this.getHTML(),n=e!==this.currentText;this.isActive&&(e===""&&this.currentText!==""&&!this.isSettingValue&&!this.isPossibleClearInputAction&&(this.isSubmitting=!0,this.emit("submit")),!this.isSettingValue&&n&&!this.isSubmitting&&this.emit("change",{plainText:e}),n&&(this.currentSelection=this.getSelection()),this.currentText=e,this.isSubmitting=!1,(this.currentHTML!==o||o===null&&n)&&(this.emit("updated",{plainText:e}),this.triggerCaretPosition(),this.currentHTML=o))}triggerSelection(){let e=this.getSelection();(e.start!==this.currentSelection.start||e.end!==this.currentSelection.end)&&(this.currentSelection=e,this.emit("selection",e),this.triggerCaretPosition())}triggerCaretPosition(){let e=this.getCaretPosition();Le(e,this.currentCaret)||(this.currentCaret=e,this.emit("caret",e))}handleKeyUp(e){let{key:o,shiftKey:n}=e;(o==="Enter"&&n===!0||o==="Backspace")&&this.triggerChange(),this.triggerSelection()}handleClick(){this.triggerSelection()}handleFocus(){this.isFocused||this.emit("focus"),this.triggerSelection(),this.isFocused=!0}handleBlur(){this.isPossibleClearInputAction=!1,this.isFocused&&this.emit("blur"),this.isFocused=!1}handleKeyDown(e){let{key:o,ctrlKey:n,metaKey:s}=e;this.isPossibleClearInputAction=Object.values(ha).includes(o)||o.toLowerCase()==="z"&&(n||s),this.emit("keydown",e)}handleCut(){this.isPossibleClearInputAction=!0,this.emit("cut",{selectionText:this.getSelectedText()})}handlePaste(e){var n,s;let o=((n=e.clipboardData)==null?void 0:n.getData("text"))||((s=e.clipboardData)==null?void 0:s.getData("text/plain"))||"";this.emit("paste",{pastedText:o,selectionText:this.getSelectedText()})}listen(){this.addEventListener("keydown",n=>this.handleKeyDown(n)),this.addEventListener("keyup",n=>this.handleKeyUp(n)),this.addEventListener("input",()=>this.triggerChange()),this.addEventListener("change",()=>this.triggerChange()),this.addEventListener("focus",()=>this.handleFocus()),this.addEventListener("blur",()=>this.handleBlur()),this.addEventListener("cut",()=>this.handleCut()),this.addEventListener("paste",n=>this.handlePaste(n)),this.addEventListener("click",()=>this.triggerSelection()),document.activeElement===this.element&&setTimeout(()=>{this.handleFocus()},0);let e=new MutationObserver(()=>{this.element.isConnected||(this.emit("unmounted"),this.dispose())});e.observe(document.body,{subtree:!0,childList:!0}),this.disposeHandlers.push(()=>{e.disconnect()});let o=un(this.element);if(o){let n=()=>{this.currentCaret!==null&&(this.currentCaret=null,this.emit("caret",null))};o.addEventListener("scroll",n),this.disposeHandlers.push(()=>{o.removeEventListener("scroll",n)})}this.currentSelection=this.getSelection()}focus(){this.element.focus()}emit(e,...o){this.isDisposed||this.eventListeners[e]&&this.eventListeners[e].forEach(n=>{n(...o)})}on(e,o){this.isDisposed||(this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o))}activate(){let e=this.isActive===!1;this.isActive=!0,e&&this.triggerChange()}deactivate(){this.isActive=!1}dispose(){this.disposeHandlers.forEach(e=>e()),this.eventListeners={},this.isDisposed=!0}};var Oe=class extends Ne{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 sg=/[.*+?^${}()|[\]\\]/g,rg=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function ig(t){return t.replace(sg,"\\$&")}function ag(t,e){let o=t.split("").findIndex((n,s)=>n!==e[s]);return o>-1?o:Math.min(t.length,e.length)}function lg(t){return t.search(rg)}function ya(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 va(t){return t.replace(gt,'<mark data-type="placeholder">$1</mark>')}function Qt(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function cg(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 Us(t,e,o={}){if(e){let n=ag(e.toLowerCase(),t.toLowerCase()),s=Qt(t.substring(n,t.length));if(o.stripAgentPart){let l=t.substring(0,n),c=lg(l);return`<span style="opacity: 0.5">${l.substring(c+1)}</span>${s}`}let i=e.split(hi).length>3||e.length>30?cg(e.trim(),n):0;return`${`${i>0?"\u2026":""}${Qt(t.substring(i,n))}`}<strong>${s}</strong>`}return t}function zs(t){return/<\/?[a-z][\s\S]*>/i.test(t)}function gn(t){if(zs(t)){let o=/<body[^>]*>([\s\S]*)<\/body>/gi.exec(t);return o?o[1]:""}return t}import{jsx as le,jsxs as js}from"react/jsx-runtime";var ug=({value:t,onUse:e,...o})=>{var d;let n=T(Ks),s=dg(),r=zs(t),i=y("EditSuggestionTextInput",Os),[a,l]=pg(null),c=qs(null),p=((d=t.match(gt))==null?void 0:d.length)||0;return Zt(()=>{let u;return c.current&&(l(c.current),u=new Oe(c.current),u.on("change",({plainText:g})=>{s(Q.actions.userInput({text:g,selection:u.getSelection()}))}),u.on("keydown",g=>{s(Q.actions.registerKeyDown(Fo(g))),g.code==="Enter"&&g.shiftKey&&e(u.getText())}),u.on("paste",({pastedText:g,selectionText:f})=>{s(Q.actions.registerPaste({text:g,selectionText:f}))}),u.on("cut",({selectionText:g})=>{s(Q.actions.registerCut(g))})),()=>{s(Q.actions.reset()),u.dispose(),u.deactivate()}},[c]),Zt(()=>{t&&c.current&&(c.current.value=t)},[t,c]),Zt(()=>{c.current&&setTimeout(()=>{if(!c.current)return;let u=c.current.value.length;c.current.setSelectionRange(u,u),c.current.focus()},0)},[c]),r?le("div",{className:i.textInputWrapper,children:le(Sa,{className:i.textInput,tagName:"div",content:t})}):js("div",{className:i.textInputWrapper,children:[le("textarea",{...o,ref:c,"data-testid":"edit-suggestion-dialog-textarea",className:i.textInput,defaultValue:t,onChange:()=>{}}),a&&le(gg,{inputElement:c.current,value:t}),js("div",{className:_a(i.alert,p===0?i.success:i.warning),children:[le("div",{className:i.alertText,children:n("placeholders",{placeholderSize:p})}),p===0?le(ga,{}):le(fa,{})]})]})},gg=({inputElement:t,value:e})=>{let o=y("EditSuggestionTextInput",Os),n=qs(null),s=ln(t);return Zt(()=>{cn(t,s)},[s,t]),le(mg,{inputElement:t,children:js("div",{ref:n,className:_a(o.root,o.agentText),children:[le(Sa,{tagName:"span",disableLineBreaks:!0,content:e,matchers:[new vt("placeholders")],inputElement:t,boundaryRef:n}),le("br",{})]})})},mg=({inputElement:t,children:e})=>{let o=qs(null);return Zt(()=>{if(!o.current)return()=>{};let[n,s]=xt(t,{overlayContainer:o.current,mirrorOverflow:!0});return n.setAttribute("translate","no"),()=>{s()}},[o.current]),le("div",{ref:o,children:e})},xa=ug;import{useEffect as nm,useState as sm,useRef as rm}from"react";import{useState as yg}from"react";import Vs from"classnames";var Z={root:"_root_pc5uy_1",list:"_list_pc5uy_2",listWrapper:"_listWrapper_pc5uy_6",listHorizontal:"_listHorizontal_pc5uy_10",page:"_page_pc5uy_19",search:"_search_pc5uy_25",pageNav:"_pageNav_pc5uy_33",pageTitle:"_pageTitle_pc5uy_41",pageBackButton:"_pageBackButton_pc5uy_48",listHeading:"_listHeading_pc5uy_62",listItem:"_listItem_pc5uy_70",listItemContent:"_listItemContent_pc5uy_79",listItemText:"_listItemText_pc5uy_97",listItemDescription:"_listItemDescription_pc5uy_105",listItemActions:"_listItemActions_pc5uy_112",truncate:"_truncate_pc5uy_123",lineClamp:"_lineClamp_pc5uy_129",listItemTitle:"_listItemTitle_pc5uy_136",listItemAction:"_listItemAction_pc5uy_112",listItemPrimaryAction:"_listItemPrimaryAction_pc5uy_157",listItemSelected:"_listItemSelected_pc5uy_162",sources:"_sources_pc5uy_166",sourcesTitle:"_sourcesTitle_pc5uy_173",source:"_source_pc5uy_166",icon:"_icon_pc5uy_188",searchIcon:"_searchIcon_pc5uy_205",searchInputWrapper:"_searchInputWrapper_pc5uy_210",searchInput:"_searchInput_pc5uy_210",select:"_select_pc5uy_231",selectType:"_selectType_pc5uy_248",selectWrapper:"_selectWrapper_pc5uy_252",image:"_image_pc5uy_282",imageSrc:"_imageSrc_pc5uy_289",imageSrcHidden:"_imageSrcHidden_pc5uy_300",imageSrcStatus:"_imageSrcStatus_pc5uy_304",imageTitle:"_imageTitle_pc5uy_314",actions:"_actions_pc5uy_319",actionsWrapper:"_actionsWrapper_pc5uy_323",actionsBar:"_actionsBar_pc5uy_329",actionButton:"_actionButton_pc5uy_338",actionShortcut:"_actionShortcut_pc5uy_356",actionShortcutFixKerning:"_actionShortcutFixKerning_pc5uy_363"};var Qe={};j(Qe,{enUS:()=>fg,nlNL:()=>hg});var fg={visitUrl:[{type:0,value:"Visit"}],back:[{type:0,value:"Back"}],loading:[{type:0,value:"Loading..."}],imageError:[{type:0,value:"Could not load image"}]},hg={visitUrl:[{type:0,value:"Bekijk"}],back:[{type:0,value:"Terug"}],loading:[{type:0,value:"Laden..."}],imageError:[{type:0,value:"Kan afbeelding niet laden"}]};import{jsx as Jt,jsxs as Sg}from"react/jsx-runtime";var vg=({src:t,title:e})=>{let o=y("CommandPalette",Z),[n,s]=yg("loading"),r=T(Qe);return Sg("div",{className:o.image,children:[Jt("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:Vs(o.imageSrc,{[o.imageSrcHidden]:["loading","error"].includes(n)})}),n==="loading"&&Jt("span",{className:Vs(o.imageSrc,o.imageSrcStatus),children:r("loading")}),n==="error"&&Jt("span",{className:Vs(o.imageSrc,o.imageSrcStatus),children:Jt(ko,{})}),e&&Jt("span",{className:o.imageTitle,children:e})]})},ba=vg;import _g from"react";import xg from"classnames";import{jsx as Ca,jsxs as bg}from"react/jsx-runtime";function Ws({children:t,heading:e,orientation:o}){let n=y("CommandPalette",Z);return _g.Children.count(t)===0?null:bg("div",{"data-testid":"commandpalette-list",className:n.list,children:[e&&Ca("h4",{className:n.listHeading,children:e}),Ca("div",{className:xg(n.listWrapper,o==="horizontal"&&n.listHorizontal),children:t})]})}import hn from"classnames";import Gs from"react";import{jsx as Cg}from"react/jsx-runtime";var wa=Gs.createContext(void 0);function De(){let t=Gs.useContext(wa);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Ta=({children:t,page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r})=>{let i=Gs.useMemo(()=>({page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r}),[o,e,s]);return Cg(wa.Provider,{value:i,children:t})};import wg,{useState as Ea,useEffect as ka,useMemo as Tg,useRef as Ia,useCallback as Eg,useContext as kg}from"react";import Ig from"classnames";var $s={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 mn,jsxs as Ag}from"react/jsx-runtime";var Rg=0,Ra=wg.createContext(null),Pg=()=>{let t=kg(Ra);if(!t)throw new Error("Invalid DropdownContext");return t},Pa=({trigger:t,children:e,position:o="bottom"})=>{let n=Tg(()=>++Rg,[]),s=Ia(null),r=Ia(null),i=y("Dropdown",$s),[a,l]=Ea(!1),[c,p]=Ea(o),d=g=>{g.preventDefault(),g.stopPropagation(),l(!a)},u=Eg(([g])=>{!g.isIntersecting&&a&&p(c==="top"?"bottom":"top")},[a]);return ka(()=>{let g=f=>{s.current&&!s.current.contains(f.target)&&l(!1)};return document.addEventListener("click",g),()=>{document.removeEventListener("click",g)}},[]),ka(()=>{if(!r.current&&!a)return()=>{};let g=new IntersectionObserver(u,{root:null,rootMargin:"0px",threshold:1});return r.current&&g.observe(r.current),()=>{r.current&&g.unobserve(r.current)}},[r,a]),mn(Ra.Provider,{value:{setIsOpen:l},children:Ag("div",{ref:s,className:i.root,children:[mn("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}),mn("div",{"data-testid":"dropdown-content",ref:r,"aria-hidden":!a,"aria-labelledby":`dropdown-${n}`,className:Ig(i.content,{[i.contentOpen]:a,[i.contentTop]:c==="top",[i.contentBottom]:c==="bottom"}),children:e})]})})};function Lg({as:t,children:e,onClick:o,...n}){let s=t||"button",r=y("Dropdown",$s),{setIsOpen:i}=Pg(),a=l=>{i(!1),o(l),l.stopPropagation()};return mn(s,{type:"button",className:r.item,onClick:a,...n,children:e})}Pa.Item=Lg;var Xs=Pa;import{jsx as La}from"react/jsx-runtime";var Aa=t=>La("svg",{xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512",...t,children:La("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 Ze={};j(Ze,{enUS:()=>Mg,nlNL:()=>Ng});var Mg={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"}]},Ng={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 Qs}from"react/jsx-runtime";var Og="%0d%0a%0d%0a%0d%0a",Dg=(t,e)=>{let o=[`Suggestie: ${encodeURIComponent(e)}`,"Beschrijf je feedback:"];return`mailto:${t.join(",")}?subject=Suggestie feedback&body=${o.join(Og)}`},Hg=({suggestion:t,onFeedback:e})=>{let o=T(Ze),n=C("suggestionFeedbackEmailAddresses");return!n||n.length===0?null:Qs(Xs,{trigger:Qs(Aa,{"data-testid":"feedback-dropdown-trigger"}),children:Qs(Xs.Item,{as:"a",href:Dg(n,t),onClick:e,children:o("giveFeedback")})})},fn=Hg;import{Interweave as Bg}from"interweave";import{jsx as He,jsxs as Zs}from"react/jsx-runtime";function Js({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:u,onChangeOpen:g}=De(),f=y("CommandPalette",Z);function m(v){n(v),t&&g(!1)}return Zs("div",{className:hn(f.listItem,d===i&&f.listItemSelected),children:[He("button",{onMouseEnter:()=>u(i),type:"button",className:hn("command-palette-list-item",f.listItemAction,f.listItemPrimaryAction),"aria-disabled":p.disabled??!1,onClick:m,...p,children:Zs("div",{className:f.listItemContent,children:[typeof o=="string"?He("p",{className:hn(f.listItemText,f.truncate,c==null?void 0:c.title),children:o}):o,a&&He(Bg,{tagName:"p",allowList:[],content:gn(a),className:hn(f.listItemDescription,c==null?void 0:c.description,e?f.lineClamp:f.truncate)})]})}),s&&d===i&&He("div",{className:f.listItemActions,children:He(fn,{suggestion:String(o),onFeedback:s})}),l&&Zs("div",{className:f.sources,children:[He("span",{className:f.sourcesTitle,children:"Sources"}),l.map(v=>v.url?He("a",{className:f.source,href:v.url,target:"_blank",title:v.url,rel:"noopener noreferrer",onClick:()=>r&&r(v),children:v.name},v.url):He("span",{className:f.source,children:v.name},v.name))]})]})}import{jsx as Ma,jsxs as Ys}from"react/jsx-runtime";function er({children:t,title:e,id:o,onDismiss:n}){let s=T(Qe),r=y("CommandPalette",Z),{page:i}=De();return i!==o?null:Ys("div",{className:r.page,id:`page_${o}`,tabIndex:-1,children:[n&&Ys("div",{className:r.pageNav,children:[Ys("button",{className:r.pageBackButton,type:"button",onClick:n,children:[Ma(sn,{}),s("back")]}),e&&Ma("h3",{className:r.pageTitle,children:e})]}),t]})}import{Fragment as Xg,useCallback as Qg,useEffect as Zg,useRef as Jg}from"react";var yn=()=>/Mac/i.test(navigator.platform);import{createAsyncThunk as jg,createSlice as qg}from"@reduxjs/toolkit";var Fg={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},E=Fg;import{createAsyncThunk as or,createSlice as Ug}from"@reduxjs/toolkit";function Kg(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,[Kg(o)]:A(t[o])}),{}):t}function tr(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function F(t){return Array.isArray(t)?t.map(F):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[tr(o)]:F(t[o])}),{}):t}var zg={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,fetchState:"idle"},eo=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)||""}},Yt=or("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))}),nr=or("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}),sr=or("info/getAgentSettings",async(t,e)=>{let{deepdeskAPI:o}=e.extra;return(await o.client.get("/apis/admin/session/me/",{version:null})).ui_config}),Na=t=>t.info.agentInfo,Oa=Ug({name:"info",initialState:zg,reducers:{setVisitorInfo(t,e){t.visitorInfo={...t.visitorInfo,...e.payload}}},extraReducers:t=>{t.addCase(Yt.pending,(e,o)=>{e.fetchState="loading",e.agentInfo={...e.agentInfo,...o.meta.arg}}).addCase(Yt.rejected,e=>{e.fetchState="error"}).addCase(Yt.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(nr.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(sr.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(L,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:Da}=Oa.actions,Ha=Oa.reducer;var vn={list:[],fetchState:"idle",isOpen:!1,page:"search"},Ba=t=>t.search.isOpen,Fa=t=>t.search.page,Ka=t=>t.search.list;function Ua(t,e=o=>o){return o=>o.search.list.filter(n=>n.type===t).map(e)}var Je=jg("search/getAll",async(t,e)=>{var i;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(i=n.conversation.current)==null?void 0:i.profileCode;if(!s)throw new Error("Profile should be provided in order to be able to search");let{results:r}=await o.search({profile:s,query:t.query,filters:{type:t.type},params:eo(n),tags:t.tags});return r.map(a=>({...a,source:`search-${a.type.toLowerCase()}`,searchTerm:t.query}))}),za=qg({name:"search",initialState:vn,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=vn.fetchState,t.list=vn.list}},extraReducers:t=>{t.addCase(Je.pending,e=>{e.fetchState="loading"}).addCase(Je.rejected,(e,o)=>{e.fetchState="error",E.error(o.error)}).addCase(Je.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload}).addCase(L,()=>vn)}}),{resetSearch:Sn,setIsOpen:W,setPage:G}=za.actions,ja=za.reducer;var Vg=/(https?:\/\/[^\s]+)/,_n=t=>t.split(" ").find(e=>Vg.test(e));import qa from"classnames";import{jsx as Gg,jsxs as $g}from"react/jsx-runtime";var Wg=({onClick:t,shortKeys:e,children:o,...n})=>{let s=y("CommandPalette",Z);return $g("button",{type:"button",...n,onClick:t,className:qa(s.actionButton,n.className),children:[o,e&&e.map(r=>Gg("span",{className:qa(s.actionShortcut,r===8629&&s.actionShortcutFixKerning),children:typeof r=="number"?String.fromCharCode(r):r},r))]})},bt=Wg;import{jsx as xn,jsxs as rr}from"react/jsx-runtime";var Yg=({children:t,primaryLabel:e,secondaryLabel:o,onPrimary:n,onSecondary:s,list:r})=>{let i=y("CommandPalette",Z),a=T(Qe),{selected:l,setSelected:c}=De(),p=r[l],d=p&&typeof p.text=="string"&&_n(p.text),u=Jg(null);function g(x){if(!u.current)return;let b=u.current.querySelectorAll(".command-palette-list-item"),_=0,R=0;x==="down"?(b.forEach(($,P)=>{P===l&&(_=P)}),R=_===b.length-1?0:_+1):x==="up"?(b.forEach(($,P)=>{P===l&&(_=P)}),R=_?_-1:b.length-1):c(0);let N=b[R];N&&typeof R=="number"&&(c(R),N.scrollIntoView&&N.scrollIntoView({behavior:"smooth",block:R?"center":"end"}))}function f(){if(!u.current)return;let x=u.current.querySelectorAll(".command-palette-list-item"),b=0;x.forEach((R,N)=>{N===l&&(b=N)});let _=x[b];_&&_.click()}let m=()=>{d&&window.open(d,"_blank")},v=()=>{p&&n(p,l)},w=()=>{!p.type||["IMAGE","command"].includes(p.type)||s&&s(p,l)},h=Qg(x=>{if(x.key==="Enter"&&x.altKey&&d){m();return}if(x.key==="Enter"&&x.shiftKey){w();return}if(x.key==="ArrowDown"){x.preventDefault(),x.stopPropagation(),g("down");return}if(x.key==="ArrowUp"){x.preventDefault(),x.stopPropagation(),g("up");return}x.key==="Enter"&&l!==-1&&(x.preventDefault(),x.stopPropagation(),f())},[l]);return Zg(()=>(window.addEventListener("keyup",h),()=>{window.removeEventListener("keyup",h)}),[h]),rr("div",{className:i.actions,children:[xn("div",{className:i.actionsWrapper,ref:u,children:t}),rr("div",{className:i.actionsBar,children:[d&&xn(bt,{onClick:m,shortKeys:[yn()?8997:"ALT",8629],children:a("visitUrl")}),p&&rr(Xg,{children:[s&&p.type&&!["command","image"].includes(p.type.toLowerCase())&&xn(bt,{onClick:w,shortKeys:[8679,8629],children:o}),xn(bt,{onClick:v,shortKeys:[8629],children:e})]})]})]})},Wa=Yg;import{forwardRef as tm}from"react";import{jsx as Ga,jsxs as em}from"react/jsx-runtime";var Ct=()=>em("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[Ga("path",{d:"M0 0h24v24H0z",fill:"none"}),Ga("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 wt,jsxs as ir}from"react/jsx-runtime";function om({onChange:t,onChangeType:e,placeholder:o,typePlaceholder:n,types:s,value:r,selectedType:i},a){let l=y("CommandPalette",Z);return ir("div",{className:l.search,children:[wt("div",{className:l.searchIcon,children:wt(Ct,{})}),ir("div",{className:l.searchInputWrapper,children:[wt("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&&wt("div",{className:l.selectWrapper,children:ir("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&&wt("option",{children:n}),s.map(c=>wt("option",{value:c.value,children:c.label},c.value))]})})]})]})}var $a=tm(om);import{jsx as Xa,jsxs as im}from"react/jsx-runtime";function Ye({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:u}){let[g,f]=sm(0),m=rm(null),v=()=>{s&&s(o),i(void 0),r(""),a(!1)},w=()=>{var h;if(n!==o&&s){s(o);return}if(l&&i){i(void 0),(h=m.current)==null||h.focus();return}if(u.length>0){r("");return}a(!1)};return nm(()=>{f(0)},[u,n]),Xa(yt,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:d,onBack:w,onClose:v,children:im(Ta,{selected:g,setSelected:f,isOpen:d,onChangeOpen:a,page:n,children:[n===o&&Xa($a,{ref:m,onChange:r,onChangeType:i,placeholder:t,value:u,selectedType:l,types:c,typePlaceholder:e}),p]})})}Ye.Page=er;Ye.List=Ws;Ye.Image=ba;Ye.ListItem=Js;Ye.ActionsBar=Wa;Ye.Button=bt;var k=Ye;import{jsx as be,jsxs as to}from"react/jsx-runtime";var cm=({suggestion:t,onUse:e,onDismiss:o,onTouched:n,onNext:s,onPrevious:r})=>{let i=t.text||t.url||t.message,a=y("EditSuggestionForm",zi),l=am(),c=T(Es),p=lm(f=>f.overlayInput.text);Qa(()=>{t&&(l(Q.actions.reset()),l(Q.actions.stageSuggestion({text:i,suggestion:t,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"})),l(Q.actions.commitSuggestion()))},[t]);let d=f=>{f.preventDefault(),u(p)},u=f=>{l(zo(f)),e(f)},g=f=>m=>{p!==i?window.confirm(c("warning"))&&f(m):f(m)};return Qa(()=>{n&&n(p!==i)},[n,t,p]),to("div",{className:a.root,children:[to("div",{className:a.content,children:[t.title&&be("h3",{className:a.title,children:t.title}),t.searchKeywords&&t.searchKeywords.length>0&&be(vs,{labels:t.searchKeywords}),be(xa,{onUse:u,value:gn(p)})]}),to("form",{className:a.actions,onSubmit:d,children:[to("div",{children:[be("button",{disabled:!r,className:a.pagination,type:"button",onClick:r&&g(r),children:be(sn,{})}),be("button",{disabled:!s,className:a.pagination,type:"button",onClick:s&&g(s),children:be(ea,{})})]}),to("div",{className:a.primaryButtons,children:[be(k.Button,{onClick:g(o),shortKeys:["esc"],children:c("dismiss")}),be(k.Button,{shortKeys:[8679,8629],type:"submit",children:c("add")})]})]})]})},bn=cm;import{createAction as um,createAsyncThunk as el,createSlice as gm}from"@reduxjs/toolkit";var pm=["{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}"],dm=new RegExp(pm.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function Za(t,e){let o=t.split(dm),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),u=0;do c=d?e.indexOf(d,c+1):-1,u+=1;while(c!==-1&&a.indexOf(e.slice(c))!==0);if(c===-1&&u>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 Ja(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var tl={suggestions:[],fetchState:"idle",isInitialRequest:null},Ya={default:tl},Cn=t=>e=>{var o;return((o=e.textSuggestions[t])==null?void 0:o.suggestions)??[]},ol=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")},Be=t=>t.textSuggestions,nl=t=>{let e=t.toLowerCase();return o=>{let n=o.text.toLowerCase();return n.startsWith(e)&&n.length>e.length}},wn=um("textSuggestions/refresh"),ce=el("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=ht(n);if(!s)throw new Error("No current conversation to fetch text suggestions");let l=await o.getTextSuggestions(s,eo(n),t);if(t==="default"){let p=i?l.filter(nl(a)):l;e.dispatch(ge(p.slice(0,r)))}return l}),oo=el("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,{...eo(n),input:t});if(!e.getState().input.text)throw new Error("Abort");return a&&(l=l.filter(nl(t))),i&&(l=l.map(p=>({...p,text:p.source!=="trie-with-typos"?Za(p.text,t):p.text}))),l=Ja(l,r),e.dispatch(ge(l)),l}),sl=gm({name:"textSuggestions",initialState:Ya,reducers:{setTextSuggestions:{reducer(t,e){let{contentType:o}=e.payload;t[o].fetchState="done",t[o].suggestions=e.payload.suggestions},prepare(t,e){return{payload:{contentType:t,suggestions:e}}}},setSuggestionState(t,e){return e.payload}},extraReducers:t=>{t.addCase(ce.pending,(e,o)=>{let n=o.meta.arg,s=e[n]||tl;return{...e,[n]:{...s,fetchState:"loading",isInitialRequest:s.isInitialRequest===null}}}).addCase(ce.rejected,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="error")}).addCase(ce.fulfilled,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="done",e[n].suggestions=o.payload)}).addCase(oo.pending,e=>{e.default.fetchState="loading"}).addCase(oo.rejected,e=>{e.default.fetchState="error"}).addCase(oo.fulfilled,(e,o)=>{e.default.fetchState="done",e.default.suggestions=o.payload}).addCase(L,()=>Ya)}}),{setTextSuggestions:rl,setSuggestionState:il}=sl.actions,al=sl.reducer;import{createSlice as mm}from"@reduxjs/toolkit";var ll={contentType:null,suggestion:null},cl=t=>t.activeSuggestion.suggestion,pl=t=>t.activeSuggestion.contentType,dl=mm({name:"activeSuggestion",initialState:ll,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(L,()=>ll)}}),{setActiveSuggestion:Ce,resetActiveSuggestion:ar}=dl.actions,ul=dl.reducer;var lr={};j(lr,{enUS:()=>fm,nlNL:()=>hm});var fm={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"}]},hm={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 ym}from"@reduxjs/toolkit";var vm={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1};var Tn=({ui:t})=>t.overlayCollapsed;var gl=ym({name:"ui",initialState:vm,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:no,setInputHasFocus:Tt,setOverlayCollapsed:Fe,setOpenOverlayWhenTyping:ml,setOverlayCollapsedUserOverwrite:fl}=gl.actions,hl=gl.reducer;import yl,{useContext as Sm}from"react";import{jsx as _m}from"react/jsx-runtime";var vl=yl.createContext(null),et=({broadcastEvents:t,children:e})=>{let o=yl.useMemo(()=>t,[]);return _m(vl.Provider,{value:o,children:e})},se=()=>{let t=Sm(vl);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createAsyncThunk as cr,createSlice as xm}from"@reduxjs/toolkit";var bm={isLoggedIn:!0,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1},oe=t=>t.auth.isLoggedIn,Sl=t=>t.auth.loginFetchState,_l=t=>t.auth.verifyFetchState,xl=t=>t.auth.showLoginOverlay,we=cr("auth/validate",async(t,e)=>e.extra.deepdeskAPI.isLoggedIn()),bl=cr("auth/requestLogin",async({email:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.requestLoginByEmail(t)}),so=cr("auth/verifyLoginToken",async({token:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.verifyLoginToken(t)}),Cl=xm({name:"auth",initialState:bm,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload}},extraReducers:t=>{t.addCase(we.pending,e=>{e.loginFetchState="loading"}),t.addCase(we.fulfilled,(e,{payload:o})=>{e.isLoggedIn=o,e.loginFetchState="done"}),t.addCase(we.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(so.pending,e=>{e.verifyFetchState="loading"}),t.addCase(so.rejected,e=>{e.verifyFetchState="error"}),t.addCase(so.fulfilled,(e,o)=>{o.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:Et,setShowLoginOverlay:wl}=Cl.actions,Tl=Cl.reducer;var pr="SetActiveSuggestion",kt="ShowLoginOverlay",ro="UserLoggedIn",Cm="UserLoggedOut",Te="ApplySuggestion",dr="ApplyImageSuggestion",wm="ShowCommandPalette",Tm=t=>({[pr]:e=>{t.dispatch(il(e.state)),t.dispatch(Ce({contentType:e.contentType,suggestion:e.suggestion}))},[wm]:e=>{t.dispatch(W(e.isOpen)),e.page&&t.dispatch(G(e.page))},[kt]:e=>{t.dispatch(wl(e))},[ro]:()=>{t.dispatch(we())},[Cm]:()=>{t.dispatch(we())},[dr]:e=>{t.dispatch(qo({suggestion:e.suggestion}))},[Te]:e=>{t.dispatch(ie({...e,eventMetrics:{inputType:"mouse"},replace:"selection"})),t.dispatch(_e())}}),El=Tm;import{jsx as kl}from"react/jsx-runtime";var Im=()=>{var f;let[t,e]=Em(!1),o=ur(cl),n=ur(pl),s=ur(Be),r=km(),i=se(),a=T(lr),l=()=>{o!==null&&t?window.confirm(a("warning"))&&c():c()},c=()=>{r(ar()),r(Tt(!0)),r(Q.actions.reset())},p=(m,v)=>{r(ar()),r(Tt(!0)),i.send(Te,{text:m,suggestion:{...v,source:`${v.source||"text_recommendation"}-preview`}})};if(o===null||n===null)return null;let d=(f=s[n])==null?void 0:f.suggestions.indexOf(o),u=d===0||d===null?void 0:()=>r(Ce({contentType:n,suggestion:s[n].suggestions[d-1]})),g=d===s[n].suggestions.length-1||d===null?void 0:()=>r(Ce({contentType:n,suggestion:s[n].suggestions[d+1]}));return kl(yt,{autoFocus:!0,isOpen:d!==null,onClose:l,onBack:l,contentAriaLabel:a("editContentLabel"),overlayAriaLabel:a("overlayLabel"),children:kl(bn,{onTouched:e,onDismiss:c,onUse:m=>p(m,o),suggestion:o,onNext:g,onPrevious:u})})},Il=Im;import{useSelector as Ml}from"react-redux";import mr from"classnames";import{useCallback as Ll,useEffect as Nm,useMemo as Om,useState as fr}from"react";import{useDispatch as Dm,useSelector as Hm}from"react-redux";import Rm from"classnames";var Rl={root:"_root_1ukx5_1"};import{jsx as Lm}from"react/jsx-runtime";var Pm=({className:t,value:e,...o})=>{let n=y("TextInput",Rl);return Lm("input",{className:Rm(t,n.root),type:"text",value:e,...o})},io=Pm;var gr={};j(gr,{enUS:()=>Am,nlNL:()=>Mm});var Am={back:[{type:0,value:"Back"}],promptTitle:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],verifyCodeTitle:[{type:0,value:"Paste the code from your email"}],verifyCodeBody:[{type:0,value:"Copy the code from the email you just received and paste it here."}],verifyCodeInputPlaceholder:[{type:0,value:"Paste link or code here"}],verifyCodeSubmitLabel:[{type:0,value:"Sign in"}],verifyCodeError:[{type:0,value:"Sign in failed. The code is probably no longer valid. Please "},{type:8,value:"login",children:[{type:0,value:"request new code"}]},{type:0,value:"."}],requestCodeTitle:[{type:0,value:"Have a code sent to your email"}],requestCodeBody:[{type:0,value:"Enter your email and request a code. If you are an existing "},{type:1,value:"productName"},{type:0,value:" user you will receive an email with a code. If you are a new user you will receive an email asking to request access to "},{type:1,value:"productName"},{type:0,value:" first."}],requestCodeInputPlaceholder:[{type:0,value:"Enter your email"}],requestCodeSubmitLabel:[{type:0,value:"Request code"}]},Mm={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 Pl={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 J,jsxs as En}from"react/jsx-runtime";var Bm=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch{return t}},Fm=({agentEmail:t,isOpen:e,origin:o="",onSuccess:n,onDismiss:s})=>{let r=T(gr),i=y("LoginTokenDialog",Pl),a=Hm(_l),l=Dm(),c=C("productName"),[p,d]=fr(t||""),[u,g]=fr(0),[f,m]=fr(""),v=Ll(async b=>{b.preventDefault(),l(bl({email:p})),g(1)},[o,p]),w=()=>{m(""),g(0)},h=Ll(async b=>{b.preventDefault();let _=Bm(b.target.elements.token.value);if(!_){m(r("verifyCodeError",{login:x}));return}l(so({token:_}))},[o]),x=Om(()=>b=>J("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:w,children:b},"back-button"),[]);return Nm(()=>{a==="error"&&m(r("verifyCodeError",{login:x})),a==="done"&&n()},[a]),J(yt,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:c}),overlayAriaLabel:r("promptTitle",{productName:c}),onClose:s,onBack:s,children:En("div",{className:i.root,children:[J("h1",{className:i.title,children:r("promptTitle",{productName:c})}),u===0&&En("form",{onSubmit:v,children:[J("h2",{className:i.subtitle,children:r("requestCodeTitle")}),J("p",{className:i.text,children:r("requestCodeBody",{productName:c})}),J(io,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:p,onChange:b=>d(b.target.value)}),J("div",{className:i.actions,children:J("button",{type:"submit",className:mr(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),u===1&&En("form",{onSubmit:h,children:[J("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),J("p",{className:i.text,children:r("verifyCodeBody")}),J(io,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),f&&J("div",{className:i.errorMessage,children:f}),En("div",{className:i.actions,children:[J("button",{type:"button",className:mr(i.button),onClick:w,children:r("back")}),J("button",{type:"submit",className:mr(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},Al=Fm;import{jsx as Um}from"react/jsx-runtime";var Km=()=>{let t=Ml(xl),e=Ml(Na),o=C("adminUrl"),n=se(),s=()=>n.send(kt,!1),r=()=>{n.send(kt,!1),n.send(ro)};return Um(Al,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:o,onDismiss:s,onSuccess:r})},Nl=Km;import Hf from"lodash.debounce";import{useCallback as An,useEffect as br,useState as uo}from"react";import{useDispatch as Bf,useSelector as Lt}from"react-redux";import{createAsyncThunk as zm,createSlice as jm}from"@reduxjs/toolkit";var qm={data:null,fetchState:"idle"},Ol=t=>t.contentTypes.data,ao=zm("contentTypes/getContentTypes",async(t,e)=>e.extra.deepdeskAPI.getContentTypes()),Vm=jm({name:"contentTypes",initialState:qm,reducers:{},extraReducers:t=>{t.addCase(ao.pending,e=>{e.fetchState="loading"}).addCase(ao.rejected,e=>{e.fetchState="error"}).addCase(ao.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),Dl=Vm.reducer;function lo(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 Wm}from"react";function Hl(t,e){Wm(()=>{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 Ul,useRef as Ym}from"react";import{useSelector as ef,useDispatch as tf}from"react-redux";import{createAsyncThunk as Gm,createSlice as $m}from"@reduxjs/toolkit";var Bl={data:null,fetchState:"idle"},kn=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},pe=Gm("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)}),Xm=t=>t.filter((e,o)=>o===t.findIndex(n=>n.text===e.text)),Qm=$m({name:"entities",initialState:Bl,reducers:{},extraReducers:t=>{t.addCase(pe.pending,e=>{e.fetchState="loading"}).addCase(pe.rejected,e=>{e.fetchState="error"}).addCase(pe.fulfilled,(e,o)=>{e.fetchState="done",e.data=Xm(e.data?[...e.data,...o.payload]:o.payload)}).addCase(L,()=>Bl)}}),Fl=Qm.reducer;var hr={};j(hr,{enUS:()=>Zm,nlNL:()=>Jm});var Zm={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},Jm={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var Kl={root:"_root_17kae_1",empty:"_empty_17kae_5"};import{jsx as In,jsxs as nf}from"react/jsx-runtime";var of=({onCopy:t,onUse:e})=>{let o=Ym(null),n=y("EntitiesList",Kl),s=T(hr),r=ef(kn),i=tf();return Ul(()=>{i(pe())},[]),Ul(()=>{o.current&&o.current.focus()},[o]),nf("div",{className:n.root,ref:o,tabIndex:-1,children:[r&&r.length>0&&In(k.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:In(k.List,{children:r.map((a,l)=>In(k.ListItem,{index:l,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities")}),r&&r.length===0&&In("p",{className:n.empty,children:s("noResults")})]})},zl=of;import{Fragment as pf,useEffect as Rn,useRef as df,useState as uf}from"react";import{useSelector as $l,useDispatch as gf}from"react-redux";import{createAsyncThunk as sf,createSlice as rf}from"@reduxjs/toolkit";var jl={data:null,fetchState:"idle"},ql=t=>t.summary.data,Vl=t=>t.summary.fetchState==="error",Ee=sf("summary/getSummary",async(t,e)=>{let o=e.getState().profile.data;if(!o)throw new Error("Profile is not defined");let{deepdeskAPI:n,dynamicThunkObject:s}=e.extra;if(!s.conversationQuery)return Promise.reject(new Error("setConversationQuery method is not defined"));let r=s.conversationQuery,i=await r();if(i.length===0)return Promise.reject(new Error("No messages are included"));let a=await n.getSummary(i,{promptInstruction:o.summarizerPromptInstruction,model:o.summarizerModel});return a?{summary:a}:Promise.reject(new Error("Summary is not provided"))}),af=rf({name:"summary",initialState:jl,reducers:{},extraReducers:t=>{t.addCase(Ee.pending,e=>{e.data=null,e.fetchState="loading"}).addCase(Ee.rejected,e=>{e.data=null,e.fetchState="error"}).addCase(Ee.fulfilled,(e,o)=>{e.fetchState="done",o.payload&&(e.data=o.payload.summary)}).addCase(L,()=>jl)}}),Wl=af.reducer;var yr={};j(yr,{enUS:()=>lf,nlNL:()=>cf});var lf={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."}]},cf={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 Gl={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 It,jsxs as ff}from"react/jsx-runtime";var mf=({onCopy:t})=>{let e=df(null),o=y("SummaryForm",Gl),[n,s]=uf(""),r=T(yr),i=$l(ql),a=$l(Vl),l=gf(),c=()=>{l(q({name:"summary copied to clipboard",data:{originalText:i,finalText:n},options:{includeConversationData:!0}})),t(n)},p=()=>{let d=document.getSelection();d&&l(q({name:"summary copied to clipboard",data:{originalText:i,finalText:d==null?void 0:d.toString()},options:{includeConversationData:!0}}))};return Rn(()=>{l(Ee())},[]),Rn(()=>{s(i||"")},[i]),Rn(()=>{e.current&&i&&e.current.focus()},[e,i]),Rn(()=>{let d=u=>{u.key==="Enter"&&u.shiftKey&&c()};return document.addEventListener("keydown",d),()=>{document.removeEventListener("keydown",d)}},[n]),It("div",{className:o.root,tabIndex:-1,children:a?It("p",{className:o.error,children:r("error")}):ff(pf,{children:[It("div",{className:o.main,children:It("textarea",{placeholder:i?void 0:r("loading"),disabled:!i,className:o.textInput,ref:e,value:n,onCopy:p,onChange:d=>s(d.target.value)})}),It("div",{className:o.actions,children:It(k.Button,{shortKeys:[8679,8629],onClick:c,children:r("copy")})})]})})},Xl=mf;var co={};j(co,{enUS:()=>hf,nlNL:()=>yf});var hf={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?"}]},yf={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 Tf,{useEffect as _r,useRef as Ef}from"react";import{useDispatch as kf,useSelector as oc}from"react-redux";var vr={};j(vr,{enUS:()=>vf,nlNL:()=>Sf});var vf={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"}]},Sf={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 Ql={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 _f,createAsyncThunk as xf,createSlice as bf}from"@reduxjs/toolkit";var Sr={data:[],fetchState:"idle"},Zl=t=>{var e;return(e=t.answer)==null?void 0:e.data},Jl=t=>t.answer.fetchState,Pt=_f("answer/resetKnowledgeSearch"),Rt=xf("answer/getAnswer",async(t,e)=>{var i,a;let{deepdeskAPI:o}=e.extra,n=e.getState().answer.data,s=(a=(i=e.getState().profile)==null?void 0:i.data)==null?void 0:a.knowledgeAssistant;if(!s)throw new Error("KnowledgeAssistant is not defined");let r=await o.knowledgeAssist({promptInstruction:t.promptInstruction,question:t.question},n,s);return{question:t.question,answer:r}}),Cf=bf({name:"answer",initialState:Sr,reducers:{},extraReducers:t=>{t.addCase(Rt.pending,e=>{e.fetchState="loading"}).addCase(Rt.rejected,e=>{e.fetchState="error"}).addCase(Rt.fulfilled,(e,o)=>{e.fetchState="done",e.data=[...e.data,o.payload]}).addCase(L,()=>Sr).addCase(Pt,()=>Sr)}}),Yl=Cf.reducer;import{jsx as ec,jsxs as wf}from"react/jsx-runtime";var tc=()=>wf("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 512 512","aria-labelledby":"paperPlaneTitle",children:[ec("title",{id:"paperPlaneTitle",children:"PaperPlane"}),ec("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 ke,jsxs as xr}from"react/jsx-runtime";var If=({onUse:t,onResetQuestion:e,question:o,promptInstruction:n})=>{let[s,r]=Tf.useState(""),{setSelected:i}=De(),a=Ef(null),l=y("EntitiesList",Ql),c=T(vr),p=kf(),d=oc(Zl),u=oc(Jl),g=async m=>{m.preventDefault(),m.stopPropagation(),s!==""&&p(Rt({question:s,promptInstruction:n}))},f=(m,v)=>{p(q({name:"knowledge assist source viewed",data:{question:v,sourceViewed:m.url||m.name},options:{includeConversationData:!0}}))};return _r(()=>{var m;o&&u==="idle"?p(Rt({question:o,promptInstruction:n})):(m=a.current)==null||m.focus()},[a,u]),_r(()=>{u==="done"&&(p(q({name:"knowledge assist question answered",data:{question:s||o,sources:d[d.length-1].answer.sources,answer:d[d.length-1].answer.answer,isFollowUpQuestion:d.length>1},options:{includeConversationData:!0}})),i(d.length-1),r(""))},[u,d]),_r(()=>{a.current&&a.current.scrollIntoView({behavior:"smooth"})},[a,d]),xr("div",{className:l.root,children:[d.length>0&&ke("div",{className:l.alignRight,children:ke(k.Button,{onClick:e,children:c("reset")})}),xr(k.ActionsBar,{list:d.map(({answer:m})=>({text:m.answer,type:"answer"})),primaryLabel:c("use"),onPrimary:m=>t(m.text),children:[d.map(({question:m,answer:v},w)=>ke(k.List,{children:ke(k.ListItem,{"data-testid":"knowledge-search-answer",index:w,description:v.answer,closeOnSelect:!0,onClick:()=>t(v.answer),onSourceClick:h=>f(h,m),sources:v.sources,styles:{title:l.question,description:l.answer},children:m})},`${v.answer}_${w}`)),u==="loading"&&ke("p",{className:l.status,children:c("loading")}),u==="error"&&ke("p",{className:l.status,children:c("error")}),xr("form",{className:l.form,onSubmit:g,children:[ke("input",{ref:a,placeholder:c("anotherQuestion"),className:l.input,type:"text",value:s,onFocus:()=>{i(-1)},onChange:m=>{i(-1),r(m.target.value)}}),ke("button",{type:"submit",className:l.submit,children:ke(tc,{})})]})]})]})},nc=If;import{createAsyncThunk as Rf,createSlice as Pf}from"@reduxjs/toolkit";var Lf={data:null,fetchState:"idle"},Ke=t=>t.profile.data,Pn=t=>t.profile.data?t.profile.data.uiConfig.widget.types.filter(e=>e.isActive):[],po=Rf("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)}),Af=Pf({name:"profile",initialState:Lf,reducers:{},extraReducers:t=>{t.addCase(po.pending,e=>{e.fetchState="loading"}).addCase(po.rejected,e=>{e.fetchState="error"}).addCase(po.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),sc=Af.reducer;import{useEffect as Mf}from"react";import{useDispatch as Nf}from"react-redux";import{useSelector as rc}from"react-redux";import{jsx as Ln,jsxs as Df}from"react/jsx-runtime";var Of=({commands:t,onClick:e,onEdit:o})=>{var p,d;let n=Nf(),s=T(co),r=rc(Ke),i=rc(Be),a=((d=(p=r==null?void 0:r.uiConfig)==null?void 0:p.search)==null?void 0:d.initialTypes)||[],l=0,c=a.map(({type:u})=>{var g;return(g=i[u])==null?void 0:g.suggestions.map(f=>({text:f.text||f.url||f.message,type:u}))}).flat(1);return Mf(()=>{a.forEach(({type:u})=>{(!i[u]||i[u].suggestions.length===0)&&n(ce(u))})},[]),Df(k.ActionsBar,{list:[...t.map(u=>({text:u.label,type:"command"})),...c],primaryLabel:s("use"),secondaryLabel:s("preview"),onPrimary:({text:u},g)=>e(u,c[g]),onSecondary:(u,g)=>{o(c[g],i[c[g].type].suggestions)},children:[t.length>0&&Ln(k.List,{heading:s("commands"),children:t.map((u,g)=>Ln(k.ListItem,{index:g,closeOnSelect:!1,onClick:u.onClick,children:u.label},u.label))}),a.map(({type:u,title:g})=>{var f;return Ln(k.List,{heading:g,orientation:"vertical",children:(f=i[u])==null?void 0:f.suggestions.map(m=>(l++,Ln(k.ListItem,{index:l+t.length-1,closeOnSelect:!1,description:m.text,onClick:()=>e(m.text,m),"data-testid":"search-overlay-suggestion",children:m.title},`${m.id}-${m.text}`)))},u)})]})},ic=Of;import{jsx as Y,jsxs as Cr}from"react/jsx-runtime";var Ff=200,Kf=5,Uf=4,zf=t=>t.reduce((e,o)=>[...e,...o.list.map(n=>({...n,type:o.value}))],[]),ac=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),jf=()=>{let t=Bf(),e=se(),o=T(co),[n,s]=uo(!1),[r,i]=uo(""),a=Lt(Fa),l=Lt(Ke),[c,p]=uo(null),[d,u]=uo([]),[g,f]=uo(),m=Lt(oe),v=C("showSearch"),w=C("showEntitiesCommand"),h=C("showSummaryCommand"),x=C("showKnowledgeSearch"),b=C("showImageSearch"),_=C("searchTriggerKey"),R=Lt(Ol),N=Lt(Ka),$=Lt(Ba),P=S=>cs(N.filter(O=>O.type===S.toUpperCase()),S),X=[{value:"PERSONAL",label:o("personalSuggestions"),list:P("PERSONAL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"URL",label:o("urlSuggestions"),list:P("URL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"STICKYMESSAGE",label:o("pinnedMessages"),list:P("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"IMAGE",label:o("imageSuggestions"),lineClamp:!1,list:P("IMAGE"),listOrientation:"horizontal",shouldShow:b}].filter(S=>S.shouldShow),I=[{label:o("entitiesClipboard"),onClick:()=>t(G("entities")),shouldShow:w&&ac(o("entitiesClipboard"),r)},{label:o("summaryClipboard"),onClick:()=>t(G("summary")),shouldShow:h&&ac(o("summaryClipboard"),r)},{label:r?`${o("knowledgeAssist")}: ${r}`:o("knowledgeAssist"),onClick:()=>t(G("knowledgeAssist")),shouldShow:x}].filter(S=>S.shouldShow),B=(R==null?void 0:R.map(S=>({value:S.code.toUpperCase(),label:`${S.name}s`,list:P(S.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[],at=An(Hf((S,O)=>{t(Je({query:S,type:O,tags:["search-overlay"]}))},Ff),[]),Kt=zf([...B,...X]),Ut=An((S,O)=>{t(G("edit")),p({...S,searchTerm:void 0}),u(O)},[t,c,B]),Co=An((S,O)=>{switch(O.type){case"IMAGE":e.send(dr,{suggestion:O});break;default:e.send(Te,{text:S,suggestion:O})}t(W(!1))},[t]),gd=S=>{lo(S.text),t(q({name:"entity copied",data:{entity:S,type:"copy"}})),t(W(!1))},md=An(S=>{t(q({name:"suggestion feedback",data:{text:S.text,source:"search",context:r},options:{includeConversationData:!0}}))},[r]),fd=S=>{e.send(Te,{text:S,suggestion:{source:"knowledge-assist",text:S}}),t(q({name:"answer used",data:{originalText:S},options:{includeConversationData:!0}})),i(""),t(G("search")),t(Pt()),t(W(!1))},hd=S=>{lo(S),t(W(!1))},yd=S=>{e.send(Te,{text:S.text,suggestion:{source:"entity",text:S.text}}),t(W(!1))},vd=c===null||d.indexOf(c)-1<0?void 0:()=>p(d[d.indexOf(c)-1]),Sd=c===null||d.indexOf(c)===d.length-1?void 0:()=>p(d[d.indexOf(c)+1]);function cs(S,O){return S.slice(0,g?10:O.toLowerCase()==="image"?Uf:Kf)}function li(S,O,de){return O.reduce((wo,To)=>de&&g===de?To.length+wo:cs(To,de).length+wo,S)}function lt(S){return O=>{n?window.confirm(o("warning"))&&(S(O),s(!1)):S(O)}}return br(()=>{r?at(r,g):t(Sn())},[r,g]),br(()=>{a==="search"&&t(Pt())},[a]),br(()=>{m&&t(ao())},[m]),Hl(_,()=>t(W(!0))),!v||!l?null:Cr(k,{placeholder:o("searchPlaceholder"),typePlaceholder:o("typePlaceholder"),onChangeSearch:i,onChangeOpen:lt(S=>t(W(S))),onChangeType:S=>f(S),onChangePage:lt(S=>t(G(S))),selectedType:g,search:r,page:a,isOpen:$,types:[...B,...X],children:[Cr(k.Page,{id:"search",children:[r.length===0&&Y(ic,{commands:I,onClick:Co,onEdit:Ut}),r.length>0&&Cr(k.ActionsBar,{list:[...I.map(S=>({text:S.label,type:"command"})),...Kt.map(S=>({text:S.text||S.url||S.message,type:S.type}))],primaryLabel:o("use"),secondaryLabel:o("preview"),onPrimary:({text:S},O)=>Co(S,Kt[O]),onSecondary:(S,O)=>{let de=Kt[O-I.length];!de||!de.type||Ut(de,P(de.type))},children:[I.length>0&&Y(k.List,{heading:o("commands"),children:I.map((S,O)=>Y(k.ListItem,{index:li(O,[],"commands"),closeOnSelect:!1,onClick:S.onClick,children:S.label},S.label))}),[...B,...X].map(({value:S,label:O,list:de,lineClamp:wo,listOrientation:To},_d)=>Y(k.List,{heading:O,orientation:To==="horizontal"?"horizontal":"vertical",children:cs(de,S).map((ne,xd)=>Y(k.ListItem,{index:li(I.length+xd,[...B,...X].slice(0,_d).map(({list:bd})=>bd),S),closeOnSelect:!1,lineClamp:wo,onClick:()=>Co(ne.text,ne),description:S!=="IMAGE"?ne.title&&ne.text:void 0,onFeedback:S!=="IMAGE"?()=>md(ne):void 0,children:S==="IMAGE"?Y(k.Image,{title:ne.title||ne.text,src:ne.image}):ne.title||ne.text},`${ne.id}-${ne.text}`))},S))]})]}),Y(k.Page,{id:"edit",onDismiss:lt(()=>{t(G("search")),p(null)}),children:c&&Y(bn,{suggestion:c,onTouched:s,onDismiss:()=>{s(!1),t(G("search")),p(null),u([])},onNext:Sd,onPrevious:vd,onUse:S=>{t(G("search")),Co(S,{...c,source:`${c.source||"text_recommendation"}-preview`}),t(W(!1)),u([]),p(null)}})}),Y(k.Page,{id:"entities",title:o("entitiesTitle"),onDismiss:lt(()=>{t(G("search"))}),children:Y(zl,{onUse:yd,onCopy:gd})}),Y(k.Page,{id:"summary",title:o("summaryTitle"),onDismiss:lt(()=>{t(G("search"))}),children:Y(Xl,{onCopy:hd})}),Y(k.Page,{id:"knowledgeAssist",title:o("knowledgeAssist"),onDismiss:lt(()=>{t(Pt()),t(G("search"))}),children:Y(nc,{promptInstruction:l.knowledgeAssistPromptInstruction,question:r,onUse:fd,onResetQuestion:()=>{t(Pt()),i("")}})})]})},lc=jf;import{jsx as wr,jsxs as Wf}from"react/jsx-runtime";var Vf=()=>{let t=C("showSearch"),e=C("isEmbedded");return Wf(qf,{children:[t&&wr(lc,{}),wr(Il,{}),e&&wr(Nl,{})]})},cc=Vf;import{useEffect as ch,useRef as ph}from"react";import{connect as dh,useDispatch as uh,useSelector as On}from"react-redux";function At(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 ih,useMemo as ah}from"react";import{Interweave as Xf}from"interweave";import{useEffect as Qf,useMemo as Zf,useRef as Jf}from"react";import{useDispatch as Yf,useSelector as eh}from"react-redux";import{useEffect as Gf}from"react";function pc(t,e,o){Gf(()=>{let n=t.current;return n?(n.addEventListener(e,o),()=>{n.removeEventListener(e,o)}):()=>{}},[t,e,o])}var dc={root:"_root_4u430_1",actions:"_actions_4u430_8",badge:"_badge_4u430_15",formattedText:"_formattedText_4u430_19"};import{jsx as Mn,jsxs as rh}from"react/jsx-runtime";var th=["search","personal-collection-search","search-autocomplete"];function oh(t,e,o,n={}){let s="";return th.includes(e)?s=ya(Us(t,o,{stripAgentPart:!0}),n.searchKeywords??[o]):s=Us(t,o,n),n.placeholders===!0&&(s=va(s)),s}var nh=()=>{},sh=({index:t,selected:e,suggestion:o,onFeedback:n})=>{let s=C("inlineSuggestions"),r=eh(ht),i=Yf(),a=y("TextSuggestion",dc),l=Jf(null);Qf(()=>{let p=setTimeout(()=>{i(Pi({text:o.text,suggestion:o}))},500);return()=>{clearTimeout(p)}},[o]),pc(l,"click",()=>{i(Me(t)),i(ie({suggestion:o,text:o.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let c=Zf(()=>oh(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:rh("div",{className:a.root,onMouseEnter:()=>i(Me(t)),children:[Mn(D,{ref:l,as:"button","data-testid":"suggestions-overlay-item",selected:e,onClick:nh,children:Mn(Xf,{containerTagName:"div",noWrap:!1,tagName:"span",className:a.formattedText,content:c})}),e&&n&&Mn("div",{className:a.actions,children:Mn(fn,{onFeedback:()=>n(o),suggestion:o.text})})]})},uc=sh;import{jsx as gc}from"react/jsx-runtime";var lh=({onFeedback:t,suggestions:e,selectedIndex:o,reverse:n})=>{let s=ah(()=>{let r=e.map((i,a)=>gc(uc,{index:a,selected:a===o,suggestion:i,onFeedback:t},`${i.text}-${i.source}`));return n?r.reverse():r},[e,o,n]);return gc(ih,{children:s})},Nn=lh;var mc={root:"_root_otdbu_1",paper:"_paper_otdbu_11"};import{jsx as Dn}from"react/jsx-runtime";var gh=({textSuggestions:t,selectedIndex:e})=>{let o=ph(null),n=y("InlineSuggestionsOverlay",mc),s=On(At),r=uh(),i=On(oe),a=On(ft),l=On(Tn),c=C("showTextSuggestions");return St(()=>{r(Fe({collapse:!0,skipWhenInputFocus:!0}))}),ch(()=>{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:Dn("div",{className:n.root,"data-variant":"inline",children:Dn("div",{ref:o,className:n.paper,children:Dn(re,{children:Dn(Nn,{suggestions:t,selectedIndex:e})})})})},mh=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),fc=dh(mh)(gh);import Rr from"classnames";import{useEffect as Eh,useRef as kh,useState as Ih}from"react";import{connect as Rh,useDispatch as Ph,useSelector as go}from"react-redux";import{useState as fh}from"react";function hc(t,e){let[o,n]=fh(()=>{if(typeof window>"u")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return E.error(r),e}});return[o,r=>{try{let i=r instanceof Function?r(o):r;n(i),typeof window<"u"&&window.localStorage.setItem(t,JSON.stringify(i))}catch(i){E.error(i)}}]}import vh from"classnames";import{Fragment as Sh,useCallback as Er,useMemo as vc}from"react";var Tr={};j(Tr,{enUS:()=>hh,nlNL:()=>yh});var hh={loginPlease:[{type:8,value:"login",children:[{type:0,value:"Sign in"}]},{type:0,value:" to enable "},{type:1,value:"productName"},{type:0,value:"."}],snooze:[{type:0,value:"Snooze for "},{type:8,value:"min",children:[{type:0,value:"10 minutes"}]},{type:0,value:", "},{type:8,value:"hour",children:[{type:0,value:"1 hour"}]},{type:0,value:" or "},{type:8,value:"day",children:[{type:0,value:"1 day"}]}]},yh={loginPlease:[{type:8,value:"login",children:[{type:0,value:"Log in"}]},{type:0,value:" bij "},{type:1,value:"productName"},{type:0,value:"."}],snooze:[{type:0,value:"Snooze voor "},{type:8,value:"min",children:[{type:0,value:"10 minuten"}]},{type:0,value:", "},{type:8,value:"hour",children:[{type:0,value:"1 uur"}]},{type:0,value:" of "},{type:8,value:"day",children:[{type:0,value:"1 dag"}]}]};var yc={root:"_root_1vfca_1",anchor:"_anchor_1vfca_6",anchorButton:"_anchorButton_1vfca_11"};import{jsx as Hn,jsxs as Sc}from"react/jsx-runtime";var kr=(t,e,o)=>n=>Hn("button",{className:t.anchorButton,type:"button",value:e,onClick:o,children:n},e),_h=({className:t,loginUrl:e,isEmbedded:o,onSnooze:n,onLogIn:s})=>{let r=T(Tr),i=se(),a=y("Login",yc),l=C("productName"),c=Er(v=>{v.preventDefault(),n&&n(parseInt(v.target.value,10))},[]),p=Er(v=>{v.preventDefault(),i.send(kt,!0)},[e]),d=vc(()=>v=>Hn("a",{onClick:h=>{h.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:v},"login"),[e]),u=Er(v=>Hn("button",{type:"button",className:a.anchorButton,onClick:p,children:v},"prompt"),[p]),{min:g,hour:f,day:m}=vc(()=>({min:kr(a,60*10,c),hour:kr(a,60*60,c),day:kr(a,60*60*12,c)}),[]);return Sc("div",{className:vh(t,a.root),children:[r("loginPlease",{login:o?u:d,productName:l}),n&&Sc(Sh,{children:[Hn("br",{}),r("snooze",{min:g,hour:f,day:m})]})]})},Bn=_h;import{useDispatch as xh}from"react-redux";var _c={root:"_root_1g8fi_1",text:"_text_1g8fi_19"};import{jsx as xc,jsxs as Ch}from"react/jsx-runtime";var bh=({title:t})=>{let e=y("SearchTrigger",_c),o=xh();return Ch("button",{type:"button",className:e.root,onClick:()=>o(W(!0)),children:[xc(Ct,{}),xc("span",{className:e.text,children:t})]})},bc=bh;var Ir={};j(Ir,{enUS:()=>wh,nlNL:()=>Th});var wh={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"}]},Th={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 Cc={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 z,jsxs as mo}from"react/jsx-runtime";var Lh=({textSuggestions:t,selectedIndex:e,onLogIn:o})=>{let n=y("SuggestionsOverlay",Cc),s=T(Ir),r=go(At),i=Ti(),a=Ph(),l=kh(null),c=C("searchTriggerKey"),p=C("productName"),d=go(Tn),u=go(oe),g=go(ft),[f,m]=Ih(null),v=C("showSearch"),w=C("showTextSuggestions"),h=C("adminUrl"),x=C("isEmbedded"),[b,_]=hc("dd-snooze-until-ms",0),R=d||b>Date.now(),N=go(B=>B.input.text),$=t.filter(B=>B.source!=="gpt").length,P=()=>{R&&_(0),a(fl(!R))},X=B=>{a(q({name:"suggestion feedback",data:{text:B.text,source:"overlay",context:N},options:{includeConversationData:!0}}))},I=B=>{let at=Date.now()+B*1e3;_(at),E.info(`Snooze until: ${new Date(at)}`),a(Fe({collapse:!0}))};return Eh(()=>{$===0&&m(null)},[t,$]),St(()=>{a(Fe({collapse:!0,skipWhenInputFocus:!0}))}),u===null||g===!1?null:u===!1?mo("div",{ref:l,className:Rr(n.root,{[n.isCollapsed]:R}),children:[!R&&mo("div",{className:n.triggers,children:[z("div",{style:{flex:1}}),z("div",{className:n.triggersRight,children:z(ut,{className:n.toggleButton,title:s("collapse"),onClick:P,isCollapsed:!1})})]}),z("div",{className:n.toggleButtonWrapper,children:z(ut,{className:n.toggleButton,title:s("open",{productName:p}),onClick:P,isCollapsed:!0})}),z("div",{className:n.collapsible,children:z(Bn,{loginUrl:h,isEmbedded:x,onLogIn:o,onSnooze:I})})]}):!i||!r?null:mo("div",{ref:l,className:Rr(n.root,{[n.isCollapsed]:R}),children:[!R&&mo("div",{className:n.triggers,children:[z("div",{style:{flex:1},children:v&&z("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>m(s(yn()?"searchHintMac":"searchHintWindows",{searchTriggerKey:c.toUpperCase()})),onMouseLeave:()=>m(null),children:z(bc,{title:s("search")})})}),mo("div",{className:n.triggersRight,onFocus:()=>{},children:[z("div",{className:Rr(!f&&n.hintsHidden,n.hints),children:f}),z(ut,{className:n.toggleButton,title:s("collapse"),onClick:P,isCollapsed:!1})]})]}),z("div",{className:n.toggleButtonWrapper,children:z(ut,{className:n.toggleButton,title:s("open",{productName:p}),onClick:P,isCollapsed:!0})}),$>0&&w&&z("div",{className:n.collapsible,onFocus:()=>{},children:z(re,{children:z(Nn,{onFeedback:X,suggestions:t,selectedIndex:e,reverse:!0})})})]})},Ah=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),wc=Rh(Ah)(Lh);import{Provider as Mh}from"react-redux";import{jsx as Fn}from"react/jsx-runtime";var Nh=({children:t})=>{let o=C("locale").replace("-","");return Fn(Ns.Provider,{value:o,children:t})},Oh=({store:t,customStyles:e={},children:o})=>Fn(Mh,{store:t,children:Fn(Nh,{children:Fn(zt.Provider,{value:e,children:o})})}),tt=Oh;import Kr from"classnames";import{Interweave as by}from"interweave";import{useCallback as Cy,useEffect as wy,useMemo as qc,useRef as Ty}from"react";import{connect as Ey}from"react-redux";import{cloneElement as Dh}from"react";var Hh=["div","span","mark","strong","b","i","u","em"];function Pr(t,e,o=0){var r;let n=t[t.length-1],s=typeof n=="object"&&n!==null?(r=n.props)==null?void 0:r.tagName:void 0;if(s==="br")return t.pop(),[...t,...e,n];if(Hh.includes(s)){let i=Array.isArray(n.props.children)?n.props.children:[n.props.children];return[...t.slice(0,t.length-1),Dh(n,{children:Pr(i,e,o+1)})]}return[...t,...e]}function Ue(t){return t.tagName.toLowerCase()==="textarea"}var Tc={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 ey from"classnames";import{Matcher as ty}from"interweave";import{useEffect as oy,useMemo as ny}from"react";function Ec(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function Kn(t){return e=>{t.forEach(o=>{typeof o=="function"?o(e):o!=null&&(o.current=e)})}}function kc(t){return t!=null}import Ac from"classnames";import{createRef as Gh,useCallback as Ar,useMemo as $h,useRef as Xh,useState as Qh}from"react";import{useState as Bh,useLayoutEffect as Fh}from"react";var Kh=["bottom","height","left","right","top","width"],Uh=(t={},e={})=>Kh.some(o=>t[o]!==e[o]),Ie=new Map,Ic,Rc=()=>{let t=[],e=[];Ie.forEach((o,n)=>{if(n instanceof Element&&!n.isConnected){e.push(n);return}let s=n.getBoundingClientRect();Uh(s,o.rect)&&(o.rect=s,t.push(o))}),e.forEach(o=>{Ie.delete(o)}),t.forEach(o=>{o.callbacks.forEach(n=>n(o.rect))}),Ic=window.requestAnimationFrame(Rc)};function zh(t,e){return{observe(){let o=Ie.size===0;if(Ie.has(t)){let n=Ie.get(t);n.callbacks.push(e),n.rect&&e(n.rect)}else Ie.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});o&&Rc()},unobserve(){let o=Ie.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||Ie.delete(t),Ie.size||cancelAnimationFrame(Ic)}}}}function Lr(t){let[e,o]=Bh(null);return Fh(()=>{if(!t.current)return;let n=zh(t.current,s=>{o(s)});return n.observe(),()=>{n.unobserve()}},[t]),e}import{useContext as jh,useLayoutEffect as qh,useState as Vh}from"react";import{createPortal as Wh}from"react-dom";var Pc={root:"_root_1jq08_1"};var Lc=({children:t})=>{let[e,o]=Vh(null),n=jh(zt);return qh(()=>{let s=document.createElement("div");return Xe(s),s.classList.add(Pc.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?Wh(t,e):null};var he={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 Mr}from"react/jsx-runtime";var Un=(t=!1)=>{let[e,o]=Qh(t),n=Ar(()=>o(!0),[]),s=Ar(()=>o(!1),[]),r=Ar(()=>o(a=>!a),[]),i=Xh(null);return{opened:e,open:n,close:s,toggle:r,triggerRef:i}};function Nr(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 zn=({className:t,triggerRef:e,boundaryRef:o=Gh(),position:n="above",align:s="center",children:r,toStyle:i=Nr,...a})=>{let l=Lr(e),c=Lr(o),p=$h(()=>i(l,c,0),[l,c]);return Mr(Lc,{children:Mr("div",{className:Ac(he.ref,{[he.positionAbove]:n==="above",[he.positionBelow]:n==="below",[he.positionLeft]:n==="left",[he.positionRight]:n==="right",[he.alignStart]:s==="start",[he.alignCenter]:s==="center",[he.alignEnd]:s==="end"}),style:p,...a,role:"dialog",children:Mr("div",{className:Ac(t,he.root),children:r})})})};import Zh from"classnames";import{forwardRef as Jh,useRef as Yh}from"react";import{jsx as Mc}from"react/jsx-runtime";var jn=Jh(({className:t,children:e,...o},n)=>{let s=Yh(null),r=y("TabCompletion",xe);return Mc("div",{ref:Kn([s,n]),className:Zh(t,r.popoverContentContainer),...o,children:Mc("div",{className:r.popoverContent,children:e})})});import{jsx as fo,jsxs as iy}from"react/jsx-runtime";var sy=t=>e=>{let o=Nr(e);return"top"in o&&(o.width=t.width-(e.left-t.left)-10),o},ry=({inputElement:t,boundaryRef:e,inputStyle:o,children:n,suggestion:s})=>{let r=y("TabCompletion",xe),i=Un(),a=ny(()=>sy(t.getBoundingClientRect()),[t]),[l,c]=rn(t);return oy(()=>{c?i.open():i.close()},[c]),iy("span",{children:[fo("mark",{ref:Kn([l,i.triggerRef]),className:ey(r.matchKeyword,{[r.hover]:c}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:n}),i.opened&&fo(zn,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:fo(jn,{style:o,children:fo("div",{className:r.hintText,children:s})})})]})},qn=class extends ty{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${Ec(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(kc);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 fo(ry,{inputElement:o.inputElement,suggestion:o.suggestion,inputStyle:o.inputStyle,boundaryRef:o.boundaryRef,children:e},`keyword_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import Fr from"classnames";import{Matcher as fy}from"interweave";import{createRef as hy,forwardRef as yy,useCallback as vy,useEffect as Uc,useRef as zc,useState as jc}from"react";import{useDispatch as Sy}from"react-redux";import{jsx as Nc}from"react/jsx-runtime";var Oc=()=>Nc("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:Nc("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 ay,useEffect as Hc,useState as Bc}from"react";import{useDispatch as ly,useSelector as Fc}from"react-redux";import cy from"lodash.debounce";var Dc={root:"_root_1muu8_1",content:"_content_1muu8_7"};function Vn(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 Or(t){return t.replace("https://www.","").replace("https://","")}import{jsx as ot,jsxs as Dr}from"react/jsx-runtime";var py=3,dy=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),uy=({onSelectLink:t,onDismiss:e,placeholder:o,visitUrlText:n,linkCount:s=py})=>{let r=y("LinkSearch",Dc),[i,a]=Bc(""),l=ly(),c=Fc(Cn("url")),p=Fc(Ua("URL",dy)),[d,u]=Bc(p.length-1),g=C("fallbackImage"),f=h=>{let x=h.target;a(x.value)},m=(h,x)=>{h.stopPropagation(),h.preventDefault(),window.open(x,"_blank")},v=h=>{var _;let x=d-1<0?p.length-1:d-1,b=d+1===p.length?0:d+1;h.code==="Escape"&&(a(""),e()),h.code==="ArrowUp"&&u(x),h.code==="ArrowDown"&&u(b),h.code==="Enter"&&t(((_=p[d])==null?void 0:_.text)||i)},w=ay(cy(h=>{l(Je({query:h,type:"URL",tags:["link-search"]}))},300),[]);return Hc(()=>{i&&w(i)},[i]),Hc(()=>()=>{l(Sn())},[]),Dr("div",{className:r.root,children:[ot(re,{withDivider:!0,children:(i?p:c).slice(0,s).map((h,x)=>ot(D,{selected:d===x,onClick:()=>t(h.text),"data-testid":"linksearch-suggestion",children:Dr(H,{children:[ot(H.Image,{src:Vn(h,"small",g||void 0),title:h.title||h.text}),Dr(H.Content,{className:r.content,cropText:!0,children:[ot(H.Title,{children:h.title||Or(h.text)}),h.title&&Or(h.text)]}),ot(D.Actions,{children:ot(D.ActionButton,{label:n,onClick:b=>m(b,h.text)})})]})},h.text))}),ot(io,{value:i,onChange:f,autoFocus:!0,placeholder:o,onKeyUp:v})]})},Kc=uy;var Hr={};j(Hr,{enUS:()=>gy,nlNL:()=>my});var gy={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}]},my={insertLink:[{type:0,value:"Voeg link toe"}],linkInputPlaceholder:[{type:0,value:"Zoek, typ of plak link"}],visitUrl:[{type:0,value:"Bekijk"}]};import{jsx as ye,jsxs as Br}from"react/jsx-runtime";var _y=yy((t,e)=>{let o=y("TabCompletion",xe);return ye("mark",{ref:e,className:Fr(o.matchSelection)},"selection-start")}),xy=({startRef:t,boundaryRef:e,inputStyle:o,inputElement:n,children:s})=>{let r=T(Hr),i=y("TabCompletion",xe),a=zc(null),l=zc(null),[c,p]=jc(null),d=Sy(),u=Un(document.activeElement===n),[g]=jc(()=>document.createRange());u.triggerRef.current=g,Uc(()=>()=>g.detach(),[]),Uc(()=>{let m=t.current,v=a.current;!m||!v||(g.setStart(m,0),g.setEnd(v,0))},[t.current,a.current]),St(()=>{u.close()});let f=vy(m=>{let v=g.toString(),w=/^http(s?):\/\//.test(m)?m:`https://${m}`;d(Ko({text:`[${v}](${w})`,replace:"selection"}))},[]);return Br("span",{children:[ye("mark",{ref:a,className:Fr(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":u.opened?"true":"false",children:s}),u.opened&&ye(zn,{className:i.popoverRoot,triggerRef:u.triggerRef,boundaryRef:e,position:"above",align:"start",children:Br(jn,{style:o,ref:l,children:[ye("div",{className:Fr(i.selectionOptions,{[i.selectionOptionsIsHidden]:c!==null}),children:Br("button",{type:"button",tabIndex:c===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>p("insertLink"),children:[ye(Oc,{}),ye("span",{children:"\xA0"}),ye("span",{children:r("insertLink")})]})}),c==="insertLink"&&ye(Kc,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:f,onDismiss:()=>{p(null),u.close()}})]})})]},"selection-end")},Wn=class extends fy{charCount=0;foundIndex=0;startRef=null;props;onBeforeParse(e,o){return this.props=o,this.charCount=0,this.startRef=hy(),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?ye(_y,{ref:this.startRef}):ye(xy,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{jsx as Mt,jsxs as Ry}from"react/jsx-runtime";var ky=({enabled:t,content:e,tabText:o,showTabHint:n,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:l})=>{let c=y("TabCompletion",Tc),p=C("insertLink"),d=C("showMidSentenceSuggestions"),u=C("inlineSuggestions"),g=ln(a),f=Ty(null);wy(()=>{Ue(a)&&g&&cn(a,g)},[g]);let m=Cy(h=>{if(!s||!o)return h;let x=[Mt("span",{className:c.resetIndent,children:"\u200B"},"u200B"),Mt("span",{"data-testid":"tab-completion",className:Kr(c.tabText,c.resetIndent),"data-source":l,children:o},"tabText")];return n&&x.push(Mt("span",{className:Kr(c.hint,c.resetIndent),children:Mt(gs,{keyCode:"tab"},"tabHint")})),Pr(h,x)},[s,o,n]),v=qc(()=>{let h=[];return p&&h.push(new Wn("selection")),h.push(new vt("placeholders")),r&&h.push(new qn("keywords")),h},[u,p,r]),w=qc(()=>{let h=window.getComputedStyle(a);return{"--dd-color":h.color,"--dd-font-size":h.fontSize,"--dd-font-family":h.fontFamily,"--dd-font-variant":h.fontVariant}},[]);return t?Ry("div",{ref:h=>{h!=null&&h.parentElement&&(f.current=h==null?void 0:h.parentElement)},className:c.root,style:w,children:[Mt(by,{tagName:"span",containerTagName:"div",className:Kr(c.container,c.agentText),disableLineBreaks:Ue(a),content:e||"\u200B",onAfterParse:m,matchers:v,selection:g,keywordMatches:i,inputElement:a,inputStyle:w,boundaryRef:f,inlineSuggestionsOnlyAtEnd:!d}),Mt("br",{})]}):null},Iy=({input:t,ui:e,settings:o,styleSuggestions:n,conversation:s})=>{var m;let{tabCompletionSuggestion:r}=t,i=(r==null?void 0:r.text)||"",a=(r==null?void 0:r.source)||"",l=t.html??Qt(t.text),c=i.indexOf(t.text)===0?i.slice(t.text.length):"",{showTabHint:p}=e,{isSupported:d}=s,{showTabCompletion:u,visible:g,showStyleSuggestions:f}=o;return{showTabHint:p,showStyleSuggestions:f,showTabCompletion:u,content:l,tabText:c,source:a,keywordMatches:((m=n.list)==null?void 0:m.keywordMatches)??[],enabled:g&&d!==!1}},Vc=Ey(Iy)(ky);import pv from"classnames";import{useEffect as dv}from"react";import{useDispatch as uv,useSelector as ee}from"react-redux";import{createAsyncThunk as ho,createSlice as Py}from"@reduxjs/toolkit";var Wc={list:[],fetchState:"idle",isInitialRequest:null},$c=t=>t.autoflows.list||[],Gc=t=>e=>{var o;return(o=e.list)==null?void 0:o.find(n=>n.triggerPayload===t)},Re=ho("autoflows/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getAutoflows(t)}),Ur=ho("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(Re(t.platformSessionId))}),zr=ho("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(Re(t.platformSessionId))}),Ly=Py({name:"autoflows",initialState:Wc,reducers:{},extraReducers:t=>{t.addCase(Ur.pending,(e,o)=>{let n=Gc(o.meta.arg.triggerPayload)(e);n.state="Started",n.isBusy=!0}),t.addCase(zr.pending,(e,o)=>{let n=Gc(o.meta.arg.triggerPayload)(e);n.state="Aborted",n.isBusy=!0}),t.addCase(Re.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}),t.addCase(Re.rejected,e=>{e.fetchState="error"}),t.addCase(Re.fulfilled,(e,o)=>{e.list=o.payload,e.fetchState="done"}),t.addCase(L,()=>Wc)}}),Xc=ho("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(Re(t))}),s.on("sessionCompleted",()=>{o(Re(t))})}),Qc=ho("autoflows/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),Zc=Ly.reducer;import{createAsyncThunk as vo,createSlice as Ay}from"@reduxjs/toolkit";var Jc={list:[],fetchState:"idle",isInitialRequest:null,sentSuggestions:[],errorSuggestions:[],answeredSuggestions:[]},Yc=t=>t.customMessages.list,ep=t=>e=>!!e.customMessages.sentSuggestions.find(o=>o===t),tp=t=>e=>!!e.customMessages.answeredSuggestions.find(o=>o===t),op=t=>e=>!!e.customMessages.errorSuggestions.find(o=>o===t),yo=vo("customMessages/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getCustomMessages(t)}),Gn=vo("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)}),$n=vo("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)}),np=Ay({name:"customMessages",initialState:Jc,reducers:{onCustomMessage(t,e){Array.isArray(e.payload)?t.list=e.payload:t.list=[e.payload]}},extraReducers:t=>{t.addCase(yo.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(yo.rejected,e=>{e.fetchState="error"}).addCase(yo.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload||[]}).addCase(Gn.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.errorSuggestions=e.errorSuggestions.filter(n=>o.meta.arg.suggestion.text!==n)}).addCase(Gn.rejected,(e,o)=>{let n=e.sentSuggestions.indexOf(o.meta.arg.suggestion.text);e.errorSuggestions.push(...e.sentSuggestions.splice(n,1))}).addCase($n.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.answeredSuggestions.push(o.meta.arg.suggestion.text)}).addCase($n.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(L,()=>Jc)}}),sp=vo("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(np.actions.onCustomMessage(r))})}),rp=vo("customMessages/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),ip=np.reducer;import{createAsyncThunk as ap,createSlice as My}from"@reduxjs/toolkit";var Ny={token:null,accountUrl:null,interval:null},lp=t=>e=>{let{passwordlessToken:{token:o,accountUrl:n}}=e;return o&&n?`${n}/apis/admin/session/passwordless/login/?token=${o}&redirect=${t}`:null},jr=ap("passwordlessToken/getTemporaryPasswordlessToken",async(t,e)=>{let{deepdeskAPI:o}=e.extra,n=await o.requestPasswordlessToken();return{accountUrl:o.client.baseUrl,token:n}}),qr=ap("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:o=1e3*60*10}=t,{dispatch:n}=e;return n(jr()),setInterval(()=>n(jr()),o)}),cp=My({name:"passwordlessToken",initialState:Ny,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(jr.fulfilled,(e,o)=>{e.token=o.payload.token,e.accountUrl=o.payload.accountUrl}),t.addCase(qr.fulfilled,(e,o)=>{e.interval=o.payload})}}),{stopPollPasswordlessToken:pp}=cp.actions,dp=cp.reducer;function up(t){let{customMessages:e,autoflows:o}=t;return o.fetchState==="loading"&&o.isInitialRequest===!0||e.fetchState==="loading"&&e.isInitialRequest===!0}import{Fragment as qy}from"react";import{connect as Vy}from"react-redux";import Uy from"classnames";import{Fragment as zy}from"react";import Oy from"classnames";var gp={root:"_root_838fd_1"};import{jsx as Hy}from"react/jsx-runtime";var Dy=({className:t,children:e})=>{let o=y("Unicode",gp);return Hy("span",{className:Oy(t,o.root),children:e})},mp=Dy;var fp={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 Vr={};j(Vr,{enUS:()=>By,nlNL:()=>Fy});var By={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"}]},Fy={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 nt,jsxs as Xn}from"react/jsx-runtime";var jy=({disabled:t,state:e,displayName:o,description:n,onStartAutoflow:s,onStopAutoflow:r})=>{let i=y("Autoflow",fp),a=T(Vr),l=e==="Started"?"stop":"start",c=l==="start"?"\u25B6":l==="stop"?"\u25FC":"";return Xn(D,{className:Uy(i.root,{[i.isDisabled]:t,[i.isCompleted]:e==="Completed",[i.isAborted]:e==="Aborted",[i.isStarted]:e==="Started"}),children:[nt(H,{children:Xn(H.Content,{children:[Xn(H.Title,{children:[e&&nt("span",{className:i.stateBadge,children:a(e)}),o]}),nt("span",{children:n})]})}),nt(D.Actions,{fixed:e==="Started",children:nt(D.ActionButton,{primary:!0,className:l==="start"?i.buttonStart:i.buttonStop,onClick:e==="Started"?r:s,disabled:t,label:Xn(zy,{children:[nt(mp,{children:c})," ",nt("span",{children:a(l)})]})})})]})},hp=jy;import{jsx as yp}from"react/jsx-runtime";var Wy=(t,e)=>{let o=e.filter(n=>n.state==="Started");return o.length>0?o.indexOf(t)===-1:!1},Gy=({autoflows:t,onStartAutoflow:e,onStopAutoflow:o,platformSessionId:n})=>yp(qy,{children:t.map(s=>yp(hp,{displayName:s.displayName,description:s.description,disabled:s.isBusy||Wy(s,t),state:s.state,onStartAutoflow:()=>e({platformSessionId:n,triggerPayload:s.triggerPayload}),onStopAutoflow:()=>o({platformSessionId:n,triggerPayload:s.triggerPayload})},s.displayName))}),$y=({autoflows:t,conversation:e})=>{var o;return{autoflows:t.list,platformSessionId:(o=e.current)==null?void 0:o.sessionId}},Xy={onStartAutoflow:Ur,onStopAutoflow:zr},vp=Vy($y,Xy)(Gy);import{useEffect as Qy,useState as Zy}from"react";import{useDispatch as Jy}from"react-redux";import xp from"classnames";import{jsx as Sp}from"react/jsx-runtime";var Wr=()=>Sp("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:Sp("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 _p={root:"_root_rjdyr_1",entity:"_entity_rjdyr_10",entityText:"_entityText_rjdyr_46",iconWrapper:"_iconWrapper_rjdyr_53",icon:"_icon_rjdyr_53",iconClicked:"_iconClicked_rjdyr_67"};import{jsx as Nt,jsxs as bp}from"react/jsx-runtime";var Yy=({entities:t})=>{let e=y("EntitiesWidgetList",_p),[o,n]=Zy(void 0),s=Jy(),r=()=>{n(void 0)},i=a=>{t&&(n(t.indexOf(a)),lo(a.text),s(q({name:"entity copied",data:{entity:a,type:"copy"}})))};return Qy(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[o]),!t||t.length===0?null:Nt("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,l)=>bp("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[Nt("span",{className:e.entityText,children:a.text}),bp("span",{className:e.iconWrapper,children:[Nt("span",{className:xp(e.icon),children:Nt(Wr,{})}),Nt("span",{className:xp(e.icon,o===l&&e.iconClicked),children:Nt(Wr,{})})]})]},a.text))})},Cp=Yy;import ev from"classnames";import{useCallback as wp}from"react";import{useDispatch as tv,useSelector as Qn}from"react-redux";var Pe={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 ze,jsxs as Zn}from"react/jsx-runtime";var ov=({suggestion:t})=>{let e=T(Ze),o=tv(),n=Qn(ep(t.text)),s=Qn(tp(t.text)),r=Qn(op(t.text)),i=Qn(Ao),{replyOptions:a}=t,l=wp(p=>{p.preventDefault(),p.stopPropagation(),!(n||!i)&&o(Gn({platformSessionId:i,suggestion:t}))},[t,n,o,i]),c=wp(p=>{if(p.preventDefault(),p.stopPropagation(),!i||!a)return;let d=parseInt(p.target.dataset.index,10),u=a[d];o($n({platformSessionId:i,reply:u,suggestion:t}))},[t,n,o,i]);return Zn(D,{onClick:l,className:ev(Pe.root,{[Pe.isUsed]:n,[Pe.hasError]:r}),children:[ze(H,{children:Zn(H.Content,{children:[Zn(H.Title,{className:Pe.title,children:[t.text," ",ze(ms,{className:Pe.label,children:"analyse tool"})," ",r&&ze("span",{className:Pe.errorIcon,role:"img","aria-label":e("sendingError"),title:e("sendingError"),children:"!"})]}),a&&a.length>0&&ze("ul",{className:Pe.quickReplies,children:a.map(p=>ze("li",{className:Pe.quickReply,children:p.title},p.title))})]})}),Zn(D.Actions,{fixed:r||n,children:[a&&a.length>0&&ze(D.DropdownButton,{label:e("answer"),disabled:s,children:a.map((p,d)=>ze(D.DropdownItem,{index:d,label:p.title,onClick:c},p.title))}),ze(D.ActionButton,{primary:!0,disabled:n,onClick:l,label:e(n?"suggestionSent":r?"tryAgain":"sendSuggestion")})]})]})},Tp=ov;import{jsx as Ep}from"react/jsx-runtime";var kp=()=>Ep("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Ep("path",{d:"M17 13.5v6H5v-12h6m3-3h6v6m0-6-9 9",stroke:"currentColor",strokeWidth:"1.5",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"})});import{useSelector as rv}from"react-redux";import{useCallback as nv}from"react";import{jsx as st,jsxs as Jn}from"react/jsx-runtime";var sv=({suggestion:t,lines:e,onEdit:o,onUse:n})=>{var u;let s=t.text||t.url||t.message,r=_n(s),i=T(Ze),a=C("showImages"),l=C("fallbackImage"),c=g=>{g.preventDefault(),g.stopPropagation(),n(s)},p=g=>{g.preventDefault(),g.stopPropagation(),o(t)},d=nv(g=>{window.open(r,"_blank"),g.stopPropagation(),g.preventDefault()},[r]);return Jn(D,{onClick:c,"data-testid":"edit-suggestion",children:[Jn(H,{children:[a&&t.image&&st(H.Image,{src:Vn(t,"small",l||void 0),title:t.title}),Jn(H.Content,{children:[t.title&&st(H.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((u=t.searchKeywords)==null?void 0:u.length)>0&&st(D.Labels,{labels:t.searchKeywords}),st(H.Content,{cropText:e==="single",lineClamp:e==="multiple",children:s})]})]}),Jn(D.Actions,{children:[r&&st(D.ActionButton,{onClick:d,label:i("visitUrl")}),st(D.ActionButton,{primary:!0,onClick:p,label:i("preview")}),st(D.ActionButton,{primary:!0,onClick:c,label:i("useSuggestion")})]})]})},Ip=sv;import{Fragment as av,jsx as Rp}from"react/jsx-runtime";var iv=({contentType:t,lines:e,suggestions:o})=>{let n=se(),s=rv(Be),r=a=>{n.send(pr,{state:s,suggestion:a,contentType:t})},i=(a,l)=>{n.send(Te,{text:a,suggestion:{...l,source:l.source,sourceText:l.text}})};return Rp(av,{children:o.map(a=>Rp(Ip,{suggestion:a,lines:e,onEdit:l=>r(l),onUse:l=>i(l,a)},a.text||a.url||a.message))})},Pp=iv;var Gr={};j(Gr,{enUS:()=>lv,nlNL:()=>cv});var lv={waiting:[{type:0,value:"Loading\u2026"}],notSupported:[{type:0,value:"This conversation is not supported"}],noResults:[{type:0,value:"No results found\u2026"}],titleAutoflows:[{type:0,value:"Autoflows"}],titleCustomMessages:[{type:0,value:"Quick replies"}],actions:[{type:0,value:"Shortcuts"}],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"}]},cv={waiting:[{type:0,value:"Laden\u2026"}],notSupported:[{type:0,value:"Dit gesprek wordt niet ondersteund"}],noResults:[{type:0,value:"Geen resultaten gevonden\u2026"}],titleAutoflows:[{type:0,value:"Autoflows"}],titleCustomMessages:[{type:0,value:"Quick replies"}],actions:[{type:0,value:"Shortcuts"}],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 Lp={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 Ap}from"react/jsx-runtime";var Mp=()=>Ap("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:Ap("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 Np}from"react/jsx-runtime";var Op=()=>Np("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:Np("path",{d:"M319-250h322v-60H319v60Zm0-170h322v-60H319v60ZM220-80q-24 0-42-18t-18-42v-680q0-24 18-42t42-18h361l219 219v521q0 24-18 42t-42 18H220Zm331-554v-186H220v680h520v-494H551ZM220-820v186-186 680-680Z"})});import{jsx as M,jsxs as Ot}from"react/jsx-runtime";var Yn=(t,e)=>{let o=ee(oe);dv(()=>o?e.every(n=>!!n)?t():()=>{}:()=>{},[...e,o])},gv=({onLogIn:t})=>{let e=T(Gr),o=uv(),n=C("isEmbedded"),s=y("Widget",Lp),r=C("showAutoflows"),i=C("showCustomMessages"),a=C("showSummaryCommand"),l=C("showKnowledgeSearch"),c=C("showSearch"),p=ee(Ke),d=ee(Pn),u=ee($c),g=ee(kn),f=ee(Yc),m=ee(Mo),v=ee(ft),w=ee(oe),h=ee(Ao),x=ee(up),b=ee(Be),_=se(),R=ee(ol),N=ee(lp("/admin/")),$=C("adminUrl"),P=C("productName");if(Yn(()=>(o(yo(h)),o(sp(h)),()=>{o(rp(h))}),[o,v,i,h]),Yn(()=>(o(Re(h)),o(Xc(h)),()=>{o(Qc(h))}),[o,v,r,h]),Yn(()=>{d.forEach(({type:I})=>{o(I==="entities"?pe():ce(I))})},[o,v,m,p]),Yn(()=>(o(qr()),()=>{o(pp())}),[o]),v===!1)return M("div",{className:s.stateText,children:M("div",{children:M("p",{children:e("notSupported")})})},"supported");if(w===!1)return M("div",{className:s.loginText,children:M("div",{children:M(Bn,{isEmbedded:n,loginUrl:$,onLogIn:t})})},"login");if(!p||!h||w===null||R||x)return M("div",{className:s.stateText,children:M("div",{children:M("p",{children:e("waiting")})})},"waiting");let X=c||a||l||N;return M("div",{className:pv(s.root),"data-testid":"widget",children:Ot(hs,{className:s.sectionList,children:[X&&M(qe,{title:e("actions"),type:"shortcuts",children:Ot("div",{className:s.shortcutList,children:[c&&Ot("button",{className:s.shortcut,"data-testid":"shortcut-search",onClick:()=>_.send("ShowCommandPalette",{isOpen:!0}),children:[M(Ct,{}),e("linkSearch")]}),a&&Ot("button",{className:s.shortcut,"data-testid":"shortcut-summary",onClick:()=>_.send("ShowCommandPalette",{isOpen:!0,page:"summary"}),children:[M(Op,{}),e("linkSummary")]}),l&&Ot("button",{className:s.shortcut,"data-testid":"shortcut-knowledge-assist",onClick:()=>_.send("ShowCommandPalette",{isOpen:!0,page:"knowledgeAssist"}),children:[M(Mp,{}),e("linkKnowledgeSearch")]}),N&&Ot("a",{className:s.shortcut,target:"_blank",href:N,"data-testid":"shortcut-studio-login",rel:"noreferrer",children:[M(kp,{}),e("linkStudioLogin",{productName:P})]})]})}),i&&f.length>0&&M(qe,{type:"custom-messages","data-testid":"custom-messages",children:M(re,{withDivider:!0,children:f.map(I=>M(Tp,{suggestion:I},I.text))})}),r&&u.length>0&&M(qe,{type:"autoflows",title:e("titleAutoflows"),"data-testid":"autoflows",children:M(re,{withDivider:!0,children:M(vp,{})})}),d.map(({type:I,title:B,amount:at,lines:Kt})=>{var Ut;switch(I){case"entities":return g&&g.length>0&&M(qe,{type:I,title:B,"data-testid":`type-${I}`,children:M(Cp,{entities:g})},I);default:return((Ut=b[I])==null?void 0:Ut.fetchState)==="done"&&b[I].suggestions.length>0&&M(qe,{type:I,title:B,"data-testid":`type-${I}`,children:M(re,{withDivider:!0,children:M(Pp,{lines:Kt,contentType:I,suggestions:b[I].suggestions.slice(0,at)||[]})})},I)}})]})})},Dp=gv;function _o(t){let e=new Range;return e.selectNodeContents(t),e}function Hp(t,e,o){try{return rt(t,e,o),!0}catch{return!1}}function es(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function ts(t){return"tagName"in t&&t.tagName==="BR"}var So=/[\u200B-\u200D\uFEFF]/g;function rt(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 u=0;u<=l.length;u++)if(d.test(l[u])||p++,p===c)return u;throw new Error("Offset out of range")}function a(l){switch(l.nodeType){case Node.TEXT_NODE:{let c=l.textContent,p=c.replace(So,""),d=s+p.length,u=e>=s&&e<=d,g=o>=s&&o<=d;if(u){let f=i(c,e-s);f===0&&!g?n.setStartBefore(l):n.setStart(l,f)}g&&(n.setEnd(l,i(c,o-s)),r=!0),s=d;break}case Node.ELEMENT_NODE:{if(ts(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;es(l)&&c&&!es(c)&&!ts(c)&&s++;break}default:break}}if(a(t),n.startContainer===document)throw new Error("Offsets out of bound");return n}function os(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 u=d===o,g=d===s;switch(d.nodeType){case Node.TEXT_NODE:{let f=d.textContent;u&&(a=c+f.substring(0,n).replace(So,"").length),g&&(l=c+f.substring(0,r).replace(So,"").length),c+=f.replace(So,"").length;break}case Node.ELEMENT_NODE:{let f=d.nextSibling===null;ts(d)&&!f&&c++;for(let m=0;m<d.childNodes.length;m++){let v=u&&m===n,w=g&&m===r;if(v&&(a=c),w&&(l=c),l!==void 0||((!v||!i)&&p(d.childNodes[m]),g&&m===r-1&&(l=c),l!==void 0))break}!g&&es(d)&&!f&&c++,g&&(l=c);break}default:break}}if(p(t),l===void 0)throw new Error("Could not determine start and end");return{start:a??l,end:l}}function ns(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 u=p?n:0,g=d?r:void 0,f=c.textContent.replace(So,"");u===0&&g===void 0?a+=f:a+=f.substring(u,g);break}case Node.ELEMENT_NODE:{let u=c.nextSibling===null;i===0&&ts(c)&&!u&&(a+=`
|
|
4
|
+
`);for(let g=p?n:0;g<(d?Math.min(r,c.childNodes.length):c.childNodes.length)&&(l(c.childNodes[g]),i!==1);g++);!d&&i===0&&es(c)&&!u&&(a+=`
|
|
5
|
+
`);break}default:break}d&&i++}return l(t),a}function Bp(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var Dt=class extends Ne{observer;lastKnownSelection=null;getRootNode(){return this.element.getRootNode()}getText(){let e=new Range;return e.selectNodeContents(this.element),ns(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!Bp(o)&&(e.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=e.getBoundingClientRect(),e.deleteContents(),!Bp(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let e=this.getRange();if(e)return os(this.element,e);let o=this.lastKnownSelection;if(o&&Hp(this.element,o.start,o.end))return o;let n=_o(this.element);return n.collapse(!1),os(this.element,n)}getSelectedText(){let{start:e,end:o}=this.getSelection();return ns(this.element,rt(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 Fp(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 $r=class{constructor(e){this.name=e;this.broadcastChannel=new BroadcastChannel(e)}broadcastChannel;disposeHandlers=[];onMessage(e){this.broadcastChannel.addEventListener("message",e),this.disposeHandlers.push(()=>{this.broadcastChannel.removeEventListener("message",e)})}postMessage(e){this.broadcastChannel.postMessage(e)}close(){this.disposeHandlers.forEach(e=>e()),this.broadcastChannel.close()}},Xr=class{constructor(e,o,n){this.name=e;this.targetOrigin=o;this.options=n;this.iframe=Fp(e,`${this.targetOrigin}/v2/widget/liveengage/channel.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(e,this.targetOrigin)}close(){var e;this.disposeHandlers.forEach(o=>o()),(e=this.iframe)==null||e.remove()}},Qr=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(),E.info("Set sessionId",e),this.sessionId=e,this.channel=this.createChannel(e))}createChannel(e){let o=this.params.createCustomChannel?this.params.createCustomChannel(e):this.isCrossOrigin?new Xr(e,this.deepdeskUrl,{debug:!0}):new $r(e),n=s=>{var r,i;s.origin===this.deepdeskUrl&&s.data.type==="event"&&s.data.channel===e&&(E.info("Received broadcast event",this.sessionId,s),(i=(r=this.eventMap)[s.data.name])==null||i.call(r,s.data.payload))};return o.onMessage(n),o}send(e,o){var r,i;E.info("broadcast event",{sessionId:this.sessionId,name:e,payload:o});let n={type:"event",name:e,payload:o};(i=(r=this.eventMap)[e])==null||i.call(r,o);let s=this.sessionId==="deepdesk-general"?this.defaultChannel:this.channel;s==null||s.postMessage({...n,channel:this.sessionId})}cleanup(e=!1){var o,n;(o=this.channel)==null||o.close(),delete this.channel,e&&((n=this.defaultChannel)==null||n.close(),delete this.defaultChannel)}},Kp=Qr;var Ht=class extends Error{constructor(o,n){super(o);this.body=n}name="CustomError"};var Zr=t=>new Promise(e=>{setTimeout(e,t)});var Bt=class extends Ht{name="ClientError"},Jr=class extends Ht{name="ServerError"},ve=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:u=b=>b instanceof TypeError,retryOnResponse:g=b=>b.status>=500,version:f="v1",...m}=o,v={credentials:"include",...m,headers:{"Content-Type":"application/json",...m.headers}};o.method!==void 0&&o.method!=="GET"&&this.csrfToken&&(v.headers={...v.headers,"X-CSRFToken":this.csrfToken}),typeof f=="string"&&(v.headers={...v.headers,"X-Deepdesk-API-Version":f});let w=c,h=!1;if(!a)throw new Error("fetch is not set");this.latestRequestByUrl[i]&&l&&(this.latestRequestByUrl[i].isAborted=!0,this.latestRequestByUrl[i].reject(new Error("Aborted"))),this.latestRequestByUrl[i]=r;let x=async()=>(w--,a(i,v).then(async b=>g(b)&&!r.isAborted&&w>0?(await Zr(p),x()):b.status===401&&d===!0&&h===!1?(h=!0,await this.refreshToken(),x()):b).catch(async b=>{if(u(b)&&!r.isAborted&&w>0)return await Zr(p),x();throw b}));x().then(b=>b.json().catch(()=>null).then(_=>{b.status>=500?s(new Jr("Server Error",_)):b.status===401?s(new Bt("Unauthorized",_)):b.status===403?s(new Bt("Forbidden",_)):b.status===404?s(new Bt("Not Found",_)):b.status>=400&&s(new Bt("Bad Request",_)),delete this.latestRequestByUrl[i],n(_)})).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 mv;(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||={})})(mv||={});function ss(t){return{...A(t),tags:t.tags}}var je=class t{constructor(e,o={}){this.options=o;this.client=new ve(e,{fetch:o.fetch}),this.client.patchFetch(n=>async(s,r)=>{let i=await n(s,r);return this.handleDeepdeskVersionHeaders(i),i})}latestReceivedDeepdeskVersions={};client;shouldFetchCsrfToken=!0;static exchangeTokenPromise=null;async preflight(){if(this.shouldFetchCsrfToken){this.shouldFetchCsrfToken=!1;let e=await this.getCsrfToken();this.client.setCsrfToken(e)}return this.options.token?(t.exchangeTokenPromise||(t.exchangeTokenPromise=this.exchangeTokenForAccessCookie(this.options.token)),t.exchangeTokenPromise):Promise.resolve()}async createConversation(e){await this.preflight(),E.info(`Creating conversation for session ${e.sessionId} and agent ${e.agentId}`);let o=await this.client.post("/api/conversations",{...F(e),tags:e.tags},{version:"v2"});return ss(o)}async getProfile(e){let o=await this.client.get(`/apis/admin/profiles/${e}/`,{version:null});return A(o)}async getContentTypes(){let e=await this.client.get("/apis/admin/content-types/",{version:null});return A(e)}async getPlatformConfig(){let{config:e}=await this.client.get("/platform/config/",{version:null});return A(e)}async checkUserExists(e){let{exists:o}=await this.client.get(`/apis/admin/users/exists?external_id=${e}`);return o}async getConversationBySessionId(e,o={}){await this.preflight(),E.info(`Getting conversation for session ${e}`);let{attempts:n=1,retryDelay:s=1e3}=o,r=await this.client.get(`/api/conversations/by_session_id/${e}`,{attempts:n,retryDelay:s,retryOnResponse:i=>i.status===404||i.status>=500,version:"v2"});return ss(r)}async isConversationSupported(e,o={}){E.info(`Check if conversation for session ${e} is supported`);let{attempts:n=1,retryDelay:s=1e3}=o;return(await this.client.get(`/api/conversations/by_session_id/${e}/active_profile`,{attempts:n,retryDelay:s,retryOnResponse:i=>i.status===404||i.status>=500,version:"v2"})).has_active_profile}async updateConversation(e,o){let n=F(o);o.tags&&(n.tags=o.tags);let s=await this.client.put(`/api/conversations/${e}`,n,{version:"v2"});return ss(s)}async postMessages(e,o){return(await this.client.post(`/api/conversations/${e}/messages`,o.map(s=>({...F(s),tags:s.tags})),{version:"v2"})).map(s=>ss(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",F({...r,...s,data:n,name:e}),{version:"v2"})}async sendEventV1(e,o){let n=Object.entries(this.latestReceivedDeepdeskVersions).reduce((s,[r,i])=>({...s,[r]:i}),{});return this.client.post("/api/events",{event:e,data:F({...o,...n})})}async getEntities(e){return(await this.client.post("/api/entities",{messages:e.filter(n=>n.text)})).entities}async getSummary(e,o={}){return(await this.client.post("/api/summary",{conversation:{messages:e.filter(s=>s.text&&s.source)},prompt_instruction:o.promptInstruction,model:o.model})).summary}async getTemporaryExchangeToken(){return(await this.client.get("/auth/exchange-token",{version:null})).jwt}async exchangeTokenForAccessCookie(e){return this.client.post("/apis/admin/session/jwt/",{jwt:e},{version:null}).catch(o=>{throw E.warn(`Invalid token '${e}'`),o})}async authenticateWithKey(e,o){await this.client.post("/apis/admin/session/api-key/",F(o),{version:null,refreshTokenOn401:!1,headers:{apikey:e}})}async getTextSuggestions(e,o={},n){return n==="sticky-messages"?this.getPinnedMessages(e):(await this.client.post(`/api/conversations/${e}/recommend/${n}`,F(o),{abortLatest:!0})).map(r=>({...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`,F(o),{abortLatest:!0})).map(s=>({score:1,source:s.source,sourceText:s.source_text,text:s.label,trainingJobs:s.training_jobs,searchKeywords:s.search_keywords,type:s.source})).filter((s,r,i)=>r===i.findIndex(a=>a.text===s.text))}async getPinnedMessages(e){let o=await this.client.get(`/api/conversations/${e}/sticky-messages`,{abortLatest:!0});return 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",F(e),{abortLatest:!0});return A(o)}async search(e){let o=await this.client.post(`/api/profiles/${e.profile}/search`,F(e),{version:"v2"});return A(o)}async knowledgeAssist(e,o,n){let s=await this.client.post(`/api/knowledge-assist/assistants/${n}/search`,F({question:e.question,promptInstruction:e.promptInstruction,chatHistory:o.map(r=>({question:r.question,answer:r.answer.answer}))}),{version:"v2"});return A(s)}async requestLoginByEmail(e){let o=await this.client.post("/apis/admin/session/passwordless/request/",{email:e},{version:null});return A(o)}async 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)}handleDeepdeskVersionHeaders(e){e.headers.forEach((o,n)=>{let s=n.toLowerCase(),r=s.match(yi);if(!o||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&o&&a!==o&&E.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(o)}`),this.latestReceivedDeepdeskVersions[i]=o})}};var xo=class{constructor(e,o){this.url=e;this.options={timeout:25e3,...o}}eventListeners={};options;timeoutTimer;eventSource;proxyEvent(e){this.eventSource.addEventListener(tr(e),o=>{let{data:n}=o;try{let s=JSON.parse(n);this.emit(e,A(s))}catch{E.warn(`Invalid JSON for ${e}: ${n}`)}})}connect(){clearTimeout(this.timeoutTimer);let e=new EventSource(this.url,{withCredentials:!0});this.eventSource=e;let o=!1;e.onopen=()=>{o=!0},e.onerror=()=>{o&&e.readyState===2&&this.connect()},this.timeoutTimer=setTimeout(()=>{e.close(),this.connect()},this.options.timeout),Object.keys(this.eventListeners).forEach(n=>{this.proxyEvent(n)})}disconnect(){var e;clearTimeout(this.timeoutTimer),this.eventListeners={},(e=this.eventSource)==null||e.close()}emit(e,o){this.eventListeners[e]&&this.eventListeners[e].forEach(n=>n(o))}on(e,o){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o),this.proxyEvent(e),()=>{this.off(e,o)}}off(e,o){let n;this.eventListeners[e]&&(n=this.eventListeners[e].indexOf(o),n>-1&&this.eventListeners[e].splice(n,1))}};var fv;(e=>{let t;(r=>(r.Started="Started",r.Aborted="Aborted",r.Completed="Completed"))(t=e.AutoflowSessionState||={})})(fv||={});var bo=class{constructor(e,o={}){this.apiUrl=e;this.client=new ve(e,o)}client;streams={};logger=E;async getCustomMessages(e){let o=await this.client.get(`/sessions/${e}/suggestions`);return A(o.suggestions)}async sendCustomMessage(e,o){let n=await this.client.post(`/sessions/${e}/messages`,F(o));return A(n)}async answerCustomMessage(e,o){await this.client.post(`/sessions/${e}/answers`,F(o))}async getAutoflows(e){let o=await this.client.get(`/sessions/${e}/autoflows`);return A(o.autoflows)}async startAutoflowSession(e){let o=await this.client.post("/autoflow-sessions",F(e));return A(o)}async stopAutoflowSession(e){await this.client.delete(`/autoflow-sessions/${e}`)}openStream(e){return this.streams[e]||(this.streams[e]=new xo(`${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 bv,configureStore as Cv}from"@reduxjs/toolkit";import{createSlice as hv}from"@reduxjs/toolkit";var Up={startTime:null,stopTime:null},zp=hv({name:"handlingTime",initialState:Up,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(L,()=>Up)}}),{handlingTimeStart:jp,handlingTimeStop:rs,handlingTimeReset:qp}=zp.actions,Vp=zp.reducer;var Wp=(t={})=>{let e={onAuthError:Et(!1),...t};return o=>n=>s=>("error"in s&&s.error.message==="Unauthorized"&&o.dispatch(e.onAuthError),n(s))};import{createAsyncThunk as yv,createSlice as vv}from"@reduxjs/toolkit";var is={list:{keywordMatches:[]},fetchState:"idle",isInitialRequest:null};var it=yv("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 is.list;if(!r)throw new Error("No current conversation to fetch pinned messages");return o.getStyleSuggestions({profileCode:r,message:t})}),Sv=vv({name:"styleSuggestions",initialState:is,reducers:{},extraReducers:t=>{t.addCase(it.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(it.rejected,e=>{e.fetchState="error"}).addCase(it.fulfilled,(e,o)=>{e.fetchState="done",Le(e.list,o.payload)||(e.list=o.payload)}).addCase(Ge,e=>{e.list=is.list}).addCase(L,()=>is)}}),Gp=Sv.reducer;var $p=(t={})=>{let e,o=!0,n={getStyleSuggestions:it,debounce:500,...t};return s=>r=>i=>{var g;let a=s.getState().input.text,l=r(i),c=s.getState();if(c.auth.isLoggedIn!==!0)return l;let{showStyleSuggestions:p}=c.settings;if(!((g=c.conversation.current)==null?void 0:g.id)||!p)return l;let{text:u}=c.input;return u===a&&!o||(clearTimeout(e),u==="")||(e=setTimeout(()=>{o=!1,s.dispatch(n.getStyleSuggestions({text:u}))},t.debounce)),l}};function _v(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var Xp=(t={})=>{let e={getTextSuggestions:ce,getAutocompleteSuggestions:oo,debounce:200,check:At,...t},o;return n=>s=>r=>{var m;let{input:{userCommitted:i}}=n.getState(),a=s(r),l=n.getState();if(l.auth.isLoggedIn!==!0)return a;let{recommendTextSuggestions:c,showTabCompletion:p}=l.settings,d=(m=l.conversation.current)==null?void 0:m.id,u=r.type===wn.toString();if(!d||!c&&!p)return a;let{input:{userCommitted:g}}=l;return _v(g,i)&&!u||(clearTimeout(o),!e.check(l))||(o=setTimeout(()=>{let v=ht(l);v===""?n.dispatch(e.getTextSuggestions("default")):n.dispatch(e.getAutocompleteSuggestions(v))},u?0:e.debounce)),a}};var Qp=it.fulfilled.toString();function xv(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 Zp=t=>e=>o=>n=>{var c;if(n.type!==Qp){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=xv(s,i);n.type===Qp&&l.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:l}})};var wv=bv({activeSuggestion:ul,answer:Yl,auth:Tl,autoflows:Zc,conversation:Ci,contentTypes:Dl,customMessages:ip,passwordlessToken:dp,entities:Fl,handlingTime:Vp,info:Ha,input:ws.reducer,overlayInput:Q.reducer,settings:Si,profile:sc,search:ja,summary:Wl,styleSuggestions:Gp,ui:hl,textSuggestions:al});function Jp(t){return Cv({reducer:wv,middleware:e=>[...e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI,deepdeskBrokerAPI:t.deepdeskBrokerAPI}},serializableCheck:!1}),Wp(),Xp({debounce:200}),$p({debounce:500}),Zp(t.deepdeskAPI),...t.middleware?t.middleware:[]],preloadedState:t.preloadedState})}var Tv=t=>{var e;return((e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())??"unknown"},Ev=t=>e=>o=>n=>{var a;let s=e.getState(),r=_s("inlineSuggestions")(s);switch(n.type){case Ce.toString():{let l=Cn(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 Et.toString():{!n.payload&&t.emit("logout",void 0);break}case ie.toString():{let{start:l,end:c}=s.input.selection;t.emit("select-suggestion",{type:Tv(n.payload.suggestion),...n.payload,replace:n.payload.replace==="selection"?{start:l,end:c}:{start:0,end:c}},{mayApplyChanges:!0});break}case Ko.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 Vt.toString():{let l=e.getState(),{text:c,selection:p}=l.input.userCommitted;t.emit("reset",{text:c,selectionAfter:p},{mayApplyChanges:!0});break}case qo.toString():t.emit("select-image",n.payload,{mayApplyChanges:!0}),t.sendEvent("Image attached",{conversationId:s.conversation.current.id,data:{path:n.payload.suggestion.image,title:n.payload.suggestion.title}});break;case pe.fulfilled.toString():n.payload.length>0&&t.sendEvent("entities found",{conversationId:s.conversation.current.id,data:{entities:n.payload}});break;case Ee.fulfilled.toString():t.sendEvent("conversation summarized",{conversationId:s.conversation.current.id,data:{summary:n.payload.summary}});break;case q.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 Uo.toString():t.handleKeyDown(n.payload);break;case Ge.toString():t.logSendMessage(n.payload);break;case zo.toString():t.logSendEditSuggestionMessage(n.payload);break;case jo.toString():t.handleInputChanged(n.payload);break;default:break}let i=o(n);switch(n.type){case Ge.toString():t.handleAfterSendMessage(n.payload);break;case no.toString():t.onUpdateShowTabHint(n.payload);break;case rs.toString():t.logHandlingTime();break;case ie.toString():{r&&(e.dispatch(ge([])),e.dispatch(_e()));break}case ge.toString():{r&&n.payload.length>0&&e.dispatch(Me(0));break}default:break}return i},Yp=Ev;function Yr(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:Yr(o),timeStop:Yr(n)}}function ei(t,e,o){var N,$,P;let{text:n,metrics:{numCharsTyped:s,numCharsPasted:r,numCharsCut:i,numCharsDeleted:a,numPaste:l,agentStartedTypingTimestamp:c,externalTimeTotalSeconds:p,pastes:d,cuts:u,deletions:g,textSuggestions:f,offeredTextSuggestions:m}}=e[t],v=n.length,h=f.reduce((X,{text:I,searchTerm:B})=>X+I.length-(B?B.length:0),0),x=c??Date.now(),b=(Date.now()-x)/1e3+(p||0),_=s/b,R=f.reduce((X,{searchTerm:I})=>X+(I?I.length:0),0);return{conversationId:e.conversation.current.id,source:"agent",text:n,clientVersion:o.version,pastes:d,cuts:u,deletions:g,lenTextTyped:s+R,lenTextTotal:v,lenTextAssisted:h,lenTextPasted:r,lenTextCut:i,lenTextDeleted:a,timeTotalSeconds:b,charsPerSecond:_,numPastes:l,textSuggestionsV2:f,suggestionsCounters:[{source:"gpt",countOffered:m.filter(X=>X.source==="gpt").length}],agentId:(N=e.info.agentInfo)==null?void 0:N.agentId,agentName:($=e.info.agentInfo)==null?void 0:$.agentName,agentEmail:(P=e.info.agentInfo)==null?void 0:P.agentEmail}}function ti(t,e){var r;let o=t.closest(e);if(o)return o;let n=t.getRootNode().host;if(n instanceof HTMLElement)return ti(n,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?ti(s,e):null}function td(t,e){return ti(t,e)}function od(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function kv(t){return typeof t=="object"&&t!==null&&"tagName"in t}function oi(t){return kv(t)&&(Ue(t)||an(t))}var nd=(t,e)=>({value(){try{let o=sessionStorage.getItem(`dd-${t}`);if(!o)return e;try{return JSON.parse(o)}catch{return e}}catch{return e}},update(o){try{sessionStorage.setItem(`dd-${t}`,JSON.stringify(o))}catch{E.warn("[Deepdesk] SessionStorage is blocked by browser")}}});function Iv(t){return t.offsetParent!==null}function sd(t){if(!Iv(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 ni(t,e,o=100){let n=sd(t);e({isVisible:n});let s=setInterval(()=>{let r=sd(t);r!==n&&(n=r,e({isVisible:n}))},o);return()=>{clearTimeout(s)}}import Av from"classnames";import{useSelector as Mv}from"react-redux";import{jsx as si}from"react/jsx-runtime";var rd=({className:t})=>si("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:si("g",{children:si("path",{d:`M163.4,233h186v-70c0-25.6-9.4-47.8-27.3-65.7C304.2,79.4,282,70,256.4,70s-47.8,9.4-65.7,27.3
|
|
6
6
|
c-17.9,17.9-27.3,40.1-27.3,65.7C163.4,163,163.4,233,163.4,233z M465.5,267.9V477c0,9.4-3.4,17.9-10.2,24.7
|
|
7
7
|
c-6.8,6.8-15.4,10.2-24.7,10.2h-349c-9.4,0-17.9-3.4-24.7-10.2c-6.8-6.8-10.2-15.4-10.2-24.7V267.9c0-9.4,3.4-17.9,10.2-24.7
|
|
8
8
|
c6.8-6.8,15.4-10.2,24.7-10.2h11.9v-70c0-44.4,16.2-82.8,47.8-115.2S212.1,0,256.4,0s82.8,16.2,115.2,47.8
|
|
9
|
-
c32.4,32.4,47.8,70,47.8,115.2v70h11.9c9.4,0,17.9,3.4,24.7,10.2C462.1,250,465.5,257.7,465.5,267.9z`})})});import{jsx as id}from"react/jsx-runtime";var Rv={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},ad=({className:t,color:e})=>id("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:id("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:Rv[e||"pink"]})});var ld={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 ri={};j(ri,{enUS:()=>Iv,nlNL:()=>Pv});var Iv={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},Pv={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as Mv}from"react-redux";import{jsx as ii,jsxs as cd}from"react/jsx-runtime";var pd=({onLogIn:t})=>{let e=T(ri),o=C("productName"),n=Mv(),s=Lv(oe),r=y("FloatingMenu",ld);if(s===null)return null;let i=()=>{s===!0?n(W(!0)):t()};return cd("button",{className:Av(r.root,{[r.isLoggedIn]:s,[r.isLoggedOut]:!s}),onClick:i,children:[ii("div",{className:r.text,children:e(s?"search":"signin",{productName:o})}),cd("div",{className:r.icon,children:[ii(ad,{className:r.logo,color:"pink"}),s===!1&&ii(rd,{className:r.lock})]})]})};async function ai(t){let o=await new ve(t).get("/platform/config/",{version:null});return L(o)}import{jsx as K}from"react/jsx-runtime";var dd=nd("showTabHint",!0),as=class t{static version="10.9.3-beta.5";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 je(c,{token:r,fetch:i}),this.version=n,this.instanceId=t.count++;let p={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[Yp({emit:(d,u,g)=>this.emit(d,u,g),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=>dd.update(d),sendEvent:(d,u)=>this.deepdeskApi.sendEvent(d,u)})]};o&&Object.assign(p,{deepdeskBrokerAPI:new bo(o)}),this.store=Jp(p),this.broadcastEvents=new Kp({debug:!0,deepdeskUrl:c,eventMap:El(this.store),createCustomChannel:l}),this.store.dispatch(qt),this.store.dispatch(no(dd.value())),this.store.dispatch(qt({locale:s,adminUrl:c,productName:a}))}get state(){return this.store.getState()}get settings(){return this.state.settings}get selectedTextSuggestion(){return this.state.input.textSuggestions[this.state.input.selectedSuggestionIndex]??null}hasConversation(){return!!this.state.conversation.current}conversationId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.id}sessionId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.sessionId}shouldAbort(){return this.state.conversation.isSupported===!1?(E.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(E.warn("Profile has not been loaded (yet)"),!0):(E.warn("No conversation loaded (yet)"),!0)}login(){return this.store.dispatch(Et(null)),this.store.dispatch(we()),new Promise(e=>{let o=this.store.subscribe(()=>{let n=this.store.getState();oe(n)&&Sl(n)!=="loading"&&(o(),e())});this.unmountHandlers.push(()=>{o()})})}async isLoggedIn(){return(await this.store.dispatch(we())).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){E.warn("Failed to attach user:",o)}}async isConversationSupported(e,o){return(await this.store.dispatch(xs({sessionId:e,options:o}))).payload}async createConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(No(e))).payload}async getConversationBySessionId(e,o){return this.hasConversation()&&this.sessionId()!==e&&this.resetConversation(),(await this.store.dispatch(Oo({sessionId:e,options:o}))).payload}async upsertConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(bs(e))).payload}async postMessages(e){return(await this.store.dispatch(Ho(e))).payload}async updateConversation(e){return(await this.store.dispatch(Do(e))).payload}resetConversation(){this.store.dispatch(A()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}async getSummary(){let e=await this.store.dispatch(Ee());if(e.error)throw new Error(e.error.message);return e.payload.summary}configure(e){this.store.dispatch(qt(e))}setVisitorInfo(e){this.store.dispatch(Da(e))}async setAgentInfo(e){await this.store.dispatch(Yt(e))}async setAgentSettings(e){await this.store.dispatch(or(e))}async getAgentSettings(){return(await this.store.dispatch(nr())).payload}async refresh(){if(this.shouldAbort())return Promise.resolve();this.inputMediator&&this.handleInputChanged(this.inputMediator.getText());let e=[];return this.store.dispatch(wn()),e.push(this.refreshWidgetSuggestions()),Promise.all(e).then(()=>{})}notifyInputChanged(e){this.store.dispatch(jo(e))}notifyKeyDown(e){this.store.dispatch(Uo(e))}notifyPaste(e,o){this.store.dispatch(Ni({text:e,selectionText:o}))}notifyCut(e){this.store.dispatch(Li(e))}notifyExternalSuggestion(e){this.store.dispatch(ie(e)),this.store.dispatch(_e())}notifyEditSuggestion(e){this.store.dispatch(rl(e.contentType,e.suggestions)),this.store.dispatch(Ce({contentType:e.contentType,suggestion:typeof e.index=="number"?e.suggestions[e.index]:null}))}handleInputChanged(e){let{overlayCollapsed:o,openOverlayWhenTyping:n}=this.state.ui;o&&n&&this.store.dispatch(Fe({collapse:!1})),this.inputMediator&&this.store.dispatch(Ei({text:e,html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),!this.shouldAbort()&&(this.isMounted||this.store.dispatch(ge([])))}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(Mi(Fo(e))),e.key!=="Tab"&&!this.settings.showTextSuggestions)return;let c=()=>{o||!a||r&&(e.shiftKey||(this.store.dispatch(Ii()),i||this.stageSelectedSuggestion({inputType:"arrow"}),e.preventDefault()))},p=()=>{if(o||!a||!r||e.shiftKey)return;this.store.dispatch(Ai());let{selectedSuggestionIndex:d}=this.state.input;e.preventDefault(),!i&&(d===-1?this.store.dispatch(Vt()):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(Me(-1)),this.state.input.selectedSuggestionIndex!==-1?(this.store.dispatch(Me(-1)),this.store.dispatch(Vt()),e.preventDefault()):o||(this.store.dispatch(Fe({collapse:!0})),this.store.dispatch(ml(!0)),e.preventDefault());return}case"Tab":{let{userCommitted:d}=this.state.input,u=d.text.substring(0,d.selection.end),{tabCompletionSuggestion:g}=this.state.input;this.store.dispatch(no(!1)),this.state.input.selectedSuggestionIndex>-1?this.stageSelectedSuggestion({inputType:"tab"}):!i&&this.settings.showTabCompletion&&g&&g.text.startsWith(u)&&(this.store.dispatch(ie({text:g.text,suggestion:g,eventMetrics:{inputType:"tab"},replace:"until-selection-end"})),this.store.dispatch(_e())),e.preventDefault();break}default:}}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(Oi()),this.store.dispatch(ge([]))}handlingTimeStart(){this.state.handlingTime.startTime||(E.info("Start handling time"),this.store.dispatch(jp()))}handlingTimeStop(){this.state.handlingTime.startTime&&(E.info("Stop handling time"),this.store.dispatch(ss()))}logSendMessage(e){let o=ei("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=ei("overlayInput",this.state,{version:this.version});e&&Object.assign(o,{text:e}),this.store.dispatch(Ri(this.state.overlayInput.metrics))}logHandlingTime(){let e=ed(this.state,{version:this.version});this.deepdeskApi.sendEventV1("Handling Time",e),this.store.dispatch(qp())}notifySubmit(e={}){this.shouldAbort()||(this.store.dispatch(_e()),this.store.dispatch(Ge(e.text??this.state.input.text)))}stageSelectedSuggestion(e){let o=this.state.input.selectedSuggestionIndex,{textSuggestions:n}=this.state.input;this.store.dispatch(ie({text:n[o].text,suggestion:n[o],eventMetrics:e,replace:"until-selection-end"}))}emit(e,o,n={}){let s=()=>{this.eventListeners[e]&&this.eventListeners[e].forEach(r=>{try{r(o)}catch(i){E.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),E.error(i)}})};this.inputMediator&&n.mayApplyChanges?this.inputMediator.applyChanges(s):s()}on(e,o){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o),()=>{this.off(e,o)}}off(e,o){if(!e&&!o){this.eventListeners={};return}let n;this.eventListeners[e]&&(n=this.eventListeners[e].indexOf(o),n>-1&&this.eventListeners[e].splice(n,1))}setConversationQuery(e){this.dynamicThunkObject.conversationQuery=e}whenConversationLoaded(e){let o=()=>this.loadProfileConfig().then(()=>e());this.hasConversation()&&o();let n=this.hasConversation();this.store.subscribe(()=>{this.hasConversation()!==n&&(n=this.hasConversation(),n&&o())})}overlayContainerFactory(e,o,n,s){let[r,i]=xt(o,n);return r.setAttribute("translate","no"),r.dataset.testid=e,s&&r.classList.add(s),this.unmountHandlers.push(()=>{is(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]=xt(r,{appendTo:document.body});a.dataset.testid=o,a.style.zIndex="2",a.appendChild(n),this.unmountHandlers.push(()=>{is(s),l()})}else document.body.appendChild(n);return s}createContainer(e,o=document.body){let n=window.getComputedStyle(o),s=document.createElement("div");return Xe(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(()=>{is(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),E.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()?(E.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(Hi(n.metrics))):E.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(!oi(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:u,insertLink:g,inputMediator:f,closestScrollSelector:m,appendOverlayTo:v,inlineSuggestions:w,floatingMenu:h}=o;this.configure({showStyleSuggestions:s,showTabCompletion:r,textSuggestionsCount:a,showMidSentenceSuggestions:l,showSuggestionsBeforePattern:c,showSuggestionsAfterPattern:p,showTextSuggestions:i,insertLink:g,isEmbedded:d,inlineSuggestions:w,floatingMenu:!!h}),o.automaticHandlingTime&&this.setupHandlingTime(e),Xe(e),this.inputMediator=f||(Ue(e)?new Oe(e):new Dt(e)),this.inputMediator.on("change",({plainText:_})=>{this.notifyInputChanged(_)}),this.inputMediator.on("updated",()=>{this.inputMediator&&this.store.dispatch(Di({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()}))}),this.inputMediator.on("keydown",_=>{this.notifyKeyDown(_)}),this.inputMediator.on("paste",({pastedText:_,selectionText:I})=>{this.notifyPaste(_,I)}),this.inputMediator.on("cut",({selectionText:_})=>{this.notifyCut(_)});let x=m&&td(e,m)||void 0;if(w){let{customStyles:_,appendOverlayTo:I}=o;if(Ue(e))throw new Error("[Deepdesk] Inline suggestion is not supported for textarea yet.");let N=this.createInlineContainer(e,"deepdesk-caret");Ft(K(tt,{store:this.store,customStyles:_,children:K(et,{broadcastEvents:this.broadcastEvents,children:K(fc,{})})}),N),this.inputMediator.on("caret",P=>{this.store.dispatch(ge([])),P?(N.style.display="block",N.style.top=`${P.top}px`,N.style.left=`${P.left}px`):N.style.display="none"});let $=this.overlayContainerFactory("floating-menu",x||e,{appendTo:typeof h=="object"&&"appendOverlayTo"in h?h.appendOverlayTo:I},_==null?void 0:_.floatingMenuRootNode);Ft(K(tt,{store:this.store,customStyles:_,children:K(et,{broadcastEvents:this.broadcastEvents,children:K(pd,{onLogIn:()=>this.loginViaPopup().catch(P=>E.warn(P.message))})})}),$)}else{let _=this.overlayContainerFactory("deepdesk-tab-completion",x||e,{appendTo:v,closestScrollElement:x,mirrorOverflow:!0,onRemove:()=>this.unmount()},n==null?void 0:n.rootNode),I=this.overlayContainerFactory("deepdesk-suggestions-overlay",x||e,{appendTo:v},n==null?void 0:n.suggestionsRootNode);Ft(K(tt,{store:this.store,customStyles:n,children:K(et,{broadcastEvents:this.broadcastEvents,children:K(Vc,{inputElement:e})})}),_),Ft(K(tt,{store:this.store,customStyles:n,children:K(et,{broadcastEvents:this.broadcastEvents,children:K(wc,{onLogIn:()=>this.loginViaPopup().catch(N=>E.warn(N.message))})})}),I)}Ft(K(tt,{store:this.store,customStyles:n,children:K(et,{broadcastEvents:this.broadcastEvents,children:K(cc,{})})}),this.createContainer("deepdesk-overlays"));let b;this.inputMediator.on("selection",_=>{clearTimeout(b),_===null?b=setTimeout(()=>{_!==null&&this.store.dispatch(ws(_))},500):this.store.dispatch(ws(_))}),this.inputMediator.on("disabled",()=>{var _;(_=this.inputMediator)==null||_.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{u&&this.notifySubmit()}),this.inputMediator.on("blur",()=>this.store.dispatch(Tt(!1))),this.inputMediator.on("focus",()=>this.store.dispatch(Tt(!0))),this.store.dispatch(ki({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),this.unmountHandlers.push(()=>{this.state.input.text!==""&&(this.store.dispatch(_e()),this.storeMetrics())}),this.whenConversationLoaded(()=>{var _;this.restoreMetrics(),this.refresh(),this.broadcastEvents.setSessionId((_=this.state.conversation.current)==null?void 0:_.sessionId)}),this.isMounted=!0}unmount(){var e;this.unmountHandlers.forEach(o=>o()),this.unmountHandlers=[],(e=this.inputMediator)==null||e.dispose(),this.broadcastEvents.cleanup(),this.isMounted=!1}renderWidget(e,o={}){if(this.widgetRoot&&E.warn("A widget was already rendered for this instance. Make sure to unmountWidget before rerendering"),!this.shouldRender)return;let{customStyles:n,showImages:s,isEmbedded:r}=o;this.widgetRoot=e,this.configure({showImages:s,isEmbedded:r}),Ft(K(tt,{store:this.store,customStyles:n,children:K(et,{broadcastEvents:this.broadcastEvents,children:K(Dp,{onLogIn:()=>this.loginViaPopup().catch(i=>E.warn(i.message))})})}),e),this.whenConversationLoaded(()=>{var i;this.broadcastEvents.setSessionId((i=this.state.conversation.current)==null?void 0:i.sessionId)})}unmountWidget(){this.widgetRoot&&is(this.widgetRoot),this.widgetRoot=null}setupHandlingTime(e){let o=ni(e,({isVisible:n})=>{n?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),o()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){od(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfigPromise=null;loadProfileConfig(){return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(this.loadProfileConfigPromise=Promise.resolve().then(async()=>{await this.store.dispatch(po());let e=Ke(this.state);e&&this.store.dispatch(qt({showSearch:e.search,showAutoflows:e.autoflows,showCustomMessages:e.customMessages,showImageSearch:e.imageSearch,showEntitiesCommand:e.entitiesCommand,showSummaryCommand:e.summarizer,showKnowledgeSearch:e.knowledgeAssistForAgents,recommendTextSuggestions:e.recommendTextSuggestions}))}),this.loadProfileConfigPromise)}async loginViaPopup(){let e=this.state.settings.adminUrl,o=new URL(e),n=await ai(o.origin);return new Promise((s,r)=>{let i=new MessageChannel,a=i.port1,l=new URL(n.config.platform.hasSso?`${e}/platform/sso/`:`${e}/admin/`);l.searchParams.append("redirect","/sdk/popup/close.html");let c=!1,p=()=>{d&&!d.closed&&d.close(),window.removeEventListener("message",u),clearInterval(g)};a.onmessage=async f=>{var m,v;if((m=f.data)!=null&&m.jwt)try{await this.deepdeskApi.exchangeTokenForAccessCookie((v=f.data)==null?void 0:v.jwt),await this.isLoggedIn(),this.broadcastEvents.send(ro),p(),c=!0,i.port1.close(),s()}catch(w){r(w)}};let d=window.open(l.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");d===null&&r(new Error("Popup blocked by browser"));let u=async f=>{var m;if(f.origin===l.origin)switch((m=f.data)==null?void 0:m.type){case"deepdesk-popup-loaded":{d==null||d.postMessage({type:"deepdesk-popup-create-channel"},l.origin,[i.port2]);break}case"deepdesk-popup-error":{p(),f.data.message==="Timeout"&&E.warn("Popup timed out. Check if the account's platform url is configured correctly."),r(new Error(f.data.message));break}}};window.addEventListener("message",u);let g=setInterval(()=>{d&&!d.closed||(p(),c||r(new Error("Popup closed by user")))},200);this.unmountHandlers.push(p)})}async checkForTrialMode(e){try{let{account:o}=await this.deepdeskApi.getPlatformConfig();if(!o.isTrial){this.shouldRender=!0;return}if(E.info("Trial is active"),!await this.deepdeskApi.checkUserExists(e))throw new Error("User is not in trial");this.shouldRender=!0}catch(o){let{message:n}=o;E.info(n),this.shouldRender=!1}}async refreshWidgetSuggestions(){if(!this.widgetRoot||this.shouldAbort())return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let o=Pn(this.state);try{o.forEach(({type:n})=>{n==="entities"?this.store.dispatch(pe()):this.store.dispatch(ce(n))})}catch(n){this.handleError(n)}}};async function Nv(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 Ov(t,e,o={}){let n=o.replace?rt(t,o.replace.start,o.replace.end):_o(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?rt(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
|
|
11
|
-
`).forEach((o,n)=>{n>0&&e.appendChild(document.createElement("br")),e.appendChild(document.createTextNode(o))}),e}function ud(t,e){return!t.contains(e)||e===t?null:e.parentNode===t?e:ud(t,e.parentNode)}async function
|
|
9
|
+
c32.4,32.4,47.8,70,47.8,115.2v70h11.9c9.4,0,17.9,3.4,24.7,10.2C462.1,250,465.5,257.7,465.5,267.9z`})})});import{jsx as id}from"react/jsx-runtime";var Rv={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},ad=({className:t,color:e})=>id("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:id("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:Rv[e||"pink"]})});var ld={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 ri={};j(ri,{enUS:()=>Pv,nlNL:()=>Lv});var Pv={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},Lv={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as Nv}from"react-redux";import{jsx as ii,jsxs as cd}from"react/jsx-runtime";var pd=({onLogIn:t})=>{let e=T(ri),o=C("productName"),n=Nv(),s=Mv(oe),r=y("FloatingMenu",ld);if(s===null)return null;let i=()=>{s===!0?n(W(!0)):t()};return cd("button",{className:Av(r.root,{[r.isLoggedIn]:s,[r.isLoggedOut]:!s}),onClick:i,children:[ii("div",{className:r.text,children:e(s?"search":"signin",{productName:o})}),cd("div",{className:r.icon,children:[ii(ad,{className:r.logo,color:"pink"}),s===!1&&ii(rd,{className:r.lock})]})]})};async function ai(t){let o=await new ve(t).get("/platform/config/",{version:null});return A(o)}import{jsx as K}from"react/jsx-runtime";var dd=nd("showTabHint",!0),ls=class t{static version="10.9.3-beta.6";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 je(c,{token:r,fetch:i}),this.version=n,this.instanceId=t.count++;let p={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[Yp({emit:(d,u,g)=>this.emit(d,u,g),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=>dd.update(d),sendEvent:(d,u)=>this.deepdeskApi.sendEvent(d,u)})]};o&&Object.assign(p,{deepdeskBrokerAPI:new bo(o)}),this.store=Jp(p),this.broadcastEvents=new Kp({debug:!0,deepdeskUrl:c,eventMap:El(this.store),createCustomChannel:l}),this.store.dispatch(qt),this.store.dispatch(no(dd.value())),this.store.dispatch(qt({locale:s,adminUrl:c,productName:a}))}get state(){return this.store.getState()}get settings(){return this.state.settings}get selectedTextSuggestion(){return this.state.input.textSuggestions[this.state.input.selectedSuggestionIndex]??null}hasConversation(){return!!this.state.conversation.current}conversationId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.id}sessionId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.sessionId}shouldAbort(){return this.state.conversation.isSupported===!1?(E.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(E.warn("Profile has not been loaded (yet)"),!0):(E.warn("No conversation loaded (yet)"),!0)}login(){return this.store.dispatch(Et(null)),this.store.dispatch(we()),new Promise(e=>{let o=this.store.subscribe(()=>{let n=this.store.getState();oe(n)&&Sl(n)!=="loading"&&(o(),e())});this.unmountHandlers.push(()=>{o()})})}async isLoggedIn(){return(await this.store.dispatch(we())).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){E.warn("Failed to attach user:",o)}}async isConversationSupported(e,o){return(await this.store.dispatch(bs({sessionId:e,options:o}))).payload}async createConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(No(e))).payload}async getConversationBySessionId(e,o){return this.hasConversation()&&this.sessionId()!==e&&this.resetConversation(),(await this.store.dispatch(Oo({sessionId:e,options:o}))).payload}async upsertConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(Cs(e))).payload}async postMessages(e){return(await this.store.dispatch(Ho(e))).payload}async updateConversation(e){return(await this.store.dispatch(Do(e))).payload}resetConversation(){this.store.dispatch(L()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}async getSummary(){let e=await this.store.dispatch(Ee());if(e.error)throw new Error(e.error.message);return e.payload.summary}configure(e){this.store.dispatch(qt(e))}setVisitorInfo(e){this.store.dispatch(Da(e))}async setAgentInfo(e){await this.store.dispatch(Yt(e))}async setAgentSettings(e){await this.store.dispatch(nr(e))}async getAgentSettings(){return(await this.store.dispatch(sr())).payload}async refresh(){if(this.shouldAbort())return Promise.resolve();this.inputMediator&&this.handleInputChanged(this.inputMediator.getText());let e=[];return this.store.dispatch(wn()),e.push(this.refreshWidgetSuggestions()),Promise.all(e).then(()=>{})}notifyInputChanged(e){this.store.dispatch(jo(e))}notifyKeyDown(e){this.store.dispatch(Uo(e))}notifyPaste(e,o){this.store.dispatch(Ni({text:e,selectionText:o}))}notifyCut(e){this.store.dispatch(Ai(e))}notifyExternalSuggestion(e){this.store.dispatch(ie(e)),this.store.dispatch(_e())}notifyEditSuggestion(e){this.store.dispatch(rl(e.contentType,e.suggestions)),this.store.dispatch(Ce({contentType:e.contentType,suggestion:typeof e.index=="number"?e.suggestions[e.index]:null}))}handleInputChanged(e){let{overlayCollapsed:o,openOverlayWhenTyping:n}=this.state.ui;o&&n&&this.store.dispatch(Fe({collapse:!1})),this.inputMediator&&this.store.dispatch(Ei({text:e,html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),!this.shouldAbort()&&(this.isMounted||this.store.dispatch(ge([])))}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(Mi(Fo(e))),e.key!=="Tab"&&!this.settings.showTextSuggestions)return;let c=()=>{o||!a||r&&(e.shiftKey||(this.store.dispatch(Ri()),i||this.stageSelectedSuggestion({inputType:"arrow"}),e.preventDefault()))},p=()=>{if(o||!a||!r||e.shiftKey)return;this.store.dispatch(Li());let{selectedSuggestionIndex:d}=this.state.input;e.preventDefault(),!i&&(d===-1?this.store.dispatch(Vt()):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(Me(-1)),this.state.input.selectedSuggestionIndex!==-1?(this.store.dispatch(Me(-1)),this.store.dispatch(Vt()),e.preventDefault()):o||(this.store.dispatch(Fe({collapse:!0})),this.store.dispatch(ml(!0)),e.preventDefault());return}case"Tab":{let{userCommitted:d}=this.state.input,u=d.text.substring(0,d.selection.end),{tabCompletionSuggestion:g}=this.state.input;this.store.dispatch(no(!1)),this.state.input.selectedSuggestionIndex>-1?this.stageSelectedSuggestion({inputType:"tab"}):!i&&this.settings.showTabCompletion&&g&&g.text.startsWith(u)&&(this.store.dispatch(ie({text:g.text,suggestion:g,eventMetrics:{inputType:"tab"},replace:"until-selection-end"})),this.store.dispatch(_e())),e.preventDefault();break}default:}}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(Oi()),this.store.dispatch(ge([]))}handlingTimeStart(){this.state.handlingTime.startTime||(E.info("Start handling time"),this.store.dispatch(jp()))}handlingTimeStop(){this.state.handlingTime.startTime&&(E.info("Stop handling time"),this.store.dispatch(rs()))}logSendMessage(e){let o=ei("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=ei("overlayInput",this.state,{version:this.version});e&&Object.assign(o,{text:e}),this.store.dispatch(Ii(this.state.overlayInput.metrics))}logHandlingTime(){let e=ed(this.state,{version:this.version});this.deepdeskApi.sendEventV1("Handling Time",e),this.store.dispatch(qp())}notifySubmit(e={}){this.shouldAbort()||(this.store.dispatch(_e()),this.store.dispatch(Ge(e.text??this.state.input.text)))}stageSelectedSuggestion(e){let o=this.state.input.selectedSuggestionIndex,{textSuggestions:n}=this.state.input;this.store.dispatch(ie({text:n[o].text,suggestion:n[o],eventMetrics:e,replace:"until-selection-end"}))}emit(e,o,n={}){let s=()=>{this.eventListeners[e]&&this.eventListeners[e].forEach(r=>{try{r(o)}catch(i){E.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),E.error(i)}})};this.inputMediator&&n.mayApplyChanges?this.inputMediator.applyChanges(s):s()}on(e,o){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o),()=>{this.off(e,o)}}off(e,o){if(!e&&!o){this.eventListeners={};return}let n;this.eventListeners[e]&&(n=this.eventListeners[e].indexOf(o),n>-1&&this.eventListeners[e].splice(n,1))}setConversationQuery(e){this.dynamicThunkObject.conversationQuery=e}whenConversationLoaded(e){let o=()=>this.loadProfileConfig().then(()=>e());this.hasConversation()&&o();let n=this.hasConversation();this.store.subscribe(()=>{this.hasConversation()!==n&&(n=this.hasConversation(),n&&o())})}overlayContainerFactory(e,o,n,s){let[r,i]=xt(o,n);return r.setAttribute("translate","no"),r.dataset.testid=e,s&&r.classList.add(s),this.unmountHandlers.push(()=>{as(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]=xt(r,{appendTo:document.body});a.dataset.testid=o,a.style.zIndex="2",a.appendChild(n),this.unmountHandlers.push(()=>{as(s),l()})}else document.body.appendChild(n);return s}createContainer(e,o=document.body){let n=window.getComputedStyle(o),s=document.createElement("div");return Xe(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(()=>{as(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),E.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()?(E.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(Hi(n.metrics))):E.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(!oi(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:u,insertLink:g,inputMediator:f,closestScrollSelector:m,appendOverlayTo:v,inlineSuggestions:w,floatingMenu:h}=o;this.configure({showStyleSuggestions:s,showTabCompletion:r,textSuggestionsCount:a,showMidSentenceSuggestions:l,showSuggestionsBeforePattern:c,showSuggestionsAfterPattern:p,showTextSuggestions:i,insertLink:g,isEmbedded:d,inlineSuggestions:w,floatingMenu:!!h}),o.automaticHandlingTime&&this.setupHandlingTime(e),Xe(e),this.inputMediator=f||(Ue(e)?new Oe(e):new Dt(e)),this.inputMediator.on("change",({plainText:_})=>{this.notifyInputChanged(_)}),this.inputMediator.on("updated",()=>{this.inputMediator&&this.store.dispatch(Di({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()}))}),this.inputMediator.on("keydown",_=>{this.notifyKeyDown(_)}),this.inputMediator.on("paste",({pastedText:_,selectionText:R})=>{this.notifyPaste(_,R)}),this.inputMediator.on("cut",({selectionText:_})=>{this.notifyCut(_)});let x=m&&td(e,m)||void 0;if(w){let{customStyles:_,appendOverlayTo:R}=o;if(Ue(e))throw new Error("[Deepdesk] Inline suggestion is not supported for textarea yet.");let N=this.createInlineContainer(e,"deepdesk-caret");Ft(K(tt,{store:this.store,customStyles:_,children:K(et,{broadcastEvents:this.broadcastEvents,children:K(fc,{})})}),N),this.inputMediator.on("caret",P=>{this.store.dispatch(ge([])),P?(N.style.display="block",N.style.top=`${P.top}px`,N.style.left=`${P.left}px`):N.style.display="none"});let $=this.overlayContainerFactory("floating-menu",x||e,{appendTo:typeof h=="object"&&"appendOverlayTo"in h?h.appendOverlayTo:R},_==null?void 0:_.floatingMenuRootNode);Ft(K(tt,{store:this.store,customStyles:_,children:K(et,{broadcastEvents:this.broadcastEvents,children:K(pd,{onLogIn:()=>this.loginViaPopup().catch(P=>E.warn(P.message))})})}),$)}else{let _=this.overlayContainerFactory("deepdesk-tab-completion",x||e,{appendTo:v,closestScrollElement:x,mirrorOverflow:!0,onRemove:()=>this.unmount()},n==null?void 0:n.rootNode),R=this.overlayContainerFactory("deepdesk-suggestions-overlay",x||e,{appendTo:v},n==null?void 0:n.suggestionsRootNode);Ft(K(tt,{store:this.store,customStyles:n,children:K(et,{broadcastEvents:this.broadcastEvents,children:K(Vc,{inputElement:e})})}),_),Ft(K(tt,{store:this.store,customStyles:n,children:K(et,{broadcastEvents:this.broadcastEvents,children:K(wc,{onLogIn:()=>this.loginViaPopup().catch(N=>E.warn(N.message))})})}),R)}Ft(K(tt,{store:this.store,customStyles:n,children:K(et,{broadcastEvents:this.broadcastEvents,children:K(cc,{})})}),this.createContainer("deepdesk-overlays"));let b;this.inputMediator.on("selection",_=>{clearTimeout(b),_===null?b=setTimeout(()=>{_!==null&&this.store.dispatch(Ts(_))},500):this.store.dispatch(Ts(_))}),this.inputMediator.on("disabled",()=>{var _;(_=this.inputMediator)==null||_.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{u&&this.notifySubmit()}),this.inputMediator.on("blur",()=>this.store.dispatch(Tt(!1))),this.inputMediator.on("focus",()=>this.store.dispatch(Tt(!0))),this.store.dispatch(ki({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),this.unmountHandlers.push(()=>{this.state.input.text!==""&&(this.store.dispatch(_e()),this.storeMetrics())}),this.whenConversationLoaded(()=>{var _;this.restoreMetrics(),this.refresh(),this.broadcastEvents.setSessionId((_=this.state.conversation.current)==null?void 0:_.sessionId)}),this.isMounted=!0}unmount(){var e;this.unmountHandlers.forEach(o=>o()),this.unmountHandlers=[],(e=this.inputMediator)==null||e.dispose(),this.broadcastEvents.cleanup(),this.isMounted=!1}renderWidget(e,o={}){if(this.widgetRoot&&E.warn("A widget was already rendered for this instance. Make sure to unmountWidget before rerendering"),!this.shouldRender)return;let{customStyles:n,showImages:s,isEmbedded:r}=o;this.widgetRoot=e,this.configure({showImages:s,isEmbedded:r}),Ft(K(tt,{store:this.store,customStyles:n,children:K(et,{broadcastEvents:this.broadcastEvents,children:K(Dp,{onLogIn:()=>this.loginViaPopup().catch(i=>E.warn(i.message))})})}),e),this.whenConversationLoaded(()=>{var i;this.broadcastEvents.setSessionId((i=this.state.conversation.current)==null?void 0:i.sessionId)})}unmountWidget(){this.widgetRoot&&as(this.widgetRoot),this.widgetRoot=null}setupHandlingTime(e){let o=ni(e,({isVisible:n})=>{n?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),o()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){od(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfigPromise=null;loadProfileConfig(){return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(this.loadProfileConfigPromise=Promise.resolve().then(async()=>{await this.store.dispatch(po());let e=Ke(this.state);e&&this.store.dispatch(qt({showSearch:e.search,showAutoflows:e.autoflows,showCustomMessages:e.customMessages,showImageSearch:e.imageSearch,showEntitiesCommand:e.entitiesCommand,showSummaryCommand:e.summarizer,showKnowledgeSearch:e.knowledgeAssistForAgents,recommendTextSuggestions:e.recommendTextSuggestions}))}),this.loadProfileConfigPromise)}async loginViaPopup(){let e=this.state.settings.adminUrl,o=new URL(e),n=await ai(o.origin);return new Promise((s,r)=>{let i=new MessageChannel,a=i.port1,l=new URL(n.config.platform.hasSso?`${e}/platform/sso/`:`${e}/admin/`);l.searchParams.append("redirect","/sdk/popup/close.html");let c=!1,p=()=>{d&&!d.closed&&d.close(),window.removeEventListener("message",u),clearInterval(g)};a.onmessage=async f=>{var m,v;if((m=f.data)!=null&&m.jwt)try{await this.deepdeskApi.exchangeTokenForAccessCookie((v=f.data)==null?void 0:v.jwt),await this.isLoggedIn(),this.broadcastEvents.send(ro),p(),c=!0,i.port1.close(),s()}catch(w){r(w)}};let d=window.open(l.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");d===null&&r(new Error("Popup blocked by browser"));let u=async f=>{var m;if(f.origin===l.origin)switch((m=f.data)==null?void 0:m.type){case"deepdesk-popup-loaded":{d==null||d.postMessage({type:"deepdesk-popup-create-channel"},l.origin,[i.port2]);break}case"deepdesk-popup-error":{p(),f.data.message==="Timeout"&&E.warn("Popup timed out. Check if the account's platform url is configured correctly."),r(new Error(f.data.message));break}}};window.addEventListener("message",u);let g=setInterval(()=>{d&&!d.closed||(p(),c||r(new Error("Popup closed by user")))},200);this.unmountHandlers.push(p)})}async checkForTrialMode(e){try{let{account:o}=await this.deepdeskApi.getPlatformConfig();if(!o.isTrial){this.shouldRender=!0;return}if(E.info("Trial is active"),!await this.deepdeskApi.checkUserExists(e))throw new Error("User is not in trial");this.shouldRender=!0}catch(o){let{message:n}=o;E.info(n),this.shouldRender=!1}}async refreshWidgetSuggestions(){if(!this.widgetRoot||this.shouldAbort())return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let o=Pn(this.state);try{o.forEach(({type:n})=>{n==="entities"?this.store.dispatch(pe()):this.store.dispatch(ce(n))})}catch(n){this.handleError(n)}}};async function Ov(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 Dv(t,e,o={}){let n=o.replace?rt(t,o.replace.start,o.replace.end):_o(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?rt(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 Hv(t){let e=document.createElement("template");return e.innerHTML=t,e.content}function Bv(t){let e=document.createDocumentFragment();return t.split(`
|
|
11
|
+
`).forEach((o,n)=>{n>0&&e.appendChild(document.createElement("br")),e.appendChild(document.createTextNode(o))}),e}function ud(t,e){return!t.contains(e)||e===t?null:e.parentNode===t?e:ud(t,e.parentNode)}async function Fv(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?Hv(e):Bv(e);if(o){let p=ud(t,l.startContainer)??t.firstChild;t.insertBefore(c,(p==null?void 0:p.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 Kv(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}async function Uv(t,e,o){await new je(t).authenticateWithKey(e,o)}async function zv(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 jv(t,e){let o=await zv(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,Dt as ContentEditableInput,je as DeepdeskAPI,ls as DeepdeskSDK,ve as HTTPClient,Ne as InputMediator,Ve as InputType,gs as KeyboardHint,ms as Label,Lo as Locale,qe as Section,hs as SectionList,ue as Sources,D as Suggestion,re as SuggestionList,Oe as TextAreaInput,ut as ToggleButton,jv as attachFile,Uv as authenticateWithKey,_o as createFullRange,xt as createOverlayContainer,rt as createRangeFromOffsets,Qt as escapeHTML,ai as fetchPlatformConfig,Kv as formatTextMarkup,os as getRangeOffsets,ns as getRangeText,Fv as insertCKEditor,oi as isSupportedInputElement,Dv as updateContentEditable,Ov as updateTextArea,y as useStyles,ni as waitForElementVisibilityChange};
|