@deepdesk/deepdesk-sdk 10.12.1-beta.3 → 10.12.1-beta.4
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 +2 -2
- package/dist/index.esm.js +2 -2
- package/dist/index.iife.js +2 -2
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -4,8 +4,8 @@ Try polyfilling it using "@formatjs/intl-pluralrules"
|
|
|
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`})})});var Oi=require("react/jsx-runtime"),Mf={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},Kp=({className:t,color:e})=>(0,Oi.jsx)("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:(0,Oi.jsx)("path",{d:"M172.03 0.0199966H0V86.03C47.5 86.03 86 124.54 86 172.04C86 124.54 124.51 86.03 172.01 86.03C219.51 86.03 258.03 124.54 258.03 172.04C258.03 219.54 219.52 258.05 172.01 258.05C124.5 258.05 86 219.54 86 172.04C86 219.54 47.5 258.05 0 258.05V344.06H172.03C267.04 344.06 344.06 267.04 344.06 172.03C344.06 77.02 267.04 0 172.03 0V0.0199966Z",fill:Mf[e||"pink"]})});var Up={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 Di={};$(Di,{enUS:()=>Nf,nlNL:()=>Of});var Nf={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},Of={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};var Vp=require("react-redux"),Xt=require("react/jsx-runtime"),qp=({onLogIn:t})=>{let e=T(Di),o=C("floatingMenu"),n=C("productName"),s=(0,Vp.useDispatch)(),r=(0,jp.useSelector)(ne),i=y("FloatingMenu",Up);if(r===null||o===!1)return null;let a=()=>{r===!0?s(te(!0)):t()};return(0,Xt.jsxs)("button",{className:(0,zp.default)(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[(0,Xt.jsx)("div",{className:i.text,children:e(r?"search":"signin",{productName:n})}),(0,Xt.jsxs)("div",{className:i.icon,children:[(0,Xt.jsx)(Kp,{className:i.logo,color:"pink"}),r===!1&&(0,Xt.jsx)(Fp,{className:i.lock})]})]})};var nr=require("react"),rt=require("react-redux");function Lo(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}var tr=require("react");var Xp=require("interweave"),Mo=require("react"),er=require("react-redux");var Wp=require("react");function $p(t,e,o){(0,Wp.useEffect)(()=>{let n=t.current;return n?(n.addEventListener(e,o),()=>{n.removeEventListener(e,o)}):()=>{}},[t,e,o])}var Gp={root:"_root_4u430_1",actions:"_actions_4u430_8",badge:"_badge_4u430_15",formattedText:"_formattedText_4u430_19"};var Zt=require("react/jsx-runtime"),Hf=["search","personal-collection-search","search-autocomplete"];function Bf(t,e,o,n={}){let s="";return Hf.includes(e)?s=Fl(ai(t,o,{stripAgentPart:!0}),n.searchKeywords??[o]):s=ai(t,o,n),n.placeholders===!0&&(s=Kl(s)),s}var Ff=()=>{},Kf=({index:t,selected:e,suggestion:o,onFeedback:n})=>{let s=C("inlineSuggestions"),r=(0,er.useSelector)(lo),i=(0,er.useDispatch)(),a=y("TextSuggestion",Gp),l=(0,Mo.useRef)(null);(0,Mo.useEffect)(()=>{let p=setTimeout(()=>{i(nl({text:o.text,suggestion:o}))},500);return()=>{clearTimeout(p)}},[o]),$p(l,"click",()=>{i(yt(t)),i(Re({suggestion:o,text:o.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let c=(0,Mo.useMemo)(()=>Bf(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:(0,Zt.jsxs)("div",{className:a.root,onMouseEnter:()=>i(yt(t)),children:[(0,Zt.jsx)(L,{ref:l,as:"button","data-testid":"suggestions-overlay-item",selected:e,onClick:Ff,children:(0,Zt.jsx)(Xp.Interweave,{containerTagName:"div",noWrap:!1,tagName:"span",className:a.formattedText,content:c})}),e&&n&&(0,Zt.jsx)("div",{className:a.actions,children:(0,Zt.jsx)(Ps,{onFeedback:()=>n(o),suggestion:o.text})})]})},Zp=Kf;var Hi=require("react/jsx-runtime"),Uf=({onFeedback:t,suggestions:e,selectedIndex:o,reverse:n})=>{let s=(0,tr.useMemo)(()=>{let r=e.map((i,a)=>(0,Hi.jsx)(Zp,{index:a,selected:a===o,suggestion:i,onFeedback:t},`${i.text}-${i.source}`));return n?r.reverse():r},[e,o,n]);return(0,Hi.jsx)(tr.Fragment,{children:s})},or=Uf;var Qp={root:"_root_otdbu_1",paper:"_paper_otdbu_11"};var Cn=require("react/jsx-runtime"),zf=({textSuggestions:t,selectedIndex:e})=>{let o=(0,nr.useRef)(null),n=y("InlineSuggestionsOverlay",Qp),s=(0,rt.useSelector)(Lo),r=(0,rt.useDispatch)(),i=(0,rt.useSelector)(ne),a=(0,rt.useSelector)(ao),l=(0,rt.useSelector)(zs),c=C("showTextSuggestions");return fo(()=>{r(bt({collapse:!0,skipWhenInputFocus:!0}))}),(0,nr.useEffect)(()=>{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:(0,Cn.jsx)("div",{className:n.root,"data-variant":"inline",children:(0,Cn.jsx)("div",{ref:o,className:n.paper,children:(0,Cn.jsx)(ue,{children:(0,Cn.jsx)(or,{suggestions:t,selectedIndex:e})})})})},jf=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),Jp=(0,rt.connect)(jf)(zf);var Yp=require("react-redux");var wn=require("react/jsx-runtime"),Vf=({children:t})=>{let o=C("locale").replace("-","");return(0,wn.jsx)(Jr.Provider,{value:o,children:t})},qf=({store:t,customStyles:e={},children:o})=>(0,wn.jsx)(Yp.Provider,{store:t,children:(0,wn.jsx)(Vf,{children:(0,wn.jsx)(Uo.Provider,{value:e,children:o})})}),Qt=qf;var rr=k(require("classnames")),No=require("react"),ze=require("react-redux");var ed=require("react");function td(t,e){let[o,n]=(0,ed.useState)(()=>{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)}}]}var nd=k(require("classnames")),it=require("react");var Bi={};$(Bi,{enUS:()=>Wf,nlNL:()=>$f});var Wf={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"}]}]},$f={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 od={root:"_root_1vfca_1",anchor:"_anchor_1vfca_6",anchorButton:"_anchorButton_1vfca_11"};var Tt=require("react/jsx-runtime"),Fi=(t,e,o)=>n=>(0,Tt.jsx)("button",{className:t.anchorButton,type:"button",value:e,onClick:o,children:n},e),Gf=({className:t,loginUrl:e,isEmbedded:o,onSnooze:n,onLogIn:s})=>{let r=T(Bi),i=be(),a=y("Login",od),l=C("productName"),c=(0,it.useCallback)(h=>{h.preventDefault(),n&&n(parseInt(h.target.value,10))},[]),p=(0,it.useCallback)(h=>{h.preventDefault(),i.send(Eo,!0)},[e]),d=(0,it.useMemo)(()=>h=>(0,Tt.jsx)("a",{onClick:x=>{x.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:h},"login"),[e]),g=(0,it.useCallback)(h=>(0,Tt.jsx)("button",{type:"button",className:a.anchorButton,onClick:p,children:h},"prompt"),[p]),{min:u,hour:m,day:f}=(0,it.useMemo)(()=>({min:Fi(a,60*10,c),hour:Fi(a,60*60,c),day:Fi(a,60*60*12,c)}),[]);return(0,Tt.jsxs)("div",{className:(0,nd.default)(t,a.root),children:[r("loginPlease",{login:o?g:d,productName:l}),n&&(0,Tt.jsxs)(it.Fragment,{children:[(0,Tt.jsx)("br",{}),r("snooze",{min:u,hour:m,day:f})]})]})},sr=Gf;var rd=require("react-redux");var sd={root:"_root_1g8fi_1",text:"_text_1g8fi_19"};var Tn=require("react/jsx-runtime"),Xf=({title:t})=>{let e=y("SearchTrigger",sd),o=(0,rd.useDispatch)();return(0,Tn.jsxs)("button",{type:"button",className:e.root,onClick:()=>o(te(!0)),children:[(0,Tn.jsx)(_o,{}),(0,Tn.jsx)("span",{className:e.text,children:t})]})},id=Xf;var Ki={};$(Ki,{enUS:()=>Zf,nlNL:()=>Qf});var Zf={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"}]},Qf={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 ad={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"};var F=require("react/jsx-runtime"),Jf=({textSuggestions:t,selectedIndex:e,onLogIn:o})=>{let n=y("SuggestionsOverlay",ad),s=T(Ki),r=(0,ze.useSelector)(Lo),i=Ja(),a=(0,ze.useDispatch)(),l=(0,No.useRef)(null),c=C("searchTriggerKey"),p=C("productName"),d=(0,ze.useSelector)(zs),g=(0,ze.useSelector)(ne),u=(0,ze.useSelector)(ao),[m,f]=(0,No.useState)(null),h=C("showSearch"),E=C("showTextSuggestions"),x=C("adminUrl"),_=C("isEmbedded"),[b,v]=td("dd-snooze-until-ms",0),A=d||b>Date.now(),O=(0,ze.useSelector)(I=>I.input.text),K=t.filter(I=>I.source!=="gpt").length,H=()=>{A&&v(0),a(Hc(!A))},W=I=>{a(Q({name:"suggestion feedback",data:{text:I.text,source:"overlay",context:O},options:{includeConversationData:!0}}))},z=I=>{let ye=Date.now()+I*1e3;v(ye),w.info(`Snooze until: ${new Date(ye)}`),a(bt({collapse:!0}))};return(0,No.useEffect)(()=>{K===0&&f(null)},[t,K]),fo(()=>{a(bt({collapse:!0,skipWhenInputFocus:!0}))}),g===null||u===!1?null:g===!1?(0,F.jsxs)("div",{ref:l,className:(0,rr.default)(n.root,{[n.isCollapsed]:A}),children:[!A&&(0,F.jsxs)("div",{className:n.triggers,children:[(0,F.jsx)("div",{style:{flex:1}}),(0,F.jsx)("div",{className:n.triggersRight,children:(0,F.jsx)(Mt,{className:n.toggleButton,title:s("collapse"),onClick:H,isCollapsed:!1})})]}),(0,F.jsx)("div",{className:n.toggleButtonWrapper,children:(0,F.jsx)(Mt,{className:n.toggleButton,title:s("open",{productName:p}),onClick:H,isCollapsed:!0})}),(0,F.jsx)("div",{className:n.collapsible,children:(0,F.jsx)(sr,{loginUrl:x,isEmbedded:_,onLogIn:o,onSnooze:z})})]}):!i||!r?null:(0,F.jsxs)("div",{ref:l,className:(0,rr.default)(n.root,{[n.isCollapsed]:A}),children:[!A&&(0,F.jsxs)("div",{className:n.triggers,children:[(0,F.jsx)("div",{style:{flex:1},children:h&&(0,F.jsx)("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>f(s(Ds()?"searchHintMac":"searchHintWindows",{searchTriggerKey:c.toUpperCase()})),onMouseLeave:()=>f(null),children:(0,F.jsx)(id,{title:s("search")})})}),(0,F.jsxs)("div",{className:n.triggersRight,onFocus:()=>{},children:[(0,F.jsx)("div",{className:(0,rr.default)(!m&&n.hintsHidden,n.hints),children:m}),(0,F.jsx)(Mt,{className:n.toggleButton,title:s("collapse"),onClick:H,isCollapsed:!1})]})]}),(0,F.jsx)("div",{className:n.toggleButtonWrapper,children:(0,F.jsx)(Mt,{className:n.toggleButton,title:s("open",{productName:p}),onClick:H,isCollapsed:!0})}),K>0&&E&&(0,F.jsx)("div",{className:n.collapsible,onFocus:()=>{},children:(0,F.jsx)(ue,{children:(0,F.jsx)(or,{onFeedback:W,suggestions:t,selectedIndex:e,reverse:!0})})})]})},Yf=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),ld=(0,ze.connect)(Yf)(Jf);var vr=k(require("classnames")),kd=require("interweave"),ct=require("react"),Id=require("react-redux");var cd=require("react"),eh=["div","span","mark","strong","b","i","u","em"];function Ui(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(eh.includes(s)){let i=Array.isArray(n.props.children)?n.props.children:[n.props.children];return[...t.slice(0,t.length-1),(0,cd.cloneElement)(n,{children:Ui(i,e,o+1)})]}return[...t,...e]}function Et(t){return t.tagName.toLowerCase()==="textarea"}var pd={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"};var Sd=k(require("classnames")),_d=require("interweave"),mr=require("react");function dd(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function ir(t){return e=>{t.forEach(o=>{typeof o=="function"?o(e):o!=null&&(o.current=e)})}}function ud(t){return t!=null}var ji=k(require("classnames")),Ce=require("react");var ar=require("react"),th=["bottom","height","left","right","top","width"],oh=(t={},e={})=>th.some(o=>t[o]!==e[o]),at=new Map,gd,md=()=>{let t=[],e=[];at.forEach((o,n)=>{if(n instanceof Element&&!n.isConnected){e.push(n);return}let s=n.getBoundingClientRect();oh(s,o.rect)&&(o.rect=s,t.push(o))}),e.forEach(o=>{at.delete(o)}),t.forEach(o=>{o.callbacks.forEach(n=>n(o.rect))}),gd=window.requestAnimationFrame(md)};function nh(t,e){return{observe(){let o=at.size===0;if(at.has(t)){let n=at.get(t);n.callbacks.push(e),n.rect&&e(n.rect)}else at.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});o&&md()},unobserve(){let o=at.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||at.delete(t),at.size||cancelAnimationFrame(gd)}}}}function zi(t){let[e,o]=(0,ar.useState)(null);return(0,ar.useLayoutEffect)(()=>{if(!t.current)return;let n=nh(t.current,s=>{o(s)});return n.observe(),()=>{n.unobserve()}},[t]),e}var Oo=require("react"),hd=require("react-dom");var fd={root:"_root_1jq08_1"};var yd=({children:t})=>{let[e,o]=(0,Oo.useState)(null),n=(0,Oo.useContext)(Uo);return(0,Oo.useLayoutEffect)(()=>{let s=document.createElement("div");return Dt(s),s.classList.add(fd.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?(0,hd.createPortal)(t,e):null};var je={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"};var lr=require("react/jsx-runtime"),cr=(t=!1)=>{let[e,o]=(0,Ce.useState)(t),n=(0,Ce.useCallback)(()=>o(!0),[]),s=(0,Ce.useCallback)(()=>o(!1),[]),r=(0,Ce.useCallback)(()=>o(a=>!a),[]),i=(0,Ce.useRef)(null);return{opened:e,open:n,close:s,toggle:r,triggerRef:i}};function Vi(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 pr=({className:t,triggerRef:e,boundaryRef:o=(0,Ce.createRef)(),position:n="above",align:s="center",children:r,toStyle:i=Vi,...a})=>{let l=zi(e),c=zi(o),p=(0,Ce.useMemo)(()=>i(l,c,0),[l,c]);return(0,lr.jsx)(yd,{children:(0,lr.jsx)("div",{className:(0,ji.default)(je.ref,{[je.positionAbove]:n==="above",[je.positionBelow]:n==="below",[je.positionLeft]:n==="left",[je.positionRight]:n==="right",[je.alignStart]:s==="start",[je.alignCenter]:s==="center",[je.alignEnd]:s==="end"}),style:p,...a,role:"dialog",children:(0,lr.jsx)("div",{className:(0,ji.default)(t,je.root),children:r})})})};var vd=k(require("classnames")),dr=require("react");var qi=require("react/jsx-runtime"),ur=(0,dr.forwardRef)(({className:t,children:e,...o},n)=>{let s=(0,dr.useRef)(null),r=y("TabCompletion",Ge);return(0,qi.jsx)("div",{ref:ir([s,n]),className:(0,vd.default)(t,r.popoverContentContainer),...o,children:(0,qi.jsx)("div",{className:r.popoverContent,children:e})})});var kt=require("react/jsx-runtime"),sh=t=>e=>{let o=Vi(e);return"top"in o&&(o.width=t.width-(e.left-t.left)-10),o},rh=({inputElement:t,boundaryRef:e,inputStyle:o,children:n,suggestion:s})=>{let r=y("TabCompletion",Ge),i=cr(),a=(0,mr.useMemo)(()=>sh(t.getBoundingClientRect()),[t]),[l,c]=bs(t);return(0,mr.useEffect)(()=>{c?i.open():i.close()},[c]),(0,kt.jsxs)("span",{children:[(0,kt.jsx)("mark",{ref:ir([l,i.triggerRef]),className:(0,Sd.default)(r.matchKeyword,{[r.hover]:c}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:n}),i.opened&&(0,kt.jsx)(pr,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:(0,kt.jsx)(ur,{style:o,children:(0,kt.jsx)("div",{className:r.hintText,children:s})})})]})},gr=class extends _d.Matcher{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${dd(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(ud);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(0,kt.jsx)(rh,{inputElement:o.inputElement,suggestion:o.suggestion,inputStyle:o.inputStyle,boundaryRef:o.boundaryRef,children:e},`keyword_${o.matchString}_${o.key}`)}asTag(){return"mark"}};var hr=k(require("classnames")),Td=require("interweave"),ie=require("react"),Ed=require("react-redux");var Wi=require("react/jsx-runtime"),xd=()=>(0,Wi.jsx)("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:(0,Wi.jsx)("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"})});var It=require("react"),En=require("react-redux"),Cd=k(require("lodash.debounce"));var bd={root:"_root_1muu8_1",content:"_content_1muu8_7"};function fr(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 $i(t){return t.replace("https://www.","").replace("https://","")}var we=require("react/jsx-runtime"),ih=3,ah=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),lh=({onSelectLink:t,onDismiss:e,placeholder:o,visitUrlText:n,linkCount:s=ih})=>{let r=y("LinkSearch",bd),[i,a]=(0,It.useState)(""),l=(0,En.useDispatch)(),c=(0,En.useSelector)(Ks("url")),p=(0,En.useSelector)(dc("URL",ah)),[d,g]=(0,It.useState)(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=(0,It.useCallback)((0,Cd.default)(x=>{l(jt({query:x,type:"URL",tags:["link-search"]}))},300),[]);return(0,It.useEffect)(()=>{i&&E(i)},[i]),(0,It.useEffect)(()=>()=>{l(Ns())},[]),(0,we.jsxs)("div",{className:r.root,children:[(0,we.jsx)(ue,{withDivider:!0,children:(i?p:c).slice(0,s).map((x,_)=>(0,we.jsx)(L,{selected:d===_,onClick:()=>t(x.text),"data-testid":"linksearch-suggestion",children:(0,we.jsxs)(D,{children:[(0,we.jsx)(D.Image,{src:fr(x,"small",u||void 0),title:x.title||x.text}),(0,we.jsxs)(D.Content,{className:r.content,cropText:!0,children:[(0,we.jsx)(D.Title,{children:x.title||$i(x.text)}),x.title&&$i(x.text)]}),(0,we.jsx)(L.Actions,{children:(0,we.jsx)(L.ActionButton,{label:n,onClick:b=>f(b,x.text)})})]})},x.text))}),(0,we.jsx)(gn,{value:i,onChange:m,autoFocus:!0,placeholder:o,onKeyUp:h})]})},wd=lh;var Gi={};$(Gi,{enUS:()=>ch,nlNL:()=>ph});var ch={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}]},ph={insertLink:[{type:0,value:"Voeg link toe"}],linkInputPlaceholder:[{type:0,value:"Zoek, typ of plak link"}],visitUrl:[{type:0,value:"Bekijk"}]};var re=require("react/jsx-runtime"),dh=(0,ie.forwardRef)((t,e)=>{let o=y("TabCompletion",Ge);return(0,re.jsx)("mark",{ref:e,className:(0,hr.default)(o.matchSelection)},"selection-start")}),uh=({startRef:t,boundaryRef:e,inputStyle:o,inputElement:n,children:s})=>{let r=T(Gi),i=y("TabCompletion",Ge),a=(0,ie.useRef)(null),l=(0,ie.useRef)(null),[c,p]=(0,ie.useState)(null),d=(0,Ed.useDispatch)(),g=cr(document.activeElement===n),[u]=(0,ie.useState)(()=>document.createRange());g.triggerRef.current=u,(0,ie.useEffect)(()=>()=>u.detach(),[]),(0,ie.useEffect)(()=>{let f=t.current,h=a.current;!f||!h||(u.setStart(f,0),u.setEnd(h,0))},[t.current,a.current]),fo(()=>{g.close()});let m=(0,ie.useCallback)(f=>{let h=u.toString(),E=/^http(s?):\/\//.test(f)?f:`https://${f}`;d(os({text:`[${h}](${E})`,replace:"selection"}))},[]);return(0,re.jsxs)("span",{children:[(0,re.jsx)("mark",{ref:a,className:(0,hr.default)(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":g.opened?"true":"false",children:s}),g.opened&&(0,re.jsx)(pr,{className:i.popoverRoot,triggerRef:g.triggerRef,boundaryRef:e,position:"above",align:"start",children:(0,re.jsxs)(ur,{style:o,ref:l,children:[(0,re.jsx)("div",{className:(0,hr.default)(i.selectionOptions,{[i.selectionOptionsIsHidden]:c!==null}),children:(0,re.jsxs)("button",{type:"button",tabIndex:c===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>p("insertLink"),children:[(0,re.jsx)(xd,{}),(0,re.jsx)("span",{children:"\xA0"}),(0,re.jsx)("span",{children:r("insertLink")})]})}),c==="insertLink"&&(0,re.jsx)(wd,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:m,onDismiss:()=>{p(null),g.close()}})]})})]},"selection-end")},yr=class extends Td.Matcher{charCount=0;foundIndex=0;startRef=null;props;onBeforeParse(e,o){return this.props=o,this.charCount=0,this.startRef=(0,ie.createRef)(),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?(0,re.jsx)(dh,{ref:this.startRef}):(0,re.jsx)(uh,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};var Rd=require("react-redux");var lt=require("react/jsx-runtime"),gh=({enabled:t,content:e,tabText:o,showTabHint:n,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:l})=>{let c=y("TabCompletion",pd),p=C("insertLink"),d=C("showMidSentenceSuggestions"),g=C("inlineSuggestions"),u=ws(a),m=(0,ct.useRef)(null),f=(0,Rd.useSelector)(ne);(0,ct.useEffect)(()=>{Et(a)&&u&&Ts(a,u)},[u]);let h=(0,ct.useCallback)(_=>{if(!s||!o)return _;let b=[(0,lt.jsx)("span",{className:c.resetIndent,children:"\u200B"},"u200B"),(0,lt.jsx)("span",{"data-testid":"tab-completion",className:(0,vr.default)(c.tabText,c.resetIndent),"data-source":l,children:o},"tabText")];return n&&b.push((0,lt.jsx)("span",{className:(0,vr.default)(c.hint,c.resetIndent),children:(0,lt.jsx)(Vn,{keyCode:"tab"},"tabHint")})),Ui(_,b)},[s,o,n]),E=(0,ct.useMemo)(()=>{let _=[];return p&&_.push(new yr("selection")),_.push(new go("placeholders")),r&&_.push(new gr("keywords")),_},[g,p,r]),x=(0,ct.useMemo)(()=>{let _=window.getComputedStyle(a);return{"--dd-color":_.color,"--dd-font-size":_.fontSize,"--dd-font-family":_.fontFamily,"--dd-font-variant":_.fontVariant}},[]);return!t||!f?null:(0,lt.jsxs)("div",{ref:_=>{_!=null&&_.parentElement&&(m.current=_==null?void 0:_.parentElement)},className:c.root,style:x,children:[(0,lt.jsx)(kd.Interweave,{tagName:"span",containerTagName:"div",className:(0,vr.default)(c.container,c.agentText),disableLineBreaks:Et(a),content:e||"\u200B",onAfterParse:h,matchers:E,selection:u,keywordMatches:i,inputElement:a,inputStyle:x,boundaryRef:m,inlineSuggestionsOnlyAtEnd:!d}),(0,lt.jsx)("br",{})]})},mh=({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??yo(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}},Pd=(0,Id.connect)(mh)(gh);var Cu=k(require("classnames")),wu=require("react"),X=require("react-redux");var Rt=require("@reduxjs/toolkit");var Ad={list:[],fetchState:"idle",isInitialRequest:null},Md=t=>t.autoflows.list||[],Ld=t=>e=>{var o;return(o=e.list)==null?void 0:o.find(n=>n.triggerPayload===t)},pt=(0,Rt.createAsyncThunk)("autoflows/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getAutoflows(t)}),Xi=(0,Rt.createAsyncThunk)("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(pt(t.platformSessionId))}),Zi=(0,Rt.createAsyncThunk)("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(pt(t.platformSessionId))}),fh=(0,Rt.createSlice)({name:"autoflows",initialState:Ad,reducers:{},extraReducers:t=>{t.addCase(Xi.pending,(e,o)=>{let n=Ld(o.meta.arg.triggerPayload)(e);n.state="Started",n.isBusy=!0}),t.addCase(Zi.pending,(e,o)=>{let n=Ld(o.meta.arg.triggerPayload)(e);n.state="Aborted",n.isBusy=!0}),t.addCase(pt.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}),t.addCase(pt.rejected,e=>{e.fetchState="error"}),t.addCase(pt.fulfilled,(e,o)=>{e.list=o.payload,e.fetchState="done"}),t.addCase(M,()=>Ad)}}),Nd=(0,Rt.createAsyncThunk)("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(pt(t))}),s.on("sessionCompleted",()=>{o(pt(t))})}),Od=(0,Rt.createAsyncThunk)("autoflows/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),Dd=fh.reducer;var Pt=require("@reduxjs/toolkit");var Hd={list:[],fetchState:"idle",isInitialRequest:null,sentSuggestions:[],errorSuggestions:[],answeredSuggestions:[]},Bd=t=>t.customMessages.list,Fd=t=>e=>!!e.customMessages.sentSuggestions.find(o=>o===t),Kd=t=>e=>!!e.customMessages.answeredSuggestions.find(o=>o===t),Ud=t=>e=>!!e.customMessages.errorSuggestions.find(o=>o===t),kn=(0,Pt.createAsyncThunk)("customMessages/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getCustomMessages(t)}),Sr=(0,Pt.createAsyncThunk)("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)}),_r=(0,Pt.createAsyncThunk)("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)}),zd=(0,Pt.createSlice)({name:"customMessages",initialState:Hd,reducers:{onCustomMessage(t,e){Array.isArray(e.payload)?t.list=e.payload:t.list=[e.payload]}},extraReducers:t=>{t.addCase(kn.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(kn.rejected,e=>{e.fetchState="error"}).addCase(kn.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload||[]}).addCase(Sr.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.errorSuggestions=e.errorSuggestions.filter(n=>o.meta.arg.suggestion.text!==n)}).addCase(Sr.rejected,(e,o)=>{let n=e.sentSuggestions.indexOf(o.meta.arg.suggestion.text);e.errorSuggestions.push(...e.sentSuggestions.splice(n,1))}).addCase(_r.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.answeredSuggestions.push(o.meta.arg.suggestion.text)}).addCase(_r.rejected,(e,o)=>{let n=e.answeredSuggestions.indexOf(o.meta.arg.suggestion.text);e.errorSuggestions.push(...e.sentSuggestions.splice(n,1)),e.answeredSuggestions.splice(n,1)}).addCase(M,()=>Hd)}}),jd=(0,Pt.createAsyncThunk)("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(zd.actions.onCustomMessage(r))})}),Vd=(0,Pt.createAsyncThunk)("customMessages/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),qd=zd.reducer;var In=require("@reduxjs/toolkit"),hh={token:null,accountUrl:null,interval:null},Wd=t=>e=>{let{passwordlessToken:{token:o,accountUrl:n}}=e;return o&&n?`${n}/apis/admin/session/passwordless/login/?token=${o}&redirect=${t}`:null},Qi=(0,In.createAsyncThunk)("passwordlessToken/getTemporaryPasswordlessToken",async(t,e)=>{let{deepdeskAPI:o}=e.extra,n=await o.requestPasswordlessToken();return{accountUrl:o.client.baseUrl,token:n}}),Ji=(0,In.createAsyncThunk)("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:o=1e3*60*10}=t,{dispatch:n}=e;return n(Qi()),setInterval(()=>n(Qi()),o)}),$d=(0,In.createSlice)({name:"passwordlessToken",initialState:hh,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Qi.fulfilled,(e,o)=>{e.token=o.payload.token,e.accountUrl=o.payload.accountUrl}),t.addCase(Ji.fulfilled,(e,o)=>{e.interval=o.payload})}}),{stopPollPasswordlessToken:Gd}=$d.actions,Xd=$d.reducer;function Zd(t){let{customMessages:e,autoflows:o}=t;return o.fetchState==="loading"&&o.isInitialRequest===!0||e.fetchState==="loading"&&e.isInitialRequest===!0}var ru=require("react"),iu=require("react-redux");var ou=k(require("classnames")),nu=require("react");var Jd=k(require("classnames"));var Qd={root:"_root_838fd_1"};var eu=require("react/jsx-runtime"),yh=({className:t,children:e})=>{let o=y("Unicode",Qd);return(0,eu.jsx)("span",{className:(0,Jd.default)(t,o.root),children:e})},Yd=yh;var tu={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 Yi={};$(Yi,{enUS:()=>vh,nlNL:()=>Sh});var vh={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"}]},Sh={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"}]};var fe=require("react/jsx-runtime"),xh=({disabled:t,state:e,displayName:o,description:n,onStartAutoflow:s,onStopAutoflow:r})=>{let i=y("Autoflow",tu),a=T(Yi),l=e==="Started"?"stop":"start",c=l==="start"?"\u25B6":l==="stop"?"\u25FC":"";return(0,fe.jsxs)(L,{className:(0,ou.default)(i.root,{[i.isDisabled]:t,[i.isCompleted]:e==="Completed",[i.isAborted]:e==="Aborted",[i.isStarted]:e==="Started"}),children:[(0,fe.jsx)(D,{children:(0,fe.jsxs)(D.Content,{children:[(0,fe.jsxs)(D.Title,{children:[e&&(0,fe.jsx)("span",{className:i.stateBadge,children:a(e)}),o]}),(0,fe.jsx)("span",{children:n})]})}),(0,fe.jsx)(L.Actions,{fixed:e==="Started",children:(0,fe.jsx)(L.ActionButton,{primary:!0,className:l==="start"?i.buttonStart:i.buttonStop,onClick:e==="Started"?r:s,disabled:t,label:(0,fe.jsxs)(nu.Fragment,{children:[(0,fe.jsx)(Yd,{children:c})," ",(0,fe.jsx)("span",{children:a(l)})]})})})]})},su=xh;var ea=require("react/jsx-runtime"),bh=(t,e)=>{let o=e.filter(n=>n.state==="Started");return o.length>0?o.indexOf(t)===-1:!1},Ch=({autoflows:t,onStartAutoflow:e,onStopAutoflow:o,platformSessionId:n})=>(0,ea.jsx)(ru.Fragment,{children:t.map(s=>(0,ea.jsx)(su,{displayName:s.displayName,description:s.description,disabled:s.isBusy||bh(s,t),state:s.state,onStartAutoflow:()=>e({platformSessionId:n,triggerPayload:s.triggerPayload}),onStopAutoflow:()=>o({platformSessionId:n,triggerPayload:s.triggerPayload})},s.displayName))}),wh=({autoflows:t,conversation:e})=>{var o;return{autoflows:t.list,platformSessionId:(o=e.current)==null?void 0:o.sessionId}},Th={onStartAutoflow:Xi,onStopAutoflow:Zi},au=(0,iu.connect)(wh,Th)(Ch);var lu=k(require("classnames")),ta=require("react"),Jt=require("react-redux");var dt={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"};var pe=require("react/jsx-runtime"),Eh=({suggestion:t})=>{let e=T(Ut),o=(0,Jt.useDispatch)(),n=(0,Jt.useSelector)(Fd(t.text)),s=(0,Jt.useSelector)(Kd(t.text)),r=(0,Jt.useSelector)(Ud(t.text)),i=(0,Jt.useSelector)(Gn),{replyOptions:a}=t,l=(0,ta.useCallback)(p=>{p.preventDefault(),p.stopPropagation(),!(n||!i)&&o(Sr({platformSessionId:i,suggestion:t}))},[t,n,o,i]),c=(0,ta.useCallback)(p=>{if(p.preventDefault(),p.stopPropagation(),!i||!a)return;let d=parseInt(p.target.dataset.index,10),g=a[d];o(_r({platformSessionId:i,reply:g,suggestion:t}))},[t,n,o,i]);return(0,pe.jsxs)(L,{onClick:l,className:(0,lu.default)(dt.root,{[dt.isUsed]:n,[dt.hasError]:r}),children:[(0,pe.jsx)(D,{children:(0,pe.jsxs)(D.Content,{children:[(0,pe.jsxs)(D.Title,{className:dt.title,children:[t.text," ",(0,pe.jsx)(qn,{className:dt.label,children:"analyse tool"})," ",r&&(0,pe.jsx)("span",{className:dt.errorIcon,role:"img","aria-label":e("sendingError"),title:e("sendingError"),children:"!"})]}),a&&a.length>0&&(0,pe.jsx)("ul",{className:dt.quickReplies,children:a.map(p=>(0,pe.jsx)("li",{className:dt.quickReply,children:p.title},p.title))})]})}),(0,pe.jsxs)(L.Actions,{fixed:r||n,children:[a&&a.length>0&&(0,pe.jsx)(L.DropdownButton,{label:e("answer"),disabled:s,children:a.map((p,d)=>(0,pe.jsx)(L.DropdownItem,{index:d,label:p.title,onClick:c},p.title))}),(0,pe.jsx)(L.ActionButton,{primary:!0,disabled:n,onClick:l,label:e(n?"suggestionSent":r?"tryAgain":"sendSuggestion")})]})]})},cu=Eh;var xr=require("react"),du=require("react-redux"),sa=k(require("classnames"));var oa=require("react/jsx-runtime"),na=()=>(0,oa.jsx)("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:(0,oa.jsx)("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 pu={root:"_root_rjdyr_1",entity:"_entity_rjdyr_10",entityText:"_entityText_rjdyr_46",iconWrapper:"_iconWrapper_rjdyr_53",icon:"_icon_rjdyr_53",iconClicked:"_iconClicked_rjdyr_67"};var Ve=require("react/jsx-runtime"),kh=({entities:t})=>{let e=y("EntitiesWidgetList",pu),[o,n]=(0,xr.useState)(void 0),s=(0,du.useDispatch)(),r=()=>{n(void 0)},i=a=>{t&&(n(t.indexOf(a)),fn(a.text),s(Q({name:"entity copied",data:{entity:a,type:"copy"}})))};return(0,xr.useEffect)(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[o]),!t||t.length===0?null:(0,Ve.jsx)("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,l)=>(0,Ve.jsxs)("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[(0,Ve.jsx)("span",{className:e.entityText,children:a.text}),(0,Ve.jsxs)("span",{className:e.iconWrapper,children:[(0,Ve.jsx)("span",{className:(0,sa.default)(e.icon),children:(0,Ve.jsx)(na,{})}),(0,Ve.jsx)("span",{className:(0,sa.default)(e.icon,o===l&&e.iconClicked),children:(0,Ve.jsx)(na,{})})]})]},a.text))})},uu=kh;var ra=require("react/jsx-runtime"),gu=()=>(0,ra.jsx)("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:(0,ra.jsx)("path",{d:"M17 13.5v6H5v-12h6m3-3h6v6m0-6-9 9",stroke:"currentColor",strokeWidth:"1.5",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"})});var ia=require("react/jsx-runtime"),mu=()=>(0,ia.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:(0,ia.jsx)("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"})});var aa=require("react/jsx-runtime"),fu=()=>(0,aa.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:(0,aa.jsx)("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"})});var br=require("react");var la={};$(la,{enUS:()=>Ih,nlNL:()=>Rh});var Ih={copyCue:[{type:0,value:"Copy"}],copiedCue:[{type:0,value:"Copied!"}],removeCue:[{type:0,value:"Close"}]},Rh={copyCue:[{type:0,value:"Kopieer"}],copiedCue:[{type:0,value:"Gekopieerd!"}],removeCue:[{type:0,value:"Sluiten"}]};var ut=require("react/jsx-runtime"),Ph=({cue:t,onRemove:e,onCopy:o})=>{let n=T(la),[s,r]=(0,br.useState)(!1),i=l=>{l.preventDefault(),l.stopPropagation(),o&&(o(t.text),r(!0))},a=l=>{l.preventDefault(),l.stopPropagation(),e&&e(t.id)};return(0,br.useEffect)(()=>{if(!s)return;let l=setTimeout(()=>{r(!1)},1e3);return()=>{clearTimeout(l)}},[s]),(0,ut.jsx)(L,{"data-testid":"cue",children:(0,ut.jsxs)(D,{children:[(0,ut.jsxs)(D.Content,{children:[t.title&&(0,ut.jsx)(D.Title,{"data-testid":"widget-cue-title",children:t.title}),t.text]}),(0,ut.jsx)(L.Actions,{children:o&&(0,ut.jsx)(L.ActionButton,{primary:!0,onClick:i,label:n(s?"copiedCue":"copyCue")})}),(0,ut.jsx)(D.CloseIcon,{title:n("removeCue"),onClick:a})]})})},hu=Ph;var Rn=require("react/jsx-runtime"),Ah=({cues:t,onCopyCue:e,onRemoveCue:o})=>(0,Rn.jsx)(Rn.Fragment,{children:t.map(n=>(0,Rn.jsx)(hu,{cue:n,onRemove:o,onCopy:e},`${n.id}_${n.timestamp}`))}),yu=Ah;var _u=require("react-redux");var vu=require("react");var he=require("react/jsx-runtime"),Lh=({suggestion:t,lines:e,onEdit:o,onUse:n})=>{var g;let s=t.text||t.url||t.message,r=Os(s),i=T(Ut),a=C("showImages"),l=C("fallbackImage"),c=u=>{u.preventDefault(),u.stopPropagation(),n(s)},p=u=>{u.preventDefault(),u.stopPropagation(),o(t)},d=(0,vu.useCallback)(u=>{window.open(r,"_blank"),u.stopPropagation(),u.preventDefault()},[r]);return(0,he.jsxs)(L,{onClick:c,"data-testid":"edit-suggestion",children:[(0,he.jsxs)(D,{children:[a&&t.image&&(0,he.jsx)(D.Image,{src:fr(t,"small",l||void 0),title:t.title}),(0,he.jsxs)(D.Content,{children:[t.title&&(0,he.jsx)(D.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((g=t.searchKeywords)==null?void 0:g.length)>0&&(0,he.jsx)(L.Labels,{labels:t.searchKeywords}),(0,he.jsx)(D.Content,{cropText:e==="single",lineClamp:e==="multiple",children:s})]})]}),(0,he.jsxs)(L.Actions,{children:[r&&(0,he.jsx)(L.ActionButton,{onClick:d,label:i("visitUrl")}),(0,he.jsx)(L.ActionButton,{primary:!0,onClick:p,label:i("preview")}),(0,he.jsx)(L.ActionButton,{primary:!0,onClick:c,label:i("useSuggestion")})]})]})},Su=Lh;var Pn=require("react/jsx-runtime"),Mh=({contentType:t,lines:e,suggestions:o})=>{let n=be(),s=(0,_u.useSelector)(xt),r=a=>{n.send(wi,{state:s,suggestion:a,contentType:t})},i=(a,l)=>{n.send(ot,{text:a,suggestion:{...l,source:l.source,sourceText:l.text}})};return(0,Pn.jsx)(Pn.Fragment,{children:o.map(a=>(0,Pn.jsx)(Su,{suggestion:a,lines:e,onEdit:l=>r(l),onUse:l=>i(l,a)},a.text||a.url||a.message))})},xu=Mh;var ca={};$(ca,{enUS:()=>Nh,nlNL:()=>Oh});var Nh={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"}]},Oh={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 bu={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"};var R=require("react/jsx-runtime"),Cr=(t,e)=>{let o=(0,X.useSelector)(ne);(0,wu.useEffect)(()=>o?e.every(n=>!!n)?t():()=>{}:()=>{},[...e,o])},Dh=({onLogIn:t})=>{let e=T(ca),o=(0,X.useDispatch)(),n=C("isEmbedded"),s=y("Widget",bu),r=C("showAutoflows"),i=C("showCustomMessages"),a=C("showSummaryCommand"),l=C("showKnowledgeSearch"),c=C("showSearch"),p=(0,X.useSelector)(wt),d=(0,X.useSelector)(Js),g=(0,X.useSelector)(Md),u=(0,X.useSelector)(Gc),m=(0,X.useSelector)($s),f=(0,X.useSelector)(Bd),h=(0,X.useSelector)(Xn),E=(0,X.useSelector)(ao),x=(0,X.useSelector)(ne),_=(0,X.useSelector)(Gn),b=(0,X.useSelector)(Zd),v=(0,X.useSelector)(xt),A=be(),O=(0,X.useSelector)(bc),K=(0,X.useSelector)(Wd("/admin/")),H=C("adminUrl"),W=C("productName");if(Cr(()=>(o(kn(_)),o(jd(_)),()=>{o(Vd(_))}),[o,E,i,_]),Cr(()=>(o(pt(_)),o(Nd(_)),()=>{o(Od(_))}),[o,E,r,_]),Cr(()=>{d.forEach(({type:I})=>{o(I==="entities"?Ne():Le(I))})},[o,E,h,p]),Cr(()=>(o(Ji()),()=>{o(Gd())}),[o]),E===!1)return(0,R.jsx)("div",{className:s.stateText,children:(0,R.jsx)("div",{children:(0,R.jsx)("p",{children:e("notSupported")})})},"supported");if(x===!1)return(0,R.jsx)("div",{className:s.loginText,children:(0,R.jsx)("div",{children:(0,R.jsx)(sr,{isEmbedded:n,loginUrl:H,onLogIn:t})})},"login");if(!p||!_||x===null||O||b)return(0,R.jsx)("div",{className:s.stateText,children:(0,R.jsx)("div",{children:(0,R.jsx)("p",{children:e("waiting")})})},"waiting");let z=c||a||l||K;return(0,R.jsx)("div",{className:(0,Cu.default)(s.root),"data-testid":"widget",children:(0,R.jsxs)(Wn,{className:s.sectionList,children:[z&&(0,R.jsx)(We,{title:e("actions"),type:"shortcuts",children:(0,R.jsxs)("div",{className:s.shortcutList,children:[c&&(0,R.jsxs)("button",{className:s.shortcut,"data-testid":"shortcut-search",onClick:()=>A.send("ShowCommandPalette",{isOpen:!0}),children:[(0,R.jsx)(_o,{}),e("linkSearch")]}),a&&(0,R.jsxs)("button",{className:s.shortcut,"data-testid":"shortcut-summary",onClick:()=>A.send("ShowCommandPalette",{isOpen:!0,page:"summary"}),children:[(0,R.jsx)(fu,{}),e("linkSummary")]}),l&&(0,R.jsxs)("button",{className:s.shortcut,"data-testid":"shortcut-knowledge-assist",onClick:()=>A.send("ShowCommandPalette",{isOpen:!0,page:"knowledgeAssist"}),children:[(0,R.jsx)(mu,{}),e("linkKnowledgeSearch")]}),K&&(0,R.jsxs)("a",{className:s.shortcut,target:"_blank",href:K,"data-testid":"shortcut-studio-login",rel:"noreferrer",children:[(0,R.jsx)(gu,{}),e("linkStudioLogin",{productName:W})]})]})}),i&&f.length>0&&(0,R.jsx)(We,{type:"custom-messages","data-testid":"custom-messages",children:(0,R.jsx)(ue,{withDivider:!0,children:f.map(I=>(0,R.jsx)(cu,{suggestion:I},I.text))})}),r&&g.length>0&&(0,R.jsx)(We,{type:"autoflows",title:e("titleAutoflows"),"data-testid":"autoflows",children:(0,R.jsx)(ue,{withDivider:!0,children:(0,R.jsx)(au,{})})}),d.map(({type:I,title:ye,amount:Mr,lines:Fo})=>{var Ko;switch(I){case"entities":return m&&m.length>0&&(0,R.jsx)(We,{type:I,title:ye,"data-testid":`type-${I}`,children:(0,R.jsx)(uu,{entities:m})},I);case"cues":return u&&u.length>0&&(0,R.jsx)(We,{type:I,title:ye,"data-testid":`type-${I}`,children:(0,R.jsx)(ue,{withDivider:!0,children:(0,R.jsx)(yu,{cues:u,onRemoveCue:to=>o(Zc({id:to}))})})},I);default:return((Ko=v[I])==null?void 0:Ko.fetchState)==="done"&&v[I].suggestions.length>0&&(0,R.jsx)(We,{type:I,title:ye,"data-testid":`type-${I}`,children:(0,R.jsx)(ue,{withDivider:!0,children:(0,R.jsx)(xu,{lines:Fo,contentType:I,suggestions:v[I].suggestions.slice(0,Mr)||[]})})},I)}})]})})},Tu=Dh;function Do(t){let e=new Range;return e.selectNodeContents(t),e}function Eu(t,e,o){try{return At(t,e,o),!0}catch{return!1}}function wr(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function Tr(t){return"tagName"in t&&t.tagName==="BR"}var An=/[\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(An,""),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(Tr(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;wr(l)&&c&&!wr(c)&&!Tr(c)&&s++;break}default:break}}if(a(t),n.startContainer===document)throw new Error("Offsets out of bound");return n}function Ln(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(An,"").length),u&&(l=c+m.substring(0,r).replace(An,"").length),c+=m.replace(An,"").length;break}case Node.ELEMENT_NODE:{let m=d.nextSibling===null;Tr(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&&wr(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 Mn(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(An,"");g===0&&u===void 0?a+=m:a+=m.substring(g,u);break}case Node.ELEMENT_NODE:{let g=c.nextSibling===null;i===0&&Tr(c)&&!g&&(a+=`
|
|
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`})})});var Oi=require("react/jsx-runtime"),Mf={green:"#0A5E52",pink:"#CD8EF2",red:"#DF341D",yellow:"#DEBD00"},Kp=({className:t,color:e})=>(0,Oi.jsx)("svg",{className:t,viewBox:"0 0 345 345",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:(0,Oi.jsx)("path",{d:"M172.03 0.0199966H0V86.03C47.5 86.03 86 124.54 86 172.04C86 124.54 124.51 86.03 172.01 86.03C219.51 86.03 258.03 124.54 258.03 172.04C258.03 219.54 219.52 258.05 172.01 258.05C124.5 258.05 86 219.54 86 172.04C86 219.54 47.5 258.05 0 258.05V344.06H172.03C267.04 344.06 344.06 267.04 344.06 172.03C344.06 77.02 267.04 0 172.03 0V0.0199966Z",fill:Mf[e||"pink"]})});var Up={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 Di={};$(Di,{enUS:()=>Nf,nlNL:()=>Of});var Nf={signin:[{type:0,value:"Sign in to "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Search"}]},Of={signin:[{type:0,value:"Log in bij "},{type:1,value:"productName"}],search:[{type:1,value:"productName"},{type:0,value:" Zoeken"}]};var Vp=require("react-redux"),Xt=require("react/jsx-runtime"),qp=({onLogIn:t})=>{let e=T(Di),o=C("floatingMenu"),n=C("productName"),s=(0,Vp.useDispatch)(),r=(0,jp.useSelector)(ne),i=y("FloatingMenu",Up);if(r===null||o===!1)return null;let a=()=>{r===!0?s(te(!0)):t()};return(0,Xt.jsxs)("button",{className:(0,zp.default)(i.root,{[i.isLoggedIn]:r,[i.isLoggedOut]:!r}),onClick:a,children:[(0,Xt.jsx)("div",{className:i.text,children:e(r?"search":"signin",{productName:n})}),(0,Xt.jsxs)("div",{className:i.icon,children:[(0,Xt.jsx)(Kp,{className:i.logo,color:"pink"}),r===!1&&(0,Xt.jsx)(Fp,{className:i.lock})]})]})};var nr=require("react"),rt=require("react-redux");function Lo(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}var tr=require("react");var Xp=require("interweave"),Mo=require("react"),er=require("react-redux");var Wp=require("react");function $p(t,e,o){(0,Wp.useEffect)(()=>{let n=t.current;return n?(n.addEventListener(e,o),()=>{n.removeEventListener(e,o)}):()=>{}},[t,e,o])}var Gp={root:"_root_4u430_1",actions:"_actions_4u430_8",badge:"_badge_4u430_15",formattedText:"_formattedText_4u430_19"};var Zt=require("react/jsx-runtime"),Hf=["search","personal-collection-search","search-autocomplete"];function Bf(t,e,o,n={}){let s="";return Hf.includes(e)?s=Fl(ai(t,o,{stripAgentPart:!0}),n.searchKeywords??[o]):s=ai(t,o,n),n.placeholders===!0&&(s=Kl(s)),s}var Ff=()=>{},Kf=({index:t,selected:e,suggestion:o,onFeedback:n})=>{let s=C("inlineSuggestions"),r=(0,er.useSelector)(lo),i=(0,er.useDispatch)(),a=y("TextSuggestion",Gp),l=(0,Mo.useRef)(null);(0,Mo.useEffect)(()=>{let p=setTimeout(()=>{i(nl({text:o.text,suggestion:o}))},500);return()=>{clearTimeout(p)}},[o]),$p(l,"click",()=>{i(yt(t)),i(Re({suggestion:o,text:o.text,eventMetrics:{inputType:"mouse"},replace:"until-selection-end"}))});let c=(0,Mo.useMemo)(()=>Bf(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:(0,Zt.jsxs)("div",{className:a.root,onMouseEnter:()=>i(yt(t)),children:[(0,Zt.jsx)(L,{ref:l,as:"button","data-testid":"suggestions-overlay-item",selected:e,onClick:Ff,children:(0,Zt.jsx)(Xp.Interweave,{containerTagName:"div",noWrap:!1,tagName:"span",className:a.formattedText,content:c})}),e&&n&&(0,Zt.jsx)("div",{className:a.actions,children:(0,Zt.jsx)(Ps,{onFeedback:()=>n(o),suggestion:o.text})})]})},Zp=Kf;var Hi=require("react/jsx-runtime"),Uf=({onFeedback:t,suggestions:e,selectedIndex:o,reverse:n})=>{let s=(0,tr.useMemo)(()=>{let r=e.map((i,a)=>(0,Hi.jsx)(Zp,{index:a,selected:a===o,suggestion:i,onFeedback:t},`${i.text}-${i.source}`));return n?r.reverse():r},[e,o,n]);return(0,Hi.jsx)(tr.Fragment,{children:s})},or=Uf;var Qp={root:"_root_otdbu_1",paper:"_paper_otdbu_11"};var Cn=require("react/jsx-runtime"),zf=({textSuggestions:t,selectedIndex:e})=>{let o=(0,nr.useRef)(null),n=y("InlineSuggestionsOverlay",Qp),s=(0,rt.useSelector)(Lo),r=(0,rt.useDispatch)(),i=(0,rt.useSelector)(ne),a=(0,rt.useSelector)(ao),l=(0,rt.useSelector)(zs),c=C("showTextSuggestions");return fo(()=>{setTimeout(()=>{r(bt({collapse:!0,skipWhenInputFocus:!0}))})}),(0,nr.useEffect)(()=>{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:(0,Cn.jsx)("div",{className:n.root,"data-variant":"inline",children:(0,Cn.jsx)("div",{ref:o,className:n.paper,children:(0,Cn.jsx)(ue,{children:(0,Cn.jsx)(or,{suggestions:t,selectedIndex:e})})})})},jf=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),Jp=(0,rt.connect)(jf)(zf);var Yp=require("react-redux");var wn=require("react/jsx-runtime"),Vf=({children:t})=>{let o=C("locale").replace("-","");return(0,wn.jsx)(Jr.Provider,{value:o,children:t})},qf=({store:t,customStyles:e={},children:o})=>(0,wn.jsx)(Yp.Provider,{store:t,children:(0,wn.jsx)(Vf,{children:(0,wn.jsx)(Uo.Provider,{value:e,children:o})})}),Qt=qf;var rr=k(require("classnames")),No=require("react"),ze=require("react-redux");var ed=require("react");function td(t,e){let[o,n]=(0,ed.useState)(()=>{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)}}]}var nd=k(require("classnames")),it=require("react");var Bi={};$(Bi,{enUS:()=>Wf,nlNL:()=>$f});var Wf={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"}]}]},$f={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 od={root:"_root_1vfca_1",anchor:"_anchor_1vfca_6",anchorButton:"_anchorButton_1vfca_11"};var Tt=require("react/jsx-runtime"),Fi=(t,e,o)=>n=>(0,Tt.jsx)("button",{className:t.anchorButton,type:"button",value:e,onClick:o,children:n},e),Gf=({className:t,loginUrl:e,isEmbedded:o,onSnooze:n,onLogIn:s})=>{let r=T(Bi),i=be(),a=y("Login",od),l=C("productName"),c=(0,it.useCallback)(h=>{h.preventDefault(),n&&n(parseInt(h.target.value,10))},[]),p=(0,it.useCallback)(h=>{h.preventDefault(),i.send(Eo,!0)},[e]),d=(0,it.useMemo)(()=>h=>(0,Tt.jsx)("a",{onClick:x=>{x.preventDefault(),s()},href:e,className:a.anchor,target:"_blank",rel:"noreferrer",children:h},"login"),[e]),g=(0,it.useCallback)(h=>(0,Tt.jsx)("button",{type:"button",className:a.anchorButton,onClick:p,children:h},"prompt"),[p]),{min:u,hour:m,day:f}=(0,it.useMemo)(()=>({min:Fi(a,60*10,c),hour:Fi(a,60*60,c),day:Fi(a,60*60*12,c)}),[]);return(0,Tt.jsxs)("div",{className:(0,nd.default)(t,a.root),children:[r("loginPlease",{login:o?g:d,productName:l}),n&&(0,Tt.jsxs)(it.Fragment,{children:[(0,Tt.jsx)("br",{}),r("snooze",{min:u,hour:m,day:f})]})]})},sr=Gf;var rd=require("react-redux");var sd={root:"_root_1g8fi_1",text:"_text_1g8fi_19"};var Tn=require("react/jsx-runtime"),Xf=({title:t})=>{let e=y("SearchTrigger",sd),o=(0,rd.useDispatch)();return(0,Tn.jsxs)("button",{type:"button",className:e.root,onClick:()=>o(te(!0)),children:[(0,Tn.jsx)(_o,{}),(0,Tn.jsx)("span",{className:e.text,children:t})]})},id=Xf;var Ki={};$(Ki,{enUS:()=>Zf,nlNL:()=>Qf});var Zf={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"}]},Qf={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 ad={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"};var F=require("react/jsx-runtime"),Jf=({textSuggestions:t,selectedIndex:e,onLogIn:o})=>{let n=y("SuggestionsOverlay",ad),s=T(Ki),r=(0,ze.useSelector)(Lo),i=Ja(),a=(0,ze.useDispatch)(),l=(0,No.useRef)(null),c=C("searchTriggerKey"),p=C("productName"),d=(0,ze.useSelector)(zs),g=(0,ze.useSelector)(ne),u=(0,ze.useSelector)(ao),[m,f]=(0,No.useState)(null),h=C("showSearch"),E=C("showTextSuggestions"),x=C("adminUrl"),_=C("isEmbedded"),[b,v]=td("dd-snooze-until-ms",0),A=d||b>Date.now(),O=(0,ze.useSelector)(I=>I.input.text),K=t.filter(I=>I.source!=="gpt").length,H=()=>{A&&v(0),a(Hc(!A))},W=I=>{a(Q({name:"suggestion feedback",data:{text:I.text,source:"overlay",context:O},options:{includeConversationData:!0}}))},z=I=>{let ye=Date.now()+I*1e3;v(ye),w.info(`Snooze until: ${new Date(ye)}`),a(bt({collapse:!0}))};return(0,No.useEffect)(()=>{K===0&&f(null)},[t,K]),fo(()=>{a(bt({collapse:!0,skipWhenInputFocus:!0}))}),g===null||u===!1?null:g===!1?(0,F.jsxs)("div",{ref:l,className:(0,rr.default)(n.root,{[n.isCollapsed]:A}),children:[!A&&(0,F.jsxs)("div",{className:n.triggers,children:[(0,F.jsx)("div",{style:{flex:1}}),(0,F.jsx)("div",{className:n.triggersRight,children:(0,F.jsx)(Mt,{className:n.toggleButton,title:s("collapse"),onClick:H,isCollapsed:!1})})]}),(0,F.jsx)("div",{className:n.toggleButtonWrapper,children:(0,F.jsx)(Mt,{className:n.toggleButton,title:s("open",{productName:p}),onClick:H,isCollapsed:!0})}),(0,F.jsx)("div",{className:n.collapsible,children:(0,F.jsx)(sr,{loginUrl:x,isEmbedded:_,onLogIn:o,onSnooze:z})})]}):!i||!r?null:(0,F.jsxs)("div",{ref:l,className:(0,rr.default)(n.root,{[n.isCollapsed]:A}),children:[!A&&(0,F.jsxs)("div",{className:n.triggers,children:[(0,F.jsx)("div",{style:{flex:1},children:h&&(0,F.jsx)("div",{style:{display:"inline-block"},onFocus:()=>{},onMouseOver:()=>f(s(Ds()?"searchHintMac":"searchHintWindows",{searchTriggerKey:c.toUpperCase()})),onMouseLeave:()=>f(null),children:(0,F.jsx)(id,{title:s("search")})})}),(0,F.jsxs)("div",{className:n.triggersRight,onFocus:()=>{},children:[(0,F.jsx)("div",{className:(0,rr.default)(!m&&n.hintsHidden,n.hints),children:m}),(0,F.jsx)(Mt,{className:n.toggleButton,title:s("collapse"),onClick:H,isCollapsed:!1})]})]}),(0,F.jsx)("div",{className:n.toggleButtonWrapper,children:(0,F.jsx)(Mt,{className:n.toggleButton,title:s("open",{productName:p}),onClick:H,isCollapsed:!0})}),K>0&&E&&(0,F.jsx)("div",{className:n.collapsible,onFocus:()=>{},children:(0,F.jsx)(ue,{children:(0,F.jsx)(or,{onFeedback:W,suggestions:t,selectedIndex:e,reverse:!0})})})]})},Yf=({input:t})=>({selectedIndex:t.selectedSuggestionIndex,textSuggestions:t.textSuggestions}),ld=(0,ze.connect)(Yf)(Jf);var vr=k(require("classnames")),kd=require("interweave"),ct=require("react"),Id=require("react-redux");var cd=require("react"),eh=["div","span","mark","strong","b","i","u","em"];function Ui(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(eh.includes(s)){let i=Array.isArray(n.props.children)?n.props.children:[n.props.children];return[...t.slice(0,t.length-1),(0,cd.cloneElement)(n,{children:Ui(i,e,o+1)})]}return[...t,...e]}function Et(t){return t.tagName.toLowerCase()==="textarea"}var pd={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"};var Sd=k(require("classnames")),_d=require("interweave"),mr=require("react");function dd(t){return t.replace(/[.*+^${}()|[\]\\]/g,"\\$&")}function ir(t){return e=>{t.forEach(o=>{typeof o=="function"?o(e):o!=null&&(o.current=e)})}}function ud(t){return t!=null}var ji=k(require("classnames")),Ce=require("react");var ar=require("react"),th=["bottom","height","left","right","top","width"],oh=(t={},e={})=>th.some(o=>t[o]!==e[o]),at=new Map,gd,md=()=>{let t=[],e=[];at.forEach((o,n)=>{if(n instanceof Element&&!n.isConnected){e.push(n);return}let s=n.getBoundingClientRect();oh(s,o.rect)&&(o.rect=s,t.push(o))}),e.forEach(o=>{at.delete(o)}),t.forEach(o=>{o.callbacks.forEach(n=>n(o.rect))}),gd=window.requestAnimationFrame(md)};function nh(t,e){return{observe(){let o=at.size===0;if(at.has(t)){let n=at.get(t);n.callbacks.push(e),n.rect&&e(n.rect)}else at.set(t,{rect:void 0,hasRectChanged:!1,callbacks:[e]});o&&md()},unobserve(){let o=at.get(t);if(o){let n=o.callbacks.indexOf(e);n>=0&&o.callbacks.splice(n,1),o.callbacks.length||at.delete(t),at.size||cancelAnimationFrame(gd)}}}}function zi(t){let[e,o]=(0,ar.useState)(null);return(0,ar.useLayoutEffect)(()=>{if(!t.current)return;let n=nh(t.current,s=>{o(s)});return n.observe(),()=>{n.unobserve()}},[t]),e}var Oo=require("react"),hd=require("react-dom");var fd={root:"_root_1jq08_1"};var yd=({children:t})=>{let[e,o]=(0,Oo.useState)(null),n=(0,Oo.useContext)(Uo);return(0,Oo.useLayoutEffect)(()=>{let s=document.createElement("div");return Dt(s),s.classList.add(fd.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?(0,hd.createPortal)(t,e):null};var je={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"};var lr=require("react/jsx-runtime"),cr=(t=!1)=>{let[e,o]=(0,Ce.useState)(t),n=(0,Ce.useCallback)(()=>o(!0),[]),s=(0,Ce.useCallback)(()=>o(!1),[]),r=(0,Ce.useCallback)(()=>o(a=>!a),[]),i=(0,Ce.useRef)(null);return{opened:e,open:n,close:s,toggle:r,triggerRef:i}};function Vi(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 pr=({className:t,triggerRef:e,boundaryRef:o=(0,Ce.createRef)(),position:n="above",align:s="center",children:r,toStyle:i=Vi,...a})=>{let l=zi(e),c=zi(o),p=(0,Ce.useMemo)(()=>i(l,c,0),[l,c]);return(0,lr.jsx)(yd,{children:(0,lr.jsx)("div",{className:(0,ji.default)(je.ref,{[je.positionAbove]:n==="above",[je.positionBelow]:n==="below",[je.positionLeft]:n==="left",[je.positionRight]:n==="right",[je.alignStart]:s==="start",[je.alignCenter]:s==="center",[je.alignEnd]:s==="end"}),style:p,...a,role:"dialog",children:(0,lr.jsx)("div",{className:(0,ji.default)(t,je.root),children:r})})})};var vd=k(require("classnames")),dr=require("react");var qi=require("react/jsx-runtime"),ur=(0,dr.forwardRef)(({className:t,children:e,...o},n)=>{let s=(0,dr.useRef)(null),r=y("TabCompletion",Ge);return(0,qi.jsx)("div",{ref:ir([s,n]),className:(0,vd.default)(t,r.popoverContentContainer),...o,children:(0,qi.jsx)("div",{className:r.popoverContent,children:e})})});var kt=require("react/jsx-runtime"),sh=t=>e=>{let o=Vi(e);return"top"in o&&(o.width=t.width-(e.left-t.left)-10),o},rh=({inputElement:t,boundaryRef:e,inputStyle:o,children:n,suggestion:s})=>{let r=y("TabCompletion",Ge),i=cr(),a=(0,mr.useMemo)(()=>sh(t.getBoundingClientRect()),[t]),[l,c]=bs(t);return(0,mr.useEffect)(()=>{c?i.open():i.close()},[c]),(0,kt.jsxs)("span",{children:[(0,kt.jsx)("mark",{ref:ir([l,i.triggerRef]),className:(0,Sd.default)(r.matchKeyword,{[r.hover]:c}),"aria-haspopup":"dialog","aria-expanded":i.opened?"true":"false",children:n}),i.opened&&(0,kt.jsx)(pr,{className:r.popover,triggerRef:i.triggerRef,boundaryRef:e,position:"below",align:"start",toStyle:a,children:(0,kt.jsx)(ur,{style:o,children:(0,kt.jsx)("div",{className:r.hintText,children:s})})})]})},gr=class extends _d.Matcher{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${dd(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(ud);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(0,kt.jsx)(rh,{inputElement:o.inputElement,suggestion:o.suggestion,inputStyle:o.inputStyle,boundaryRef:o.boundaryRef,children:e},`keyword_${o.matchString}_${o.key}`)}asTag(){return"mark"}};var hr=k(require("classnames")),Td=require("interweave"),ie=require("react"),Ed=require("react-redux");var Wi=require("react/jsx-runtime"),xd=()=>(0,Wi.jsx)("svg",{width:"1.3em",height:"1.3em",focusable:"false","aria-hidden":"true",viewBox:"0 0 24 24","data-testid":"InsertLinkIcon",tabIndex:-1,children:(0,Wi.jsx)("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"})});var It=require("react"),En=require("react-redux"),Cd=k(require("lodash.debounce"));var bd={root:"_root_1muu8_1",content:"_content_1muu8_7"};function fr(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 $i(t){return t.replace("https://www.","").replace("https://","")}var we=require("react/jsx-runtime"),ih=3,ah=t=>({image:t.image||"",text:t.text,id:t.id,title:t.title}),lh=({onSelectLink:t,onDismiss:e,placeholder:o,visitUrlText:n,linkCount:s=ih})=>{let r=y("LinkSearch",bd),[i,a]=(0,It.useState)(""),l=(0,En.useDispatch)(),c=(0,En.useSelector)(Ks("url")),p=(0,En.useSelector)(dc("URL",ah)),[d,g]=(0,It.useState)(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=(0,It.useCallback)((0,Cd.default)(x=>{l(jt({query:x,type:"URL",tags:["link-search"]}))},300),[]);return(0,It.useEffect)(()=>{i&&E(i)},[i]),(0,It.useEffect)(()=>()=>{l(Ns())},[]),(0,we.jsxs)("div",{className:r.root,children:[(0,we.jsx)(ue,{withDivider:!0,children:(i?p:c).slice(0,s).map((x,_)=>(0,we.jsx)(L,{selected:d===_,onClick:()=>t(x.text),"data-testid":"linksearch-suggestion",children:(0,we.jsxs)(D,{children:[(0,we.jsx)(D.Image,{src:fr(x,"small",u||void 0),title:x.title||x.text}),(0,we.jsxs)(D.Content,{className:r.content,cropText:!0,children:[(0,we.jsx)(D.Title,{children:x.title||$i(x.text)}),x.title&&$i(x.text)]}),(0,we.jsx)(L.Actions,{children:(0,we.jsx)(L.ActionButton,{label:n,onClick:b=>f(b,x.text)})})]})},x.text))}),(0,we.jsx)(gn,{value:i,onChange:m,autoFocus:!0,placeholder:o,onKeyUp:h})]})},wd=lh;var Gi={};$(Gi,{enUS:()=>ch,nlNL:()=>ph});var ch={insertLink:[{type:0,value:"Insert link"}],linkInputPlaceholder:[{type:0,value:"Search, type or paste link"}],visitUrl:[{type:0,value:"Visit"}]},ph={insertLink:[{type:0,value:"Voeg link toe"}],linkInputPlaceholder:[{type:0,value:"Zoek, typ of plak link"}],visitUrl:[{type:0,value:"Bekijk"}]};var re=require("react/jsx-runtime"),dh=(0,ie.forwardRef)((t,e)=>{let o=y("TabCompletion",Ge);return(0,re.jsx)("mark",{ref:e,className:(0,hr.default)(o.matchSelection)},"selection-start")}),uh=({startRef:t,boundaryRef:e,inputStyle:o,inputElement:n,children:s})=>{let r=T(Gi),i=y("TabCompletion",Ge),a=(0,ie.useRef)(null),l=(0,ie.useRef)(null),[c,p]=(0,ie.useState)(null),d=(0,Ed.useDispatch)(),g=cr(document.activeElement===n),[u]=(0,ie.useState)(()=>document.createRange());g.triggerRef.current=u,(0,ie.useEffect)(()=>()=>u.detach(),[]),(0,ie.useEffect)(()=>{let f=t.current,h=a.current;!f||!h||(u.setStart(f,0),u.setEnd(h,0))},[t.current,a.current]),fo(()=>{g.close()});let m=(0,ie.useCallback)(f=>{let h=u.toString(),E=/^http(s?):\/\//.test(f)?f:`https://${f}`;d(os({text:`[${h}](${E})`,replace:"selection"}))},[]);return(0,re.jsxs)("span",{children:[(0,re.jsx)("mark",{ref:a,className:(0,hr.default)(i.matchSelection),"aria-haspopup":"dialog","aria-expanded":g.opened?"true":"false",children:s}),g.opened&&(0,re.jsx)(pr,{className:i.popoverRoot,triggerRef:g.triggerRef,boundaryRef:e,position:"above",align:"start",children:(0,re.jsxs)(ur,{style:o,ref:l,children:[(0,re.jsx)("div",{className:(0,hr.default)(i.selectionOptions,{[i.selectionOptionsIsHidden]:c!==null}),children:(0,re.jsxs)("button",{type:"button",tabIndex:c===null?-1:void 0,className:i.selectionOptionsButton,onClick:()=>p("insertLink"),children:[(0,re.jsx)(xd,{}),(0,re.jsx)("span",{children:"\xA0"}),(0,re.jsx)("span",{children:r("insertLink")})]})}),c==="insertLink"&&(0,re.jsx)(wd,{placeholder:r("linkInputPlaceholder"),visitUrlText:r("visitUrl"),onSelectLink:m,onDismiss:()=>{p(null),g.close()}})]})})]},"selection-end")},yr=class extends Td.Matcher{charCount=0;foundIndex=0;startRef=null;props;onBeforeParse(e,o){return this.props=o,this.charCount=0,this.startRef=(0,ie.createRef)(),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?(0,re.jsx)(dh,{ref:this.startRef}):(0,re.jsx)(uh,{inputElement:o.inputElement,startRef:this.startRef,boundaryRef:o.boundaryRef,inputStyle:o.inputStyle})}asTag(){return"mark"}};var Rd=require("react-redux");var lt=require("react/jsx-runtime"),gh=({enabled:t,content:e,tabText:o,showTabHint:n,showTabCompletion:s,showStyleSuggestions:r,keywordMatches:i,inputElement:a,source:l})=>{let c=y("TabCompletion",pd),p=C("insertLink"),d=C("showMidSentenceSuggestions"),g=C("inlineSuggestions"),u=ws(a),m=(0,ct.useRef)(null),f=(0,Rd.useSelector)(ne);(0,ct.useEffect)(()=>{Et(a)&&u&&Ts(a,u)},[u]);let h=(0,ct.useCallback)(_=>{if(!s||!o)return _;let b=[(0,lt.jsx)("span",{className:c.resetIndent,children:"\u200B"},"u200B"),(0,lt.jsx)("span",{"data-testid":"tab-completion",className:(0,vr.default)(c.tabText,c.resetIndent),"data-source":l,children:o},"tabText")];return n&&b.push((0,lt.jsx)("span",{className:(0,vr.default)(c.hint,c.resetIndent),children:(0,lt.jsx)(Vn,{keyCode:"tab"},"tabHint")})),Ui(_,b)},[s,o,n]),E=(0,ct.useMemo)(()=>{let _=[];return p&&_.push(new yr("selection")),_.push(new go("placeholders")),r&&_.push(new gr("keywords")),_},[g,p,r]),x=(0,ct.useMemo)(()=>{let _=window.getComputedStyle(a);return{"--dd-color":_.color,"--dd-font-size":_.fontSize,"--dd-font-family":_.fontFamily,"--dd-font-variant":_.fontVariant}},[]);return!t||!f?null:(0,lt.jsxs)("div",{ref:_=>{_!=null&&_.parentElement&&(m.current=_==null?void 0:_.parentElement)},className:c.root,style:x,children:[(0,lt.jsx)(kd.Interweave,{tagName:"span",containerTagName:"div",className:(0,vr.default)(c.container,c.agentText),disableLineBreaks:Et(a),content:e||"\u200B",onAfterParse:h,matchers:E,selection:u,keywordMatches:i,inputElement:a,inputStyle:x,boundaryRef:m,inlineSuggestionsOnlyAtEnd:!d}),(0,lt.jsx)("br",{})]})},mh=({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??yo(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}},Pd=(0,Id.connect)(mh)(gh);var Cu=k(require("classnames")),wu=require("react"),X=require("react-redux");var Rt=require("@reduxjs/toolkit");var Ad={list:[],fetchState:"idle",isInitialRequest:null},Md=t=>t.autoflows.list||[],Ld=t=>e=>{var o;return(o=e.list)==null?void 0:o.find(n=>n.triggerPayload===t)},pt=(0,Rt.createAsyncThunk)("autoflows/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getAutoflows(t)}),Xi=(0,Rt.createAsyncThunk)("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(pt(t.platformSessionId))}),Zi=(0,Rt.createAsyncThunk)("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(pt(t.platformSessionId))}),fh=(0,Rt.createSlice)({name:"autoflows",initialState:Ad,reducers:{},extraReducers:t=>{t.addCase(Xi.pending,(e,o)=>{let n=Ld(o.meta.arg.triggerPayload)(e);n.state="Started",n.isBusy=!0}),t.addCase(Zi.pending,(e,o)=>{let n=Ld(o.meta.arg.triggerPayload)(e);n.state="Aborted",n.isBusy=!0}),t.addCase(pt.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}),t.addCase(pt.rejected,e=>{e.fetchState="error"}),t.addCase(pt.fulfilled,(e,o)=>{e.list=o.payload,e.fetchState="done"}),t.addCase(M,()=>Ad)}}),Nd=(0,Rt.createAsyncThunk)("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(pt(t))}),s.on("sessionCompleted",()=>{o(pt(t))})}),Od=(0,Rt.createAsyncThunk)("autoflows/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),Dd=fh.reducer;var Pt=require("@reduxjs/toolkit");var Hd={list:[],fetchState:"idle",isInitialRequest:null,sentSuggestions:[],errorSuggestions:[],answeredSuggestions:[]},Bd=t=>t.customMessages.list,Fd=t=>e=>!!e.customMessages.sentSuggestions.find(o=>o===t),Kd=t=>e=>!!e.customMessages.answeredSuggestions.find(o=>o===t),Ud=t=>e=>!!e.customMessages.errorSuggestions.find(o=>o===t),kn=(0,Pt.createAsyncThunk)("customMessages/getAll",async(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");return o.getCustomMessages(t)}),Sr=(0,Pt.createAsyncThunk)("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)}),_r=(0,Pt.createAsyncThunk)("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)}),zd=(0,Pt.createSlice)({name:"customMessages",initialState:Hd,reducers:{onCustomMessage(t,e){Array.isArray(e.payload)?t.list=e.payload:t.list=[e.payload]}},extraReducers:t=>{t.addCase(kn.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(kn.rejected,e=>{e.fetchState="error"}).addCase(kn.fulfilled,(e,o)=>{e.fetchState="done",e.list=o.payload||[]}).addCase(Sr.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.errorSuggestions=e.errorSuggestions.filter(n=>o.meta.arg.suggestion.text!==n)}).addCase(Sr.rejected,(e,o)=>{let n=e.sentSuggestions.indexOf(o.meta.arg.suggestion.text);e.errorSuggestions.push(...e.sentSuggestions.splice(n,1))}).addCase(_r.pending,(e,o)=>{e.sentSuggestions.push(o.meta.arg.suggestion.text),e.answeredSuggestions.push(o.meta.arg.suggestion.text)}).addCase(_r.rejected,(e,o)=>{let n=e.answeredSuggestions.indexOf(o.meta.arg.suggestion.text);e.errorSuggestions.push(...e.sentSuggestions.splice(n,1)),e.answeredSuggestions.splice(n,1)}).addCase(M,()=>Hd)}}),jd=(0,Pt.createAsyncThunk)("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(zd.actions.onCustomMessage(r))})}),Vd=(0,Pt.createAsyncThunk)("customMessages/closeStream",(t,e)=>{let{deepdeskBrokerAPI:o}=e.extra;if(!o)throw new Error("Deepdesk Broker not initialized");o.closeStream(t)}),qd=zd.reducer;var In=require("@reduxjs/toolkit"),hh={token:null,accountUrl:null,interval:null},Wd=t=>e=>{let{passwordlessToken:{token:o,accountUrl:n}}=e;return o&&n?`${n}/apis/admin/session/passwordless/login/?token=${o}&redirect=${t}`:null},Qi=(0,In.createAsyncThunk)("passwordlessToken/getTemporaryPasswordlessToken",async(t,e)=>{let{deepdeskAPI:o}=e.extra,n=await o.requestPasswordlessToken();return{accountUrl:o.client.baseUrl,token:n}}),Ji=(0,In.createAsyncThunk)("passwordlessToken/pollPasswordlessToken",(t={},e)=>{let{interval:o=1e3*60*10}=t,{dispatch:n}=e;return n(Qi()),setInterval(()=>n(Qi()),o)}),$d=(0,In.createSlice)({name:"passwordlessToken",initialState:hh,reducers:{stopPollPasswordlessToken(t){t.interval&&clearInterval(t.interval),t.interval=null}},extraReducers:t=>{t.addCase(Qi.fulfilled,(e,o)=>{e.token=o.payload.token,e.accountUrl=o.payload.accountUrl}),t.addCase(Ji.fulfilled,(e,o)=>{e.interval=o.payload})}}),{stopPollPasswordlessToken:Gd}=$d.actions,Xd=$d.reducer;function Zd(t){let{customMessages:e,autoflows:o}=t;return o.fetchState==="loading"&&o.isInitialRequest===!0||e.fetchState==="loading"&&e.isInitialRequest===!0}var ru=require("react"),iu=require("react-redux");var ou=k(require("classnames")),nu=require("react");var Jd=k(require("classnames"));var Qd={root:"_root_838fd_1"};var eu=require("react/jsx-runtime"),yh=({className:t,children:e})=>{let o=y("Unicode",Qd);return(0,eu.jsx)("span",{className:(0,Jd.default)(t,o.root),children:e})},Yd=yh;var tu={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 Yi={};$(Yi,{enUS:()=>vh,nlNL:()=>Sh});var vh={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"}]},Sh={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"}]};var fe=require("react/jsx-runtime"),xh=({disabled:t,state:e,displayName:o,description:n,onStartAutoflow:s,onStopAutoflow:r})=>{let i=y("Autoflow",tu),a=T(Yi),l=e==="Started"?"stop":"start",c=l==="start"?"\u25B6":l==="stop"?"\u25FC":"";return(0,fe.jsxs)(L,{className:(0,ou.default)(i.root,{[i.isDisabled]:t,[i.isCompleted]:e==="Completed",[i.isAborted]:e==="Aborted",[i.isStarted]:e==="Started"}),children:[(0,fe.jsx)(D,{children:(0,fe.jsxs)(D.Content,{children:[(0,fe.jsxs)(D.Title,{children:[e&&(0,fe.jsx)("span",{className:i.stateBadge,children:a(e)}),o]}),(0,fe.jsx)("span",{children:n})]})}),(0,fe.jsx)(L.Actions,{fixed:e==="Started",children:(0,fe.jsx)(L.ActionButton,{primary:!0,className:l==="start"?i.buttonStart:i.buttonStop,onClick:e==="Started"?r:s,disabled:t,label:(0,fe.jsxs)(nu.Fragment,{children:[(0,fe.jsx)(Yd,{children:c})," ",(0,fe.jsx)("span",{children:a(l)})]})})})]})},su=xh;var ea=require("react/jsx-runtime"),bh=(t,e)=>{let o=e.filter(n=>n.state==="Started");return o.length>0?o.indexOf(t)===-1:!1},Ch=({autoflows:t,onStartAutoflow:e,onStopAutoflow:o,platformSessionId:n})=>(0,ea.jsx)(ru.Fragment,{children:t.map(s=>(0,ea.jsx)(su,{displayName:s.displayName,description:s.description,disabled:s.isBusy||bh(s,t),state:s.state,onStartAutoflow:()=>e({platformSessionId:n,triggerPayload:s.triggerPayload}),onStopAutoflow:()=>o({platformSessionId:n,triggerPayload:s.triggerPayload})},s.displayName))}),wh=({autoflows:t,conversation:e})=>{var o;return{autoflows:t.list,platformSessionId:(o=e.current)==null?void 0:o.sessionId}},Th={onStartAutoflow:Xi,onStopAutoflow:Zi},au=(0,iu.connect)(wh,Th)(Ch);var lu=k(require("classnames")),ta=require("react"),Jt=require("react-redux");var dt={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"};var pe=require("react/jsx-runtime"),Eh=({suggestion:t})=>{let e=T(Ut),o=(0,Jt.useDispatch)(),n=(0,Jt.useSelector)(Fd(t.text)),s=(0,Jt.useSelector)(Kd(t.text)),r=(0,Jt.useSelector)(Ud(t.text)),i=(0,Jt.useSelector)(Gn),{replyOptions:a}=t,l=(0,ta.useCallback)(p=>{p.preventDefault(),p.stopPropagation(),!(n||!i)&&o(Sr({platformSessionId:i,suggestion:t}))},[t,n,o,i]),c=(0,ta.useCallback)(p=>{if(p.preventDefault(),p.stopPropagation(),!i||!a)return;let d=parseInt(p.target.dataset.index,10),g=a[d];o(_r({platformSessionId:i,reply:g,suggestion:t}))},[t,n,o,i]);return(0,pe.jsxs)(L,{onClick:l,className:(0,lu.default)(dt.root,{[dt.isUsed]:n,[dt.hasError]:r}),children:[(0,pe.jsx)(D,{children:(0,pe.jsxs)(D.Content,{children:[(0,pe.jsxs)(D.Title,{className:dt.title,children:[t.text," ",(0,pe.jsx)(qn,{className:dt.label,children:"analyse tool"})," ",r&&(0,pe.jsx)("span",{className:dt.errorIcon,role:"img","aria-label":e("sendingError"),title:e("sendingError"),children:"!"})]}),a&&a.length>0&&(0,pe.jsx)("ul",{className:dt.quickReplies,children:a.map(p=>(0,pe.jsx)("li",{className:dt.quickReply,children:p.title},p.title))})]})}),(0,pe.jsxs)(L.Actions,{fixed:r||n,children:[a&&a.length>0&&(0,pe.jsx)(L.DropdownButton,{label:e("answer"),disabled:s,children:a.map((p,d)=>(0,pe.jsx)(L.DropdownItem,{index:d,label:p.title,onClick:c},p.title))}),(0,pe.jsx)(L.ActionButton,{primary:!0,disabled:n,onClick:l,label:e(n?"suggestionSent":r?"tryAgain":"sendSuggestion")})]})]})},cu=Eh;var xr=require("react"),du=require("react-redux"),sa=k(require("classnames"));var oa=require("react/jsx-runtime"),na=()=>(0,oa.jsx)("svg",{width:"1em",height:"1em",viewBox:"0 0 512 512",xmlns:"http://www.w3.org/2000/svg",children:(0,oa.jsx)("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 pu={root:"_root_rjdyr_1",entity:"_entity_rjdyr_10",entityText:"_entityText_rjdyr_46",iconWrapper:"_iconWrapper_rjdyr_53",icon:"_icon_rjdyr_53",iconClicked:"_iconClicked_rjdyr_67"};var Ve=require("react/jsx-runtime"),kh=({entities:t})=>{let e=y("EntitiesWidgetList",pu),[o,n]=(0,xr.useState)(void 0),s=(0,du.useDispatch)(),r=()=>{n(void 0)},i=a=>{t&&(n(t.indexOf(a)),fn(a.text),s(Q({name:"entity copied",data:{entity:a,type:"copy"}})))};return(0,xr.useEffect)(()=>{let a=setTimeout(r,500);return()=>{clearTimeout(a)}},[o]),!t||t.length===0?null:(0,Ve.jsx)("div",{className:e.root,"data-testid":"widget-entities-list",children:t.map((a,l)=>(0,Ve.jsxs)("button",{title:a.text,className:e.entity,type:"button",onClick:()=>i(a),children:[(0,Ve.jsx)("span",{className:e.entityText,children:a.text}),(0,Ve.jsxs)("span",{className:e.iconWrapper,children:[(0,Ve.jsx)("span",{className:(0,sa.default)(e.icon),children:(0,Ve.jsx)(na,{})}),(0,Ve.jsx)("span",{className:(0,sa.default)(e.icon,o===l&&e.iconClicked),children:(0,Ve.jsx)(na,{})})]})]},a.text))})},uu=kh;var ra=require("react/jsx-runtime"),gu=()=>(0,ra.jsx)("svg",{width:"1em",height:"1em",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:(0,ra.jsx)("path",{d:"M17 13.5v6H5v-12h6m3-3h6v6m0-6-9 9",stroke:"currentColor",strokeWidth:"1.5",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"})});var ia=require("react/jsx-runtime"),mu=()=>(0,ia.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:(0,ia.jsx)("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"})});var aa=require("react/jsx-runtime"),fu=()=>(0,aa.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",height:"1em",viewBox:"0 -960 960 960",width:"1em",children:(0,aa.jsx)("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"})});var br=require("react");var la={};$(la,{enUS:()=>Ih,nlNL:()=>Rh});var Ih={copyCue:[{type:0,value:"Copy"}],copiedCue:[{type:0,value:"Copied!"}],removeCue:[{type:0,value:"Close"}]},Rh={copyCue:[{type:0,value:"Kopieer"}],copiedCue:[{type:0,value:"Gekopieerd!"}],removeCue:[{type:0,value:"Sluiten"}]};var ut=require("react/jsx-runtime"),Ph=({cue:t,onRemove:e,onCopy:o})=>{let n=T(la),[s,r]=(0,br.useState)(!1),i=l=>{l.preventDefault(),l.stopPropagation(),o&&(o(t.text),r(!0))},a=l=>{l.preventDefault(),l.stopPropagation(),e&&e(t.id)};return(0,br.useEffect)(()=>{if(!s)return;let l=setTimeout(()=>{r(!1)},1e3);return()=>{clearTimeout(l)}},[s]),(0,ut.jsx)(L,{"data-testid":"cue",children:(0,ut.jsxs)(D,{children:[(0,ut.jsxs)(D.Content,{children:[t.title&&(0,ut.jsx)(D.Title,{"data-testid":"widget-cue-title",children:t.title}),t.text]}),(0,ut.jsx)(L.Actions,{children:o&&(0,ut.jsx)(L.ActionButton,{primary:!0,onClick:i,label:n(s?"copiedCue":"copyCue")})}),(0,ut.jsx)(D.CloseIcon,{title:n("removeCue"),onClick:a})]})})},hu=Ph;var Rn=require("react/jsx-runtime"),Ah=({cues:t,onCopyCue:e,onRemoveCue:o})=>(0,Rn.jsx)(Rn.Fragment,{children:t.map(n=>(0,Rn.jsx)(hu,{cue:n,onRemove:o,onCopy:e},`${n.id}_${n.timestamp}`))}),yu=Ah;var _u=require("react-redux");var vu=require("react");var he=require("react/jsx-runtime"),Lh=({suggestion:t,lines:e,onEdit:o,onUse:n})=>{var g;let s=t.text||t.url||t.message,r=Os(s),i=T(Ut),a=C("showImages"),l=C("fallbackImage"),c=u=>{u.preventDefault(),u.stopPropagation(),n(s)},p=u=>{u.preventDefault(),u.stopPropagation(),o(t)},d=(0,vu.useCallback)(u=>{window.open(r,"_blank"),u.stopPropagation(),u.preventDefault()},[r]);return(0,he.jsxs)(L,{onClick:c,"data-testid":"edit-suggestion",children:[(0,he.jsxs)(D,{children:[a&&t.image&&(0,he.jsx)(D.Image,{src:fr(t,"small",l||void 0),title:t.title}),(0,he.jsxs)(D.Content,{children:[t.title&&(0,he.jsx)(D.Title,{"data-testid":"widget-suggestion-title",children:t.title}),t.searchKeywords&&((g=t.searchKeywords)==null?void 0:g.length)>0&&(0,he.jsx)(L.Labels,{labels:t.searchKeywords}),(0,he.jsx)(D.Content,{cropText:e==="single",lineClamp:e==="multiple",children:s})]})]}),(0,he.jsxs)(L.Actions,{children:[r&&(0,he.jsx)(L.ActionButton,{onClick:d,label:i("visitUrl")}),(0,he.jsx)(L.ActionButton,{primary:!0,onClick:p,label:i("preview")}),(0,he.jsx)(L.ActionButton,{primary:!0,onClick:c,label:i("useSuggestion")})]})]})},Su=Lh;var Pn=require("react/jsx-runtime"),Mh=({contentType:t,lines:e,suggestions:o})=>{let n=be(),s=(0,_u.useSelector)(xt),r=a=>{n.send(wi,{state:s,suggestion:a,contentType:t})},i=(a,l)=>{n.send(ot,{text:a,suggestion:{...l,source:l.source,sourceText:l.text}})};return(0,Pn.jsx)(Pn.Fragment,{children:o.map(a=>(0,Pn.jsx)(Su,{suggestion:a,lines:e,onEdit:l=>r(l),onUse:l=>i(l,a)},a.text||a.url||a.message))})},xu=Mh;var ca={};$(ca,{enUS:()=>Nh,nlNL:()=>Oh});var Nh={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"}]},Oh={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 bu={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"};var R=require("react/jsx-runtime"),Cr=(t,e)=>{let o=(0,X.useSelector)(ne);(0,wu.useEffect)(()=>o?e.every(n=>!!n)?t():()=>{}:()=>{},[...e,o])},Dh=({onLogIn:t})=>{let e=T(ca),o=(0,X.useDispatch)(),n=C("isEmbedded"),s=y("Widget",bu),r=C("showAutoflows"),i=C("showCustomMessages"),a=C("showSummaryCommand"),l=C("showKnowledgeSearch"),c=C("showSearch"),p=(0,X.useSelector)(wt),d=(0,X.useSelector)(Js),g=(0,X.useSelector)(Md),u=(0,X.useSelector)(Gc),m=(0,X.useSelector)($s),f=(0,X.useSelector)(Bd),h=(0,X.useSelector)(Xn),E=(0,X.useSelector)(ao),x=(0,X.useSelector)(ne),_=(0,X.useSelector)(Gn),b=(0,X.useSelector)(Zd),v=(0,X.useSelector)(xt),A=be(),O=(0,X.useSelector)(bc),K=(0,X.useSelector)(Wd("/admin/")),H=C("adminUrl"),W=C("productName");if(Cr(()=>(o(kn(_)),o(jd(_)),()=>{o(Vd(_))}),[o,E,i,_]),Cr(()=>(o(pt(_)),o(Nd(_)),()=>{o(Od(_))}),[o,E,r,_]),Cr(()=>{d.forEach(({type:I})=>{o(I==="entities"?Ne():Le(I))})},[o,E,h,p]),Cr(()=>(o(Ji()),()=>{o(Gd())}),[o]),E===!1)return(0,R.jsx)("div",{className:s.stateText,children:(0,R.jsx)("div",{children:(0,R.jsx)("p",{children:e("notSupported")})})},"supported");if(x===!1)return(0,R.jsx)("div",{className:s.loginText,children:(0,R.jsx)("div",{children:(0,R.jsx)(sr,{isEmbedded:n,loginUrl:H,onLogIn:t})})},"login");if(!p||!_||x===null||O||b)return(0,R.jsx)("div",{className:s.stateText,children:(0,R.jsx)("div",{children:(0,R.jsx)("p",{children:e("waiting")})})},"waiting");let z=c||a||l||K;return(0,R.jsx)("div",{className:(0,Cu.default)(s.root),"data-testid":"widget",children:(0,R.jsxs)(Wn,{className:s.sectionList,children:[z&&(0,R.jsx)(We,{title:e("actions"),type:"shortcuts",children:(0,R.jsxs)("div",{className:s.shortcutList,children:[c&&(0,R.jsxs)("button",{className:s.shortcut,"data-testid":"shortcut-search",onClick:()=>A.send("ShowCommandPalette",{isOpen:!0}),children:[(0,R.jsx)(_o,{}),e("linkSearch")]}),a&&(0,R.jsxs)("button",{className:s.shortcut,"data-testid":"shortcut-summary",onClick:()=>A.send("ShowCommandPalette",{isOpen:!0,page:"summary"}),children:[(0,R.jsx)(fu,{}),e("linkSummary")]}),l&&(0,R.jsxs)("button",{className:s.shortcut,"data-testid":"shortcut-knowledge-assist",onClick:()=>A.send("ShowCommandPalette",{isOpen:!0,page:"knowledgeAssist"}),children:[(0,R.jsx)(mu,{}),e("linkKnowledgeSearch")]}),K&&(0,R.jsxs)("a",{className:s.shortcut,target:"_blank",href:K,"data-testid":"shortcut-studio-login",rel:"noreferrer",children:[(0,R.jsx)(gu,{}),e("linkStudioLogin",{productName:W})]})]})}),i&&f.length>0&&(0,R.jsx)(We,{type:"custom-messages","data-testid":"custom-messages",children:(0,R.jsx)(ue,{withDivider:!0,children:f.map(I=>(0,R.jsx)(cu,{suggestion:I},I.text))})}),r&&g.length>0&&(0,R.jsx)(We,{type:"autoflows",title:e("titleAutoflows"),"data-testid":"autoflows",children:(0,R.jsx)(ue,{withDivider:!0,children:(0,R.jsx)(au,{})})}),d.map(({type:I,title:ye,amount:Mr,lines:Fo})=>{var Ko;switch(I){case"entities":return m&&m.length>0&&(0,R.jsx)(We,{type:I,title:ye,"data-testid":`type-${I}`,children:(0,R.jsx)(uu,{entities:m})},I);case"cues":return u&&u.length>0&&(0,R.jsx)(We,{type:I,title:ye,"data-testid":`type-${I}`,children:(0,R.jsx)(ue,{withDivider:!0,children:(0,R.jsx)(yu,{cues:u,onRemoveCue:to=>o(Zc({id:to}))})})},I);default:return((Ko=v[I])==null?void 0:Ko.fetchState)==="done"&&v[I].suggestions.length>0&&(0,R.jsx)(We,{type:I,title:ye,"data-testid":`type-${I}`,children:(0,R.jsx)(ue,{withDivider:!0,children:(0,R.jsx)(xu,{lines:Fo,contentType:I,suggestions:v[I].suggestions.slice(0,Mr)||[]})})},I)}})]})})},Tu=Dh;function Do(t){let e=new Range;return e.selectNodeContents(t),e}function Eu(t,e,o){try{return At(t,e,o),!0}catch{return!1}}function wr(t){return"tagName"in t&&(t.tagName==="DIV"||t.tagName==="P")}function Tr(t){return"tagName"in t&&t.tagName==="BR"}var An=/[\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(An,""),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(Tr(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;wr(l)&&c&&!wr(c)&&!Tr(c)&&s++;break}default:break}}if(a(t),n.startContainer===document)throw new Error("Offsets out of bound");return n}function Ln(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(An,"").length),u&&(l=c+m.substring(0,r).replace(An,"").length),c+=m.replace(An,"").length;break}case Node.ELEMENT_NODE:{let m=d.nextSibling===null;Tr(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&&wr(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 Mn(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(An,"");g===0&&u===void 0?a+=m:a+=m.substring(g,u);break}case Node.ELEMENT_NODE:{let g=c.nextSibling===null;i===0&&Tr(c)&&!g&&(a+=`
|
|
8
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&&wr(c)&&!g&&(a+=`
|
|
9
|
-
`);break}default:break}d&&i++}return l(t),a}function ku(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var Yt=class extends Xe{observer;lastKnownSelection=null;getRootNode(){return this.element.getRootNode()}getText(){let e=new Range;return e.selectNodeContents(this.element),Mn(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!ku(o)&&(e.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=e.getBoundingClientRect(),e.deleteContents(),!ku(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let e=this.getRange();if(e)return Ln(this.element,e);let o=this.lastKnownSelection;if(o&&Eu(this.element,o.start,o.end))return o;let n=Do(this.element);return n.collapse(!1),Ln(this.element,n)}getSelectedText(){let{start:e,end:o}=this.getSelection();return Mn(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 Iu(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 pa=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()}},da=class{constructor(e,o,n){this.name=e;this.targetOrigin=o;this.options=n;this.iframe=Iu(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()}},ua=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 da(e,this.deepdeskUrl,{debug:!0}):new pa(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)}},Ru=ua;var Ho=class extends Error{constructor(o,n){super(o);this.body=n}name="CustomError"};var ga=t=>new Promise(e=>{setTimeout(e,t)});var Bo=class extends Ho{name="ClientError"},ma=class extends Ho{name="ServerError"},De=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 ga(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 ga(p),_();throw b}));_().then(b=>b.json().catch(()=>null).then(v=>{b.status>=500?s(new ma("Server Error",v)):b.status===401?s(new Bo("Unauthorized",v)):b.status===403?s(new Bo("Forbidden",v)):b.status===404?s(new Bo("Not Found",v)):b.status>=400&&s(new Bo("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 Hh;(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||={})})(Hh||={});function Er(t){return{...N(t),tags:t.tags}}var gt=class t{constructor(e,o={}){this.options=o;this.client=new De(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",{...G(e),tags:e.tags},{version:"v2"});return Er(o)}async getProfile(e){let o=await this.client.get(`/apis/admin/profiles/${e}/`,{version:null});return N(o)}async getKnowledgeAssistant(e){let o=await this.client.get(`/apis/admin/knowledge-assist/assistants/${e}/`,{version:null});return N(o)}async getContentTypes(){let e=await this.client.get("/apis/admin/content-types/",{version:null});return N(e)}async getPlatformConfig(){let{config:e}=await this.client.get("/platform/config/",{version:null});return N(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}`),Er(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=G(o);o.tags&&(n.tags=o.tags);let s=await this.client.put(`/api/conversations/${e}`,n,{version:"v2"});return Er(s)}async postMessages(e,o){return(await this.client.post(`/api/conversations/${e}/messages`,o.map(s=>({...G(s),tags:s.tags})),{version:"v2"})).map(s=>Er(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",G({...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:G({...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/",G(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}`,G(o),{abortLatest:!0})).map(r=>({...N(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`,G(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 N(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",G(e),{abortLatest:!0});return N(o)}async search(e){let o=await this.client.post(`/api/profiles/${e.profile}/search`,G(e),{version:"v2"});return N(o)}async knowledgeAssist(e,o,n,s={}){let r=await this.client.post(`/api/knowledge-assist/assistants/${n}/search`,G({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 N(r)}async requestLoginByEmail(e){let o=await this.client.post("/apis/admin/session/passwordless/request/",{email:e},{version:null});return N(o)}async requestPasswordlessToken(){let e=await this.client.get("/apis/admin/session/passwordless/request/",{version:null});return N(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 N(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 N(i.cues)}handleDeepdeskVersionHeaders(e){e.headers.forEach((o,n)=>{let s=n.toLowerCase(),r=s.match(Ka);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 Nn=class{constructor(e,o){this.url=e;this.options={timeout:25e3,...o}}eventListeners={};options;timeoutTimer;eventSource;proxyEvent(e){this.eventSource.addEventListener(hi(e),o=>{let{data:n}=o;try{let s=JSON.parse(n);this.emit(e,N(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 Bh;(e=>{let t;(r=>(r.Started="Started",r.Aborted="Aborted",r.Completed="Completed"))(t=e.AutoflowSessionState||={})})(Bh||={});var On=class{constructor(e,o={}){this.apiUrl=e;this.client=new De(e,o)}client;streams={};logger=w;async getCustomMessages(e){let o=await this.client.get(`/sessions/${e}/suggestions`);return N(o.suggestions)}async sendCustomMessage(e,o){let n=await this.client.post(`/sessions/${e}/messages`,G(o));return N(n)}async answerCustomMessage(e,o){await this.client.post(`/sessions/${e}/answers`,G(o))}async getAutoflows(e){let o=await this.client.get(`/sessions/${e}/autoflows`);return N(o.autoflows)}async startAutoflowSession(e){let o=await this.client.post("/autoflow-sessions",G(e));return N(o)}async stopAutoflowSession(e){await this.client.delete(`/autoflow-sessions/${e}`)}openStream(e){return this.streams[e]||(this.streams[e]=new Nn(`${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])}};var Pr=require("@reduxjs/toolkit");var Au=require("@reduxjs/toolkit");var Pu={startTime:null,stopTime:null},Lu=(0,Au.createSlice)({name:"handlingTime",initialState:Pu,reducers:{handlingTimeStart(t){if(t.startTime&&!t.stopTime)throw new Error("Timing already started");t.startTime=new Date,t.stopTime=null},handlingTimeStop(t){if(!t.startTime)throw new Error("Timing not started");t.stopTime=new Date},handlingTimeReset(t){t.startTime=null,t.stopTime=null}},extraReducers:t=>{t.addCase(M,()=>Pu)}}),{handlingTimeStart:Mu,handlingTimeStop:kr,handlingTimeReset:Nu}=Lu.actions,Ou=Lu.reducer;var Du=(t={})=>{let e={onAuthError:wo(!1),...t};return o=>n=>s=>("error"in s&&s.error.message==="Unauthorized"&&o.dispatch(e.onAuthError),n(s))};var Rr=require("@reduxjs/toolkit");var Ir={list:{keywordMatches:[]},fetchState:"idle",isInitialRequest:null};var eo=(0,Rr.createAsyncThunk)("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 Ir.list;if(!r)throw new Error("No current conversation to fetch pinned messages");return o.getStyleSuggestions({profileCode:r,message:t})}),Fh=(0,Rr.createSlice)({name:"styleSuggestions",initialState:Ir,reducers:{},extraReducers:t=>{t.addCase(eo.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(eo.rejected,e=>{e.fetchState="error"}).addCase(eo.fulfilled,(e,o)=>{e.fetchState="done",ft(e.list,o.payload)||(e.list=o.payload)}).addCase(Nt,e=>{e.list=Ir.list}).addCase(M,()=>Ir)}}),Hu=Fh.reducer;var Bu=(t={})=>{let e,o=!0,n={getStyleSuggestions:eo,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 Kh(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var Fu=(t={})=>{let e={getTextSuggestions:Le,getAutocompleteSuggestions:ln,debounce:200,check:Lo,...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===Us.toString();if(!d||!c&&!p)return a;let{input:{userCommitted:u}}=l;return Kh(u,i)&&!g||(clearTimeout(o),!e.check(l))||(o=setTimeout(()=>{let h=lo(l);h===""?n.dispatch(e.getTextSuggestions("default")):n.dispatch(e.getAutocompleteSuggestions(h))},g?0:e.debounce)),a}};var Ku=eo.fulfilled.toString();function Uh(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 Uu=t=>e=>o=>n=>{var c;if(n.type!==Ku){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=Uh(s,i);n.type===Ku&&l.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:l}})};var zh=(0,Pr.combineReducers)({activeSuggestion:Mc,answer:kp,auth:$c,autoflows:Dd,conversation:Ga,contentTypes:cp,customMessages:qd,passwordlessToken:Xd,entities:gp,knowledgeAssistant:wp,handlingTime:Ou,info:ic,input:Ur.reducer,overlayInput:ae.reducer,settings:Va,profile:Pp,search:gc,summary:Sp,styleSuggestions:Hu,ui:Bc,rules:Qc,textSuggestions:kc});function zu(t){return(0,Pr.configureStore)({reducer:zh,middleware:e=>[...e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI,deepdeskBrokerAPI:t.deepdeskBrokerAPI}},serializableCheck:!1}),Du(),Fu({debounce:200}),Bu({debounce:500}),Uu(t.deepdeskAPI),...t.middleware?t.middleware:[]],preloadedState:t.preloadedState})}var jh=t=>{var e;return((e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())??"unknown"},Vh=t=>e=>o=>n=>{var a;let s=e.getState(),r=Hr("inlineSuggestions")(s);switch(n.type){case Ye.toString():{let l=Ks(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 wo.toString():{!n.payload&&t.emit("logout",void 0);break}case Re.toString():{let{start:l,end:c}=s.input.selection;t.emit("select-suggestion",{type:jh(n.payload.suggestion),...n.payload,replace:n.payload.replace==="selection"?{start:l,end:c}:{start:0,end:c}},{mayApplyChanges:!0});break}case os.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 Go.toString():{let l=e.getState(),{text:c,selection:p}=l.input.userCommitted;t.emit("reset",{text:c,selectionAfter:p},{mayApplyChanges:!0});break}case is.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 Ne.fulfilled.toString():n.payload.length>0&&t.sendEvent("entities found",{conversationId:s.conversation.current.id,data:{entities:n.payload}});break;case nt.fulfilled.toString():t.sendEvent("conversation summarized",{conversationId:s.conversation.current.id,data:{summary:n.payload.summary}});break;case Q.toString():t.sendEvent(n.payload.name,{conversationId:((a=n.payload.options)==null?void 0:a.includeConversationData)&&s.conversation.current.id,data:n.payload.data});break;case ns.toString():t.handleKeyDown(n.payload);break;case Nt.toString():t.logSendMessage(n.payload);break;case ss.toString():t.logSendEditSuggestionMessage(n.payload);break;case rs.toString():t.handleInputChanged(n.payload);break;case tt.fulfilled.toString():t.broadcast(Ti,n.payload,!1),t.emit("cues",n.payload);break;default:break}let i=o(n);switch(n.type){case Nt.toString():t.handleAfterSendMessage(n.payload);break;case cn.toString():t.onUpdateShowTabHint(n.payload);break;case kr.toString():t.logHandlingTime();break;case Re.toString():{r&&(e.dispatch(Be([])),e.dispatch($e()));break}case Be.toString():{r&&n.payload.length>0&&e.dispatch(yt(0));break}default:break}return i},ju=Vh;function fa(t){return t.toISOString().replace("T"," ").replace("Z","")}function Vu(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:fa(o),timeStop:fa(n)}}function ha(t,e,o){var O,K,H;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((W,{text:z,searchTerm:I})=>W+z.length-(I?I.length:0),0),_=c??Date.now(),b=(Date.now()-_)/1e3+(p||0),v=s/b,A=m.reduce((W,{searchTerm:z})=>W+(z?z.length:0),0);return{conversationId:e.conversation.current.id,source:"agent",text:n,clientVersion:o.version,pastes:d,cuts:g,deletions:u,lenTextTyped:s+A,lenTextTotal:h,lenTextAssisted:x,lenTextPasted:r,lenTextCut:i,lenTextDeleted:a,timeTotalSeconds:b,charsPerSecond:v,numPastes:l,textSuggestionsV2:m,suggestionsCounters:[{source:"gpt",countOffered:f.filter(W=>W.source==="gpt").length}],agentId:(O=e.info.agentInfo)==null?void 0:O.agentId,agentName:(K=e.info.agentInfo)==null?void 0:K.agentName,agentEmail:(H=e.info.agentInfo)==null?void 0:H.agentEmail}}function ya(t,e){var r;let o=t.closest(e);if(o)return o;let n=t.getRootNode().host;if(n instanceof HTMLElement)return ya(n,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?ya(s,e):null}function qu(t,e){return ya(t,e)}function Wu(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function qh(t){return typeof t=="object"&&t!==null&&"tagName"in t}function Ar(t){return qh(t)&&(Et(t)||Cs(t))}var $u=(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 Wh(t){return t.offsetParent!==null}function Gu(t){if(!Wh(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 Lr(t,e,o=100){let n=Gu(t);e({isVisible:n});let s=setInterval(()=>{let r=Gu(t);r!==n&&(n=r,e({isVisible:n}))},o);return()=>{clearTimeout(s)}}var q=require("react/jsx-runtime");var Xu=$u("showTabHint",!0),Dn=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 gt(c,{token:r,fetch:i}),this.version=n,this.instanceId=t.count++;let p={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[ju({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=>Xu.update(d),sendEvent:(d,g)=>this.deepdeskApi.sendEvent(d,g)})]};o&&Object.assign(p,{deepdeskBrokerAPI:new On(o)}),this.store=zu(p),this.broadcastEvents=new Ru({debug:!0,deepdeskUrl:c,eventMap:Jc(this.store),createCustomChannel:l}),this.store.dispatch($o),this.store.dispatch(cn(Xu.value())),this.store.dispatch($o({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(wo(null)),this.store.dispatch(et()),new Promise(e=>{let o=this.store.subscribe(()=>{let n=this.store.getState();ne(n)&&Uc(n)!=="loading"&&(o(),e())});this.unmountHandlers.push(()=>{o()})})}async isLoggedIn(){return(await this.store.dispatch(et())).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(Fr({sessionId:e,options:o}))).payload}async createConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(Zn(e))).payload}async getConversationBySessionId(e,o){return this.hasConversation()&&this.sessionId()!==e&&this.resetConversation(),(await this.store.dispatch(Qn({sessionId:e,options:o}))).payload}async upsertConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(Kr(e))).payload}async postMessages(e){return(await this.store.dispatch(Yn(e))).payload}async updateConversation(e){return(await this.store.dispatch(Jn(e))).payload}resetConversation(){this.store.dispatch(M()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}async getSummary(){let e=await this.store.dispatch(nt());if(e.error)throw new Error(e.error.message);return e.payload.summary}configure(e){this.store.dispatch($o(e))}setVisitorInfo(e){this.store.dispatch(rc(e))}async setAgentInfo(e){await this.store.dispatch(nn(e))}async setAgentSettings(e){await this.store.dispatch(yi(e))}async getAgentSettings(){return(await this.store.dispatch(vi())).payload}async refresh(){if(this.shouldAbort())return Promise.resolve();this.inputMediator&&this.handleInputChanged(this.inputMediator.getText());let e=[];return this.store.dispatch(Us()),e.push(this.refreshWidgetSuggestions()),Promise.all(e).then(()=>{})}notifyInputChanged(e){this.store.dispatch(rs(e))}notifyKeyDown(e){this.store.dispatch(ns(e))}notifyPaste(e,o){this.store.dispatch(al({text:e,selectionText:o}))}notifyCut(e){this.store.dispatch(rl(e))}notifyExternalSuggestion(e){this.store.dispatch(Re(e)),this.store.dispatch($e())}notifyEditSuggestion(e){this.store.dispatch(Tc(e.contentType,e.suggestions)),this.store.dispatch(Ye({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(tt({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(bt({collapse:!1})),this.inputMediator&&this.store.dispatch(Ya({text:e,html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),!this.shouldAbort()&&(this.isMounted||this.store.dispatch(Be([])))}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(il(ts(e))),e.key!=="Tab"&&!this.settings.showTextSuggestions)return;let c=()=>{o||!a||r&&(e.shiftKey||(this.store.dispatch(ol()),i||this.stageSelectedSuggestion({inputType:"arrow"}),e.preventDefault()))},p=()=>{o||!a||i&&s<=0||r&&(e.shiftKey||(this.store.dispatch(sl()),e.preventDefault(),!i&&(this.state.input.selectedSuggestionIndex===-1?this.store.dispatch(Go()):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(yt(-1)),this.state.input.selectedSuggestionIndex!==-1?(this.store.dispatch(yt(-1)),this.store.dispatch(Go()),e.preventDefault()):o||(this.store.dispatch(bt({collapse:!0})),this.store.dispatch(Dc(!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(cn(!1)),this.state.input.selectedSuggestionIndex>-1?this.stageSelectedSuggestion({inputType:"tab"}):!i&&this.settings.showTabCompletion&&u&&u.text.startsWith(g)&&(this.store.dispatch(Re({text:u.text,suggestion:u,eventMetrics:{inputType:"tab"},replace:"until-selection-end"})),this.store.dispatch($e())),e.preventDefault();break}default:}}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(ll()),this.store.dispatch(Be([]))}handlingTimeStart(){this.state.handlingTime.startTime||(w.info("Start handling time"),this.store.dispatch(Mu()))}handlingTimeStop(){this.state.handlingTime.startTime&&(w.info("Stop handling time"),this.store.dispatch(kr()))}logSendMessage(e){let o=ha("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=ha("overlayInput",this.state,{version:this.version});e&&Object.assign(o,{text:e}),this.store.dispatch(tl(this.state.overlayInput.metrics))}logHandlingTime(){let e=Vu(this.state,{version:this.version});this.deepdeskApi.sendEventV1("Handling Time",e),this.store.dispatch(Nu())}notifySubmit(e={}){this.shouldAbort()||(this.store.dispatch($e()),this.store.dispatch(Nt(e.text??this.state.input.text)))}stageSelectedSuggestion(e){let o=this.state.input.selectedSuggestionIndex,{textSuggestions:n}=this.state.input;this.store.dispatch(Re({text:n[o].text,suggestion:n[o],eventMetrics:e,replace:"until-selection-end"}))}emit(e,o,n={}){let s=()=>{this.eventListeners[e]&&this.eventListeners[e].forEach(r=>{try{r(o)}catch(i){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]=Ht(o,n);return r.setAttribute("translate","no"),r.dataset.testid=e,s&&r.classList.add(s),this.unmountHandlers.push(()=>{(0,Te.unmountComponentAtNode)(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]=Ht(r,{appendTo:document.body,onMoveStart:()=>{s.style.display="none"}});a.dataset.testid=o,a.style.zIndex="2",a.appendChild(n),this.unmountHandlers.push(()=>{(0,Te.unmountComponentAtNode)(s),l()})}else document.body.appendChild(n);return s}createContainer(e,o=document.body){let n=window.getComputedStyle(o),s=document.createElement("div");return Dt(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(()=>{(0,Te.unmountComponentAtNode)(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(pl(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(!Ar(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),Dt(e),this.inputMediator=m||(Et(e)?new Ze(e):new Yt(e)),this.inputMediator.on("change",({plainText:v})=>{this.notifyInputChanged(v)}),this.inputMediator.on("updated",()=>{this.inputMediator&&this.store.dispatch(cl({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:A})=>{this.notifyPaste(v,A)}),this.inputMediator.on("cut",({selectionText:v})=>{this.notifyCut(v)});let _=f&&qu(e,f)||void 0;if(E){let{customStyles:v,appendOverlayTo:A}=o;if(Et(e))throw new Error("[Deepdesk] Inline suggestion is not supported for textarea yet.");let O=this.createInlineContainer(e,"deepdesk-caret");(0,Te.render)((0,q.jsx)(Qt,{store:this.store,customStyles:v,children:(0,q.jsx)(Wt,{broadcastEvents:this.broadcastEvents,children:(0,q.jsx)(Jp,{})})}),O),this.inputMediator.on("caret",H=>{this.store.dispatch(Be([])),H?(O.style.display="block",O.style.top=`${H.top}px`,O.style.left=`${H.left}px`):O.style.display="none"});let K=this.overlayContainerFactory("floating-menu",_||e,{appendTo:typeof x=="object"&&"appendOverlayTo"in x?x.appendOverlayTo:A},v==null?void 0:v.floatingMenuRootNode);(0,Te.render)((0,q.jsx)(Qt,{store:this.store,customStyles:v,children:(0,q.jsx)(Wt,{broadcastEvents:this.broadcastEvents,children:(0,q.jsx)(qp,{onLogIn:()=>this.loginViaPopup().catch(H=>w.warn(H.message))})})}),K)}else{let v=this.overlayContainerFactory("deepdesk-tab-completion",_||e,{appendTo:h,closestScrollElement:_,mirrorOverflow:!0,onRemove:()=>this.unmount()},n==null?void 0:n.rootNode),A=this.overlayContainerFactory("deepdesk-suggestions-overlay",_||e,{appendTo:h},n==null?void 0:n.suggestionsRootNode);(0,Te.render)((0,q.jsx)(Qt,{store:this.store,customStyles:n,children:(0,q.jsx)(Wt,{broadcastEvents:this.broadcastEvents,children:(0,q.jsx)(Pd,{inputElement:e})})}),v),(0,Te.render)((0,q.jsx)(Qt,{store:this.store,customStyles:n,children:(0,q.jsx)(Wt,{broadcastEvents:this.broadcastEvents,children:(0,q.jsx)(ld,{onLogIn:()=>this.loginViaPopup().catch(O=>w.warn(O.message))})})}),A)}(0,Te.render)((0,q.jsx)(Qt,{store:this.store,customStyles:n,children:(0,q.jsx)(Wt,{broadcastEvents:this.broadcastEvents,children:(0,q.jsx)(Bp,{})})}),this.createContainer("deepdesk-overlays"));let b;this.inputMediator.on("selection",v=>{clearTimeout(b),v===null?b=setTimeout(()=>{v!==null&&this.store.dispatch(zr(v))},500):this.store.dispatch(zr(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(bo(!1))),this.inputMediator.on("focus",()=>this.store.dispatch(bo(!0))),this.store.dispatch(el({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),this.unmountHandlers.push(()=>{this.state.input.text!==""&&(this.store.dispatch($e()),this.storeMetrics())}),this.whenConversationLoaded(()=>{var 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}),(0,Te.render)((0,q.jsx)(Qt,{store:this.store,customStyles:n,children:(0,q.jsx)(Wt,{broadcastEvents:this.broadcastEvents,children:(0,q.jsx)(Tu,{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&&(0,Te.unmountComponentAtNode)(this.widgetRoot),this.widgetRoot=null}setupHandlingTime(e){let o=Lr(e,({isVisible:n})=>{n?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),o()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){Wu(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfigPromise=null;loadProfileConfig(){return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(this.loadProfileConfigPromise=Promise.resolve().then(async()=>{await this.store.dispatch(bn());let e=wt(this.state);e&&(await this.store.dispatch(Sn()),this.store.dispatch($o({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(un),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=Js(this.state);try{o.forEach(({type:n})=>{n==="entities"?this.store.dispatch(Ne()):this.store.dispatch(Le(n))})}catch(n){this.handleError(n)}}};async function Zu(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 Qu(t,e,o={}){let n=o.replace?At(t,o.replace.start,o.replace.end):Do(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(`
|
|
9
|
+
`);break}default:break}d&&i++}return l(t),a}function ku(t){return t.top!==0||t.left!==0||t.height!==0||t.width!==0}var Yt=class extends Xe{observer;lastKnownSelection=null;getRootNode(){return this.element.getRootNode()}getText(){let e=new Range;return e.selectNodeContents(this.element),Mn(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!ku(o)&&(e.insertNode(this.element.ownerDocument.createTextNode("\u2060")),o=e.getBoundingClientRect(),e.deleteContents(),!ku(o))?null:{top:o.top+o.height,left:o.left}}getSelection(){let e=this.getRange();if(e)return Ln(this.element,e);let o=this.lastKnownSelection;if(o&&Eu(this.element,o.start,o.end))return o;let n=Do(this.element);return n.collapse(!1),Ln(this.element,n)}getSelectedText(){let{start:e,end:o}=this.getSelection();return Mn(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 Iu(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 pa=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()}},da=class{constructor(e,o,n){this.name=e;this.targetOrigin=o;this.options=n;this.iframe=Iu(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()}},ua=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 da(e,this.deepdeskUrl,{debug:!0}):new pa(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)}},Ru=ua;var Ho=class extends Error{constructor(o,n){super(o);this.body=n}name="CustomError"};var ga=t=>new Promise(e=>{setTimeout(e,t)});var Bo=class extends Ho{name="ClientError"},ma=class extends Ho{name="ServerError"},De=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 ga(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 ga(p),_();throw b}));_().then(b=>b.json().catch(()=>null).then(v=>{b.status>=500?s(new ma("Server Error",v)):b.status===401?s(new Bo("Unauthorized",v)):b.status===403?s(new Bo("Forbidden",v)):b.status===404?s(new Bo("Not Found",v)):b.status>=400&&s(new Bo("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 Hh;(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||={})})(Hh||={});function Er(t){return{...N(t),tags:t.tags}}var gt=class t{constructor(e,o={}){this.options=o;this.client=new De(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",{...G(e),tags:e.tags},{version:"v2"});return Er(o)}async getProfile(e){let o=await this.client.get(`/apis/admin/profiles/${e}/`,{version:null});return N(o)}async getKnowledgeAssistant(e){let o=await this.client.get(`/apis/admin/knowledge-assist/assistants/${e}/`,{version:null});return N(o)}async getContentTypes(){let e=await this.client.get("/apis/admin/content-types/",{version:null});return N(e)}async getPlatformConfig(){let{config:e}=await this.client.get("/platform/config/",{version:null});return N(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}`),Er(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=G(o);o.tags&&(n.tags=o.tags);let s=await this.client.put(`/api/conversations/${e}`,n,{version:"v2"});return Er(s)}async postMessages(e,o){return(await this.client.post(`/api/conversations/${e}/messages`,o.map(s=>({...G(s),tags:s.tags})),{version:"v2"})).map(s=>Er(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",G({...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:G({...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/",G(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}`,G(o),{abortLatest:!0})).map(r=>({...N(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`,G(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 N(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",G(e),{abortLatest:!0});return N(o)}async search(e){let o=await this.client.post(`/api/profiles/${e.profile}/search`,G(e),{version:"v2"});return N(o)}async knowledgeAssist(e,o,n,s={}){let r=await this.client.post(`/api/knowledge-assist/assistants/${n}/search`,G({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 N(r)}async requestLoginByEmail(e){let o=await this.client.post("/apis/admin/session/passwordless/request/",{email:e},{version:null});return N(o)}async requestPasswordlessToken(){let e=await this.client.get("/apis/admin/session/passwordless/request/",{version:null});return N(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 N(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 N(i.cues)}handleDeepdeskVersionHeaders(e){e.headers.forEach((o,n)=>{let s=n.toLowerCase(),r=s.match(Ka);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 Nn=class{constructor(e,o){this.url=e;this.options={timeout:25e3,...o}}eventListeners={};options;timeoutTimer;eventSource;proxyEvent(e){this.eventSource.addEventListener(hi(e),o=>{let{data:n}=o;try{let s=JSON.parse(n);this.emit(e,N(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 Bh;(e=>{let t;(r=>(r.Started="Started",r.Aborted="Aborted",r.Completed="Completed"))(t=e.AutoflowSessionState||={})})(Bh||={});var On=class{constructor(e,o={}){this.apiUrl=e;this.client=new De(e,o)}client;streams={};logger=w;async getCustomMessages(e){let o=await this.client.get(`/sessions/${e}/suggestions`);return N(o.suggestions)}async sendCustomMessage(e,o){let n=await this.client.post(`/sessions/${e}/messages`,G(o));return N(n)}async answerCustomMessage(e,o){await this.client.post(`/sessions/${e}/answers`,G(o))}async getAutoflows(e){let o=await this.client.get(`/sessions/${e}/autoflows`);return N(o.autoflows)}async startAutoflowSession(e){let o=await this.client.post("/autoflow-sessions",G(e));return N(o)}async stopAutoflowSession(e){await this.client.delete(`/autoflow-sessions/${e}`)}openStream(e){return this.streams[e]||(this.streams[e]=new Nn(`${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])}};var Pr=require("@reduxjs/toolkit");var Au=require("@reduxjs/toolkit");var Pu={startTime:null,stopTime:null},Lu=(0,Au.createSlice)({name:"handlingTime",initialState:Pu,reducers:{handlingTimeStart(t){if(t.startTime&&!t.stopTime)throw new Error("Timing already started");t.startTime=new Date,t.stopTime=null},handlingTimeStop(t){if(!t.startTime)throw new Error("Timing not started");t.stopTime=new Date},handlingTimeReset(t){t.startTime=null,t.stopTime=null}},extraReducers:t=>{t.addCase(M,()=>Pu)}}),{handlingTimeStart:Mu,handlingTimeStop:kr,handlingTimeReset:Nu}=Lu.actions,Ou=Lu.reducer;var Du=(t={})=>{let e={onAuthError:wo(!1),...t};return o=>n=>s=>("error"in s&&s.error.message==="Unauthorized"&&o.dispatch(e.onAuthError),n(s))};var Rr=require("@reduxjs/toolkit");var Ir={list:{keywordMatches:[]},fetchState:"idle",isInitialRequest:null};var eo=(0,Rr.createAsyncThunk)("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 Ir.list;if(!r)throw new Error("No current conversation to fetch pinned messages");return o.getStyleSuggestions({profileCode:r,message:t})}),Fh=(0,Rr.createSlice)({name:"styleSuggestions",initialState:Ir,reducers:{},extraReducers:t=>{t.addCase(eo.pending,e=>{e.isInitialRequest=e.isInitialRequest===null,e.fetchState="loading"}).addCase(eo.rejected,e=>{e.fetchState="error"}).addCase(eo.fulfilled,(e,o)=>{e.fetchState="done",ft(e.list,o.payload)||(e.list=o.payload)}).addCase(Nt,e=>{e.list=Ir.list}).addCase(M,()=>Ir)}}),Hu=Fh.reducer;var Bu=(t={})=>{let e,o=!0,n={getStyleSuggestions:eo,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 Kh(t,e){return t.text===e.text&&t.selection.start===e.selection.start&&t.selection.end===e.selection.end}var Fu=(t={})=>{let e={getTextSuggestions:Le,getAutocompleteSuggestions:ln,debounce:200,check:Lo,...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===Us.toString();if(!d||!c&&!p)return a;let{input:{userCommitted:u}}=l;return Kh(u,i)&&!g||(clearTimeout(o),!e.check(l))||(o=setTimeout(()=>{let h=lo(l);h===""?n.dispatch(e.getTextSuggestions("default")):n.dispatch(e.getAutocompleteSuggestions(h))},g?0:e.debounce)),a}};var Ku=eo.fulfilled.toString();function Uh(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 Uu=t=>e=>o=>n=>{var c;if(n.type!==Ku){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=Uh(s,i);n.type===Ku&&l.length>0&&t.sendEvent("style suggested",{conversationId:a==null?void 0:a.id,data:{keywordMatches:l}})};var zh=(0,Pr.combineReducers)({activeSuggestion:Mc,answer:kp,auth:$c,autoflows:Dd,conversation:Ga,contentTypes:cp,customMessages:qd,passwordlessToken:Xd,entities:gp,knowledgeAssistant:wp,handlingTime:Ou,info:ic,input:Ur.reducer,overlayInput:ae.reducer,settings:Va,profile:Pp,search:gc,summary:Sp,styleSuggestions:Hu,ui:Bc,rules:Qc,textSuggestions:kc});function zu(t){return(0,Pr.configureStore)({reducer:zh,middleware:e=>[...e({thunk:{extraArgument:{dynamicThunkObject:t.dynamicThunkObject,deepdeskAPI:t.deepdeskAPI,deepdeskBrokerAPI:t.deepdeskBrokerAPI}},serializableCheck:!1}),Du(),Fu({debounce:200}),Bu({debounce:500}),Uu(t.deepdeskAPI),...t.middleware?t.middleware:[]],preloadedState:t.preloadedState})}var jh=t=>{var e;return((e=t==null?void 0:t.type)==null?void 0:e.toLowerCase())??"unknown"},Vh=t=>e=>o=>n=>{var a;let s=e.getState(),r=Hr("inlineSuggestions")(s);switch(n.type){case Ye.toString():{let l=Ks(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 wo.toString():{!n.payload&&t.emit("logout",void 0);break}case Re.toString():{let{start:l,end:c}=s.input.selection;t.emit("select-suggestion",{type:jh(n.payload.suggestion),...n.payload,replace:n.payload.replace==="selection"?{start:l,end:c}:{start:0,end:c}},{mayApplyChanges:!0});break}case os.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 Go.toString():{let l=e.getState(),{text:c,selection:p}=l.input.userCommitted;t.emit("reset",{text:c,selectionAfter:p},{mayApplyChanges:!0});break}case is.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 Ne.fulfilled.toString():n.payload.length>0&&t.sendEvent("entities found",{conversationId:s.conversation.current.id,data:{entities:n.payload}});break;case nt.fulfilled.toString():t.sendEvent("conversation summarized",{conversationId:s.conversation.current.id,data:{summary:n.payload.summary}});break;case Q.toString():t.sendEvent(n.payload.name,{conversationId:((a=n.payload.options)==null?void 0:a.includeConversationData)&&s.conversation.current.id,data:n.payload.data});break;case ns.toString():t.handleKeyDown(n.payload);break;case Nt.toString():t.logSendMessage(n.payload);break;case ss.toString():t.logSendEditSuggestionMessage(n.payload);break;case rs.toString():t.handleInputChanged(n.payload);break;case tt.fulfilled.toString():t.broadcast(Ti,n.payload,!1),t.emit("cues",n.payload);break;default:break}let i=o(n);switch(n.type){case Nt.toString():t.handleAfterSendMessage(n.payload);break;case cn.toString():t.onUpdateShowTabHint(n.payload);break;case kr.toString():t.logHandlingTime();break;case Re.toString():{r&&(e.dispatch(Be([])),e.dispatch($e()));break}case Be.toString():{r&&n.payload.length>0&&e.dispatch(yt(0));break}default:break}return i},ju=Vh;function fa(t){return t.toISOString().replace("T"," ").replace("Z","")}function Vu(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:fa(o),timeStop:fa(n)}}function ha(t,e,o){var O,K,H;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((W,{text:z,searchTerm:I})=>W+z.length-(I?I.length:0),0),_=c??Date.now(),b=(Date.now()-_)/1e3+(p||0),v=s/b,A=m.reduce((W,{searchTerm:z})=>W+(z?z.length:0),0);return{conversationId:e.conversation.current.id,source:"agent",text:n,clientVersion:o.version,pastes:d,cuts:g,deletions:u,lenTextTyped:s+A,lenTextTotal:h,lenTextAssisted:x,lenTextPasted:r,lenTextCut:i,lenTextDeleted:a,timeTotalSeconds:b,charsPerSecond:v,numPastes:l,textSuggestionsV2:m,suggestionsCounters:[{source:"gpt",countOffered:f.filter(W=>W.source==="gpt").length}],agentId:(O=e.info.agentInfo)==null?void 0:O.agentId,agentName:(K=e.info.agentInfo)==null?void 0:K.agentName,agentEmail:(H=e.info.agentInfo)==null?void 0:H.agentEmail}}function ya(t,e){var r;let o=t.closest(e);if(o)return o;let n=t.getRootNode().host;if(n instanceof HTMLElement)return ya(n,e);let s=(r=t.ownerDocument.defaultView)==null?void 0:r.frameElement;return s?ya(s,e):null}function qu(t,e){return ya(t,e)}function Wu(t){return typeof t=="object"&&t!==null&&"name"in t&&"message"in t}function qh(t){return typeof t=="object"&&t!==null&&"tagName"in t}function Ar(t){return qh(t)&&(Et(t)||Cs(t))}var $u=(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 Wh(t){return t.offsetParent!==null}function Gu(t){if(!Wh(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 Lr(t,e,o=100){let n=Gu(t);e({isVisible:n});let s=setInterval(()=>{let r=Gu(t);r!==n&&(n=r,e({isVisible:n}))},o);return()=>{clearTimeout(s)}}var q=require("react/jsx-runtime");var Xu=$u("showTabHint",!0),Dn=class t{static version="10.12.1-beta.4";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 gt(c,{token:r,fetch:i}),this.version=n,this.instanceId=t.count++;let p={deepdeskAPI:this.deepdeskApi,dynamicThunkObject:this.dynamicThunkObject,middleware:[ju({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=>Xu.update(d),sendEvent:(d,g)=>this.deepdeskApi.sendEvent(d,g)})]};o&&Object.assign(p,{deepdeskBrokerAPI:new On(o)}),this.store=zu(p),this.broadcastEvents=new Ru({debug:!0,deepdeskUrl:c,eventMap:Jc(this.store),createCustomChannel:l}),this.store.dispatch($o),this.store.dispatch(cn(Xu.value())),this.store.dispatch($o({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(wo(null)),this.store.dispatch(et()),new Promise(e=>{let o=this.store.subscribe(()=>{let n=this.store.getState();ne(n)&&Uc(n)!=="loading"&&(o(),e())});this.unmountHandlers.push(()=>{o()})})}async isLoggedIn(){return(await this.store.dispatch(et())).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(Fr({sessionId:e,options:o}))).payload}async createConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(Zn(e))).payload}async getConversationBySessionId(e,o){return this.hasConversation()&&this.sessionId()!==e&&this.resetConversation(),(await this.store.dispatch(Qn({sessionId:e,options:o}))).payload}async upsertConversation(e){return this.hasConversation()&&this.sessionId()!==e.sessionId&&this.resetConversation(),(await this.store.dispatch(Kr(e))).payload}async postMessages(e){return(await this.store.dispatch(Yn(e))).payload}async updateConversation(e){return(await this.store.dispatch(Jn(e))).payload}resetConversation(){this.store.dispatch(M()),this.loadProfileConfigPromise=null,this.dynamicThunkObject.conversationQuery=null}async getSummary(){let e=await this.store.dispatch(nt());if(e.error)throw new Error(e.error.message);return e.payload.summary}configure(e){this.store.dispatch($o(e))}setVisitorInfo(e){this.store.dispatch(rc(e))}async setAgentInfo(e){await this.store.dispatch(nn(e))}async setAgentSettings(e){await this.store.dispatch(yi(e))}async getAgentSettings(){return(await this.store.dispatch(vi())).payload}async refresh(){if(this.shouldAbort())return Promise.resolve();this.inputMediator&&this.handleInputChanged(this.inputMediator.getText());let e=[];return this.store.dispatch(Us()),e.push(this.refreshWidgetSuggestions()),Promise.all(e).then(()=>{})}notifyInputChanged(e){this.store.dispatch(rs(e))}notifyKeyDown(e){this.store.dispatch(ns(e))}notifyPaste(e,o){this.store.dispatch(al({text:e,selectionText:o}))}notifyCut(e){this.store.dispatch(rl(e))}notifyExternalSuggestion(e){this.store.dispatch(Re(e)),this.store.dispatch($e())}notifyEditSuggestion(e){this.store.dispatch(Tc(e.contentType,e.suggestions)),this.store.dispatch(Ye({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(tt({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(bt({collapse:!1})),this.inputMediator&&this.store.dispatch(Ya({text:e,html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),!this.shouldAbort()&&(this.isMounted||this.store.dispatch(Be([])))}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(il(ts(e))),e.key!=="Tab"&&!this.settings.showTextSuggestions)return;let c=()=>{o||!a||r&&(e.shiftKey||(this.store.dispatch(ol()),i||this.stageSelectedSuggestion({inputType:"arrow"}),e.preventDefault()))},p=()=>{o||!a||i&&s<=0||r&&(e.shiftKey||(this.store.dispatch(sl()),e.preventDefault(),!i&&(this.state.input.selectedSuggestionIndex===-1?this.store.dispatch(Go()):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(yt(-1)),this.state.input.selectedSuggestionIndex!==-1?(this.store.dispatch(yt(-1)),this.store.dispatch(Go()),e.preventDefault()):o||(this.store.dispatch(bt({collapse:!0})),this.store.dispatch(Dc(!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(cn(!1)),this.state.input.selectedSuggestionIndex>-1?this.stageSelectedSuggestion({inputType:"tab"}):!i&&this.settings.showTabCompletion&&u&&u.text.startsWith(g)&&(this.store.dispatch(Re({text:u.text,suggestion:u,eventMetrics:{inputType:"tab"},replace:"until-selection-end"})),this.store.dispatch($e())),e.preventDefault();break}default:}}handleAfterSendMessage(e){this.emit("send-message",e),this.store.dispatch(ll()),this.store.dispatch(Be([]))}handlingTimeStart(){this.state.handlingTime.startTime||(w.info("Start handling time"),this.store.dispatch(Mu()))}handlingTimeStop(){this.state.handlingTime.startTime&&(w.info("Stop handling time"),this.store.dispatch(kr()))}logSendMessage(e){let o=ha("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=ha("overlayInput",this.state,{version:this.version});e&&Object.assign(o,{text:e}),this.store.dispatch(tl(this.state.overlayInput.metrics))}logHandlingTime(){let e=Vu(this.state,{version:this.version});this.deepdeskApi.sendEventV1("Handling Time",e),this.store.dispatch(Nu())}notifySubmit(e={}){this.shouldAbort()||(this.store.dispatch($e()),this.store.dispatch(Nt(e.text??this.state.input.text)))}stageSelectedSuggestion(e){let o=this.state.input.selectedSuggestionIndex,{textSuggestions:n}=this.state.input;this.store.dispatch(Re({text:n[o].text,suggestion:n[o],eventMetrics:e,replace:"until-selection-end"}))}emit(e,o,n={}){let s=()=>{this.eventListeners[e]&&this.eventListeners[e].forEach(r=>{try{r(o)}catch(i){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]=Ht(o,n);return r.setAttribute("translate","no"),r.dataset.testid=e,s&&r.classList.add(s),this.unmountHandlers.push(()=>{(0,Te.unmountComponentAtNode)(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]=Ht(r,{appendTo:document.body,onMoveStart:()=>{s.style.display="none"}});a.dataset.testid=o,a.style.zIndex="2",a.appendChild(n),this.unmountHandlers.push(()=>{(0,Te.unmountComponentAtNode)(s),l()})}else document.body.appendChild(n);return s}createContainer(e,o=document.body){let n=window.getComputedStyle(o),s=document.createElement("div");return Dt(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(()=>{(0,Te.unmountComponentAtNode)(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(pl(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(!Ar(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),Dt(e),this.inputMediator=m||(Et(e)?new Ze(e):new Yt(e)),this.inputMediator.on("change",({plainText:v})=>{this.notifyInputChanged(v)}),this.inputMediator.on("updated",()=>{this.inputMediator&&this.store.dispatch(cl({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:A})=>{this.notifyPaste(v,A)}),this.inputMediator.on("cut",({selectionText:v})=>{this.notifyCut(v)});let _=f&&qu(e,f)||void 0;if(E){let{customStyles:v,appendOverlayTo:A}=o;if(Et(e))throw new Error("[Deepdesk] Inline suggestion is not supported for textarea yet.");let O=this.createInlineContainer(e,"deepdesk-caret");(0,Te.render)((0,q.jsx)(Qt,{store:this.store,customStyles:v,children:(0,q.jsx)(Wt,{broadcastEvents:this.broadcastEvents,children:(0,q.jsx)(Jp,{})})}),O),this.inputMediator.on("caret",H=>{this.store.dispatch(Be([])),H?(O.style.display="block",O.style.top=`${H.top}px`,O.style.left=`${H.left}px`):O.style.display="none"});let K=this.overlayContainerFactory("floating-menu",_||e,{appendTo:typeof x=="object"&&"appendOverlayTo"in x?x.appendOverlayTo:A},v==null?void 0:v.floatingMenuRootNode);(0,Te.render)((0,q.jsx)(Qt,{store:this.store,customStyles:v,children:(0,q.jsx)(Wt,{broadcastEvents:this.broadcastEvents,children:(0,q.jsx)(qp,{onLogIn:()=>this.loginViaPopup().catch(H=>w.warn(H.message))})})}),K)}else{let v=this.overlayContainerFactory("deepdesk-tab-completion",_||e,{appendTo:h,closestScrollElement:_,mirrorOverflow:!0,onRemove:()=>this.unmount()},n==null?void 0:n.rootNode),A=this.overlayContainerFactory("deepdesk-suggestions-overlay",_||e,{appendTo:h},n==null?void 0:n.suggestionsRootNode);(0,Te.render)((0,q.jsx)(Qt,{store:this.store,customStyles:n,children:(0,q.jsx)(Wt,{broadcastEvents:this.broadcastEvents,children:(0,q.jsx)(Pd,{inputElement:e})})}),v),(0,Te.render)((0,q.jsx)(Qt,{store:this.store,customStyles:n,children:(0,q.jsx)(Wt,{broadcastEvents:this.broadcastEvents,children:(0,q.jsx)(ld,{onLogIn:()=>this.loginViaPopup().catch(O=>w.warn(O.message))})})}),A)}(0,Te.render)((0,q.jsx)(Qt,{store:this.store,customStyles:n,children:(0,q.jsx)(Wt,{broadcastEvents:this.broadcastEvents,children:(0,q.jsx)(Bp,{})})}),this.createContainer("deepdesk-overlays"));let b;this.inputMediator.on("selection",v=>{clearTimeout(b),v===null?b=setTimeout(()=>{v!==null&&this.store.dispatch(zr(v))},500):this.store.dispatch(zr(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(bo(!1))),this.inputMediator.on("focus",()=>this.store.dispatch(bo(!0))),this.store.dispatch(el({text:this.inputMediator.getText(),html:this.inputMediator.getHTML(),selection:this.inputMediator.getSelection()})),this.unmountHandlers.push(()=>{this.state.input.text!==""&&(this.store.dispatch($e()),this.storeMetrics())}),this.whenConversationLoaded(()=>{var 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}),(0,Te.render)((0,q.jsx)(Qt,{store:this.store,customStyles:n,children:(0,q.jsx)(Wt,{broadcastEvents:this.broadcastEvents,children:(0,q.jsx)(Tu,{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&&(0,Te.unmountComponentAtNode)(this.widgetRoot),this.widgetRoot=null}setupHandlingTime(e){let o=Lr(e,({isVisible:n})=>{n?this.handlingTimeStart():this.handlingTimeStop()});this.unmountHandlers.push(()=>{this.handlingTimeStop(),o()}),this.whenConversationLoaded(()=>{this.handlingTimeStart()})}handleError(e){Wu(e)&&e.message==="Unauthorized"&&this.login()}loadProfileConfigPromise=null;loadProfileConfig(){return this.loadProfileConfigPromise?this.loadProfileConfigPromise:(this.loadProfileConfigPromise=Promise.resolve().then(async()=>{await this.store.dispatch(bn());let e=wt(this.state);e&&(await this.store.dispatch(Sn()),this.store.dispatch($o({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(un),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=Js(this.state);try{o.forEach(({type:n})=>{n==="entities"?this.store.dispatch(Ne()):this.store.dispatch(Le(n))})}catch(n){this.handleError(n)}}};async function Zu(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 Qu(t,e,o={}){let n=o.replace?At(t,o.replace.start,o.replace.end):Do(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
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?At(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 $h(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 Gh(t){let e=document.createDocumentFragment();return t.split(`
|
|
11
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 Ju(t,e){return!t.contains(e)||e===t?null:e.parentNode===t?e:Ju(t,e.parentNode)}async function Yu(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?$h(e):Gh(e);if(o){let p=l.startContainer===t?t.childNodes[l.startOffset]:l.startContainer,d=Ju(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 eg(t){return t.replace(/\[([\w\s\d]+)\]\((https?:\/\/[^\s]+)\)/g,'<a href="$2" target="_blank" rel="noreferrer">$1</a>')}async function tg(t,e,o){await new gt(t).authenticateWithKey(e,o)}async function og(t){let o=await new De(t).get("/platform/config/",{version:null});return N(o)}async function Xh(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 ng(t,e){let o=await Xh(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}}0&&(module.exports={Card,ContentEditableInput,DeepdeskAPI,DeepdeskSDK,HTTPClient,InputMediator,InputType,KeyboardHint,Label,Locale,Section,SectionList,Sources,Suggestion,SuggestionList,TextAreaInput,ToggleButton,attachFile,authenticateWithKey,createFullRange,createOverlayContainer,createRangeFromOffsets,escapeHTML,fetchPlatformConfig,formatTextMarkup,getRangeOffsets,getRangeText,insertCKEditor,isHTML,isSupportedInputElement,updateContentEditable,updateTextArea,useStyles,waitForElementVisibilityChange});
|