@deepdesk/deepdesk-sdk 10.12.1-beta.1 → 10.12.1-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +7 -7
- package/dist/index.d.mts +103 -84
- package/dist/index.d.ts +103 -84
- package/dist/index.esm.js +7 -7
- package/dist/index.iife.js +14 -14
- package/input.css +1 -1
- package/package.json +1 -1
- package/styles/index.js +1 -1
- package/styles.css +1 -1
- package/widget.css +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
var Id=Object.defineProperty;var q=(t,e)=>{for(var o in e)Id(t,o,{get:e[o],enumerable:!0})};import ds from"classnames";import Md,{createContext as Nd,useContext as us,useEffect as Od,useState as Dd}from"react";import Rd,{useContext as Pd}from"react";import Ad from"classnames";var zt=Rd.createContext({});function y(t,e){let{debug:o,...n}=Pd(zt),s=n[t];return s?Object.entries(e).reduce((r,[i,a])=>{let l=s[i];return{...r,[i]:Ad(a,l,o?`${t}__${i}`:!1)}},{}):e}var ci={root:"_root_vr71j_1"};import{jsx as Io,jsxs as Ld}from"react/jsx-runtime";var Ro=()=>Ld("svg",{className:ci.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[Io("defs",{children:Io("style",{children:".cls-1 { fill: #b3b3b3; }"})}),Io("title",{children:"Failed loading image"}),Io("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 dt}from"react/jsx-runtime";var Po=Nd(ps),Hd=({title:t,src:e})=>{let o=us(Po),[n,s]=Dd(!1);return Od(()=>{s(!1)},[e]),dt("div",{className:o.imageWrapper,children:e&&!n?dt("img",{className:o.image,alt:t,src:e,onError:()=>s(!0)}):dt(Ro,{})})},Bd=({className:t,lineClamp:e=!1,cropText:o=!1,children:n})=>{let s=us(Po);return dt("div",{className:ds(s.content,t,{[s.contentIsCropped]:o,[s.lineClamp]:e}),children:n})},Fd=({as:t="h1",cropText:e=!1,className:o,children:n,...s})=>{let r=us(Po);return Md.createElement(t,{className:ds(r.title,o,{[r.contentIsCropped]:e}),...s},n)},Ao=({children:t})=>{let e=y("Card",ps);return dt("div",{className:ds(e.root),children:dt(Po.Provider,{value:e,children:t})})};Ao.Image=Hd;Ao.Content=Bd;Ao.Title=Fd;var F=Ao;import Kd from"classnames";var pi={root:"_root_cq1yq_1"};import{jsx as jd}from"react/jsx-runtime";var Ud={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},zd=({className:t,keyCode:e,...o})=>{let n=y("KeyboardHint",pi);return jd("span",{"data-key":Ud[e],className:Kd(t,n.root),...o})},gs=zd;import Vd from"classnames";var di={root:"_root_4a08n_1"};import{jsx as Wd}from"react/jsx-runtime";var qd=({className:t,children:e,...o})=>{let n=y("Label",di);return Wd("span",{...o,className:Vd(t,n.root),children:e})},ms=qd;var ui={root:"_root_jlggj_1",subTitleContainer:"_subTitleContainer_jlggj_5",subtitle:"_subtitle_jlggj_9",suggestions:"_suggestions_jlggj_17"};import{jsx as fs,jsxs as Gd}from"react/jsx-runtime";var $d=({title:t,children:e,type:o,...n})=>{let s=y("Section",ui);return Gd("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})]})},We=$d;import Xd from"classnames";import Zd from"react";var gi={root:"_root_19wxp_1"};import{jsx as Jd}from"react/jsx-runtime";var Qd=Zd.forwardRef(({className:t,children:e},o)=>{let n=y("SectionList",gi);return Jd("div",{ref:o,className:Xd(n.root,t),children:e})}),hs=Qd;import Lo from"classnames";import Yd,{createContext as eu,useCallback as tu,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 _e,jsxs as iu}from"react/jsx-runtime";var ut=eu(ys),ou=({fixed:t,children:e,...o})=>{let n=jt(ut);return _e("div",{...o,className:Lo(n.actions,{[n.actionsIsFixed]:t}),children:e})},nu=({className:t,primary:e,disabled:o,label:n,children:s})=>{let r=jt(ut);return iu("div",{className:Lo(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[n,_e("ul",{className:r.dropdownList,children:s})]})},su=({index:t,label:e,onClick:o})=>{let n=jt(ut);return _e("li",{className:n.dropdownItem,children:_e("button",{className:n.dropdownItemButton,type:"button","data-index":t,onClick:o,children:e})})},ru=({className:t,primary:e,disabled:o,onClick:n,label:s})=>{let r=jt(ut);return _e("button",{type:"button",className:Lo(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(ut);return _e("div",{className:e.labels,children:t.map(o=>_e("span",{className:e.label,children:o},o))})},gt=Yd.forwardRef(({className:t,selected:e,onClick:o,children:n,as:s="div",...r},i)=>{let a=y("Suggestion",ys),l=tu(c=>{c.preventDefault(),o&&o(c)},[o]);return _e(s,{...r,ref:i,className:Lo(t,a.root,{[a.isSelected]:e,[a.isClickable]:!!o}),onClick:l,children:_e(ut.Provider,{value:a,children:n})})});gt.Labels=vs;gt.Actions=ou;gt.ActionButton=ru;gt.DropdownButton=nu;gt.DropdownItem=su;var D=gt;import au from"classnames";var mi={root:"_root_fp74r_1",isWithDivider:"_isWithDivider_fp74r_9"};import{jsx as cu}from"react/jsx-runtime";var lu=({withDivider:t,children:e})=>{let o=y("SuggestionList",mi);return cu("div",{"data-testid":"suggestions-overlay-list",className:au(o.root,{[o.isWithDivider]:t}),children:e})},ie=lu;import pu from"classnames";var fi={root:"_root_1wpmq_1",isCollapsed:"_isCollapsed_1wpmq_17"};import{jsx as Ss}from"react/jsx-runtime";var du=({className:t,isCollapsed:e,title:o,onClick:n})=>{let s=y("ToggleButton",fi);return Ss("button",{type:"button",className:pu(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"})})})},mt=du;var hi=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,ft=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var yi=/x-deepdesk-(([a-z0-9\-_])+-version)/,ge=(f=>(f.SEARCH="search",f.TEMPLATE="template",f.ELASTIC_SEARCH="search-autocomplete",f.GPT="gpt",f.TRIE="trie",f.TRIE_WITH_TYPOS="trie-with-typos",f.SEMANTIC="semantic",f.TEXT_RECOMMENDATION="text_recommendation",f.URL_RECOMMENDATION="url_recommendation",f.LINK_RECOMMENDATION="link_recommendation",f.PERSONAL_COLLECTION="personal-collection",f.PERSONAL_COLLECTION_SEARCH="personal-collection-search",f.SEARCH_OVERLAY="search-overlay",f.SEARCH_PREVIEW="search-preview",f.SEARCH_URL="search-url",f))(ge||{}),$e=(r=>(r.ENTER="enter",r.TAB="tab",r.ARROW="arrow",r.HOTKEY="hotkey",r.MOUSE="mouse",r))($e||{});import{render as Ut,unmountComponentAtNode as as}from"react-dom";import{Fragment as eh}from"react";import{createSlice as uu}from"@reduxjs/toolkit";import{useSelector as gu}from"react-redux";var Mo=(o=>(o.NL_NL="nl-NL",o.EN_US="en-US",o))(Mo||{});var mu={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=uu({name:"settings",initialState:mu,reducers:{set(t,e){Object.entries(e.payload).forEach(o=>{let[n,s]=o;typeof s>"u"||(t[n]=s)})}}}),{set:Vt}=vi.actions,_s=t=>e=>e.settings[t],C=t=>gu(_s(t)),Si=vi.reducer;import{useState as Lm}from"react";import{useDispatch as Mm,useSelector as ur}from"react-redux";import{createAction as Ge,createSlice as Cu}from"@reduxjs/toolkit";import{diffChars as wu}from"diff";import{useSelector as Tu}from"react-redux";function _i(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function Me(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)=>Me(r,e[i],o-1)):_i(t)&&_i(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>Me(t[i],e[i],o-1)):!1}function fu(t){return Math.max(...t.map(e=>e.length))}function hu(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<fu(n);s++){let r=hu(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 yu=2;function xs(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let o=xi(t,yu);return o&&o.text!==e?o:t[0]}import{createAction as Su,createAsyncThunk as ht,createSlice as _u}from"@reduxjs/toolkit";var vu={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},w=vu;var bi={current:null,isSupported:null},L=Su("resetConversation"),No=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.sessionId)||null},Oo=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},yt=t=>t.conversation.isSupported,bs=ht("conversation/isSupported",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.isConversationSupported(t.sessionId,t.options)}),Do=ht("conversation/create",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.createConversation(t)}),Ho=ht("conversation/bySessionId",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.getConversationBySessionId(t.sessionId,t.options)}),Bo=ht("conversation/update",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Oo(e.getState());if(!n)throw new Error("No current conversation to update");return o.updateConversation(n,t)}),Cs=ht("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})})}),Fo=ht("conversation/postMessages",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Oo(e.getState());if(!n)throw new Error("No current conversation to update messages");return o.postMessages(n,t.map(s=>({...s})))}),xu=[Do.rejected,Ho.rejected,Bo.rejected,Fo.rejected].map(t=>t==null?void 0:t.toString()),bu=_u({name:"conversation",initialState:bi,reducers:{},extraReducers:t=>{t.addCase(bs.fulfilled,(e,o)=>{e.isSupported=o.payload}).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)=>{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(Bo.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Fo.fulfilled,(e,o)=>{e.current&&(e.current.messages=o.payload)}).addCase(L,()=>bi).addMatcher(e=>xu.includes(e.type),(e,o)=>{var n;throw w.info("Conversation action rejected",o.type,((n=o.error)==null?void 0:n.message)||"No message"),new Error(o.error.message)})}}),Ci=bu.reducer;var Ne={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 Uo(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 zo=Ge("input/replaceText"),jo=Ge("input/keyDown"),Xe=Ge("input/sendMessage"),Vo=Ge("input/sendEditSuggestionMessage"),qo=Ge("input/uiInputChange"),Wo=Ge("input/applyImageSuggestion"),W=Ge("input/sendEvent");function Ko(t){if(!t.stagedSuggestion)return;let{text:e,suggestion:{source:o,abVariant:n,abTestName:s,trainingJobs:r,sourceText:i,searchTerm:a,text:l},eventMetrics:{inputType:c},replace:p}=t.stagedSuggestion,d=o==="search"||o==="personal-collection-search",g=e.slice(t.userCommitted.text.substring(0,t.userCommitted.selection.start).length);(d||p==="selection")&&(g=e),t.stagedSuggestion.suggestion.source==="search-overlay"&&(g=l),t.userCommitted.text=t.text,t.userCommitted.selection=t.selection,t.metrics.textSuggestions.push({text:g,source:o,abVariant:n,abTestName:s,inputType:c,sourceText:i,trainingJobs:r||[],searchTerm:d?t.userCommitted.text:a}),t.stagedSuggestion=null,t.textSuggestions=[],t.selectedSuggestionIndex=-1}var wi=t=>Cu({name:t,initialState:Ne,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,{...Ne,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&&(Me(e.selection,o.payload)||(e.selection=o.payload,e.userCommitted.selection=e.selection,e.stagedSuggestion&&Ko(e)))},platformInput(e,o){let{text:n,html:s,selection:r}=o.payload;r&&(e.selection.start=r.start,e.selection.end=r.end),e.text=n,e.html=s||null},userInput(e,o){var i,a,l,c;if(e.previousKeyDownEvent){let{key:p,shiftKey:d,ctrlKey:g,metaKey:u,altKey:m}=e.previousKeyDownEvent;switch(p){case"Enter":d&&(e.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:f}=e,{text:h}=o.payload,E=wu(f,h);f.length-h.length>1&&e.metrics.deletions.push(...E.filter(_=>_.removed).map(_=>_.value)),e.metrics.numCharsDeleted+=f.length-h.length;break}case"C":case"V":case"X":if(!g&&!u){e.metrics.numCharsTyped+=1;let f=((i=e.selection)==null?void 0:i.start)!==void 0&&((a=e.selection)==null?void 0:a.end)!==void 0?e.text.substring(e.selection.start,e.selection.end):null;f&&f.length>0&&(e.metrics.numCharsDeleted+=f.length,e.metrics.deletions.push(f))}break;case"Shift":break;default:if(!g&&!u&&!m){e.metrics.numCharsTyped+=1;let f=((l=e.selection)==null?void 0:l.start)!==void 0&&((c=e.selection)==null?void 0:c.end)!==void 0?e.text.substring(e.selection.start,e.selection.end):null;f&&f.length>0&&(e.metrics.numCharsDeleted+=f.length,e.metrics.deletions.push(f))}}}!e.metrics.agentStartedTypingTimestamp&&o.payload.text!==e.text&&(e.metrics.agentStartedTypingTimestamp=Date.now()),o.payload.text===""&&(e.metrics=Ne.metrics,e.textSuggestions=[],e.stagedSuggestion=null),e.text!==o.payload.text&&Ko(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"&&Ko(e)},commitSuggestion(e){Ko(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=Ne.tabCompletionSuggestion,o.previousKeyDownEvent=Ne.previousKeyDownEvent,o.textSuggestions=Ne.textSuggestions,o.selectedSuggestionIndex=Ne.selectedSuggestionIndex,o.metrics=Ne.metrics})}}),ws=wi("input"),vt=t=>t.input.userCommitted.text.substring(0,t.input.userCommitted.selection.end),Eu=t=>t.input.selection,Ti=()=>Tu(Eu),{userInput:Ei,changeSelection:Ts,initialInput:ki,mergeMetrics:Ii,nextTextSuggestionIndex:Ri,offeredTextSuggestion:Pi,previousTextSuggestionIndex:Ai,registerCut:Li,registerKeyDown:Mi,registerPaste:Ni,reset:Oi,resetToCommitted:qt,platformInput:Di,setSelectedTextSuggestionIndex:Oe,setTextSuggestions:me,stageSuggestion:ae,commitSuggestion:xe,setMetrics:Hi}=ws.actions,Q=wi("overlay");import{useEffect as Fi,useRef as Ki}from"react";var Bi={root:"_root_1h19b_1",content:"_content_1h19b_24"};import{jsx as Ui}from"react/jsx-runtime";var ku=({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 g,u;let p=m=>{m.key==="Escape"&&(m.preventDefault(),m.stopPropagation(),s())},d=m=>{let f=window.getSelection();f!=null&&f.toString()||m.target===a.current&&t&&n()};return(g=a.current)==null||g.addEventListener("click",d),(u=a.current)==null||u.addEventListener("keyup",p),()=>{var m,f;(m=a.current)==null||m.removeEventListener("click",d),(f=a.current)==null||f.removeEventListener("keyup",p)}},[a,l,s,n]),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},St=ku;import{useEffect as Ya}from"react";import{useDispatch as gm,useSelector as mm}from"react-redux";var Es={};q(Es,{enUS:()=>Iu,nlNL:()=>Ru});var Iu={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?"}]},Ru={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_jcr8j_1",content:"_content_jcr8j_3",title:"_title_jcr8j_7",actions:"_actions_jcr8j_15",pagination:"_pagination_jcr8j_19",primaryButton:"_primaryButton_jcr8j_50",primaryButtons:"_primaryButtons_jcr8j_54"};import{createContext as Uu,useContext as zu}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 oe=function(){return oe=Object.assign||function(e){for(var o,n=1,s=arguments.length;n<s;n++){o=arguments[n];for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},oe.apply(this,arguments)};function 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 $o(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 Go;(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"})(Go||(Go={}));var Xo=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var le;(function(t){t[t.literal=0]="literal",t[t.argument=1]="argument",t[t.number=2]="number",t[t.date=3]="date",t[t.time=4]="time",t[t.select=5]="select",t[t.plural=6]="plural",t[t.pound=7]="pound",t[t.tag=8]="tag"})(le||(le={}));var Zo;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(Zo||(Zo={}));function Is(t){return t.type===le.literal}function Vi(t){return t.type===le.argument}function Qo(t){return t.type===le.number}function Jo(t){return t.type===le.date}function Yo(t){return t.type===le.time}function en(t){return t.type===le.select}function tn(t){return t.type===le.plural}function qi(t){return t.type===le.pound}function on(t){return t.type===le.tag}function nn(t){return!!(t&&typeof t=="object"&&t.type===Zo.number)}function $t(t){return!!(t&&typeof t=="object"&&t.type===Zo.dateTime)}function Rs(t){t.forEach(function(e){if(delete e.location,en(e)||tn(e))for(var o in e.options)delete e.options[o].location,Rs(e.options[o].value);else Qo(e)&&nn(e.style)||(Jo(e)||Yo(e))&&$t(e.style)?delete e.style.location:on(e)&&Rs(e.children)})}function Wi(t,e){e===void 0&&(e={}),e=oe({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var o=new Xo(t,e).parse();if(o.err){var n=SyntaxError(Go[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 sn(t,e){var o=e&&e.cache?e.cache:Ou,n=e&&e.serializer?e.serializer:Nu,s=e&&e.strategy?e.strategy:Au;return s(t,{cache:o,serializer:n})}function Pu(t){return t==null||typeof t=="number"||typeof t=="boolean"}function $i(t,e,o,n){var s=Pu(n)?n:o(n),r=e.get(s);return typeof r>"u"&&(r=t.call(this,n),e.set(s,r)),r}function Gi(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 Au(t,e){var o=t.length===1?$i:Gi;return Ps(t,this,o,e.cache.create(),e.serializer)}function Lu(t,e){return Ps(t,this,Gi,e.cache.create(),e.serializer)}function Mu(t,e){return Ps(t,this,$i,e.cache.create(),e.serializer)}var Nu=function(){return JSON.stringify(arguments)};function As(){this.cache=Object.create(null)}As.prototype.get=function(t){return this.cache[t]};As.prototype.set=function(t,e){this.cache[t]=e};var Ou={create:function(){return new As}},rn={variadic:Lu,monadic:Mu};var Ze;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(Ze||(Ze={}));var Gt=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 Ls=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('", "'),'"'),Ze.INVALID_VALUE,r)||this}return e}(Gt);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),Ze.INVALID_VALUE,s)||this}return e}(Gt);var Zi=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,'"'),Ze.MISSING_VALUE,n)||this}return e}(Gt);var $;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})($||($={}));function Du(t){return t.length<2?t:t.reduce(function(e,o){var n=e[e.length-1];return!n||n.type!==$.literal||o.type!==$.literal?e.push(o):n.value+=o.value,e},[])}function Hu(t){return typeof t=="function"}function Xt(t,e,o,n,s,r,i){if(t.length===1&&Is(t[0]))return[{type:$.literal,value:t[0].value}];for(var a=[],l=0,c=t;l<c.length;l++){var p=c[l];if(Is(p)){a.push({type:$.literal,value:p.value});continue}if(qi(p)){typeof r=="number"&&a.push({type:$.literal,value:o.getNumberFormat(e).format(r)});continue}var d=p.value;if(!(s&&d in s))throw new Zi(d,i);var g=s[d];if(Vi(p)){(!g||typeof g=="string"||typeof g=="number")&&(g=typeof g=="string"||typeof g=="number"?String(g):""),a.push({type:typeof g=="string"?$.literal:$.object,value:g});continue}if(Jo(p)){var u=typeof p.style=="string"?n.date[p.style]:$t(p.style)?p.style.parsedOptions:void 0;a.push({type:$.literal,value:o.getDateTimeFormat(e,u).format(g)});continue}if(Yo(p)){var u=typeof p.style=="string"?n.time[p.style]:$t(p.style)?p.style.parsedOptions:n.time.medium;a.push({type:$.literal,value:o.getDateTimeFormat(e,u).format(g)});continue}if(Qo(p)){var u=typeof p.style=="string"?n.number[p.style]:nn(p.style)?p.style.parsedOptions:void 0;u&&u.scale&&(g=g*(u.scale||1)),a.push({type:$.literal,value:o.getNumberFormat(e,u).format(g)});continue}if(on(p)){var m=p.children,f=p.value,h=s[f];if(!Hu(h))throw new Xi(f,"function",i);var E=Xt(m,e,o,n,s,r),_=h(E.map(function(v){return v.value}));Array.isArray(_)||(_=[_]),a.push.apply(a,_.map(function(v){return{type:typeof v=="string"?$.literal:$.object,value:v}}))}if(en(p)){var x=p.options[g]||p.options.other;if(!x)throw new Ls(p.value,g,Object.keys(p.options),i);a.push.apply(a,Xt(x.value,e,o,n,s));continue}if(tn(p)){var x=p.options["=".concat(g)];if(!x){if(!Intl.PluralRules)throw new Gt(`Intl.PluralRules is not available in this environment.
|
|
1
|
+
var jd=Object.defineProperty;var V=(t,e)=>{for(var o in e)jd(t,o,{get:e[o],enumerable:!0})};import fs from"classnames";import Xd,{createContext as Zd,useContext as Oo,useEffect as Qd,useState as Jd}from"react";import Vd,{useContext as qd}from"react";import Wd from"classnames";var qt=Vd.createContext({});function y(t,e){let{debug:o,...n}=qd(qt),s=n[t];return s?Object.entries(e).reduce((r,[i,a])=>{let l=s[i];return{...r,[i]:Wd(a,l,o?`${t}__${i}`:!1)}},{}):e}import{jsx as mi,jsxs as $d}from"react/jsx-runtime";var fi=({className:t})=>$d("svg",{viewBox:"0 0 12 12",version:"1.1",xmlns:"http://www.w3.org/2000/svg",className:t,children:[mi("line",{x1:"1",y1:"11",x2:"11",y2:"1",stroke:"black",strokeWidth:"2"}),mi("line",{x1:"1",y1:"1",x2:"11",y2:"11",stroke:"black",strokeWidth:"2"})]});var hi={root:"_root_vr71j_1"};import{jsx as Mo,jsxs as Gd}from"react/jsx-runtime";var No=()=>Gd("svg",{className:hi.root,width:"185",height:"170",viewBox:"0 0 185 170",xmlns:"http://www.w3.org/2000/svg",children:[Mo("defs",{children:Mo("style",{children:".cls-1 { fill: #b3b3b3; }"})}),Mo("title",{children:"Failed loading image"}),Mo("path",{className:"cls-1",d:"M15 130.896V16.994c0-1.097.898-1.994 2.007-1.994h150.986A2 2 0 0 1 170 16.994v69.147L133.015 51 87.26 120.377l-35.863-17.758L15 130.896zM2 0C.895 0 0 .887 0 2v166c0 1.105.887 2 2 2h181c1.105 0 2-.887 2-2V2c0-1.105-.887-2-2-2H2zm49 72c11.046 0 20-9.178 20-20.5S62.046 31 51 31s-20 9.178-20 20.5S39.954 72 51 72z",fillRule:"evenodd"})]});var ms={root:"_root_15d2a_1",imageWrapper:"_imageWrapper_15d2a_7",image:"_image_15d2a_7",content:"_content_15d2a_24",title:"_title_15d2a_35",contentIsCropped:"_contentIsCropped_15d2a_45",lineClamp:"_lineClamp_15d2a_51",closeIcon:"_closeIcon_15d2a_58"};import{jsx as Ne}from"react/jsx-runtime";var Wt=Zd(ms),Yd=({title:t,src:e})=>{let o=Oo(Wt),[n,s]=Jd(!1);return Qd(()=>{s(!1)},[e]),Ne("div",{className:o.imageWrapper,children:e&&!n?Ne("img",{className:o.image,alt:t,src:e,onError:()=>s(!0)}):Ne(No,{})})},eu=({className:t,lineClamp:e=!1,cropText:o=!1,children:n})=>{let s=Oo(Wt);return Ne("div",{className:fs(s.content,t,{[s.contentIsCropped]:o,[s.lineClamp]:e}),children:n})},tu=({as:t="h1",cropText:e=!1,className:o,children:n,...s})=>{let r=Oo(Wt);return Xd.createElement(t,{className:fs(r.title,o,{[r.contentIsCropped]:e}),...s},n)},ou=({className:t,title:e,...o})=>{let n=Oo(Wt);return Ne("div",{className:fs(n.closeIcon,t),title:e,role:"button","aria-label":e,...o,children:Ne(fi,{})})},$t=({children:t})=>{let e=y("Card",ms);return Ne("div",{className:e.root,children:Ne(Wt.Provider,{value:e,children:t})})};$t.Image=Yd;$t.Content=eu;$t.Title=tu;$t.CloseIcon=ou;var O=$t;import nu from"classnames";var yi={root:"_root_cq1yq_1"};import{jsx as iu}from"react/jsx-runtime";var su={"arrow-up":"\u25B2","arrow-down":"\u25BC",tab:"tab",esc:"Esc",enter:"\u21B5"},ru=({className:t,keyCode:e,...o})=>{let n=y("KeyboardHint",yi);return iu("span",{"data-key":su[e],className:nu(t,n.root),...o})},hs=ru;import au from"classnames";var vi={root:"_root_4a08n_1"};import{jsx as cu}from"react/jsx-runtime";var lu=({className:t,children:e,...o})=>{let n=y("Label",vi);return cu("span",{...o,className:au(t,n.root),children:e})},ys=lu;var Si={root:"_root_jlggj_1",subTitleContainer:"_subTitleContainer_jlggj_5",subtitle:"_subtitle_jlggj_9",suggestions:"_suggestions_jlggj_17"};import{jsx as vs,jsxs as du}from"react/jsx-runtime";var pu=({title:t,children:e,type:o,...n})=>{let s=y("Section",Si);return du("section",{...n,className:s.root,"data-section-type":o,children:[t&&vs("div",{className:s.subTitleContainer,children:vs("span",{className:s.subtitle,children:t})}),vs("div",{className:s.suggestions,children:e})]})},Oe=pu;import uu from"classnames";import gu from"react";var _i={root:"_root_19wxp_1"};import{jsx as fu}from"react/jsx-runtime";var mu=gu.forwardRef(({className:t,children:e},o)=>{let n=y("SectionList",_i);return fu("div",{ref:o,className:uu(n.root,t),children:e})}),Ss=mu;import Do from"classnames";import hu,{createContext as yu,useCallback as vu,useContext as Gt}from"react";var _s={root:"_root_ipo0b_11",fadein:"_fadein_ipo0b_1",isClickable:"_isClickable_ipo0b_46",isSelected:"_isSelected_ipo0b_51",actions:"_actions_ipo0b_75",actionsIsFixed:"_actionsIsFixed_ipo0b_97",actionButton:"_actionButton_ipo0b_105",dropdownList:"_dropdownList_ipo0b_126",dropdownButton:"_dropdownButton_ipo0b_141",dropdownItem:"_dropdownItem_ipo0b_151",dropdownItemButton:"_dropdownItemButton_ipo0b_160",actionButtonIsPrimary:"_actionButtonIsPrimary_ipo0b_174",actionButtonIsDisabled:"_actionButtonIsDisabled_ipo0b_178",labels:"_labels_ipo0b_186",label:"_label_ipo0b_186"};import{jsx as _e,jsxs as Cu}from"react/jsx-runtime";var gt=yu(_s),Su=({fixed:t,children:e,...o})=>{let n=Gt(gt);return _e("div",{...o,className:Do(n.actions,{[n.actionsIsFixed]:t}),children:e})},_u=({className:t,primary:e,disabled:o,label:n,children:s})=>{let r=Gt(gt);return Cu("div",{className:Do(t,r.actionButton,r.dropdownButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onMouseDown:i=>i.stopPropagation(),onClick:i=>i.stopPropagation(),children:[n,_e("ul",{className:r.dropdownList,children:s})]})},xu=({index:t,label:e,onClick:o})=>{let n=Gt(gt);return _e("li",{className:n.dropdownItem,children:_e("button",{className:n.dropdownItemButton,type:"button","data-index":t,onClick:o,children:e})})},bu=({className:t,primary:e,disabled:o,onClick:n,label:s})=>{let r=Gt(gt);return _e("button",{type:"button",className:Do(t,r.actionButton,{[r.actionButtonIsPrimary]:e,[r.actionButtonIsDisabled]:o}),onClick:n??(i=>i.stopPropagation()),disabled:o,"aria-hidden":o,children:s})},xs=({labels:t})=>{let e=Gt(gt);return _e("div",{className:e.labels,children:t.map(o=>_e("span",{className:e.label,children:o},o))})},mt=hu.forwardRef(({className:t,selected:e,onClick:o,children:n,as:s="div",...r},i)=>{let a=y("Suggestion",_s),l=vu(c=>{c.preventDefault(),o&&o(c)},[o]);return _e(s,{...r,ref:i,className:Do(t,a.root,{[a.isSelected]:e,[a.isClickable]:!!o}),onClick:l,children:_e(gt.Provider,{value:a,children:n})})});mt.Labels=xs;mt.Actions=Su;mt.ActionButton=bu;mt.DropdownButton=_u;mt.DropdownItem=xu;var M=mt;import wu from"classnames";var xi={root:"_root_fp74r_1",isWithDivider:"_isWithDivider_fp74r_9"};import{jsx as Eu}from"react/jsx-runtime";var Tu=({withDivider:t,children:e})=>{let o=y("SuggestionList",xi);return Eu("div",{"data-testid":"suggestions-overlay-list",className:wu(o.root,{[o.isWithDivider]:t}),children:e})},re=Tu;import ku from"classnames";var bi={root:"_root_1wpmq_1",isCollapsed:"_isCollapsed_1wpmq_17"};import{jsx as bs}from"react/jsx-runtime";var Iu=({className:t,isCollapsed:e,title:o,onClick:n})=>{let s=y("ToggleButton",bi);return bs("button",{type:"button",className:ku(s.root,t,{[s.isCollapsed]:e}),onClick:n,title:o,children:bs("svg",{width:"14",height:"8",viewBox:"-2.5 -5 75 60",preserveAspectRatio:"none",children:bs("path",{d:"M0,0 l35,50 l35,-50",fill:"none",stroke:"grey",strokeLinecap:"round",strokeWidth:"6"})})})},ft=Iu;var Ci=/(?:[.,;:!?\\n]|:\\)|:\\(|:-\\)|:-\\()/g,ht=/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\})/g;var wi=/x-deepdesk-(([a-z0-9\-_])+-version)/,ge=(f=>(f.SEARCH="search",f.TEMPLATE="template",f.ELASTIC_SEARCH="search-autocomplete",f.GPT="gpt",f.TRIE="trie",f.TRIE_WITH_TYPOS="trie-with-typos",f.SEMANTIC="semantic",f.TEXT_RECOMMENDATION="text_recommendation",f.URL_RECOMMENDATION="url_recommendation",f.LINK_RECOMMENDATION="link_recommendation",f.PERSONAL_COLLECTION="personal-collection",f.PERSONAL_COLLECTION_SEARCH="personal-collection-search",f.SEARCH_OVERLAY="search-overlay",f.SEARCH_PREVIEW="search-preview",f.SEARCH_URL="search-url",f))(ge||{}),Xe=(r=>(r.ENTER="enter",r.TAB="tab",r.ARROW="arrow",r.HOTKEY="hotkey",r.MOUSE="mouse",r))(Xe||{});import{render as zt,unmountComponentAtNode as ds}from"react-dom";import{Fragment as xh}from"react";import{createSlice as Ru}from"@reduxjs/toolkit";import{useSelector as Pu}from"react-redux";var Ho=(o=>(o.NL_NL="nl-NL",o.EN_US="en-US",o))(Ho||{});var Au={locale:"en-US",deanonymize:!1,fallbackImage:!1,isEmbedded:!1,showAutoflows:!1,showCustomMessages:!1,showImages:!1,showSearch:!1,showImageSearch:!1,showStyleSuggestions:!1,showMidSentenceSuggestions:!1,showSuggestionsBeforePattern:!1,showSuggestionsAfterPattern:!1,showTabCompletion:!0,showTextSuggestions:!0,showEntitiesCommand:!1,showSummaryCommand:!1,showKnowledgeSearch:!1,textSuggestionsCount:3,recommendTextSuggestions:!0,searchTriggerKey:"k",visible:!0,insertLink:!1,inlineSuggestions:!1,floatingMenu:!1,adminUrl:void 0,productName:"Deepdesk"},Ti=Ru({name:"settings",initialState:Au,reducers:{set(t,e){Object.entries(e.payload).forEach(o=>{let[n,s]=o;typeof s>"u"||(t[n]=s)})}}}),{set:Xt}=Ti.actions,Cs=t=>e=>e.settings[t],C=t=>Pu(Cs(t)),Ei=Ti.reducer;import{useState as Ym}from"react";import{useDispatch as ef,useSelector as yr}from"react-redux";import{createAction as Ze,createSlice as Ku}from"@reduxjs/toolkit";import{diffChars as Uu}from"diff";import{useSelector as zu}from"react-redux";function ki(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}function De(t,e,o=10){let n=typeof t,s=typeof e;if(o===0)throw new Error("Max depth deepEqual, possible circular references?");return n!==s?!1:t==null||n==="string"||n==="number"||n==="boolean"?t===e:Array.isArray(t)&&Array.isArray(e)?t.length!==e.length?!1:t.every((r,i)=>De(r,e[i],o-1)):ki(t)&&ki(e)?Object.keys(t).length!==Object.keys(e).length?!1:Object.keys(t).every(i=>De(t[i],e[i],o-1)):!1}function Lu(t){return Math.max(...t.map(e=>e.length))}function Mu(t,e){let o=t.reduce((n,s)=>{if(s){let r=n[s]?n[s]+1:1;return{...n,[s]:r}}return n},{});return Object.keys(o).reduce((n,s)=>(o[s]<e&&n.push(s),n),[])}function Ii(t,e){let n=[...t.map(({text:s})=>s.split(/\b(\w+)\b/))];for(let s=0;s<Lu(n);s++){let r=Mu(n.map(a=>a[s]),e),i=n.filter(a=>!r.includes(a[s]));if(i.length>=e)n=i;else return{text:n[0].slice(0,s).join("").replace(/ (\?| |!|\.|,|\n)/g,"$1").trimEnd(),source:"mixed"}}}var Nu=2;function ws(t,e=""){if(t.length===0)return;if(t.length===1)return t[0];let o=Ii(t,Nu);return o&&o.text!==e?o:t[0]}import{createAction as Du,createAsyncThunk as yt,createSlice as Hu}from"@reduxjs/toolkit";var Ou={info(...t){console.info("[Deepdesk]",...t)},warn(...t){console.warn("[Deepdesk]",...t)},error(...t){console.error("[Deepdesk]",...t)}},w=Ou;var Ri={current:null,isSupported:null},P=Du("resetConversation"),Bo=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.sessionId)||null},Fo=t=>{let{current:e}=t.conversation;return(e==null?void 0:e.id)||null},vt=t=>t.conversation.isSupported,Ts=yt("conversation/isSupported",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.isConversationSupported(t.sessionId,t.options)}),Ko=yt("conversation/create",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.createConversation(t)}),Uo=yt("conversation/bySessionId",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.getConversationBySessionId(t.sessionId,t.options)}),zo=yt("conversation/update",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Fo(e.getState());if(!n)throw new Error("No current conversation to update");return o.updateConversation(n,t)}),Es=yt("conversation/upsert",(t,e)=>{let{deepdeskAPI:o}=e.extra;return o.getConversationBySessionId(t.sessionId).catch(()=>null).then(n=>{if(!n)return o.createConversation(t);let{agentId:s,agentName:r,agentEmail:i,agentNickname:a,tags:l}=t;return o.updateConversation(n.id,{agentId:s,agentEmail:i,agentName:r,agentNickname:a,tags:l})})}),jo=yt("conversation/postMessages",(t,e)=>{let{deepdeskAPI:o}=e.extra,n=Fo(e.getState());if(!n)throw new Error("No current conversation to update messages");return o.postMessages(n,t.map(s=>({...s})))}),Bu=[Ko.rejected,Uo.rejected,zo.rejected,jo.rejected].map(t=>t==null?void 0:t.toString()),Fu=Hu({name:"conversation",initialState:Ri,reducers:{},extraReducers:t=>{t.addCase(Ts.fulfilled,(e,o)=>{e.isSupported=o.payload}).addCase(Ko.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Uo.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(Es.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(zo.fulfilled,(e,o)=>{var n;e.current=o.payload,e.isSupported=((n=o.payload)==null?void 0:n.hasActiveProfile)??null}).addCase(jo.fulfilled,(e,o)=>{e.current&&(e.current.messages=o.payload)}).addCase(P,()=>Ri).addMatcher(e=>Bu.includes(e.type),(e,o)=>{var n;throw w.info("Conversation action rejected",o.type,((n=o.error)==null?void 0:n.message)||"No message"),new Error(o.error.message)})}}),Pi=Fu.reducer;var He={text:"",html:null,selection:{start:0,end:0},stagedSuggestion:null,userCommitted:{text:"",selection:{start:0,end:0}},tabCompletionSuggestion:void 0,previousKeyDownEvent:null,textSuggestions:[],selectedSuggestionIndex:-1,metrics:{numCharsTyped:0,numCharsPasted:0,numCharsCut:0,numCharsDeleted:0,numPaste:0,agentStartedTypingTimestamp:null,externalTimeTotalSeconds:null,pastes:[],deletions:[],offeredTextSuggestions:[],textSuggestions:[],cuts:[]}};function qo(t){let{key:e,shiftKey:o,ctrlKey:n,metaKey:s,altKey:r}=t;return{key:e,shiftKey:o,ctrlKey:n,metaKey:s,altKey:r}}var Wo=Ze("input/replaceText"),$o=Ze("input/keyDown"),Qe=Ze("input/sendMessage"),Go=Ze("input/sendEditSuggestionMessage"),Xo=Ze("input/uiInputChange"),Zo=Ze("input/applyImageSuggestion"),W=Ze("input/sendEvent");function Vo(t){if(!t.stagedSuggestion)return;let{text:e,suggestion:{source:o,abVariant:n,abTestName:s,trainingJobs:r,sourceText:i,searchTerm:a,text:l},eventMetrics:{inputType:c},replace:p}=t.stagedSuggestion,d=o==="search"||o==="personal-collection-search",g=e.slice(t.userCommitted.text.substring(0,t.userCommitted.selection.start).length);(d||p==="selection")&&(g=e),t.stagedSuggestion.suggestion.source==="search-overlay"&&(g=l),t.userCommitted.text=t.text,t.userCommitted.selection=t.selection,t.metrics.textSuggestions.push({text:g,source:o,abVariant:n,abTestName:s,inputType:c,sourceText:i,trainingJobs:r||[],searchTerm:d?t.userCommitted.text:a}),t.stagedSuggestion=null,t.textSuggestions=[],t.selectedSuggestionIndex=-1}var Ai=t=>Ku({name:t,initialState:He,reducers:{initialInput(e,o){let{text:n,selection:s,html:r}=o.payload;e.text=n,e.selection.start=(s==null?void 0:s.start)??n.length,e.selection.end=(s==null?void 0:s.end)??n.length,e.userCommitted.text=n,e.userCommitted.selection.start=(s==null?void 0:s.start)??n.length,e.userCommitted.selection.end=(s==null?void 0:s.end)??n.length,e.html=r||null},reset(e){Object.assign(e,{...He,selection:e.selection})},resetToCommitted(e){e.text=e.userCommitted.text,e.selection=e.userCommitted.selection,e.stagedSuggestion=null,e.tabCompletionSuggestion=ws(e.textSuggestions,e.userCommitted.text)},changeSelection(e,o){o.payload&&(De(e.selection,o.payload)||(e.selection=o.payload,e.userCommitted.selection=e.selection,e.stagedSuggestion&&Vo(e)))},platformInput(e,o){let{text:n,html:s,selection:r}=o.payload;r&&(e.selection.start=r.start,e.selection.end=r.end),e.text=n,e.html=s||null},userInput(e,o){var i,a,l,c;if(e.previousKeyDownEvent){let{key:p,shiftKey:d,ctrlKey:g,metaKey:u,altKey:m}=e.previousKeyDownEvent;switch(p){case"Enter":d&&(e.metrics.numCharsTyped+=1);break;case"Backspace":case"Delete":{let{text:f}=e,{text:h}=o.payload,E=Uu(f,h);f.length-h.length>1&&e.metrics.deletions.push(...E.filter(x=>x.removed).map(x=>x.value)),e.metrics.numCharsDeleted+=f.length-h.length;break}case"C":case"V":case"X":if(!g&&!u){e.metrics.numCharsTyped+=1;let f=((i=e.selection)==null?void 0:i.start)!==void 0&&((a=e.selection)==null?void 0:a.end)!==void 0?e.text.substring(e.selection.start,e.selection.end):null;f&&f.length>0&&(e.metrics.numCharsDeleted+=f.length,e.metrics.deletions.push(f))}break;case"Shift":break;default:if(!g&&!u&&!m){e.metrics.numCharsTyped+=1;let f=((l=e.selection)==null?void 0:l.start)!==void 0&&((c=e.selection)==null?void 0:c.end)!==void 0?e.text.substring(e.selection.start,e.selection.end):null;f&&f.length>0&&(e.metrics.numCharsDeleted+=f.length,e.metrics.deletions.push(f))}}}!e.metrics.agentStartedTypingTimestamp&&o.payload.text!==e.text&&(e.metrics.agentStartedTypingTimestamp=Date.now()),o.payload.text===""&&(e.metrics=He.metrics,e.textSuggestions=[],e.stagedSuggestion=null),e.text!==o.payload.text&&Vo(e);let{text:n,html:s,selection:r}=o.payload;r&&(e.selection.start=r.start,e.selection.end=r.end,e.userCommitted.selection.start=r.start,e.userCommitted.selection.end=r.end),e.text=n,e.html=s||null,e.userCommitted.text=n,e.previousKeyDownEvent=null},stageSuggestion(e,o){let{text:n}=o.payload;switch(e.stagedSuggestion=o.payload,e.tabCompletionSuggestion=void 0,o.payload.replace){case"selection":e.text=`${e.text.slice(0,e.selection.start)}${n}${e.text.slice(e.selection.end)}`,e.selection.end=e.selection.start+n.length,e.selection.start+=n.length;break;case"until-selection-end":e.text=`${n}${e.text.slice(e.selection.end)}`,e.selection.start=n.length,e.selection.end=n.length;break;default:throw new Error(`Unknown replace ${o.payload.replace}`)}o.payload.eventMetrics.inputType==="tab"&&Vo(e)},commitSuggestion(e){Vo(e)},offeredTextSuggestion(e,o){let{text:n,suggestion:{source:s}}=o.payload;e.metrics.offeredTextSuggestions.find(i=>i.text===n)||e.metrics.offeredTextSuggestions.push({text:n,source:s})},registerCut(e,o){let{metrics:n}=e,s=o.payload;e.metrics={...e.metrics,numCharsCut:n.numCharsCut+s.length,cuts:[...n.cuts,s]}},registerPaste(e,o){let{metrics:n}=e,{text:s,selectionText:r}=o.payload,i=n.numCharsDeleted+(r&&r.length?r.length:0),a=r&&r.length?[...n.deletions,r]:n.deletions;e.metrics={...e.metrics,numCharsDeleted:i,deletions:a,numCharsPasted:n.numCharsPasted+s.length,numPaste:n.numPaste+1,pastes:[...n.pastes,s]}},registerKeyDown(e,o){e.previousKeyDownEvent=o.payload},nextTextSuggestionIndex(e){let o=e.textSuggestions.length;e.selectedSuggestionIndex=e.selectedSuggestionIndex<o-1?e.selectedSuggestionIndex+1:e.selectedSuggestionIndex},previousTextSuggestionIndex(e){e.selectedSuggestionIndex=e.selectedSuggestionIndex>=0?e.selectedSuggestionIndex-1:e.selectedSuggestionIndex},setTextSuggestions(e,o){if(e.selectedSuggestionIndex=-1,e.textSuggestions=o.payload,o.payload.length===0)return;let n=e.userCommitted.text.substring(0,e.userCommitted.selection.end),s=ws(o.payload,n);e.tabCompletionSuggestion=s!=null&&s.text.includes(n)?s:void 0},setSelectedTextSuggestionIndex(e,o){e.selectedSuggestionIndex=o.payload},mergeMetrics(e,{payload:o}){let n=o.agentStartedTypingTimestamp!=null?o.agentStartedTypingTimestamp:Date.now(),s=(Date.now()-n)/1e3;e.metrics.externalTimeTotalSeconds=s,e.metrics.numCharsTyped+=o.numCharsTyped,e.metrics.numCharsPasted+=o.numCharsPasted,e.metrics.numCharsCut+=o.numCharsCut,e.metrics.numCharsDeleted+=o.numCharsDeleted,e.metrics.numPaste+=o.numPaste,e.metrics.pastes.push(...o.pastes),e.metrics.deletions.push(...o.deletions)},setMetrics(e,{payload:o}){e.metrics=o}},extraReducers:e=>{e.addCase(P,o=>{o.tabCompletionSuggestion=He.tabCompletionSuggestion,o.previousKeyDownEvent=He.previousKeyDownEvent,o.textSuggestions=He.textSuggestions,o.selectedSuggestionIndex=He.selectedSuggestionIndex,o.metrics=He.metrics})}}),ks=Ai("input"),St=t=>t.input.userCommitted.text.substring(0,t.input.userCommitted.selection.end),ju=t=>t.input.selection,Li=()=>zu(ju),{userInput:Mi,changeSelection:Is,initialInput:Ni,mergeMetrics:Oi,nextTextSuggestionIndex:Di,offeredTextSuggestion:Hi,previousTextSuggestionIndex:Bi,registerCut:Fi,registerKeyDown:Ki,registerPaste:Ui,reset:zi,resetToCommitted:Zt,platformInput:ji,setSelectedTextSuggestionIndex:Be,setTextSuggestions:me,stageSuggestion:le,commitSuggestion:xe,setMetrics:Vi}=ks.actions,J=Ai("overlay");import{useEffect as Wi,useRef as $i}from"react";var qi={root:"_root_1h19b_1",content:"_content_1h19b_24"};import{jsx as Gi}from"react/jsx-runtime";var Vu=({isOpen:t,autoFocus:e,children:o,onClose:n,onBack:s,overlayAriaLabel:r,contentAriaLabel:i})=>{let a=$i(null),l=$i(null),c=y("Dialog",qi);return Wi(()=>{var g,u;let p=m=>{m.key==="Escape"&&(m.preventDefault(),m.stopPropagation(),s())},d=m=>{let f=window.getSelection();f!=null&&f.toString()||m.target===a.current&&t&&n()};return(g=a.current)==null||g.addEventListener("click",d),(u=a.current)==null||u.addEventListener("keyup",p),()=>{var m,f;(m=a.current)==null||m.removeEventListener("click",d),(f=a.current)==null||f.removeEventListener("keyup",p)}},[a,l,s,n]),Wi(()=>{var p,d;!a.current||!t||!e||(d=(p=a.current)==null?void 0:p.querySelector("input, textarea"))==null||d.focus()},[t,e,a]),t?Gi("div",{role:"dialog","data-testid":"dialog",className:c.root,"aria-label":r,ref:a,children:Gi("div",{ref:l,"data-testid":"dialog-content",className:c.content,"aria-label":i,children:o})}):null},_t=Vu;import{useEffect as il}from"react";import{useDispatch as Pm,useSelector as Am}from"react-redux";var Rs={};V(Rs,{enUS:()=>qu,nlNL:()=>Wu});var qu={dismiss:[{type:0,value:"Close"}],add:[{type:0,value:"Add to message"}],next:[{type:0,value:"Next"}],previous:[{type:0,value:"Previous"}],warning:[{type:0,value:"Are you sure you want to discard the message?"}]},Wu={dismiss:[{type:0,value:"Sluiten"}],add:[{type:0,value:"Toevoegen"}],next:[{type:0,value:"Volgende"}],previous:[{type:0,value:"Vorige"}],warning:[{type:0,value:"Weet je zeker dat je de wijzigingen wilt weggooien?"}]};var Xi={root:"_root_jcr8j_1",content:"_content_jcr8j_3",title:"_title_jcr8j_7",actions:"_actions_jcr8j_15",pagination:"_pagination_jcr8j_19",primaryButton:"_primaryButton_jcr8j_50",primaryButtons:"_primaryButtons_jcr8j_54"};import{createContext as sg,useContext as rg}from"react";var Ps=function(t,e){return Ps=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(o,n){o.__proto__=n}||function(o,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(o[s]=n[s])},Ps(t,e)};function Qt(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");Ps(t,e);function o(){this.constructor=t}t.prototype=e===null?Object.create(e):(o.prototype=e.prototype,new o)}var oe=function(){return oe=Object.assign||function(e){for(var o,n=1,s=arguments.length;n<s;n++){o=arguments[n];for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},oe.apply(this,arguments)};function Zi(t,e){var o={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(o[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,n=Object.getOwnPropertySymbols(t);s<n.length;s++)e.indexOf(n[s])<0&&Object.prototype.propertyIsEnumerable.call(t,n[s])&&(o[n[s]]=t[n[s]]);return o}function Qo(t,e,o){if(o||arguments.length===2)for(var n=0,s=e.length,r;n<s;n++)(r||!(n in e))&&(r||(r=Array.prototype.slice.call(e,0,n)),r[n]=e[n]);return t.concat(r||Array.prototype.slice.call(e))}var Jo;(function(t){t[t.EXPECT_ARGUMENT_CLOSING_BRACE=1]="EXPECT_ARGUMENT_CLOSING_BRACE",t[t.EMPTY_ARGUMENT=2]="EMPTY_ARGUMENT",t[t.MALFORMED_ARGUMENT=3]="MALFORMED_ARGUMENT",t[t.EXPECT_ARGUMENT_TYPE=4]="EXPECT_ARGUMENT_TYPE",t[t.INVALID_ARGUMENT_TYPE=5]="INVALID_ARGUMENT_TYPE",t[t.EXPECT_ARGUMENT_STYLE=6]="EXPECT_ARGUMENT_STYLE",t[t.INVALID_NUMBER_SKELETON=7]="INVALID_NUMBER_SKELETON",t[t.INVALID_DATE_TIME_SKELETON=8]="INVALID_DATE_TIME_SKELETON",t[t.EXPECT_NUMBER_SKELETON=9]="EXPECT_NUMBER_SKELETON",t[t.EXPECT_DATE_TIME_SKELETON=10]="EXPECT_DATE_TIME_SKELETON",t[t.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE=11]="UNCLOSED_QUOTE_IN_ARGUMENT_STYLE",t[t.EXPECT_SELECT_ARGUMENT_OPTIONS=12]="EXPECT_SELECT_ARGUMENT_OPTIONS",t[t.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE=13]="EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE",t[t.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE=14]="INVALID_PLURAL_ARGUMENT_OFFSET_VALUE",t[t.EXPECT_SELECT_ARGUMENT_SELECTOR=15]="EXPECT_SELECT_ARGUMENT_SELECTOR",t[t.EXPECT_PLURAL_ARGUMENT_SELECTOR=16]="EXPECT_PLURAL_ARGUMENT_SELECTOR",t[t.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT=17]="EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT",t[t.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT=18]="EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT",t[t.INVALID_PLURAL_ARGUMENT_SELECTOR=19]="INVALID_PLURAL_ARGUMENT_SELECTOR",t[t.DUPLICATE_PLURAL_ARGUMENT_SELECTOR=20]="DUPLICATE_PLURAL_ARGUMENT_SELECTOR",t[t.DUPLICATE_SELECT_ARGUMENT_SELECTOR=21]="DUPLICATE_SELECT_ARGUMENT_SELECTOR",t[t.MISSING_OTHER_CLAUSE=22]="MISSING_OTHER_CLAUSE",t[t.INVALID_TAG=23]="INVALID_TAG",t[t.INVALID_TAG_NAME=25]="INVALID_TAG_NAME",t[t.UNMATCHED_CLOSING_TAG=26]="UNMATCHED_CLOSING_TAG",t[t.UNCLOSED_TAG=27]="UNCLOSED_TAG"})(Jo||(Jo={}));var Yo=class{constructor(e){console.warn(`[vite-messages-plugin]: Message "${e}" was not precompiled. Did you use the correct extenstion *.messages.ts?`)}};var ce;(function(t){t[t.literal=0]="literal",t[t.argument=1]="argument",t[t.number=2]="number",t[t.date=3]="date",t[t.time=4]="time",t[t.select=5]="select",t[t.plural=6]="plural",t[t.pound=7]="pound",t[t.tag=8]="tag"})(ce||(ce={}));var en;(function(t){t[t.number=0]="number",t[t.dateTime=1]="dateTime"})(en||(en={}));function As(t){return t.type===ce.literal}function Qi(t){return t.type===ce.argument}function tn(t){return t.type===ce.number}function on(t){return t.type===ce.date}function nn(t){return t.type===ce.time}function sn(t){return t.type===ce.select}function rn(t){return t.type===ce.plural}function Ji(t){return t.type===ce.pound}function an(t){return t.type===ce.tag}function ln(t){return!!(t&&typeof t=="object"&&t.type===en.number)}function Jt(t){return!!(t&&typeof t=="object"&&t.type===en.dateTime)}function Ls(t){t.forEach(function(e){if(delete e.location,sn(e)||rn(e))for(var o in e.options)delete e.options[o].location,Ls(e.options[o].value);else tn(e)&&ln(e.style)||(on(e)||nn(e))&&Jt(e.style)?delete e.style.location:an(e)&&Ls(e.children)})}function Yi(t,e){e===void 0&&(e={}),e=oe({shouldParseSkeletons:!0,requiresOtherClause:!0},e);var o=new Yo(t,e).parse();if(o.err){var n=SyntaxError(Jo[o.err.kind]);throw n.location=o.err.location,n.originalMessage=o.err.message,n}return e!=null&&e.captureLocation||Ls(o.val),o.val}function cn(t,e){var o=e&&e.cache?e.cache:Ju,n=e&&e.serializer?e.serializer:Qu,s=e&&e.strategy?e.strategy:Gu;return s(t,{cache:o,serializer:n})}function $u(t){return t==null||typeof t=="number"||typeof t=="boolean"}function ea(t,e,o,n){var s=$u(n)?n:o(n),r=e.get(s);return typeof r>"u"&&(r=t.call(this,n),e.set(s,r)),r}function ta(t,e,o){var n=Array.prototype.slice.call(arguments,3),s=o(n),r=e.get(s);return typeof r>"u"&&(r=t.apply(this,n),e.set(s,r)),r}function Ms(t,e,o,n,s){return o.bind(e,t,n,s)}function Gu(t,e){var o=t.length===1?ea:ta;return Ms(t,this,o,e.cache.create(),e.serializer)}function Xu(t,e){return Ms(t,this,ta,e.cache.create(),e.serializer)}function Zu(t,e){return Ms(t,this,ea,e.cache.create(),e.serializer)}var Qu=function(){return JSON.stringify(arguments)};function Ns(){this.cache=Object.create(null)}Ns.prototype.get=function(t){return this.cache[t]};Ns.prototype.set=function(t,e){this.cache[t]=e};var Ju={create:function(){return new Ns}},pn={variadic:Xu,monadic:Zu};var Je;(function(t){t.MISSING_VALUE="MISSING_VALUE",t.INVALID_VALUE="INVALID_VALUE",t.MISSING_INTL_API="MISSING_INTL_API"})(Je||(Je={}));var Yt=function(t){Qt(e,t);function e(o,n,s){var r=t.call(this,o)||this;return r.code=n,r.originalMessage=s,r}return e.prototype.toString=function(){return"[formatjs Error: ".concat(this.code,"] ").concat(this.message)},e}(Error);var Os=function(t){Qt(e,t);function e(o,n,s,r){return t.call(this,'Invalid values for "'.concat(o,'": "').concat(n,'". Options are "').concat(Object.keys(s).join('", "'),'"'),Je.INVALID_VALUE,r)||this}return e}(Yt);var oa=function(t){Qt(e,t);function e(o,n,s){return t.call(this,'Value for "'.concat(o,'" must be of type ').concat(n),Je.INVALID_VALUE,s)||this}return e}(Yt);var na=function(t){Qt(e,t);function e(o,n){return t.call(this,'The intl string context variable "'.concat(o,'" was not provided to the string "').concat(n,'"'),Je.MISSING_VALUE,n)||this}return e}(Yt);var $;(function(t){t[t.literal=0]="literal",t[t.object=1]="object"})($||($={}));function Yu(t){return t.length<2?t:t.reduce(function(e,o){var n=e[e.length-1];return!n||n.type!==$.literal||o.type!==$.literal?e.push(o):n.value+=o.value,e},[])}function eg(t){return typeof t=="function"}function eo(t,e,o,n,s,r,i){if(t.length===1&&As(t[0]))return[{type:$.literal,value:t[0].value}];for(var a=[],l=0,c=t;l<c.length;l++){var p=c[l];if(As(p)){a.push({type:$.literal,value:p.value});continue}if(Ji(p)){typeof r=="number"&&a.push({type:$.literal,value:o.getNumberFormat(e).format(r)});continue}var d=p.value;if(!(s&&d in s))throw new na(d,i);var g=s[d];if(Qi(p)){(!g||typeof g=="string"||typeof g=="number")&&(g=typeof g=="string"||typeof g=="number"?String(g):""),a.push({type:typeof g=="string"?$.literal:$.object,value:g});continue}if(on(p)){var u=typeof p.style=="string"?n.date[p.style]:Jt(p.style)?p.style.parsedOptions:void 0;a.push({type:$.literal,value:o.getDateTimeFormat(e,u).format(g)});continue}if(nn(p)){var u=typeof p.style=="string"?n.time[p.style]:Jt(p.style)?p.style.parsedOptions:n.time.medium;a.push({type:$.literal,value:o.getDateTimeFormat(e,u).format(g)});continue}if(tn(p)){var u=typeof p.style=="string"?n.number[p.style]:ln(p.style)?p.style.parsedOptions:void 0;u&&u.scale&&(g=g*(u.scale||1)),a.push({type:$.literal,value:o.getNumberFormat(e,u).format(g)});continue}if(an(p)){var m=p.children,f=p.value,h=s[f];if(!eg(h))throw new oa(f,"function",i);var E=eo(m,e,o,n,s,r),x=h(E.map(function(v){return v.value}));Array.isArray(x)||(x=[x]),a.push.apply(a,x.map(function(v){return{type:typeof v=="string"?$.literal:$.object,value:v}}))}if(sn(p)){var _=p.options[g]||p.options.other;if(!_)throw new Os(p.value,g,Object.keys(p.options),i);a.push.apply(a,eo(_.value,e,o,n,s));continue}if(rn(p)){var _=p.options["=".concat(g)];if(!_){if(!Intl.PluralRules)throw new Yt(`Intl.PluralRules is not available in this environment.
|
|
2
2
|
Try polyfilling it using "@formatjs/intl-pluralrules"
|
|
3
|
-
`,Ze.MISSING_INTL_API,i);var b=o.getPluralRules(e,{type:p.pluralType}).select(g-(p.offset||0));x=p.options[b]||p.options.other}if(!x)throw new Ls(p.value,g,Object.keys(p.options),i);a.push.apply(a,Xt(x.value,e,o,n,s,g-(p.offset||0)));continue}}return Du(a)}function Bu(t,e){return e?oe(oe(oe({},t||{}),e||{}),Object.keys(t).reduce(function(o,n){return o[n]=oe(oe({},t[n]),e[n]||{}),o},{})):t}function Fu(t,e){return e?Object.keys(t).reduce(function(o,n){return o[n]=Bu(t[n],e[n]),o},oe({},t)):t}function Ms(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,o){t[e]=o}}}}}function Ku(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:sn(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.NumberFormat).bind.apply(e,$o([void 0],o,!1)))},{cache:Ms(t.number),strategy:rn.variadic}),getDateTimeFormat:sn(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.DateTimeFormat).bind.apply(e,$o([void 0],o,!1)))},{cache:Ms(t.dateTime),strategy:rn.variadic}),getPluralRules:sn(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.PluralRules).bind.apply(e,$o([void 0],o,!1)))},{cache:Ms(t.pluralRules),strategy:rn.variadic})}}var Qi=function(){function t(e,o,n,s){o===void 0&&(o=t.defaultLocale);var r=this;if(this.formatterCache={number:{},dateTime:{},pluralRules:{}},this.format=function(c){var p=r.formatToParts(c);if(p.length===1)return p[0].value;var d=p.reduce(function(g,u){return!g.length||u.type!==$.literal||typeof g[g.length-1]!="string"?g.push(u.value):g[g.length-1]+=u.value,g},[]);return d.length<=1?d[0]||"":d},this.formatToParts=function(c){return 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,oe(oe({},l),{locale:this.resolvedLocale}))}else this.ast=e;if(!Array.isArray(this.ast))throw new TypeError("A message must be provided as a String or AST.");this.formats=Fu(t.formats,n),this.formatters=s&&s.formatters||Ku(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 ju(t,e){return e.split(".").reduce((o,n)=>o?o[n]:void 0,t)}var Vu="dummy",Ns=Uu(null);function T(t){let e=zu(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=ju(o,n);return r?new Qi(r).format(s):(e!==Vu&&console.warn(`${n} does not exist in messages of ${e}`),`[${n}]`)}}import{jsx as Ji,jsxs as qu}from"react/jsx-runtime";var an=()=>qu("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 Wu}from"react/jsx-runtime";var ea=()=>Wu("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 Qt,useRef as js,useState as hg}from"react";import{useDispatch as yg}from"react-redux";import{Interweave as xa}from"interweave";import ba from"classnames";var Os={root:"_root_smoda_1",agentText:"_agentText_smoda_3",textInput:"_textInput_smoda_8",textInputWrapper:"_textInputWrapper_smoda_27",alert:"_alert_smoda_31",alertText:"_alertText_smoda_50",warning:"_warning_smoda_60",success:"_success_smoda_69"};import{Matcher as Zu}from"interweave";import Qu from"classnames";import{useEffect as $u,useRef as Gu,useState as Xu}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 ln(t){let e=Gu(null),[o,n]=Xu(!1);return $u(()=>{let s=!1,r=parseFloat(window.getComputedStyle(document.body).zoom??"1"),[i,a]=ta((p,d)=>{let g=e.current;if(!g)return;let u=p/r,m=d/r,f=g.getBoundingClientRect(),h=u>f.x&&u<f.x+f.width&&m>f.y&&m<f.y+f.height;h&&!s?(s=!0,n(!0)):!h&&s&&(s=!1,n(!1))},({clientX:p,clientY:d})=>[p,d]),[l,c]=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 be={root:"_root_81non_1",container:"_container_81non_3",agentText:"_agentText_81non_5",tabText:"_tabText_81non_6",hint:"_hint_81non_6",matchSelection:"_matchSelection_81non_10",focus:"_focus_81non_16",resetIndent:"_resetIndent_81non_20",matchKeyword:"_matchKeyword_81non_24",matchPlaceholder:"_matchPlaceholder_81non_25",hover:"_hover_81non_31",hintText:"_hintText_81non_64",popover:"_popover_81non_72",popoverRoot:"_popoverRoot_81non_77",popoverContentContainer:"_popoverContentContainer_81non_81",popoverContent:"_popoverContent_81non_81",selectionOptions:"_selectionOptions_81non_107",selectionOptionsIsHidden:"_selectionOptionsIsHidden_81non_112",selectionOptionsButton:"_selectionOptionsButton_81non_116",caret:"_caret_81non_132",popoverSuggestionsRoot:"_popoverSuggestionsRoot_81non_136",suggestionsOverlayInputStyles:"_suggestionsOverlayInputStyles_81non_141"};import{jsx as oa}from"react/jsx-runtime";var Ju=({inputElement:t,children:e})=>{let o=y("TabCompletion",be),[n,s]=ln(t);return oa("mark",{ref:n,className:Qu(o.matchPlaceholder,{[o.hover]:s}),children:e})},_t=class extends Zu{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(Ju,{inputElement:o.inputElement,children:e},`placeholder_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import{useEffect as Yu,useRef as eg,useState as tg}from"react";function cn(t){return t.contentEditable==="true"}function og(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}=cn(t)?og(t):t;return[e,o]}function pn(t){let[,e]=tg(),o=eg(null);return o.current=na(t),Yu(()=>{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 dn(t,e){if(!e)return;let o=t,{value:n}=o,[s,r]=e,i=n.match(ft);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 ng}from"react";function xt(t){ng(()=>{let e=o=>{o.isWithinRoot||t(o)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function Qe(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}var sa,fe=new Map,sg=["bottom","height","left","right","top","width"],rg=(t={},e={})=>sg.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 un=!1,aa=()=>{un=!0;let t=[];if(fe.forEach((e,o)=>{if(!o.isConnected){e.rect=null,t.push(e),fe.delete(o);return}let n=o.getBoundingClientRect();rg(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))}),fe.size===0){un=!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=fe.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)),fe.has(t)){let i=fe.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else fe.set(t,{rect:void 0,callbacks:[e],parentRects:n});r&&!un&&aa()},unobserve(){s.forEach(i=>i.unobserve());let r=fe.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||fe.delete(t),fe.size||(cancelAnimationFrame(sa),un=!1)}}}}var la,he=new Map,ca=()=>{he.forEach((t,e)=>{if(!e.isConnected){he.delete(e);return}let{clientHeight:o,scrollHeight:n}=e,s=n>o;t.visible!==s&&(t.visible=s,t.callbacks.forEach(r=>r(t.visible)))}),he.size!==0&&(la=window.requestAnimationFrame(ca))};function pa(t,e){return{observe(){let o=he.size===0;he.has(t)?he.get(t).callbacks.push(e):he.set(t,{visible:void 0,callbacks:[e]}),o&&ca()},unobserve(){let o=he.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||he.delete(t),he.size||cancelAnimationFrame(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 bt(t){return parseFloat(t)}function gn(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=bt(t.width),r=bt(t.borderLeftWidth),i=bt(t.borderRightWidth),a=bt(t.paddingRight),l=da(gn(s)-gn(r)-gn(i)),c=da(gn(n));if(l-c>2){let p=l-c;o.style.paddingRight=`${a+p}px`}}function Ct(t,e={}){var p;let o=e.overlayContainer||document.createElement("div");o.style.display="none",o.style.position=e.position??"fixed",o.style.pointerEvents="none",o.style.borderColor="transparent",Qe(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,l=!0,c=Ds(t,d=>{if(d===null){e.onRemove&&e.onRemove(),o.remove();return}if(!l&&e.onMoveStart&&(Promise.resolve().then(()=>e.onMoveStart()),l=!0),clearTimeout(a),a=setTimeout(()=>{e.onMoveEnd&&e.onMoveEnd(),l=!1},200),d.height===0&&d.width===0){if(s===!0)return;e.onHide&&e.onHide(),o.style.display="none",s=!0;return}if(Bs(n,o,Hs),Fs(n,t,o),r(),o.style.top=`${d.top}px`,o.style.left=`${d.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let g=e.closestScrollElement.getBoundingClientRect(),u=window.getComputedStyle(e.closestScrollElement),m=bt(u.borderTopWidth),f=bt(u.borderBottomWidth),h=g.top+m-d.top,E=d.top+d.height+-(g.top+g.height-f);o.style.clipPath=`inset(${h}px 0px ${E}px 0px)`}s&&(o.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(o):(p=t.parentElement)==null||p.appendChild(o),c.observe(),i.observe(),[o,()=>{t.removeEventListener("scroll",r),c.unobserve(),i.unobserve()}]}var Ks={};q(Ks,{enUS:()=>ig,nlNL:()=>ag});var ig={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"}]},ag={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 lg}from"react/jsx-runtime";var ga=()=>lg("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"})});var ha=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(ha||{}),De=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();Me(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",o=>this.handleKeyDown(o)),this.addEventListener("keyup",o=>this.handleKeyUp(o)),this.addEventListener("input",()=>this.triggerChange()),this.addEventListener("change",()=>this.triggerChange()),this.addEventListener("focus",()=>this.handleFocus()),this.addEventListener("blur",()=>this.handleBlur()),this.addEventListener("cut",()=>this.handleCut()),this.addEventListener("paste",o=>this.handlePaste(o)),this.addEventListener("click",()=>this.triggerSelection()),document.activeElement===this.element&&setTimeout(()=>{this.handleFocus()},0);let e=new MutationObserver(()=>{this.element.isConnected||(this.emit("unmounted"),this.dispose())});e.observe(document.body,{subtree:!0,childList:!0}),this.disposeHandlers.push(()=>{e.disconnect()}),this.currentSelection=this.getSelection()}focus(){this.element.focus()}emit(e,...o){this.isDisposed||this.eventListeners[e]&&this.eventListeners[e].forEach(n=>{n(...o)})}on(e,o){this.isDisposed||(this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o))}activate(){let e=this.isActive===!1;this.isActive=!0,e&&this.triggerChange()}deactivate(){this.isActive=!1}dispose(){this.disposeHandlers.forEach(e=>e()),this.eventListeners={},this.isDisposed=!0}};var He=class extends De{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 cg=/[.*+?^${}()|[\]\\]/g,pg=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function dg(t){return t.replace(cg,"\\$&")}function ug(t,e){let o=t.split("").findIndex((n,s)=>n!==e[s]);return o>-1?o:Math.min(t.length,e.length)}function gg(t){return t.search(pg)}function ya(t,e=[]){let o=t;return e.forEach(n=>{if(!n)return;let s=new RegExp(`\\b(${dg(n)})\\b`,"gi");o=o.replace(s,"<strong>$1</strong>")}),o}function va(t){return t.replace(ft,'<mark data-type="placeholder">$1</mark>')}function Zt(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function mg(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=ug(e.toLowerCase(),t.toLowerCase()),s=Zt(t.substring(n,t.length));if(o.stripAgentPart){let l=t.substring(0,n),c=gg(l);return`<span style="opacity: 0.5">${l.substring(c+1)}</span>${s}`}let i=e.split(hi).length>3||e.length>30?mg(e.trim(),n):0;return`${`${i>0?"\u2026":""}${Zt(t.substring(i,n))}`}<strong>${s}</strong>`}return t}var fg=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function wt(t){return fg.test(t)}function Sa(t){if(wt(t)){let o=/<body[^>]*>([\s\S]*)<\/body>/gi.exec(t);return o?o[1]:""}return t}function _a(t){let e=document.createElement("template");return e.innerHTML=t,e.content.textContent??""}import{jsx as ce,jsxs as zs}from"react/jsx-runtime";var vg=({value:t,onUse:e,...o})=>{var d;let n=T(Ks),s=yg(),r=wt(t),i=y("EditSuggestionTextInput",Os),[a,l]=hg(null),c=js(null),p=((d=t.match(ft))==null?void 0:d.length)||0;return Qt(()=>{let g;return c.current&&(l(c.current),g=new He(c.current),g.on("change",({plainText:u})=>{s(Q.actions.userInput({text:u,selection:g.getSelection()}))}),g.on("keydown",u=>{s(Q.actions.registerKeyDown(Uo(u))),u.code==="Enter"&&u.shiftKey&&e(g.getText())}),g.on("paste",({pastedText:u,selectionText:m})=>{s(Q.actions.registerPaste({text:u,selectionText:m}))}),g.on("cut",({selectionText:u})=>{s(Q.actions.registerCut(u))})),()=>{s(Q.actions.reset()),g.dispose(),g.deactivate()}},[c]),Qt(()=>{t&&c.current&&(c.current.value=t)},[t,c]),Qt(()=>{c.current&&setTimeout(()=>{if(!c.current)return;let g=c.current.value.length;c.current.setSelectionRange(g,g),c.current.focus()},0)},[c]),r?ce("div",{className:i.textInputWrapper,children:ce(xa,{className:i.textInput,tagName:"div",content:t})}):zs("div",{className:i.textInputWrapper,children:[ce("textarea",{...o,ref:c,"data-testid":"edit-suggestion-dialog-textarea",className:i.textInput,defaultValue:t,onChange:()=>{}}),a&&ce(Sg,{inputElement:c.current,value:t}),zs("div",{className:ba(i.alert,p===0?i.success:i.warning),children:[ce("div",{className:i.alertText,children:n("placeholders",{placeholderSize:p})}),p===0?ce(ga,{}):ce(fa,{})]})]})},Sg=({inputElement:t,value:e})=>{let o=y("EditSuggestionTextInput",Os),n=js(null),s=pn(t);return Qt(()=>{dn(t,s)},[s,t]),ce(_g,{inputElement:t,children:zs("div",{ref:n,className:ba(o.root,o.agentText),children:[ce(xa,{tagName:"span",disableLineBreaks:!0,content:e,matchers:[new _t("placeholders")],inputElement:t,boundaryRef:n}),ce("br",{})]})})},_g=({inputElement:t,children:e})=>{let o=js(null);return Qt(()=>{if(!o.current)return()=>{};let[n,s]=Ct(t,{overlayContainer:o.current,mirrorOverflow:!0});return n.setAttribute("translate","no"),()=>{s()}},[o.current]),ce("div",{ref:o,children:e})},Ca=vg;import{useEffect as cm,useState as pm,useRef as dm}from"react";import{useState as Cg}from"react";import Vs from"classnames";var J={root:"_root_1xflk_1",list:"_list_1xflk_2",listWrapper:"_listWrapper_1xflk_6",listHorizontal:"_listHorizontal_1xflk_10",page:"_page_1xflk_19",search:"_search_1xflk_25",pageNav:"_pageNav_1xflk_33",pageTitle:"_pageTitle_1xflk_41",pageBackButton:"_pageBackButton_1xflk_48",listHeader:"_listHeader_1xflk_62",listHeading:"_listHeading_1xflk_68",listMoreButton:"_listMoreButton_1xflk_76",listItem:"_listItem_1xflk_87",listItemContent:"_listItemContent_1xflk_96",listItemText:"_listItemText_1xflk_114",listItemDescription:"_listItemDescription_1xflk_122",listItemActions:"_listItemActions_1xflk_129",truncate:"_truncate_1xflk_140",lineClamp:"_lineClamp_1xflk_146",listItemTitle:"_listItemTitle_1xflk_153",listItemAction:"_listItemAction_1xflk_129",listItemPrimaryAction:"_listItemPrimaryAction_1xflk_174",listItemSelected:"_listItemSelected_1xflk_179",sources:"_sources_1xflk_183",sourcesTitle:"_sourcesTitle_1xflk_190",source:"_source_1xflk_183",icon:"_icon_1xflk_205",searchIcon:"_searchIcon_1xflk_222",searchInputWrapper:"_searchInputWrapper_1xflk_227",searchInput:"_searchInput_1xflk_227",select:"_select_1xflk_248",selectType:"_selectType_1xflk_265",selectWrapper:"_selectWrapper_1xflk_269",image:"_image_1xflk_299",imageSrc:"_imageSrc_1xflk_306",imageSrcHidden:"_imageSrcHidden_1xflk_317",imageSrcStatus:"_imageSrcStatus_1xflk_321",imageTitle:"_imageTitle_1xflk_331",actions:"_actions_1xflk_336",actionsWrapper:"_actionsWrapper_1xflk_340",actionsBar:"_actionsBar_1xflk_346",actionButton:"_actionButton_1xflk_355",hasShortKeys:"_hasShortKeys_1xflk_368",actionShortcut:"_actionShortcut_1xflk_377",actionShortcutFixKerning:"_actionShortcutFixKerning_1xflk_384"};var Ce={};q(Ce,{enUS:()=>xg,nlNL:()=>bg});var xg={visitUrl:[{type:0,value:"Visit"}],back:[{type:0,value:"Back"}],loading:[{type:0,value:"Loading..."}],imageError:[{type:0,value:"Could not load image"}],showAll:[{type:0,value:"Show more"}]},bg={visitUrl:[{type:0,value:"Bekijk"}],back:[{type:0,value:"Terug"}],loading:[{type:0,value:"Laden..."}],imageError:[{type:0,value:"Kan afbeelding niet laden"}],showAll:[{type:0,value:"Toon meer"}]};import{jsx as Jt,jsxs as Tg}from"react/jsx-runtime";var wg=({src:t,title:e})=>{let o=y("CommandPalette",J),[n,s]=Cg("loading"),r=T(Ce);return Tg("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(Ro,{})}),e&&Jt("span",{className:o.imageTitle,children:e})]})},wa=wg;import Eg from"react";import kg from"classnames";import{jsx as qs,jsxs as Ta}from"react/jsx-runtime";function Ws({children:t,heading:e,orientation:o,hasMore:n,onShowAll:s}){let r=T(Ce),i=y("CommandPalette",J);return Eg.Children.count(t)===0?null:Ta("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||n)&&Ta("div",{className:i.listHeader,children:[e&&qs("h4",{className:i.listHeading,children:e}),n&&s&&qs("button",{onClick:s,className:i.listMoreButton,type:"button",children:r("showAll")})]}),qs("div",{className:kg(i.listWrapper,o==="horizontal"&&i.listHorizontal),children:t})]})}import hn from"classnames";import{Interweave as jg}from"interweave";import Ig,{useState as Ea,useEffect as ka,useMemo as Rg,useRef as Ia,useCallback as Pg,useContext as Ag}from"react";import Lg 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 Dg}from"react/jsx-runtime";var Mg=0,Ra=Ig.createContext(null),Ng=()=>{let t=Ag(Ra);if(!t)throw new Error("Invalid DropdownContext");return t},Pa=({trigger:t,children:e,position:o="bottom"})=>{let n=Rg(()=>++Mg,[]),s=Ia(null),r=Ia(null),i=y("Dropdown",$s),[a,l]=Ea(!1),[c,p]=Ea(o),d=u=>{u.preventDefault(),u.stopPropagation(),l(!a)},g=Pg(([u])=>{!u.isIntersecting&&a&&p(c==="top"?"bottom":"top")},[a]);return ka(()=>{let u=m=>{s.current&&!s.current.contains(m.target)&&l(!1)};return document.addEventListener("click",u),()=>{document.removeEventListener("click",u)}},[]),ka(()=>{if(!r.current&&!a)return()=>{};let u=new IntersectionObserver(g,{root:null,rootMargin:"0px",threshold:1});return r.current&&u.observe(r.current),()=>{r.current&&u.unobserve(r.current)}},[r,a]),mn(Ra.Provider,{value:{setIsOpen:l},children:Dg("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:Lg(i.content,{[i.contentOpen]:a,[i.contentTop]:c==="top",[i.contentBottom]:c==="bottom"}),children:e})]})})};function Og({as:t,children:e,onClick:o,...n}){let s=t||"button",r=y("Dropdown",$s),{setIsOpen:i}=Ng(),a=l=>{i(!1),o(l),l.stopPropagation()};return mn(s,{type:"button",className:r.item,onClick:a,...n,children:e})}Pa.Item=Og;var Gs=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 Je={};q(Je,{enUS:()=>Hg,nlNL:()=>Bg});var Hg={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"}]},Bg={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 Fg="%0d%0a%0d%0a%0d%0a",Kg=(t,e)=>{let o=[`Suggestie: ${encodeURIComponent(e)}`,"Beschrijf je feedback:"];return`mailto:${t.join(",")}?subject=Suggestie feedback&body=${o.join(Fg)}`},Ug=({suggestion:t,onFeedback:e})=>{let o=T(Je),n=C("suggestionFeedbackEmailAddresses");return!n||n.length===0?null:Xs(Gs,{trigger:Xs(La,{"data-testid":"feedback-dropdown-trigger"}),children:Xs(Gs.Item,{as:"a",href:Kg(n,t),onClick:e,children:o("giveFeedback")})})},fn=Ug;import Zs from"react";import{jsx as zg}from"react/jsx-runtime";var Ma=Zs.createContext(void 0);function Be(){let t=Zs.useContext(Ma);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Na=({children:t,page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r})=>{let i=Zs.useMemo(()=>({page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r}),[o,e,s]);return zg(Ma.Provider,{value:i,children:t})};import{jsx as Fe,jsxs as Qs}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:g,onChangeOpen:u}=Be(),m=y("CommandPalette",J);function f(h){n(h),t&&u(!1)}return Qs("div",{className:hn(m.listItem,d===i&&m.listItemSelected),children:[Fe("button",{onMouseEnter:()=>g(i),type:"button",className:hn("command-palette-list-item",m.listItemAction,m.listItemPrimaryAction),"aria-disabled":p.disabled??!1,onClick:f,...p,children:Qs("div",{className:m.listItemContent,children:[typeof o=="string"?Fe("p",{className:hn(m.listItemText,m.truncate,c==null?void 0:c.title),children:o}):o,a&&Fe(jg,{tagName:"p",allowList:[],content:wt(a)?_a(a):a,className:hn(m.listItemDescription,c==null?void 0:c.description,e?m.lineClamp:m.truncate)})]})}),s&&d===i&&Fe("div",{className:m.listItemActions,children:Fe(fn,{suggestion:String(o),onFeedback:s})}),l&&Qs("div",{className:m.sources,children:[Fe("span",{className:m.sourcesTitle,children:"Sources"}),l.map(h=>h.url?Fe("a",{className:m.source,href:h.url,target:"_blank",title:h.url,rel:"noopener noreferrer",onClick:()=>r&&r(h),children:h.name},h.url):Fe("span",{className:m.source,children:h.name},h.name))]})]})}import{jsx as Oa,jsxs as Ys}from"react/jsx-runtime";function er({children:t,title:e,id:o,onDismiss:n}){let s=T(Ce),r=y("CommandPalette",J),{page:i}=Be();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:[Oa(an,{}),s("back")]}),e&&Oa("h3",{className:r.pageTitle,children:e})]}),t]})}import{Fragment as Yg,useCallback as em,useEffect as tm,useRef as om}from"react";import{createAsyncThunk as $g,createSlice as Gg}from"@reduxjs/toolkit";import{createAsyncThunk as or,createSlice as qg}from"@reduxjs/toolkit";function Vg(t){return t.replace(/(_\w)/g,e=>e[1].toUpperCase())}function P(t){return Array.isArray(t)?t.map(P):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[Vg(o)]:P(t[o])}),{}):t}function tr(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function z(t){return Array.isArray(t)?t.map(z):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[tr(o)]:z(t[o])}),{}):t}var Wg={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?P(n):(await o.client.patch("/apis/admin/session/me/",s,{version:null}),P(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}),Da=t=>t.info.agentInfo,Ha=qg({name:"info",initialState:Wg,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:Ba}=Ha.actions,Fa=Ha.reducer;var yn={list:[],fetchState:"idle",isOpen:!1,page:"search",aggregates:{}},Ka=t=>t.search.isOpen,Ua=t=>t.search.page,za=t=>t.search.list,ja=t=>t.search.aggregates;function Va(t,e=o=>o){return o=>o.search.list.filter(n=>n.type===t).map(e)}var Ye=$g("search/getAll",async(t,e)=>{var a;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(a=n.conversation.current)==null?void 0:a.profileCode;if(!s)throw new Error("Profile should be provided in order to be able to search");let{results:r,aggregates:i}=await o.search({profile:s,query:t.query,tags:t.tags,size:t.size,current:t.current,filters:{type:t.type},params:eo(n)});return{results:r.map(l=>({...l,source:`search-${l.type.toLowerCase()}`,searchTerm:t.query})),aggregates:i}}),qa=Gg({name:"search",initialState:yn,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=yn.fetchState,t.list=yn.list}},extraReducers:t=>{t.addCase(Ye.pending,e=>{e.fetchState="loading"}).addCase(Ye.rejected,(e,o)=>{e.fetchState="error",w.error(o.error)}).addCase(Ye.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload.results,e.aggregates=o.payload.aggregates||{}}).addCase(L,()=>yn)}}),{resetSearch:vn,setIsOpen:G,setPage:X}=qa.actions,Wa=qa.reducer;var Xg=/(https?:\/\/[^\s]+)/,Sn=t=>t.split(" ").find(e=>Xg.test(e));var _n=()=>/Mac/i.test(navigator.platform);import $a from"classnames";import{jsx as Qg,jsxs as Jg}from"react/jsx-runtime";var Zg=({onClick:t,shortKeys:e,children:o,...n})=>{let s=y("CommandPalette",J);return Jg("button",{type:"button",...n,onClick:t,className:$a(s.actionButton,n.className,{[s.hasShortKeys]:e&&e.length>0}),children:[o,e&&e.map(r=>Qg("span",{className:$a(s.actionShortcut,r===8629&&s.actionShortcutFixKerning),children:typeof r=="number"?String.fromCharCode(r):r},r))]})},Tt=Zg;import{jsx as xn,jsxs as rr}from"react/jsx-runtime";var nm=["url","URL"],sm=["default","pinned-message","DEFAULT","STICKYMESSAGE"],rm=({children:t,primaryLabel:e,secondaryLabel:o,onPrimary:n,onSecondary:s,list:r})=>{let i=y("CommandPalette",J),a=T(Ce),{selected:l,setSelected:c}=Be(),p=r[l],d=p&&p.type&&nm.includes(p.type),g=p&&p.type&&sm.includes(p.type)||p&&"secondaryAction"in p,u=d?Sn(p.text):null,m=om(null);function f(v){if(!m.current)return;let R=m.current.querySelectorAll(".command-palette-list-item"),A=0,H=0;v==="down"?(R.forEach((K,k)=>{k===l&&(A=k)}),H=A===R.length-1?0:A+1):v==="up"?(R.forEach((K,k)=>{k===l&&(A=k)}),H=A?A-1:R.length-1):c(0);let N=R[H];N&&typeof H=="number"&&(c(H),N.scrollIntoView&&N.scrollIntoView({behavior:"smooth",block:H?"center":"end"}))}function h(){if(!m.current)return;let v=m.current.querySelectorAll(".command-palette-list-item"),R=0;v.forEach((H,N)=>{N===l&&(R=N)});let A=v[R];A&&A.click()}let E=()=>{u&&window.open(u,"_blank")},_=()=>{p&&n(p,l)},x=()=>{!s||!g||s(p,l)},b=em(v=>{if(v.key==="Enter"&&v.altKey&&u){E();return}if(v.key==="Enter"&&v.shiftKey){x();return}if(v.key==="ArrowDown"){v.preventDefault(),v.stopPropagation(),f("down");return}if(v.key==="ArrowUp"){v.preventDefault(),v.stopPropagation(),f("up");return}v.key==="Enter"&&l!==-1&&(v.preventDefault(),v.stopPropagation(),h())},[l]);return tm(()=>(window.addEventListener("keyup",b),()=>{window.removeEventListener("keyup",b)}),[b]),rr("div",{className:i.actions,children:[xn("div",{className:i.actionsWrapper,ref:m,children:t}),rr("div",{className:i.actionsBar,children:[u&&xn(Tt,{onClick:E,shortKeys:[_n()?8997:"ALT",8629],children:a("visitUrl")}),p&&rr(Yg,{children:[s&&g&&xn(Tt,{onClick:x,shortKeys:[8679,8629],children:o}),xn(Tt,{onClick:_,shortKeys:[8629],children:e})]})]})]})},Xa=rm;import{forwardRef as am}from"react";import{jsx as Za,jsxs as im}from"react/jsx-runtime";var Et=()=>im("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[Za("path",{d:"M0 0h24v24H0z",fill:"none"}),Za("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 kt,jsxs as ir}from"react/jsx-runtime";function lm({onChange:t,onChangeType:e,placeholder:o,typePlaceholder:n,types:s,value:r,selectedType:i},a){let l=y("CommandPalette",J);return ir("div",{className:l.search,children:[kt("div",{className:l.searchIcon,children:kt(Et,{})}),ir("div",{className:l.searchInputWrapper,children:[kt("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&&kt("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&&kt("option",{children:n}),s.map(c=>kt("option",{value:c.value,children:c.label},c.value))]})})]})]})}var Qa=am(lm);import{jsx as Ja,jsxs as um}from"react/jsx-runtime";function et({placeholder:t="Start typing to search...",typePlaceholder:e="All types",defaultPage:o="search",page:n,onChangePage:s,onChangeSearch:r,onChangeType:i,onChangeOpen:a,selectedType:l,types:c,children:p,isOpen:d,search:g}){let[u,m]=pm(0),f=dm(null),h=()=>{s&&s(o),i(void 0),r(""),a(!1)},E=()=>{var _;if(n!==o&&s){s(o);return}if(l&&i){i(void 0),(_=f.current)==null||_.focus();return}if(g.length>0){r("");return}a(!1)};return cm(()=>{m(0)},[g,n]),Ja(St,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:d,onBack:E,onClose:h,children:um(Na,{selected:u,setSelected:m,isOpen:d,onChangeOpen:a,page:n,children:[n===o&&Ja(Qa,{ref:f,onChange:r,onChangeType:i,placeholder:t,value:g,selectedType:l,types:c,typePlaceholder:e}),p]})})}et.Page=er;et.List=Ws;et.Image=wa;et.ListItem=Js;et.ActionsBar=Xa;et.Button=Tt;var I=et;import{jsx as we,jsxs as to}from"react/jsx-runtime";var fm=({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=gm(),c=T(Es),p=mm(m=>m.overlayInput.text);Ya(()=>{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=m=>{m.preventDefault(),g(p)},g=m=>{l(Vo(m)),e(m)},u=m=>f=>{p!==i?window.confirm(c("warning"))&&m(f):m(f)};return Ya(()=>{n&&n(p!==i)},[n,t,p]),to("div",{className:a.root,children:[to("div",{className:a.content,children:[t.title&&we("h3",{className:a.title,children:t.title}),t.searchKeywords&&t.searchKeywords.length>0&&we(vs,{labels:t.searchKeywords}),we(Ca,{onUse:g,value:Sa(p)})]}),to("form",{className:a.actions,onSubmit:d,children:[to("div",{children:[we("button",{disabled:!r,className:a.pagination,type:"button",onClick:r&&u(r),children:we(an,{})}),we("button",{disabled:!s,className:a.pagination,type:"button",onClick:s&&u(s),children:we(ea,{})})]}),to("div",{className:a.primaryButtons,children:[we(I.Button,{onClick:u(o),shortKeys:["esc"],children:c("dismiss")}),we(I.Button,{shortKeys:[8679,8629],type:"submit",children:c("add")})]})]})]})},bn=fm;import{createAction as vm,createAsyncThunk as nl,createSlice as Sm}from"@reduxjs/toolkit";var hm=["{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}"],ym=new RegExp(hm.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function el(t,e){let o=t.split(ym),n=0,s=[];for(let r=0;r<o.length;r++){let i=o[r];if(s.push(i),r===o.length-1)break;if(e.indexOf(i)===-1)return t;let a=o[r+1],l=r===o.length-2;n+=i.length;let c=n;if(l){let d=a.charAt(0),g=0;do c=d?e.indexOf(d,c+1):-1,g+=1;while(c!==-1&&a.indexOf(e.slice(c))!==0);if(c===-1&&g>2)return t}else c=a&&a!==""?e.indexOf(a,n):-1;let p=c===-1?e.slice(n):e.slice(n,c);s.push(p),n=c}return s.join("")}function tl(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var sl={suggestions:[],fetchState:"idle",isInitialRequest:null},ol={default:sl},Cn=t=>e=>{var o;return((o=e.textSuggestions[t])==null?void 0:o.suggestions)??[]},rl=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")},Ke=t=>t.textSuggestions,il=t=>{let e=t.toLowerCase();return o=>{let n=o.text.toLowerCase();return n.startsWith(e)&&n.length>e.length}},wn=vm("textSuggestions/refresh"),pe=nl("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=vt(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(il(a)):l;e.dispatch(me(p.slice(0,r)))}return l}),oo=nl("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(il(t))),i&&(l=l.map(p=>({...p,text:p.source!=="trie-with-typos"?el(p.text,t):p.text}))),l=tl(l,r),e.dispatch(me(l)),l}),al=Sm({name:"textSuggestions",initialState:ol,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(pe.pending,(e,o)=>{let n=o.meta.arg,s=e[n]||sl;return{...e,[n]:{...s,fetchState:"loading",isInitialRequest:s.isInitialRequest===null}}}).addCase(pe.rejected,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="error")}).addCase(pe.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,()=>ol)}}),{setTextSuggestions:ll,setSuggestionState:cl}=al.actions,pl=al.reducer;import{createSlice as _m}from"@reduxjs/toolkit";var dl={contentType:null,suggestion:null},ul=t=>t.activeSuggestion.suggestion,gl=t=>t.activeSuggestion.contentType,ml=_m({name:"activeSuggestion",initialState:dl,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,()=>dl)}}),{setActiveSuggestion:Te,resetActiveSuggestion:ar}=ml.actions,fl=ml.reducer;var lr={};q(lr,{enUS:()=>xm,nlNL:()=>bm});var xm={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"}]},bm={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 Cm}from"@reduxjs/toolkit";var wm={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1};var Tn=({ui:t})=>t.overlayCollapsed;var hl=Cm({name:"ui",initialState:wm,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:It,setOverlayCollapsed:Ue,setOpenOverlayWhenTyping:yl,setOverlayCollapsedUserOverwrite:vl}=hl.actions,Sl=hl.reducer;import _l,{useContext as Tm}from"react";import{jsx as Em}from"react/jsx-runtime";var xl=_l.createContext(null),tt=({broadcastEvents:t,children:e})=>{let o=_l.useMemo(()=>t,[]);return Em(xl.Provider,{value:o,children:e})},se=()=>{let t=Tm(xl);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createAsyncThunk as cr,createSlice as km}from"@reduxjs/toolkit";var Im={isLoggedIn:!0,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1},Z=t=>t.auth.isLoggedIn,bl=t=>t.auth.loginFetchState,Cl=t=>t.auth.verifyFetchState,wl=t=>t.auth.showLoginOverlay,Ee=cr("auth/validate",async(t,e)=>e.extra.deepdeskAPI.isLoggedIn()),Tl=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)}),El=km({name:"auth",initialState:Im,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload}},extraReducers:t=>{t.addCase(Ee.pending,e=>{e.loginFetchState="loading"}),t.addCase(Ee.fulfilled,(e,{payload:o})=>{e.isLoggedIn=o,e.loginFetchState="done"}),t.addCase(Ee.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(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:Rt,setShowLoginOverlay:kl}=El.actions,Il=El.reducer;var pr="SetActiveSuggestion",Pt="ShowLoginOverlay",ro="UserLoggedIn",Rm="UserLoggedOut",ke="ApplySuggestion",dr="ApplyImageSuggestion",Pm="ShowCommandPalette",Am=t=>({[pr]:e=>{t.dispatch(cl(e.state)),t.dispatch(Te({contentType:e.contentType,suggestion:e.suggestion}))},[Pm]:e=>{t.dispatch(G(e.isOpen)),e.page&&t.dispatch(X(e.page))},[Pt]:e=>{t.dispatch(kl(e))},[ro]:()=>{t.dispatch(Ee())},[Rm]:()=>{t.dispatch(Ee())},[dr]:e=>{t.dispatch(Wo({suggestion:e.suggestion}))},[ke]:e=>{t.dispatch(ae({...e,eventMetrics:{inputType:"mouse"},replace:"selection"})),t.dispatch(xe())}}),Rl=Am;import{jsx as Pl}from"react/jsx-runtime";var Nm=()=>{var m;let[t,e]=Lm(!1),o=ur(ul),n=ur(gl),s=ur(Ke),r=Mm(),i=se(),a=T(lr),l=()=>{o!==null&&t?window.confirm(a("warning"))&&c():c()},c=()=>{r(ar()),r(It(!0)),r(Q.actions.reset())},p=(f,h)=>{r(ar()),r(It(!0)),i.send(ke,{text:f,suggestion:{...h,source:`${h.source||"text_recommendation"}-preview`}})};if(o===null||n===null)return null;let d=(m=s[n])==null?void 0:m.suggestions.indexOf(o),g=d===0||d===null?void 0:()=>r(Te({contentType:n,suggestion:s[n].suggestions[d-1]})),u=d===s[n].suggestions.length-1||d===null?void 0:()=>r(Te({contentType:n,suggestion:s[n].suggestions[d+1]}));return Pl(St,{autoFocus:!0,isOpen:d!==null,onClose:l,onBack:l,contentAriaLabel:a("editContentLabel"),overlayAriaLabel:a("overlayLabel"),children:Pl(bn,{onTouched:e,onDismiss:c,onUse:f=>p(f,o),suggestion:o,onNext:u,onPrevious:g})})},Al=Nm;import{useSelector as Dl}from"react-redux";import mr from"classnames";import{useCallback as Nl,useEffect as Km,useMemo as Um,useState as fr}from"react";import{useDispatch as zm,useSelector as jm}from"react-redux";import Om from"classnames";var Ll={root:"_root_1ukx5_1"};import{jsx as Hm}from"react/jsx-runtime";var Dm=({className:t,value:e,...o})=>{let n=y("TextInput",Ll);return Hm("input",{className:Om(t,n.root),type:"text",value:e,...o})},io=Dm;var gr={};q(gr,{enUS:()=>Bm,nlNL:()=>Fm});var Bm={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"}]},Fm={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 Ml={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 Y,jsxs as En}from"react/jsx-runtime";var Vm=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch{return t}},qm=({agentEmail:t,isOpen:e,origin:o="",onSuccess:n,onDismiss:s})=>{let r=T(gr),i=y("LoginTokenDialog",Ml),a=jm(Cl),l=zm(),c=C("productName"),[p,d]=fr(t||""),[g,u]=fr(0),[m,f]=fr(""),h=Nl(async b=>{b.preventDefault(),l(Tl({email:p})),u(1)},[o,p]),E=()=>{f(""),u(0)},_=Nl(async b=>{b.preventDefault();let v=Vm(b.target.elements.token.value);if(!v){f(r("verifyCodeError",{login:x}));return}l(so({token:v}))},[o]),x=Um(()=>b=>Y("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:E,children:b},"back-button"),[]);return Km(()=>{a==="error"&&f(r("verifyCodeError",{login:x})),a==="done"&&n()},[a]),Y(St,{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:[Y("h1",{className:i.title,children:r("promptTitle",{productName:c})}),g===0&&En("form",{onSubmit:h,children:[Y("h2",{className:i.subtitle,children:r("requestCodeTitle")}),Y("p",{className:i.text,children:r("requestCodeBody",{productName:c})}),Y(io,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:p,onChange:b=>d(b.target.value)}),Y("div",{className:i.actions,children:Y("button",{type:"submit",className:mr(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),g===1&&En("form",{onSubmit:_,children:[Y("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),Y("p",{className:i.text,children:r("verifyCodeBody")}),Y(io,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),m&&Y("div",{className:i.errorMessage,children:m}),En("div",{className:i.actions,children:[Y("button",{type:"button",className:mr(i.button),onClick:E,children:r("back")}),Y("button",{type:"submit",className:mr(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},Ol=qm;import{jsx as $m}from"react/jsx-runtime";var Wm=()=>{let t=Dl(wl),e=Dl(Da),o=C("adminUrl"),n=se(),s=()=>n.send(Pt,!1),r=()=>{n.send(Pt,!1),n.send(ro)};return $m(Ol,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:o,onDismiss:s,onSuccess:r})},Hl=Wm;import $f from"lodash.debounce";import{useCallback as Ln,useEffect as br,useState as go}from"react";import{useDispatch as Gf,useSelector as ot}from"react-redux";import{createAsyncThunk as Gm,createSlice as Xm}from"@reduxjs/toolkit";var Zm={data:null,fetchState:"idle"},Bl=t=>t.contentTypes.data,ao=Gm("contentTypes/getContentTypes",async(t,e)=>e.extra.deepdeskAPI.getContentTypes()),Qm=Xm({name:"contentTypes",initialState:Zm,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})}}),Fl=Qm.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 Jm}from"react";function Kl(t,e){Jm(()=>{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 Vl,useRef as rf}from"react";import{useSelector as af,useDispatch as lf}from"react-redux";import{createAsyncThunk as Ym,createSlice as ef}from"@reduxjs/toolkit";var Ul={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},de=Ym("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)}),tf=t=>t.filter((e,o)=>o===t.findIndex(n=>n.text===e.text)),of=ef({name:"entities",initialState:Ul,reducers:{},extraReducers:t=>{t.addCase(de.pending,e=>{e.fetchState="loading"}).addCase(de.rejected,e=>{e.fetchState="error"}).addCase(de.fulfilled,(e,o)=>{e.fetchState="done",e.data=tf(e.data?[...e.data,...o.payload]:o.payload)}).addCase(L,()=>Ul)}}),zl=of.reducer;var hr={};q(hr,{enUS:()=>nf,nlNL:()=>sf});var nf={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},sf={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var jl={root:"_root_17kae_1",empty:"_empty_17kae_5"};import{jsx as In,jsxs as pf}from"react/jsx-runtime";var cf=({onCopy:t,onUse:e})=>{let o=rf(null),n=y("EntitiesList",jl),s=T(hr),r=af(kn),i=lf();return Vl(()=>{i(de())},[]),Vl(()=>{o.current&&o.current.focus()},[o]),pf("div",{className:n.root,ref:o,tabIndex:-1,children:[r&&r.length>0&&In(I.ActionsBar,{primaryLabel:s("copy"),secondaryLabel:s("use"),onPrimary:(a,l)=>t(r[l]),onSecondary:(a,l)=>e(r[l]),list:r.map(a=>({text:a.text,type:a.label,primaryAction:"copy",secondaryAction:"use"})),children:In(I.List,{children:r.map((a,l)=>In(I.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")})]})},ql=cf;import{Fragment as hf,useEffect as Rn,useRef as yf,useState as vf}from"react";import{useSelector as Ql,useDispatch as Sf}from"react-redux";import{createAsyncThunk as df,createSlice as uf}from"@reduxjs/toolkit";var Wl={data:null,fetchState:"idle"},$l=t=>t.summary.data,Gl=t=>t.summary.fetchState==="error",Ie=df("summary/getSummary",async(t,e)=>{var p,d,g;let o=e.getState().profile.data,n=(p=e.getState().conversation.current)==null?void 0:p.sessionId,s=(g=(d=e.getState().info)==null?void 0:d.agentInfo)==null?void 0:g.agentId;if(!o)throw new Error("Profile is not defined");let{deepdeskAPI:r,dynamicThunkObject:i}=e.extra;if(!i.conversationQuery)return Promise.reject(new Error("setConversationQuery method is not defined"));let a=i.conversationQuery,l=await a();if(l.length===0)return Promise.reject(new Error("No messages are included"));let c=await r.getSummary(l,{externalConversationId:n,agentId:s,promptInstruction:o.summarizerPromptInstruction,model:o.summarizerModel});return c?{summary:c}:Promise.reject(new Error("Summary is not provided"))}),gf=uf({name:"summary",initialState:Wl,reducers:{},extraReducers:t=>{t.addCase(Ie.pending,e=>{e.data=null,e.fetchState="loading"}).addCase(Ie.rejected,e=>{e.data=null,e.fetchState="error"}).addCase(Ie.fulfilled,(e,o)=>{e.fetchState="done",o.payload&&(e.data=o.payload.summary)}).addCase(L,()=>Wl)}}),Xl=gf.reducer;var yr={};q(yr,{enUS:()=>mf,nlNL:()=>ff});var mf={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."}]},ff={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 Zl={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 At,jsxs as xf}from"react/jsx-runtime";var _f=({onCopy:t})=>{let e=yf(null),o=y("SummaryForm",Zl),[n,s]=vf(""),r=T(yr),i=Ql($l),a=Ql(Gl),l=Sf(),c=()=>{l(W({name:"summary copied to clipboard",data:{originalText:i,finalText:n},options:{includeConversationData:!0}})),t(n)},p=()=>{let d=document.getSelection();d&&l(W({name:"summary copied to clipboard",data:{originalText:i,finalText:d==null?void 0:d.toString()},options:{includeConversationData:!0}}))};return Rn(()=>{l(Ie())},[]),Rn(()=>{s(i||"")},[i]),Rn(()=>{e.current&&i&&e.current.focus()},[e,i]),Rn(()=>{let d=g=>{g.key==="Enter"&&g.shiftKey&&c()};return document.addEventListener("keydown",d),()=>{document.removeEventListener("keydown",d)}},[n]),At("div",{className:o.root,tabIndex:-1,children:a?At("p",{className:o.error,children:r("error")}):xf(hf,{children:[At("div",{className:o.main,children:At("textarea",{placeholder:i?void 0:r("loading"),disabled:!i,className:o.textInput,ref:e,value:n,onCopy:p,onChange:d=>s(d.target.value)})}),At("div",{className:o.actions,children:At(I.Button,{shortKeys:[8679,8629],onClick:c,children:r("copy")})})]})})},Jl=_f;var co={};q(co,{enUS:()=>bf,nlNL:()=>Cf});var bf={personalCollectionLink:[{type:0,value:"Go to Personal Collection"}],searchPlaceholder:[{type:0,value:"Start typing to search..."}],urlSuggestions:[{type:0,value:"Link suggestions"}],personalSuggestions:[{type:0,value:"Personal suggestions"}],pinnedMessages:[{type:0,value:"Pinned messages"}],imageSuggestions:[{type:0,value:"Images"}],typePlaceholder:[{type:0,value:"All types"}],navigation:[{type:0,value:"Navigation"}],entitiesClipboard:[{type:0,value:"Conversation clipper"}],entitiesTitle:[{type:0,value:"Copy to your clipboard"}],summaryClipboard:[{type:0,value:"Summarize conversation"}],summaryTitle:[{type:0,value:"Conversation summary"}],knowledgeAssist:[{type:0,value:"Knowledge assist"}],commands:[{type:0,value:"Commands"}],use:[{type:0,value:"Use"}],preview:[{type:0,value:"Preview"}],warning:[{type:0,value:"Are you sure you want to discard the message?"}]},Cf={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 Of,{useEffect as _r,useRef as Df}from"react";import{useDispatch as Hf,useSelector as ac}from"react-redux";var vr={};q(vr,{enUS:()=>wf,nlNL:()=>Tf});var wf={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"}]},Tf={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 Yl={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 Pf,createAsyncThunk as Af,createSlice as Lf}from"@reduxjs/toolkit";import{createAsyncThunk as Ef,createSlice as kf}from"@reduxjs/toolkit";var If={data:null,fetchState:"idle"},ec=t=>{var e;return(e=t.knowledgeAssistant)==null?void 0:e.data},po=Ef("knowledgeAssistant/getKnowledgeAssistant",async(t,e)=>{var i;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=n.conversation.current;if(!s||!s.profileCode)throw new Error("No conversation of conversation profileCode found");let r=(i=n.profile.data)==null?void 0:i.knowledgeAssistant;return r?o.getKnowledgeAssistant(r):null}),Rf=kf({name:"knowledgeAssistant",initialState:If,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})}}),tc=Rf.reducer;var Sr={data:[],fetchState:"idle"},oc=t=>{var e;return(e=t.answer)==null?void 0:e.data},nc=t=>t.answer.fetchState,Mt=Pf("answer/resetKnowledgeSearch"),Lt=Af("answer/getAnswer",async(t,e)=>{var l,c,p;let{deepdeskAPI:o}=e.extra,n=e.getState().answer.data,s=ec(e.getState()),r=(l=e.getState().conversation.current)==null?void 0:l.sessionId,i=(p=(c=e.getState().info)==null?void 0:c.agentInfo)==null?void 0:p.agentId;if(!s)throw new Error("KnowledgeAssistant is not defined");let a=await o.knowledgeAssist({promptInstruction:s.prompt,question:t},n,s.code,{agentId:i,conversationId:r});return{question:t,answer:a}}),Mf=Lf({name:"answer",initialState:Sr,reducers:{},extraReducers:t=>{t.addCase(Lt.pending,e=>{e.fetchState="loading"}).addCase(Lt.rejected,e=>{e.fetchState="error"}).addCase(Lt.fulfilled,(e,o)=>{e.fetchState="done",e.data=[...e.data,o.payload]}).addCase(L,()=>Sr).addCase(Mt,()=>Sr)}}),sc=Mf.reducer;import{jsx as rc,jsxs as Nf}from"react/jsx-runtime";var ic=()=>Nf("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 512 512","aria-labelledby":"paperPlaneTitle",children:[rc("title",{id:"paperPlaneTitle",children:"PaperPlane"}),rc("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 Re,jsxs as xr}from"react/jsx-runtime";var Bf=({onUse:t,onResetQuestion:e,question:o})=>{let[n,s]=Of.useState(""),{setSelected:r}=Be(),i=Df(null),a=y("EntitiesList",Yl),l=T(vr),c=Hf(),p=ac(oc),d=ac(nc),g=async m=>{m.preventDefault(),m.stopPropagation(),n!==""&&c(Lt(n))},u=(m,f)=>{c(W({name:"knowledge assist source viewed",data:{question:f,sourceViewed:m.url||m.name},options:{includeConversationData:!0}}))};return _r(()=>{var m;o&&d==="idle"?c(Lt(o)):(m=i.current)==null||m.focus()},[i,d]),_r(()=>{d==="done"&&(c(W({name:"knowledge assist question answered",data:{question:n||o,sources:p[p.length-1].answer.sources,answer:p[p.length-1].answer.answer,isFollowUpQuestion:p.length>1},options:{includeConversationData:!0}})),r(p.length-1),s(""))},[d,p]),_r(()=>{i.current&&i.current.scrollIntoView({behavior:"smooth"})},[i,p]),xr("div",{className:a.root,children:[p.length>0&&Re("div",{className:a.alignRight,children:Re(I.Button,{onClick:e,children:l("reset")})}),xr(I.ActionsBar,{list:p.map(({answer:m})=>({text:m.answer,type:"answer"})),primaryLabel:l("use"),onPrimary:m=>t(m.text),children:[p.map(({question:m,answer:f},h)=>Re(I.List,{children:Re(I.ListItem,{"data-testid":"knowledge-search-answer",index:h,description:f.answer,closeOnSelect:!0,onClick:()=>t(f.answer),onSourceClick:E=>u(E,m),sources:f.sources,styles:{title:a.question,description:a.answer},children:m})},`${f.answer}_${h}`)),d==="loading"&&Re("p",{className:a.status,children:l("loading")}),d==="error"&&Re("p",{className:a.status,children:l("error")}),xr("form",{className:a.form,onSubmit:g,children:[Re("input",{ref:i,placeholder:l("anotherQuestion"),className:a.input,type:"text",value:n,onFocus:()=>{r(-1)},onChange:m=>{r(-1),s(m.target.value)}}),Re("button",{type:"submit",className:a.submit,children:Re(ic,{})})]})]})]})},lc=Bf;import{createAsyncThunk as Ff,createSlice as Kf}from"@reduxjs/toolkit";var Uf={data:null,fetchState:"idle"},ze=t=>t.profile.data,Pn=t=>t.profile.data?t.profile.data.uiConfig.widget.types.filter(e=>e.isActive):[],uo=Ff("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)}),zf=Kf({name:"profile",initialState:Uf,reducers:{},extraReducers:t=>{t.addCase(uo.pending,e=>{e.fetchState="loading"}).addCase(uo.rejected,e=>{e.fetchState="error"}).addCase(uo.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),cc=zf.reducer;import{useEffect as jf}from"react";import{useDispatch as Vf}from"react-redux";import{useSelector as pc}from"react-redux";import{jsx as An,jsxs as Wf}from"react/jsx-runtime";var qf=({commands:t,onClick:e,onEdit:o})=>{var p,d,g;let n=Vf(),s=T(co),r=pc(ze),i=pc(Ke),a=((g=(d=(p=r==null?void 0:r.uiConfig)==null?void 0:p.search)==null?void 0:d.initialTypes)==null?void 0:g.filter(({isActive:u})=>u))||[],l=0,c=a.map(({type:u})=>{var m;return(m=i[u])==null?void 0:m.suggestions.map(f=>({text:f.text||f.url||f.message,type:u}))}).flat(1);return jf(()=>{a.forEach(({type:u})=>{(!i[u]||i[u].suggestions.length===0)&&n(pe(u))})},[]),Wf(I.ActionsBar,{list:[...t.map(u=>({text:u.label,type:"command"})),...c],primaryLabel:s("use"),secondaryLabel:s("preview"),onPrimary:({text:u},m)=>e(u,c[m]),onSecondary:(u,m)=>{let f=m-t.length;o(c[f],i[c[f].type].suggestions)},children:[t.length>0&&An(I.List,{heading:s("commands"),children:t.map((u,m)=>An(I.ListItem,{index:m,closeOnSelect:!1,onClick:u.onClick,children:u.label},u.label))}),a.map(({type:u,title:m})=>{var f;return An(I.List,{heading:m,orientation:"vertical",children:(f=i[u])==null?void 0:f.suggestions.map(h=>(l++,An(I.ListItem,{index:l+t.length-1,closeOnSelect:!1,description:h.text,onClick:()=>e(h.text,h),"data-testid":"search-overlay-suggestion",children:h.title},`${h.id}-${h.text}`)))},u)})]})},dc=qf;import{jsx as ee,jsxs as Cr}from"react/jsx-runtime";var Xf=200,Zf=5,Qf=4,Jf=t=>t.reduce((e,o)=>[...e,...o.list.map(n=>({...n,type:o.value}))],[]),uc=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),Yf=()=>{let t=Gf(),e=se(),o=T(co),[n,s]=go(!1),[r,i]=go(""),a=ot(Ua),l=ot(ze),[c,p]=go(null),[d,g]=go([]),[u,m]=go(),f=ot(Z),h=C("showSearch"),E=C("showEntitiesCommand"),_=C("showSummaryCommand"),x=C("showKnowledgeSearch"),b=C("showImageSearch"),v=C("searchTriggerKey"),R=ot(Bl),A=ot(za),H=ot(ja),N=ot(Ka),K=S=>To(A.filter(O=>O.type===S.toUpperCase()),S),k=[{value:"PERSONAL",label:o("personalSuggestions"),list:K("PERSONAL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"URL",label:o("urlSuggestions"),list:K("URL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"STICKYMESSAGE",label:o("pinnedMessages"),list:K("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"IMAGE",label:o("imageSuggestions"),lineClamp:!1,list:K("IMAGE"),listOrientation:"horizontal",shouldShow:b}].filter(S=>S.shouldShow),B=[{label:o("entitiesClipboard"),onClick:()=>t(X("entities")),shouldShow:E&&uc(o("entitiesClipboard"),r)},{label:o("summaryClipboard"),onClick:()=>t(X("summary")),shouldShow:_&&uc(o("summaryClipboard"),r)},{label:r?`${o("knowledgeAssist")}: ${r}`:o("knowledgeAssist"),onClick:()=>t(X("knowledgeAssist")),shouldShow:x}].filter(S=>S.shouldShow),ue=(R==null?void 0:R.map(S=>({value:S.code.toUpperCase(),label:`${S.name}s`,list:K(S.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[],cs=Ln($f((S,O)=>{t(Ye({query:S,type:O,tags:["search-overlay"],size:u?50:20}))},Xf),[u]),ct=Jf([...ue,...k]),ai=Ln((S,O)=>{t(X("edit")),p({...S,searchTerm:void 0}),g(O)},[t,c,ue]),wo=Ln((S,O)=>{switch(O.type){case"IMAGE":e.send(dr,{suggestion:O});break;default:e.send(ke,{text:S,suggestion:O})}t(G(!1))},[t]),vd=S=>{lo(S.text),t(W({name:"entity copied",data:{entity:S,type:"copy"}})),t(G(!1))},Sd=Ln(S=>{t(W({name:"suggestion feedback",data:{text:S.text,source:"search",context:r},options:{includeConversationData:!0}}))},[r]),_d=S=>{e.send(ke,{text:S,suggestion:{source:"knowledge-assist",text:S}}),t(W({name:"answer used",data:{originalText:S},options:{includeConversationData:!0}})),i(""),t(X("search")),t(Mt()),t(G(!1))},xd=S=>{lo(S),t(G(!1))},bd=S=>{e.send(ke,{text:S.text,suggestion:{source:"entity",text:S.text}}),t(G(!1))},Cd=c===null||d.indexOf(c)-1<0?void 0:()=>p(d[d.indexOf(c)-1]),wd=c===null||d.indexOf(c)===d.length-1?void 0:()=>p(d[d.indexOf(c)+1]);function To(S,O){return S.slice(0,u?10:O.toLowerCase()==="image"?Qf:Zf)}function li(S,O,re){return O.reduce((Eo,ko)=>re&&u===re?ko.length+Eo:To(ko,re).length+Eo,S)}function pt(S){return O=>{n?window.confirm(o("warning"))&&(S(O),s(!1)):S(O)}}return br(()=>{r?cs(r,u):t(vn())},[r,u]),br(()=>{a==="search"&&t(Mt())},[a]),br(()=>{f&&t(ao())},[f]),Kl(v,()=>t(G(!0))),!h||!l?null:Cr(I,{placeholder:o("searchPlaceholder"),typePlaceholder:o("typePlaceholder"),onChangeSearch:i,onChangeOpen:pt(S=>t(G(S))),onChangeType:S=>m(S),onChangePage:pt(S=>t(X(S))),selectedType:u,search:r,page:a,isOpen:N,types:[...ue,...k],children:[Cr(I.Page,{id:"search",children:[r.length===0&&ee(dc,{commands:B,onClick:wo,onEdit:ai}),r.length>0&&Cr(I.ActionsBar,{list:[...B.map(S=>({text:S.label,type:"command"})),...ct.map(S=>({text:S.text||S.url||S.message,type:S.type}))],primaryLabel:o("use"),secondaryLabel:o("preview"),onPrimary:({text:S},O)=>wo(S,ct[O]),onSecondary:(S,O)=>{let re=ct[O-B.length];!re||!re.type||ai(re,K(re.type))},children:[B.length>0&&ee(I.List,{heading:o("commands"),children:B.map((S,O)=>ee(I.ListItem,{index:li(O,[],"commands"),closeOnSelect:!1,onClick:S.onClick,children:S.label},S.label))}),[...ue,...k].map(({value:S,label:O,list:re,lineClamp:Eo,listOrientation:ko},Td)=>ee(I.List,{heading:O,orientation:ko==="horizontal"?"horizontal":"vertical",onShowAll:()=>m(S),hasMore:!u&&H[S.toLowerCase()]>To(re,S).length,children:To(re,S).map((ne,Ed)=>ee(I.ListItem,{index:li(B.length+Ed,[...ue,...k].slice(0,Td).map(({list:kd})=>kd),S),closeOnSelect:!1,lineClamp:Eo,onClick:()=>wo(ne.text,ne),description:S!=="IMAGE"?ne.title&&ne.text:void 0,onFeedback:S!=="IMAGE"?()=>Sd(ne):void 0,children:S==="IMAGE"?ee(I.Image,{title:ne.title||ne.text,src:ne.image}):ne.title||ne.text},`${ne.id}-${ne.text}`))},S))]})]}),ee(I.Page,{id:"edit",onDismiss:pt(()=>{t(X("search")),p(null)}),children:c&&ee(bn,{suggestion:c,onTouched:s,onDismiss:()=>{s(!1),t(X("search")),p(null),g([])},onNext:wd,onPrevious:Cd,onUse:S=>{t(X("search")),wo(S,{...c,source:`${c.source||"text_recommendation"}-preview`}),t(G(!1)),g([]),p(null)}})}),ee(I.Page,{id:"entities",title:o("entitiesTitle"),onDismiss:pt(()=>{t(X("search"))}),children:ee(ql,{onUse:bd,onCopy:vd})}),ee(I.Page,{id:"summary",title:o("summaryTitle"),onDismiss:pt(()=>{t(X("search"))}),children:ee(Jl,{onCopy:xd})}),ee(I.Page,{id:"knowledgeAssist",title:o("knowledgeAssist"),onDismiss:pt(()=>{t(Mt()),t(X("search"))}),children:ee(lc,{question:r,onUse:_d,onResetQuestion:()=>{t(Mt()),i("")}})})]})},gc=Yf;import{jsx as wr,jsxs as oh}from"react/jsx-runtime";var th=()=>{let t=C("showSearch"),e=C("isEmbedded");return oh(eh,{children:[t&&wr(gc,{}),wr(Al,{}),e&&wr(Hl,{})]})},mc=th;import ih from"classnames";import{useSelector as ah}from"react-redux";import{jsx as Tr}from"react/jsx-runtime";var fc=({className:t})=>Tr("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:Tr("g",{children:Tr("path",{d:`M163.4,233h186v-70c0-25.6-9.4-47.8-27.3-65.7C304.2,79.4,282,70,256.4,70s-47.8,9.4-65.7,27.3
|
|
3
|
+
`,Je.MISSING_INTL_API,i);var b=o.getPluralRules(e,{type:p.pluralType}).select(g-(p.offset||0));_=p.options[b]||p.options.other}if(!_)throw new Os(p.value,g,Object.keys(p.options),i);a.push.apply(a,eo(_.value,e,o,n,s,g-(p.offset||0)));continue}}return Yu(a)}function tg(t,e){return e?oe(oe(oe({},t||{}),e||{}),Object.keys(t).reduce(function(o,n){return o[n]=oe(oe({},t[n]),e[n]||{}),o},{})):t}function og(t,e){return e?Object.keys(t).reduce(function(o,n){return o[n]=tg(t[n],e[n]),o},oe({},t)):t}function Ds(t){return{create:function(){return{get:function(e){return t[e]},set:function(e,o){t[e]=o}}}}}function ng(t){return t===void 0&&(t={number:{},dateTime:{},pluralRules:{}}),{getNumberFormat:cn(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.NumberFormat).bind.apply(e,Qo([void 0],o,!1)))},{cache:Ds(t.number),strategy:pn.variadic}),getDateTimeFormat:cn(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.DateTimeFormat).bind.apply(e,Qo([void 0],o,!1)))},{cache:Ds(t.dateTime),strategy:pn.variadic}),getPluralRules:cn(function(){for(var e,o=[],n=0;n<arguments.length;n++)o[n]=arguments[n];return new((e=Intl.PluralRules).bind.apply(e,Qo([void 0],o,!1)))},{cache:Ds(t.pluralRules),strategy:pn.variadic})}}var sa=function(){function t(e,o,n,s){o===void 0&&(o=t.defaultLocale);var r=this;if(this.formatterCache={number:{},dateTime:{},pluralRules:{}},this.format=function(c){var p=r.formatToParts(c);if(p.length===1)return p[0].value;var d=p.reduce(function(g,u){return!g.length||u.type!==$.literal||typeof g[g.length-1]!="string"?g.push(u.value):g[g.length-1]+=u.value,g},[]);return d.length<=1?d[0]||"":d},this.formatToParts=function(c){return eo(r.ast,r.locales,r.formatters,r.formats,c,void 0,r.message)},this.resolvedOptions=function(){var c;return{locale:((c=r.resolvedLocale)===null||c===void 0?void 0:c.toString())||Intl.NumberFormat.supportedLocalesOf(r.locales)[0]}},this.getAst=function(){return r.ast},this.locales=o,this.resolvedLocale=t.resolveLocale(o),typeof e=="string"){if(this.message=e,!t.__parse)throw new TypeError("IntlMessageFormat.__parse must be set to process `message` of type `string`");var i=s||{},a=i.formatters,l=Zi(i,["formatters"]);this.ast=t.__parse(e,oe(oe({},l),{locale:this.resolvedLocale}))}else this.ast=e;if(!Array.isArray(this.ast))throw new TypeError("A message must be provided as a String or AST.");this.formats=og(t.formats,n),this.formatters=s&&s.formatters||ng(this.formatterCache)}return Object.defineProperty(t,"defaultLocale",{get:function(){return t.memoizedDefaultLocale||(t.memoizedDefaultLocale=new Intl.NumberFormat().resolvedOptions().locale),t.memoizedDefaultLocale},enumerable:!1,configurable:!0}),t.memoizedDefaultLocale=null,t.resolveLocale=function(e){if(!(typeof Intl.Locale>"u")){var o=Intl.NumberFormat.supportedLocalesOf(e);return o.length>0?new Intl.Locale(o[0]):new Intl.Locale(typeof e=="string"?e:e[0])}},t.__parse=Yi,t.formats={number:{integer:{maximumFractionDigits:0},currency:{style:"currency"},percent:{style:"percent"}},date:{short:{month:"numeric",day:"numeric",year:"2-digit"},medium:{month:"short",day:"numeric",year:"numeric"},long:{month:"long",day:"numeric",year:"numeric"},full:{weekday:"long",month:"long",day:"numeric",year:"numeric"}},time:{short:{hour:"numeric",minute:"numeric"},medium:{hour:"numeric",minute:"numeric",second:"numeric"},long:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"},full:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"}}},t}();function ig(t,e){return e.split(".").reduce((o,n)=>o?o[n]:void 0,t)}var ag="dummy",Hs=sg(null);function T(t){let e=rg(Hs);if(!e)throw new Error("useTranslator() may be used only in the context of a <LocaleContext> component.");let o=t[e]??{};return(n,s)=>{let r=ig(o,n);return r?new sa(r).format(s):(e!==ag&&console.warn(`${n} does not exist in messages of ${e}`),`[${n}]`)}}import{jsx as ra,jsxs as lg}from"react/jsx-runtime";var dn=()=>lg("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleLeftTitle",children:[ra("title",{id:"angleLeftTitle",children:"AngleLeft"}),ra("path",{d:"M192 448c-8.188 0-16.38-3.125-22.62-9.375l-160-160c-12.5-12.5-12.5-32.75 0-45.25l160-160c12.5-12.5 32.75-12.5 45.25 0s12.5 32.75 0 45.25L77.25 256l137.4 137.4c12.5 12.5 12.5 32.75 0 45.25C208.4 444.9 200.2 448 192 448z"})]});import{jsx as ia,jsxs as cg}from"react/jsx-runtime";var aa=()=>cg("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 256 512","aria-labelledby":"angleRightTitle",children:[ia("title",{id:"angleRightTitle",children:"AngleRight"}),ia("path",{d:"M64 448c-8.188 0-16.38-3.125-22.62-9.375c-12.5-12.5-12.5-32.75 0-45.25L178.8 256L41.38 118.6c-12.5-12.5-12.5-32.75 0-45.25s32.75-12.5 45.25 0l160 160c12.5 12.5 12.5 32.75 0 45.25l-160 160C80.38 444.9 72.19 448 64 448z"})]});import{useEffect as oo,useRef as Ws,useState as Mg}from"react";import{useDispatch as Ng}from"react-redux";import{Interweave as Ia}from"interweave";import Ra from"classnames";var Bs={root:"_root_smoda_1",agentText:"_agentText_smoda_3",textInput:"_textInput_smoda_8",textInputWrapper:"_textInputWrapper_smoda_27",alert:"_alert_smoda_31",alertText:"_alertText_smoda_50",warning:"_warning_smoda_60",success:"_success_smoda_69"};import{Matcher as gg}from"interweave";import mg from"classnames";import{useEffect as pg,useRef as dg,useState as ug}from"react";function la(t,e){let o;return[(...n)=>{window.cancelAnimationFrame(o);let s=e?e(...n):n;o=window.requestAnimationFrame(()=>{t(...s)})},()=>window.cancelAnimationFrame(o)]}function un(t){let e=dg(null),[o,n]=ug(!1);return pg(()=>{let s=!1,r=parseFloat(window.getComputedStyle(document.body).zoom??"1"),[i,a]=la((p,d)=>{let g=e.current;if(!g)return;let u=p/r,m=d/r,f=g.getBoundingClientRect(),h=u>f.x&&u<f.x+f.width&&m>f.y&&m<f.y+f.height;h&&!s?(s=!0,n(!0)):!h&&s&&(s=!1,n(!1))},({clientX:p,clientY:d})=>[p,d]),[l,c]=la(()=>{s=!1,n(!1)});return t.addEventListener("mousemove",i),t.addEventListener("mouseleave",l),()=>{a(),c(),t.removeEventListener("mousemove",i),t.removeEventListener("mouseleave",l)}},[e]),[e,o]}var be={root:"_root_81non_1",container:"_container_81non_3",agentText:"_agentText_81non_5",tabText:"_tabText_81non_6",hint:"_hint_81non_6",matchSelection:"_matchSelection_81non_10",focus:"_focus_81non_16",resetIndent:"_resetIndent_81non_20",matchKeyword:"_matchKeyword_81non_24",matchPlaceholder:"_matchPlaceholder_81non_25",hover:"_hover_81non_31",hintText:"_hintText_81non_64",popover:"_popover_81non_72",popoverRoot:"_popoverRoot_81non_77",popoverContentContainer:"_popoverContentContainer_81non_81",popoverContent:"_popoverContent_81non_81",selectionOptions:"_selectionOptions_81non_107",selectionOptionsIsHidden:"_selectionOptionsIsHidden_81non_112",selectionOptionsButton:"_selectionOptionsButton_81non_116",caret:"_caret_81non_132",popoverSuggestionsRoot:"_popoverSuggestionsRoot_81non_136",suggestionsOverlayInputStyles:"_suggestionsOverlayInputStyles_81non_141"};import{jsx as ca}from"react/jsx-runtime";var fg=({inputElement:t,children:e})=>{let o=y("TabCompletion",be),[n,s]=un(t);return ca("mark",{ref:n,className:mg(o.matchPlaceholder,{[o.hover]:s}),children:e})},xt=class extends gg{match(e){let o=e.match(/(((\$!\{)|(\{))[a-zA-Z0-9_.]+\}(?!\}))/);return o?{index:o.index,length:o[0].length,match:o[0],matchString:o[0],valid:!0}:null}replaceWith(e,o){return ca(fg,{inputElement:o.inputElement,children:e},`placeholder_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import{useEffect as hg,useRef as yg,useState as vg}from"react";function gn(t){return t.contentEditable==="true"}function Sg(t){let e=0,o=0,n=window.getSelection();if(n.rangeCount!==0){let s=n.getRangeAt(0),r=s.cloneRange();r.selectNodeContents(t),r.setEnd(s.endContainer,s.endOffset),o=r.toString().length,r.selectNodeContents(t),r.setEnd(s.startContainer,s.startOffset),e=r.toString().length}return{selectionStart:e,selectionEnd:o}}function pa(t){let{selectionStart:e,selectionEnd:o}=gn(t)?Sg(t):t;return[e,o]}function mn(t){let[,e]=vg(),o=yg(null);return o.current=pa(t),hg(()=>{let n=()=>{let[s,r]=o.current??[],i=pa(t);(!i||s!==i[0]||r!==i[1])&&(o.current=i,e({}))};return t.addEventListener("keyup",n),t.addEventListener("click",n),t.addEventListener("focus",n),document.addEventListener("selectionchange",n),()=>{t.removeEventListener("keyup",n),t.removeEventListener("click",n),t.removeEventListener("focus",n),document.removeEventListener("selectionchange",n)}},[t]),o.current}function fn(t,e){if(!e)return;let o=t,{value:n}=o,[s,r]=e,i=n.match(ht);if(!i||i.length===0)return;let a=0;i.find(l=>{let c=n.indexOf(l,a);return s>c&&r<c+l.length?(o.selectionStart=c,o.selectionEnd=c+l.length,!0):(a=c+l.length,!1)})}import{useEffect as _g}from"react";function bt(t){_g(()=>{let e=o=>{o.isWithinRoot||t(o)};return document.body.addEventListener("mouseup",e),()=>{document.body.removeEventListener("mouseup",e)}},[t])}function Ye(t){t.addEventListener("mouseup",e=>{e.isWithinRoot=!0},!0)}var da,fe=new Map,xg=["bottom","height","left","right","top","width"],bg=(t={},e={})=>xg.some(o=>t[o]!==e[o]);function ua(t){var o,n;if(t.ownerDocument===document)return[];let e=((n=(o=t.ownerDocument)==null?void 0:o.defaultView)==null?void 0:n.frameElement)??null;return e?[e,...ua(e)]:[]}function ga(t,e){return!t||!e?null:{...t,top:t.top+e.top,left:t.left+e.left}}var hn=!1,ma=()=>{hn=!0;let t=[];if(fe.forEach((e,o)=>{if(!o.isConnected){e.rect=null,t.push(e),fe.delete(o);return}let n=o.getBoundingClientRect();bg(n,e.rect)&&(e.rect=n,t.push(e))}),t.forEach(e=>{let o=e.parentRects?e.parentRects.reduce(ga,e.rect):e.rect;e.callbacks.forEach(n=>n(o))}),fe.size===0){hn=!1;return}da=window.requestAnimationFrame(ma)};function Fs(t,e){let o=ua(t),n=[],s=o.map((r,i)=>Fs(r,a=>{n[i]=a;let l=fe.get(t);if(!l)return;let c=n.reduce(ga,l.rect);l.callbacks.forEach(p=>p(c))}));return{observe(r=!0){if(s.forEach(i=>i.observe(!1)),fe.has(t)){let i=fe.get(t);i.callbacks.push(e),i.rect&&e(i.rect)}else fe.set(t,{rect:void 0,callbacks:[e],parentRects:n});r&&!hn&&ma()},unobserve(){s.forEach(i=>i.unobserve());let r=fe.get(t);if(r){let i=r.callbacks.indexOf(e);i>=0&&r.callbacks.splice(i,1),r.callbacks.length||fe.delete(t),fe.size||(cancelAnimationFrame(da),hn=!1)}}}}var fa,he=new Map,ha=()=>{he.forEach((t,e)=>{if(!e.isConnected){he.delete(e);return}let{clientHeight:o,scrollHeight:n}=e,s=n>o;t.visible!==s&&(t.visible=s,t.callbacks.forEach(r=>r(t.visible)))}),he.size!==0&&(fa=window.requestAnimationFrame(ha))};function ya(t,e){return{observe(){let o=he.size===0;he.has(t)?he.get(t).callbacks.push(e):he.set(t,{visible:void 0,callbacks:[e]}),o&&ha()},unobserve(){let o=he.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||he.delete(t),he.size||cancelAnimationFrame(fa)}}}}var Ks=["borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth","borderStyle","boxSizing","color","overflowWrap","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontWeight","fontKerning","lineHeight","letterSpacing","paddingLeft","paddingTop","paddingRight","paddingBottom","width","height","textIndent","whiteSpace","wordBreak","wordSpacing","wordWrap"];function Us(t,e,o){return o.forEach(n=>{e.style[n]=t[n]})}function Ct(t){return parseFloat(t)}function yn(t){return Math.round(t*1e6)}function va(t){return t/1e6}function zs(t,e,o){if(t.boxSizing==="content-box")return;let{clientWidth:n}=e,s=Ct(t.width),r=Ct(t.borderLeftWidth),i=Ct(t.borderRightWidth),a=Ct(t.paddingRight),l=va(yn(s)-yn(r)-yn(i)),c=va(yn(n));if(l-c>2){let p=l-c;o.style.paddingRight=`${a+p}px`}}function wt(t,e={}){var p;let o=e.overlayContainer||document.createElement("div");o.style.display="none",o.style.position=e.position??"fixed",o.style.pointerEvents="none",o.style.borderColor="transparent",Ye(o);let n=window.getComputedStyle(t),s=!0,r=()=>{o.scrollTop=t.scrollTop};Us(n,o,Ks),zs(n,t,o),e.mirrorOverflow&&(o.style.overflow="hidden",t.addEventListener("scroll",r));let i=ya(t,()=>{Us(n,o,Ks),zs(n,t,o),r(),setTimeout(r,0)}),a,l=!0,c=Fs(t,d=>{if(d===null){e.onRemove&&e.onRemove(),o.remove();return}if(!l&&e.onMoveStart&&(Promise.resolve().then(()=>e.onMoveStart()),l=!0),clearTimeout(a),a=setTimeout(()=>{e.onMoveEnd&&e.onMoveEnd(),l=!1},200),d.height===0&&d.width===0){if(s===!0)return;e.onHide&&e.onHide(),o.style.display="none",s=!0;return}if(Us(n,o,Ks),zs(n,t,o),r(),o.style.top=`${d.top}px`,o.style.left=`${d.left}px`,e.closestScrollElement&&e.closestScrollElement!==t){let g=e.closestScrollElement.getBoundingClientRect(),u=window.getComputedStyle(e.closestScrollElement),m=Ct(u.borderTopWidth),f=Ct(u.borderBottomWidth),h=g.top+m-d.top,E=d.top+d.height+-(g.top+g.height-f);o.style.clipPath=`inset(${h}px 0px ${E}px 0px)`}s&&(o.style.display="block",e.onShow&&e.onShow(),s=!1)});return e.appendTo?e.appendTo.appendChild(o):(p=t.parentElement)==null||p.appendChild(o),c.observe(),i.observe(),[o,()=>{t.removeEventListener("scroll",r),c.unobserve(),i.unobserve()}]}var js={};V(js,{enUS:()=>Cg,nlNL:()=>wg});var Cg={placeholders:[{type:6,value:"placeholderSize",options:{"=0":{value:[{type:0,value:"No placeholders found"}]},one:{value:[{type:0,value:"There is one placeholder in your message"}]},other:{value:[{type:0,value:"There are "},{type:7},{type:0,value:" placeholders in your message"}]}},offset:0,pluralType:"cardinal"}]},wg={placeholders:[{type:6,value:"placeholderSize",options:{"=0":{value:[{type:0,value:"Alle placeholders zijn uit je bericht"}]},one:{value:[{type:0,value:"Er is 1 placeholder in jouw bericht"}]},other:{value:[{type:0,value:"Er zijn "},{type:7},{type:0,value:" placeholders in jouw bericht"}]}},offset:0,pluralType:"cardinal"}]};import{jsx as Sa,jsxs as Tg}from"react/jsx-runtime";var _a=()=>Tg("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 512 512","aria-labelledby":"circleCheckTitle",children:[Sa("title",{id:"circleCheckTitle",children:"Check"}),Sa("path",{d:"M243.8 339.8C232.9 350.7 215.1 350.7 204.2 339.8L140.2 275.8C129.3 264.9 129.3 247.1 140.2 236.2C151.1 225.3 168.9 225.3 179.8 236.2L224 280.4L332.2 172.2C343.1 161.3 360.9 161.3 371.8 172.2C382.7 183.1 382.7 200.9 371.8 211.8L243.8 339.8zM512 256C512 397.4 397.4 512 256 512C114.6 512 0 397.4 0 256C0 114.6 114.6 0 256 0C397.4 0 512 114.6 512 256zM256 48C141.1 48 48 141.1 48 256C48 370.9 141.1 464 256 464C370.9 464 464 370.9 464 256C464 141.1 370.9 48 256 48z"})]});import{jsx as xa}from"react/jsx-runtime";var ba=()=>xa("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",fill:"currentColor",children:xa("path",{d:"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224c0-17.7-14.3-32-32-32s-32 14.3-32 32s14.3 32 32 32s32-14.3 32-32z"})});var Ca=(i=>(i.CUT="Cut",i.BACKSPACE="Backspace",i.DELETE="Delete",i.ERASEEOF="EraseEof",i.UNDO="Undo",i.CLEAR="Clear",i))(Ca||{}),Fe=class{constructor(e){this.element=e;this.currentText=this.getText(),this.currentHTML=this.getHTML(),this.listen()}eventListeners={};disposeHandlers=[];currentText="";currentCaret=null;currentSelection={start:0,end:0};currentHTML="";isFocused=!1;isActive=!0;isSettingValue=!1;isSubmitting=!1;isPossibleClearInputAction=!1;isDisposed=!1;addEventListener(e,o){let n=s=>{o(s)};this.element.addEventListener(e,n),this.disposeHandlers.push(()=>{this.element.removeEventListener(e,n)})}removeEventListener(e,o){this.element.removeEventListener(e,o)}triggerChange(){let e=this.getText(),o=this.getHTML(),n=e!==this.currentText;this.isActive&&(e===""&&this.currentText!==""&&!this.isSettingValue&&!this.isPossibleClearInputAction&&(this.isSubmitting=!0,this.emit("submit")),!this.isSettingValue&&n&&!this.isSubmitting&&this.emit("change",{plainText:e}),n&&(this.currentSelection=this.getSelection()),this.currentText=e,this.isSubmitting=!1,(this.currentHTML!==o||o===null&&n)&&(this.emit("updated",{plainText:e}),this.triggerCaretPosition(),this.currentHTML=o))}triggerSelection(){let e=this.getSelection();(e.start!==this.currentSelection.start||e.end!==this.currentSelection.end)&&(this.currentSelection=e,this.emit("selection",e),this.triggerCaretPosition())}triggerCaretPosition(){let e=this.getCaretPosition();De(e,this.currentCaret)||(this.currentCaret=e,this.emit("caret",e))}handleKeyUp(e){let{key:o,shiftKey:n}=e;(o==="Enter"&&n===!0||o==="Backspace")&&this.triggerChange(),this.triggerSelection()}handleClick(){this.triggerSelection()}handleFocus(){this.isFocused||this.emit("focus"),this.triggerSelection(),this.isFocused=!0}handleBlur(){this.isPossibleClearInputAction=!1,this.isFocused&&this.emit("blur"),this.isFocused=!1}handleKeyDown(e){let{key:o,ctrlKey:n,metaKey:s}=e;this.isPossibleClearInputAction=Object.values(Ca).includes(o)||o.toLowerCase()==="z"&&(n||s),this.emit("keydown",e)}handleCut(){this.isPossibleClearInputAction=!0,this.emit("cut",{selectionText:this.getSelectedText()})}handlePaste(e){var n,s;let o=((n=e.clipboardData)==null?void 0:n.getData("text"))||((s=e.clipboardData)==null?void 0:s.getData("text/plain"))||"";this.emit("paste",{pastedText:o,selectionText:this.getSelectedText()})}listen(){this.addEventListener("keydown",o=>this.handleKeyDown(o)),this.addEventListener("keyup",o=>this.handleKeyUp(o)),this.addEventListener("input",()=>this.triggerChange()),this.addEventListener("change",()=>this.triggerChange()),this.addEventListener("focus",()=>this.handleFocus()),this.addEventListener("blur",()=>this.handleBlur()),this.addEventListener("cut",()=>this.handleCut()),this.addEventListener("paste",o=>this.handlePaste(o)),this.addEventListener("click",()=>this.triggerSelection()),document.activeElement===this.element&&setTimeout(()=>{this.handleFocus()},0);let e=new MutationObserver(()=>{this.element.isConnected||(this.emit("unmounted"),this.dispose())});e.observe(document.body,{subtree:!0,childList:!0}),this.disposeHandlers.push(()=>{e.disconnect()}),this.currentSelection=this.getSelection()}focus(){this.element.focus()}emit(e,...o){this.isDisposed||this.eventListeners[e]&&this.eventListeners[e].forEach(n=>{n(...o)})}on(e,o){this.isDisposed||(this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o))}activate(){let e=this.isActive===!1;this.isActive=!0,e&&this.triggerChange()}deactivate(){this.isActive=!1}dispose(){this.disposeHandlers.forEach(e=>e()),this.eventListeners={},this.isDisposed=!0}};var Ke=class extends Fe{lastKnownSelection=null;getText(){return this.element.value}getHTML(){return null}getSelection(){let{selectionStart:e,selectionEnd:o}=this.element;return{start:e,end:o}}getSelectedText(){let e=this.getSelection();return e?this.getText().slice(e.start,e.end):""}getCaretPosition(){return null}applyChanges(e){if(!this.isActive)return;this.isSettingValue=!0;let o=this.getText(),n=e(this.element);return Promise.resolve(n).then(()=>{this.currentText=this.getText(),o!==this.currentText&&this.triggerChange(),this.isSettingValue=!1})}listen(){super.listen();let e=Object.getOwnPropertyDescriptor(window.HTMLTextAreaElement.prototype,"value");Object.defineProperty(this.element,"value",{configurable:!0,get:()=>{var s;return(s=e==null?void 0:e.get)==null?void 0:s.call(this.element)},set:s=>{var r;(r=e==null?void 0:e.set)==null||r.call(this.element,s),this.triggerChange()}});let o=this.element.disabled,n=new MutationObserver(()=>{this.element.disabled!==o&&(o=this.element.disabled,this.emit(o?"disabled":"enabled"))});n.observe(this.element,{attributes:!0,attributeFilter:["disabled"]}),this.disposeHandlers.push(()=>n.disconnect())}};var Eg=/[.*+?^${}()|[\]\\]/g,kg=/[^0-9A-Za-zÀ-ÖØ-öø-ÿ](?=[0-9A-Za-zÀ-ÖØ-öø-ÿ]*$)/;function Ig(t){return t.replace(Eg,"\\$&")}function Rg(t,e){let o=t.split("").findIndex((n,s)=>n!==e[s]);return o>-1?o:Math.min(t.length,e.length)}function Pg(t){return t.search(kg)}function wa(t,e=[]){let o=t;return e.forEach(n=>{if(!n)return;let s=new RegExp(`\\b(${Ig(n)})\\b`,"gi");o=o.replace(s,"<strong>$1</strong>")}),o}function Ta(t){return t.replace(ht,'<mark data-type="placeholder">$1</mark>')}function to(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function Ag(t,e){return t.split("").map((i,a)=>({char:i,index:a})).filter(({char:i,index:a})=>/\s/.test(i)&&a<=e).map(({index:i})=>i).reverse()[0]}function Vs(t,e,o={}){if(e){let n=Rg(e.toLowerCase(),t.toLowerCase()),s=to(t.substring(n,t.length));if(o.stripAgentPart){let l=t.substring(0,n),c=Pg(l);return`<span style="opacity: 0.5">${l.substring(c+1)}</span>${s}`}let i=e.split(Ci).length>3||e.length>30?Ag(e.trim(),n):0;return`${`${i>0?"\u2026":""}${to(t.substring(i,n))}`}<strong>${s}</strong>`}return t}var Lg=/(<\/[a-zA-Z]+[0-9]?>|<[a-zA-Z]+\s?\/>|<br>)/i;function Tt(t){return Lg.test(t)}function Ea(t){if(Tt(t)){let o=/<body[^>]*>([\s\S]*)<\/body>/gi.exec(t);return o?o[1]:""}return t}function ka(t){let e=document.createElement("template");return e.innerHTML=t,e.content.textContent??""}import{jsx as pe,jsxs as qs}from"react/jsx-runtime";var Og=({value:t,onUse:e,...o})=>{var d;let n=T(js),s=Ng(),r=Tt(t),i=y("EditSuggestionTextInput",Bs),[a,l]=Mg(null),c=Ws(null),p=((d=t.match(ht))==null?void 0:d.length)||0;return oo(()=>{let g;return c.current&&(l(c.current),g=new Ke(c.current),g.on("change",({plainText:u})=>{s(J.actions.userInput({text:u,selection:g.getSelection()}))}),g.on("keydown",u=>{s(J.actions.registerKeyDown(qo(u))),u.code==="Enter"&&u.shiftKey&&e(g.getText())}),g.on("paste",({pastedText:u,selectionText:m})=>{s(J.actions.registerPaste({text:u,selectionText:m}))}),g.on("cut",({selectionText:u})=>{s(J.actions.registerCut(u))})),()=>{s(J.actions.reset()),g.dispose(),g.deactivate()}},[c]),oo(()=>{t&&c.current&&(c.current.value=t)},[t,c]),oo(()=>{c.current&&setTimeout(()=>{if(!c.current)return;let g=c.current.value.length;c.current.setSelectionRange(g,g),c.current.focus()},0)},[c]),r?pe("div",{className:i.textInputWrapper,children:pe(Ia,{className:i.textInput,tagName:"div",content:t})}):qs("div",{className:i.textInputWrapper,children:[pe("textarea",{...o,ref:c,"data-testid":"edit-suggestion-dialog-textarea",className:i.textInput,defaultValue:t,onChange:()=>{}}),a&&pe(Dg,{inputElement:c.current,value:t}),qs("div",{className:Ra(i.alert,p===0?i.success:i.warning),children:[pe("div",{className:i.alertText,children:n("placeholders",{placeholderSize:p})}),p===0?pe(_a,{}):pe(ba,{})]})]})},Dg=({inputElement:t,value:e})=>{let o=y("EditSuggestionTextInput",Bs),n=Ws(null),s=mn(t);return oo(()=>{fn(t,s)},[s,t]),pe(Hg,{inputElement:t,children:qs("div",{ref:n,className:Ra(o.root,o.agentText),children:[pe(Ia,{tagName:"span",disableLineBreaks:!0,content:e,matchers:[new xt("placeholders")],inputElement:t,boundaryRef:n}),pe("br",{})]})})},Hg=({inputElement:t,children:e})=>{let o=Ws(null);return oo(()=>{if(!o.current)return()=>{};let[n,s]=wt(t,{overlayContainer:o.current,mirrorOverflow:!0});return n.setAttribute("translate","no"),()=>{s()}},[o.current]),pe("div",{ref:o,children:e})},Pa=Og;import{useEffect as Em,useState as km,useRef as Im}from"react";import{useState as Kg}from"react";import $s from"classnames";var Y={root:"_root_1xflk_1",list:"_list_1xflk_2",listWrapper:"_listWrapper_1xflk_6",listHorizontal:"_listHorizontal_1xflk_10",page:"_page_1xflk_19",search:"_search_1xflk_25",pageNav:"_pageNav_1xflk_33",pageTitle:"_pageTitle_1xflk_41",pageBackButton:"_pageBackButton_1xflk_48",listHeader:"_listHeader_1xflk_62",listHeading:"_listHeading_1xflk_68",listMoreButton:"_listMoreButton_1xflk_76",listItem:"_listItem_1xflk_87",listItemContent:"_listItemContent_1xflk_96",listItemText:"_listItemText_1xflk_114",listItemDescription:"_listItemDescription_1xflk_122",listItemActions:"_listItemActions_1xflk_129",truncate:"_truncate_1xflk_140",lineClamp:"_lineClamp_1xflk_146",listItemTitle:"_listItemTitle_1xflk_153",listItemAction:"_listItemAction_1xflk_129",listItemPrimaryAction:"_listItemPrimaryAction_1xflk_174",listItemSelected:"_listItemSelected_1xflk_179",sources:"_sources_1xflk_183",sourcesTitle:"_sourcesTitle_1xflk_190",source:"_source_1xflk_183",icon:"_icon_1xflk_205",searchIcon:"_searchIcon_1xflk_222",searchInputWrapper:"_searchInputWrapper_1xflk_227",searchInput:"_searchInput_1xflk_227",select:"_select_1xflk_248",selectType:"_selectType_1xflk_265",selectWrapper:"_selectWrapper_1xflk_269",image:"_image_1xflk_299",imageSrc:"_imageSrc_1xflk_306",imageSrcHidden:"_imageSrcHidden_1xflk_317",imageSrcStatus:"_imageSrcStatus_1xflk_321",imageTitle:"_imageTitle_1xflk_331",actions:"_actions_1xflk_336",actionsWrapper:"_actionsWrapper_1xflk_340",actionsBar:"_actionsBar_1xflk_346",actionButton:"_actionButton_1xflk_355",hasShortKeys:"_hasShortKeys_1xflk_368",actionShortcut:"_actionShortcut_1xflk_377",actionShortcutFixKerning:"_actionShortcutFixKerning_1xflk_384"};var Ce={};V(Ce,{enUS:()=>Bg,nlNL:()=>Fg});var Bg={visitUrl:[{type:0,value:"Visit"}],back:[{type:0,value:"Back"}],loading:[{type:0,value:"Loading..."}],imageError:[{type:0,value:"Could not load image"}],showAll:[{type:0,value:"Show more"}]},Fg={visitUrl:[{type:0,value:"Bekijk"}],back:[{type:0,value:"Terug"}],loading:[{type:0,value:"Laden..."}],imageError:[{type:0,value:"Kan afbeelding niet laden"}],showAll:[{type:0,value:"Toon meer"}]};import{jsx as no,jsxs as zg}from"react/jsx-runtime";var Ug=({src:t,title:e})=>{let o=y("CommandPalette",Y),[n,s]=Kg("loading"),r=T(Ce);return zg("div",{className:o.image,children:[no("img",{src:t,alt:e,onLoad:()=>s("done"),onError:()=>s("error"),className:$s(o.imageSrc,{[o.imageSrcHidden]:["loading","error"].includes(n)})}),n==="loading"&&no("span",{className:$s(o.imageSrc,o.imageSrcStatus),children:r("loading")}),n==="error"&&no("span",{className:$s(o.imageSrc,o.imageSrcStatus),children:no(No,{})}),e&&no("span",{className:o.imageTitle,children:e})]})},Aa=Ug;import jg from"react";import Vg from"classnames";import{jsx as Gs,jsxs as La}from"react/jsx-runtime";function Xs({children:t,heading:e,orientation:o,hasMore:n,onShowAll:s}){let r=T(Ce),i=y("CommandPalette",Y);return jg.Children.count(t)===0?null:La("div",{"data-testid":"commandpalette-list",className:i.list,children:[(e||n)&&La("div",{className:i.listHeader,children:[e&&Gs("h4",{className:i.listHeading,children:e}),n&&s&&Gs("button",{onClick:s,className:i.listMoreButton,type:"button",children:r("showAll")})]}),Gs("div",{className:Vg(i.listWrapper,o==="horizontal"&&i.listHorizontal),children:t})]})}import _n from"classnames";import{Interweave as im}from"interweave";import qg,{useState as Ma,useEffect as Na,useMemo as Wg,useRef as Oa,useCallback as $g,useContext as Gg}from"react";import Xg from"classnames";var Zs={root:"_root_1oh4w_1",trigger:"_trigger_1oh4w_5",content:"_content_1oh4w_19",contentOpen:"_contentOpen_1oh4w_33",contentTop:"_contentTop_1oh4w_37",contentBottom:"_contentBottom_1oh4w_41",item:"_item_1oh4w_45"};import{jsx as vn,jsxs as Yg}from"react/jsx-runtime";var Zg=0,Da=qg.createContext(null),Qg=()=>{let t=Gg(Da);if(!t)throw new Error("Invalid DropdownContext");return t},Ha=({trigger:t,children:e,position:o="bottom"})=>{let n=Wg(()=>++Zg,[]),s=Oa(null),r=Oa(null),i=y("Dropdown",Zs),[a,l]=Ma(!1),[c,p]=Ma(o),d=u=>{u.preventDefault(),u.stopPropagation(),l(!a)},g=$g(([u])=>{!u.isIntersecting&&a&&p(c==="top"?"bottom":"top")},[a]);return Na(()=>{let u=m=>{s.current&&!s.current.contains(m.target)&&l(!1)};return document.addEventListener("click",u),()=>{document.removeEventListener("click",u)}},[]),Na(()=>{if(!r.current&&!a)return()=>{};let u=new IntersectionObserver(g,{root:null,rootMargin:"0px",threshold:1});return r.current&&u.observe(r.current),()=>{r.current&&u.unobserve(r.current)}},[r,a]),vn(Da.Provider,{value:{setIsOpen:l},children:Yg("div",{ref:s,className:i.root,children:[vn("button",{id:`dropdown-${n}`,"data-testid":"dropdown-trigger","aria-haspopup":"true","aria-expanded":a,"aria-label":"Dropdown trigger",type:"button",className:i.trigger,onClick:d,children:t}),vn("div",{"data-testid":"dropdown-content",ref:r,"aria-hidden":!a,"aria-labelledby":`dropdown-${n}`,className:Xg(i.content,{[i.contentOpen]:a,[i.contentTop]:c==="top",[i.contentBottom]:c==="bottom"}),children:e})]})})};function Jg({as:t,children:e,onClick:o,...n}){let s=t||"button",r=y("Dropdown",Zs),{setIsOpen:i}=Qg(),a=l=>{i(!1),o(l),l.stopPropagation()};return vn(s,{type:"button",className:r.item,onClick:a,...n,children:e})}Ha.Item=Jg;var Qs=Ha;import{jsx as Ba}from"react/jsx-runtime";var Fa=t=>Ba("svg",{xmlns:"http://www.w3.org/2000/svg",height:"16",width:"14",viewBox:"0 0 448 512",...t,children:Ba("path",{fill:"currentColor",d:"M8 256a56 56 0 1 1 112 0A56 56 0 1 1 8 256zm160 0a56 56 0 1 1 112 0 56 56 0 1 1 -112 0zm216-56a56 56 0 1 1 0 112 56 56 0 1 1 0-112z"})});var et={};V(et,{enUS:()=>em,nlNL:()=>tm});var em={preview:[{type:0,value:"Preview"}],useSuggestion:[{type:0,value:"Add"}],sendSuggestion:[{type:0,value:"Send"}],suggestionSent:[{type:0,value:"Sent"}],sendingError:[{type:0,value:"Sending failed"}],tryAgain:[{type:0,value:"Try again"}],editSuggestion:[{type:0,value:"Edit"}],visitUrl:[{type:0,value:"Visit"}],giveFeedback:[{type:0,value:"Give feedback"}],answer:[{type:0,value:"Answer"}]},tm={preview:[{type:0,value:"Preview"}],useSuggestion:[{type:0,value:"Gebruik"}],sendSuggestion:[{type:0,value:"Verzenden"}],suggestionSent:[{type:0,value:"Verzonden"}],sendingError:[{type:0,value:"Verzenden mislukt"}],tryAgain:[{type:0,value:"Probeer opnieuw"}],editSuggestion:[{type:0,value:"Bewerken"}],visitUrl:[{type:0,value:"Bekijk"}],giveFeedback:[{type:0,value:"Geef feedback"}],answer:[{type:0,value:"Antwoord"}]};import{jsx as Js}from"react/jsx-runtime";var om="%0d%0a%0d%0a%0d%0a",nm=(t,e)=>{let o=[`Suggestie: ${encodeURIComponent(e)}`,"Beschrijf je feedback:"];return`mailto:${t.join(",")}?subject=Suggestie feedback&body=${o.join(om)}`},sm=({suggestion:t,onFeedback:e})=>{let o=T(et),n=C("suggestionFeedbackEmailAddresses");return!n||n.length===0?null:Js(Qs,{trigger:Js(Fa,{"data-testid":"feedback-dropdown-trigger"}),children:Js(Qs.Item,{as:"a",href:nm(n,t),onClick:e,children:o("giveFeedback")})})},Sn=sm;import Ys from"react";import{jsx as rm}from"react/jsx-runtime";var Ka=Ys.createContext(void 0);function Ue(){let t=Ys.useContext(Ka);if(t===void 0)throw new Error("useCommandPalette must be used within the CommandPalette component");return t}var Ua=({children:t,page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r})=>{let i=Ys.useMemo(()=>({page:e,isOpen:o,onChangeOpen:n,selected:s,setSelected:r}),[o,e,s]);return rm(Ka.Provider,{value:i,children:t})};import{jsx as ze,jsxs as er}from"react/jsx-runtime";function tr({closeOnSelect:t=!0,lineClamp:e,children:o,onClick:n,onFeedback:s,onSourceClick:r,index:i,description:a,sources:l,styles:c,...p}){let{selected:d,setSelected:g,onChangeOpen:u}=Ue(),m=y("CommandPalette",Y);function f(h){n(h),t&&u(!1)}return er("div",{className:_n(m.listItem,d===i&&m.listItemSelected),children:[ze("button",{onMouseEnter:()=>g(i),type:"button",className:_n("command-palette-list-item",m.listItemAction,m.listItemPrimaryAction),"aria-disabled":p.disabled??!1,onClick:f,...p,children:er("div",{className:m.listItemContent,children:[typeof o=="string"?ze("p",{className:_n(m.listItemText,m.truncate,c==null?void 0:c.title),children:o}):o,a&&ze(im,{tagName:"p",allowList:[],content:Tt(a)?ka(a):a,className:_n(m.listItemDescription,c==null?void 0:c.description,e?m.lineClamp:m.truncate)})]})}),s&&d===i&&ze("div",{className:m.listItemActions,children:ze(Sn,{suggestion:String(o),onFeedback:s})}),l&&er("div",{className:m.sources,children:[ze("span",{className:m.sourcesTitle,children:"Sources"}),l.map(h=>h.url?ze("a",{className:m.source,href:h.url,target:"_blank",title:h.url,rel:"noopener noreferrer",onClick:()=>r&&r(h),children:h.name},h.url):ze("span",{className:m.source,children:h.name},h.name))]})]})}import{jsx as za,jsxs as or}from"react/jsx-runtime";function nr({children:t,title:e,id:o,onDismiss:n}){let s=T(Ce),r=y("CommandPalette",Y),{page:i}=Ue();return i!==o?null:or("div",{className:r.page,id:`page_${o}`,tabIndex:-1,children:[n&&or("div",{className:r.pageNav,children:[or("button",{className:r.pageBackButton,type:"button",onClick:n,children:[za(dn,{}),s("back")]}),e&&za("h3",{className:r.pageTitle,children:e})]}),t]})}import{Fragment as hm,useCallback as ym,useEffect as vm,useRef as Sm}from"react";import{createAsyncThunk as pm,createSlice as dm}from"@reduxjs/toolkit";import{createAsyncThunk as rr,createSlice as lm}from"@reduxjs/toolkit";function am(t){return t.replace(/(_\w)/g,e=>e[1].toUpperCase())}function A(t){return Array.isArray(t)?t.map(A):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[am(o)]:A(t[o])}),{}):t}function sr(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`)}function z(t){return Array.isArray(t)?t.map(z):typeof t=="object"&&t!==null?Object.keys(t).reduce((e,o)=>({...e,[sr(o)]:z(t[o])}),{}):t}var cm={agentInfo:void 0,agentSettings:{},visitorInfo:void 0,fetchState:"idle"},ro=t=>{var e,o,n;return{timezone:((e=t.info.visitorInfo)==null?void 0:e.visitorTimeZone)||Intl.DateTimeFormat().resolvedOptions().timeZone,agentName:((o=t.info.agentInfo)==null?void 0:o.agentNickname)||"",visitorName:((n=t.info.visitorInfo)==null?void 0:n.visitorName)||""}},so=rr("info/setAgentInfo",async(t,e)=>{let{deepdeskAPI:o}=e.extra;if(!t.agentId&&!t.agentNickname)throw new Error("At least provide agentId or agentNickname");let n=await o.client.get("/apis/admin/session/me/",{version:null}),s={};return n.external_id||(s.external_id=t.agentId),n.nickname||(s.nickname=t.agentNickname),!s.external_id&&!s.nickname?A(n):(await o.client.patch("/apis/admin/session/me/",s,{version:null}),A(n))}),ir=rr("info/setAgentSettings",async(t,e)=>{let{deepdeskAPI:o}=e.extra,n=await o.client.get("/apis/admin/session/me/",{version:null}),s={...typeof n.ui_config=="object"?n.ui_config:{},...t};return await o.client.patch("/apis/admin/session/me/",{ui_config:s}),s}),ar=rr("info/getAgentSettings",async(t,e)=>{let{deepdeskAPI:o}=e.extra;return(await o.client.get("/apis/admin/session/me/",{version:null})).ui_config}),ja=t=>t.info.agentInfo,Va=lm({name:"info",initialState:cm,reducers:{setVisitorInfo(t,e){t.visitorInfo={...t.visitorInfo,...e.payload}}},extraReducers:t=>{t.addCase(so.pending,(e,o)=>{e.fetchState="loading",e.agentInfo={...e.agentInfo,...o.meta.arg}}).addCase(so.rejected,e=>{e.fetchState="error"}).addCase(so.fulfilled,(e,o)=>{e.fetchState="done",e.agentInfo={...e.agentInfo,...o.meta.arg,agentId:o.payload.externalId||o.meta.arg.agentId||"",agentNickname:o.payload.nickname||o.meta.arg.agentNickname||""}}).addCase(ir.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(ar.fulfilled,(e,o)=>{e.agentSettings=o.payload}).addCase(P,e=>{e.visitorInfo=void 0})}}),{setVisitorInfo:qa}=Va.actions,Wa=Va.reducer;var xn={list:[],fetchState:"idle",isOpen:!1,page:"search",aggregates:{}},$a=t=>t.search.isOpen,Ga=t=>t.search.page,Xa=t=>t.search.list,Za=t=>t.search.aggregates;function Qa(t,e=o=>o){return o=>o.search.list.filter(n=>n.type===t).map(e)}var tt=pm("search/getAll",async(t,e)=>{var a;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(a=n.conversation.current)==null?void 0:a.profileCode;if(!s)throw new Error("Profile should be provided in order to be able to search");let{results:r,aggregates:i}=await o.search({profile:s,query:t.query,tags:t.tags,size:t.size,current:t.current,filters:{type:t.type},params:ro(n)});return{results:r.map(l=>({...l,source:`search-${l.type.toLowerCase()}`,searchTerm:t.query})),aggregates:i}}),Ja=dm({name:"search",initialState:xn,reducers:{setIsOpen(t,e){t.isOpen=e.payload},setPage(t,e){t.page=e.payload},resetSearch(t){t.fetchState=xn.fetchState,t.list=xn.list}},extraReducers:t=>{t.addCase(tt.pending,e=>{e.fetchState="loading"}).addCase(tt.rejected,(e,o)=>{e.fetchState="error",w.error(o.error)}).addCase(tt.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload.results,e.aggregates=o.payload.aggregates||{}}).addCase(P,()=>xn)}}),{resetSearch:bn,setIsOpen:G,setPage:X}=Ja.actions,Ya=Ja.reducer;var um=/(https?:\/\/[^\s]+)/,Cn=t=>t.split(" ").find(e=>um.test(e));var wn=()=>/Mac/i.test(navigator.platform);import el from"classnames";import{jsx as mm,jsxs as fm}from"react/jsx-runtime";var gm=({onClick:t,shortKeys:e,children:o,...n})=>{let s=y("CommandPalette",Y);return fm("button",{type:"button",...n,onClick:t,className:el(s.actionButton,n.className,{[s.hasShortKeys]:e&&e.length>0}),children:[o,e&&e.map(r=>mm("span",{className:el(s.actionShortcut,r===8629&&s.actionShortcutFixKerning),children:typeof r=="number"?String.fromCharCode(r):r},r))]})},Et=gm;import{jsx as Tn,jsxs as lr}from"react/jsx-runtime";var _m=["url","URL"],xm=["default","pinned-message","DEFAULT","STICKYMESSAGE"],bm=({children:t,primaryLabel:e,secondaryLabel:o,onPrimary:n,onSecondary:s,list:r})=>{let i=y("CommandPalette",Y),a=T(Ce),{selected:l,setSelected:c}=Ue(),p=r[l],d=p&&p.type&&_m.includes(p.type),g=p&&p.type&&xm.includes(p.type)||p&&"secondaryAction"in p,u=d?Cn(p.text):null,m=Sm(null);function f(v){if(!m.current)return;let R=m.current.querySelectorAll(".command-palette-list-item"),N=0,B=0;v==="down"?(R.forEach((U,F)=>{F===l&&(N=F)}),B=N===R.length-1?0:N+1):v==="up"?(R.forEach((U,F)=>{F===l&&(N=F)}),B=N?N-1:R.length-1):c(0);let D=R[B];D&&typeof B=="number"&&(c(B),D.scrollIntoView&&D.scrollIntoView({behavior:"smooth",block:B?"center":"end"}))}function h(){if(!m.current)return;let v=m.current.querySelectorAll(".command-palette-list-item"),R=0;v.forEach((B,D)=>{D===l&&(R=D)});let N=v[R];N&&N.click()}let E=()=>{u&&window.open(u,"_blank")},x=()=>{p&&n(p,l)},_=()=>{!s||!g||s(p,l)},b=ym(v=>{if(v.key==="Enter"&&v.altKey&&u){E();return}if(v.key==="Enter"&&v.shiftKey){_();return}if(v.key==="ArrowDown"){v.preventDefault(),v.stopPropagation(),f("down");return}if(v.key==="ArrowUp"){v.preventDefault(),v.stopPropagation(),f("up");return}v.key==="Enter"&&l!==-1&&(v.preventDefault(),v.stopPropagation(),h())},[l]);return vm(()=>(window.addEventListener("keyup",b),()=>{window.removeEventListener("keyup",b)}),[b]),lr("div",{className:i.actions,children:[Tn("div",{className:i.actionsWrapper,ref:m,children:t}),lr("div",{className:i.actionsBar,children:[u&&Tn(Et,{onClick:E,shortKeys:[wn()?8997:"ALT",8629],children:a("visitUrl")}),p&&lr(hm,{children:[s&&g&&Tn(Et,{onClick:_,shortKeys:[8679,8629],children:o}),Tn(Et,{onClick:x,shortKeys:[8629],children:e})]})]})]})},ol=bm;import{forwardRef as wm}from"react";import{jsx as nl,jsxs as Cm}from"react/jsx-runtime";var kt=()=>Cm("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 0 24 24",width:"1em",fill:"currentColor",children:[nl("path",{d:"M0 0h24v24H0z",fill:"none"}),nl("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"})]});import{jsx as It,jsxs as cr}from"react/jsx-runtime";function Tm({onChange:t,onChangeType:e,placeholder:o,typePlaceholder:n,types:s,value:r,selectedType:i},a){let l=y("CommandPalette",Y);return cr("div",{className:l.search,children:[It("div",{className:l.searchIcon,children:It(kt,{})}),cr("div",{className:l.searchInputWrapper,children:[It("input",{ref:a,spellCheck:!1,autoComplete:"off",onChange:c=>{t(c.currentTarget.value)},onFocus:c=>{c.currentTarget.select()},className:l.searchInput,placeholder:o,value:r,type:"text",id:"command-palette-search-input",autoFocus:!0}),s&&s.length>0&&It("div",{className:l.selectWrapper,children:cr("select",{"data-testid":"command-palette-type-select",className:l.select,onChange:c=>e(c.target.value===n?void 0:c.target.value),value:i||n,children:[n&&It("option",{children:n}),s.map(c=>It("option",{value:c.value,children:c.label},c.value))]})})]})]})}var sl=wm(Tm);import{jsx as rl,jsxs as Rm}from"react/jsx-runtime";function ot({placeholder:t="Start typing to search...",typePlaceholder:e="All types",defaultPage:o="search",page:n,onChangePage:s,onChangeSearch:r,onChangeType:i,onChangeOpen:a,selectedType:l,types:c,children:p,isOpen:d,search:g}){let[u,m]=km(0),f=Im(null),h=()=>{s&&s(o),i(void 0),r(""),a(!1)},E=()=>{var x;if(n!==o&&s){s(o);return}if(l&&i){i(void 0),(x=f.current)==null||x.focus();return}if(g.length>0){r("");return}a(!1)};return Em(()=>{m(0)},[g,n]),rl(_t,{autoFocus:!0,contentAriaLabel:"Search Results",overlayAriaLabel:"Command Palette",isOpen:d,onBack:E,onClose:h,children:Rm(Ua,{selected:u,setSelected:m,isOpen:d,onChangeOpen:a,page:n,children:[n===o&&rl(sl,{ref:f,onChange:r,onChangeType:i,placeholder:t,value:g,selectedType:l,types:c,typePlaceholder:e}),p]})})}ot.Page=nr;ot.List=Xs;ot.Image=Aa;ot.ListItem=tr;ot.ActionsBar=ol;ot.Button=Et;var I=ot;import{jsx as we,jsxs as io}from"react/jsx-runtime";var Lm=({suggestion:t,onUse:e,onDismiss:o,onTouched:n,onNext:s,onPrevious:r})=>{let i=t.text||t.url||t.message,a=y("EditSuggestionForm",Xi),l=Pm(),c=T(Rs),p=Am(m=>m.overlayInput.text);il(()=>{t&&(l(J.actions.reset()),l(J.actions.stageSuggestion({text:i,suggestion:t,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"})),l(J.actions.commitSuggestion()))},[t]);let d=m=>{m.preventDefault(),g(p)},g=m=>{l(Go(m)),e(m)},u=m=>f=>{p!==i?window.confirm(c("warning"))&&m(f):m(f)};return il(()=>{n&&n(p!==i)},[n,t,p]),io("div",{className:a.root,children:[io("div",{className:a.content,children:[t.title&&we("h3",{className:a.title,children:t.title}),t.searchKeywords&&t.searchKeywords.length>0&&we(xs,{labels:t.searchKeywords}),we(Pa,{onUse:g,value:Ea(p)})]}),io("form",{className:a.actions,onSubmit:d,children:[io("div",{children:[we("button",{disabled:!r,className:a.pagination,type:"button",onClick:r&&u(r),children:we(dn,{})}),we("button",{disabled:!s,className:a.pagination,type:"button",onClick:s&&u(s),children:we(aa,{})})]}),io("div",{className:a.primaryButtons,children:[we(I.Button,{onClick:u(o),shortKeys:["esc"],children:c("dismiss")}),we(I.Button,{shortKeys:[8679,8629],type:"submit",children:c("add")})]})]})]})},En=Lm;import{createAction as Om,createAsyncThunk as pl,createSlice as Dm}from"@reduxjs/toolkit";var Mm=["{amount}"," {amount}","{date}","{email}","{iban}","{name}","{postal_code}","{street}","{tarif}","{usage}","{3_digits}","{4_digits}","{5_digits}","{6_digits}","{7_digits}","{8_digits}","{9_digits}","{10_digits}"],Nm=new RegExp(Mm.map(t=>`(?:${t.replace("{","\\{").replace("}","\\}")})`).join("|"));function al(t,e){let o=t.split(Nm),n=0,s=[];for(let r=0;r<o.length;r++){let i=o[r];if(s.push(i),r===o.length-1)break;if(e.indexOf(i)===-1)return t;let a=o[r+1],l=r===o.length-2;n+=i.length;let c=n;if(l){let d=a.charAt(0),g=0;do c=d?e.indexOf(d,c+1):-1,g+=1;while(c!==-1&&a.indexOf(e.slice(c))!==0);if(c===-1&&g>2)return t}else c=a&&a!==""?e.indexOf(a,n):-1;let p=c===-1?e.slice(n):e.slice(n,c);s.push(p),n=c}return s.join("")}function ll(t,e){return typeof e=="boolean"?t:t.slice(0,e)}var dl={suggestions:[],fetchState:"idle",isInitialRequest:null},cl={default:dl},kn=t=>e=>{var o;return((o=e.textSuggestions[t])==null?void 0:o.suggestions)??[]},ul=t=>{let e=Object.keys(t.textSuggestions).map(o=>{var n;return(n=t.textSuggestions[o])==null?void 0:n.fetchState});return e.length===0?!0:e.every(o=>o!=="done")},je=t=>t.textSuggestions,gl=t=>{let e=t.toLowerCase();return o=>{let n=o.text.toLowerCase();return n.startsWith(e)&&n.length>e.length}},In=Om("textSuggestions/refresh"),de=pl("textSuggestions/recommendations",async(t,e)=>{var c;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(c=n.conversation.current)==null?void 0:c.id,{textSuggestionsCount:r,inlineSuggestions:i}=n.settings,a=St(n);if(!s)throw new Error("No current conversation to fetch text suggestions");let l=await o.getTextSuggestions(s,ro(n),t);if(t==="default"){let p=i?l.filter(gl(a)):l;e.dispatch(me(p.slice(0,r)))}return l}),ao=pl("textSuggestions/autocompletions",async(t,e)=>{var c;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=(c=n.conversation.current)==null?void 0:c.id,{textSuggestionsCount:r,deanonymize:i,inlineSuggestions:a}=n.settings;if(!s)throw new Error("No current conversation to fetch text suggestions");let l=await o.getAutocompleteSuggestions(s,{...ro(n),input:t});if(!e.getState().input.text)throw new Error("Abort");return a&&(l=l.filter(gl(t))),i&&(l=l.map(p=>({...p,text:p.source!=="trie-with-typos"?al(p.text,t):p.text}))),l=ll(l,r),e.dispatch(me(l)),l}),ml=Dm({name:"textSuggestions",initialState:cl,reducers:{setTextSuggestions:{reducer(t,e){let{contentType:o}=e.payload;t[o].fetchState="done",t[o].suggestions=e.payload.suggestions},prepare(t,e){return{payload:{contentType:t,suggestions:e}}}},setSuggestionState(t,e){return e.payload}},extraReducers:t=>{t.addCase(de.pending,(e,o)=>{let n=o.meta.arg,s=e[n]||dl;return{...e,[n]:{...s,fetchState:"loading",isInitialRequest:s.isInitialRequest===null}}}).addCase(de.rejected,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="error")}).addCase(de.fulfilled,(e,o)=>{let n=o.meta.arg;e[n]&&(e[n].fetchState="done",e[n].suggestions=o.payload)}).addCase(ao.pending,e=>{e.default.fetchState="loading"}).addCase(ao.rejected,e=>{e.default.fetchState="error"}).addCase(ao.fulfilled,(e,o)=>{e.default.fetchState="done",e.default.suggestions=o.payload}).addCase(P,()=>cl)}}),{setTextSuggestions:fl,setSuggestionState:hl}=ml.actions,yl=ml.reducer;import{createSlice as Hm}from"@reduxjs/toolkit";var vl={contentType:null,suggestion:null},Sl=t=>t.activeSuggestion.suggestion,_l=t=>t.activeSuggestion.contentType,xl=Hm({name:"activeSuggestion",initialState:vl,reducers:{setActiveSuggestion(t,e){let{contentType:o,suggestion:n}=e.payload;t.contentType=o,t.suggestion=n},resetActiveSuggestion(t){t.contentType=null,t.suggestion=null}},extraReducers:t=>{t.addCase(P,()=>vl)}}),{setActiveSuggestion:Te,resetActiveSuggestion:pr}=xl.actions,bl=xl.reducer;var dr={};V(dr,{enUS:()=>Bm,nlNL:()=>Fm});var Bm={warning:[{type:0,value:"Are you sure you want to discard the message?"}],editContentLabel:[{type:0,value:"Edit and view suggestion"}],overlayLabel:[{type:0,value:"Close dialog"}]},Fm={warning:[{type:0,value:"Weet je zeker dat je de wijzigingen wilt weggooien?"}],editContentLabel:[{type:0,value:"Bewerk en bekijk suggestie"}],overlayLabel:[{type:0,value:"Sluit"}]};import{createSlice as Km}from"@reduxjs/toolkit";var Um={showTabHint:!1,inputHasFocus:!1,overlayCollapsed:!1,openOverlayWhenTyping:!1,overlayCollapsedUserOverwrite:!1};var Rn=({ui:t})=>t.overlayCollapsed;var Cl=Km({name:"ui",initialState:Um,reducers:{setShowTabHint(t,e){t.showTabHint=e.payload},setInputHasFocus(t,e){t.overlayCollapsedUserOverwrite!==!0&&(e.payload===!0&&(t.overlayCollapsed=!1),t.inputHasFocus=e.payload)},setOverlayCollapsed(t,e){e.payload.collapse===!1&&(t.openOverlayWhenTyping=!1),!(e.payload.skipWhenInputFocus&&t.inputHasFocus)&&(t.overlayCollapsed=e.payload.collapse)},setOpenOverlayWhenTyping(t,e){t.openOverlayWhenTyping=e.payload},setOverlayCollapsedUserOverwrite(t,e){t.overlayCollapsedUserOverwrite=e.payload,t.overlayCollapsed=e.payload}}}),{setShowTabHint:lo,setInputHasFocus:Rt,setOverlayCollapsed:Ve,setOpenOverlayWhenTyping:wl,setOverlayCollapsedUserOverwrite:Tl}=Cl.actions,El=Cl.reducer;import kl,{useContext as zm}from"react";import{jsx as jm}from"react/jsx-runtime";var Il=kl.createContext(null),nt=({broadcastEvents:t,children:e})=>{let o=kl.useMemo(()=>t,[]);return jm(Il.Provider,{value:o,children:e})},ie=()=>{let t=zm(Il);if(!t)throw new Error("You should use the useBroadcastEvents within a BroadcastEventsProvider");return t};import{createAsyncThunk as ur,createSlice as Vm}from"@reduxjs/toolkit";var qm={isLoggedIn:!0,loginFetchState:"idle",verifyFetchState:"idle",showLoginOverlay:!1},Z=t=>t.auth.isLoggedIn,Rl=t=>t.auth.loginFetchState,Pl=t=>t.auth.verifyFetchState,Al=t=>t.auth.showLoginOverlay,Ee=ur("auth/validate",async(t,e)=>e.extra.deepdeskAPI.isLoggedIn()),Ll=ur("auth/requestLogin",async({email:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.requestLoginByEmail(t)}),co=ur("auth/verifyLoginToken",async({token:t},e)=>{let{deepdeskAPI:o}=e.extra;return o.verifyLoginToken(t)}),Ml=Vm({name:"auth",initialState:qm,reducers:{setIsLoggedIn(t,e){t.isLoggedIn=e.payload},setShowLoginOverlay(t,e){t.showLoginOverlay=e.payload}},extraReducers:t=>{t.addCase(Ee.pending,e=>{e.loginFetchState="loading"}),t.addCase(Ee.fulfilled,(e,{payload:o})=>{e.isLoggedIn=o,e.loginFetchState="done"}),t.addCase(Ee.rejected,e=>{e.loginFetchState="error",e.isLoggedIn=!1}),t.addCase(co.pending,e=>{e.verifyFetchState="loading"}),t.addCase(co.rejected,e=>{e.verifyFetchState="error"}),t.addCase(co.fulfilled,(e,o)=>{o.payload.isLoggedIn?e.verifyFetchState="done":e.verifyFetchState="error"})}}),{setIsLoggedIn:Pt,setShowLoginOverlay:Nl}=Ml.actions,Ol=Ml.reducer;import{createAction as Wm,createAsyncThunk as $m,createSlice as Gm}from"@reduxjs/toolkit";var gr={cues:[],fetchState:"idle"},Dl=t=>{var e;return(e=t.rules)==null?void 0:e.cues},Xm=Wm("rules/resetCues"),ke=$m("rules/evaluate",async(t,e)=>{var r;let{deepdeskAPI:o}=e.extra,n=(r=e.getState().conversation.current)==null?void 0:r.id;if(!n)throw new Error("No current conversation to evaulate rules");return await o.evaluateRule(t.label,n,t.params)}),Hl=Gm({name:"answer",initialState:gr,reducers:{removeCue(t,e){t.cues=t.cues.filter(o=>o.id!==e.payload.id)}},extraReducers:t=>{t.addCase(ke.pending,e=>{e.fetchState="loading"}).addCase(ke.rejected,e=>{e.fetchState="error"}).addCase(ke.fulfilled,(e,o)=>{let n=Date.now(),s=o.payload.map(a=>({id:a.id||a.text,timestamp:n,...a})),r=s.map(a=>a.id),i=e.cues.filter(a=>!r.includes(a.id));e.fetchState="done",e.cues=[...s,...i]}).addCase(P,()=>gr).addCase(Xm.toString(),()=>gr)}}),{removeCue:Bl}=Hl.actions,Fl=Hl.reducer;var mr="SetActiveSuggestion",fr="SetCues",At="ShowLoginOverlay",po="UserLoggedIn",Zm="UserLoggedOut",Ie="ApplySuggestion",hr="ApplyImageSuggestion",Qm="ShowCommandPalette",Jm=t=>({[mr]:e=>{t.dispatch(hl(e.state)),t.dispatch(Te({contentType:e.contentType,suggestion:e.suggestion}))},[fr]:e=>{t.dispatch({type:ke.fulfilled,payload:e})},[Qm]:e=>{t.dispatch(G(e.isOpen)),e.page&&t.dispatch(X(e.page))},[At]:e=>{t.dispatch(Nl(e))},[po]:()=>{t.dispatch(Ee())},[Zm]:()=>{t.dispatch(Ee())},[hr]:e=>{t.dispatch(Zo({suggestion:e.suggestion}))},[Ie]:e=>{t.dispatch(le({...e,eventMetrics:{inputType:"mouse"},replace:"selection"})),t.dispatch(xe())}}),Kl=Jm;import{jsx as Ul}from"react/jsx-runtime";var tf=()=>{var m;let[t,e]=Ym(!1),o=yr(Sl),n=yr(_l),s=yr(je),r=ef(),i=ie(),a=T(dr),l=()=>{o!==null&&t?window.confirm(a("warning"))&&c():c()},c=()=>{r(pr()),r(Rt(!0)),r(J.actions.reset())},p=(f,h)=>{r(pr()),r(Rt(!0)),i.send(Ie,{text:f,suggestion:{...h,source:`${h.source||"text_recommendation"}-preview`}})};if(o===null||n===null)return null;let d=(m=s[n])==null?void 0:m.suggestions.indexOf(o),g=d===0||d===null?void 0:()=>r(Te({contentType:n,suggestion:s[n].suggestions[d-1]})),u=d===s[n].suggestions.length-1||d===null?void 0:()=>r(Te({contentType:n,suggestion:s[n].suggestions[d+1]}));return Ul(_t,{autoFocus:!0,isOpen:d!==null,onClose:l,onBack:l,contentAriaLabel:a("editContentLabel"),overlayAriaLabel:a("overlayLabel"),children:Ul(En,{onTouched:e,onDismiss:c,onUse:f=>p(f,o),suggestion:o,onNext:u,onPrevious:g})})},zl=tf;import{useSelector as $l}from"react-redux";import Sr from"classnames";import{useCallback as ql,useEffect as lf,useMemo as cf,useState as _r}from"react";import{useDispatch as pf,useSelector as df}from"react-redux";import of from"classnames";var jl={root:"_root_1ukx5_1"};import{jsx as sf}from"react/jsx-runtime";var nf=({className:t,value:e,...o})=>{let n=y("TextInput",jl);return sf("input",{className:of(t,n.root),type:"text",value:e,...o})},uo=nf;var vr={};V(vr,{enUS:()=>rf,nlNL:()=>af});var rf={back:[{type:0,value:"Back"}],promptTitle:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],verifyCodeTitle:[{type:0,value:"Paste the code from your email"}],verifyCodeBody:[{type:0,value:"Copy the code from the email you just received and paste it here."}],verifyCodeInputPlaceholder:[{type:0,value:"Paste link or code here"}],verifyCodeSubmitLabel:[{type:0,value:"Sign in"}],verifyCodeError:[{type:0,value:"Sign in failed. The code is probably no longer valid. Please "},{type:8,value:"login",children:[{type:0,value:"request new code"}]},{type:0,value:"."}],requestCodeTitle:[{type:0,value:"Have a code sent to your email"}],requestCodeBody:[{type:0,value:"Enter your email and request a code. If you are an existing "},{type:1,value:"productName"},{type:0,value:" user you will receive an email with a code. If you are a new user you will receive an email asking to request access to "},{type:1,value:"productName"},{type:0,value:" first."}],requestCodeInputPlaceholder:[{type:0,value:"Enter your email"}],requestCodeSubmitLabel:[{type:0,value:"Request code"}]},af={back:[{type:0,value:"Terug"}],promptTitle:[{type:0,value:"Login bij "},{type:1,value:"productName"}],verifyCodeTitle:[{type:0,value:"Plak de code uit je email"}],verifyCodeBody:[{type:0,value:"Kopieer de code uit de email en plak deze hier."}],verifyCodeInputPlaceholder:[{type:0,value:"Plak hier de code"}],verifyCodeSubmitLabel:[{type:0,value:"Inloggen"}],verifyCodeError:[{type:0,value:"Inloggen is niet gelukt. De code is waarschijnlijk niet meer geldig. "},{type:8,value:"login",children:[{type:0,value:"Vraag een nieuwe code aan"}]},{type:0,value:"."}],requestCodeTitle:[{type:0,value:"Verstuur een login code naar je email"}],requestCodeBody:[{type:0,value:"Voer je e-mailadres in en krijg een login code. Als je een bestaande "},{type:1,value:"productName"},{type:0,value:" gebruiker bent krijg je een email met een code. Als je een nieuwe gebruiker bent wordt er een email verstuurd met een toegangsverzoek voor "},{type:1,value:"productName"},{type:0,value:"."}],requestCodeInputPlaceholder:[{type:0,value:"Typ hier je e-mailadres"}],requestCodeSubmitLabel:[{type:0,value:"Code aanvragen"}]};var Vl={root:"_root_1edpl_1",anchorButton:"_anchorButton_1edpl_5",errorMessage:"_errorMessage_1edpl_19",title:"_title_1edpl_25",subtitle:"_subtitle_1edpl_31",text:"_text_1edpl_38",input:"_input_1edpl_43",actions:"_actions_1edpl_48",button:"_button_1edpl_55",primaryButton:"_primaryButton_1edpl_70"};import{jsx as ee,jsxs as Pn}from"react/jsx-runtime";var uf=t=>{try{let e=new URL(t);return new URLSearchParams(e.search).get("token")||void 0}catch{return t}},gf=({agentEmail:t,isOpen:e,origin:o="",onSuccess:n,onDismiss:s})=>{let r=T(vr),i=y("LoginTokenDialog",Vl),a=df(Pl),l=pf(),c=C("productName"),[p,d]=_r(t||""),[g,u]=_r(0),[m,f]=_r(""),h=ql(async b=>{b.preventDefault(),l(Ll({email:p})),u(1)},[o,p]),E=()=>{f(""),u(0)},x=ql(async b=>{b.preventDefault();let v=uf(b.target.elements.token.value);if(!v){f(r("verifyCodeError",{login:_}));return}l(co({token:v}))},[o]),_=cf(()=>b=>ee("button",{type:"button","data-testid":"login-token-dialog-back-button",className:i.anchorButton,onClick:E,children:b},"back-button"),[]);return lf(()=>{a==="error"&&f(r("verifyCodeError",{login:_})),a==="done"&&n()},[a]),ee(_t,{autoFocus:!0,isOpen:e,contentAriaLabel:r("promptTitle",{productName:c}),overlayAriaLabel:r("promptTitle",{productName:c}),onClose:s,onBack:s,children:Pn("div",{className:i.root,children:[ee("h1",{className:i.title,children:r("promptTitle",{productName:c})}),g===0&&Pn("form",{onSubmit:h,children:[ee("h2",{className:i.subtitle,children:r("requestCodeTitle")}),ee("p",{className:i.text,children:r("requestCodeBody",{productName:c})}),ee(uo,{className:i.input,name:"email",placeholder:r("requestCodeInputPlaceholder"),value:p,onChange:b=>d(b.target.value)}),ee("div",{className:i.actions,children:ee("button",{type:"submit",className:Sr(i.button,i.primaryButton),children:r("requestCodeSubmitLabel")})})]}),g===1&&Pn("form",{onSubmit:x,children:[ee("h2",{className:i.subtitle,children:r("verifyCodeTitle")}),ee("p",{className:i.text,children:r("verifyCodeBody")}),ee(uo,{className:i.input,name:"token",placeholder:r("verifyCodeInputPlaceholder"),disabled:["loading","done"].includes(a)}),m&&ee("div",{className:i.errorMessage,children:m}),Pn("div",{className:i.actions,children:[ee("button",{type:"button",className:Sr(i.button),onClick:E,children:r("back")}),ee("button",{type:"submit",className:Sr(i.button,i.primaryButton),disabled:["loading","done"].includes(a),children:r("verifyCodeSubmitLabel")})]})]})]})})},Wl=gf;import{jsx as ff}from"react/jsx-runtime";var mf=()=>{let t=$l(Al),e=$l(ja),o=C("adminUrl"),n=ie(),s=()=>n.send(At,!1),r=()=>{n.send(At,!1),n.send(po)};return ff(Wl,{isOpen:t,agentEmail:e==null?void 0:e.agentEmail,origin:o,onDismiss:s,onSuccess:r})},Gl=mf;import mh from"lodash.debounce";import{useCallback as Dn,useEffect as kr,useState as vo}from"react";import{useDispatch as fh,useSelector as st}from"react-redux";import{createAsyncThunk as hf,createSlice as yf}from"@reduxjs/toolkit";var vf={data:null,fetchState:"idle"},Xl=t=>t.contentTypes.data,go=hf("contentTypes/getContentTypes",async(t,e)=>e.extra.deepdeskAPI.getContentTypes()),Sf=yf({name:"contentTypes",initialState:vf,reducers:{},extraReducers:t=>{t.addCase(go.pending,e=>{e.fetchState="loading"}).addCase(go.rejected,e=>{e.fetchState="error"}).addCase(go.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),Zl=Sf.reducer;function mo(t){let e=document.createElement("textarea");e.value=t,e.style.position="fixed",e.style.left="-999999px",e.style.top="-999999px",document.body.appendChild(e),e.focus(),e.select(),document.execCommand("copy"),e.remove()}import{useEffect as _f}from"react";function Ql(t,e){_f(()=>{let o=n=>{var s;((s=navigator==null?void 0:navigator.platform)!=null&&s.toLowerCase().includes("mac")?n.metaKey:n.ctrlKey)&&n.key===t&&(n.preventDefault(),n.stopPropagation(),e())};return document.addEventListener("keydown",o),()=>{document.removeEventListener("keydown",o)}},[])}import{useEffect as tc,useRef as kf}from"react";import{useSelector as If,useDispatch as Rf}from"react-redux";import{createAsyncThunk as xf,createSlice as bf}from"@reduxjs/toolkit";var Jl={data:null,fetchState:"idle"},An=t=>{var r;let e=[],{visitorName:o}=t.info.visitorInfo??{},{agentName:n,agentNickname:s}=t.info.agentInfo??{};return n&&n!==o&&e.push(n),s&&s!==o&&e.push(s),((r=t.entities.data)==null?void 0:r.filter(i=>!e.includes(i.text)))??null},ue=xf("entities/getEntities",async(t,e)=>{let{deepdeskAPI:o,dynamicThunkObject:n}=e.extra;if(!n.conversationQuery)return Promise.resolve([]);let s=n.conversationQuery,r=await s();return r.length===0?Promise.resolve([]):o.getEntities(r)}),Cf=t=>t.filter((e,o)=>o===t.findIndex(n=>n.text===e.text)),wf=bf({name:"entities",initialState:Jl,reducers:{},extraReducers:t=>{t.addCase(ue.pending,e=>{e.fetchState="loading"}).addCase(ue.rejected,e=>{e.fetchState="error"}).addCase(ue.fulfilled,(e,o)=>{e.fetchState="done",e.data=Cf(e.data?[...e.data,...o.payload]:o.payload)}).addCase(P,()=>Jl)}}),Yl=wf.reducer;var xr={};V(xr,{enUS:()=>Tf,nlNL:()=>Ef});var Tf={noResults:[{type:0,value:"No entities have been found"}],copy:[{type:0,value:"Copy"}],use:[{type:0,value:"Use"}]},Ef={noResults:[{type:0,value:"Er zijn geen entiteiten gevonden"}],copy:[{type:0,value:"Kopieer"}],use:[{type:0,value:"Gebruik"}]};var ec={root:"_root_17kae_1",empty:"_empty_17kae_5"};import{jsx as Ln,jsxs as Af}from"react/jsx-runtime";var Pf=({onCopy:t,onUse:e})=>{let o=kf(null),n=y("EntitiesList",ec),s=T(xr),r=If(An),i=Rf();return tc(()=>{i(ue())},[]),tc(()=>{o.current&&o.current.focus()},[o]),Af("div",{className:n.root,ref:o,tabIndex:-1,children:[r&&r.length>0&&Ln(I.ActionsBar,{primaryLabel:s("copy"),secondaryLabel:s("use"),onPrimary:(a,l)=>t(r[l]),onSecondary:(a,l)=>e(r[l]),list:r.map(a=>({text:a.text,type:a.label,primaryAction:"copy",secondaryAction:"use"})),children:Ln(I.List,{children:r.map((a,l)=>Ln(I.ListItem,{index:l,closeOnSelect:!0,onClick:()=>t(a),children:a.text},a.text))},"entities")}),r&&r.length===0&&Ln("p",{className:n.empty,children:s("noResults")})]})},oc=Pf;import{Fragment as Hf,useEffect as Mn,useRef as Bf,useState as Ff}from"react";import{useSelector as lc,useDispatch as Kf}from"react-redux";import{createAsyncThunk as Lf,createSlice as Mf}from"@reduxjs/toolkit";var nc={data:null,fetchState:"idle"},sc=t=>t.summary.data,rc=t=>t.summary.fetchState==="error",Re=Lf("summary/getSummary",async(t,e)=>{var p,d,g;let o=e.getState().profile.data,n=(p=e.getState().conversation.current)==null?void 0:p.sessionId,s=(g=(d=e.getState().info)==null?void 0:d.agentInfo)==null?void 0:g.agentId;if(!o)throw new Error("Profile is not defined");let{deepdeskAPI:r,dynamicThunkObject:i}=e.extra;if(!i.conversationQuery)return Promise.reject(new Error("setConversationQuery method is not defined"));let a=i.conversationQuery,l=await a();if(l.length===0)return Promise.reject(new Error("No messages are included"));let c=await r.getSummary(l,{externalConversationId:n,agentId:s,promptInstruction:o.summarizerPromptInstruction,model:o.summarizerModel});return c?{summary:c}:Promise.reject(new Error("Summary is not provided"))}),Nf=Mf({name:"summary",initialState:nc,reducers:{},extraReducers:t=>{t.addCase(Re.pending,e=>{e.data=null,e.fetchState="loading"}).addCase(Re.rejected,e=>{e.data=null,e.fetchState="error"}).addCase(Re.fulfilled,(e,o)=>{e.fetchState="done",o.payload&&(e.data=o.payload.summary)}).addCase(P,()=>nc)}}),ic=Nf.reducer;var br={};V(br,{enUS:()=>Of,nlNL:()=>Df});var Of={copy:[{type:0,value:"Copy"}],error:[{type:0,value:"Could not generate a summary"}],loading:[{type:0,value:"Generating summary, this may take a few moments."}]},Df={copy:[{type:0,value:"Kopieer"}],error:[{type:0,value:"Kon helaas geen samenvatting genereren."}],loading:[{type:0,value:"Samenvatting wordt gemaakt, dit kan even duren."}]};var ac={root:"_root_6ahh3_1",actions:"_actions_6ahh3_5",main:"_main_6ahh3_11",textInput:"_textInput_6ahh3_15",loading:"_loading_6ahh3_34",error:"_error_6ahh3_38"};import{jsx as Lt,jsxs as zf}from"react/jsx-runtime";var Uf=({onCopy:t})=>{let e=Bf(null),o=y("SummaryForm",ac),[n,s]=Ff(""),r=T(br),i=lc(sc),a=lc(rc),l=Kf(),c=()=>{l(W({name:"summary copied to clipboard",data:{originalText:i,finalText:n},options:{includeConversationData:!0}})),t(n)},p=()=>{let d=document.getSelection();d&&l(W({name:"summary copied to clipboard",data:{originalText:i,finalText:d==null?void 0:d.toString()},options:{includeConversationData:!0}}))};return Mn(()=>{l(Re())},[]),Mn(()=>{s(i||"")},[i]),Mn(()=>{e.current&&i&&e.current.focus()},[e,i]),Mn(()=>{let d=g=>{g.key==="Enter"&&g.shiftKey&&c()};return document.addEventListener("keydown",d),()=>{document.removeEventListener("keydown",d)}},[n]),Lt("div",{className:o.root,tabIndex:-1,children:a?Lt("p",{className:o.error,children:r("error")}):zf(Hf,{children:[Lt("div",{className:o.main,children:Lt("textarea",{placeholder:i?void 0:r("loading"),disabled:!i,className:o.textInput,ref:e,value:n,onCopy:p,onChange:d=>s(d.target.value)})}),Lt("div",{className:o.actions,children:Lt(I.Button,{shortKeys:[8679,8629],onClick:c,children:r("copy")})})]})})},cc=Uf;var fo={};V(fo,{enUS:()=>jf,nlNL:()=>Vf});var jf={personalCollectionLink:[{type:0,value:"Go to Personal Collection"}],searchPlaceholder:[{type:0,value:"Start typing to search..."}],urlSuggestions:[{type:0,value:"Link suggestions"}],personalSuggestions:[{type:0,value:"Personal suggestions"}],pinnedMessages:[{type:0,value:"Pinned messages"}],imageSuggestions:[{type:0,value:"Images"}],typePlaceholder:[{type:0,value:"All types"}],navigation:[{type:0,value:"Navigation"}],entitiesClipboard:[{type:0,value:"Conversation clipper"}],entitiesTitle:[{type:0,value:"Copy to your clipboard"}],summaryClipboard:[{type:0,value:"Summarize conversation"}],summaryTitle:[{type:0,value:"Conversation summary"}],knowledgeAssist:[{type:0,value:"Knowledge assist"}],commands:[{type:0,value:"Commands"}],use:[{type:0,value:"Use"}],preview:[{type:0,value:"Preview"}],warning:[{type:0,value:"Are you sure you want to discard the message?"}]},Vf={personalCollectionLink:[{type:0,value:"Ga naar persoonlijke collectie"}],searchPlaceholder:[{type:0,value:"Begin met typen om te zoeken..."}],personalSuggestions:[{type:0,value:"Persoonlijke suggesties"}],urlSuggestions:[{type:0,value:"Link suggesties"}],imageSuggestions:[{type:0,value:"Afbeeldingen"}],navigation:[{type:0,value:"Navigatie"}],typePlaceholder:[{type:0,value:"Alle types"}],pinnedMessages:[{type:0,value:"Actueel"}],entitiesClipboard:[{type:0,value:"Klembord"}],entitiesTitle:[{type:0,value:"Kopieer naar klembord"}],summaryClipboard:[{type:0,value:"Gesprek samenvatten"}],summaryTitle:[{type:0,value:"Gesprek samenvatting"}],knowledgeAssist:[{type:0,value:"Knowledge assist"}],commands:[{type:0,value:"Acties"}],use:[{type:0,value:"Gebruik"}],preview:[{type:0,value:"Bewerk"}],warning:[{type:0,value:"Weet je zeker dat je de wijzigingen wilt weggooien?"}]};import oh,{useEffect as Tr,useRef as nh}from"react";import{useDispatch as sh,useSelector as vc}from"react-redux";var Cr={};V(Cr,{enUS:()=>qf,nlNL:()=>Wf});var qf={use:[{type:0,value:"Use"}],loading:[{type:0,value:"Loading..."}],error:[{type:0,value:"Something went wrong, please try again later."}],anotherQuestion:[{type:0,value:"Send a message..."}],reset:[{type:0,value:"Reset conversation"}]},Wf={use:[{type:0,value:"Gebruik"}],loading:[{type:0,value:"Laden..."}],error:[{type:0,value:"Er ging iets mis, probeer het later opnieuw."}],anotherQuestion:[{type:0,value:"Stuur een bericht..."}],reset:[{type:0,value:"Reset gesprek"}]};var pc={root:"_root_1g4pq_1",title:"_title_1g4pq_9",empty:"_empty_1g4pq_20",status:"_status_1g4pq_24",form:"_form_1g4pq_30",input:"_input_1g4pq_43",submit:"_submit_1g4pq_55",question:"_question_1g4pq_63",answer:"_answer_1g4pq_67",alignRight:"_alignRight_1g4pq_73"};import{createAction as Qf,createAsyncThunk as Jf,createSlice as Yf}from"@reduxjs/toolkit";import{createAsyncThunk as $f,createSlice as Gf}from"@reduxjs/toolkit";var Xf={data:null,fetchState:"idle"},dc=t=>{var e;return(e=t.knowledgeAssistant)==null?void 0:e.data},ho=$f("knowledgeAssistant/getKnowledgeAssistant",async(t,e)=>{var i;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=n.conversation.current;if(!s||!s.profileCode)throw new Error("No conversation of conversation profileCode found");let r=(i=n.profile.data)==null?void 0:i.knowledgeAssistant;return r?o.getKnowledgeAssistant(r):null}),Zf=Gf({name:"knowledgeAssistant",initialState:Xf,reducers:{},extraReducers:t=>{t.addCase(ho.pending,e=>{e.fetchState="loading"}).addCase(ho.rejected,e=>{e.fetchState="error"}).addCase(ho.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),uc=Zf.reducer;var wr={data:[],fetchState:"idle"},gc=t=>{var e;return(e=t.answer)==null?void 0:e.data},mc=t=>t.answer.fetchState,Nt=Qf("answer/resetKnowledgeSearch"),Mt=Jf("answer/getAnswer",async(t,e)=>{var l,c,p;let{deepdeskAPI:o}=e.extra,n=e.getState().answer.data,s=dc(e.getState()),r=(l=e.getState().conversation.current)==null?void 0:l.sessionId,i=(p=(c=e.getState().info)==null?void 0:c.agentInfo)==null?void 0:p.agentId;if(!s)throw new Error("KnowledgeAssistant is not defined");let a=await o.knowledgeAssist({promptInstruction:s.prompt,question:t},n,s.code,{agentId:i,conversationId:r});return{question:t,answer:a}}),eh=Yf({name:"answer",initialState:wr,reducers:{},extraReducers:t=>{t.addCase(Mt.pending,e=>{e.fetchState="loading"}).addCase(Mt.rejected,e=>{e.fetchState="error"}).addCase(Mt.fulfilled,(e,o)=>{e.fetchState="done",e.data=[...e.data,o.payload]}).addCase(P,()=>wr).addCase(Nt,()=>wr)}}),fc=eh.reducer;import{jsx as hc,jsxs as th}from"react/jsx-runtime";var yc=()=>th("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",viewBox:"0 0 512 512","aria-labelledby":"paperPlaneTitle",children:[hc("title",{id:"paperPlaneTitle",children:"PaperPlane"}),hc("path",{d:"M498.1 5.6c10.1 7 15.4 19.1 13.5 31.2l-64 416c-1.5 9.7-7.4 18.2-16 23s-18.9 5.4-28 1.6L284 427.7l-68.5 74.1c-8.9 9.7-22.9 12.9-35.2 8.1S160 493.2 160 480V396.4c0-4 1.5-7.8 4.2-10.7L331.8 202.8c5.8-6.3 5.6-16-.4-22s-15.7-6.4-22-.7L106 360.8 17.7 316.6C7.1 311.3 .3 300.7 0 288.9s5.9-22.8 16.1-28.7l448-256c10.7-6.1 23.9-5.5 34 1.4z"})]});import{jsx as Pe,jsxs as Er}from"react/jsx-runtime";var rh=({onUse:t,onResetQuestion:e,question:o})=>{let[n,s]=oh.useState(""),{setSelected:r}=Ue(),i=nh(null),a=y("EntitiesList",pc),l=T(Cr),c=sh(),p=vc(gc),d=vc(mc),g=async m=>{m.preventDefault(),m.stopPropagation(),n!==""&&c(Mt(n))},u=(m,f)=>{c(W({name:"knowledge assist source viewed",data:{question:f,sourceViewed:m.url||m.name},options:{includeConversationData:!0}}))};return Tr(()=>{var m;o&&d==="idle"?c(Mt(o)):(m=i.current)==null||m.focus()},[i,d]),Tr(()=>{d==="done"&&(c(W({name:"knowledge assist question answered",data:{question:n||o,sources:p[p.length-1].answer.sources,answer:p[p.length-1].answer.answer,isFollowUpQuestion:p.length>1},options:{includeConversationData:!0}})),r(p.length-1),s(""))},[d,p]),Tr(()=>{i.current&&i.current.scrollIntoView({behavior:"smooth"})},[i,p]),Er("div",{className:a.root,children:[p.length>0&&Pe("div",{className:a.alignRight,children:Pe(I.Button,{onClick:e,children:l("reset")})}),Er(I.ActionsBar,{list:p.map(({answer:m})=>({text:m.answer,type:"answer"})),primaryLabel:l("use"),onPrimary:m=>t(m.text),children:[p.map(({question:m,answer:f},h)=>Pe(I.List,{children:Pe(I.ListItem,{"data-testid":"knowledge-search-answer",index:h,description:f.answer,closeOnSelect:!0,onClick:()=>t(f.answer),onSourceClick:E=>u(E,m),sources:f.sources,styles:{title:a.question,description:a.answer},children:m})},`${f.answer}_${h}`)),d==="loading"&&Pe("p",{className:a.status,children:l("loading")}),d==="error"&&Pe("p",{className:a.status,children:l("error")}),Er("form",{className:a.form,onSubmit:g,children:[Pe("input",{ref:i,placeholder:l("anotherQuestion"),className:a.input,type:"text",value:n,onFocus:()=>{r(-1)},onChange:m=>{r(-1),s(m.target.value)}}),Pe("button",{type:"submit",className:a.submit,children:Pe(yc,{})})]})]})]})},Sc=rh;import{createAsyncThunk as ih,createSlice as ah}from"@reduxjs/toolkit";var lh={data:null,fetchState:"idle"},qe=t=>t.profile.data,Nn=t=>t.profile.data?t.profile.data.uiConfig.widget.types.filter(e=>e.isActive):[],yo=ih("profile/getProfile",async(t,e)=>{var r;let{deepdeskAPI:o}=e.extra,n=e.getState(),s=n.conversation.current;if(!s||!s.profileCode)throw new Error("No conversation of conversation profileCode found");return((r=n.profile.data)==null?void 0:r.code)===s.profileCode?n.profile.data:o.getProfile(s.profileCode)}),ch=ah({name:"profile",initialState:lh,reducers:{},extraReducers:t=>{t.addCase(yo.pending,e=>{e.fetchState="loading"}).addCase(yo.rejected,e=>{e.fetchState="error"}).addCase(yo.fulfilled,(e,o)=>{e.fetchState="done",e.data=o.payload})}}),_c=ch.reducer;import{useEffect as ph}from"react";import{useDispatch as dh}from"react-redux";import{useSelector as xc}from"react-redux";import{jsx as On,jsxs as gh}from"react/jsx-runtime";var uh=({commands:t,onClick:e,onEdit:o})=>{var p,d,g;let n=dh(),s=T(fo),r=xc(qe),i=xc(je),a=((g=(d=(p=r==null?void 0:r.uiConfig)==null?void 0:p.search)==null?void 0:d.initialTypes)==null?void 0:g.filter(({isActive:u})=>u))||[],l=0,c=a.map(({type:u})=>{var m;return(m=i[u])==null?void 0:m.suggestions.map(f=>({text:f.text||f.url||f.message,type:u}))}).flat(1);return ph(()=>{a.forEach(({type:u})=>{(!i[u]||i[u].suggestions.length===0)&&n(de(u))})},[]),gh(I.ActionsBar,{list:[...t.map(u=>({text:u.label,type:"command"})),...c],primaryLabel:s("use"),secondaryLabel:s("preview"),onPrimary:({text:u},m)=>e(u,c[m]),onSecondary:(u,m)=>{let f=m-t.length;o(c[f],i[c[f].type].suggestions)},children:[t.length>0&&On(I.List,{heading:s("commands"),children:t.map((u,m)=>On(I.ListItem,{index:m,closeOnSelect:!1,onClick:u.onClick,children:u.label},u.label))}),a.map(({type:u,title:m})=>{var f;return On(I.List,{heading:m,orientation:"vertical",children:(f=i[u])==null?void 0:f.suggestions.map(h=>(l++,On(I.ListItem,{index:l+t.length-1,closeOnSelect:!1,description:h.text,onClick:()=>e(h.text,h),"data-testid":"search-overlay-suggestion",children:h.title},`${h.id}-${h.text}`)))},u)})]})},bc=uh;import{jsx as te,jsxs as Ir}from"react/jsx-runtime";var hh=200,yh=5,vh=4,Sh=t=>t.reduce((e,o)=>[...e,...o.list.map(n=>({...n,type:o.value}))],[]),Cc=(t,e)=>!e||t.toLowerCase().includes(e.toLowerCase()),_h=()=>{let t=fh(),e=ie(),o=T(fo),[n,s]=vo(!1),[r,i]=vo(""),a=st(Ga),l=st(qe),[c,p]=vo(null),[d,g]=vo([]),[u,m]=vo(),f=st(Z),h=C("showSearch"),E=C("showEntitiesCommand"),x=C("showSummaryCommand"),_=C("showKnowledgeSearch"),b=C("showImageSearch"),v=C("searchTriggerKey"),R=st(Xl),N=st(Xa),B=st(Za),D=st($a),U=S=>Po(N.filter(H=>H.type===S.toUpperCase()),S),F=[{value:"PERSONAL",label:o("personalSuggestions"),list:U("PERSONAL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"URL",label:o("urlSuggestions"),list:U("URL"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"STICKYMESSAGE",label:o("pinnedMessages"),list:U("STICKYMESSAGE"),lineClamp:!1,listOrientation:"vertical",shouldShow:!0},{value:"IMAGE",label:o("imageSuggestions"),lineClamp:!1,list:U("IMAGE"),listOrientation:"horizontal",shouldShow:b}].filter(S=>S.shouldShow),k=[{label:o("entitiesClipboard"),onClick:()=>t(X("entities")),shouldShow:E&&Cc(o("entitiesClipboard"),r)},{label:o("summaryClipboard"),onClick:()=>t(X("summary")),shouldShow:x&&Cc(o("summaryClipboard"),r)},{label:r?`${o("knowledgeAssist")}: ${r}`:o("knowledgeAssist"),onClick:()=>t(X("knowledgeAssist")),shouldShow:_}].filter(S=>S.shouldShow),ne=(R==null?void 0:R.map(S=>({value:S.code.toUpperCase(),label:`${S.name}s`,list:U(S.code.toUpperCase()),listOrientation:"vertical",lineClamp:!0})))||[],gs=Dn(mh((S,H)=>{t(tt({query:S,type:H,tags:["search-overlay"],size:u?50:20}))},hh),[u]),jt=Sh([...ne,...F]),Vt=Dn((S,H)=>{t(X("edit")),p({...S,searchTerm:void 0}),g(H)},[t,c,ne]),dt=Dn((S,H)=>{switch(H.type){case"IMAGE":e.send(hr,{suggestion:H});break;default:e.send(Ie,{text:S,suggestion:H})}t(G(!1))},[t]),Md=S=>{mo(S.text),t(W({name:"entity copied",data:{entity:S,type:"copy"}})),t(G(!1))},Nd=Dn(S=>{t(W({name:"suggestion feedback",data:{text:S.text,source:"search",context:r},options:{includeConversationData:!0}}))},[r]),Od=S=>{e.send(Ie,{text:S,suggestion:{source:"knowledge-assist",text:S}}),t(W({name:"answer used",data:{originalText:S},options:{includeConversationData:!0}})),i(""),t(X("search")),t(Nt()),t(G(!1))},Dd=S=>{mo(S),t(G(!1))},Hd=S=>{e.send(Ie,{text:S.text,suggestion:{source:"entity",text:S.text}}),t(G(!1))},Bd=c===null||d.indexOf(c)-1<0?void 0:()=>p(d[d.indexOf(c)-1]),Fd=c===null||d.indexOf(c)===d.length-1?void 0:()=>p(d[d.indexOf(c)+1]);function Po(S,H){return S.slice(0,u?10:H.toLowerCase()==="image"?vh:yh)}function gi(S,H,ae){return H.reduce((Ao,Lo)=>ae&&u===ae?Lo.length+Ao:Po(Lo,ae).length+Ao,S)}function ut(S){return H=>{n?window.confirm(o("warning"))&&(S(H),s(!1)):S(H)}}return kr(()=>{r?gs(r,u):t(bn())},[r,u]),kr(()=>{a==="search"&&t(Nt())},[a]),kr(()=>{f&&t(go())},[f]),Ql(v,()=>t(G(!0))),!h||!l?null:Ir(I,{placeholder:o("searchPlaceholder"),typePlaceholder:o("typePlaceholder"),onChangeSearch:i,onChangeOpen:ut(S=>t(G(S))),onChangeType:S=>m(S),onChangePage:ut(S=>t(X(S))),selectedType:u,search:r,page:a,isOpen:D,types:[...ne,...F],children:[Ir(I.Page,{id:"search",children:[r.length===0&&te(bc,{commands:k,onClick:dt,onEdit:Vt}),r.length>0&&Ir(I.ActionsBar,{list:[...k.map(S=>({text:S.label,type:"command"})),...jt.map(S=>({text:S.text||S.url||S.message,type:S.type}))],primaryLabel:o("use"),secondaryLabel:o("preview"),onPrimary:({text:S},H)=>dt(S,jt[H]),onSecondary:(S,H)=>{let ae=jt[H-k.length];!ae||!ae.type||Vt(ae,U(ae.type))},children:[k.length>0&&te(I.List,{heading:o("commands"),children:k.map((S,H)=>te(I.ListItem,{index:gi(H,[],"commands"),closeOnSelect:!1,onClick:S.onClick,children:S.label},S.label))}),[...ne,...F].map(({value:S,label:H,list:ae,lineClamp:Ao,listOrientation:Lo},Kd)=>te(I.List,{heading:H,orientation:Lo==="horizontal"?"horizontal":"vertical",onShowAll:()=>m(S),hasMore:!u&&B[S.toLowerCase()]>Po(ae,S).length,children:Po(ae,S).map((se,Ud)=>te(I.ListItem,{index:gi(k.length+Ud,[...ne,...F].slice(0,Kd).map(({list:zd})=>zd),S),closeOnSelect:!1,lineClamp:Ao,onClick:()=>dt(se.text,se),description:S!=="IMAGE"?se.title&&se.text:void 0,onFeedback:S!=="IMAGE"?()=>Nd(se):void 0,children:S==="IMAGE"?te(I.Image,{title:se.title||se.text,src:se.image}):se.title||se.text},`${se.id}-${se.text}`))},S))]})]}),te(I.Page,{id:"edit",onDismiss:ut(()=>{t(X("search")),p(null)}),children:c&&te(En,{suggestion:c,onTouched:s,onDismiss:()=>{s(!1),t(X("search")),p(null),g([])},onNext:Fd,onPrevious:Bd,onUse:S=>{t(X("search")),dt(S,{...c,source:`${c.source||"text_recommendation"}-preview`}),t(G(!1)),g([]),p(null)}})}),te(I.Page,{id:"entities",title:o("entitiesTitle"),onDismiss:ut(()=>{t(X("search"))}),children:te(oc,{onUse:Hd,onCopy:Md})}),te(I.Page,{id:"summary",title:o("summaryTitle"),onDismiss:ut(()=>{t(X("search"))}),children:te(cc,{onCopy:Dd})}),te(I.Page,{id:"knowledgeAssist",title:o("knowledgeAssist"),onDismiss:ut(()=>{t(Nt()),t(X("search"))}),children:te(Sc,{question:r,onUse:Od,onResetQuestion:()=>{t(Nt()),i("")}})})]})},wc=_h;import{jsx as Rr,jsxs as Ch}from"react/jsx-runtime";var bh=()=>{let t=C("showSearch"),e=C("isEmbedded");return Ch(xh,{children:[t&&Rr(wc,{}),Rr(zl,{}),e&&Rr(Gl,{})]})},Tc=bh;import kh from"classnames";import{useSelector as Ih}from"react-redux";import{jsx as Pr}from"react/jsx-runtime";var Ec=({className:t})=>Pr("svg",{version:"1.1",xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 512 512",xmlSpace:"preserve",className:t,children:Pr("g",{children:Pr("path",{d:`M163.4,233h186v-70c0-25.6-9.4-47.8-27.3-65.7C304.2,79.4,282,70,256.4,70s-47.8,9.4-65.7,27.3
|
|
4
4
|
c-17.9,17.9-27.3,40.1-27.3,65.7C163.4,163,163.4,233,163.4,233z M465.5,267.9V477c0,9.4-3.4,17.9-10.2,24.7
|
|
5
5
|
c-6.8,6.8-15.4,10.2-24.7,10.2h-349c-9.4,0-17.9-3.4-24.7-10.2c-6.8-6.8-10.2-15.4-10.2-24.7V267.9c0-9.4,3.4-17.9,10.2-24.7
|
|
6
6
|
c6.8-6.8,15.4-10.2,24.7-10.2h11.9v-70c0-44.4,16.2-82.8,47.8-115.2S212.1,0,256.4,0s82.8,16.2,115.2,47.8
|
|
7
|
-
c32.4,32.4,47.8,70,47.8,115.2v70h11.9c9.4,0,17.9,3.4,24.7,10.2C462.1,250,465.5,257.7,465.5,267.9z`})})});import{jsx as hc}from"react/jsx-runtime";var nh={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},yc=({className:t,color:e})=>hc("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:hc("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:nh[e||"pink"]})});var vc={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 Er={};q(Er,{enUS:()=>sh,nlNL:()=>rh});var sh={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},rh={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as lh}from"react-redux";import{jsx as kr,jsxs as Sc}from"react/jsx-runtime";var _c=({onLogIn:t})=>{let e=T(Er),o=C("floatingMenu"),n=C("productName"),s=lh(),r=ah(Z),i=y("FloatingMenu",vc);if(r===null||o===!1)return null;let a=()=>{r===!0?s(G(!0)):t()};return Sc("button",{className:ih(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[kr("div",{className:i.text,children:e(r?"search":"signin",{productName:n})}),Sc("div",{className:i.icon,children:[kr(yc,{className:i.logo,color:"pink"}),r===!1&&kr(fc,{className:i.lock})]})]})};import{useEffect as Th,useRef as Eh}from"react";import{connect as kh,useDispatch as Ih,useSelector as On}from"react-redux";function Nt(t){let{showMidSentenceSuggestions:e,showSuggestionsBeforePattern:o,showSuggestionsAfterPattern:n}=t.settings,{text:s,selection:r}=t.input.userCommitted;return r.start!==r.end?!1:r.end>=s.length?!0:e?o&&new RegExp(o).test(s.substring(r.end))||n&&new RegExp(n).test(s.substring(0,r.end))?!0:o===!1&&n===!1:!1}import{Fragment as bh,useMemo as Ch}from"react";import{Interweave as dh}from"interweave";import{useEffect as uh,useMemo as gh,useRef as mh}from"react";import{useDispatch as fh,useSelector as hh}from"react-redux";import{useEffect as ch}from"react";function xc(t,e,o){ch(()=>{let n=t.current;return n?(n.addEventListener(e,o),()=>{n.removeEventListener(e,o)}):()=>{}},[t,e,o])}var bc={root:"_root_4u430_1",actions:"_actions_4u430_8",badge:"_badge_4u430_15",formattedText:"_formattedText_4u430_19"};import{jsx as Mn,jsxs as xh}from"react/jsx-runtime";var yh=["search","personal-collection-search","search-autocomplete"];function vh(t,e,o,n={}){let s="";return yh.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 Sh=()=>{},_h=({index:t,selected:e,suggestion:o,onFeedback:n})=>{let s=C("inlineSuggestions"),r=hh(vt),i=fh(),a=y("TextSuggestion",bc),l=mh(null);uh(()=>{let p=setTimeout(()=>{i(Pi({text:o.text,suggestion:o}))},500);return()=>{clearTimeout(p)}},[o]),xc(l,"click",()=>{i(Oe(t)),i(ae({suggestion:o,text:o.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let c=gh(()=>vh(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:xh("div",{className:a.root,onMouseEnter:()=>i(Oe(t)),children:[Mn(D,{ref:l,as:"button","data-testid":"suggestions-overlay-item",selected:e,onClick:Sh,children:Mn(dh,{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})})]})},Cc=_h;import{jsx as wc}from"react/jsx-runtime";var wh=({onFeedback:t,suggestions:e,selectedIndex:o,reverse:n})=>{let s=Ch(()=>{let r=e.map((i,a)=>wc(Cc,{index:a,selected:a===o,suggestion:i,onFeedback:t},`${i.text}-${i.source}`));return n?r.reverse():r},[e,o,n]);return wc(bh,{children:s})},Nn=wh;var Tc={root:"_root_otdbu_1",paper:"_paper_otdbu_11"};import{jsx as Dn}from"react/jsx-runtime";var Rh=({textSuggestions:t,selectedIndex:e})=>{let o=Eh(null),n=y("InlineSuggestionsOverlay",Tc),s=On(Nt),r=Ih(),i=On(Z),a=On(yt),l=On(Tn),c=C("showTextSuggestions");return xt(()=>{r(Ue({collapse:!0,skipWhenInputFocus:!0}))}),Th(()=>{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(ie,{children:Dn(Nn,{suggestions:t,selectedIndex:e})})})})},Ph=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),Ec=kh(Ph)(Rh);import{Provider as Ah}from"react-redux";import{jsx as Hn}from"react/jsx-runtime";var Lh=({children:t})=>{let o=C("locale").replace("-","");return Hn(Ns.Provider,{value:o,children:t})},Mh=({store:t,customStyles:e={},children:o})=>Hn(Ah,{store:t,children:Hn(Lh,{children:Hn(zt.Provider,{value:e,children:o})})}),nt=Mh;import Lr from"classnames";import{useEffect as qh,useRef as Wh,useState as $h}from"react";import{connect as Gh,useDispatch as Xh,useSelector as mo}from"react-redux";import{useState as Nh}from"react";function kc(t,e){let[o,n]=Nh(()=>{if(typeof window>"u")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return w.error(r),e}});return[o,r=>{try{let i=r instanceof Function?r(o):r;n(i),typeof window<"u"&&window.localStorage.setItem(t,JSON.stringify(i))}catch(i){w.error(i)}}]}import Hh from"classnames";import{Fragment as Bh,useCallback as Rr,useMemo as Rc}from"react";var Ir={};q(Ir,{enUS:()=>Oh,nlNL:()=>Dh});var Oh={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"}]}]},Dh={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 Ic={root:"_root_1vfca_1",anchor:"_anchor_1vfca_6",anchorButton:"_anchorButton_1vfca_11"};import{jsx as Bn,jsxs as Pc}from"react/jsx-runtime";var Pr=(t,e,o)=>n=>Bn("button",{className:t.anchorButton,type:"button",value:e,onClick:o,children:n},e),Fh=({className:t,loginUrl:e,isEmbedded:o,onSnooze:n,onLogIn:s})=>{let r=T(Ir),i=se(),a=y("Login",Ic),l=C("productName"),c=Rr(h=>{h.preventDefault(),n&&n(parseInt(h.target.value,10))},[]),p=Rr(h=>{h.preventDefault(),i.send(Pt,!0)},[e]),d=Rc(()=>h=>Bn("a",{onClick:_=>{_.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:h},"login"),[e]),g=Rr(h=>Bn("button",{type:"button",className:a.anchorButton,onClick:p,children:h},"prompt"),[p]),{min:u,hour:m,day:f}=Rc(()=>({min:Pr(a,60*10,c),hour:Pr(a,60*60,c),day:Pr(a,60*60*12,c)}),[]);return Pc("div",{className:Hh(t,a.root),children:[r("loginPlease",{login:o?g:d,productName:l}),n&&Pc(Bh,{children:[Bn("br",{}),r("snooze",{min:u,hour:m,day:f})]})]})},Fn=Fh;import{useDispatch as Kh}from"react-redux";var Ac={root:"_root_1g8fi_1",text:"_text_1g8fi_19"};import{jsx as Lc,jsxs as zh}from"react/jsx-runtime";var Uh=({title:t})=>{let e=y("SearchTrigger",Ac),o=Kh();return zh("button",{type:"button",className:e.root,onClick:()=>o(G(!0)),children:[Lc(Et,{}),Lc("span",{className:e.text,children:t})]})},Mc=Uh;var Ar={};q(Ar,{enUS:()=>jh,nlNL:()=>Vh});var jh={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"}]},Vh={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 Nc={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 V,jsxs as fo}from"react/jsx-runtime";var Zh=({textSuggestions:t,selectedIndex:e,onLogIn:o})=>{let n=y("SuggestionsOverlay",Nc),s=T(Ar),r=mo(Nt),i=Ti(),a=Xh(),l=Wh(null),c=C("searchTriggerKey"),p=C("productName"),d=mo(Tn),g=mo(Z),u=mo(yt),[m,f]=$h(null),h=C("showSearch"),E=C("showTextSuggestions"),_=C("adminUrl"),x=C("isEmbedded"),[b,v]=kc("dd-snooze-until-ms",0),R=d||b>Date.now(),A=mo(B=>B.input.text),H=t.filter(B=>B.source!=="gpt").length,N=()=>{R&&v(0),a(vl(!R))},K=B=>{a(W({name:"suggestion feedback",data:{text:B.text,source:"overlay",context:A},options:{includeConversationData:!0}}))},k=B=>{let ue=Date.now()+B*1e3;v(ue),w.info(`Snooze until: ${new Date(ue)}`),a(Ue({collapse:!0}))};return qh(()=>{H===0&&f(null)},[t,H]),xt(()=>{a(Ue({collapse:!0,skipWhenInputFocus:!0}))}),g===null||u===!1?null:g===!1?fo("div",{ref:l,className:Lr(n.root,{[n.isCollapsed]:R}),children:[!R&&fo("div",{className:n.triggers,children:[V("div",{style:{flex:1}}),V("div",{className:n.triggersRight,children:V(mt,{className:n.toggleButton,title:s("collapse"),onClick:N,isCollapsed:!1})})]}),V("div",{className:n.toggleButtonWrapper,children:V(mt,{className:n.toggleButton,title:s("open",{productName:p}),onClick:N,isCollapsed:!0})}),V("div",{className:n.collapsible,children:V(Fn,{loginUrl:_,isEmbedded:x,onLogIn:o,onSnooze:k})})]}):!i||!r?null:fo("div",{ref:l,className:Lr(n.root,{[n.isCollapsed]:R}),children:[!R&&fo("div",{className:n.triggers,children:[V("div",{style:{flex:1},children:h&&V("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>f(s(_n()?"searchHintMac":"searchHintWindows",{searchTriggerKey:c.toUpperCase()})),onMouseLeave:()=>f(null),children:V(Mc,{title:s("search")})})}),fo("div",{className:n.triggersRight,onFocus:()=>{},children:[V("div",{className:Lr(!m&&n.hintsHidden,n.hints),children:m}),V(mt,{className:n.toggleButton,title:s("collapse"),onClick:N,isCollapsed:!1})]})]}),V("div",{className:n.toggleButtonWrapper,children:V(mt,{className:n.toggleButton,title:s("open",{productName:p}),onClick:N,isCollapsed:!0})}),H>0&&E&&V("div",{className:n.collapsible,onFocus:()=>{},children:V(ie,{children:V(Nn,{onFeedback:K,suggestions:t,selectedIndex:e,reverse:!0})})})]})},Qh=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),Oc=Gh(Qh)(Zh);import jr from"classnames";import{Interweave as By}from"interweave";import{useCallback as Fy,useEffect as Ky,useMemo as tp,useRef as Uy}from"react";import{connect as zy}from"react-redux";import{cloneElement as Jh}from"react";var Yh=["div","span","mark","strong","b","i","u","em"];function Mr(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(Yh.includes(s)){let i=Array.isArray(n.props.children)?n.props.children:[n.props.children];return[...t.slice(0,t.length-1),Jh(n,{children:Mr(i,e,o+1)})]}return[...t,...e]}function je(t){return t.tagName.toLowerCase()==="textarea"}var Dc={root:"_root_81non_1",container:"_container_81non_3",agentText:"_agentText_81non_5",tabText:"_tabText_81non_6",hint:"_hint_81non_6",matchSelection:"_matchSelection_81non_10",focus:"_focus_81non_16",resetIndent:"_resetIndent_81non_20",matchKeyword:"_matchKeyword_81non_24",matchPlaceholder:"_matchPlaceholder_81non_25",hover:"_hover_81non_31",hintText:"_hintText_81non_64",popover:"_popover_81non_72",popoverRoot:"_popoverRoot_81non_77",popoverContentContainer:"_popoverContentContainer_81non_81",popoverContent:"_popoverContent_81non_81",selectionOptions:"_selectionOptions_81non_107",selectionOptionsIsHidden:"_selectionOptionsIsHidden_81non_112",selectionOptionsButton:"_selectionOptionsButton_81non_116",caret:"_caret_81non_132",popoverSuggestionsRoot:"_popoverSuggestionsRoot_81non_136",suggestionsOverlayInputStyles:"_suggestionsOverlayInputStyles_81non_141"};import hy from"classnames";import{Matcher as yy}from"interweave";import{useEffect as vy,useMemo as Sy}from"react";function Hc(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function Kn(t){return e=>{t.forEach(o=>{typeof o=="function"?o(e):o!=null&&(o.current=e)})}}function Bc(t){return t!=null}import jc from"classnames";import{createRef as cy,useCallback as Or,useMemo as py,useRef as dy,useState as uy}from"react";import{useState as ey,useLayoutEffect as ty}from"react";var oy=["bottom","height","left","right","top","width"],ny=(t={},e={})=>oy.some(o=>t[o]!==e[o]),Pe=new Map,Fc,Kc=()=>{let t=[],e=[];Pe.forEach((o,n)=>{if(n instanceof Element&&!n.isConnected){e.push(n);return}let s=n.getBoundingClientRect();ny(s,o.rect)&&(o.rect=s,t.push(o))}),e.forEach(o=>{Pe.delete(o)}),t.forEach(o=>{o.callbacks.forEach(n=>n(o.rect))}),Fc=window.requestAnimationFrame(Kc)};function sy(t,e){return{observe(){let o=Pe.size===0;if(Pe.has(t)){let n=Pe.get(t);n.callbacks.push(e),n.rect&&e(n.rect)}else Pe.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});o&&Kc()},unobserve(){let o=Pe.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||Pe.delete(t),Pe.size||cancelAnimationFrame(Fc)}}}}function Nr(t){let[e,o]=ey(null);return ty(()=>{if(!t.current)return;let n=sy(t.current,s=>{o(s)});return n.observe(),()=>{n.unobserve()}},[t]),e}import{useContext as ry,useLayoutEffect as iy,useState as ay}from"react";import{createPortal as ly}from"react-dom";var Uc={root:"_root_1jq08_1"};var zc=({children:t})=>{let[e,o]=ay(null),n=ry(zt);return iy(()=>{let s=document.createElement("div");return Qe(s),s.classList.add(Uc.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?ly(t,e):null};var ye={ref:"_ref_1rcyi_1",root:"_root_1rcyi_7",positionAbove:"_positionAbove_1rcyi_13",positionBelow:"_positionBelow_1rcyi_17",positionLeft:"_positionLeft_1rcyi_21",positionRight:"_positionRight_1rcyi_25",alignStart:"_alignStart_1rcyi_29",alignCenter:"_alignCenter_1rcyi_34",alignEnd:"_alignEnd_1rcyi_40"};import{jsx as Dr}from"react/jsx-runtime";var Un=(t=!1)=>{let[e,o]=uy(t),n=Or(()=>o(!0),[]),s=Or(()=>o(!1),[]),r=Or(()=>o(a=>!a),[]),i=dy(null);return{opened:e,open:n,close:s,toggle:r,triggerRef:i}};function Hr(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=cy(),position:n="above",align:s="center",children:r,toStyle:i=Hr,...a})=>{let l=Nr(e),c=Nr(o),p=py(()=>i(l,c,0),[l,c]);return Dr(zc,{children:Dr("div",{className:jc(ye.ref,{[ye.positionAbove]:n==="above",[ye.positionBelow]:n==="below",[ye.positionLeft]:n==="left",[ye.positionRight]:n==="right",[ye.alignStart]:s==="start",[ye.alignCenter]:s==="center",[ye.alignEnd]:s==="end"}),style:p,...a,role:"dialog",children:Dr("div",{className:jc(t,ye.root),children:r})})})};import gy from"classnames";import{forwardRef as my,useRef as fy}from"react";import{jsx as Vc}from"react/jsx-runtime";var jn=my(({className:t,children:e,...o},n)=>{let s=fy(null),r=y("TabCompletion",be);return Vc("div",{ref:Kn([s,n]),className:gy(t,r.popoverContentContainer),...o,children:Vc("div",{className:r.popoverContent,children:e})})});import{jsx as ho,jsxs as by}from"react/jsx-runtime";var _y=t=>e=>{let o=Hr(e);return"top"in o&&(o.width=t.width-(e.left-t.left)-10),o},xy=({inputElement:t,boundaryRef:e,inputStyle:o,children:n,suggestion:s})=>{let r=y("TabCompletion",be),i=Un(),a=Sy(()=>_y(t.getBoundingClientRect()),[t]),[l,c]=ln(t);return vy(()=>{c?i.open():i.close()},[c]),by("span",{children:[ho("mark",{ref:Kn([l,i.triggerRef]),className:hy(r.matchKeyword,{[r.hover]:c}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:n}),i.opened&&ho(zn,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:ho(jn,{style:o,children:ho("div",{className:r.hintText,children:s})})})]})},Vn=class extends yy{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${Hc(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(Bc);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 ho(xy,{inputElement:o.inputElement,suggestion:o.suggestion,inputStyle:o.inputStyle,boundaryRef:o.boundaryRef,children:e},`keyword_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import zr from"classnames";import{Matcher as Ay}from"interweave";import{createRef as Ly,forwardRef as My,useCallback as Ny,useEffect as Jc,useRef as Yc,useState as ep}from"react";import{useDispatch as Oy}from"react-redux";import{jsx as qc}from"react/jsx-runtime";var Wc=()=>qc("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:qc("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 Cy,useEffect as Gc,useState as Xc}from"react";import{useDispatch as wy,useSelector as Zc}from"react-redux";import Ty from"lodash.debounce";var $c={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 Br(t){return t.replace("https://www.","").replace("https://","")}import{jsx as st,jsxs as Fr}from"react/jsx-runtime";var Ey=3,ky=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),Iy=({onSelectLink:t,onDismiss:e,placeholder:o,visitUrlText:n,linkCount:s=Ey})=>{let r=y("LinkSearch",$c),[i,a]=Xc(""),l=wy(),c=Zc(Cn("url")),p=Zc(Va("URL",ky)),[d,g]=Xc(p.length-1),u=C("fallbackImage"),m=_=>{let x=_.target;a(x.value)},f=(_,x)=>{_.stopPropagation(),_.preventDefault(),window.open(x,"_blank")},h=_=>{var v;let x=d-1<0?p.length-1:d-1,b=d+1===p.length?0:d+1;_.code==="Escape"&&(a(""),e()),_.code==="ArrowUp"&&g(x),_.code==="ArrowDown"&&g(b),_.code==="Enter"&&t(((v=p[d])==null?void 0:v.text)||i)},E=Cy(Ty(_=>{l(Ye({query:_,type:"URL",tags:["link-search"]}))},300),[]);return Gc(()=>{i&&E(i)},[i]),Gc(()=>()=>{l(vn())},[]),Fr("div",{className:r.root,children:[st(ie,{withDivider:!0,children:(i?p:c).slice(0,s).map((_,x)=>st(D,{selected:d===x,onClick:()=>t(_.text),"data-testid":"linksearch-suggestion",children:Fr(F,{children:[st(F.Image,{src:qn(_,"small",u||void 0),title:_.title||_.text}),Fr(F.Content,{className:r.content,cropText:!0,children:[st(F.Title,{children:_.title||Br(_.text)}),_.title&&Br(_.text)]}),st(D.Actions,{children:st(D.ActionButton,{label:n,onClick:b=>f(b,_.text)})})]})},_.text))}),st(io,{value:i,onChange:m,autoFocus:!0,placeholder:o,onKeyUp:h})]})},Qc=Iy;var Kr={};q(Kr,{enUS:()=>Ry,nlNL:()=>Py});var Ry={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}]},Py={insertLink:[{type:0,value:"Voeg link toe"}],linkInputPlaceholder:[{type:0,value:"Zoek, typ of plak link"}],visitUrl:[{type:0,value:"Bekijk"}]};import{jsx as ve,jsxs as Ur}from"react/jsx-runtime";var Dy=My((t,e)=>{let o=y("TabCompletion",be);return ve("mark",{ref:e,className:zr(o.matchSelection)},"selection-start")}),Hy=({startRef:t,boundaryRef:e,inputStyle:o,inputElement:n,children:s})=>{let r=T(Kr),i=y("TabCompletion",be),a=Yc(null),l=Yc(null),[c,p]=ep(null),d=Oy(),g=Un(document.activeElement===n),[u]=ep(()=>document.createRange());g.triggerRef.current=u,Jc(()=>()=>u.detach(),[]),Jc(()=>{let f=t.current,h=a.current;!f||!h||(u.setStart(f,0),u.setEnd(h,0))},[t.current,a.current]),xt(()=>{g.close()});let m=Ny(f=>{let h=u.toString(),E=/^http(s?):\/\//.test(f)?f:`https://${f}`;d(zo({text:`[${h}](${E})`,replace:"selection"}))},[]);return Ur("span",{children:[ve("mark",{ref:a,className:zr(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":g.opened?"true":"false",children:s}),g.opened&&ve(zn,{className:i.popoverRoot,triggerRef:g.triggerRef,boundaryRef:e,position:"above",align:"start",children:Ur(jn,{style:o,ref:l,children:[ve("div",{className:zr(i.selectionOptions,{[i.selectionOptionsIsHidden]:c!==null}),children:Ur("button",{type:"button",tabIndex:c===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>p("insertLink"),children:[ve(Wc,{}),ve("span",{children:"\xA0"}),ve("span",{children:r("insertLink")})]})}),c==="insertLink"&&ve(Qc,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:m,onDismiss:()=>{p(null),g.close()}})]})})]},"selection-end")},Wn=class extends Ay{charCount=0;foundIndex=0;startRef=null;props;onBeforeParse(e,o){return this.props=o,this.charCount=0,this.startRef=Ly(),this.foundIndex=0,e}match(e){if(!this.props||this.props.selection===null||this.foundIndex===2)return null;let[o,n]=this.props.selection;if(o===n)return null;let s=this.foundIndex===0?o:n,r=s>=this.charCount&&s<=this.charCount+e.length?{index:s-this.charCount,length:0,match:"",valid:!0}:null;r&&this.foundIndex++;let i=this.foundIndex===1;return r&&i?this.charCount+=s-this.charCount:this.charCount+=e.length,r?{isStart:i,...r}:null}replaceWith(e,o){return o.isStart?ve(Dy,{ref:this.startRef}):ve(Hy,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as jy}from"react-redux";import{jsx as Ot,jsxs as Wy}from"react/jsx-runtime";var Vy=({enabled:t,content:e,tabText:o,showTabHint:n,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:l})=>{let c=y("TabCompletion",Dc),p=C("insertLink"),d=C("showMidSentenceSuggestions"),g=C("inlineSuggestions"),u=pn(a),m=Uy(null),f=jy(Z);Ky(()=>{je(a)&&u&&dn(a,u)},[u]);let h=Fy(x=>{if(!s||!o)return x;let b=[Ot("span",{className:c.resetIndent,children:"\u200B"},"u200B"),Ot("span",{"data-testid":"tab-completion",className:jr(c.tabText,c.resetIndent),"data-source":l,children:o},"tabText")];return n&&b.push(Ot("span",{className:jr(c.hint,c.resetIndent),children:Ot(gs,{keyCode:"tab"},"tabHint")})),Mr(x,b)},[s,o,n]),E=tp(()=>{let x=[];return p&&x.push(new Wn("selection")),x.push(new _t("placeholders")),r&&x.push(new Vn("keywords")),x},[g,p,r]),_=tp(()=>{let x=window.getComputedStyle(a);return{"--dd-color":x.color,"--dd-font-size":x.fontSize,"--dd-font-family":x.fontFamily,"--dd-font-variant":x.fontVariant}},[]);return!t||!f?null:Wy("div",{ref:x=>{x!=null&&x.parentElement&&(m.current=x==null?void 0:x.parentElement)},className:c.root,style:_,children:[Ot(By,{tagName:"span",containerTagName:"div",className:jr(c.container,c.agentText),disableLineBreaks:je(a),content:e||"\u200B",onAfterParse:h,matchers:E,selection:u,keywordMatches:i,inputElement:a,inputStyle:_,boundaryRef:m,inlineSuggestionsOnlyAtEnd:!d}),Ot("br",{})]})},qy=({input:t,ui:e,settings:o,styleSuggestions:n,conversation:s})=>{var f;let{tabCompletionSuggestion:r}=t,i=(r==null?void 0:r.text)||"",a=(r==null?void 0:r.source)||"",l=t.html??Zt(t.text),c=i.indexOf(t.text)===0?i.slice(t.text.length):"",{showTabHint:p}=e,{isSupported:d}=s,{showTabCompletion:g,visible:u,showStyleSuggestions:m}=o;return{showTabHint:p,showStyleSuggestions:m,showTabCompletion:g,content:l,tabText:c,source:a,keywordMatches:((f=n.list)==null?void 0:f.keywordMatches)??[],enabled:u&&d!==!1}},op=zy(qy)(Vy);import kv from"classnames";import{useEffect as Iv}from"react";import{useDispatch as Rv,useSelector as te}from"react-redux";import{createAsyncThunk as yo,createSlice as $y}from"@reduxjs/toolkit";var np={list:[],fetchState:"idle",isInitialRequest:null},rp=t=>t.autoflows.list||[],sp=t=>e=>{var o;return(o=e.list)==null?void 0:o.find(n=>n.triggerPayload===t)},Ae=yo("autoflows/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getAutoflows(t)}),Vr=yo("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(Ae(t.platformSessionId))}),qr=yo("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(Ae(t.platformSessionId))}),Gy=$y({name:"autoflows",initialState:np,reducers:{},extraReducers:t=>{t.addCase(Vr.pending,(e,o)=>{let n=sp(o.meta.arg.triggerPayload)(e);n.state="Started",n.isBusy=!0}),t.addCase(qr.pending,(e,o)=>{let n=sp(o.meta.arg.triggerPayload)(e);n.state="Aborted",n.isBusy=!0}),t.addCase(Ae.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}),t.addCase(Ae.rejected,e=>{e.fetchState="error"}),t.addCase(Ae.fulfilled,(e,o)=>{e.list=o.payload,e.fetchState="done"}),t.addCase(L,()=>np)}}),ip=yo("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(Ae(t))}),s.on("sessionCompleted",()=>{o(Ae(t))})}),ap=yo("autoflows/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),lp=Gy.reducer;import{createAsyncThunk as So,createSlice as Xy}from"@reduxjs/toolkit";var cp={list:[],fetchState:"idle",isInitialRequest:null,sentSuggestions:[],errorSuggestions:[],answeredSuggestions:[]},pp=t=>t.customMessages.list,dp=t=>e=>!!e.customMessages.sentSuggestions.find(o=>o===t),up=t=>e=>!!e.customMessages.answeredSuggestions.find(o=>o===t),gp=t=>e=>!!e.customMessages.errorSuggestions.find(o=>o===t),vo=So("customMessages/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getCustomMessages(t)}),$n=So("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=So("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)}),mp=Xy({name:"customMessages",initialState:cp,reducers:{onCustomMessage(t,e){Array.isArray(e.payload)?t.list=e.payload:t.list=[e.payload]}},extraReducers:t=>{t.addCase(vo.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(vo.rejected,e=>{e.fetchState="error"}).addCase(vo.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload||[]}).addCase($n.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.errorSuggestions=e.errorSuggestions.filter(n=>o.meta.arg.suggestion.text!==n)}).addCase($n.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(L,()=>cp)}}),fp=So("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(mp.actions.onCustomMessage(r))})}),hp=So("customMessages/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),yp=mp.reducer;import{createAsyncThunk as vp,createSlice as Zy}from"@reduxjs/toolkit";var Qy={token:null,accountUrl:null,interval:null},Sp=t=>e=>{let{passwordlessToken:{token:o,accountUrl:n}}=e;return o&&n?`${n}/apis/admin/session/passwordless/login/?token=${o}&redirect=${t}`:null},Wr=vp("passwordlessToken/getTemporaryPasswordlessToken",async(t,e)=>{let{deepdeskAPI:o}=e.extra,n=await o.requestPasswordlessToken();return{accountUrl:o.client.baseUrl,token:n}}),$r=vp("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:o=1e3*60*10}=t,{dispatch:n}=e;return n(Wr()),setInterval(()=>n(Wr()),o)}),_p=Zy({name:"passwordlessToken",initialState:Qy,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Wr.fulfilled,(e,o)=>{e.token=o.payload.token,e.accountUrl=o.payload.accountUrl}),t.addCase($r.fulfilled,(e,o)=>{e.interval=o.payload})}}),{stopPollPasswordlessToken:xp}=_p.actions,bp=_p.reducer;function Cp(t){let{customMessages:e,autoflows:o}=t;return o.fetchState==="loading"&&o.isInitialRequest===!0||e.fetchState==="loading"&&e.isInitialRequest===!0}import{Fragment as av}from"react";import{connect as lv}from"react-redux";import sv from"classnames";import{Fragment as rv}from"react";import Jy from"classnames";var wp={root:"_root_838fd_1"};import{jsx as ev}from"react/jsx-runtime";var Yy=({className:t,children:e})=>{let o=y("Unicode",wp);return ev("span",{className:Jy(t,o.root),children:e})},Tp=Yy;var Ep={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 Gr={};q(Gr,{enUS:()=>tv,nlNL:()=>ov});var tv={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"}]},ov={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 rt,jsxs as Xn}from"react/jsx-runtime";var iv=({disabled:t,state:e,displayName:o,description:n,onStartAutoflow:s,onStopAutoflow:r})=>{let i=y("Autoflow",Ep),a=T(Gr),l=e==="Started"?"stop":"start",c=l==="start"?"\u25B6":l==="stop"?"\u25FC":"";return Xn(D,{className:sv(i.root,{[i.isDisabled]:t,[i.isCompleted]:e==="Completed",[i.isAborted]:e==="Aborted",[i.isStarted]:e==="Started"}),children:[rt(F,{children:Xn(F.Content,{children:[Xn(F.Title,{children:[e&&rt("span",{className:i.stateBadge,children:a(e)}),o]}),rt("span",{children:n})]})}),rt(D.Actions,{fixed:e==="Started",children:rt(D.ActionButton,{primary:!0,className:l==="start"?i.buttonStart:i.buttonStop,onClick:e==="Started"?r:s,disabled:t,label:Xn(rv,{children:[rt(Tp,{children:c})," ",rt("span",{children:a(l)})]})})})]})},kp=iv;import{jsx as Ip}from"react/jsx-runtime";var cv=(t,e)=>{let o=e.filter(n=>n.state==="Started");return o.length>0?o.indexOf(t)===-1:!1},pv=({autoflows:t,onStartAutoflow:e,onStopAutoflow:o,platformSessionId:n})=>Ip(av,{children:t.map(s=>Ip(kp,{displayName:s.displayName,description:s.description,disabled:s.isBusy||cv(s,t),state:s.state,onStartAutoflow:()=>e({platformSessionId:n,triggerPayload:s.triggerPayload}),onStopAutoflow:()=>o({platformSessionId:n,triggerPayload:s.triggerPayload})},s.displayName))}),dv=({autoflows:t,conversation:e})=>{var o;return{autoflows:t.list,platformSessionId:(o=e.current)==null?void 0:o.sessionId}},uv={onStartAutoflow:Vr,onStopAutoflow:qr},Rp=lv(dv,uv)(pv);import{useEffect as gv,useState as mv}from"react";import{useDispatch as fv}from"react-redux";import Lp from"classnames";import{jsx as Pp}from"react/jsx-runtime";var Xr=()=>Pp("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:Pp("path",{d:"M502.6 70.63l-61.25-61.25C435.4 3.371 427.2 0 418.7 0H255.1c-35.35 0-64 28.66-64 64l.0195 256C192 355.4 220.7 384 256 384h192c35.2 0 64-28.8 64-64V93.25C512 84.77 508.6 76.63 502.6 70.63zM464 320c0 8.836-7.164 16-16 16H255.1c-8.838 0-16-7.164-16-16L239.1 64.13c0-8.836 7.164-16 16-16h128L384 96c0 17.67 14.33 32 32 32h47.1V320zM272 448c0 8.836-7.164 16-16 16H63.1c-8.838 0-16-7.164-16-16L47.98 192.1c0-8.836 7.164-16 16-16H160V128H63.99c-35.35 0-64 28.65-64 64l.0098 256C.002 483.3 28.66 512 64 512h192c35.2 0 64-28.8 64-64v-32h-47.1L272 448z"})});var Ap={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 Dt,jsxs as Mp}from"react/jsx-runtime";var hv=({entities:t})=>{let e=y("EntitiesWidgetList",Ap),[o,n]=mv(void 0),s=fv(),r=()=>{n(void 0)},i=a=>{t&&(n(t.indexOf(a)),lo(a.text),s(W({name:"entity copied",data:{entity:a,type:"copy"}})))};return gv(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[o]),!t||t.length===0?null:Dt("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,l)=>Mp("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[Dt("span",{className:e.entityText,children:a.text}),Mp("span",{className:e.iconWrapper,children:[Dt("span",{className:Lp(e.icon),children:Dt(Xr,{})}),Dt("span",{className:Lp(e.icon,o===l&&e.iconClicked),children:Dt(Xr,{})})]})]},a.text))})},Np=hv;import yv from"classnames";import{useCallback as Op}from"react";import{useDispatch as vv,useSelector as Zn}from"react-redux";var Le={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 Ve,jsxs as Qn}from"react/jsx-runtime";var Sv=({suggestion:t})=>{let e=T(Je),o=vv(),n=Zn(dp(t.text)),s=Zn(up(t.text)),r=Zn(gp(t.text)),i=Zn(No),{replyOptions:a}=t,l=Op(p=>{p.preventDefault(),p.stopPropagation(),!(n||!i)&&o($n({platformSessionId:i,suggestion:t}))},[t,n,o,i]),c=Op(p=>{if(p.preventDefault(),p.stopPropagation(),!i||!a)return;let d=parseInt(p.target.dataset.index,10),g=a[d];o(Gn({platformSessionId:i,reply:g,suggestion:t}))},[t,n,o,i]);return Qn(D,{onClick:l,className:yv(Le.root,{[Le.isUsed]:n,[Le.hasError]:r}),children:[Ve(F,{children:Qn(F.Content,{children:[Qn(F.Title,{className:Le.title,children:[t.text," ",Ve(ms,{className:Le.label,children:"analyse tool"})," ",r&&Ve("span",{className:Le.errorIcon,role:"img","aria-label":e("sendingError"),title:e("sendingError"),children:"!"})]}),a&&a.length>0&&Ve("ul",{className:Le.quickReplies,children:a.map(p=>Ve("li",{className:Le.quickReply,children:p.title},p.title))})]})}),Qn(D.Actions,{fixed:r||n,children:[a&&a.length>0&&Ve(D.DropdownButton,{label:e("answer"),disabled:s,children:a.map((p,d)=>Ve(D.DropdownItem,{index:d,label:p.title,onClick:c},p.title))}),Ve(D.ActionButton,{primary:!0,disabled:n,onClick:l,label:e(n?"suggestionSent":r?"tryAgain":"sendSuggestion")})]})]})},Dp=Sv;import{jsx as Hp}from"react/jsx-runtime";var Bp=()=>Hp("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Hp("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 bv}from"react-redux";import{useCallback as _v}from"react";import{jsx as it,jsxs as Jn}from"react/jsx-runtime";var xv=({suggestion:t,lines:e,onEdit:o,onUse:n})=>{var g;let s=t.text||t.url||t.message,r=Sn(s),i=T(Je),a=C("showImages"),l=C("fallbackImage"),c=u=>{u.preventDefault(),u.stopPropagation(),n(s)},p=u=>{u.preventDefault(),u.stopPropagation(),o(t)},d=_v(u=>{window.open(r,"_blank"),u.stopPropagation(),u.preventDefault()},[r]);return Jn(D,{onClick:c,"data-testid":"edit-suggestion",children:[Jn(F,{children:[a&&t.image&&it(F.Image,{src:qn(t,"small",l||void 0),title:t.title}),Jn(F.Content,{children:[t.title&&it(F.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((g=t.searchKeywords)==null?void 0:g.length)>0&&it(D.Labels,{labels:t.searchKeywords}),it(F.Content,{cropText:e==="single",lineClamp:e==="multiple",children:s})]})]}),Jn(D.Actions,{children:[r&&it(D.ActionButton,{onClick:d,label:i("visitUrl")}),it(D.ActionButton,{primary:!0,onClick:p,label:i("preview")}),it(D.ActionButton,{primary:!0,onClick:c,label:i("useSuggestion")})]})]})},Fp=xv;import{Fragment as wv,jsx as Kp}from"react/jsx-runtime";var Cv=({contentType:t,lines:e,suggestions:o})=>{let n=se(),s=bv(Ke),r=a=>{n.send(pr,{state:s,suggestion:a,contentType:t})},i=(a,l)=>{n.send(ke,{text:a,suggestion:{...l,source:l.source,sourceText:l.text}})};return Kp(wv,{children:o.map(a=>Kp(Fp,{suggestion:a,lines:e,onEdit:l=>r(l),onUse:l=>i(l,a)},a.text||a.url||a.message))})},Up=Cv;var Zr={};q(Zr,{enUS:()=>Tv,nlNL:()=>Ev});var Tv={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"}]},Ev={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 zp={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 jp}from"react/jsx-runtime";var Vp=()=>jp("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:jp("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 qp}from"react/jsx-runtime";var Wp=()=>qp("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:qp("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 Ht}from"react/jsx-runtime";var Yn=(t,e)=>{let o=te(Z);Iv(()=>o?e.every(n=>!!n)?t():()=>{}:()=>{},[...e,o])},Pv=({onLogIn:t})=>{let e=T(Zr),o=Rv(),n=C("isEmbedded"),s=y("Widget",zp),r=C("showAutoflows"),i=C("showCustomMessages"),a=C("showSummaryCommand"),l=C("showKnowledgeSearch"),c=C("showSearch"),p=te(ze),d=te(Pn),g=te(rp),u=te(kn),m=te(pp),f=te(Oo),h=te(yt),E=te(Z),_=te(No),x=te(Cp),b=te(Ke),v=se(),R=te(rl),A=te(Sp("/admin/")),H=C("adminUrl"),N=C("productName");if(Yn(()=>(o(vo(_)),o(fp(_)),()=>{o(hp(_))}),[o,h,i,_]),Yn(()=>(o(Ae(_)),o(ip(_)),()=>{o(ap(_))}),[o,h,r,_]),Yn(()=>{d.forEach(({type:k})=>{o(k==="entities"?de():pe(k))})},[o,h,f,p]),Yn(()=>(o($r()),()=>{o(xp())}),[o]),h===!1)return M("div",{className:s.stateText,children:M("div",{children:M("p",{children:e("notSupported")})})},"supported");if(E===!1)return M("div",{className:s.loginText,children:M("div",{children:M(Fn,{isEmbedded:n,loginUrl:H,onLogIn:t})})},"login");if(!p||!_||E===null||R||x)return M("div",{className:s.stateText,children:M("div",{children:M("p",{children:e("waiting")})})},"waiting");let K=c||a||l||A;return M("div",{className:kv(s.root),"data-testid":"widget",children:Ht(hs,{className:s.sectionList,children:[K&&M(We,{title:e("actions"),type:"shortcuts",children:Ht("div",{className:s.shortcutList,children:[c&&Ht("button",{className:s.shortcut,"data-testid":"shortcut-search",onClick:()=>v.send("ShowCommandPalette",{isOpen:!0}),children:[M(Et,{}),e("linkSearch")]}),a&&Ht("button",{className:s.shortcut,"data-testid":"shortcut-summary",onClick:()=>v.send("ShowCommandPalette",{isOpen:!0,page:"summary"}),children:[M(Wp,{}),e("linkSummary")]}),l&&Ht("button",{className:s.shortcut,"data-testid":"shortcut-knowledge-assist",onClick:()=>v.send("ShowCommandPalette",{isOpen:!0,page:"knowledgeAssist"}),children:[M(Vp,{}),e("linkKnowledgeSearch")]}),A&&Ht("a",{className:s.shortcut,target:"_blank",href:A,"data-testid":"shortcut-studio-login",rel:"noreferrer",children:[M(Bp,{}),e("linkStudioLogin",{productName:N})]})]})}),i&&m.length>0&&M(We,{type:"custom-messages","data-testid":"custom-messages",children:M(ie,{withDivider:!0,children:m.map(k=>M(Dp,{suggestion:k},k.text))})}),r&&g.length>0&&M(We,{type:"autoflows",title:e("titleAutoflows"),"data-testid":"autoflows",children:M(ie,{withDivider:!0,children:M(Rp,{})})}),d.map(({type:k,title:B,amount:ue,lines:cs})=>{var ct;switch(k){case"entities":return u&&u.length>0&&M(We,{type:k,title:B,"data-testid":`type-${k}`,children:M(Np,{entities:u})},k);default:return((ct=b[k])==null?void 0:ct.fetchState)==="done"&&b[k].suggestions.length>0&&M(We,{type:k,title:B,"data-testid":`type-${k}`,children:M(ie,{withDivider:!0,children:M(Up,{lines:cs,contentType:k,suggestions:b[k].suggestions.slice(0,ue)||[]})})},k)}})]})})},$p=Pv;function xo(t){let e=new Range;return e.selectNodeContents(t),e}function Gp(t,e,o){try{return at(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 _o=/[\u200B-\u200D\uFEFF]/g;function at(t,e,o){let n=new Range;if(t.firstChild===null&&e===0&&o===0)return n.selectNodeContents(t),n;let s=0,r=!1;function i(l,c){let p=-1,d=/[\u200B-\u200D\uFEFF]/;if(!d.test(l))return c;for(let g=0;g<=l.length;g++)if(d.test(l[g])||p++,p===c)return g;throw new Error("Offset out of range")}function a(l){switch(l.nodeType){case Node.TEXT_NODE:{let c=l.textContent,p=c.replace(_o,""),d=s+p.length,g=e>=s&&e<=d,u=o>=s&&o<=d;if(g){let m=i(c,e-s);m===0&&!u?n.setStartBefore(l):n.setStart(l,m)}u&&(n.setEnd(l,i(c,o-s)),r=!0),s=d;break}case Node.ELEMENT_NODE:{if(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 g=d===o,u=d===s;switch(d.nodeType){case Node.TEXT_NODE:{let m=d.textContent;g&&(a=c+m.substring(0,n).replace(_o,"").length),u&&(l=c+m.substring(0,r).replace(_o,"").length),c+=m.replace(_o,"").length;break}case Node.ELEMENT_NODE:{let m=d.nextSibling===null;ts(d)&&!m&&c++;for(let f=0;f<d.childNodes.length;f++){let h=g&&f===n,E=u&&f===r;if(h&&(a=c),E&&(l=c),l!==void 0||((!h||!i)&&p(d.childNodes[f]),u&&f===r-1&&(l=c),l!==void 0))break}!u&&es(d)&&!m&&c++,u&&(l=c);break}default:break}}if(p(t),l===void 0)throw new Error("Could not determine start and end");return{start:a??l,end:l}}function 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 g=p?n:0,u=d?r:void 0,m=c.textContent.replace(_o,"");g===0&&u===void 0?a+=m:a+=m.substring(g,u);break}case Node.ELEMENT_NODE:{let g=c.nextSibling===null;i===0&&ts(c)&&!g&&(a+=`
|
|
8
|
-
`);for(let u=p?n:0;u<(d?Math.min(r,c.childNodes.length):c.childNodes.length)&&(l(c.childNodes[u]),i!==1);u++);!d&&i===0&&
|
|
9
|
-
`);break}default:break}d&&i++}return l(t),a}function Xp(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var Bt=class extends De{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!Xp(o)&&(e.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=e.getBoundingClientRect(),e.deleteContents(),!Xp(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&&Gp(this.element,o.start,o.end))return o;let n=xo(this.element);return n.collapse(!1),os(this.element,n)}getSelectedText(){let{start:e,end:o}=this.getSelection();return ns(this.element,at(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 Zp(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 Qr=class{constructor(e){this.name=e;this.broadcastChannel=new BroadcastChannel(e)}broadcastChannel;disposeHandlers=[];onMessage(e){this.broadcastChannel.addEventListener("message",e),this.disposeHandlers.push(()=>{this.broadcastChannel.removeEventListener("message",e)})}postMessage(e){this.broadcastChannel.postMessage(JSON.stringify(e))}close(){this.disposeHandlers.forEach(e=>e()),this.broadcastChannel.close()}},Jr=class{constructor(e,o,n){this.name=e;this.targetOrigin=o;this.options=n;this.iframe=Zp(e,`${this.targetOrigin}/sdk/proxy/proxy.html`,{channel:this.name,host:window.location.origin,debug:"1"}),document.body.appendChild(this.iframe)}iframe;disposeHandlers=[];onMessage(e){window.addEventListener("message",e),this.disposeHandlers.push(()=>{window.removeEventListener("message",e)})}postMessage(e){var o;(o=this.iframe.contentWindow)==null||o.postMessage(JSON.stringify(e),this.targetOrigin)}close(){var e;this.disposeHandlers.forEach(o=>o()),(e=this.iframe)==null||e.remove()}},Yr=class{constructor(e){this.params=e;this.deepdeskUrl=e.deepdeskUrl,this.eventMap=e.eventMap,this.sessionId="deepdesk-general",this.defaultChannel=this.createChannel("deepdesk-general")}sessionId;deepdeskUrl;channel;defaultChannel;eventMap;get isCrossOrigin(){return this.params.deepdeskUrl!==(this.params.origin||window.location.origin)}setSessionId(e){this.sessionId!==e&&(this.cleanup(),w.info("Set sessionId",e),this.sessionId=e,this.channel=this.createChannel(e))}createChannel(e){let o=this.params.createCustomChannel?this.params.createCustomChannel(e):this.isCrossOrigin?new Jr(e,this.deepdeskUrl,{debug:!0}):new Qr(e),n=s=>{var i,a;if(s.origin!==this.deepdeskUrl)return;let r=typeof s.data=="string"?JSON.parse(s.data):s.data;r.type==="event"&&r.channel===e&&(w.info("Received broadcast event",this.sessionId,s),(a=(i=this.eventMap)[r.name])==null||a.call(i,r.payload))};return o.onMessage(n),o}send(e,o){var r,i;w.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)}},Qp=Yr;var Ft=class extends Error{constructor(o,n){super(o);this.body=n}name="CustomError"};var ei=t=>new Promise(e=>{setTimeout(e,t)});var Kt=class extends Ft{name="ClientError"},ti=class extends Ft{name="ServerError"},Se=class t{constructor(e="",o={}){this.baseUrl=e;this.options=o;o.fetch&&(this.fetch=o.fetch)}latestRequestByUrl={};csrfToken;fetch=window.fetch.bind(window);static refreshingToken=null;patchFetch(e){this.fetch=e(this.fetch)}setCsrfToken(e){this.csrfToken=e}request(e,o={}){return new Promise((n,s)=>{let r={isAborted:!1,reject:s},i=`${this.baseUrl}${e}`,a=this.fetch,{abortLatest:l=!1,attempts:c=1,retryDelay:p=500,refreshTokenOn401:d=!0,retryOnError:g=b=>b instanceof TypeError,retryOnResponse:u=b=>b.status>=500,version:m="v1",...f}=o,h={credentials:"include",...f,headers:{"Content-Type":"application/json",...f.headers}};o.method!==void 0&&o.method!=="GET"&&this.csrfToken&&(h.headers={...h.headers,"X-CSRFToken":this.csrfToken}),typeof m=="string"&&(h.headers={...h.headers,"X-Deepdesk-API-Version":m});let E=c,_=!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()=>(E--,a(i,h).then(async b=>u(b)&&!r.isAborted&&E>0?(await ei(p),x()):b.status===401&&d===!0&&_===!1?(_=!0,await this.refreshToken(),x()):b).catch(async b=>{if(g(b)&&!r.isAborted&&E>0)return await ei(p),x();throw b}));x().then(b=>b.json().catch(()=>null).then(v=>{b.status>=500?s(new ti("Server Error",v)):b.status===401?s(new Kt("Unauthorized",v)):b.status===403?s(new Kt("Forbidden",v)):b.status===404?s(new Kt("Not Found",v)):b.status>=400&&s(new Kt("Bad Request",v)),delete this.latestRequestByUrl[i],n(v)})).catch(b=>{s(b)})})}async validateToken(){let{has_valid_access_token:e}=await this.get("/auth/validate");if(!e)return!1;let{is_logged_in:o}=await this.get("/apis/admin/session/validate/",{version:null});return!!o}refreshToken(){return t.refreshingToken||(t.refreshingToken=this.get("/auth/refresh",{refreshTokenOn401:!1}).finally(()=>{setTimeout(()=>{t.refreshingToken=null},1e3*60)})),t.refreshingToken}get(e,o){return this.request(e,o)}post(e,o,n){return this.request(e,{method:"POST",body:JSON.stringify(o),...n})}patch(e,o,n){return this.request(e,{method:"PATCH",body:JSON.stringify(o),...n})}put(e,o,n){return this.request(e,{method:"PUT",body:JSON.stringify(o),...n})}delete(e,o){return this.request(e,{method:"DELETE",...o})}};var Av;(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||={})})(Av||={});function ss(t){return{...P(t),tags:t.tags}}var qe=class t{constructor(e,o={}){this.options=o;this.client=new Se(e,{fetch:o.fetch}),this.client.patchFetch(n=>async(s,r)=>{let i=await n(s,r);return this.handleDeepdeskVersionHeaders(i),i})}latestReceivedDeepdeskVersions={};client;shouldFetchCsrfToken=!0;static exchangeTokenPromise=null;async preflight(){if(this.shouldFetchCsrfToken){this.shouldFetchCsrfToken=!1;let e=await this.getCsrfToken();this.client.setCsrfToken(e)}return this.options.token?(t.exchangeTokenPromise||(t.exchangeTokenPromise=this.exchangeTokenForAccessCookie(this.options.token)),t.exchangeTokenPromise):Promise.resolve()}async createConversation(e){await this.preflight(),w.info(`Creating conversation for session ${e.sessionId} and agent ${e.agentId}`);let o=await this.client.post("/api/conversations",{...z(e),tags:e.tags},{version:"v2"});return ss(o)}async getProfile(e){let o=await this.client.get(`/apis/admin/profiles/${e}/`,{version:null});return P(o)}async getKnowledgeAssistant(e){let o=await this.client.get(`/apis/admin/knowledge-assist/assistants/${e}/`,{version:null});return P(o)}async getContentTypes(){let e=await this.client.get("/apis/admin/content-types/",{version:null});return P(e)}async getPlatformConfig(){let{config:e}=await this.client.get("/platform/config/",{version:null});return P(e)}async checkUserExists(e){let{exists:o}=await this.client.get(`/apis/admin/users/exists?external_id=${e}`);return o}async getConversationBySessionId(e,o={}){await this.preflight(),w.info(`Getting conversation for session ${e}`);let{attempts:n=1,retryDelay:s=1e3}=o,r=await this.client.get(`/api/conversations/by_session_id/${e}`,{attempts:n,retryDelay:s,retryOnResponse:i=>i.status===404||i.status>=500,version:"v2"});return w.info(`Successfully retrieved conversation ${r.id} for session ${e}`),ss(r)}async isConversationSupported(e,o={}){w.info(`Check if conversation for session ${e} is supported`);let{attempts:n=1,retryDelay:s=1e3}=o;return(await this.client.get(`/api/conversations/by_session_id/${e}/active_profile`,{attempts:n,retryDelay:s,retryOnResponse:i=>i.status===404||i.status>=500,version:"v2"})).has_active_profile}async updateConversation(e,o){let n=z(o);o.tags&&(n.tags=o.tags);let s=await this.client.put(`/api/conversations/${e}`,n,{version:"v2"});return ss(s)}async postMessages(e,o){return(await this.client.post(`/api/conversations/${e}/messages`,o.map(s=>({...z(s),tags:s.tags})),{version:"v2"})).map(s=>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",z({...r,...s,data:n,name:e}),{version:"v2"})}async sendEventV1(e,o){let n=Object.entries(this.latestReceivedDeepdeskVersions).reduce((s,[r,i])=>({...s,[r]:i}),{});return this.client.post("/api/events",{event:e,data:z({...o,...n})})}async getEntities(e){return(await this.client.post("/api/entities",{messages:e.filter(n=>n.text)})).entities}async getSummary(e,o={}){return(await this.client.post("/api/summary",{conversation:{messages:e.filter(s=>s.text&&s.source),agent_id:o.agentId,id:o.externalConversationId},prompt_instruction:o.promptInstruction,model:o.model})).summary}async getTemporaryExchangeToken(){return(await this.client.get("/auth/exchange-token",{version:null})).jwt}async exchangeTokenForAccessCookie(e){return this.client.post("/apis/admin/session/jwt/",{jwt:e},{version:null}).catch(o=>{throw w.warn(`Invalid token '${e}'`),o})}async authenticateWithKey(e,o){await this.client.post("/apis/admin/session/api-key/",z(o),{version:null,refreshTokenOn401:!1,headers:{apikey:e}})}async getTextSuggestions(e,o={},n){return n==="sticky-messages"?this.getPinnedMessages(e):(await this.client.post(`/api/conversations/${e}/recommend/${n}`,z(o),{abortLatest:!0})).map(r=>({...P(r),text:r.text||r.url||r.message,source:n,type:n})).filter((r,i,a)=>i===a.findIndex(l=>l.text===r.text))}async isLoggedIn(){return await this.preflight(),this.client.validateToken()}async getAutocompleteSuggestions(e,o){return(await this.client.post(`/api/conversations/${e}/autocomplete`,z(o),{abortLatest:!0})).map(s=>({score:1,source:s.source,sourceText:s.source_text,text:s.label,trainingJobs:s.training_jobs,searchKeywords:s.search_keywords,type:s.source})).filter((s,r,i)=>r===i.findIndex(a=>a.text===s.text))}async getPinnedMessages(e){let o=await this.client.get(`/api/conversations/${e}/sticky-messages`,{abortLatest:!0});return P(o).map(n=>({...n,text:n.message,source:"sticky-messages",type:"pinned-message"}))}async getStyleSuggestions(e){let o=await this.client.post("/api/style-suggestions",z(e),{abortLatest:!0});return P(o)}async search(e){let o=await this.client.post(`/api/profiles/${e.profile}/search`,z(e),{version:"v2"});return P(o)}async knowledgeAssist(e,o,n,s={}){let r=await this.client.post(`/api/knowledge-assist/assistants/${n}/search`,z({question:e.question,promptInstruction:e.promptInstruction,chatHistory:o.map(i=>({question:i.question,answer:i.answer.answer})),agentId:s.agentId,conversationId:s.conversationId}),{version:"v2"});return P(r)}async requestLoginByEmail(e){let o=await this.client.post("/apis/admin/session/passwordless/request/",{email:e},{version:null});return P(o)}async requestPasswordlessToken(){let e=await this.client.get("/apis/admin/session/passwordless/request/",{version:null});return P(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 P(o)}async evaluateRule(e,o,n,s={}){let r=new URLSearchParams;s.raiseForFailingConditions&&r.set("raise_for_failing_conditions","true");let i=await this.client.post(`/api/conversations/${o}/rules/${e}/evaluate?${r.toString()}`,n,{version:"v2"});return P(i.cues)}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&&w.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(o)}`),this.latestReceivedDeepdeskVersions[i]=o})}};var bo=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,P(s))}catch{w.warn(`Invalid JSON for ${e}: ${n}`)}})}connect(){clearTimeout(this.timeoutTimer);let e=new EventSource(this.url,{withCredentials:!0});this.eventSource=e;let o=!1;e.onopen=()=>{o=!0},e.onerror=()=>{o&&e.readyState===2&&this.connect()},this.timeoutTimer=setTimeout(()=>{e.close(),this.connect()},this.options.timeout),Object.keys(this.eventListeners).forEach(n=>{this.proxyEvent(n)})}disconnect(){var e;clearTimeout(this.timeoutTimer),this.eventListeners={},(e=this.eventSource)==null||e.close()}emit(e,o){this.eventListeners[e]&&this.eventListeners[e].forEach(n=>n(o))}on(e,o){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o),this.proxyEvent(e),()=>{this.off(e,o)}}off(e,o){let n;this.eventListeners[e]&&(n=this.eventListeners[e].indexOf(o),n>-1&&this.eventListeners[e].splice(n,1))}};var Lv;(e=>{let t;(r=>(r.Started="Started",r.Aborted="Aborted",r.Completed="Completed"))(t=e.AutoflowSessionState||={})})(Lv||={});var Co=class{constructor(e,o={}){this.apiUrl=e;this.client=new Se(e,o)}client;streams={};logger=w;async getCustomMessages(e){let o=await this.client.get(`/sessions/${e}/suggestions`);return P(o.suggestions)}async sendCustomMessage(e,o){let n=await this.client.post(`/sessions/${e}/messages`,z(o));return P(n)}async answerCustomMessage(e,o){await this.client.post(`/sessions/${e}/answers`,z(o))}async getAutoflows(e){let o=await this.client.get(`/sessions/${e}/autoflows`);return P(o.autoflows)}async startAutoflowSession(e){let o=await this.client.post("/autoflow-sessions",z(e));return P(o)}async stopAutoflowSession(e){await this.client.delete(`/autoflow-sessions/${e}`)}openStream(e){return this.streams[e]||(this.streams[e]=new bo(`${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 Fv,configureStore as Kv}from"@reduxjs/toolkit";import{createSlice as Mv}from"@reduxjs/toolkit";var Jp={startTime:null,stopTime:null},Yp=Mv({name:"handlingTime",initialState:Jp,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,()=>Jp)}}),{handlingTimeStart:ed,handlingTimeStop:rs,handlingTimeReset:td}=Yp.actions,od=Yp.reducer;var nd=(t={})=>{let e={onAuthError:Rt(!1),...t};return o=>n=>s=>("error"in s&&s.error.message==="Unauthorized"&&o.dispatch(e.onAuthError),n(s))};import{createAsyncThunk as Nv,createSlice as Ov}from"@reduxjs/toolkit";var is={list:{keywordMatches:[]},fetchState:"idle",isInitialRequest:null};var lt=Nv("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})}),Dv=Ov({name:"styleSuggestions",initialState:is,reducers:{},extraReducers:t=>{t.addCase(lt.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(lt.rejected,e=>{e.fetchState="error"}).addCase(lt.fulfilled,(e,o)=>{e.fetchState="done",Me(e.list,o.payload)||(e.list=o.payload)}).addCase(Xe,e=>{e.list=is.list}).addCase(L,()=>is)}}),sd=Dv.reducer;var rd=(t={})=>{let e,o=!0,n={getStyleSuggestions:lt,debounce:500,...t};return s=>r=>i=>{var u;let a=s.getState().input.text,l=r(i),c=s.getState();if(c.auth.isLoggedIn!==!0)return l;let{showStyleSuggestions:p}=c.settings;if(!((u=c.conversation.current)==null?void 0:u.id)||!p)return l;let{text:g}=c.input;return g===a&&!o||(clearTimeout(e),g==="")||(e=setTimeout(()=>{o=!1,s.dispatch(n.getStyleSuggestions({text:g}))},t.debounce)),l}};function Hv(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var id=(t={})=>{let e={getTextSuggestions:pe,getAutocompleteSuggestions:oo,debounce:200,check:Nt,...t},o;return n=>s=>r=>{var f;let{input:{userCommitted:i}}=n.getState(),a=s(r),l=n.getState();if(l.auth.isLoggedIn!==!0)return a;let{recommendTextSuggestions:c,showTabCompletion:p}=l.settings,d=(f=l.conversation.current)==null?void 0:f.id,g=r.type===wn.toString();if(!d||!c&&!p)return a;let{input:{userCommitted:u}}=l;return Hv(u,i)&&!g||(clearTimeout(o),!e.check(l))||(o=setTimeout(()=>{let h=vt(l);h===""?n.dispatch(e.getTextSuggestions("default")):n.dispatch(e.getAutocompleteSuggestions(h))},g?0:e.debounce)),a}};var ad=lt.fulfilled.toString();function Bv(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 ld=t=>e=>o=>n=>{var c;if(n.type!==ad){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=Bv(s,i);n.type===ad&&l.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:l}})};var Uv=Fv({activeSuggestion:fl,answer:sc,auth:Il,autoflows:lp,conversation:Ci,contentTypes:Fl,customMessages:yp,passwordlessToken:bp,entities:zl,knowledgeAssistant:tc,handlingTime:od,info:Fa,input:ws.reducer,overlayInput:Q.reducer,settings:Si,profile:cc,search:Wa,summary:Xl,styleSuggestions:sd,ui:Sl,textSuggestions:pl});function cd(t){return Kv({reducer:Uv,middleware:e=>[...e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI,deepdeskBrokerAPI:t.deepdeskBrokerAPI}},serializableCheck:!1}),nd(),id({debounce:200}),rd({debounce:500}),ld(t.deepdeskAPI),...t.middleware?t.middleware:[]],preloadedState:t.preloadedState})}var zv=t=>{var e;return((e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())??"unknown"},jv=t=>e=>o=>n=>{var a;let s=e.getState(),r=_s("inlineSuggestions")(s);switch(n.type){case Te.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 Rt.toString():{!n.payload&&t.emit("logout",void 0);break}case ae.toString():{let{start:l,end:c}=s.input.selection;t.emit("select-suggestion",{type:zv(n.payload.suggestion),...n.payload,replace:n.payload.replace==="selection"?{start:l,end:c}:{start:0,end:c}},{mayApplyChanges:!0});break}case zo.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 qt.toString():{let l=e.getState(),{text:c,selection:p}=l.input.userCommitted;t.emit("reset",{text:c,selectionAfter:p},{mayApplyChanges:!0});break}case Wo.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 de.fulfilled.toString():n.payload.length>0&&t.sendEvent("entities found",{conversationId:s.conversation.current.id,data:{entities:n.payload}});break;case Ie.fulfilled.toString():t.sendEvent("conversation summarized",{conversationId:s.conversation.current.id,data:{summary:n.payload.summary}});break;case W.toString():t.sendEvent(n.payload.name,{conversationId:((a=n.payload.options)==null?void 0:a.includeConversationData)&&s.conversation.current.id,data:n.payload.data});break;case jo.toString():t.handleKeyDown(n.payload);break;case Xe.toString():t.logSendMessage(n.payload);break;case Vo.toString():t.logSendEditSuggestionMessage(n.payload);break;case qo.toString():t.handleInputChanged(n.payload);break;default:break}let i=o(n);switch(n.type){case Xe.toString():t.handleAfterSendMessage(n.payload);break;case no.toString():t.onUpdateShowTabHint(n.payload);break;case rs.toString():t.logHandlingTime();break;case ae.toString():{r&&(e.dispatch(me([])),e.dispatch(xe()));break}case me.toString():{r&&n.payload.length>0&&e.dispatch(Oe(0));break}default:break}return i},pd=jv;function oi(t){return t.toISOString().replace("T"," ").replace("Z","")}function dd(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:oi(o),timeStop:oi(n)}}function ni(t,e,o){var A,H,N;let{text:n,metrics:{numCharsTyped:s,numCharsPasted:r,numCharsCut:i,numCharsDeleted:a,numPaste:l,agentStartedTypingTimestamp:c,externalTimeTotalSeconds:p,pastes:d,cuts:g,deletions:u,textSuggestions:m,offeredTextSuggestions:f}}=e[t],h=n.length,_=m.reduce((K,{text:k,searchTerm:B})=>K+k.length-(B?B.length:0),0),x=c??Date.now(),b=(Date.now()-x)/1e3+(p||0),v=s/b,R=m.reduce((K,{searchTerm:k})=>K+(k?k.length:0),0);return{conversationId:e.conversation.current.id,source:"agent",text:n,clientVersion:o.version,pastes:d,cuts:g,deletions:u,lenTextTyped:s+R,lenTextTotal:h,lenTextAssisted:_,lenTextPasted:r,lenTextCut:i,lenTextDeleted:a,timeTotalSeconds:b,charsPerSecond:v,numPastes:l,textSuggestionsV2:m,suggestionsCounters:[{source:"gpt",countOffered:f.filter(K=>K.source==="gpt").length}],agentId:(A=e.info.agentInfo)==null?void 0:A.agentId,agentName:(H=e.info.agentInfo)==null?void 0:H.agentName,agentEmail:(N=e.info.agentInfo)==null?void 0:N.agentEmail}}function si(t,e){var r;let o=t.closest(e);if(o)return o;let n=t.getRootNode().host;if(n instanceof HTMLElement)return si(n,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?si(s,e):null}function ud(t,e){return si(t,e)}function gd(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function Vv(t){return typeof t=="object"&&t!==null&&"tagName"in t}function ri(t){return Vv(t)&&(je(t)||cn(t))}var md=(t,e)=>({value(){try{let o=sessionStorage.getItem(`dd-${t}`);if(!o)return e;try{return JSON.parse(o)}catch{return e}}catch{return e}},update(o){try{sessionStorage.setItem(`dd-${t}`,JSON.stringify(o))}catch{w.warn("[Deepdesk] SessionStorage is blocked by browser")}}});function qv(t){return t.offsetParent!==null}function fd(t){if(!qv(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 ii(t,e,o=100){let n=fd(t);e({isVisible:n});let s=setInterval(()=>{let r=fd(t);r!==n&&(n=r,e({isVisible:n}))},o);return()=>{clearTimeout(s)}}import{jsx as j}from"react/jsx-runtime";var hd=md("showTabHint",!0),ls=class t{static version="10.12.1-beta.1";static count=0;deepdeskApi;inputMediator=null;version;broadcastEvents;eventListeners={};unmountHandlers=[];widgetRoot=null;dynamicThunkObject={};isMounted=!1;instanceId;shouldRender=!0;store;constructor({deepdeskUrl:e,brokerUrl:o,version:n=t.version||"unknown",locale:s="en-US",token:r,fetch:i,productName:a,createCustomChannel:l}){let c=e.replace(/\/api$/,"");this.deepdeskApi=new qe(c,{token:r,fetch:i}),this.version=n,this.instanceId=t.count++;let p={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[pd({emit:(d,g,u)=>this.emit(d,g,u),handleAfterSendMessage:d=>this.handleAfterSendMessage(d),handleInputChanged:d=>this.handleInputChanged(d),handleKeyDown:d=>this.handleKeyDown(d),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:d=>this.logSendMessage(d),logSendEditSuggestionMessage:d=>this.logSendEditMessage(d),onUpdateShowTabHint:d=>hd.update(d),sendEvent:(d,g)=>this.deepdeskApi.sendEvent(d,g)})]};o&&Object.assign(p,{deepdeskBrokerAPI:new Co(o)}),this.store=cd(p),this.broadcastEvents=new Qp({debug:!0,deepdeskUrl:c,eventMap:Rl(this.store),createCustomChannel:l}),this.store.dispatch(Vt),this.store.dispatch(no(hd.value())),this.store.dispatch(Vt({locale:s,adminUrl:c,productName:a}))}get state(){return this.store.getState()}get settings(){return this.state.settings}get selectedTextSuggestion(){return this.state.input.textSuggestions[this.state.input.selectedSuggestionIndex]??null}hasConversation(){return!!this.state.conversation.current}conversationId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.id}sessionId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.sessionId}shouldAbort(){return this.state.conversation.isSupported===!1?(w.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(w.warn("Profile has not been loaded (yet)"),!0):(w.warn("No conversation loaded (yet)"),!0)}login(){return this.store.dispatch(Rt(null)),this.store.dispatch(Ee()),new Promise(e=>{let o=this.store.subscribe(()=>{let n=this.store.getState();Z(n)&&bl(n)!=="loading"&&(o(),e())});this.unmountHandlers.push(()=>{o()})})}async isLoggedIn(){return(await this.store.dispatch(Ee())).payload}async setPlatformAgentId(e){try{if((await this.deepdeskApi.client.get("/apis/admin/session/me/",{version:null})).external_id)return;await this.deepdeskApi.client.request("/apis/admin/session/me/",{method:"PATCH",body:JSON.stringify({external_id:e}),version:null})}catch(o){w.warn("Failed to attach user:",o)}}async isConversationSupported(e,o){return(await this.store.dispatch(bs({sessionId:e,options:o}))).payload}async createConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(Do(e))).payload}async getConversationBySessionId(e,o){return this.hasConversation()&&this.sessionId()!==e&&this.resetConversation(),(await this.store.dispatch(Ho({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(Fo(e))).payload}async updateConversation(e){return(await this.store.dispatch(Bo(e))).payload}resetConversation(){this.store.dispatch(L()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}async getSummary(){let e=await this.store.dispatch(Ie());if(e.error)throw new Error(e.error.message);return e.payload.summary}configure(e){this.store.dispatch(Vt(e))}setVisitorInfo(e){this.store.dispatch(Ba(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(qo(e))}notifyKeyDown(e){this.store.dispatch(jo(e))}notifyPaste(e,o){this.store.dispatch(Ni({text:e,selectionText:o}))}notifyCut(e){this.store.dispatch(Li(e))}notifyExternalSuggestion(e){this.store.dispatch(ae(e)),this.store.dispatch(xe())}notifyEditSuggestion(e){this.store.dispatch(ll(e.contentType,e.suggestions)),this.store.dispatch(Te({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(Ue({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(me([])))}handleKeyDown(e){let{overlayCollapsed:o}=this.state.ui,{textSuggestions:n,selectedSuggestionIndex:s,selection:r}=this.state.input,{inlineSuggestions:i}=this.state.settings,a=n.length>0,l=s!==-1;if(this.store.dispatch(Mi(Uo(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=()=>{o||!a||i&&s<=0||r&&(e.shiftKey||(this.store.dispatch(Ai()),e.preventDefault(),!i&&(this.state.input.selectedSuggestionIndex===-1?this.store.dispatch(qt()):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(Oe(-1)),this.state.input.selectedSuggestionIndex!==-1?(this.store.dispatch(Oe(-1)),this.store.dispatch(qt()),e.preventDefault()):o||(this.store.dispatch(Ue({collapse:!0})),this.store.dispatch(yl(!0)),e.preventDefault());return}case"Tab":{let{userCommitted:d}=this.state.input,g=d.text.substring(0,d.selection.end),{tabCompletionSuggestion:u}=this.state.input;this.store.dispatch(no(!1)),this.state.input.selectedSuggestionIndex>-1?this.stageSelectedSuggestion({inputType:"tab"}):!i&&this.settings.showTabCompletion&&u&&u.text.startsWith(g)&&(this.store.dispatch(ae({text:u.text,suggestion:u,eventMetrics:{inputType:"tab"},replace:"until-selection-end"})),this.store.dispatch(xe())),e.preventDefault();break}default:}}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(Oi()),this.store.dispatch(me([]))}handlingTimeStart(){this.state.handlingTime.startTime||(w.info("Start handling time"),this.store.dispatch(ed()))}handlingTimeStop(){this.state.handlingTime.startTime&&(w.info("Stop handling time"),this.store.dispatch(rs()))}logSendMessage(e){let o=ni("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=ni("overlayInput",this.state,{version:this.version});e&&Object.assign(o,{text:e}),this.store.dispatch(Ii(this.state.overlayInput.metrics))}logHandlingTime(){let e=dd(this.state,{version:this.version});this.deepdeskApi.sendEventV1("Handling Time",e),this.store.dispatch(td())}notifySubmit(e={}){this.shouldAbort()||(this.store.dispatch(xe()),this.store.dispatch(Xe(e.text??this.state.input.text)))}stageSelectedSuggestion(e){let o=this.state.input.selectedSuggestionIndex,{textSuggestions:n}=this.state.input;this.store.dispatch(ae({text:n[o].text,suggestion:n[o],eventMetrics:e,replace:"until-selection-end"}))}emit(e,o,n={}){let s=()=>{this.eventListeners[e]&&this.eventListeners[e].forEach(r=>{try{r(o)}catch(i){w.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),w.error(i)}})};this.inputMediator&&n.mayApplyChanges?this.inputMediator.applyChanges(s):s()}on(e,o){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o),()=>{this.off(e,o)}}off(e,o){if(!e&&!o){this.eventListeners={};return}let n;this.eventListeners[e]&&(n=this.eventListeners[e].indexOf(o),n>-1&&this.eventListeners[e].splice(n,1))}setConversationQuery(e){this.dynamicThunkObject.conversationQuery=e}whenConversationLoaded(e){let o=()=>this.loadProfileConfig().then(()=>e());this.hasConversation()&&o();let n=this.hasConversation();this.store.subscribe(()=>{this.hasConversation()!==n&&(n=this.hasConversation(),n&&o())})}overlayContainerFactory(e,o,n,s){let[r,i]=Ct(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]=Ct(r,{appendTo:document.body,onMoveStart:()=>{s.style.display="none"}});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 Qe(s),s.dataset.testid=e,s.style.color=n.color,s.style.fontSize=n.fontSize,s.style.fontFamily=n.fontFamily,s.style.fontVariant=n.fontVariant,s.setAttribute("translate","no"),o.appendChild(s),this.unmountHandlers.push(()=>{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),w.info(`Stored analytics for ${this.conversationId()}`)}catch{}}restoreMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,o=window.sessionStorage.getItem(e);if(!o)return;let n=JSON.parse(o);n.text.trim()===this.state.input.text.trim()?(w.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(Hi(n.metrics))):w.warn(`Metrics mismatch, disregarding stored metrics for ${this.conversationId()}`),window.sessionStorage.removeItem(e)}catch{}}mount(e,o={}){if(this.isMounted)throw new Error("[Deepdesk] This instance was already mounted. Make sure to unmount before you remount.");if(!ri(e))throw new Error("[Deepdesk] Only mount on textarea or contentEditable div.");if(!this.shouldRender)return;let{customStyles:n={},showStyleSuggestions:s,showTabCompletion:r,showTextSuggestions:i,textSuggestionsCount:a,showMidSentenceSuggestions:l,showSuggestionsBeforePattern:c,showSuggestionsAfterPattern:p,isEmbedded:d,detectSubmit:g,insertLink:u,inputMediator:m,closestScrollSelector:f,appendOverlayTo:h,inlineSuggestions:E,floatingMenu:_}=o;this.configure({showStyleSuggestions:s,showTabCompletion:r,textSuggestionsCount:a,showMidSentenceSuggestions:l,showSuggestionsBeforePattern:c,showSuggestionsAfterPattern:p,showTextSuggestions:i,insertLink:u,isEmbedded:d,inlineSuggestions:E,floatingMenu:!!_}),o.automaticHandlingTime&&this.setupHandlingTime(e),Qe(e),this.inputMediator=m||(je(e)?new He(e):new Bt(e)),this.inputMediator.on("change",({plainText:v})=>{this.notifyInputChanged(v)}),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",v=>{this.notifyKeyDown(v)}),this.inputMediator.on("paste",({pastedText:v,selectionText:R})=>{this.notifyPaste(v,R)}),this.inputMediator.on("cut",({selectionText:v})=>{this.notifyCut(v)});let x=f&&ud(e,f)||void 0;if(E){let{customStyles:v,appendOverlayTo:R}=o;if(je(e))throw new Error("[Deepdesk] Inline suggestion is not supported for textarea yet.");let A=this.createInlineContainer(e,"deepdesk-caret");Ut(j(nt,{store:this.store,customStyles:v,children:j(tt,{broadcastEvents:this.broadcastEvents,children:j(Ec,{})})}),A),this.inputMediator.on("caret",N=>{this.store.dispatch(me([])),N?(A.style.display="block",A.style.top=`${N.top}px`,A.style.left=`${N.left}px`):A.style.display="none"});let H=this.overlayContainerFactory("floating-menu",x||e,{appendTo:typeof _=="object"&&"appendOverlayTo"in _?_.appendOverlayTo:R},v==null?void 0:v.floatingMenuRootNode);Ut(j(nt,{store:this.store,customStyles:v,children:j(tt,{broadcastEvents:this.broadcastEvents,children:j(_c,{onLogIn:()=>this.loginViaPopup().catch(N=>w.warn(N.message))})})}),H)}else{let v=this.overlayContainerFactory("deepdesk-tab-completion",x||e,{appendTo:h,closestScrollElement:x,mirrorOverflow:!0,onRemove:()=>this.unmount()},n==null?void 0:n.rootNode),R=this.overlayContainerFactory("deepdesk-suggestions-overlay",x||e,{appendTo:h},n==null?void 0:n.suggestionsRootNode);Ut(j(nt,{store:this.store,customStyles:n,children:j(tt,{broadcastEvents:this.broadcastEvents,children:j(op,{inputElement:e})})}),v),Ut(j(nt,{store:this.store,customStyles:n,children:j(tt,{broadcastEvents:this.broadcastEvents,children:j(Oc,{onLogIn:()=>this.loginViaPopup().catch(A=>w.warn(A.message))})})}),R)}Ut(j(nt,{store:this.store,customStyles:n,children:j(tt,{broadcastEvents:this.broadcastEvents,children:j(mc,{})})}),this.createContainer("deepdesk-overlays"));let b;this.inputMediator.on("selection",v=>{clearTimeout(b),v===null?b=setTimeout(()=>{v!==null&&this.store.dispatch(Ts(v))},500):this.store.dispatch(Ts(v))}),this.inputMediator.on("disabled",()=>{var v;(v=this.inputMediator)==null||v.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{g&&this.notifySubmit()}),this.inputMediator.on("blur",()=>this.store.dispatch(It(!1))),this.inputMediator.on("focus",()=>this.store.dispatch(It(!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(xe()),this.storeMetrics())}),this.whenConversationLoaded(()=>{var v;this.restoreMetrics(),this.refresh(),this.broadcastEvents.setSessionId((v=this.state.conversation.current)==null?void 0:v.sessionId)}),this.isMounted=!0}unmount(){var e;this.unmountHandlers.forEach(o=>o()),this.unmountHandlers=[],(e=this.inputMediator)==null||e.dispose(),this.broadcastEvents.cleanup(),this.isMounted=!1}renderWidget(e,o={}){if(this.widgetRoot&&w.warn("A widget was already rendered for this instance. Make sure to unmountWidget before rerendering"),!this.shouldRender)return;let{customStyles:n,showImages:s,isEmbedded:r}=o;this.widgetRoot=e,this.configure({showImages:s,isEmbedded:r}),Ut(j(nt,{store:this.store,customStyles:n,children:j(tt,{broadcastEvents:this.broadcastEvents,children:j($p,{onLogIn:()=>this.loginViaPopup().catch(i=>w.warn(i.message))})})}),e),this.whenConversationLoaded(()=>{var i;this.broadcastEvents.setSessionId((i=this.state.conversation.current)==null?void 0:i.sessionId)})}unmountWidget(){this.widgetRoot&&as(this.widgetRoot),this.widgetRoot=null}setupHandlingTime(e){let o=ii(e,({isVisible:n})=>{n?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),o()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){gd(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfigPromise=null;loadProfileConfig(){return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(this.loadProfileConfigPromise=Promise.resolve().then(async()=>{await this.store.dispatch(uo());let e=ze(this.state);e&&(await this.store.dispatch(po()),this.store.dispatch(Vt({showSearch:e.search,showAutoflows:e.autoflows,showCustomMessages:e.customMessages,showImageSearch:e.imageSearch,showEntitiesCommand:e.entitiesCommand,showSummaryCommand:e.summarizer,showKnowledgeSearch:!!e.knowledgeAssistant,recommendTextSuggestions:e.recommendTextSuggestions})))}),this.loadProfileConfigPromise)}async loginViaPopup(e){return new Promise((o,n)=>{let s=new MessageChannel,r=s.port1,i=this.state.settings.adminUrl,a=new URL(e!=null&&e.url?e==null?void 0:e.url:`${i}/platform/sso/`);a.searchParams.append("redirect","/sdk/popup/close.html");let l=!1,c=()=>{p&&!p.closed&&p.close(),window.removeEventListener("message",d),clearInterval(g)};r.onmessage=async u=>{var m,f;if((m=u.data)!=null&&m.jwt)try{await this.deepdeskApi.exchangeTokenForAccessCookie((f=u.data)==null?void 0:f.jwt),await this.isLoggedIn(),this.broadcastEvents.send(ro),l=!0,s.port1.close(),o()}catch(h){console.error(h),n(h)}finally{l=!0,c()}};let p=window.open(a.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");p===null&&n(new Error("Popup blocked by browser"));let d=async u=>{var m;if(u.origin===a.origin)switch((m=u.data)==null?void 0:m.type){case"deepdesk-popup-loaded":{try{let f=JSON.stringify({type:"deepdesk-popup-create-channel"});p==null||p.postMessage(f,a.origin,[s.port2])}catch(f){w.error("Error posting message to popup",f),n(f)}break}case"deepdesk-popup-error":{c(),u.data.message==="Timeout"&&w.warn("Popup timed out. Check if the account's platform url is configured correctly."),n(new Error(u.data.message));break}}};window.addEventListener("message",d);let g=setInterval(()=>{p&&!p.closed||(c(),l||n(new Error("Popup closed by user")))},200);this.unmountHandlers.push(c)})}async checkForTrialMode(e){try{let{account:o}=await this.deepdeskApi.getPlatformConfig();if(!o.isTrial){this.shouldRender=!0;return}if(w.info("Trial is active"),!await this.deepdeskApi.checkUserExists(e))throw new Error("User is not in trial");this.shouldRender=!0}catch(o){let{message:n}=o;w.info(n),this.shouldRender=!1}}async refreshWidgetSuggestions(){if(!this.widgetRoot||this.shouldAbort())return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let o=Pn(this.state);try{o.forEach(({type:n})=>{n==="entities"?this.store.dispatch(de()):this.store.dispatch(pe(n))})}catch(n){this.handleError(n)}}};async function Wv(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 $v(t,e,o={}){let n=o.replace?at(t,o.replace.start,o.replace.end):xo(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?
|
|
11
|
-
`).forEach((o,n)=>{n>0&&e.appendChild(document.createElement("br"));let s={index:0},r=0;for(;s=o.slice(r).match(/(\[([^\]]+)])\(([^)]+)\)/);){let i=document.createElement("a");i.href=s[3],i.setAttribute("target","_blank"),i.setAttribute("rel","noopener noreferrer"),i.appendChild(document.createTextNode(s[2])),e.appendChild(document.createTextNode(o.slice(r,r+s.index))),e.appendChild(i),r=r+s.index+s[0].length}e.appendChild(document.createTextNode(o.slice(r)))}),e}function
|
|
7
|
+
c32.4,32.4,47.8,70,47.8,115.2v70h11.9c9.4,0,17.9,3.4,24.7,10.2C462.1,250,465.5,257.7,465.5,267.9z`})})});import{jsx as kc}from"react/jsx-runtime";var wh={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},Ic=({className:t,color:e})=>kc("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:kc("path",{d:"M172.03 0.0199966H0V86.03C47.5 86.03 86 124.54 86 172.04C86 124.54 124.51 86.03 172.01 86.03C219.51 86.03 258.03 124.54 258.03 172.04C258.03 219.54 219.52 258.05 172.01 258.05C124.5 258.05 86 219.54 86 172.04C86 219.54 47.5 258.05 0 258.05V344.06H172.03C267.04 344.06 344.06 267.04 344.06 172.03C344.06 77.02 267.04 0 172.03 0V0.0199966Z",fill:wh[e||"pink"]})});var Rc={root:"_root_1tvv4_1",text:"_text_1tvv4_18",isLoggedIn:"_isLoggedIn_1tvv4_25",isLoggedOut:"_isLoggedOut_1tvv4_29",icon:"_icon_1tvv4_39",logo:"_logo_1tvv4_44",lock:"_lock_1tvv4_49"};var Ar={};V(Ar,{enUS:()=>Th,nlNL:()=>Eh});var Th={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},Eh={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};import{useDispatch as Rh}from"react-redux";import{jsx as Lr,jsxs as Pc}from"react/jsx-runtime";var Ac=({onLogIn:t})=>{let e=T(Ar),o=C("floatingMenu"),n=C("productName"),s=Rh(),r=Ih(Z),i=y("FloatingMenu",Rc);if(r===null||o===!1)return null;let a=()=>{r===!0?s(G(!0)):t()};return Pc("button",{className:kh(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[Lr("div",{className:i.text,children:e(r?"search":"signin",{productName:n})}),Pc("div",{className:i.icon,children:[Lr(Ic,{className:i.logo,color:"pink"}),r===!1&&Lr(Ec,{className:i.lock})]})]})};import{useEffect as Wh,useRef as $h}from"react";import{connect as Gh,useDispatch as Xh,useSelector as Fn}from"react-redux";function Ot(t){let{showMidSentenceSuggestions:e,showSuggestionsBeforePattern:o,showSuggestionsAfterPattern:n}=t.settings,{text:s,selection:r}=t.input.userCommitted;return r.start!==r.end?!1:r.end>=s.length?!0:e?o&&new RegExp(o).test(s.substring(r.end))||n&&new RegExp(n).test(s.substring(0,r.end))?!0:o===!1&&n===!1:!1}import{Fragment as jh,useMemo as Vh}from"react";import{Interweave as Lh}from"interweave";import{useEffect as Mh,useMemo as Nh,useRef as Oh}from"react";import{useDispatch as Dh,useSelector as Hh}from"react-redux";import{useEffect as Ph}from"react";function Lc(t,e,o){Ph(()=>{let n=t.current;return n?(n.addEventListener(e,o),()=>{n.removeEventListener(e,o)}):()=>{}},[t,e,o])}var Mc={root:"_root_4u430_1",actions:"_actions_4u430_8",badge:"_badge_4u430_15",formattedText:"_formattedText_4u430_19"};import{jsx as Hn,jsxs as zh}from"react/jsx-runtime";var Bh=["search","personal-collection-search","search-autocomplete"];function Fh(t,e,o,n={}){let s="";return Bh.includes(e)?s=wa(Vs(t,o,{stripAgentPart:!0}),n.searchKeywords??[o]):s=Vs(t,o,n),n.placeholders===!0&&(s=Ta(s)),s}var Kh=()=>{},Uh=({index:t,selected:e,suggestion:o,onFeedback:n})=>{let s=C("inlineSuggestions"),r=Hh(St),i=Dh(),a=y("TextSuggestion",Mc),l=Oh(null);Mh(()=>{let p=setTimeout(()=>{i(Hi({text:o.text,suggestion:o}))},500);return()=>{clearTimeout(p)}},[o]),Lc(l,"click",()=>{i(Be(t)),i(le({suggestion:o,text:o.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let c=Nh(()=>Fh(o.text,o.source,r,{stripAgentPart:s,placeholders:!0,searchKeywords:o.searchKeywords}),[s,o.text,o.source,r,o.searchKeywords]);return o.source==="gpt"&&!s?null:zh("div",{className:a.root,onMouseEnter:()=>i(Be(t)),children:[Hn(M,{ref:l,as:"button","data-testid":"suggestions-overlay-item",selected:e,onClick:Kh,children:Hn(Lh,{containerTagName:"div",noWrap:!1,tagName:"span",className:a.formattedText,content:c})}),e&&n&&Hn("div",{className:a.actions,children:Hn(Sn,{onFeedback:()=>n(o),suggestion:o.text})})]})},Nc=Uh;import{jsx as Oc}from"react/jsx-runtime";var qh=({onFeedback:t,suggestions:e,selectedIndex:o,reverse:n})=>{let s=Vh(()=>{let r=e.map((i,a)=>Oc(Nc,{index:a,selected:a===o,suggestion:i,onFeedback:t},`${i.text}-${i.source}`));return n?r.reverse():r},[e,o,n]);return Oc(jh,{children:s})},Bn=qh;var Dc={root:"_root_otdbu_1",paper:"_paper_otdbu_11"};import{jsx as Kn}from"react/jsx-runtime";var Zh=({textSuggestions:t,selectedIndex:e})=>{let o=$h(null),n=y("InlineSuggestionsOverlay",Dc),s=Fn(Ot),r=Xh(),i=Fn(Z),a=Fn(vt),l=Fn(Rn),c=C("showTextSuggestions");return bt(()=>{r(Ve({collapse:!0,skipWhenInputFocus:!0}))}),Wh(()=>{let p=o.current;if(!p||!p.parentElement)return;p.parentElement.style.left="0px";let d=p.getBoundingClientRect();p.parentElement.style.left=`${Math.min(window.innerWidth-4-d.right,0)}px`}),l||!s||!c||t.length===0||i!==!0||a===!1?null:Kn("div",{className:n.root,"data-variant":"inline",children:Kn("div",{ref:o,className:n.paper,children:Kn(re,{children:Kn(Bn,{suggestions:t,selectedIndex:e})})})})},Qh=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),Hc=Gh(Qh)(Zh);import{Provider as Jh}from"react-redux";import{jsx as Un}from"react/jsx-runtime";var Yh=({children:t})=>{let o=C("locale").replace("-","");return Un(Hs.Provider,{value:o,children:t})},ey=({store:t,customStyles:e={},children:o})=>Un(Jh,{store:t,children:Un(Yh,{children:Un(qt.Provider,{value:e,children:o})})}),rt=ey;import Hr from"classnames";import{useEffect as uy,useRef as gy,useState as my}from"react";import{connect as fy,useDispatch as hy,useSelector as So}from"react-redux";import{useState as ty}from"react";function Bc(t,e){let[o,n]=ty(()=>{if(typeof window>"u")return e;try{let r=window.localStorage.getItem(t);return r?JSON.parse(r):e}catch(r){return w.error(r),e}});return[o,r=>{try{let i=r instanceof Function?r(o):r;n(i),typeof window<"u"&&window.localStorage.setItem(t,JSON.stringify(i))}catch(i){w.error(i)}}]}import sy from"classnames";import{Fragment as ry,useCallback as Nr,useMemo as Kc}from"react";var Mr={};V(Mr,{enUS:()=>oy,nlNL:()=>ny});var oy={loginPlease:[{type:8,value:"login",children:[{type:0,value:"Sign in"}]},{type:0,value:" to enable "},{type:1,value:"productName"},{type:0,value:"."}],snooze:[{type:0,value:"Snooze for "},{type:8,value:"min",children:[{type:0,value:"10 minutes"}]},{type:0,value:", "},{type:8,value:"hour",children:[{type:0,value:"1 hour"}]},{type:0,value:" or "},{type:8,value:"day",children:[{type:0,value:"1 day"}]}]},ny={loginPlease:[{type:8,value:"login",children:[{type:0,value:"Log in"}]},{type:0,value:" bij "},{type:1,value:"productName"},{type:0,value:"."}],snooze:[{type:0,value:"Snooze voor "},{type:8,value:"min",children:[{type:0,value:"10 minuten"}]},{type:0,value:", "},{type:8,value:"hour",children:[{type:0,value:"1 uur"}]},{type:0,value:" of "},{type:8,value:"day",children:[{type:0,value:"1 dag"}]}]};var Fc={root:"_root_1vfca_1",anchor:"_anchor_1vfca_6",anchorButton:"_anchorButton_1vfca_11"};import{jsx as zn,jsxs as Uc}from"react/jsx-runtime";var Or=(t,e,o)=>n=>zn("button",{className:t.anchorButton,type:"button",value:e,onClick:o,children:n},e),iy=({className:t,loginUrl:e,isEmbedded:o,onSnooze:n,onLogIn:s})=>{let r=T(Mr),i=ie(),a=y("Login",Fc),l=C("productName"),c=Nr(h=>{h.preventDefault(),n&&n(parseInt(h.target.value,10))},[]),p=Nr(h=>{h.preventDefault(),i.send(At,!0)},[e]),d=Kc(()=>h=>zn("a",{onClick:x=>{x.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:h},"login"),[e]),g=Nr(h=>zn("button",{type:"button",className:a.anchorButton,onClick:p,children:h},"prompt"),[p]),{min:u,hour:m,day:f}=Kc(()=>({min:Or(a,60*10,c),hour:Or(a,60*60,c),day:Or(a,60*60*12,c)}),[]);return Uc("div",{className:sy(t,a.root),children:[r("loginPlease",{login:o?g:d,productName:l}),n&&Uc(ry,{children:[zn("br",{}),r("snooze",{min:u,hour:m,day:f})]})]})},jn=iy;import{useDispatch as ay}from"react-redux";var zc={root:"_root_1g8fi_1",text:"_text_1g8fi_19"};import{jsx as jc,jsxs as cy}from"react/jsx-runtime";var ly=({title:t})=>{let e=y("SearchTrigger",zc),o=ay();return cy("button",{type:"button",className:e.root,onClick:()=>o(G(!0)),children:[jc(kt,{}),jc("span",{className:e.text,children:t})]})},Vc=ly;var Dr={};V(Dr,{enUS:()=>py,nlNL:()=>dy});var py={arrowHint:[{type:0,value:"Tip: use arrow keys to navigate suggestions"}],searchHintWindows:[{type:0,value:"Press CTRL+"},{type:1,value:"searchTriggerKey"},{type:0,value:" to search"}],searchHintMac:[{type:0,value:"Press CMD+"},{type:1,value:"searchTriggerKey"},{type:0,value:" to search"}],open:[{type:0,value:"Open "},{type:1,value:"productName"}],collapse:[{type:0,value:"Close"}],search:[{type:0,value:"Search"}]},dy={arrowHint:[{type:0,value:"Tip: Selecteer suggesties met pijltoetsen"}],searchHintWindows:[{type:0,value:"Druk CTRL+"},{type:1,value:"searchTriggerKey"},{type:0,value:" om te zoeken"}],searchHintMac:[{type:0,value:"Druk CMD+"},{type:1,value:"searchTriggerKey"},{type:0,value:" om te zoeken"}],open:[{type:0,value:"Open "},{type:1,value:"productName"}],collapse:[{type:0,value:"Sluiten"}],search:[{type:0,value:"Zoeken"}]};var qc={root:"_root_onpov_1",isInline:"_isInline_onpov_14",toggleButton:"_toggleButton_onpov_21",toggleButtonWrapper:"_toggleButtonWrapper_onpov_25",toggleButtonWrapperHidden:"_toggleButtonWrapperHidden_onpov_32",isCollapsed:"_isCollapsed_onpov_36",collapsible:"_collapsible_onpov_36",hints:"_hints_onpov_44",hintsHidden:"_hintsHidden_onpov_51",triggers:"_triggers_onpov_56",triggersRight:"_triggersRight_onpov_71"};import{jsx as q,jsxs as _o}from"react/jsx-runtime";var yy=({textSuggestions:t,selectedIndex:e,onLogIn:o})=>{let n=y("SuggestionsOverlay",qc),s=T(Dr),r=So(Ot),i=Li(),a=hy(),l=gy(null),c=C("searchTriggerKey"),p=C("productName"),d=So(Rn),g=So(Z),u=So(vt),[m,f]=my(null),h=C("showSearch"),E=C("showTextSuggestions"),x=C("adminUrl"),_=C("isEmbedded"),[b,v]=Bc("dd-snooze-until-ms",0),R=d||b>Date.now(),N=So(k=>k.input.text),B=t.filter(k=>k.source!=="gpt").length,D=()=>{R&&v(0),a(Tl(!R))},U=k=>{a(W({name:"suggestion feedback",data:{text:k.text,source:"overlay",context:N},options:{includeConversationData:!0}}))},F=k=>{let ne=Date.now()+k*1e3;v(ne),w.info(`Snooze until: ${new Date(ne)}`),a(Ve({collapse:!0}))};return uy(()=>{B===0&&f(null)},[t,B]),bt(()=>{a(Ve({collapse:!0,skipWhenInputFocus:!0}))}),g===null||u===!1?null:g===!1?_o("div",{ref:l,className:Hr(n.root,{[n.isCollapsed]:R}),children:[!R&&_o("div",{className:n.triggers,children:[q("div",{style:{flex:1}}),q("div",{className:n.triggersRight,children:q(ft,{className:n.toggleButton,title:s("collapse"),onClick:D,isCollapsed:!1})})]}),q("div",{className:n.toggleButtonWrapper,children:q(ft,{className:n.toggleButton,title:s("open",{productName:p}),onClick:D,isCollapsed:!0})}),q("div",{className:n.collapsible,children:q(jn,{loginUrl:x,isEmbedded:_,onLogIn:o,onSnooze:F})})]}):!i||!r?null:_o("div",{ref:l,className:Hr(n.root,{[n.isCollapsed]:R}),children:[!R&&_o("div",{className:n.triggers,children:[q("div",{style:{flex:1},children:h&&q("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>f(s(wn()?"searchHintMac":"searchHintWindows",{searchTriggerKey:c.toUpperCase()})),onMouseLeave:()=>f(null),children:q(Vc,{title:s("search")})})}),_o("div",{className:n.triggersRight,onFocus:()=>{},children:[q("div",{className:Hr(!m&&n.hintsHidden,n.hints),children:m}),q(ft,{className:n.toggleButton,title:s("collapse"),onClick:D,isCollapsed:!1})]})]}),q("div",{className:n.toggleButtonWrapper,children:q(ft,{className:n.toggleButton,title:s("open",{productName:p}),onClick:D,isCollapsed:!0})}),B>0&&E&&q("div",{className:n.collapsible,onFocus:()=>{},children:q(re,{children:q(Bn,{onFeedback:U,suggestions:t,selectedIndex:e,reverse:!0})})})]})},vy=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),Wc=fy(vy)(yy);import Gr from"classnames";import{Interweave as rv}from"interweave";import{useCallback as iv,useEffect as av,useMemo as up,useRef as lv}from"react";import{connect as cv}from"react-redux";import{cloneElement as Sy}from"react";var _y=["div","span","mark","strong","b","i","u","em"];function Br(t,e,o=0){var r;let n=t[t.length-1],s=typeof n=="object"&&n!==null?(r=n.props)==null?void 0:r.tagName:void 0;if(s==="br")return t.pop(),[...t,...e,n];if(_y.includes(s)){let i=Array.isArray(n.props.children)?n.props.children:[n.props.children];return[...t.slice(0,t.length-1),Sy(n,{children:Br(i,e,o+1)})]}return[...t,...e]}function We(t){return t.tagName.toLowerCase()==="textarea"}var $c={root:"_root_81non_1",container:"_container_81non_3",agentText:"_agentText_81non_5",tabText:"_tabText_81non_6",hint:"_hint_81non_6",matchSelection:"_matchSelection_81non_10",focus:"_focus_81non_16",resetIndent:"_resetIndent_81non_20",matchKeyword:"_matchKeyword_81non_24",matchPlaceholder:"_matchPlaceholder_81non_25",hover:"_hover_81non_31",hintText:"_hintText_81non_64",popover:"_popover_81non_72",popoverRoot:"_popoverRoot_81non_77",popoverContentContainer:"_popoverContentContainer_81non_81",popoverContent:"_popoverContent_81non_81",selectionOptions:"_selectionOptions_81non_107",selectionOptionsIsHidden:"_selectionOptionsIsHidden_81non_112",selectionOptionsButton:"_selectionOptionsButton_81non_116",caret:"_caret_81non_132",popoverSuggestionsRoot:"_popoverSuggestionsRoot_81non_136",suggestionsOverlayInputStyles:"_suggestionsOverlayInputStyles_81non_141"};import Hy from"classnames";import{Matcher as By}from"interweave";import{useEffect as Fy,useMemo as Ky}from"react";function Gc(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function Vn(t){return e=>{t.forEach(o=>{typeof o=="function"?o(e):o!=null&&(o.current=e)})}}function Xc(t){return t!=null}import ep from"classnames";import{createRef as Py,useCallback as Kr,useMemo as Ay,useRef as Ly,useState as My}from"react";import{useState as xy,useLayoutEffect as by}from"react";var Cy=["bottom","height","left","right","top","width"],wy=(t={},e={})=>Cy.some(o=>t[o]!==e[o]),Ae=new Map,Zc,Qc=()=>{let t=[],e=[];Ae.forEach((o,n)=>{if(n instanceof Element&&!n.isConnected){e.push(n);return}let s=n.getBoundingClientRect();wy(s,o.rect)&&(o.rect=s,t.push(o))}),e.forEach(o=>{Ae.delete(o)}),t.forEach(o=>{o.callbacks.forEach(n=>n(o.rect))}),Zc=window.requestAnimationFrame(Qc)};function Ty(t,e){return{observe(){let o=Ae.size===0;if(Ae.has(t)){let n=Ae.get(t);n.callbacks.push(e),n.rect&&e(n.rect)}else Ae.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});o&&Qc()},unobserve(){let o=Ae.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||Ae.delete(t),Ae.size||cancelAnimationFrame(Zc)}}}}function Fr(t){let[e,o]=xy(null);return by(()=>{if(!t.current)return;let n=Ty(t.current,s=>{o(s)});return n.observe(),()=>{n.unobserve()}},[t]),e}import{useContext as Ey,useLayoutEffect as ky,useState as Iy}from"react";import{createPortal as Ry}from"react-dom";var Jc={root:"_root_1jq08_1"};var Yc=({children:t})=>{let[e,o]=Iy(null),n=Ey(qt);return ky(()=>{let s=document.createElement("div");return Ye(s),s.classList.add(Jc.root),n!=null&&n.portalRootNode&&s.classList.add(n==null?void 0:n.portalRootNode),document.body.appendChild(s),o(s),()=>{s.isConnected&&document.body.removeChild(s)}},[]),e?Ry(t,e):null};var ye={ref:"_ref_1rcyi_1",root:"_root_1rcyi_7",positionAbove:"_positionAbove_1rcyi_13",positionBelow:"_positionBelow_1rcyi_17",positionLeft:"_positionLeft_1rcyi_21",positionRight:"_positionRight_1rcyi_25",alignStart:"_alignStart_1rcyi_29",alignCenter:"_alignCenter_1rcyi_34",alignEnd:"_alignEnd_1rcyi_40"};import{jsx as Ur}from"react/jsx-runtime";var qn=(t=!1)=>{let[e,o]=My(t),n=Kr(()=>o(!0),[]),s=Kr(()=>o(!1),[]),r=Kr(()=>o(a=>!a),[]),i=Ly(null);return{opened:e,open:n,close:s,toggle:r,triggerRef:i}};function zr(t,e=null,o=0){if(!t)return{display:"none"};let n=e?t.top-e.top<0||t.top<e.top-o?e.top-o:t.top+t.height>e.top+e.height+o?e.top+e.height+o-t.height:t.top:t.top,s=e?t.left<e.left-o?e.left-o:t.left+t.width>e.left+e.width+o?e.left+e.width+o-t.width:t.left:t.left;return{top:n,left:s,height:t.height,width:t.width}}var Wn=({className:t,triggerRef:e,boundaryRef:o=Py(),position:n="above",align:s="center",children:r,toStyle:i=zr,...a})=>{let l=Fr(e),c=Fr(o),p=Ay(()=>i(l,c,0),[l,c]);return Ur(Yc,{children:Ur("div",{className:ep(ye.ref,{[ye.positionAbove]:n==="above",[ye.positionBelow]:n==="below",[ye.positionLeft]:n==="left",[ye.positionRight]:n==="right",[ye.alignStart]:s==="start",[ye.alignCenter]:s==="center",[ye.alignEnd]:s==="end"}),style:p,...a,role:"dialog",children:Ur("div",{className:ep(t,ye.root),children:r})})})};import Ny from"classnames";import{forwardRef as Oy,useRef as Dy}from"react";import{jsx as tp}from"react/jsx-runtime";var $n=Oy(({className:t,children:e,...o},n)=>{let s=Dy(null),r=y("TabCompletion",be);return tp("div",{ref:Vn([s,n]),className:Ny(t,r.popoverContentContainer),...o,children:tp("div",{className:r.popoverContent,children:e})})});import{jsx as xo,jsxs as jy}from"react/jsx-runtime";var Uy=t=>e=>{let o=zr(e);return"top"in o&&(o.width=t.width-(e.left-t.left)-10),o},zy=({inputElement:t,boundaryRef:e,inputStyle:o,children:n,suggestion:s})=>{let r=y("TabCompletion",be),i=qn(),a=Ky(()=>Uy(t.getBoundingClientRect()),[t]),[l,c]=un(t);return Fy(()=>{c?i.open():i.close()},[c]),jy("span",{children:[xo("mark",{ref:Vn([l,i.triggerRef]),className:Hy(r.matchKeyword,{[r.hover]:c}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:n}),i.opened&&xo(Wn,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:xo($n,{style:o,children:xo("div",{className:r.hintText,children:s})})})]})},Gn=class extends By{keywordMatches=[];preparedKeywordMatches=[];usedKeywordMatches=new Set;onBeforeParse(e,o){return o.keywordMatches&&o.keywordMatches!==this.keywordMatches&&(this.preparedKeywordMatches=o.keywordMatches.map(n=>({...n,keywordRegex:new RegExp(`\\b${Gc(n.keyword)}\\b`,"i")})),this.keywordMatches=o.keywordMatches),this.usedKeywordMatches.clear(),e}match(e){let o=this.preparedKeywordMatches.map(s=>{if(this.usedKeywordMatches.has(s))return null;let r=e.match(s.keywordRegex);if(!r)return null;let i=e.charAt(r.index-1),a=e.charAt(r.index+s.keyword.length);return i==="{"&&a==="}"?null:{index:r.index,length:r[0].length,match:r[0],matchString:r[0],suggestion:s.suggestion,preparedKeywordMatch:s,valid:!0}}).filter(Xc);if(o.length===0)return null;let n=o.reduce((s,r)=>r.index<s.index?r:s);return this.usedKeywordMatches.add(n.preparedKeywordMatch),n}replaceWith(e,o){return xo(zy,{inputElement:o.inputElement,suggestion:o.suggestion,inputStyle:o.inputStyle,boundaryRef:o.boundaryRef,children:e},`keyword_${o.matchString}_${o.key}`)}asTag(){return"mark"}};import $r from"classnames";import{Matcher as Jy}from"interweave";import{createRef as Yy,forwardRef as ev,useCallback as tv,useEffect as cp,useRef as pp,useState as dp}from"react";import{useDispatch as ov}from"react-redux";import{jsx as op}from"react/jsx-runtime";var np=()=>op("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:op("path",{fill:"currentColor",d:"M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"})});import{useCallback as Vy,useEffect as rp,useState as ip}from"react";import{useDispatch as qy,useSelector as ap}from"react-redux";import Wy from"lodash.debounce";var sp={root:"_root_1muu8_1",content:"_content_1muu8_7"};function Xn(t,e,o){var s;let n=((s=t.imageSizes)==null?void 0:s[e])||t.image||o;if(!n)return null;try{return new URL(n).toString()}catch{return null}}function jr(t){return t.replace("https://www.","").replace("https://","")}import{jsx as it,jsxs as Vr}from"react/jsx-runtime";var $y=3,Gy=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),Xy=({onSelectLink:t,onDismiss:e,placeholder:o,visitUrlText:n,linkCount:s=$y})=>{let r=y("LinkSearch",sp),[i,a]=ip(""),l=qy(),c=ap(kn("url")),p=ap(Qa("URL",Gy)),[d,g]=ip(p.length-1),u=C("fallbackImage"),m=x=>{let _=x.target;a(_.value)},f=(x,_)=>{x.stopPropagation(),x.preventDefault(),window.open(_,"_blank")},h=x=>{var v;let _=d-1<0?p.length-1:d-1,b=d+1===p.length?0:d+1;x.code==="Escape"&&(a(""),e()),x.code==="ArrowUp"&&g(_),x.code==="ArrowDown"&&g(b),x.code==="Enter"&&t(((v=p[d])==null?void 0:v.text)||i)},E=Vy(Wy(x=>{l(tt({query:x,type:"URL",tags:["link-search"]}))},300),[]);return rp(()=>{i&&E(i)},[i]),rp(()=>()=>{l(bn())},[]),Vr("div",{className:r.root,children:[it(re,{withDivider:!0,children:(i?p:c).slice(0,s).map((x,_)=>it(M,{selected:d===_,onClick:()=>t(x.text),"data-testid":"linksearch-suggestion",children:Vr(O,{children:[it(O.Image,{src:Xn(x,"small",u||void 0),title:x.title||x.text}),Vr(O.Content,{className:r.content,cropText:!0,children:[it(O.Title,{children:x.title||jr(x.text)}),x.title&&jr(x.text)]}),it(M.Actions,{children:it(M.ActionButton,{label:n,onClick:b=>f(b,x.text)})})]})},x.text))}),it(uo,{value:i,onChange:m,autoFocus:!0,placeholder:o,onKeyUp:h})]})},lp=Xy;var qr={};V(qr,{enUS:()=>Zy,nlNL:()=>Qy});var Zy={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}]},Qy={insertLink:[{type:0,value:"Voeg link toe"}],linkInputPlaceholder:[{type:0,value:"Zoek, typ of plak link"}],visitUrl:[{type:0,value:"Bekijk"}]};import{jsx as ve,jsxs as Wr}from"react/jsx-runtime";var nv=ev((t,e)=>{let o=y("TabCompletion",be);return ve("mark",{ref:e,className:$r(o.matchSelection)},"selection-start")}),sv=({startRef:t,boundaryRef:e,inputStyle:o,inputElement:n,children:s})=>{let r=T(qr),i=y("TabCompletion",be),a=pp(null),l=pp(null),[c,p]=dp(null),d=ov(),g=qn(document.activeElement===n),[u]=dp(()=>document.createRange());g.triggerRef.current=u,cp(()=>()=>u.detach(),[]),cp(()=>{let f=t.current,h=a.current;!f||!h||(u.setStart(f,0),u.setEnd(h,0))},[t.current,a.current]),bt(()=>{g.close()});let m=tv(f=>{let h=u.toString(),E=/^http(s?):\/\//.test(f)?f:`https://${f}`;d(Wo({text:`[${h}](${E})`,replace:"selection"}))},[]);return Wr("span",{children:[ve("mark",{ref:a,className:$r(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":g.opened?"true":"false",children:s}),g.opened&&ve(Wn,{className:i.popoverRoot,triggerRef:g.triggerRef,boundaryRef:e,position:"above",align:"start",children:Wr($n,{style:o,ref:l,children:[ve("div",{className:$r(i.selectionOptions,{[i.selectionOptionsIsHidden]:c!==null}),children:Wr("button",{type:"button",tabIndex:c===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>p("insertLink"),children:[ve(np,{}),ve("span",{children:"\xA0"}),ve("span",{children:r("insertLink")})]})}),c==="insertLink"&&ve(lp,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:m,onDismiss:()=>{p(null),g.close()}})]})})]},"selection-end")},Zn=class extends Jy{charCount=0;foundIndex=0;startRef=null;props;onBeforeParse(e,o){return this.props=o,this.charCount=0,this.startRef=Yy(),this.foundIndex=0,e}match(e){if(!this.props||this.props.selection===null||this.foundIndex===2)return null;let[o,n]=this.props.selection;if(o===n)return null;let s=this.foundIndex===0?o:n,r=s>=this.charCount&&s<=this.charCount+e.length?{index:s-this.charCount,length:0,match:"",valid:!0}:null;r&&this.foundIndex++;let i=this.foundIndex===1;return r&&i?this.charCount+=s-this.charCount:this.charCount+=e.length,r?{isStart:i,...r}:null}replaceWith(e,o){return o.isStart?ve(nv,{ref:this.startRef}):ve(sv,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};import{useSelector as pv}from"react-redux";import{jsx as Dt,jsxs as gv}from"react/jsx-runtime";var dv=({enabled:t,content:e,tabText:o,showTabHint:n,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:l})=>{let c=y("TabCompletion",$c),p=C("insertLink"),d=C("showMidSentenceSuggestions"),g=C("inlineSuggestions"),u=mn(a),m=lv(null),f=pv(Z);av(()=>{We(a)&&u&&fn(a,u)},[u]);let h=iv(_=>{if(!s||!o)return _;let b=[Dt("span",{className:c.resetIndent,children:"\u200B"},"u200B"),Dt("span",{"data-testid":"tab-completion",className:Gr(c.tabText,c.resetIndent),"data-source":l,children:o},"tabText")];return n&&b.push(Dt("span",{className:Gr(c.hint,c.resetIndent),children:Dt(hs,{keyCode:"tab"},"tabHint")})),Br(_,b)},[s,o,n]),E=up(()=>{let _=[];return p&&_.push(new Zn("selection")),_.push(new xt("placeholders")),r&&_.push(new Gn("keywords")),_},[g,p,r]),x=up(()=>{let _=window.getComputedStyle(a);return{"--dd-color":_.color,"--dd-font-size":_.fontSize,"--dd-font-family":_.fontFamily,"--dd-font-variant":_.fontVariant}},[]);return!t||!f?null:gv("div",{ref:_=>{_!=null&&_.parentElement&&(m.current=_==null?void 0:_.parentElement)},className:c.root,style:x,children:[Dt(rv,{tagName:"span",containerTagName:"div",className:Gr(c.container,c.agentText),disableLineBreaks:We(a),content:e||"\u200B",onAfterParse:h,matchers:E,selection:u,keywordMatches:i,inputElement:a,inputStyle:x,boundaryRef:m,inlineSuggestionsOnlyAtEnd:!d}),Dt("br",{})]})},uv=({input:t,ui:e,settings:o,styleSuggestions:n,conversation:s})=>{var f;let{tabCompletionSuggestion:r}=t,i=(r==null?void 0:r.text)||"",a=(r==null?void 0:r.source)||"",l=t.html??to(t.text),c=i.indexOf(t.text)===0?i.slice(t.text.length):"",{showTabHint:p}=e,{isSupported:d}=s,{showTabCompletion:g,visible:u,showStyleSuggestions:m}=o;return{showTabHint:p,showStyleSuggestions:m,showTabCompletion:g,content:l,tabText:c,source:a,keywordMatches:((f=n.list)==null?void 0:f.keywordMatches)??[],enabled:u&&d!==!1}},gp=cv(uv)(dv);import tS from"classnames";import{useEffect as oS}from"react";import{useDispatch as nS,useSelector as Q}from"react-redux";import{createAsyncThunk as bo,createSlice as mv}from"@reduxjs/toolkit";var mp={list:[],fetchState:"idle",isInitialRequest:null},hp=t=>t.autoflows.list||[],fp=t=>e=>{var o;return(o=e.list)==null?void 0:o.find(n=>n.triggerPayload===t)},Le=bo("autoflows/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getAutoflows(t)}),Xr=bo("autoflows/start",async(t,e)=>{let{dispatch:o}=e,{deepdeskBrokerAPI:n}=e.extra;if(!n)throw new Error("Deepdesk Broker not initialized");await n.startAutoflowSession(t),await o(Le(t.platformSessionId))}),Zr=bo("autoflows/stop",async(t,e)=>{let{dispatch:o}=e,{deepdeskBrokerAPI:n}=e.extra;if(!n)throw new Error("Deepdesk Broker not initialized");await n.stopAutoflowSession(t.platformSessionId),await o(Le(t.platformSessionId))}),fv=mv({name:"autoflows",initialState:mp,reducers:{},extraReducers:t=>{t.addCase(Xr.pending,(e,o)=>{let n=fp(o.meta.arg.triggerPayload)(e);n.state="Started",n.isBusy=!0}),t.addCase(Zr.pending,(e,o)=>{let n=fp(o.meta.arg.triggerPayload)(e);n.state="Aborted",n.isBusy=!0}),t.addCase(Le.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}),t.addCase(Le.rejected,e=>{e.fetchState="error"}),t.addCase(Le.fulfilled,(e,o)=>{e.list=o.payload,e.fetchState="done"}),t.addCase(P,()=>mp)}}),yp=bo("autoflows/openStream",(t,e)=>{let{dispatch:o}=e,{deepdeskBrokerAPI:n}=e.extra;if(!n)throw new Error("Deepdesk Broker not initialized");let s=n.openStream(t);s.on("sessionAborted",()=>{o(Le(t))}),s.on("sessionCompleted",()=>{o(Le(t))})}),vp=bo("autoflows/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),Sp=fv.reducer;import{createAsyncThunk as wo,createSlice as hv}from"@reduxjs/toolkit";var _p={list:[],fetchState:"idle",isInitialRequest:null,sentSuggestions:[],errorSuggestions:[],answeredSuggestions:[]},xp=t=>t.customMessages.list,bp=t=>e=>!!e.customMessages.sentSuggestions.find(o=>o===t),Cp=t=>e=>!!e.customMessages.answeredSuggestions.find(o=>o===t),wp=t=>e=>!!e.customMessages.errorSuggestions.find(o=>o===t),Co=wo("customMessages/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getCustomMessages(t)}),Qn=wo("customMessages/send",async(t,e)=>{let{platformSessionId:o,suggestion:n}=t,{deepdeskBrokerAPI:s}=e.extra;if(!s)throw new Error("Deepdesk Broker not initialized");await s.sendCustomMessage(o,n)}),Jn=wo("customMessages/answer",async(t,e)=>{let{platformSessionId:o,reply:n}=t,{deepdeskBrokerAPI:s}=e.extra;if(!s)throw new Error("Deepdesk Broker not initialized");await s.answerCustomMessage(o,n)}),Tp=hv({name:"customMessages",initialState:_p,reducers:{onCustomMessage(t,e){Array.isArray(e.payload)?t.list=e.payload:t.list=[e.payload]}},extraReducers:t=>{t.addCase(Co.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(Co.rejected,e=>{e.fetchState="error"}).addCase(Co.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload||[]}).addCase(Qn.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.errorSuggestions=e.errorSuggestions.filter(n=>o.meta.arg.suggestion.text!==n)}).addCase(Qn.rejected,(e,o)=>{let n=e.sentSuggestions.indexOf(o.meta.arg.suggestion.text);e.errorSuggestions.push(...e.sentSuggestions.splice(n,1))}).addCase(Jn.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.answeredSuggestions.push(o.meta.arg.suggestion.text)}).addCase(Jn.rejected,(e,o)=>{let n=e.answeredSuggestions.indexOf(o.meta.arg.suggestion.text);e.errorSuggestions.push(...e.sentSuggestions.splice(n,1)),e.answeredSuggestions.splice(n,1)}).addCase(P,()=>_p)}}),Ep=wo("customMessages/openStream",(t,e)=>{let{dispatch:o}=e,{deepdeskBrokerAPI:n}=e.extra;if(!n)throw new Error("Deepdesk Broker not initialized");n.openStream(t).on("customMessageSuggestion",r=>{o(Tp.actions.onCustomMessage(r))})}),kp=wo("customMessages/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),Ip=Tp.reducer;import{createAsyncThunk as Rp,createSlice as yv}from"@reduxjs/toolkit";var vv={token:null,accountUrl:null,interval:null},Pp=t=>e=>{let{passwordlessToken:{token:o,accountUrl:n}}=e;return o&&n?`${n}/apis/admin/session/passwordless/login/?token=${o}&redirect=${t}`:null},Qr=Rp("passwordlessToken/getTemporaryPasswordlessToken",async(t,e)=>{let{deepdeskAPI:o}=e.extra,n=await o.requestPasswordlessToken();return{accountUrl:o.client.baseUrl,token:n}}),Jr=Rp("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:o=1e3*60*10}=t,{dispatch:n}=e;return n(Qr()),setInterval(()=>n(Qr()),o)}),Ap=yv({name:"passwordlessToken",initialState:vv,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Qr.fulfilled,(e,o)=>{e.token=o.payload.token,e.accountUrl=o.payload.accountUrl}),t.addCase(Jr.fulfilled,(e,o)=>{e.interval=o.payload})}}),{stopPollPasswordlessToken:Lp}=Ap.actions,Mp=Ap.reducer;function Np(t){let{customMessages:e,autoflows:o}=t;return o.fetchState==="loading"&&o.isInitialRequest===!0||e.fetchState==="loading"&&e.isInitialRequest===!0}import{Fragment as Iv}from"react";import{connect as Rv}from"react-redux";import Tv from"classnames";import{Fragment as Ev}from"react";import Sv from"classnames";var Op={root:"_root_838fd_1"};import{jsx as xv}from"react/jsx-runtime";var _v=({className:t,children:e})=>{let o=y("Unicode",Op);return xv("span",{className:Sv(t,o.root),children:e})},Dp=_v;var Hp={isDisabled:"_isDisabled_1rmfm_1",buttonStart:"_buttonStart_1rmfm_5",root:"_root_1rmfm_8",buttonStop:"_buttonStop_1rmfm_8",stateBadge:"_stateBadge_1rmfm_19",isCompleted:"_isCompleted_1rmfm_26",isStarted:"_isStarted_1rmfm_30",isAborted:"_isAborted_1rmfm_34"};var Yr={};V(Yr,{enUS:()=>bv,nlNL:()=>Cv});var bv={start:[{type:0,value:"Start"}],stop:[{type:0,value:"Stop"}],aborted:[{type:0,value:"Stopped"}],completed:[{type:0,value:"Completed"}],Aborted:[{type:0,value:"Stopped"}],Started:[{type:0,value:"Running"}],Completed:[{type:0,value:"Completed"}]},Cv={start:[{type:0,value:"Start"}],stop:[{type:0,value:"Stop"}],aborted:[{type:0,value:"Stopped"}],completed:[{type:0,value:"Completed"}],Aborted:[{type:0,value:"Stopped"}],Started:[{type:0,value:"Running"}],Completed:[{type:0,value:"Completed"}]};import{jsx as at,jsxs as Yn}from"react/jsx-runtime";var kv=({disabled:t,state:e,displayName:o,description:n,onStartAutoflow:s,onStopAutoflow:r})=>{let i=y("Autoflow",Hp),a=T(Yr),l=e==="Started"?"stop":"start",c=l==="start"?"\u25B6":l==="stop"?"\u25FC":"";return Yn(M,{className:Tv(i.root,{[i.isDisabled]:t,[i.isCompleted]:e==="Completed",[i.isAborted]:e==="Aborted",[i.isStarted]:e==="Started"}),children:[at(O,{children:Yn(O.Content,{children:[Yn(O.Title,{children:[e&&at("span",{className:i.stateBadge,children:a(e)}),o]}),at("span",{children:n})]})}),at(M.Actions,{fixed:e==="Started",children:at(M.ActionButton,{primary:!0,className:l==="start"?i.buttonStart:i.buttonStop,onClick:e==="Started"?r:s,disabled:t,label:Yn(Ev,{children:[at(Dp,{children:c})," ",at("span",{children:a(l)})]})})})]})},Bp=kv;import{jsx as Fp}from"react/jsx-runtime";var Pv=(t,e)=>{let o=e.filter(n=>n.state==="Started");return o.length>0?o.indexOf(t)===-1:!1},Av=({autoflows:t,onStartAutoflow:e,onStopAutoflow:o,platformSessionId:n})=>Fp(Iv,{children:t.map(s=>Fp(Bp,{displayName:s.displayName,description:s.description,disabled:s.isBusy||Pv(s,t),state:s.state,onStartAutoflow:()=>e({platformSessionId:n,triggerPayload:s.triggerPayload}),onStopAutoflow:()=>o({platformSessionId:n,triggerPayload:s.triggerPayload})},s.displayName))}),Lv=({autoflows:t,conversation:e})=>{var o;return{autoflows:t.list,platformSessionId:(o=e.current)==null?void 0:o.sessionId}},Mv={onStartAutoflow:Xr,onStopAutoflow:Zr},Kp=Rv(Lv,Mv)(Av);import Nv from"classnames";import{useCallback as Up}from"react";import{useDispatch as Ov,useSelector as es}from"react-redux";var Me={root:"_root_1e6ej_1",title:"_title_1e6ej_8",isUsed:"_isUsed_1e6ej_13",quickReplies:"_quickReplies_1e6ej_22",quickReply:"_quickReply_1e6ej_29",hasError:"_hasError_1e6ej_39",label:"_label_1e6ej_43",errorIcon:"_errorIcon_1e6ej_48"};import{jsx as $e,jsxs as ts}from"react/jsx-runtime";var Dv=({suggestion:t})=>{let e=T(et),o=Ov(),n=es(bp(t.text)),s=es(Cp(t.text)),r=es(wp(t.text)),i=es(Bo),{replyOptions:a}=t,l=Up(p=>{p.preventDefault(),p.stopPropagation(),!(n||!i)&&o(Qn({platformSessionId:i,suggestion:t}))},[t,n,o,i]),c=Up(p=>{if(p.preventDefault(),p.stopPropagation(),!i||!a)return;let d=parseInt(p.target.dataset.index,10),g=a[d];o(Jn({platformSessionId:i,reply:g,suggestion:t}))},[t,n,o,i]);return ts(M,{onClick:l,className:Nv(Me.root,{[Me.isUsed]:n,[Me.hasError]:r}),children:[$e(O,{children:ts(O.Content,{children:[ts(O.Title,{className:Me.title,children:[t.text," ",$e(ys,{className:Me.label,children:"analyse tool"})," ",r&&$e("span",{className:Me.errorIcon,role:"img","aria-label":e("sendingError"),title:e("sendingError"),children:"!"})]}),a&&a.length>0&&$e("ul",{className:Me.quickReplies,children:a.map(p=>$e("li",{className:Me.quickReply,children:p.title},p.title))})]})}),ts(M.Actions,{fixed:r||n,children:[a&&a.length>0&&$e(M.DropdownButton,{label:e("answer"),disabled:s,children:a.map((p,d)=>$e(M.DropdownItem,{index:d,label:p.title,onClick:c},p.title))}),$e(M.ActionButton,{primary:!0,disabled:n,onClick:l,label:e(n?"suggestionSent":r?"tryAgain":"sendSuggestion")})]})]})},zp=Dv;import{useEffect as Hv,useState as Bv}from"react";import{useDispatch as Fv}from"react-redux";import qp from"classnames";import{jsx as jp}from"react/jsx-runtime";var ei=()=>jp("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:jp("path",{d:"M502.6 70.63l-61.25-61.25C435.4 3.371 427.2 0 418.7 0H255.1c-35.35 0-64 28.66-64 64l.0195 256C192 355.4 220.7 384 256 384h192c35.2 0 64-28.8 64-64V93.25C512 84.77 508.6 76.63 502.6 70.63zM464 320c0 8.836-7.164 16-16 16H255.1c-8.838 0-16-7.164-16-16L239.1 64.13c0-8.836 7.164-16 16-16h128L384 96c0 17.67 14.33 32 32 32h47.1V320zM272 448c0 8.836-7.164 16-16 16H63.1c-8.838 0-16-7.164-16-16L47.98 192.1c0-8.836 7.164-16 16-16H160V128H63.99c-35.35 0-64 28.65-64 64l.0098 256C.002 483.3 28.66 512 64 512h192c35.2 0 64-28.8 64-64v-32h-47.1L272 448z"})});var Vp={root:"_root_rjdyr_1",entity:"_entity_rjdyr_10",entityText:"_entityText_rjdyr_46",iconWrapper:"_iconWrapper_rjdyr_53",icon:"_icon_rjdyr_53",iconClicked:"_iconClicked_rjdyr_67"};import{jsx as Ht,jsxs as Wp}from"react/jsx-runtime";var Kv=({entities:t})=>{let e=y("EntitiesWidgetList",Vp),[o,n]=Bv(void 0),s=Fv(),r=()=>{n(void 0)},i=a=>{t&&(n(t.indexOf(a)),mo(a.text),s(W({name:"entity copied",data:{entity:a,type:"copy"}})))};return Hv(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[o]),!t||t.length===0?null:Ht("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,l)=>Wp("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[Ht("span",{className:e.entityText,children:a.text}),Wp("span",{className:e.iconWrapper,children:[Ht("span",{className:qp(e.icon),children:Ht(ei,{})}),Ht("span",{className:qp(e.icon,o===l&&e.iconClicked),children:Ht(ei,{})})]})]},a.text))})},$p=Kv;import{jsx as Gp}from"react/jsx-runtime";var Xp=()=>Gp("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:Gp("path",{d:"M17 13.5v6H5v-12h6m3-3h6v6m0-6-9 9",stroke:"currentColor",strokeWidth:"1.5",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"})});import{jsx as Zp}from"react/jsx-runtime";var Qp=()=>Zp("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:Zp("path",{d:"M543-340q16.595 0 28.798-12.202Q584-364.405 584-381t-12.202-28.798Q559.595-422 543-422t-28.798 12.202Q502-397.595 502-381t12.202 28.798Q526.405-340 543-340Zm-25-126h47q2-29 8.5-43t32.5-39q27-26 37.5-45.395Q654-612.79 654-639q0-45.882-31.5-74.941Q591-743 540-743q-38 0-68 20.5T428-665l45 19q11-25 27.5-38t39.5-13q29.778 0 48.389 17Q607-663 607-637q0 20-9 35t-32 32q-32 29-40 46.5t-8 57.5ZM260-200q-24 0-42-18t-18-42v-560q0-24 18-42t42-18h560q24 0 42 18t18 42v560q0 24-18 42t-42 18H260Zm0-60h560v-560H260v560ZM140-80q-24 0-42-18t-18-42v-620h60v620h620v60H140Zm120-740v560-560Z"})});import{jsx as Jp}from"react/jsx-runtime";var Yp=()=>Jp("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:Jp("path",{d:"M319-250h322v-60H319v60Zm0-170h322v-60H319v60ZM220-80q-24 0-42-18t-18-42v-680q0-24 18-42t42-18h361l219 219v521q0 24-18 42t-42 18H220Zm331-554v-186H220v680h520v-494H551ZM220-820v186-186 680-680Z"})});import{useEffect as jv,useState as Vv}from"react";var ti={};V(ti,{enUS:()=>Uv,nlNL:()=>zv});var Uv={copyCue:[{type:0,value:"Copy"}],copiedCue:[{type:0,value:"Copied!"}],removeCue:[{type:0,value:"Close"}]},zv={copyCue:[{type:0,value:"Kopieer"}],copiedCue:[{type:0,value:"Gekopieerd!"}],removeCue:[{type:0,value:"Sluiten"}]};import{jsx as To,jsxs as ed}from"react/jsx-runtime";var qv=({cue:t,onRemove:e,onCopy:o})=>{let n=T(ti),[s,r]=Vv(!1),i=l=>{l.preventDefault(),l.stopPropagation(),o&&(o(t.text),r(!0))},a=l=>{l.preventDefault(),l.stopPropagation(),e&&e(t.id)};return jv(()=>{if(!s)return;let l=setTimeout(()=>{r(!1)},1e3);return()=>{clearTimeout(l)}},[s]),To(M,{"data-testid":"cue",children:ed(O,{children:[ed(O.Content,{children:[t.title&&To(O.Title,{"data-testid":"widget-cue-title",children:t.title}),t.text]}),To(M.Actions,{children:o&&To(M.ActionButton,{primary:!0,onClick:i,label:n(s?"copiedCue":"copyCue")})}),To(O.CloseIcon,{title:n("removeCue"),onClick:a})]})})},td=qv;import{Fragment as $v,jsx as od}from"react/jsx-runtime";var Wv=({cues:t,onCopyCue:e,onRemoveCue:o})=>od($v,{children:t.map(n=>od(td,{cue:n,onRemove:o,onCopy:e},`${n.id}_${n.timestamp}`))}),nd=Wv;import{useSelector as Zv}from"react-redux";import{useCallback as Gv}from"react";import{jsx as lt,jsxs as os}from"react/jsx-runtime";var Xv=({suggestion:t,lines:e,onEdit:o,onUse:n})=>{var g;let s=t.text||t.url||t.message,r=Cn(s),i=T(et),a=C("showImages"),l=C("fallbackImage"),c=u=>{u.preventDefault(),u.stopPropagation(),n(s)},p=u=>{u.preventDefault(),u.stopPropagation(),o(t)},d=Gv(u=>{window.open(r,"_blank"),u.stopPropagation(),u.preventDefault()},[r]);return os(M,{onClick:c,"data-testid":"edit-suggestion",children:[os(O,{children:[a&&t.image&<(O.Image,{src:Xn(t,"small",l||void 0),title:t.title}),os(O.Content,{children:[t.title&<(O.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((g=t.searchKeywords)==null?void 0:g.length)>0&<(M.Labels,{labels:t.searchKeywords}),lt(O.Content,{cropText:e==="single",lineClamp:e==="multiple",children:s})]})]}),os(M.Actions,{children:[r&<(M.ActionButton,{onClick:d,label:i("visitUrl")}),lt(M.ActionButton,{primary:!0,onClick:p,label:i("preview")}),lt(M.ActionButton,{primary:!0,onClick:c,label:i("useSuggestion")})]})]})},sd=Xv;import{Fragment as Jv,jsx as rd}from"react/jsx-runtime";var Qv=({contentType:t,lines:e,suggestions:o})=>{let n=ie(),s=Zv(je),r=a=>{n.send(mr,{state:s,suggestion:a,contentType:t})},i=(a,l)=>{n.send(Ie,{text:a,suggestion:{...l,source:l.source,sourceText:l.text}})};return rd(Jv,{children:o.map(a=>rd(sd,{suggestion:a,lines:e,onEdit:l=>r(l),onUse:l=>i(l,a)},a.text||a.url||a.message))})},id=Qv;var oi={};V(oi,{enUS:()=>Yv,nlNL:()=>eS});var Yv={waiting:[{type:0,value:"Loading\u2026"}],notSupported:[{type:0,value:"This conversation is not supported"}],noResults:[{type:0,value:"No results found\u2026"}],titleAutoflows:[{type:0,value:"Autoflows"}],titleCustomMessages:[{type:0,value:"Quick replies"}],titleCues:[{type:0,value:"Assistant updates"}],actions:[{type:0,value:"Shortcuts"}],linkStudioLogin:[{type:0,value:"My "},{type:1,value:"productName"}],linkSummary:[{type:0,value:"Summarize"}],linkKnowledgeSearch:[{type:0,value:"Knowledge Assist"}],linkSearch:[{type:0,value:"Search"}]},eS={waiting:[{type:0,value:"Laden\u2026"}],notSupported:[{type:0,value:"Dit gesprek wordt niet ondersteund"}],noResults:[{type:0,value:"Geen resultaten gevonden\u2026"}],titleAutoflows:[{type:0,value:"Autoflows"}],titleCustomMessages:[{type:0,value:"Quick replies"}],titleCues:[{type:0,value:"Assistant updates"}],actions:[{type:0,value:"Shortcuts"}],linkStudioLogin:[{type:0,value:"Mijn "},{type:1,value:"productName"}],linkSummary:[{type:0,value:"Gesprek samenvatten"}],linkKnowledgeSearch:[{type:0,value:"Knowledge assist"}],linkSearch:[{type:0,value:"Zoeken"}]};var ad={root:"_root_x0pwe_1",loginText:"_loginText_x0pwe_7",stateText:"_stateText_x0pwe_8",sectionList:"_sectionList_x0pwe_20",shortcutList:"_shortcutList_x0pwe_24",shortcut:"_shortcut_x0pwe_24",link:"_link_x0pwe_52"};import{jsx as L,jsxs as Bt}from"react/jsx-runtime";var ns=(t,e)=>{let o=Q(Z);oS(()=>o?e.every(n=>!!n)?t():()=>{}:()=>{},[...e,o])},sS=({onLogIn:t})=>{let e=T(oi),o=nS(),n=C("isEmbedded"),s=y("Widget",ad),r=C("showAutoflows"),i=C("showCustomMessages"),a=C("showSummaryCommand"),l=C("showKnowledgeSearch"),c=C("showSearch"),p=Q(qe),d=Q(Nn),g=Q(hp),u=Q(Dl),m=Q(An),f=Q(xp),h=Q(Fo),E=Q(vt),x=Q(Z),_=Q(Bo),b=Q(Np),v=Q(je),R=ie(),N=Q(ul),B=Q(Pp("/admin/")),D=C("adminUrl"),U=C("productName");if(ns(()=>(o(Co(_)),o(Ep(_)),()=>{o(kp(_))}),[o,E,i,_]),ns(()=>(o(Le(_)),o(yp(_)),()=>{o(vp(_))}),[o,E,r,_]),ns(()=>{d.forEach(({type:k})=>{o(k==="entities"?ue():de(k))})},[o,E,h,p]),ns(()=>(o(Jr()),()=>{o(Lp())}),[o]),E===!1)return L("div",{className:s.stateText,children:L("div",{children:L("p",{children:e("notSupported")})})},"supported");if(x===!1)return L("div",{className:s.loginText,children:L("div",{children:L(jn,{isEmbedded:n,loginUrl:D,onLogIn:t})})},"login");if(!p||!_||x===null||N||b)return L("div",{className:s.stateText,children:L("div",{children:L("p",{children:e("waiting")})})},"waiting");let F=c||a||l||B;return L("div",{className:tS(s.root),"data-testid":"widget",children:Bt(Ss,{className:s.sectionList,children:[F&&L(Oe,{title:e("actions"),type:"shortcuts",children:Bt("div",{className:s.shortcutList,children:[c&&Bt("button",{className:s.shortcut,"data-testid":"shortcut-search",onClick:()=>R.send("ShowCommandPalette",{isOpen:!0}),children:[L(kt,{}),e("linkSearch")]}),a&&Bt("button",{className:s.shortcut,"data-testid":"shortcut-summary",onClick:()=>R.send("ShowCommandPalette",{isOpen:!0,page:"summary"}),children:[L(Yp,{}),e("linkSummary")]}),l&&Bt("button",{className:s.shortcut,"data-testid":"shortcut-knowledge-assist",onClick:()=>R.send("ShowCommandPalette",{isOpen:!0,page:"knowledgeAssist"}),children:[L(Qp,{}),e("linkKnowledgeSearch")]}),B&&Bt("a",{className:s.shortcut,target:"_blank",href:B,"data-testid":"shortcut-studio-login",rel:"noreferrer",children:[L(Xp,{}),e("linkStudioLogin",{productName:U})]})]})}),i&&f.length>0&&L(Oe,{type:"custom-messages","data-testid":"custom-messages",children:L(re,{withDivider:!0,children:f.map(k=>L(zp,{suggestion:k},k.text))})}),r&&g.length>0&&L(Oe,{type:"autoflows",title:e("titleAutoflows"),"data-testid":"autoflows",children:L(re,{withDivider:!0,children:L(Kp,{})})}),d.map(({type:k,title:ne,amount:gs,lines:jt})=>{var Vt;switch(k){case"entities":return m&&m.length>0&&L(Oe,{type:k,title:ne,"data-testid":`type-${k}`,children:L($p,{entities:m})},k);case"cues":return u&&u.length>0&&L(Oe,{type:k,title:ne,"data-testid":`type-${k}`,children:L(re,{withDivider:!0,children:L(nd,{cues:u,onRemoveCue:dt=>o(Bl({id:dt}))})})},k);default:return((Vt=v[k])==null?void 0:Vt.fetchState)==="done"&&v[k].suggestions.length>0&&L(Oe,{type:k,title:ne,"data-testid":`type-${k}`,children:L(re,{withDivider:!0,children:L(id,{lines:jt,contentType:k,suggestions:v[k].suggestions.slice(0,gs)||[]})})},k)}})]})})},ld=sS;function ko(t){let e=new Range;return e.selectNodeContents(t),e}function cd(t,e,o){try{return ct(t,e,o),!0}catch{return!1}}function ss(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function rs(t){return"tagName"in t&&t.tagName==="BR"}var Eo=/[\u200B-\u200D\uFEFF]/g;function ct(t,e,o){let n=new Range;if(t.firstChild===null&&e===0&&o===0)return n.selectNodeContents(t),n;let s=0,r=!1;function i(l,c){let p=-1,d=/[\u200B-\u200D\uFEFF]/;if(!d.test(l))return c;for(let g=0;g<=l.length;g++)if(d.test(l[g])||p++,p===c)return g;throw new Error("Offset out of range")}function a(l){switch(l.nodeType){case Node.TEXT_NODE:{let c=l.textContent,p=c.replace(Eo,""),d=s+p.length,g=e>=s&&e<=d,u=o>=s&&o<=d;if(g){let m=i(c,e-s);m===0&&!u?n.setStartBefore(l):n.setStart(l,m)}u&&(n.setEnd(l,i(c,o-s)),r=!0),s=d;break}case Node.ELEMENT_NODE:{if(rs(l)&&(s===e&&n.setStartBefore(l),s++,s===o)){n.setEndAfter(l),r=!0;return}for(let p=0;p<l.childNodes.length&&(a(l.childNodes[p]),!r);p++);let c=l.lastChild;ss(l)&&c&&!ss(c)&&!rs(c)&&s++;break}default:break}}if(a(t),n.startContainer===document)throw new Error("Offsets out of bound");return n}function is(t,e){if(!t.contains(e.startContainer)||!t.contains(e.endContainer))throw new Error("Range not within root element");let{startContainer:o,startOffset:n,endContainer:s,endOffset:r,collapsed:i}=e,a,l,c=0;function p(d){let g=d===o,u=d===s;switch(d.nodeType){case Node.TEXT_NODE:{let m=d.textContent;g&&(a=c+m.substring(0,n).replace(Eo,"").length),u&&(l=c+m.substring(0,r).replace(Eo,"").length),c+=m.replace(Eo,"").length;break}case Node.ELEMENT_NODE:{let m=d.nextSibling===null;rs(d)&&!m&&c++;for(let f=0;f<d.childNodes.length;f++){let h=g&&f===n,E=u&&f===r;if(h&&(a=c),E&&(l=c),l!==void 0||((!h||!i)&&p(d.childNodes[f]),u&&f===r-1&&(l=c),l!==void 0))break}!u&&ss(d)&&!m&&c++,u&&(l=c);break}default:break}}if(p(t),l===void 0)throw new Error("Could not determine start and end");return{start:a??l,end:l}}function as(t,e){if(!t.contains(e.startContainer)||!t.contains(e.endContainer))throw new Error("Range not within root element");let{startContainer:o,startOffset:n,endContainer:s,endOffset:r}=e,i=-1,a="";function l(c){let p=c===o,d=c===s;switch(p&&i++,c.nodeType){case Node.TEXT_NODE:{if(i!==0)return;let g=p?n:0,u=d?r:void 0,m=c.textContent.replace(Eo,"");g===0&&u===void 0?a+=m:a+=m.substring(g,u);break}case Node.ELEMENT_NODE:{let g=c.nextSibling===null;i===0&&rs(c)&&!g&&(a+=`
|
|
8
|
+
`);for(let u=p?n:0;u<(d?Math.min(r,c.childNodes.length):c.childNodes.length)&&(l(c.childNodes[u]),i!==1);u++);!d&&i===0&&ss(c)&&!g&&(a+=`
|
|
9
|
+
`);break}default:break}d&&i++}return l(t),a}function pd(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var Ft=class extends Fe{observer;lastKnownSelection=null;getRootNode(){return this.element.getRootNode()}getText(){let e=new Range;return e.selectNodeContents(this.element),as(this.element,e)}getHTML(){return this.element.innerHTML||""}getRange(){var r;let e=this.getRootNode();if(e.activeElement!==this.element)return null;let o="getSelection"in e?e.getSelection():window.getSelection();if(!o)return null;let n="getComposedRanges"in o&&e instanceof ShadowRoot?(r=o.getComposedRanges(e))==null?void 0:r[0]:o.rangeCount>0?o.getRangeAt(0):null;if(!n)return null;let s=this.element.ownerDocument.createRange();return s.setStart(n==null?void 0:n.startContainer,n==null?void 0:n.startOffset),s.setEnd(n==null?void 0:n.endContainer,n==null?void 0:n.endOffset),!s||!this.element.contains(s.startContainer)||!this.element.contains(s.endContainer)?null:s}getCaretPosition(){let e=this.getRange();if(!e||!e.collapsed||!("getBoundingClientRect"in e))return null;let o=e.getBoundingClientRect();return!pd(o)&&(e.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=e.getBoundingClientRect(),e.deleteContents(),!pd(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let e=this.getRange();if(e)return is(this.element,e);let o=this.lastKnownSelection;if(o&&cd(this.element,o.start,o.end))return o;let n=ko(this.element);return n.collapse(!1),is(this.element,n)}getSelectedText(){let{start:e,end:o}=this.getSelection();return as(this.element,ct(this.element,e,o))}applyChanges(e){var s;if(!this.isActive)return;this.isSettingValue=!0;let o=this.getText(),n=e(this.element);return(s=this.observer)==null||s.takeRecords(),Promise.resolve(n).then(()=>{this.currentText=this.getText(),o!==this.currentText&&this.triggerChange(),this.isSettingValue=!1})}listen(){super.listen(),this.observer=new MutationObserver(()=>{setTimeout(()=>{this.triggerChange()},0)}),this.observer.observe(this.element,{attributes:!0,characterData:!0,childList:!0,subtree:!0});let e=this.element.isContentEditable,o=new MutationObserver(()=>{this.element.isContentEditable!==e&&(e=this.element.isContentEditable,this.emit(this.element.isContentEditable?"enabled":"disabled"))});o.observe(this.element,{attributes:!0,attributeFilter:["contenteditable"]}),this.disposeHandlers.push(()=>o.disconnect())}dispose(){super.dispose(),this.observer&&this.observer.disconnect()}};function dd(t,e,o){let n=`deepdesk-iframe-${t}`,s=document.getElementById(n);if(s)return s;let r=document.createElement("iframe"),i=new URL(e);return Object.entries(o).forEach(([a,l])=>{i.searchParams.append(a,l)}),r.style.position="absolute",r.style.left="-999em",r.style.width="0px",r.style.height="0px",r.tabIndex=-1,r.id=n,r.title=`iframe-${t}`,r.src=i.toString(),window.document.body.appendChild(r),r}var ni=class{constructor(e){this.name=e;this.broadcastChannel=new BroadcastChannel(e)}broadcastChannel;disposeHandlers=[];onMessage(e){this.broadcastChannel.addEventListener("message",e),this.disposeHandlers.push(()=>{this.broadcastChannel.removeEventListener("message",e)})}postMessage(e){this.broadcastChannel.postMessage(JSON.stringify(e))}close(){this.disposeHandlers.forEach(e=>e()),this.broadcastChannel.close()}},si=class{constructor(e,o,n){this.name=e;this.targetOrigin=o;this.options=n;this.iframe=dd(e,`${this.targetOrigin}/sdk/proxy/proxy.html`,{channel:this.name,host:window.location.origin,debug:"1"}),document.body.appendChild(this.iframe)}iframe;disposeHandlers=[];onMessage(e){window.addEventListener("message",e),this.disposeHandlers.push(()=>{window.removeEventListener("message",e)})}postMessage(e){var o;(o=this.iframe.contentWindow)==null||o.postMessage(JSON.stringify(e),this.targetOrigin)}close(){var e;this.disposeHandlers.forEach(o=>o()),(e=this.iframe)==null||e.remove()}},ri=class{constructor(e){this.params=e;this.deepdeskUrl=e.deepdeskUrl,this.eventMap=e.eventMap,this.sessionId="deepdesk-general",this.defaultChannel=this.createChannel("deepdesk-general")}sessionId;deepdeskUrl;channel;defaultChannel;eventMap;get isCrossOrigin(){return this.params.deepdeskUrl!==(this.params.origin||window.location.origin)}setSessionId(e){this.sessionId!==e&&(this.cleanup(),w.info("Set sessionId",e),this.sessionId=e,this.channel=this.createChannel(e))}createChannel(e){let o=this.params.createCustomChannel?this.params.createCustomChannel(e):this.isCrossOrigin?new si(e,this.deepdeskUrl,{debug:!0}):new ni(e),n=s=>{var i,a;if(s.origin!==this.deepdeskUrl)return;let r=typeof s.data=="string"?JSON.parse(s.data):s.data;r.type==="event"&&r.channel===e&&(w.info("Received broadcast event",this.sessionId,s),(a=(i=this.eventMap)[r.name])==null||a.call(i,r.payload))};return o.onMessage(n),o}send(e,o,n){var i,a;w.info("Broadcast event",{sessionId:this.sessionId,name:e,payload:o});let s={type:"event",name:e,payload:o};n!==!1&&((a=(i=this.eventMap)[e])==null||a.call(i,o));let r=this.sessionId==="deepdesk-general"?this.defaultChannel:this.channel;r==null||r.postMessage({...s,channel:this.sessionId})}cleanup(e=!1){var o,n;(o=this.channel)==null||o.close(),delete this.channel,e&&((n=this.defaultChannel)==null||n.close(),delete this.defaultChannel)}},ud=ri;var Kt=class extends Error{constructor(o,n){super(o);this.body=n}name="CustomError"};var ii=t=>new Promise(e=>{setTimeout(e,t)});var Ut=class extends Kt{name="ClientError"},ai=class extends Kt{name="ServerError"},Se=class t{constructor(e="",o={}){this.baseUrl=e;this.options=o;o.fetch&&(this.fetch=o.fetch)}latestRequestByUrl={};csrfToken;fetch=window.fetch.bind(window);static refreshingToken=null;patchFetch(e){this.fetch=e(this.fetch)}setCsrfToken(e){this.csrfToken=e}request(e,o={}){return new Promise((n,s)=>{let r={isAborted:!1,reject:s},i=`${this.baseUrl}${e}`,a=this.fetch,{abortLatest:l=!1,attempts:c=1,retryDelay:p=500,refreshTokenOn401:d=!0,retryOnError:g=b=>b instanceof TypeError,retryOnResponse:u=b=>b.status>=500,version:m="v1",...f}=o,h={credentials:"include",...f,headers:{"Content-Type":"application/json",...f.headers}};o.method!==void 0&&o.method!=="GET"&&this.csrfToken&&(h.headers={...h.headers,"X-CSRFToken":this.csrfToken}),typeof m=="string"&&(h.headers={...h.headers,"X-Deepdesk-API-Version":m});let E=c,x=!1;if(!a)throw new Error("fetch is not set");this.latestRequestByUrl[i]&&l&&(this.latestRequestByUrl[i].isAborted=!0,this.latestRequestByUrl[i].reject(new Error("Aborted"))),this.latestRequestByUrl[i]=r;let _=async()=>(E--,a(i,h).then(async b=>u(b)&&!r.isAborted&&E>0?(await ii(p),_()):b.status===401&&d===!0&&x===!1?(x=!0,await this.refreshToken(),_()):b).catch(async b=>{if(g(b)&&!r.isAborted&&E>0)return await ii(p),_();throw b}));_().then(b=>b.json().catch(()=>null).then(v=>{b.status>=500?s(new ai("Server Error",v)):b.status===401?s(new Ut("Unauthorized",v)):b.status===403?s(new Ut("Forbidden",v)):b.status===404?s(new Ut("Not Found",v)):b.status>=400&&s(new Ut("Bad Request",v)),delete this.latestRequestByUrl[i],n(v)})).catch(b=>{s(b)})})}async validateToken(){let{has_valid_access_token:e}=await this.get("/auth/validate");if(!e)return!1;let{is_logged_in:o}=await this.get("/apis/admin/session/validate/",{version:null});return!!o}refreshToken(){return t.refreshingToken||(t.refreshingToken=this.get("/auth/refresh",{refreshTokenOn401:!1}).finally(()=>{setTimeout(()=>{t.refreshingToken=null},1e3*60)})),t.refreshingToken}get(e,o){return this.request(e,o)}post(e,o,n){return this.request(e,{method:"POST",body:JSON.stringify(o),...n})}patch(e,o,n){return this.request(e,{method:"PATCH",body:JSON.stringify(o),...n})}put(e,o,n){return this.request(e,{method:"PUT",body:JSON.stringify(o),...n})}delete(e,o){return this.request(e,{method:"DELETE",...o})}};var rS;(e=>{let t;(l=>(l.SEND_MESSAGE="Send Message",l.HANDLING_TIME="Handling Time",l.START_AUTOFLOW="Start Autoflow",l.ABORT_AUTOFLOW="Abort Autoflow",l.ADD_TO_PERSONAL_COLLECTION="Add to personal collection",l.DELETE_FROM_PERSONAL_COLLECTION="Delete from personal collection"))(t=e.EventType||={})})(rS||={});function ls(t){return{...A(t),tags:t.tags}}var Ge=class t{constructor(e,o={}){this.options=o;this.client=new Se(e,{fetch:o.fetch}),this.client.patchFetch(n=>async(s,r)=>{let i=await n(s,r);return this.handleDeepdeskVersionHeaders(i),i})}latestReceivedDeepdeskVersions={};client;shouldFetchCsrfToken=!0;static exchangeTokenPromise=null;async preflight(){if(this.shouldFetchCsrfToken){this.shouldFetchCsrfToken=!1;let e=await this.getCsrfToken();this.client.setCsrfToken(e)}return this.options.token?(t.exchangeTokenPromise||(t.exchangeTokenPromise=this.exchangeTokenForAccessCookie(this.options.token)),t.exchangeTokenPromise):Promise.resolve()}async createConversation(e){await this.preflight(),w.info(`Creating conversation for session ${e.sessionId} and agent ${e.agentId}`);let o=await this.client.post("/api/conversations",{...z(e),tags:e.tags},{version:"v2"});return ls(o)}async getProfile(e){let o=await this.client.get(`/apis/admin/profiles/${e}/`,{version:null});return A(o)}async getKnowledgeAssistant(e){let o=await this.client.get(`/apis/admin/knowledge-assist/assistants/${e}/`,{version:null});return A(o)}async getContentTypes(){let e=await this.client.get("/apis/admin/content-types/",{version:null});return A(e)}async getPlatformConfig(){let{config:e}=await this.client.get("/platform/config/",{version:null});return A(e)}async checkUserExists(e){let{exists:o}=await this.client.get(`/apis/admin/users/exists?external_id=${e}`);return o}async getConversationBySessionId(e,o={}){await this.preflight(),w.info(`Getting conversation for session ${e}`);let{attempts:n=1,retryDelay:s=1e3}=o,r=await this.client.get(`/api/conversations/by_session_id/${e}`,{attempts:n,retryDelay:s,retryOnResponse:i=>i.status===404||i.status>=500,version:"v2"});return w.info(`Successfully retrieved conversation ${r.id} for session ${e}`),ls(r)}async isConversationSupported(e,o={}){w.info(`Check if conversation for session ${e} is supported`);let{attempts:n=1,retryDelay:s=1e3}=o;return(await this.client.get(`/api/conversations/by_session_id/${e}/active_profile`,{attempts:n,retryDelay:s,retryOnResponse:i=>i.status===404||i.status>=500,version:"v2"})).has_active_profile}async updateConversation(e,o){let n=z(o);o.tags&&(n.tags=o.tags);let s=await this.client.put(`/api/conversations/${e}`,n,{version:"v2"});return ls(s)}async postMessages(e,o){return(await this.client.post(`/api/conversations/${e}/messages`,o.map(s=>({...z(s),tags:s.tags})),{version:"v2"})).map(s=>ls(s))}async sendEvent(e,o){let{data:n,...s}=o,r=Object.entries(this.latestReceivedDeepdeskVersions).reduce((i,[a,l])=>({...i,[a]:l}),{});return this.client.post("/api/events",z({...r,...s,data:n,name:e}),{version:"v2"})}async sendEventV1(e,o){let n=Object.entries(this.latestReceivedDeepdeskVersions).reduce((s,[r,i])=>({...s,[r]:i}),{});return this.client.post("/api/events",{event:e,data:z({...o,...n})})}async getEntities(e){return(await this.client.post("/api/entities",{messages:e.filter(n=>n.text)})).entities}async getSummary(e,o={}){return(await this.client.post("/api/summary",{conversation:{messages:e.filter(s=>s.text&&s.source),agent_id:o.agentId,id:o.externalConversationId},prompt_instruction:o.promptInstruction,model:o.model})).summary}async getTemporaryExchangeToken(){return(await this.client.get("/auth/exchange-token",{version:null})).jwt}async exchangeTokenForAccessCookie(e){return this.client.post("/apis/admin/session/jwt/",{jwt:e},{version:null}).catch(o=>{throw w.warn(`Invalid token '${e}'`),o})}async authenticateWithKey(e,o){await this.client.post("/apis/admin/session/api-key/",z(o),{version:null,refreshTokenOn401:!1,headers:{apikey:e}})}async getTextSuggestions(e,o={},n){return n==="sticky-messages"?this.getPinnedMessages(e):(await this.client.post(`/api/conversations/${e}/recommend/${n}`,z(o),{abortLatest:!0})).map(r=>({...A(r),text:r.text||r.url||r.message,source:n,type:n})).filter((r,i,a)=>i===a.findIndex(l=>l.text===r.text))}async isLoggedIn(){return await this.preflight(),this.client.validateToken()}async getAutocompleteSuggestions(e,o){return(await this.client.post(`/api/conversations/${e}/autocomplete`,z(o),{abortLatest:!0})).map(s=>({score:1,source:s.source,sourceText:s.source_text,text:s.label,trainingJobs:s.training_jobs,searchKeywords:s.search_keywords,type:s.source})).filter((s,r,i)=>r===i.findIndex(a=>a.text===s.text))}async getPinnedMessages(e){let o=await this.client.get(`/api/conversations/${e}/sticky-messages`,{abortLatest:!0});return A(o).map(n=>({...n,text:n.message,source:"sticky-messages",type:"pinned-message"}))}async getStyleSuggestions(e){let o=await this.client.post("/api/style-suggestions",z(e),{abortLatest:!0});return A(o)}async search(e){let o=await this.client.post(`/api/profiles/${e.profile}/search`,z(e),{version:"v2"});return A(o)}async knowledgeAssist(e,o,n,s={}){let r=await this.client.post(`/api/knowledge-assist/assistants/${n}/search`,z({question:e.question,promptInstruction:e.promptInstruction,chatHistory:o.map(i=>({question:i.question,answer:i.answer.answer})),agentId:s.agentId,conversationId:s.conversationId}),{version:"v2"});return A(r)}async requestLoginByEmail(e){let o=await this.client.post("/apis/admin/session/passwordless/request/",{email:e},{version:null});return A(o)}async requestPasswordlessToken(){let e=await this.client.get("/apis/admin/session/passwordless/request/",{version:null});return A(e.token)}async getCsrfToken(){let{token:e}=await this.client.get("/apis/admin/session/csrf/",{version:null});return e}async verifyLoginToken(e){let o=await this.client.post("/apis/admin/session/passwordless/login/",{token:e},{version:null});return A(o)}async evaluateRule(e,o,n,s={}){let r=new URLSearchParams;s.raiseForFailingConditions&&r.set("raise_for_failing_conditions","true");let i=await this.client.post(`/api/conversations/${o}/rules/${e}/evaluate?${r.toString()}`,n,{version:"v2"});return A(i.cues)}handleDeepdeskVersionHeaders(e){e.headers.forEach((o,n)=>{let s=n.toLowerCase(),r=s.match(wi);if(!o||!r)return;let i=r[1].replace("-","_"),a=this.latestReceivedDeepdeskVersions[i];a&&o&&a!==o&&w.warn(`Overwritten Version header ${s}: ${JSON.stringify(a)} -> ${JSON.stringify(o)}`),this.latestReceivedDeepdeskVersions[i]=o})}};var Io=class{constructor(e,o){this.url=e;this.options={timeout:25e3,...o}}eventListeners={};options;timeoutTimer;eventSource;proxyEvent(e){this.eventSource.addEventListener(sr(e),o=>{let{data:n}=o;try{let s=JSON.parse(n);this.emit(e,A(s))}catch{w.warn(`Invalid JSON for ${e}: ${n}`)}})}connect(){clearTimeout(this.timeoutTimer);let e=new EventSource(this.url,{withCredentials:!0});this.eventSource=e;let o=!1;e.onopen=()=>{o=!0},e.onerror=()=>{o&&e.readyState===2&&this.connect()},this.timeoutTimer=setTimeout(()=>{e.close(),this.connect()},this.options.timeout),Object.keys(this.eventListeners).forEach(n=>{this.proxyEvent(n)})}disconnect(){var e;clearTimeout(this.timeoutTimer),this.eventListeners={},(e=this.eventSource)==null||e.close()}emit(e,o){this.eventListeners[e]&&this.eventListeners[e].forEach(n=>n(o))}on(e,o){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o),this.proxyEvent(e),()=>{this.off(e,o)}}off(e,o){let n;this.eventListeners[e]&&(n=this.eventListeners[e].indexOf(o),n>-1&&this.eventListeners[e].splice(n,1))}};var iS;(e=>{let t;(r=>(r.Started="Started",r.Aborted="Aborted",r.Completed="Completed"))(t=e.AutoflowSessionState||={})})(iS||={});var Ro=class{constructor(e,o={}){this.apiUrl=e;this.client=new Se(e,o)}client;streams={};logger=w;async getCustomMessages(e){let o=await this.client.get(`/sessions/${e}/suggestions`);return A(o.suggestions)}async sendCustomMessage(e,o){let n=await this.client.post(`/sessions/${e}/messages`,z(o));return A(n)}async answerCustomMessage(e,o){await this.client.post(`/sessions/${e}/answers`,z(o))}async getAutoflows(e){let o=await this.client.get(`/sessions/${e}/autoflows`);return A(o.autoflows)}async startAutoflowSession(e){let o=await this.client.post("/autoflow-sessions",z(e));return A(o)}async stopAutoflowSession(e){await this.client.delete(`/autoflow-sessions/${e}`)}openStream(e){return this.streams[e]||(this.streams[e]=new Io(`${this.apiUrl}/sessions/${e}/events`),this.streams[e].connect()),this.streams[e]}closeStream(e){this.streams[e]||(this.streams[e].disconnect(),delete this.streams[e])}};import{combineReducers as gS,configureStore as mS}from"@reduxjs/toolkit";import{createSlice as aS}from"@reduxjs/toolkit";var gd={startTime:null,stopTime:null},md=aS({name:"handlingTime",initialState:gd,reducers:{handlingTimeStart(t){if(t.startTime&&!t.stopTime)throw new Error("Timing already started");t.startTime=new Date,t.stopTime=null},handlingTimeStop(t){if(!t.startTime)throw new Error("Timing not started");t.stopTime=new Date},handlingTimeReset(t){t.startTime=null,t.stopTime=null}},extraReducers:t=>{t.addCase(P,()=>gd)}}),{handlingTimeStart:fd,handlingTimeStop:cs,handlingTimeReset:hd}=md.actions,yd=md.reducer;var vd=(t={})=>{let e={onAuthError:Pt(!1),...t};return o=>n=>s=>("error"in s&&s.error.message==="Unauthorized"&&o.dispatch(e.onAuthError),n(s))};import{createAsyncThunk as lS,createSlice as cS}from"@reduxjs/toolkit";var ps={list:{keywordMatches:[]},fetchState:"idle",isInitialRequest:null};var pt=lS("styleSuggestions/getAll",async({text:t},e)=>{var i;let{deepdeskAPI:o}=e.extra,n=e.getState(),{showStyleSuggestions:s}=n.settings,r=(i=n.conversation.current)==null?void 0:i.profileCode;if(!s)return ps.list;if(!r)throw new Error("No current conversation to fetch pinned messages");return o.getStyleSuggestions({profileCode:r,message:t})}),pS=cS({name:"styleSuggestions",initialState:ps,reducers:{},extraReducers:t=>{t.addCase(pt.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(pt.rejected,e=>{e.fetchState="error"}).addCase(pt.fulfilled,(e,o)=>{e.fetchState="done",De(e.list,o.payload)||(e.list=o.payload)}).addCase(Qe,e=>{e.list=ps.list}).addCase(P,()=>ps)}}),Sd=pS.reducer;var _d=(t={})=>{let e,o=!0,n={getStyleSuggestions:pt,debounce:500,...t};return s=>r=>i=>{var u;let a=s.getState().input.text,l=r(i),c=s.getState();if(c.auth.isLoggedIn!==!0)return l;let{showStyleSuggestions:p}=c.settings;if(!((u=c.conversation.current)==null?void 0:u.id)||!p)return l;let{text:g}=c.input;return g===a&&!o||(clearTimeout(e),g==="")||(e=setTimeout(()=>{o=!1,s.dispatch(n.getStyleSuggestions({text:g}))},t.debounce)),l}};function dS(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var xd=(t={})=>{let e={getTextSuggestions:de,getAutocompleteSuggestions:ao,debounce:200,check:Ot,...t},o;return n=>s=>r=>{var f;let{input:{userCommitted:i}}=n.getState(),a=s(r),l=n.getState();if(l.auth.isLoggedIn!==!0)return a;let{recommendTextSuggestions:c,showTabCompletion:p}=l.settings,d=(f=l.conversation.current)==null?void 0:f.id,g=r.type===In.toString();if(!d||!c&&!p)return a;let{input:{userCommitted:u}}=l;return dS(u,i)&&!g||(clearTimeout(o),!e.check(l))||(o=setTimeout(()=>{let h=St(l);h===""?n.dispatch(e.getTextSuggestions("default")):n.dispatch(e.getAutocompleteSuggestions(h))},g?0:e.debounce)),a}};var bd=pt.fulfilled.toString();function uS(t,e){let o=new Set([...e.keywordMatches.map(s=>s.keyword)]),n=[];return o.forEach(s=>{let r=t.keywordMatches.filter(l=>l.keyword===s),i=e.keywordMatches.filter(l=>l.keyword===s),a=i.length-r.length;a<=0||n.push(...i.slice(0,a))}),n}var Cd=t=>e=>o=>n=>{var c;if(n.type!==bd){o(n);return}let s=e.getState().styleSuggestions.list;o(n);let r=e.getState(),i=r.styleSuggestions.list,a=(c=r.conversation)==null?void 0:c.current;if(s===i)return;let l=uS(s,i);n.type===bd&&l.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:l}})};var fS=gS({activeSuggestion:bl,answer:fc,auth:Ol,autoflows:Sp,conversation:Pi,contentTypes:Zl,customMessages:Ip,passwordlessToken:Mp,entities:Yl,knowledgeAssistant:uc,handlingTime:yd,info:Wa,input:ks.reducer,overlayInput:J.reducer,settings:Ei,profile:_c,search:Ya,summary:ic,styleSuggestions:Sd,ui:El,rules:Fl,textSuggestions:yl});function wd(t){return mS({reducer:fS,middleware:e=>[...e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI,deepdeskBrokerAPI:t.deepdeskBrokerAPI}},serializableCheck:!1}),vd(),xd({debounce:200}),_d({debounce:500}),Cd(t.deepdeskAPI),...t.middleware?t.middleware:[]],preloadedState:t.preloadedState})}var hS=t=>{var e;return((e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())??"unknown"},yS=t=>e=>o=>n=>{var a;let s=e.getState(),r=Cs("inlineSuggestions")(s);switch(n.type){case Te.toString():{let l=kn(n.payload.contentType)(e.getState()),c=l.indexOf(n.payload.suggestion);t.emit("edit-suggestion",{contentType:n.payload.contentType,index:c,suggestions:l});break}case Pt.toString():{!n.payload&&t.emit("logout",void 0);break}case le.toString():{let{start:l,end:c}=s.input.selection;t.emit("select-suggestion",{type:hS(n.payload.suggestion),...n.payload,replace:n.payload.replace==="selection"?{start:l,end:c}:{start:0,end:c}},{mayApplyChanges:!0});break}case Wo.toString():{let{start:l,end:c}=s.input.selection;t.emit("replace",{...n.payload,replace:n.payload.replace==="selection"?{start:l,end:c}:{start:0,end:c}},{mayApplyChanges:!0});break}case Zt.toString():{let l=e.getState(),{text:c,selection:p}=l.input.userCommitted;t.emit("reset",{text:c,selectionAfter:p},{mayApplyChanges:!0});break}case Zo.toString():t.emit("select-image",n.payload,{mayApplyChanges:!0}),t.sendEvent("Image attached",{conversationId:s.conversation.current.id,data:{path:n.payload.suggestion.image,title:n.payload.suggestion.title}});break;case ue.fulfilled.toString():n.payload.length>0&&t.sendEvent("entities found",{conversationId:s.conversation.current.id,data:{entities:n.payload}});break;case Re.fulfilled.toString():t.sendEvent("conversation summarized",{conversationId:s.conversation.current.id,data:{summary:n.payload.summary}});break;case W.toString():t.sendEvent(n.payload.name,{conversationId:((a=n.payload.options)==null?void 0:a.includeConversationData)&&s.conversation.current.id,data:n.payload.data});break;case $o.toString():t.handleKeyDown(n.payload);break;case Qe.toString():t.logSendMessage(n.payload);break;case Go.toString():t.logSendEditSuggestionMessage(n.payload);break;case Xo.toString():t.handleInputChanged(n.payload);break;case ke.fulfilled.toString():t.broadcast(fr,n.payload,!1),t.emit("cues",n.payload);break;default:break}let i=o(n);switch(n.type){case Qe.toString():t.handleAfterSendMessage(n.payload);break;case lo.toString():t.onUpdateShowTabHint(n.payload);break;case cs.toString():t.logHandlingTime();break;case le.toString():{r&&(e.dispatch(me([])),e.dispatch(xe()));break}case me.toString():{r&&n.payload.length>0&&e.dispatch(Be(0));break}default:break}return i},Td=yS;function li(t){return t.toISOString().replace("T"," ").replace("Z","")}function Ed(t,e){var s,r,i;let{startTime:o,stopTime:n}=t.handlingTime;if(!o||!n)throw new Error("No startTime and stopTime for handling time metrics");return{conversationId:t.conversation.current.id,clientVersion:e.version,agentId:(s=t.info.agentInfo)==null?void 0:s.agentId,agentName:(r=t.info.agentInfo)==null?void 0:r.agentName,agentEmail:(i=t.info.agentInfo)==null?void 0:i.agentEmail,timeStart:li(o),timeStop:li(n)}}function ci(t,e,o){var N,B,D;let{text:n,metrics:{numCharsTyped:s,numCharsPasted:r,numCharsCut:i,numCharsDeleted:a,numPaste:l,agentStartedTypingTimestamp:c,externalTimeTotalSeconds:p,pastes:d,cuts:g,deletions:u,textSuggestions:m,offeredTextSuggestions:f}}=e[t],h=n.length,x=m.reduce((U,{text:F,searchTerm:k})=>U+F.length-(k?k.length:0),0),_=c??Date.now(),b=(Date.now()-_)/1e3+(p||0),v=s/b,R=m.reduce((U,{searchTerm:F})=>U+(F?F.length:0),0);return{conversationId:e.conversation.current.id,source:"agent",text:n,clientVersion:o.version,pastes:d,cuts:g,deletions:u,lenTextTyped:s+R,lenTextTotal:h,lenTextAssisted:x,lenTextPasted:r,lenTextCut:i,lenTextDeleted:a,timeTotalSeconds:b,charsPerSecond:v,numPastes:l,textSuggestionsV2:m,suggestionsCounters:[{source:"gpt",countOffered:f.filter(U=>U.source==="gpt").length}],agentId:(N=e.info.agentInfo)==null?void 0:N.agentId,agentName:(B=e.info.agentInfo)==null?void 0:B.agentName,agentEmail:(D=e.info.agentInfo)==null?void 0:D.agentEmail}}function pi(t,e){var r;let o=t.closest(e);if(o)return o;let n=t.getRootNode().host;if(n instanceof HTMLElement)return pi(n,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?pi(s,e):null}function kd(t,e){return pi(t,e)}function Id(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function vS(t){return typeof t=="object"&&t!==null&&"tagName"in t}function di(t){return vS(t)&&(We(t)||gn(t))}var Rd=(t,e)=>({value(){try{let o=sessionStorage.getItem(`dd-${t}`);if(!o)return e;try{return JSON.parse(o)}catch{return e}}catch{return e}},update(o){try{sessionStorage.setItem(`dd-${t}`,JSON.stringify(o))}catch{w.warn("[Deepdesk] SessionStorage is blocked by browser")}}});function SS(t){return t.offsetParent!==null}function Pd(t){if(!SS(t))return!1;let e=t.getBoundingClientRect();return e.top>=0&&e.left>=0&&e.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&e.right<=(window.innerWidth||document.documentElement.clientWidth)}function ui(t,e,o=100){let n=Pd(t);e({isVisible:n});let s=setInterval(()=>{let r=Pd(t);r!==n&&(n=r,e({isVisible:n}))},o);return()=>{clearTimeout(s)}}import{jsx as j}from"react/jsx-runtime";var Ad=Rd("showTabHint",!0),us=class t{static version="10.12.1-beta.3";static count=0;deepdeskApi;inputMediator=null;version;broadcastEvents;eventListeners={};unmountHandlers=[];widgetRoot=null;dynamicThunkObject={};isMounted=!1;instanceId;shouldRender=!0;store;constructor({deepdeskUrl:e,brokerUrl:o,version:n=t.version||"unknown",locale:s="en-US",token:r,fetch:i,productName:a,createCustomChannel:l}){let c=e.replace(/\/api$/,"");this.deepdeskApi=new Ge(c,{token:r,fetch:i}),this.version=n,this.instanceId=t.count++;let p={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[Td({broadcast:(d,g,u)=>{this.broadcastEvents.send(d,g,u)},emit:(d,g,u)=>this.emit(d,g,u),handleAfterSendMessage:d=>this.handleAfterSendMessage(d),handleInputChanged:d=>this.handleInputChanged(d),handleKeyDown:d=>this.handleKeyDown(d),logHandlingTime:()=>this.logHandlingTime(),logSendMessage:d=>this.logSendMessage(d),logSendEditSuggestionMessage:d=>this.logSendEditMessage(d),onUpdateShowTabHint:d=>Ad.update(d),sendEvent:(d,g)=>this.deepdeskApi.sendEvent(d,g)})]};o&&Object.assign(p,{deepdeskBrokerAPI:new Ro(o)}),this.store=wd(p),this.broadcastEvents=new ud({debug:!0,deepdeskUrl:c,eventMap:Kl(this.store),createCustomChannel:l}),this.store.dispatch(Xt),this.store.dispatch(lo(Ad.value())),this.store.dispatch(Xt({locale:s,adminUrl:c,productName:a}))}get state(){return this.store.getState()}get settings(){return this.state.settings}get selectedTextSuggestion(){return this.state.input.textSuggestions[this.state.input.selectedSuggestionIndex]??null}hasConversation(){return!!this.state.conversation.current}conversationId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.id}sessionId(){if(!this.hasConversation())throw new Error("No conversation loaded");return this.state.conversation.current.sessionId}shouldAbort(){return this.state.conversation.isSupported===!1?(w.warn("Conversation is not supported"),!0):this.hasConversation()?this.state.profile.data?!1:(w.warn("Profile has not been loaded (yet)"),!0):(w.warn("No conversation loaded (yet)"),!0)}login(){return this.store.dispatch(Pt(null)),this.store.dispatch(Ee()),new Promise(e=>{let o=this.store.subscribe(()=>{let n=this.store.getState();Z(n)&&Rl(n)!=="loading"&&(o(),e())});this.unmountHandlers.push(()=>{o()})})}async isLoggedIn(){return(await this.store.dispatch(Ee())).payload}async setPlatformAgentId(e){try{if((await this.deepdeskApi.client.get("/apis/admin/session/me/",{version:null})).external_id)return;await this.deepdeskApi.client.request("/apis/admin/session/me/",{method:"PATCH",body:JSON.stringify({external_id:e}),version:null})}catch(o){w.warn("Failed to attach user:",o)}}async isConversationSupported(e,o){return(await this.store.dispatch(Ts({sessionId:e,options:o}))).payload}async createConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(Ko(e))).payload}async getConversationBySessionId(e,o){return this.hasConversation()&&this.sessionId()!==e&&this.resetConversation(),(await this.store.dispatch(Uo({sessionId:e,options:o}))).payload}async upsertConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(Es(e))).payload}async postMessages(e){return(await this.store.dispatch(jo(e))).payload}async updateConversation(e){return(await this.store.dispatch(zo(e))).payload}resetConversation(){this.store.dispatch(P()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}async getSummary(){let e=await this.store.dispatch(Re());if(e.error)throw new Error(e.error.message);return e.payload.summary}configure(e){this.store.dispatch(Xt(e))}setVisitorInfo(e){this.store.dispatch(qa(e))}async setAgentInfo(e){await this.store.dispatch(so(e))}async setAgentSettings(e){await this.store.dispatch(ir(e))}async getAgentSettings(){return(await this.store.dispatch(ar())).payload}async refresh(){if(this.shouldAbort())return Promise.resolve();this.inputMediator&&this.handleInputChanged(this.inputMediator.getText());let e=[];return this.store.dispatch(In()),e.push(this.refreshWidgetSuggestions()),Promise.all(e).then(()=>{})}notifyInputChanged(e){this.store.dispatch(Xo(e))}notifyKeyDown(e){this.store.dispatch($o(e))}notifyPaste(e,o){this.store.dispatch(Ui({text:e,selectionText:o}))}notifyCut(e){this.store.dispatch(Fi(e))}notifyExternalSuggestion(e){this.store.dispatch(le(e)),this.store.dispatch(xe())}notifyEditSuggestion(e){this.store.dispatch(fl(e.contentType,e.suggestions)),this.store.dispatch(Te({contentType:e.contentType,suggestion:typeof e.index=="number"?e.suggestions[e.index]:null}))}async evaluateRule(e,o={}){let{payload:n,error:s}=await this.store.dispatch(ke({label:e,params:o}));if(s)throw s;return n}handleInputChanged(e){let{overlayCollapsed:o,openOverlayWhenTyping:n}=this.state.ui;o&&n&&this.store.dispatch(Ve({collapse:!1})),this.inputMediator&&this.store.dispatch(Mi({text:e,html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),!this.shouldAbort()&&(this.isMounted||this.store.dispatch(me([])))}handleKeyDown(e){let{overlayCollapsed:o}=this.state.ui,{textSuggestions:n,selectedSuggestionIndex:s,selection:r}=this.state.input,{inlineSuggestions:i}=this.state.settings,a=n.length>0,l=s!==-1;if(this.store.dispatch(Ki(qo(e))),e.key!=="Tab"&&!this.settings.showTextSuggestions)return;let c=()=>{o||!a||r&&(e.shiftKey||(this.store.dispatch(Di()),i||this.stageSelectedSuggestion({inputType:"arrow"}),e.preventDefault()))},p=()=>{o||!a||i&&s<=0||r&&(e.shiftKey||(this.store.dispatch(Bi()),e.preventDefault(),!i&&(this.state.input.selectedSuggestionIndex===-1?this.store.dispatch(Zt()):this.stageSelectedSuggestion({inputType:"arrow"}))))};switch(e.key){case"Up":case"ArrowUp":i?p():c();return;case"Down":case"ArrowDown":{i?c():p();return}case"Esc":case"Escape":{i&&l&&this.store.dispatch(Be(-1)),this.state.input.selectedSuggestionIndex!==-1?(this.store.dispatch(Be(-1)),this.store.dispatch(Zt()),e.preventDefault()):o||(this.store.dispatch(Ve({collapse:!0})),this.store.dispatch(wl(!0)),e.preventDefault());return}case"Tab":{let{userCommitted:d}=this.state.input,g=d.text.substring(0,d.selection.end),{tabCompletionSuggestion:u}=this.state.input;this.store.dispatch(lo(!1)),this.state.input.selectedSuggestionIndex>-1?this.stageSelectedSuggestion({inputType:"tab"}):!i&&this.settings.showTabCompletion&&u&&u.text.startsWith(g)&&(this.store.dispatch(le({text:u.text,suggestion:u,eventMetrics:{inputType:"tab"},replace:"until-selection-end"})),this.store.dispatch(xe())),e.preventDefault();break}default:}}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(zi()),this.store.dispatch(me([]))}handlingTimeStart(){this.state.handlingTime.startTime||(w.info("Start handling time"),this.store.dispatch(fd()))}handlingTimeStop(){this.state.handlingTime.startTime&&(w.info("Stop handling time"),this.store.dispatch(cs()))}logSendMessage(e){let o=ci("input",this.state,{version:this.version});e&&(Object.assign(o,{text:e}),Object.assign(o,{lenTextTotal:e.length})),this.deepdeskApi.sendEventV1("Send Message",o),this.emit("send-message-event",o)}logSendEditMessage(e){let o=ci("overlayInput",this.state,{version:this.version});e&&Object.assign(o,{text:e}),this.store.dispatch(Oi(this.state.overlayInput.metrics))}logHandlingTime(){let e=Ed(this.state,{version:this.version});this.deepdeskApi.sendEventV1("Handling Time",e),this.store.dispatch(hd())}notifySubmit(e={}){this.shouldAbort()||(this.store.dispatch(xe()),this.store.dispatch(Qe(e.text??this.state.input.text)))}stageSelectedSuggestion(e){let o=this.state.input.selectedSuggestionIndex,{textSuggestions:n}=this.state.input;this.store.dispatch(le({text:n[o].text,suggestion:n[o],eventMetrics:e,replace:"until-selection-end"}))}emit(e,o,n={}){let s=()=>{this.eventListeners[e]&&this.eventListeners[e].forEach(r=>{try{r(o)}catch(i){w.warn(`The following error occurred in deepdeskSDK.on('${e}', handler)`),w.error(i)}})};this.inputMediator&&n.mayApplyChanges?this.inputMediator.applyChanges(s):s()}on(e,o){return this.eventListeners[e]||(this.eventListeners[e]=[]),this.eventListeners[e].push(o),()=>{this.off(e,o)}}off(e,o){if(!e&&!o){this.eventListeners={};return}let n;this.eventListeners[e]&&(n=this.eventListeners[e].indexOf(o),n>-1&&this.eventListeners[e].splice(n,1))}setConversationQuery(e){this.dynamicThunkObject.conversationQuery=e}whenConversationLoaded(e){let o=()=>this.loadProfileConfig().then(()=>e());this.hasConversation()&&o();let n=this.hasConversation();this.store.subscribe(()=>{this.hasConversation()!==n&&(n=this.hasConversation(),n&&o())})}overlayContainerFactory(e,o,n,s){let[r,i]=wt(o,n);return r.setAttribute("translate","no"),r.dataset.testid=e,s&&r.classList.add(s),this.unmountHandlers.push(()=>{ds(r),i(),r.remove()}),r}createInlineContainer(e,o){var i;let n=document.createElement("div");n.style.position="absolute",n.style.top="0px",n.style.left="0px",n.style.height="0px",n.style.width="0px";let s=document.createElement("div");s.style.display="none",s.style.position="absolute",s.style.height="0px",s.style.width="0px",s.style.backgroundColor="red",n.appendChild(s);let r=(i=e.ownerDocument.defaultView)==null?void 0:i.frameElement;if(r){let[a,l]=wt(r,{appendTo:document.body,onMoveStart:()=>{s.style.display="none"}});a.dataset.testid=o,a.style.zIndex="2",a.appendChild(n),this.unmountHandlers.push(()=>{ds(s),l()})}else document.body.appendChild(n);return s}createContainer(e,o=document.body){let n=window.getComputedStyle(o),s=document.createElement("div");return Ye(s),s.dataset.testid=e,s.style.color=n.color,s.style.fontSize=n.fontSize,s.style.fontFamily=n.fontFamily,s.style.fontVariant=n.fontVariant,s.setAttribute("translate","no"),o.appendChild(s),this.unmountHandlers.push(()=>{ds(s),s.remove()}),s}storeMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,o=JSON.stringify({text:this.state.input.text,metrics:this.state.input.metrics});window.sessionStorage.setItem(e,o),w.info(`Stored analytics for ${this.conversationId()}`)}catch{}}restoreMetrics(){try{let e=`dd-metrics-${this.conversationId()}`,o=window.sessionStorage.getItem(e);if(!o)return;let n=JSON.parse(o);n.text.trim()===this.state.input.text.trim()?(w.info(`Restored metrics for ${this.conversationId()}`),this.store.dispatch(Vi(n.metrics))):w.warn(`Metrics mismatch, disregarding stored metrics for ${this.conversationId()}`),window.sessionStorage.removeItem(e)}catch{}}mount(e,o={}){if(this.isMounted)throw new Error("[Deepdesk] This instance was already mounted. Make sure to unmount before you remount.");if(!di(e))throw new Error("[Deepdesk] Only mount on textarea or contentEditable div.");if(!this.shouldRender)return;let{customStyles:n={},showStyleSuggestions:s,showTabCompletion:r,showTextSuggestions:i,textSuggestionsCount:a,showMidSentenceSuggestions:l,showSuggestionsBeforePattern:c,showSuggestionsAfterPattern:p,isEmbedded:d,detectSubmit:g,insertLink:u,inputMediator:m,closestScrollSelector:f,appendOverlayTo:h,inlineSuggestions:E,floatingMenu:x}=o;this.configure({showStyleSuggestions:s,showTabCompletion:r,textSuggestionsCount:a,showMidSentenceSuggestions:l,showSuggestionsBeforePattern:c,showSuggestionsAfterPattern:p,showTextSuggestions:i,insertLink:u,isEmbedded:d,inlineSuggestions:E,floatingMenu:!!x}),o.automaticHandlingTime&&this.setupHandlingTime(e),Ye(e),this.inputMediator=m||(We(e)?new Ke(e):new Ft(e)),this.inputMediator.on("change",({plainText:v})=>{this.notifyInputChanged(v)}),this.inputMediator.on("updated",()=>{this.inputMediator&&this.store.dispatch(ji({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()}))}),this.inputMediator.on("keydown",v=>{this.notifyKeyDown(v)}),this.inputMediator.on("paste",({pastedText:v,selectionText:R})=>{this.notifyPaste(v,R)}),this.inputMediator.on("cut",({selectionText:v})=>{this.notifyCut(v)});let _=f&&kd(e,f)||void 0;if(E){let{customStyles:v,appendOverlayTo:R}=o;if(We(e))throw new Error("[Deepdesk] Inline suggestion is not supported for textarea yet.");let N=this.createInlineContainer(e,"deepdesk-caret");zt(j(rt,{store:this.store,customStyles:v,children:j(nt,{broadcastEvents:this.broadcastEvents,children:j(Hc,{})})}),N),this.inputMediator.on("caret",D=>{this.store.dispatch(me([])),D?(N.style.display="block",N.style.top=`${D.top}px`,N.style.left=`${D.left}px`):N.style.display="none"});let B=this.overlayContainerFactory("floating-menu",_||e,{appendTo:typeof x=="object"&&"appendOverlayTo"in x?x.appendOverlayTo:R},v==null?void 0:v.floatingMenuRootNode);zt(j(rt,{store:this.store,customStyles:v,children:j(nt,{broadcastEvents:this.broadcastEvents,children:j(Ac,{onLogIn:()=>this.loginViaPopup().catch(D=>w.warn(D.message))})})}),B)}else{let v=this.overlayContainerFactory("deepdesk-tab-completion",_||e,{appendTo:h,closestScrollElement:_,mirrorOverflow:!0,onRemove:()=>this.unmount()},n==null?void 0:n.rootNode),R=this.overlayContainerFactory("deepdesk-suggestions-overlay",_||e,{appendTo:h},n==null?void 0:n.suggestionsRootNode);zt(j(rt,{store:this.store,customStyles:n,children:j(nt,{broadcastEvents:this.broadcastEvents,children:j(gp,{inputElement:e})})}),v),zt(j(rt,{store:this.store,customStyles:n,children:j(nt,{broadcastEvents:this.broadcastEvents,children:j(Wc,{onLogIn:()=>this.loginViaPopup().catch(N=>w.warn(N.message))})})}),R)}zt(j(rt,{store:this.store,customStyles:n,children:j(nt,{broadcastEvents:this.broadcastEvents,children:j(Tc,{})})}),this.createContainer("deepdesk-overlays"));let b;this.inputMediator.on("selection",v=>{clearTimeout(b),v===null?b=setTimeout(()=>{v!==null&&this.store.dispatch(Is(v))},500):this.store.dispatch(Is(v))}),this.inputMediator.on("disabled",()=>{var v;(v=this.inputMediator)==null||v.deactivate(),this.configure({visible:!1})}),this.inputMediator.on("enabled",()=>{this.inputMediator&&(this.configure({visible:!0}),this.inputMediator.activate())}),this.inputMediator.on("submit",()=>{g&&this.notifySubmit()}),this.inputMediator.on("blur",()=>this.store.dispatch(Rt(!1))),this.inputMediator.on("focus",()=>this.store.dispatch(Rt(!0))),this.store.dispatch(Ni({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),this.unmountHandlers.push(()=>{this.state.input.text!==""&&(this.store.dispatch(xe()),this.storeMetrics())}),this.whenConversationLoaded(()=>{var v;this.restoreMetrics(),this.refresh(),this.broadcastEvents.setSessionId((v=this.state.conversation.current)==null?void 0:v.sessionId)}),this.isMounted=!0}unmount(){var e;this.unmountHandlers.forEach(o=>o()),this.unmountHandlers=[],(e=this.inputMediator)==null||e.dispose(),this.broadcastEvents.cleanup(),this.isMounted=!1}renderWidget(e,o={}){if(this.widgetRoot&&w.warn("A widget was already rendered for this instance. Make sure to unmountWidget before rerendering"),!this.shouldRender)return;let{customStyles:n,showImages:s,isEmbedded:r}=o;this.widgetRoot=e,this.configure({showImages:s,isEmbedded:r}),zt(j(rt,{store:this.store,customStyles:n,children:j(nt,{broadcastEvents:this.broadcastEvents,children:j(ld,{onLogIn:()=>this.loginViaPopup().catch(i=>w.warn(i.message))})})}),e),this.whenConversationLoaded(()=>{var i;this.broadcastEvents.setSessionId((i=this.state.conversation.current)==null?void 0:i.sessionId)})}unmountWidget(){this.widgetRoot&&ds(this.widgetRoot),this.widgetRoot=null}setupHandlingTime(e){let o=ui(e,({isVisible:n})=>{n?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),o()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){Id(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfigPromise=null;loadProfileConfig(){return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(this.loadProfileConfigPromise=Promise.resolve().then(async()=>{await this.store.dispatch(yo());let e=qe(this.state);e&&(await this.store.dispatch(ho()),this.store.dispatch(Xt({showSearch:e.search,showAutoflows:e.autoflows,showCustomMessages:e.customMessages,showImageSearch:e.imageSearch,showEntitiesCommand:e.entitiesCommand,showSummaryCommand:e.summarizer,showKnowledgeSearch:!!e.knowledgeAssistant,recommendTextSuggestions:e.recommendTextSuggestions})))}),this.loadProfileConfigPromise)}async loginViaPopup(e){return new Promise((o,n)=>{let s=new MessageChannel,r=s.port1,i=this.state.settings.adminUrl,a=new URL(e!=null&&e.url?e==null?void 0:e.url:`${i}/platform/sso/`);a.searchParams.append("redirect","/sdk/popup/close.html");let l=!1,c=()=>{p&&!p.closed&&p.close(),window.removeEventListener("message",d),clearInterval(g)};r.onmessage=async u=>{var m,f;if((m=u.data)!=null&&m.jwt)try{await this.deepdeskApi.exchangeTokenForAccessCookie((f=u.data)==null?void 0:f.jwt),await this.isLoggedIn(),this.broadcastEvents.send(po),l=!0,s.port1.close(),o()}catch(h){console.error(h),n(h)}finally{l=!0,c()}};let p=window.open(a.toString(),"deepdesk-login","scrollbars=no,left=100,top=150,width=500,height=500");p===null&&n(new Error("Popup blocked by browser"));let d=async u=>{var m;if(u.origin===a.origin)switch((m=u.data)==null?void 0:m.type){case"deepdesk-popup-loaded":{try{let f=JSON.stringify({type:"deepdesk-popup-create-channel"});p==null||p.postMessage(f,a.origin,[s.port2])}catch(f){w.error("Error posting message to popup",f),n(f)}break}case"deepdesk-popup-error":{c(),u.data.message==="Timeout"&&w.warn("Popup timed out. Check if the account's platform url is configured correctly."),n(new Error(u.data.message));break}}};window.addEventListener("message",d);let g=setInterval(()=>{p&&!p.closed||(c(),l||n(new Error("Popup closed by user")))},200);this.unmountHandlers.push(c)})}async checkForTrialMode(e){try{let{account:o}=await this.deepdeskApi.getPlatformConfig();if(!o.isTrial){this.shouldRender=!0;return}if(w.info("Trial is active"),!await this.deepdeskApi.checkUserExists(e))throw new Error("User is not in trial");this.shouldRender=!0}catch(o){let{message:n}=o;w.info(n),this.shouldRender=!1}}async refreshWidgetSuggestions(){if(!this.widgetRoot||this.shouldAbort())return;let{uiConfig:e}=this.state.profile.data;if(!e.widget)return;let o=Nn(this.state);try{o.forEach(({type:n})=>{n==="entities"?this.store.dispatch(ue()):this.store.dispatch(de(n))})}catch(n){this.handleError(n)}}};async function _S(t,e,o={}){let{value:n}=t,{start:s,end:r}=o.replace??{start:0,end:n.length},i=`${n.slice(0,s)}${e}${n.slice(r)}`,a=o.selectionAfter??{start:s+e.length,end:s+e.length},l=()=>{if(o.setValue)return o.setValue(i);t.value=i};return Promise.resolve(l()).then(()=>{t.selectionStart=a.start,t.selectionEnd=a.end,t.blur(),t.focus()})}async function xS(t,e,o={}){let n=o.replace?ct(t,o.replace.start,o.replace.end):ko(t),s,r=()=>{if(o.setRange)return o.setRange(n.cloneRange());n.deleteContents(),s=document.createElement("span"),n.insertNode(s),o.insertBRs!==!1?e.split(`
|
|
10
|
+
`).reverse().forEach((i,a)=>{a>0&&n.insertNode(document.createElement("br")),n.insertNode(document.createTextNode(i))}):n.insertNode(document.createTextNode(e))};return Promise.resolve(r()).then(()=>{try{if(o.selectionAfter!==!1){t.focus();let i=o.selectionAfter?ct(t,o.selectionAfter.start,o.selectionAfter.end):(n.collapse(!1),n),a=window.getSelection();a==null||a.removeAllRanges(),a==null||a.addRange(i)}if(!s)return;s.scrollIntoView&&s.scrollIntoView({block:"nearest",inline:"nearest"})}finally{s&&s.remove()}})}function bS(t){let e=document.createElement("template");return e.innerHTML=t.replace(/(\[([^\]]+)])\(([^)]+)\)/g,'<a href="$3" target="_blank" rel="noopener noreferrer">$2</a>'),e.content}function CS(t){let e=document.createDocumentFragment();return t.split(`
|
|
11
|
+
`).forEach((o,n)=>{n>0&&e.appendChild(document.createElement("br"));let s={index:0},r=0;for(;s=o.slice(r).match(/(\[([^\]]+)])\(([^)]+)\)/);){let i=document.createElement("a");i.href=s[3],i.setAttribute("target","_blank"),i.setAttribute("rel","noopener noreferrer"),i.appendChild(document.createTextNode(s[2])),e.appendChild(document.createTextNode(o.slice(r,r+s.index))),e.appendChild(i),r=r+s.index+s[0].length}e.appendChild(document.createTextNode(o.slice(r)))}),e}function Ld(t,e){return!t.contains(e)||e===t?null:e.parentNode===t?e:Ld(t,e.parentNode)}async function wS(t,e,{isBlock:o,isHTML:n}={}){let s;t.dispatchEvent(new InputEvent("beforeinput",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0}));let r=()=>{let i=t.ownerDocument.defaultView??window,a=i.getSelection();if((!a||a.rangeCount===0)&&(t.focus(),a=i.getSelection()),!a||a.rangeCount===0)return;let l=a.getRangeAt(0);if(!l)return;s=document.createElement("span"),l.insertNode(s);let c=n?bS(e):CS(e);if(o){let p=l.startContainer===t?t.childNodes[l.startOffset]:l.startContainer,d=Ld(t,p)??t.firstChild;t.insertBefore(c,(d==null?void 0:d.nextSibling)??null)}else l.insertNode(c),l.collapse(!1)};return Promise.resolve(r()).then(()=>{if(t.dispatchEvent(new InputEvent("input",{inputType:"insertText",data:e,bubbles:!0,cancelable:!0})),t.focus(),!!s)try{s.scrollIntoView&&s.scrollIntoView({block:"nearest",inline:"nearest"})}finally{s&&s.remove()}})}function TS(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}async function ES(t,e,o){await new Ge(t).authenticateWithKey(e,o)}async function kS(t){let o=await new Se(t).get("/platform/config/",{version:null});return A(o)}async function IS(t){let o=await(t.fetch??window.fetch)(t.url),n=await o.blob();return new File([n],t.name,{type:t.mimeType??o.headers.get("Content-Type")??"image/jpeg"})}async function RS(t,e){let o=await IS(e),n=new Event("change",{bubbles:!0,cancelable:!0});try{Object.defineProperty(t,"files",{configurable:!0,get:()=>[o]}),t.dispatchEvent(n)}finally{Object.hasOwn(t,"files")&&delete t.files}}export{O as Card,Ft as ContentEditableInput,Ge as DeepdeskAPI,us as DeepdeskSDK,Se as HTTPClient,Fe as InputMediator,Xe as InputType,hs as KeyboardHint,ys as Label,Ho as Locale,Oe as Section,Ss as SectionList,ge as Sources,M as Suggestion,re as SuggestionList,Ke as TextAreaInput,ft as ToggleButton,RS as attachFile,ES as authenticateWithKey,ko as createFullRange,wt as createOverlayContainer,ct as createRangeFromOffsets,to as escapeHTML,kS as fetchPlatformConfig,TS as formatTextMarkup,is as getRangeOffsets,as as getRangeText,wS as insertCKEditor,Tt as isHTML,di as isSupportedInputElement,xS as updateContentEditable,_S as updateTextArea,y as useStyles,ui as waitForElementVisibilityChange};
|