{"version":3,"sources":["../node_modules/react-flags-select/flags sync /^/.*/.svg$","app/config/Setup.js","app/config/constants/MessageTypeEnum.js","app/config/localization/en.js","app/config/localization/Localization.js","app/config/localization/da.js","app/config/localization/de.js","app/util/localization.js","app/util/utilMethods.js","app/chat/chatField/speechBubble/message/textMessage/TextMessage.js","app/chat/chatField/speechBubble/message/imageMessage/ImageMessage.js","app/chat/chatField/speechBubble/message/linkMessage/LinkMessage.js","app/chat/chatField/speechBubble/message/videoMessage/VideoMessage.js","app/chat/chatField/speechBubble/message/cardMessage/CardMessage.js","app/chat/chatField/speechBubble/message/fileMessage/FileMessage.js","app/config/constants/LayoutTypeEnum.js","app/chat/chatField/speechBubble/message/Message.js","app/config/constants/ChatResponseFeedbackEnum.js","app/chat/chatField/speechBubble/chatFeedback/LikeIcon.js","app/chat/chatField/speechBubble/chatFeedback/ChatFeedback.js","app/config/constants/ChatQuestionTypeEnum.js","app/config/constants/LineBreakTypeEnum.js","app/config/constants/IntegrationTypeEnum.js","app/chat/chatField/speechBubble/SpeechBubble.js","app/chat/chatField/ChatBotChatField.js","app/chat/chatInput/chatAttachment/ChatAttachment.js","app/chat/chatInput/chatInputField/ChatInputField.js","app/chat/chatInput/chatInputMenu/ChatInputMenu.js","app/chat/chatInput/autocomplete/components/AdminAutocompleteMenuItem.js","app/chat/chatInput/autocomplete/components/UserAutocompleteMenuItem.js","app/chat/chatInput/autocomplete/Autocomplete.js","app/chat/chatInput/ChatInput.js","app/chat/infoPage/InfoPage.js","app/chat/topBar/languageSelector/LanguageSelector.js","app/chat/topBar/TopBar.js","app/chat/chatField/searchBotChatField/SearchBotChatField.js","app/chat/Chat.js","app/App.js","index.js"],"names":["map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","module","exports","text","link","image","video","card","file","en","getLocalizationLanguageCode","languageCode","localization","includes","isLanguageSupported","getLocaleDateTimeString","dateTimeUtc","lowerCase","localizationCode","dateTime","Date","todayString","Localization","atString","result","toLocaleDateString","toLocaleTimeString","hour","minute","hour12","replace","toLowerCase","TextMessage","Component","render","React","createElement","className","dangerouslySetInnerHTML","__html","this","props","content","ImageMessage","SideBySideMagnifier","imageSrc","url","imageAlt","largeImageSrc","mouseActivation","MOUSE_ACTIVATION","DOUBLE_CLICK","touchActivation","TOUCH_ACTIVATION","DOUBLE_TAP","alwaysInPlace","LinkMessage","href","target","rel","isSuggestion","style","color","hover","chatConfig","suggestionFontHoverColor","suggestionFontColor","isUser","fontUserColor","fontBotColor","title","LinkIcon","VideoMessage","ReactPlayer","playing","autoPlay","loop","controls","showControls","width","height","volume","muted","CardMessage","classes","Card","CardContent","cardContent","CardMedia","cardmedia","maxHeight","src","imageUrl","alt","cardContenttxt","Typography","gutterBottom","variant","component","subtitle","CardActions","Button","size","linkUrl","linkButtonTitle","withStyles","styles","display","justifyContent","alignItems","fontSize","paddingBottom","FileMessage","onClick","downloadFile","backgroundColor","speechBubbleUserColor","speechBubbleBotColor","chatBot","searchBot","Message","layoutMode","LayoutTypeEnum","MessageType","message","filename","messageType","LikeIcon","xmlns","x","y","viewBox","d","fill","ChatFeedback","constructor","super","handleFeedbackButtonHover","chatResponseFeedbackType","ChatResponseFeedbackEnum","setState","likeButtonIsHovered","state","dislikeButtonIsHovered","handleButtonClick","chatResponseFeedback","spectatorMode","speechBubble","sendChatResponseFeedback","chatQuestionId","onMouseEnter","onMouseLeave","SpeechBubble","getMessageRowList","messageList","rowList","forEach","hidden","push","rowMessageList","i","length","lineBreak","suggestion","row","speechBubbleClicked","disabled","sendIntent","intentToTriggerId","ChatQuestionTypeEnum","speechBubbleToggleHover","axios","post","process","REACT_APP_TEST_BUILD","Setup","token","then","response","window","open","data","catch","error","handleCopyClick","copiedIndex","index","setTimeout","msg","join","textElement","document","innerHTML","textContent","innerText","tempElement","setAttribute","body","appendChild","range","createRange","selectNodeContents","selection","getSelection","removeAllRanges","addRange","execCommand","err","console","removeChild","language","showAvatar","withMemory","displayBackground","maxWidth","welcomePreviewEnabled","logoUrl","some","m","minWidth","lineBreakType","LineBreakTypeEnum","isGpt","avatarUrl","font","botWriting","avatarName","chatbotName","border","speechBubbleBorderColor","suggestionSpeechBubbleHoverColor","suggestionSpeechBubbleColor","borderColor","suggestionBorderColor","integrationType","position","right","top","IntegrationTypeEnum","PhoneIcon","SmsIcon","key","sendMessage","lastRow","chatResponseId","Fragment","fillRule","clipRule","stroke","strokeWidth","strokeLinecap","strokeLinejoin","ChatBotChatField","getIsWritingSpeechBubble","MessageTypeEnum","scrollToBottom","messagesEnd","scrollIntoView","behavior","chatFieldParentContainerDiv","scrollTo","scrollHeight","getChatFieldContentHeight","ua","navigator","userAgent","isIe","indexOf","chatFieldContentDiv","clientHeight","handleLoadMoreVisibilityChange","isVisible","loadMoreEnabled","lastChatFieldContentHeight","scrollToOldHeight","loadMoreSpeechBubble","componentDidMount","that","setInterval","chatFieldContentHeight","loadToEnd","scrollTop","getSpeechBubbleRowList","speechBubbleList","array","renderSpeechBubbleRow","speechBubbleRow","every","Slide","direction","in","componentDidUpdate","prevProps","fileUploadedList","speechBubbleRowList","ref","div","LinearProgress","loadMore","VizSensor","onChange","Carousel","useKeyboardArrows","centerMode","showArrows","showThumbs","showStatus","centerSlidePercentage","userWriting","float","clear","el","ChatAttachment","handleUploadHover","uploadIsHovered","openMenu","anchorEl","btnEl","closeMenu","chatMenuItem","intentId","displayName","handleCapture","_ref","files","Array","from","newPendingFiles","pendingFiles","setSnackbarErrorMessage","existingFile","name","fileReader","FileReader","progress","loading","onabort","log","onerror","onload","arrayBuffer","newFile","fileContent","Uint8Array","reduce","byte","String","fromCharCode","customerId","prevState","handleAddUploadedFiles","handleAddPendingFiles","readAsArrayBuffer","loadedFile","maxSize","fileUploadedListRemove","filter","_","handleFlushDeleteUploadedFile","accept","multiple","type","value","htmlFor","Icon","tabIndex","AttachmentICon","inputButtonsFocusedColor","cursor","ChatInputField","handleEmojiHover","emojiIsHovered","openEmojiPopover","closeEmojiPopover","handleInputKeyPress","preventDefault","handleInputOnClick","input","selectionStart","selectionEnd","reEnableMostAskedQuestions","isExpanded","setShowSearchBotChatField","handleClickOutside","event","wrapperRef","current","contains","element","querySelector","handleInputOnChange","isWriting","sendUserIsWriting","handleMessageChanges","addEmoji","emoji","emojiString","native","substr","textareaRef","createRef","paddingRight","cx","cy","r","x1","y1","x2","y2","TextareaAutosize","placeholder","fileUploadedText","chatAgentMode","chatInputText","maxLength","chatInputMax","autoComplete","autoFocus","onKeyDown","maxRows","isMobile","enableEmoji","MoodICon","Popover","Boolean","anchorOrigin","vertical","horizontal","transformOrigin","onClose","disableRestoreFocus","Picker","showPreview","showSkinTones","skin","onSelect","include","i18n","search","notfound","skintext","categories","recent","smileys","people","nature","foods","activity","places","objects","symbols","flags","custom","categorieslabel","skintones","1","2","3","4","5","6","emojiTooltip","set","showStopMessage","stopMessage","handleResetChatInput","fontWeight","textAlign","lineHeight","points","ChatInputMenu","handleMenuHover","menuIsHovered","chatMenuItemList","sort","a","b","isOpen","showAbove","MenuICon","Menu","keepMounted","getContentAnchorEl","MenuItem","AdminAutocompleteMenuItem","onEditIntent","onSendIntent","replacedString","ListItem","ListItemText","primary","overflow","flexWrap","Tooltip","aria-label","IconButton","EditIcon","SendIcon","UserAutocompleteMenuItem","onSendSuggestion","whiteSpace","minHeight","question","stopPropagation","disableRipple","Autocomplete","handleKeyPress","previousElementSibling","focus","onChangeFocusToInput","nextElementSibling","handleSendChatAgentIntent","onSendChatAgentIntent","handleEditChatAgentIntent","onEditChatAgentIntent","handleSendUserSuggestion","onSendUserSuggestion","clickAwayHandler","flushTrainingPhraseList","openPopover","searchString","formattedSearchString","charAt","substring","trim","filteredTrainingPhraseList","trainingPhraseList","slice","disableAutoFocus","disableEnforceFocus","paper","ClickAwayListener","onClickAway","innerRef","regex","RegExp","forwardRef","assign","ChatInput","_this","handleGetTrainingPhraseList","searchText","disableAutomComplete","arguments","undefined","handleRootClick","handleGetTrainingPhraseListDebounced","enableAutocomplete","handleChangeFocusToInput","inputRef","firstChild","clearSpeechBubble","handleGetChatResponse","chatResponseString","sbIndex","mIndex","strippedString","string","translate","match","entity","removeHtmlTagsFromString","sendChatAgentIntent","handleSendMessage","disableAutocomplete","updateStateOfPlaceholder","messageWasSent","handleInputUpKeyStroke","autoCompleteRef","lastChild","handleInputDownKeyStroke","callback","wait","timeout","initialCall","next","apply","clearTimeout","debounce","fileTypeIconMap","PDF","PictureAsPdf","DOCX","Description","JPG","Image","PNG","TXT","TextFields","default","disclaimer","gap","borderBottom","padding","fileExtension","split","pop","toUpperCase","fileIcon","borderRadius","boxShadow","marginRight","flex","textOverflow","handleDeleteUploadedFile","marginLeft","chatbot","openDownwards","showConnectionLostMsg","uploadFilesList","onInputUpKeyStroke","onInputDownKeyStroke","show","enableUpload","uploadFileComplete","handleResetUploadedFiles","item","flushPendingFiles","showMenuInInput","cmi","languageId","InfoPage","toggleShowInfoPage","pointerEvents","showInfoPage","gdprLink","Link","showPoweredBy","LanguageSelector","languageSelected","countryCode","refs","flagSelector","updateSelected","languageList","ReactFlagsSelect","countries","lang","defaultCountry","showSelectedLabel","showOptionLabel","selectedSize","TopBar","showInfo","avatar","clientDescription","enableMaximize","toggleMaxiChatbot","isMaximized","MinimizeIcon","FullIcon","HelpIcon","closeChatbot","CloseIcon","SearchBotChatField","scrollToTop","initializeChatMenuItems","reset","resizeChatContainer","handleMenuItemClick","async","onMenuItemClick","menuItem","resetChatMenuItems","lastMessageLength","bind","showSearchBotChatField","sourcesList","margin","background","menuList","flexDirection","marginBottom","List","button","onMouseOver","currentTarget","onMouseOut","primaryTypographyProps","sortedSpeechBubbleRowList","tempSpeechBubbleRowList","dropId","reverse","flat","topBackgroundColor","topFontColor","startButtonFillColor","startButtonBackgroundColor","overflowY","showSources","boxSizing","_this$props$chatConfi","_this$props$chatConfi2","_this$props$chatConfi3","_this$props$chatConfi4","_this$props$chatConfi5","_this$props$chatConfi6","showSourcesWithContent","borderTop","PublicIcon","flexShrink","fontFamily","textDecoration","WebkitLineClamp","WebkitBoxOrient","paddingLeft","Chat","invokeSignalRMessage","args","hubConnection","invoke","markText","md","MarkdownIt","linkify","html","use","markdownItCodeCopy","iconStyle","iconClass","buttonStyle","buttonClass","defaultRender","renderer","rules","link_open","tokens","idx","options","env","self","renderToken","aIndex","attrIndex","attrPush","attrs","relIndex","hrefIndex","renderedText","startsWith","endsWith","parent","postMessage","startLoad","sendMostAskedQuestions","questions","SignalR","withUrl","userId","clientKey","domain","configureLogging","Debug","build","startChatConnection","onclose","connected","on","DisableConnectionRetry","connection","baseUrl","languageParam","chatConfigLanguageList","find","languageCodeShort","head","getElementsByTagName","clientScript","clientScriptElement","clientCss","clientStyleElement","createTextNode","clientHeaderHtml","linkElement","soundOnMessageReceived","messageReceivedSound","preload","setSearchBot","setChatFieldPlacement","setChatBot","isChatAgent","chatResponse","chatbotOpenState","showNewMsgIconMobile","showNewMsgIconDesktop","handleChatResponse","uniqueTuples","chatResponseListResult","item2","startLoadCalc","loadMoreCalc","item1","totalCount","requestedWelcome","sendWelcome","speechBubbleIndex","findIndex","sb","isMailResponse","toggleChatbot","isChatMinimized","speechBubbleToDisplay","getMessageSpeechBubble","setBotIsWriting","appendSendMessage","chatInputMessage","fileName","handleDeletePendingFile","isStream","isArray","_ref2","streamId","streamIdStopped","speechBubbleBuffer","lastSpeechBubble","indexDiff","isLastStream","lastSpeechBubbleMsg","currentSpeechBubbleMsg","speechBubbleContent","contentSource","bufferItem","currentSpeechBubbleContent","botWritingStream","lastStreamId","delay","lastNonSuggestionSpeechBubbleIndex","lastIndexOf","chatResponseDropId","uuidv4","unshift","playReceivedMessageSound","getElementById","play","disableConnectionRetry","start","getFileMessageSpeechBubble","forceWelcomeMessage","sendFiles","uploadPromises","Promise","reject","params","all","fileUploading","messageToDisplay","urls","resizeContainerSend","searchBotFieldRef","pendingFileUrls","openChatContainer","chatQuestionType","hideSuggestions","chatMenuItemId","JSON","parse","stringify","ccl","trainingPhraseSuggestionList","getTrainingPhraseList","getChatResponse","entries","searchBotLayoutElem","setProperty","resizeSourceContainer","errorMessage","snackbarErrorMessage","disableMostAskedQuestions","hadFirstClick","chatAttachmentRef","searchParams","URLSearchParams","location","toString","get","parseInt","referrer","ancestorOrigins","languageData","decodeURIComponent","chatFieldPlacement","openDownWards","iframeListener","setchatbotOpenState","setWelcomePreviewEnabled","addEventListener","attachEvent","uniquePendingFileUrls","Set","uniqueFileUploadedList","Snackbar","autoHideDuration","MuiAlert","elevation","severity","showLogoTop","gptSetupType","opacity","CircularProgress","App","BrowserRouter","Switch","Route","exact","path","ReactDOM"],"mappings":"mHAAA,IAAIA,EAAM,CACT,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IACZ,WAAY,IAC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","file":"static/js/main.dc5dd9ab.chunk.js","sourcesContent":["var map = {\n\t\"./ad.svg\": 387,\n\t\"./ae.svg\": 388,\n\t\"./af.svg\": 389,\n\t\"./ag.svg\": 390,\n\t\"./ai.svg\": 391,\n\t\"./al.svg\": 392,\n\t\"./am.svg\": 393,\n\t\"./ao.svg\": 394,\n\t\"./ar.svg\": 395,\n\t\"./as.svg\": 396,\n\t\"./at.svg\": 397,\n\t\"./au.svg\": 398,\n\t\"./aw.svg\": 399,\n\t\"./az.svg\": 400,\n\t\"./ba.svg\": 401,\n\t\"./bb.svg\": 402,\n\t\"./bd.svg\": 403,\n\t\"./be.svg\": 404,\n\t\"./bf.svg\": 405,\n\t\"./bg.svg\": 406,\n\t\"./bh.svg\": 407,\n\t\"./bi.svg\": 408,\n\t\"./bj.svg\": 409,\n\t\"./bm.svg\": 410,\n\t\"./bo.svg\": 411,\n\t\"./br.svg\": 412,\n\t\"./bs.svg\": 413,\n\t\"./bt.svg\": 414,\n\t\"./bw.svg\": 415,\n\t\"./by.svg\": 416,\n\t\"./bz.svg\": 417,\n\t\"./ca.svg\": 418,\n\t\"./cd.svg\": 419,\n\t\"./cf.svg\": 420,\n\t\"./cg.svg\": 421,\n\t\"./ch.svg\": 422,\n\t\"./ci.svg\": 423,\n\t\"./ck.svg\": 424,\n\t\"./cl.svg\": 425,\n\t\"./cm.svg\": 426,\n\t\"./cn.svg\": 427,\n\t\"./co.svg\": 428,\n\t\"./cr.svg\": 429,\n\t\"./cu.svg\": 430,\n\t\"./cv.svg\": 431,\n\t\"./cw.svg\": 432,\n\t\"./cy.svg\": 433,\n\t\"./cz.svg\": 434,\n\t\"./de.svg\": 435,\n\t\"./dj.svg\": 436,\n\t\"./dk.svg\": 437,\n\t\"./dm.svg\": 438,\n\t\"./do.svg\": 439,\n\t\"./dz.svg\": 440,\n\t\"./ec.svg\": 441,\n\t\"./ee.svg\": 442,\n\t\"./eg.svg\": 443,\n\t\"./er.svg\": 444,\n\t\"./es.svg\": 445,\n\t\"./et.svg\": 446,\n\t\"./fi.svg\": 447,\n\t\"./fj.svg\": 448,\n\t\"./fk.svg\": 449,\n\t\"./fm.svg\": 450,\n\t\"./fo.svg\": 451,\n\t\"./fr.svg\": 452,\n\t\"./ga.svg\": 453,\n\t\"./gb.svg\": 454,\n\t\"./gd.svg\": 455,\n\t\"./ge.svg\": 456,\n\t\"./gg.svg\": 457,\n\t\"./gh.svg\": 458,\n\t\"./gi.svg\": 459,\n\t\"./gl.svg\": 460,\n\t\"./gm.svg\": 461,\n\t\"./gn.svg\": 462,\n\t\"./gq.svg\": 463,\n\t\"./gr.svg\": 464,\n\t\"./gt.svg\": 465,\n\t\"./gu.svg\": 466,\n\t\"./gw.svg\": 467,\n\t\"./hk.svg\": 468,\n\t\"./hn.svg\": 469,\n\t\"./hr.svg\": 470,\n\t\"./ht.svg\": 471,\n\t\"./hu.svg\": 472,\n\t\"./id.svg\": 473,\n\t\"./ie.svg\": 474,\n\t\"./il.svg\": 475,\n\t\"./im.svg\": 476,\n\t\"./in.svg\": 477,\n\t\"./io.svg\": 478,\n\t\"./iq.svg\": 479,\n\t\"./ir.svg\": 480,\n\t\"./is.svg\": 481,\n\t\"./it.svg\": 482,\n\t\"./je.svg\": 483,\n\t\"./jm.svg\": 484,\n\t\"./jo.svg\": 485,\n\t\"./jp.svg\": 486,\n\t\"./ke.svg\": 487,\n\t\"./kg.svg\": 488,\n\t\"./kh.svg\": 489,\n\t\"./ki.svg\": 490,\n\t\"./km.svg\": 491,\n\t\"./kn.svg\": 492,\n\t\"./kp.svg\": 493,\n\t\"./kr.svg\": 494,\n\t\"./kw.svg\": 495,\n\t\"./ky.svg\": 496,\n\t\"./kz.svg\": 497,\n\t\"./la.svg\": 498,\n\t\"./lb.svg\": 499,\n\t\"./li.svg\": 500,\n\t\"./lk.svg\": 501,\n\t\"./lr.svg\": 502,\n\t\"./ls.svg\": 503,\n\t\"./lt.svg\": 504,\n\t\"./lu.svg\": 505,\n\t\"./lv.svg\": 506,\n\t\"./ly.svg\": 507,\n\t\"./ma.svg\": 508,\n\t\"./mc.svg\": 509,\n\t\"./md.svg\": 510,\n\t\"./me.svg\": 511,\n\t\"./mg.svg\": 512,\n\t\"./mh.svg\": 513,\n\t\"./mk.svg\": 514,\n\t\"./ml.svg\": 515,\n\t\"./mm.svg\": 516,\n\t\"./mn.svg\": 517,\n\t\"./mo.svg\": 518,\n\t\"./mp.svg\": 519,\n\t\"./mq.svg\": 520,\n\t\"./mr.svg\": 521,\n\t\"./ms.svg\": 522,\n\t\"./mt.svg\": 523,\n\t\"./mu.svg\": 524,\n\t\"./mv.svg\": 525,\n\t\"./mw.svg\": 526,\n\t\"./mx.svg\": 527,\n\t\"./my.svg\": 528,\n\t\"./mz.svg\": 529,\n\t\"./na.svg\": 530,\n\t\"./nato.svg\": 531,\n\t\"./ne.svg\": 532,\n\t\"./nf.svg\": 533,\n\t\"./ng.svg\": 534,\n\t\"./ni.svg\": 535,\n\t\"./nl.svg\": 536,\n\t\"./no.svg\": 537,\n\t\"./np.svg\": 538,\n\t\"./nr.svg\": 539,\n\t\"./nu.svg\": 540,\n\t\"./nz.svg\": 541,\n\t\"./om.svg\": 542,\n\t\"./pa.svg\": 543,\n\t\"./pe.svg\": 544,\n\t\"./pf.svg\": 545,\n\t\"./pg.svg\": 546,\n\t\"./ph.svg\": 547,\n\t\"./pk.svg\": 548,\n\t\"./pl.svg\": 549,\n\t\"./pn.svg\": 550,\n\t\"./pr.svg\": 551,\n\t\"./ps.svg\": 552,\n\t\"./pt.svg\": 553,\n\t\"./pw.svg\": 554,\n\t\"./py.svg\": 555,\n\t\"./qa.svg\": 556,\n\t\"./ro.svg\": 557,\n\t\"./rs.svg\": 558,\n\t\"./ru.svg\": 559,\n\t\"./rw.svg\": 560,\n\t\"./sa.svg\": 561,\n\t\"./sb.svg\": 562,\n\t\"./sc.svg\": 563,\n\t\"./sd.svg\": 564,\n\t\"./se.svg\": 565,\n\t\"./sg.svg\": 566,\n\t\"./si.svg\": 567,\n\t\"./sk.svg\": 568,\n\t\"./sl.svg\": 569,\n\t\"./sm.svg\": 570,\n\t\"./sn.svg\": 571,\n\t\"./so.svg\": 572,\n\t\"./sr.svg\": 573,\n\t\"./ss.svg\": 574,\n\t\"./st.svg\": 575,\n\t\"./sv.svg\": 576,\n\t\"./sx.svg\": 577,\n\t\"./sy.svg\": 578,\n\t\"./sz.svg\": 579,\n\t\"./tc.svg\": 580,\n\t\"./td.svg\": 581,\n\t\"./tg.svg\": 582,\n\t\"./th.svg\": 583,\n\t\"./tibet.svg\": 584,\n\t\"./tj.svg\": 585,\n\t\"./tk.svg\": 586,\n\t\"./tm.svg\": 587,\n\t\"./tn.svg\": 588,\n\t\"./to.svg\": 589,\n\t\"./tr.svg\": 590,\n\t\"./tt.svg\": 591,\n\t\"./tv.svg\": 592,\n\t\"./tw.svg\": 593,\n\t\"./tz.svg\": 594,\n\t\"./ua.svg\": 595,\n\t\"./ug.svg\": 596,\n\t\"./us.svg\": 597,\n\t\"./uy.svg\": 598,\n\t\"./uz.svg\": 599,\n\t\"./ve.svg\": 600,\n\t\"./vi.svg\": 601,\n\t\"./vn.svg\": 602,\n\t\"./vu.svg\": 603,\n\t\"./ws.svg\": 604,\n\t\"./ye.svg\": 605,\n\t\"./za.svg\": 606,\n\t\"./zm.svg\": 607,\n\t\"./zw.svg\": 608\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 211;","export default {\r\n apiEndpointDev: 'https://inchatbotapi.eu.ngrok.io/api/',\r\n apiEndpointTest: 'https://testapi.indialog.ai/api/',\r\n apiEndpointProd: 'https://api.indialog.ai/api/',\r\n signalrConnectionRetryInterval: 1000,\r\n imageChunkSize: 10240,\r\n messageLoadCount: 15,\r\n logoUrl: 'https://mediastore.inchatbot.com/17427bef-5404-4502-b9e6-3b0da1187624/Avatar/logo.png',\r\n uploadFileSizeLimit: 15728640 // 15 MB\r\n}\r\n","/**\r\n * MessageType enum constant.\r\n */\r\nexport default {\r\n text: 0,\r\n link: 1,\r\n image: 2,\r\n video: 3,\r\n card: 4,\r\n file:5\r\n}","export default {\r\n 'chatInput.connectionProblems': 'Problem with the internet connection.',\r\n 'chatInput.reconnecting': 'Reconnecting...',\r\n 'chatInput.chatAttachment.uploadFileError': 'An error occurred when sending the file!',\r\n 'chatInput.chatAttachment.fileSizeError': 'It is not possible to upload files larger than 15 MB!',\r\n 'chatInput.chatAttachment.maxFilesError': 'It is not possible to upload more than 5 files at once',\r\n 'chatInput.chatAttachment.sameFileError': 'It is not possible to upload the same file again!',\r\n 'chatInput.autoComplete.edit': 'Edit answer',\r\n 'chatInput.autoComplete.send': 'Send intent',\r\n 'chatInputField.chatInputPlaceholder': 'Ask me something...',\r\n 'chatInputField.chatInputPlaceholderAgentMode': 'Write here to the user...',\r\n 'chatInputField.chatInputPlaceholderFileUploadMode': 'Write what should be done with the content of the file.',\r\n 'chatInputField.suggestionInputPlaceholder': 'Choose one of the options...',\r\n 'speechBubble.dateTime.today' : 'Today',\r\n 'speechBubble.dateTime.at' : 'at',\r\n 'infoPage.privacyPolicyLinkText': 'Privacy policy',\r\n 'infoPage.goBackButtonText': 'Back',\r\n \"chatInput..title.send\": \"Send message\",\r\n \"topBar.title.help\": \"Info\",\r\n \"topBar.title.mini\": \"Minimize/Maximize\",\r\n \"topBar.title.close\": \"Close chat\"\r\n}\r\n","import da from './da';\r\nimport en from './en';\r\nimport de from './de';\r\n\r\nexport default {\r\n 'da-DK': da,\r\n 'en': en,\r\n 'en-US': en,\r\n 'de-DE': de,\r\n 'default': en\r\n}\r\n","export default {\r\n 'chatInput.connectionProblems': 'Problemer med internetforbindelsen.',\r\n 'chatInput.reconnecting': 'Genopretter forbindelsen...',\r\n 'chatInput.chatAttachment.uploadFileError': 'Der opstod en fejl da filen skulle sendes!',\r\n 'chatInput.chatAttachment.fileSizeError': 'Det er ikke muligt at uploade filer større end 15 MB!',\r\n 'chatInput.chatAttachment.maxFilesError': 'Det er ikke muligt at uploade mere end 5 filer på én gang',\r\n 'chatInput.chatAttachment.sameFileError': 'Det er ikke muligt at uploade den samme fil igen!',\r\n 'chatInput.autoComplete.edit': 'Rediger svar',\r\n 'chatInput.autoComplete.send': 'Send intent',\r\n 'chatInputField.chatInputPlaceholder': 'Spørg mig om noget...',\r\n 'chatInputField.chatInputPlaceholderAgentMode': 'Skriv her til brugeren...',\r\n 'chatInputField.chatInputPlaceholderFileUploadMode': 'Skriv, hvad der skal gøres med indholdet af filen.',\r\n 'chatInputField.suggestionInputPlaceholder': 'Tryk på en af valgmulighederne...',\r\n 'speechBubble.dateTime.today' : 'I dag',\r\n 'speechBubble.dateTime.at' : 'kl.',\r\n 'infoPage.privacyPolicyLinkText': 'Privatlivs politik',\r\n 'infoPage.goBackButtonText': 'Tilbage',\r\n 'chatInput..title.send': 'Send besked',\r\n 'topBar.title.help': 'Info',\r\n 'topBar.title.mini': 'Minimere/Maksimere',\r\n 'topBar.title.close': 'Luk chat',\r\n}\r\n","export default {\r\n 'chatInput.connectionProblems': 'Problem mit der Internetverbindung.',\r\n 'chatInput.reconnecting': 'Wiederverbindung ...',\r\n 'chatInput.chatAttachment.uploadFileError': 'Beim senden der datei ist ein fehler aufgetreten!',\r\n 'chatInput.chatAttachment.fileSizeError': 'Es ist nicht möglich, dateien mit mehr als 15 MB hochzuladen!',\r\n 'chatInput.chatAttachment.maxFilesError': 'Es ist nicht möglich, mehr als 5 Dateien gleichzeitig hochzuladen',\r\n 'chatInput.chatAttachment.sameFileError': 'Es ist nicht möglich, dieselbe datei erneut hochzuladen!',\r\n 'chatInput.autoComplete.edit': 'Antwort bearbeiten',\r\n 'chatInput.autoComplete.send': 'Senden sie intent',\r\n 'chatInputField.chatInputPlaceholder': 'Frag mich etwas...',\r\n 'chatInputField.chatInputPlaceholderAgentMode': 'Schreiben Sie hier an den Benutzer ...',\r\n 'chatInputField.chatInputPlaceholderFileUploadMode': 'Schreiben Sie, was mit dem Inhalt der Datei gemacht werden soll.',\r\n 'chatInputField.suggestionInputPlaceholder': 'Wählen Sie eine der Optionen ...',\r\n 'speechBubble.dateTime.today' : 'Heute',\r\n 'speechBubble.dateTime.at' : 'um',\r\n 'infoPage.privacyPolicyLinkText': 'Datenschutz-Bestimmungen',\r\n 'infoPage.goBackButtonText': 'Zurück',\r\n \"chatInput..title.send\": \"Nachricht senden\",\r\n \"topBar.title.help\": \"Info\",\r\n \"topBar.title.mini\": \"Minimieren/Maximieren\",\r\n \"topBar.title.close\": \"Chat schließen\"\r\n}\r\n","import localization from '../config/localization/Localization';\r\n\r\nfunction isLanguageSupported(languageCode){\r\n if(languageCode == null){\r\n return false\r\n }\r\n return Object.keys(localization).includes(languageCode)\r\n}\r\n\r\nexport function getLocalizationLanguageCode(languageCode){\r\n if(isLanguageSupported(languageCode)){\r\n return languageCode\r\n } else {\r\n return 'default'\r\n }\r\n}","import Localization from \"../config/localization/Localization\";\r\n\r\nexport function debounce(callback, wait) {\r\n let timeout = null\r\n let initialCall = true\r\n\r\n return function() {\r\n\r\n const next = () => {\r\n callback.apply(this, arguments)\r\n timeout = null\r\n }\r\n\r\n if(initialCall){\r\n initialCall = false\r\n next()\r\n }\r\n\r\n clearTimeout(timeout)\r\n timeout = setTimeout(next, wait)\r\n }\r\n}\r\n\r\nexport function removeHtmlTagsFromString(string){\r\n let strippedString = string.replace(/(<([^>]+)>)/gi, \"\");\r\n const tagsRegEx = /&(nbsp|amp|quot|lt|gt);/g;\r\n const translate = {\r\n \"nbsp\": \"\",\r\n \"amp\" : \"&\",\r\n \"quot\": \"\\\"\",\r\n \"lt\" : \"<\",\r\n \"gt\" : \">\"\r\n };\r\n strippedString = strippedString.replace(tagsRegEx, (match, entity) => {\r\n return translate[entity]\r\n })\r\n return strippedString;\r\n}\r\n\r\nexport function getLocaleDateTimeString(dateTimeUtc, lowerCase, localizationCode){\r\n if (!dateTimeUtc) {\r\n return null;\r\n }\r\n\r\n const dateTime = new Date(dateTimeUtc);\r\n const todayString = Localization[localizationCode]['speechBubble.dateTime.today'];\r\n const atString = Localization[localizationCode]['speechBubble.dateTime.at'];\r\n\r\n let result = null;\r\n\r\n // Check if its the same day\r\n if ((new Date()).toLocaleDateString() === dateTime.toLocaleDateString()) {\r\n result = todayString;\r\n } else {\r\n result = dateTime.toLocaleDateString();\r\n }\r\n\r\n result = result + ' ' + atString + ' ' + dateTime\r\n .toLocaleTimeString([], {hour: '2-digit', minute: '2-digit', hour12: false})\r\n .replace('AM', '')\r\n .replace('PM', '');\r\n\r\n if (lowerCase) {\r\n result = result.toLowerCase();\r\n }\r\n\r\n return result;\r\n};\r\n","import React, { Component } from 'react';\r\n\r\nimport '../../../../../chat.css';\r\n\r\n/**\r\n * A message type that shows a html encoded text message.\r\n */\r\nclass TextMessage extends Component {\r\n render() {\r\n return(\r\n
and the corresponding
if they exist\r\n if (renderedText.startsWith(\"\")) {\r\n renderedText = renderedText.substring(3);\r\n }\r\n if (renderedText.endsWith(\"
\\n\")) {\r\n renderedText = renderedText.substring(0, renderedText.length - 5);\r\n }\r\n\r\n return renderedText;\r\n }\r\n\r\n setShowSearchBotChatField = (show) => {\r\n\r\n window.parent.postMessage({'showSearchBotChatField': show}, '*');\r\n\r\n this.setState({showSearchBotChatField: show})\r\n }\r\n\r\n loadMoreSpeechBubble = () => {\r\n this.setState({loadToEnd : false});\r\n this.invokeSignalRMessage(['SendChatHistory', this.state.language.id, this.state.startLoad, Setup.messageLoadCount]);\r\n };\r\n\r\n sendMostAskedQuestions = (questions) => {\r\n this.invokeSignalRMessage(['SendMostAskedQuestions', this.state.language.id, this.state.startLoad, Setup.messageLoadCount, questions]);\r\n } \r\n componentDidUpdate(prevProps, prevState) {\r\n if (prevState.pendingFileUrls !== this.state.pendingFileUrls) {\r\n const uniquePendingFileUrls = [...new Set(this.state.pendingFileUrls)];\r\n if (uniquePendingFileUrls.length !== this.state.pendingFileUrls.length) {\r\n this.setState({ pendingFileUrls: uniquePendingFileUrls });\r\n }\r\n }\r\n \r\n if (prevState.fileUploadedList !== this.state.fileUploadedList) {\r\n if (this.state.fileUploadedList && this.state.fileUploadedList.length > 0) {\r\n this.setState({ fileUploadedText: true });}\r\n const uniqueFileUploadedList = [...new Set(this.state.fileUploadedList)];\r\n if (uniqueFileUploadedList.length !== this.state.fileUploadedList.length) {\r\n this.setState({ fileUploadedList: uniqueFileUploadedList });\r\n }\r\n }\r\n \r\n if (prevState.sourcesList !== this.state.sourcesList && this.state.chatConfig.layoutMode === LayoutTypeEnum.searchBot) {\r\n this.resizeSourceContainer(this.state.sourcesList);\r\n }\r\n if ((prevState.chatConfig !== this.state.chatConfig)) {\r\n this.setChatFieldPlacement();\r\n }\r\n }\r\n \r\n\r\n\r\n /**\r\n * On startup a connection is made to the SignalR hub and event listeners is set up.\r\n */\r\n componentDidMount = () => {\r\n // SignalR connection config.\r\n const hubConnection = new SignalR.HubConnectionBuilder()\r\n .withUrl((process.env.NODE_ENV === 'development' ? Setup.apiEndpointDev : process.env.REACT_APP_TEST_BUILD ? Setup.apiEndpointTest : Setup.apiEndpointProd) +\r\n 'chat?token=' + this.state.token + '&userId=' + this.state.userId + '&chatAgentMode=' + this.state.chatAgentMode +\r\n '&clientKey=' + this.state.clientKey + '&domain=' + this.state.domain)\r\n .configureLogging(process.env.NODE_ENV === 'development' || process.env.REACT_APP_TEST_BUILD ? SignalR.LogLevel.Debug : SignalR.LogLevel.Error)\r\n .build();\r\n\r\n // Establishing connection to SignalR hub.\r\n this.setState({hubConnection}, () => {\r\n this.startChatConnection();\r\n\r\n // Event listener for when the connection is lost\r\n this.state.hubConnection.onclose((error) => {\r\n this.setState({connected: false}, () => {\r\n setTimeout(() => {\r\n this.startChatConnection();\r\n }, Setup.signalrConnectionRetryInterval);\r\n });\r\n });\r\n\r\n // Event listener for when the widget should disable retry\r\n this.state.hubConnection.on('DisableConnectionRetry', () => {\r\n this.setState({DisableConnectionRetry: true});\r\n window.parent.postMessage({'hideChatbot': true}, '*');\r\n });\r\n\r\n // Event listener for when the chat config is recieved.\r\n this.state.hubConnection.on('ChatConfig', (chatConfig, token) => {\r\n this.setState({token});\r\n\r\n if(chatConfig.layoutMode === LayoutTypeEnum.searchBot)\r\n {\r\n window.parent.postMessage({'setSearchbotToken': token}, '*');\r\n }else\r\n {\r\n window.parent.postMessage({'setChatToken': token}, '*');\r\n }\r\n\r\n\r\n\r\n hubConnection.connection.baseUrl = (process.env.NODE_ENV === 'development' ? Setup.apiEndpointDev : process.env.REACT_APP_TEST_BUILD ? Setup.apiEndpointTest : Setup.apiEndpointProd) +\r\n 'chat?token=' + token+ '&userId=' + this.state.userId + '&chatAgentMode=' + this.state.chatAgentMode +\r\n '&clientKey=' + this.state.clientKey + '&domain=' + this.state.domain;\r\n\r\n if (this.state.chatConfig) {\r\n return;\r\n }\r\n\r\n this.setState({chatConfig});\r\n\r\n let language = this.state.language;\r\n let languageParam = this.state.languageParam;\r\n\r\n // First try to read the language from query parameter.\r\n if (!language && languageParam) {\r\n //override e-gb to en - language\r\n if(languageParam.toLowerCase() == \"en-gb\")\r\n {\r\n languageParam = \"en\";\r\n }\r\n language = chatConfig.chatConfigLanguageList.find((lang) => {\r\n return lang.language.languageCode.toLowerCase() === languageParam.toLowerCase() ||\r\n lang.language.languageCodeShort.toLowerCase() === languageParam.toLowerCase() ||\r\n lang.language.countryCode.toLowerCase() === languageParam.toLowerCase() ||\r\n lang.language.name.toLowerCase() === languageParam.toLowerCase();\r\n }).language;\r\n }\r\n\r\n // If no language found, set the first language in the chat config as selected.\r\n if (!language) {\r\n language = chatConfig.chatConfigLanguageList[0].language;\r\n }\r\n\r\n this.setState({language}, () => {\r\n if(!(this.state.userId == null && this.state.chatConfig.layoutMode !== null && this.state.chatConfig.layoutMode === LayoutTypeEnum.searchBot)){\r\n this.invokeSignalRMessage(['SendChatHistory', this.state.language.id, this.state.startLoad, Setup.messageLoadCount]);\r\n }\r\n });\r\n\r\n // Inject client html, script and css\r\n const head = document.getElementsByTagName('head')[0];\r\n\r\n if (chatConfig.clientScript && this.state.userId == null) {\r\n const clientScriptElement = document.createElement('script');\r\n clientScriptElement.text = chatConfig.clientScript;\r\n\r\n head.appendChild(clientScriptElement);\r\n }\r\n\r\n if (chatConfig.clientCss) {\r\n const clientStyleElement = document.createElement('style');\r\n clientStyleElement.appendChild(document.createTextNode(chatConfig.clientCss));\r\n\r\n head.appendChild(clientStyleElement);\r\n }\r\n\r\n if (chatConfig.clientHeaderHtml) {\r\n\r\n const linkElement = document.createElement('link');\r\n linkElement.href = chatConfig.clientHeaderHtml;\r\n linkElement.rel = 'stylesheet';\r\n\r\n head.appendChild(linkElement);\r\n }\r\n\r\n if(chatConfig.soundOnMessageReceived) {\r\n var x = document.createElement(\"AUDIO\");\r\n x.id = \"audio_messagereceived\";\r\n x.src = \"/sound/\" + chatConfig.messageReceivedSound;\r\n x.preload = \"auto\";\r\n document.body.appendChild(x);\r\n }\r\n\r\n if (this.state.chatConfig && \r\n this.state.chatConfig.layoutMode !== null && \r\n this.state.chatConfig.layoutMode === LayoutTypeEnum.searchBot) {\r\n this.setSearchBot();\r\n this.setChatFieldPlacement();\r\n }\r\n else{\r\n this.setChatBot();\r\n }\r\n\r\n });\r\n\r\n // Event listener for when user or chat agent starts or stop writing\r\n this.state.hubConnection.on('SendUserIsWriting', (isChatAgent, isWriting) => {\r\n if (isChatAgent) {\r\n this.setState({botWriting: isWriting});\r\n } else {\r\n this.setState({userWriting: isWriting});\r\n }\r\n });\r\n\r\n // Event listener for when messages are recieved.\r\n this.state.hubConnection.on('Send', (chatResponse) => {\r\n if (this.state.chatbotOpenState === false) {\r\n const showNewMsgIcon = isMobile ? this.state.chatConfig.showNewMsgIconMobile : this.state.chatConfig.showNewMsgIconDesktop;\r\n\r\n if (showNewMsgIcon) {\r\n window.parent.postMessage({'showNewMsgIcon': true}, '*');\r\n }\r\n }\r\n\r\n this.setState({loadToEnd: true});\r\n this.handleChatResponse(chatResponse);\r\n });\r\n\r\n this.state.hubConnection.on('SendSource', (chatResponse) => {\r\n\r\n let uniqueTuples = [...this.state.sourcesList];\r\n /* console.log(speechBubbleList, \"HER\") */\r\n //Her skal du så hvert svar ^ lave et array eller noget, så du senere kan vise Link/Titel og et uddrag fra kilden\r\n if(chatResponse.speechBubbleList!=null && chatResponse.speechBubbleList.length> 0 ) {\r\n chatResponse.speechBubbleList.forEach((speechBubble) => {\r\n if (speechBubble.title !== \"\" && speechBubble.url !== \"\") {\r\n const exists = uniqueTuples.some(\r\n ([title, url]) => title === speechBubble.title && url === speechBubble.url\r\n );\r\n\r\n if (!exists) {\r\n uniqueTuples.push([speechBubble.messageList\r\n .map(message => this.markText(message.content))\r\n .join('\\n'),speechBubble.title, speechBubble.url]); // Add tuple to state array.\r\n }\r\n }\r\n });\r\n\r\n // Update state with unique tuples\r\n this.setState({ sourcesList: uniqueTuples });\r\n }\r\n\r\n });\r\n\r\n \r\n\r\n // Event listener when chat history is received\r\n this.state.hubConnection.on('SendChatHistory', (chatResponseListResult) => {\r\n let speechBubbleList = this.state.speechBubbleList;\r\n\r\n if(this.state.loadToEnd == false) {\r\n chatResponseListResult.item2= chatResponseListResult.item2.reverse();\r\n }\r\n\r\n chatResponseListResult.item2.forEach((chatResponse) => {\r\n if(this.state.loadToEnd == false) {\r\n chatResponse.speechBubbleList= chatResponse.speechBubbleList.reverse();\r\n }\r\n speechBubbleList = this.handleChatResponse(chatResponse, speechBubbleList);\r\n });\r\n\r\n const startLoadCalc = this.state.startLoad + chatResponseListResult.item2.length;\r\n const loadMoreCalc = startLoadCalc < chatResponseListResult.item1;\r\n\r\n this.setState({totalCount: chatResponseListResult.item1,startLoad: startLoadCalc, loadMore: loadMoreCalc});\r\n\r\n this.setState({speechBubbleList}, () => {\r\n if (this.state.requestedWelcome === false && this.state.userId == null) {\r\n if (this.state.intentId) {\r\n this.sendIntent(this.state.intentId, ChatQuestionTypeEnum.customIntent);\r\n } else {\r\n this.sendWelcome();\r\n }\r\n\r\n this.setState({requestedWelcome: true});\r\n }\r\n });\r\n\r\n });\r\n\r\n\r\n // Event listener when a user likes a message\r\n this.state.hubConnection.on('SendChatResponseFeedback', (chatQuestionId, chatResponseFeedback) => {\r\n let speechBubbleList = this.state.speechBubbleList;\r\n\r\n const speechBubbleIndex = speechBubbleList.findIndex(sb => sb.chatQuestionId === chatQuestionId);\r\n if (speechBubbleIndex !== -1) {\r\n speechBubbleList[speechBubbleIndex].chatResponseFeedback = chatResponseFeedback;\r\n\r\n this.setState({speechBubbleList});\r\n }\r\n });\r\n\r\n // Event listener for when mail is sent.\r\n this.state.hubConnection.on('SendEmail', () => {\r\n this.setState({botWriting: false});\r\n\r\n let speechBubbleList = this.state.speechBubbleList;\r\n\r\n speechBubbleList.forEach((speechBubble) => {\r\n if (speechBubble.isMailResponse) {\r\n speechBubble.hidden = false;\r\n }\r\n });\r\n\r\n this.setState({speechBubbleList});\r\n });\r\n\r\n this.state.hubConnection.on('SendTrainingPhraseList', (trainingPhraseList) => {\r\n this.setState({trainingPhraseList: trainingPhraseList });\r\n });\r\n });\r\n\r\n };\r\n\r\n toggleChatbot = () => {\r\n this.setState((prevState) => ({\r\n isChatMinimized: !prevState.isChatMinimized\r\n }));\r\n };\r\n\r\n handleMenuItemClick = (menuItem) => {\r\n\r\n const speechBubbleToDisplay = this.getMessageSpeechBubble(menuItem.displayName);\r\n\r\n this.setBotIsWriting();\r\n\r\n if(this.state.chatConfig.layoutMode !== null && this.state.chatConfig.layoutMode === LayoutTypeEnum.chatBot){\r\n this.appendSendMessage(speechBubbleToDisplay);\r\n }else {\r\n this.setState({ chatInputMessage: menuItem.displayName });\r\n }\r\n\r\n };\r\n\r\n handleResetUploadedFiles = () => {\r\n this.setState({fileUploadedList:[]})\r\n }\r\n\r\n handleAddUploadedFiles = (newFile) => {\r\n this.setState(prevState => {\r\n\r\n const fileExists = prevState.fileUploadedList.some(file => file === newFile);\r\n if (fileExists) {\r\n return null;\r\n }\r\n\r\n return {\r\n fileUploadedList: [...prevState.fileUploadedList, newFile]\r\n };\r\n });\r\n }\r\n\r\n handleDeleteUploadedFile = (fileName) => {\r\n this.setState((prevState) => {\r\n const updatedFileUploadedList = prevState.fileUploadedList.filter(file => file !== fileName);\r\n const updatedPendingFiles = prevState.pendingFiles.filter(file => !file.name.includes(fileName));\r\n\r\n return {\r\n fileUploadedList: updatedFileUploadedList,\r\n pendingFiles: updatedPendingFiles\r\n };\r\n }, () => {\r\n this.setState((prevState) => ({\r\n fileUploadedText: prevState.fileUploadedList.length > 0\r\n }));\r\n });\r\n };\r\n\r\n \r\n handleFlushDeleteUploadedFile = () => {\r\n this.setState({fileUploadedListRemove: null})\r\n if (this.state.fileUploadedList && this.state.fileUploadedList.length > 0) {\r\n this.setState({ fileUploadedText: true });\r\n } else {\r\n this.setState({ fileUploadedText: false });\r\n }\r\n }\r\n\r\n handleDeletePendingFile = (fileName) => {\r\n this.setState(prevState => ({\r\n fileUploadedList: prevState.fileUploadedList.filter(file => file !== fileName),\r\n pendingFiles: prevState.pendingFiles.filter(file => !file.name.includes(fileName)),\r\n }));\r\n };\r\n\r\n\r\n \r\n handleChatResponse = (chatResponse, speechBubbleList) => {\r\n\r\n if(chatResponse.isStream == true )\r\n {\r\n speechBubbleList = this.state.speechBubbleList;\r\n let uniqueTuples = Array.isArray(this.state.sourcesList) ? [...this.state.sourcesList] : [];\r\n/* console.log(speechBubbleList, \"HER\") */\r\n //Her skal du så hvert svar ^ lave et array eller noget, så du senere kan vise Link/Titel og et uddrag fra kilden\r\n if(speechBubbleList!=null && speechBubbleList.length> 0 ) {\r\n speechBubbleList.forEach((speechBubble) => {\r\n if (speechBubble.title !== \"\" && speechBubble.url !== \"\") {\r\n const exists = uniqueTuples.some(\r\n ([title, url]) => title === speechBubble.title && url === speechBubble.url\r\n );\r\n \r\n if (!exists) {\r\n uniqueTuples.push([speechBubble.title, speechBubble.url]); // Add tuple to state array.\r\n } \r\n }\r\n });\r\n \r\n // Update state with unique tuples\r\n this.setState({ sourcesList: uniqueTuples });\r\n \r\n\r\n const streamId = chatResponse.speechBubbleList[0].streamId;\r\n\r\n if(this.state.streamIdStopped.some((x) => x == streamId) )\r\n {\r\n return ;\r\n }\r\n\r\n if(chatResponse.speechBubbleList[0].index > 1) {\r\n\r\n let speechBubbleBuffer = this.state.speechBubbleBuffer;\r\n\r\n speechBubbleBuffer.push(chatResponse.speechBubbleList[0]);\r\n\r\n speechBubbleBuffer = speechBubbleBuffer.sort((a, b) => a.index - b.index);\r\n\r\n let lastSpeechBubble = speechBubbleList[speechBubbleList.length - 1];\r\n\r\n speechBubbleBuffer.forEach((item, index) => {\r\n\r\n lastSpeechBubble.index = (lastSpeechBubble.index == undefined || lastSpeechBubble.index == 0 ? 1 : lastSpeechBubble.index);\r\n\r\n const indexDiff = item.index - lastSpeechBubble.index;\r\n\r\n if (lastSpeechBubble && (lastSpeechBubble.isUser == undefined || lastSpeechBubble.isUser == false) && lastSpeechBubble.streamId == streamId && (indexDiff == 1) && item.isLastStream == false) {\r\n\r\n\r\n const lastSpeechBubbleMsg = lastSpeechBubble.messageList[0];\r\n const currentSpeechBubbleMsg = item.messageList[0];\r\n const speechBubbleContent = (lastSpeechBubbleMsg.contentSource ? lastSpeechBubbleMsg.contentSource : lastSpeechBubbleMsg.content) + (currentSpeechBubbleMsg.contentSource ? currentSpeechBubbleMsg.contentSource : currentSpeechBubbleMsg.content);\r\n speechBubbleList[speechBubbleList.length - 1].messageList[0].contentSource = speechBubbleContent;\r\n speechBubbleList[speechBubbleList.length - 1].messageList[0].content = this.markText(speechBubbleContent);\r\n speechBubbleList[speechBubbleList.length - 1].index = item.index;\r\n speechBubbleList[speechBubbleList.length - 1].isLastStream = item.isLastStream;\r\n speechBubbleBuffer = speechBubbleBuffer.filter(bufferItem => bufferItem.index !== item.index);\r\n\r\n }\r\n\r\n });\r\n\r\n let showStopMessage = true;\r\n\r\n if(chatResponse.speechBubbleList[0].isLastStream)\r\n {\r\n const currentSpeechBubbleContent = chatResponse.speechBubbleList[0].messageList[0].content;\r\n speechBubbleList[speechBubbleList.length - 1].messageList[0].contentSource = currentSpeechBubbleContent;\r\n speechBubbleList[speechBubbleList.length - 1].messageList[0].content = this.markText(currentSpeechBubbleContent);\r\n speechBubbleList[speechBubbleList.length - 1].isLastStream = true;\r\n\r\n let streamIdStopped = this.state.streamIdStopped;\r\n\r\n streamIdStopped.push(chatResponse.speechBubbleList[0].streamId);\r\n\r\n showStopMessage = false;\r\n\r\n this.setState({streamIdStopped});\r\n }\r\n\r\n var botWritingStream = speechBubbleList[speechBubbleList.length - 1].isLastStream || speechBubbleList[speechBubbleList.length - 1].messageList[0].contentSource == undefined ? false: true\r\n\r\n this.setState({\r\n speechBubbleList: speechBubbleList,\r\n speechBubbleBuffer: speechBubbleBuffer,\r\n lastStreamId: streamId,\r\n showStopMessage,\r\n botWriting: this.state.chatConfig.layoutMode === LayoutTypeEnum.searchBot ? false: botWritingStream\r\n });\r\n\r\n return;\r\n }\r\n\r\n\r\n }\r\n\r\n }\r\n\r\n let delay = 0;\r\n\r\n const lastNonSuggestionSpeechBubbleIndex = chatResponse.speechBubbleList.map((speechBubble) => {\r\n return speechBubble.suggestion;\r\n }).lastIndexOf(null);\r\n\r\n //Id used in internal sorting for search bot layout\r\n const chatResponseDropId = uuidv4();\r\n\r\n chatResponse.speechBubbleList.forEach((speechBubble, i, array) => {\r\n // If any delay on speechbubble a 'is writing animation' speechbubble is shown.\r\n\r\n if (speechBubble.delay) {\r\n delay += speechBubble.delay;\r\n let botWriting = true;\r\n this.setState({botWriting});\r\n }\r\n\r\n if(this.state.loadToEnd == false)\r\n {\r\n if (speechBubble.suggestion) {\r\n speechBubble.hidden = true;\r\n }\r\n }\r\n\r\n speechBubble.dropId = chatResponseDropId;\r\n speechBubble.chatResponseId = chatResponse.id;\r\n speechBubble.integrationType = chatResponse.integrationType;\r\n\r\n speechBubble.index = i;\r\n\r\n if (!(this.state.chatConfig && \r\n this.state.chatConfig.layoutMode !== null &&\r\n this.state.chatConfig.layoutMode === LayoutTypeEnum.searchBot)) {\r\n speechBubble.dateTimeUtc = chatResponse.dateTimeUtc;\r\n }\r\n\r\n\r\n // Sets if chat rating buttons should be shown.\r\n if (chatResponse.chatQuestionId &&\r\n speechBubble.index === lastNonSuggestionSpeechBubbleIndex &&\r\n !speechBubble.isUser &&\r\n speechBubble.lineBreakType !== LineBreakTypeEnum.carousel) {\r\n\r\n speechBubble.chatQuestionId = chatResponse.chatQuestionId;\r\n speechBubble.chatResponseFeedback = chatResponse.chatResponseFeedback;\r\n }\r\n\r\n if (speechBubble.index > 0) {\r\n speechBubble.index -= array.some(speechBubble => speechBubble.isUser) ? 1 : 0;\r\n }\r\n\r\n // Disables suggestions if in spectatormode.\r\n if (speechBubble.suggestion && this.state.userId) {\r\n speechBubble.disabled = true;\r\n }\r\n\r\n\r\n if (speechBubble.isGpt) {\r\n speechBubble.messageList = speechBubble.messageList.map(message => {\r\n return { ...message, content: this.markText(message.content) };\r\n });\r\n }\r\n\r\n\r\n // If state should be updated.\r\n if (speechBubbleList) {\r\n if(this.state.loadToEnd) {\r\n speechBubbleList.push(speechBubble);\r\n } else\r\n {\r\n if(speechBubbleList.find(x=>x.chatQuestionId ==speechBubble.chatQuestionId) == undefined|| speechBubble.id=='00000000-0000-0000-0000-000000000000' || speechBubble.chatQuestionId == null) {\r\n speechBubbleList.unshift(speechBubble);\r\n }\r\n }\r\n } else {\r\n // Sets delay on when to show the speechbubble.\r\n setTimeout(() => {\r\n speechBubbleList = this.state.speechBubbleList;\r\n\r\n // Hide suggestions if user speechbubble is recieved.\r\n if (speechBubble.isUser || this.state.loadToEnd == false) {\r\n speechBubbleList.forEach((sb) => {\r\n if (sb.suggestion) {\r\n sb.hidden = true;\r\n }\r\n });\r\n }\r\n\r\n if(this.state.loadToEnd) {\r\n speechBubbleList.push(speechBubble);\r\n }else\r\n {\r\n if(speechBubbleList.find(x=>x.chatQuestionId ==speechBubble.chatQuestionId) == undefined|| speechBubble.id=='00000000-0000-0000-0000-000000000000' || speechBubble.chatQuestionId == null) {\r\n speechBubbleList.unshift(speechBubble);\r\n }\r\n }\r\n\r\n this.setState({speechBubbleList});\r\n\r\n if (i === array.length - 1 ) {\r\n let botWriting = false;\r\n this.setState({botWriting});\r\n }\r\n\r\n }, delay);\r\n\r\n if(this.state.chatConfig.soundOnMessageReceived && chatResponse.speechBubbleList && chatResponse.speechBubbleList[0] && chatResponse.speechBubbleList[0].avatarName) {\r\n setTimeout(() => {\r\n console.log(\"Play sound: Chat message received (delay = \" + speechBubble.delay + \")\");\r\n this.playReceivedMessageSound();\r\n }, speechBubble.delay);\r\n }\r\n\r\n // Open chatbot if message is recieved from chat agent.\r\n if (!this.state.userId && chatResponse && chatResponse.intentId === null) {\r\n window.parent.postMessage({'openChatbot': true}, '*');\r\n }\r\n }\r\n });\r\n\r\n\r\n\r\n // close chatbot , action close\r\n if (!this.state.userId && chatResponse && chatResponse.closeChatbot) {\r\n window.parent.postMessage({'closeChatbot': true}, '*');\r\n }\r\n\r\n\r\n if (this.state.chatConfig && \r\n this.state.chatConfig.layoutMode !== null &&\r\n this.state.chatConfig.layoutMode === LayoutTypeEnum.searchBot) {\r\n\r\n if (speechBubbleList && speechBubbleList.length > 0 ) {\r\n // Check WithMemory flag to determine whether to keep all speech bubbles or just the last one\r\n if (!this.state.chatConfig.withMemory) {\r\n speechBubbleList = [speechBubbleList[speechBubbleList.length - 1]];\r\n }\r\n\r\n this.setState({ speechBubbleList });\r\n }\r\n }\r\n\r\n return speechBubbleList;\r\n };\r\n\r\n playReceivedMessageSound = () => {\r\n var audio = document.getElementById(\"audio_messagereceived\");\r\n audio.play();\r\n }\r\n\r\n startChatConnection = () => {\r\n if (this.state.disableConnectionRetry) {\r\n return;\r\n }\r\n\r\n this.state.hubConnection.start()\r\n .then(() => {\r\n this.setState({connected: true});\r\n this.setState({showConnectionLostMsg: false})\r\n }).catch(() => {\r\n setTimeout(() => {\r\n this.startChatConnection();\r\n }, Setup.signalrConnectionRetryInterval);\r\n });\r\n };\r\n\r\n\r\n getMessageSpeechBubble = (message) => {\r\n return {\r\n isUser: true,\r\n messageList: [\r\n {\r\n messageType: MessageType.text,\r\n content: message,\r\n }\r\n ]\r\n };\r\n };\r\n\r\n //\r\n updateStateOfPlaceholder=()=>{\r\nthis.setState({fileUploadedText:false});\r\n }\r\n getFileMessageSpeechBubble = (filename, url) => {\r\n return {\r\n isUser: true,\r\n displayBackground: false,\r\n messageList: [\r\n {\r\n messageType: MessageType.file,\r\n filename:filename,\r\n url: url,\r\n lineBreak: 1\r\n }\r\n ]\r\n };\r\n };\r\n\r\n sendWelcome = () => {\r\n this.invokeSignalRMessage(['SendWelcome', this.state.language.languageCode, this.state.forceWelcomeMessage]);\r\n this.setState({forceWelcomeMessage: false});\r\n };\r\n\r\n sendUserIsWriting = (isWriting) => {\r\n this.invokeSignalRMessage(['SendUserIsWriting', isWriting]);\r\n };\r\n\r\n appendSendMessage = (speechBubble) => {\r\n\r\n this.setState({loadToEnd:true});\r\n\r\n let speechBubbleList = this.state.speechBubbleList;\r\n\r\n if(this.state.lastStreamId!=null)\r\n {\r\n let streamIdStopped = this.state.streamIdStopped\r\n\r\n streamIdStopped.push(this.state.lastStreamId);\r\n\r\n this.setState({streamIdStopped});\r\n }\r\n\r\n // Hides suggestions\r\n speechBubbleList.forEach((speechBubble) => {\r\n if (speechBubble.suggestion) {\r\n speechBubble.hidden = true;\r\n }\r\n });\r\n\r\n // Shows a message to the user that looks like they sent it.\r\n if (speechBubble && !(this.state.chatConfig.layoutMode !== null && this.state.chatConfig.layoutMode === LayoutTypeEnum.searchBot && this.state.chatConfig.withMemory === false)) {\r\n speechBubble.lineBreakType = LineBreakTypeEnum.newLine;\r\n if (this.state.chatAgentMode === true) {\r\n if (!speechBubbleList.some(msg => msg.content === speechBubble.content)) {\r\n speechBubbleList.push(speechBubble); \r\n }\r\n } else {\r\n speechBubbleList.push(speechBubble); \r\n }\r\n }\r\n\r\n this.setState({speechBubbleList});\r\n };\r\n\r\n stopMessage = () => {\r\n\r\n let streamIdStopped = this.state.streamIdStopped;\r\n\r\n if (!streamIdStopped.includes(this.state.lastStreamId)) {\r\n streamIdStopped.push(this.state.lastStreamId);\r\n this.setState({ streamIdStopped, botWriting: false });\r\n }\r\n \r\n this.setState({ showStopMessage: false });\r\n\r\n }\r\n\r\n setBotIsWriting = () => {\r\n this.setState({ botWriting: true });\r\n }\r\n\r\n handleAddPendingFiles = (newFile) => {\r\n this.setState(prevState => {\r\n const updatedPendingFiles = prevState.pendingFiles.filter(file => file.name !== newFile.name);\r\n return {\r\n pendingFiles: [...updatedPendingFiles, newFile]\r\n };\r\n });\r\n }\r\n\r\n\r\n flushPendingFiles = () => {\r\n this.setState({pendingFiles: []})\r\n }\r\n\r\n sendFiles = () => {\r\n const { pendingFiles } = this.state;\r\n\r\n\r\n // Convert each file upload to a Promise\r\n const uploadPromises = pendingFiles.map((file) => {\r\n return new Promise((resolve, reject) => {\r\n this.uploadFileComplete(file, this.props.match.params.token, (error) => {\r\n if (error) {\r\n console.error(`Error uploading file ${file.name}:`, error);\r\n reject(error);\r\n } else {\r\n resolve();\r\n }\r\n });\r\n });\r\n });\r\n\r\n return Promise.all(uploadPromises)\r\n .then(() => {\r\n this.setState({ pendingFiles: [], fileUploading: false });\r\n this.handleResetUploadedFiles();\r\n })\r\n .catch((error) => {\r\n console.error(\"Error in file uploads:\", error);\r\n this.setState({ fileUploading: false });\r\n });\r\n };\r\n\r\n /**\r\n * Gets called when a message is sent from the webclient.\r\n */\r\n \r\n sendMessage = async (message, messageToDisplay, urls) => {\r\n if (this.state.connected === false) {\r\n this.setState({ showConnectionLostMsg: true });\r\n this.flushTrainingPhraseList();\r\n return false;\r\n }\r\n\r\n if(this.state.chatConfig.layoutMode === LayoutTypeEnum.searchBot){\r\n this.resizeContainerSend([]);\r\n }\r\n\r\n // Call resetChatMenuItems before sending the message\r\n if (this.searchBotFieldRef.current) {\r\n this.searchBotFieldRef.current.resetChatMenuItems();\r\n }\r\n\r\n try {\r\n\r\n this.setBotIsWriting();\r\n\r\n // Existing sendMessage logic\r\n const speechBubbleToDisplay = urls\r\n ? this.getFileMessageSpeechBubble(messageToDisplay, urls)\r\n : this.getMessageSpeechBubble(messageToDisplay);\r\n\r\n if(this.state.chatConfig.layoutMode === LayoutTypeEnum.chatBot || this.state.chatConfig.withMemory){\r\n this.appendSendMessage(speechBubbleToDisplay);\r\n }\r\n\r\n // Wait for pending files to be uploaded before proceeding\r\n await this.sendFiles();\r\n\r\n\r\n this.invokeSignalRMessage([\r\n 'Send',\r\n message,\r\n this.state.language.languageCode,\r\n this.state.pendingFileUrls,\r\n this.state.lastStreamId\r\n ]);\r\n this.openChatContainer();\r\n this.setState({ sourcesList: [] });\r\n this.setState({ pendingFileUrls: [] });\r\n\r\n return true;\r\n } catch (error) {\r\n console.error('Error uploading files:', error);\r\n return false;\r\n }\r\n };\r\n\r\n\r\n sendIntent = (intentId, chatQuestionType, messageToDisplay, speechBubble, hideSuggestions, chatMenuItemId) => {\r\n if (this.state.connected === false) {\r\n this.setState({showConnectionLostMsg: true});\r\n return;\r\n }\r\n\r\n this.setState({loadToEnd: true});\r\n\r\n let speechBubbleToDisplay;\r\n\r\n // Clone speechbubble and show as the user send it.\r\n if (speechBubble) {\r\n speechBubbleToDisplay = JSON.parse(JSON.stringify(speechBubble));\r\n speechBubbleToDisplay.isUser = true;\r\n speechBubbleToDisplay.index = 0;\r\n speechBubbleToDisplay.chatResponseId = null;\r\n speechBubbleToDisplay.suggestion = null;\r\n } else if (messageToDisplay) {\r\n speechBubbleToDisplay = this.getMessageSpeechBubble(messageToDisplay);\r\n }\r\n\r\n this.appendSendMessage(speechBubbleToDisplay);\r\n\r\n // Sends either id of suggestion or chat menu item clicked or null.\r\n let key = null;\r\n if (chatQuestionType === ChatQuestionTypeEnum.suggestion) {\r\n key = speechBubble.suggestion.id;\r\n } else if (chatQuestionType === ChatQuestionTypeEnum.menuItem) {\r\n key = chatMenuItemId;\r\n }\r\n\r\n this.invokeSignalRMessage(['SendIntent', intentId, this.state.language.languageCode, chatQuestionType, key, speechBubbleToDisplay]);\r\n };\r\n\r\n sendChatAgentIntent = (intentId) => {\r\n if (this.state.connected === false) {\r\n this.setState({showConnectionLostMsg: true});\r\n return false;\r\n }\r\n this.invokeSignalRMessage(['SendIntent', intentId, this.state.language.languageCode, ChatQuestionTypeEnum.customIntent, null, null]);\r\n return true;\r\n };\r\n\r\n sendChatResponseFeedback = (chatQuestionId, chatResponseFeedback) => {\r\n if (this.state.connected === false) {\r\n this.setState({showConnectionLostMsg: true});\r\n return;\r\n }\r\n\r\n let speechBubbleList = this.state.speechBubbleList;\r\n let speechBubble = speechBubbleList.find((sb => {\r\n return sb.chatQuestionId === chatQuestionId;\r\n }));\r\n\r\n if (speechBubble) {\r\n speechBubble.chatResponseFeedback = chatResponseFeedback === ChatResponseFeedbackEnum.notSet ? null : chatResponseFeedback;\r\n }\r\n\r\n this.setState({speechBubbleList}, () => {\r\n this.invokeSignalRMessage(['SendChatResponseFeedback', chatQuestionId, chatResponseFeedback]);\r\n });\r\n };\r\n\r\n languageSelected = (countryCode) => {\r\n if (this.state.connected === false) {\r\n this.setState({showConnectionLostMsg: true});\r\n return false;\r\n }\r\n\r\n const language = this.state.chatConfig.chatConfigLanguageList.map(ccl => ccl.language).find((lang) => {\r\n return lang.countryCode === countryCode;\r\n });\r\n\r\n window.parent.postMessage({'languageSelected': language.languageCode}, '*');\r\n\r\n this.setState({language, requestedWelcome: false, forceWelcomeMessage: true, speechBubbleList: [], startLoad: 0, trainingPhraseSuggestionList: []}, () => {\r\n this.invokeSignalRMessage(['SendChatHistory', this.state.language.id , this.state.startLoad, Setup.messageLoadCount]);\r\n });\r\n\r\n return true;\r\n };\r\n\r\n clearSpeechBubble = () => {\r\n\r\n this.setState({speechBubbleList: [], sourcesList:[]})\r\n }\r\n getTrainingPhraseList = (searchText) => {\r\n if (this.state.connected === false) {\r\n this.setState({showConnectionLostMsg: true});\r\n return;\r\n }\r\n this.invokeSignalRMessage(['GetTrainingPhraseList', searchText, this.state.language.languageCode]);\r\n };\r\n\r\n getChatResponse = (intentId) => {\r\n if (this.state.connected === false) {\r\n this.setState({showConnectionLostMsg: true});\r\n return;\r\n }\r\n\r\n return this.invokeSignalRMessage(['GetChatResponse', intentId, this.state.language.languageCode]);\r\n };\r\n\r\n uploadFileComplete(file, token, callback) {\r\n \r\n return axios\r\n .post((process.env.NODE_ENV === 'development' ? Setup.apiEndpointDev : process.env.REACT_APP_TEST_BUILD ? Setup.apiEndpointTest : Setup.apiEndpointProd) + 'storage/upload/clientKey/' + this.state.clientKey , {file})\r\n .then(response => {\r\n this.sendUserIsWriting(false);\r\n this.setState(this.state.chatAgentMode ? {botWriting: false} : {userWriting: false});\r\n /* this.sendMessage(file.name, file.name, response.data) */\r\n\r\n this.setState((prevState) => ({\r\n pendingFileUrls: [...(prevState.pendingFileUrls || []), response.data], // Initialize if undefined\r\n }));\r\n\r\n callback();\r\n })\r\n .catch(error => {\r\n this.setSnackbarErrorMessage(Localization[getLocalizationLanguageCode(this.state.language ? this.state.language.languageCode : null)]['chatInput.chatAttachment.uploadFileError']);\r\n this.sendUserIsWriting(false);\r\n this.setState(this.state.chatAgentMode ? {botWriting: false} : {userWriting: false});\r\n callback();\r\n })\r\n }\r\n\r\n toggleShowInfoPage = () => {\r\n this.setState({showInfoPage: !this.state.showInfoPage});\r\n };\r\n\r\n closeChatbot = () => {\r\n\r\n this.setState({isMaximized: false});\r\n window.parent.postMessage({'closeChatbot': true}, '*');\r\n\r\n };\r\n\r\n openChatContainer = () => {\r\n window.parent.postMessage({'openChatContainer': true}, '*');\r\n };\r\n\r\n resizeChatContainer = (entries) => {\r\n window.parent.postMessage({'resizeChatContainer': entries}, '*');\r\n }\r\n\r\n setSearchBot = () => {\r\n window.parent.postMessage({'setSearchBot' : true}, '*')\r\n }\r\n\r\n setChatFieldPlacement = () => {\r\n window.parent.postMessage({ setChatFieldPlacement: this.state.chatConfig.openDownwards }, '*');\r\n if (this.state.chatConfig.openDownwards) {\r\n const searchBotLayoutElem = document.getElementById('search-bot-layout');\r\n if (searchBotLayoutElem) {\r\n // Remove any inline bottom and force top: 0\r\n searchBotLayoutElem.style.setProperty('bottom', 'auto', 'important');\r\n searchBotLayoutElem.style.setProperty('top', '0', 'important');\r\n }\r\n }\r\n };\r\n\r\n setChatBot = () => {\r\n window.parent.postMessage({'setChatBot' : true}, '*')\r\n }\r\n\r\n toggleMaxiChatbot = () => {\r\n window.parent.postMessage({'toggleMaxiChatbot': true}, '*');\r\n\r\n this.setState({isMaximized: !this.state.isMaximized});\r\n };\r\n\r\n resizeSourceContainer = (entries) => {\r\n const length = entries.length\r\n window.parent.postMessage({'resizeSourceContainer': length}, '*')\r\n }\r\n\r\n resizeContainerSend = (entries) => {\r\n const length = entries.length\r\n window.parent.postMessage({'resizeContainerSend': length}, '*')\r\n }\r\n\r\n setSnackbarErrorMessage = (errorMessage) => {\r\n this.setState({snackbarErrorMessage: errorMessage});\r\n };\r\n\r\n reEnableMostAskedQuestions = () => {\r\n window.parent.postMessage({'resetSearchBotWindow': true}, '*');\r\n if (this.searchBotFieldRef && this.searchBotFieldRef.current) {\r\n this.searchBotFieldRef.current.initializeChatMenuItems(true);\r\n }\r\n };\r\n\r\n disableMostAskedQuestions = () => {\r\n window.parent.postMessage({'resetSearchBotWindow': false}, '*');\r\n if (this.searchBotFieldRef && this.searchBotFieldRef.current) {\r\n this.searchBotFieldRef.current.initializeChatMenuItems(false);\r\n }\r\n };\r\n\r\n handleRootClick = () => {\r\n if (this.state.hadFirstClick === false) {\r\n\r\n if (this.state.welcomePreviewEnabled) {\r\n window.parent.postMessage({'disableWelcomePreview': true}, '*');\r\n this.setState({welcomePreviewEnabled: false});\r\n }\r\n\r\n this.setState({hadFirstClick: true});\r\n }\r\n };\r\n\r\n flushTrainingPhraseList = () => {\r\n this.setState({trainingPhraseList: []})\r\n }\r\n\r\n render() {\r\n\r\n const chatFieldSpectatorStyle = {\r\n width: '100%',\r\n maxWidth: '100%'\r\n };\r\n\r\n return (\r\n