{"version":3,"sources":["redux/reducers.js","redux/store.js","i18n/i18n.js","shared/supportedLanguages.js","components/WelcomeScreenComponent/WelcomeScreenComponent.js","components/PasswordInputComponent/PasswordInput.js","components/ActivityWithNoAvatar.js","shared/conversationConsts.js","shared/createStyleSet.js","shared/imageDownscalar.js","components/ConnectedCardComponent/ConnectedCardComponent.js","components/ThumbsComponent/ThumbsComponent.js","components/Loading/Loading.js","components/WebChatComponent/WebChat.js","shared/sharedConsts.js","components/MainWindowComponent/MainWindow.js","components/AppComponent/App.js","serviceWorker.js","index.js","assets/images/welcomeSlogan.png","assets/images/logoImg.png","assets/images/loader.svg","assets/images/avatar.png","assets/images/astro.svg","assets/images/dots.gif","assets/images/feather-loader.svg","i18n lazy /^/.*/.json$/ groupOptions: {} namespace object"],"names":["defaultState","langReducer","state","arguments","length","undefined","_ref","type","payload","loadLiterals","literals","rootReducer","combineReducers","createStore","window","__REDUX_DEVTOOLS_EXTENSION__","loadLang","lang","__webpack_require__","concat","ENGLISH","ARABIC","WelcomeScreen","props","_this","Object","classCallCheck","this","possibleConstructorReturn","getPrototypeOf","call","handelStartWithLang","localStorage","setItem","handleStartChatBotArabic","onOpenChat","handleStartChatBotEnglish","addEventListener","startBotWithLanguage","_this2","react_default","a","createElement","className","src","logoImg","width","height","welcomeSlogan","onClick","process","Component","PasswordInput","handleCodeChange","code","target","value","setState","handleSubmit","event","preventDefault","encoded","btoa","context","sendPostBack","submitted","handlePasswordSubmit","_this$state","dir","language","style","textAlign","onSubmit","promptMessage","autoFocus","disabled","onChange","placeholder","passwordPlaceholder","React","ActivityWithNoAvatar","opacity","showAvatar","avatarAndRtlStyles","css","& .activity .avatar","& .content p","indexOf","direction","& .ac-input .ac-multichoiceInput .ac-choiceSetInput-compact","& .ac-input .ac-multichoiceInput .ac-choiceSetInput-compact::after","content","& .ac-input .ac-multichoiceInput .ac-choiceSetInput-compact::before","& .attachment .bubble","& .ac-pushButton","backgroundColor","webChatConfiguration","adaptiveCardPushButton","borderStyle","borderColor","borderRadius","borderWidth","color","fontWeight","padding","& .ac-pushButton:hover","adaptiveCardPushButtonHover","children","LOGIN_AR","LOGIN_EN","LOGIN_RETRY_AR","LOGIN_RETRY_EN","getLoginRetryMessage","getWebChatStyleSet","styleSet","createStyleSet","objectSpread2","accent","botAvatarImage","botAvatar","userAvatarImage","userAvatar","botAvatarInitials","userAvatarInitials","avatarSize","bubbleBackground","bubbleMinHeight","bubbleLineHeight","bubbleBorderRadius","bubbleFromUserBackground","bubbleFromUserBorderRadius","bubbleFromUserTextColor","bubbleTextColor","bubbleImageHeight","sendBoxBackground","sendBoxButtonColor","sendBoxHeight","sendBoxMaxHeight","bubbleMaxWidth","bubbleMinWidth","typingAnimationHeight","typingAnimationWidth","typingAnimationBackgroundImage","dots","root","assign"," ::-webkit-scrollbar","backgroundcolor"," ::-webkit-scrollbar-track","WebkitBoxShadow","borderradius"," ::-webkit-scrollbar-thumb"," ::-webkit-scrollbar-thumb:hover","sendBox","& button:nth-child(odd)","paddingRight","paddingLeft","& button:nth-child(even)","& .ac-inlineActionButton .ac-input .ac-quickActionButton","border","& button:not(:disabled)","adaptiveCardButtons","& button","& button nobr","adaptiveCardButtonsNobr","eventToPromise","name","Promise","resolve","reject","handler","removeEventListener","downscaleImage","_x","_x2","_x3","_downscaleImage","apply","_callee","imageURL","contentType","maxSize","image","imageLoadPromise","canvas","dataURL","regenerator_default","wrap","_context","prev","next","document","getContext","drawImage","toDataURL","abrupt","stop","ConnectedCard","handleThumbsUp","sendMessage","text","react","Thumbs","handleThumbsDown","Loading","loader","DirectLineConnectionStatus","Uninitialized","Connecting","Online","ExpiredToken","FailedToConnect","Ended","WebChat","rtf","Intl","RelativeTimeFormat","numeric","asyncToGenerator","mark","eventObj","locale","store","dispatch","RequestAgentHandler","_ref2","_callee2","e","_context2","checkQueuePosition","_callee3","_context3","setConversationAsAbandon","_callee4","_context4","count","SendEncryptedCodeStartUp","getItem","_callee5","_context5","console","log","SendEncryptedCodeEnd","_ref6","_callee6","_context6","SendEncryptedCode","SendEncryptedCodeNewAccount","_ref7","_callee7","_context7","_ref8","_callee9","eventName","_context9","_callee8","_context8","_x4","disconnectChatbotHandler","Array","from","getElementsByTagName","forEach","element","remove","isRestartClick","setTimeout","directLineDisconnect","showRefresh","getStore","_ref10","_ref11","_callee10","action","downscaledImages","activity","i","_context10","t0","messages","replace","attachments","channelData","attachmentSizes","some","x","id","Date","toISOString","channelId","role","timestamp","attachmentSizeValidationMessage","inputHint","disableAllButtons","all","map","_ref12","contentUrl","test","sent","thumbnails","playReceivedMessageSound","Id","thumbsActivityId","connectedToAgentId","disabledPreviousButtonId","checkLanguageDirection","body","items","radioChoices","radioItem","open","parent","dispatchEvent","CustomEvent","handleQueueDataRecieved","handleDequeued","showedIntroCard","changeLanguage","handleShowedIntroCard","attachment","index","fetchToken","connectionStatus","token","listening","_x5","hasSubmittedPassword","handleCustomButtonDesign","ul","querySelector","lastLi","lastChild","isConfirmActions","classList","add","allDescendants","node","child","handleScrollToTopItem","allMessages","clearToken","clear","changeNewMessagesBtnText","scrollElem","querySelectorAll","newMessagesBtn","getElementsByClassName","innerText","makeBtnAsFocused","toConsumableArray","el","startSendHeartBeat","setInterval","setLinkOnClick","btns","localName","href","bubbles","detail","soundMuted","audioObject","Audio","mute","volume","AudioContextObject","AudioContext","webkitAudioContext","AudioContextSource","createMediaElementSource","connect","destination","error","pr","play","then","catch","focus","pr2","_ref13","_callee11","force","response","_ref14","_context11","fetch","method","headers","Authorization","Content-Type","json","_x6","setUpSpeechService","_callee12","webSpeechPonyfillFactoryCognitive","webSpeechPonyfillFactoryBRWSR","webSpeechPonyfillFactory","_context12","createCognitiveServicesSpeechServicesPonyfillFactory","region","subscriptionKey","createBrowserWebSpeechPonyfillFactory","CognitiveSpeechServiceFactory","BrowserSpeechServiceFactory","ref2","speechCognitive","speechBRWSR","speechSynthesis","SpeechSynthesisUtterance","ccv","cardNo","date","isBtnClicked","createDirectLine","memoize","connectToWebChat","previousMessageFrom","_ref16","postActivity","components_PasswordInputComponent_PasswordInput","_ref17","ActivityWithNoAvatar_ActivityWithNoAvatar","bind","assertThisInitialized","activityMiddleware","card","self","url","split","cardInfo","adjustImage","adjustInputField","adjustCheckbox","getLoginMessage","choices","ThumbsComponent_ThumbsComponent","ConnectedCardComponent_ConnectedCardComponent","pushBtns","ariaLabel","currentMessageFrom","sendOnMount","prevProps","adjustSendButton","toLocaleLowerCase","nextProps","imageNode","getElementById","display","_loop","domtoimage","toPng","dataUrl","_this3","singleSelect","marginBottom","multiSelect","_loop2","baseEle","_loop4","j","slice","checked","radioSelect","_loop3","radioEle","k","childElementCount","childNodes","firstElementChild","elementContainer","temb","contains","containers","_loop5","tembEle","valOfPlaceHolder","getAttribute","setAttribute","span","newLabel","innerHTML","append","duSendButton","parentNode","removeChild","btnSend","handleSendButton","duMicButton","btnMic","handleMicrophoneButton","stopListening","startListening","mic","mains","createDuSendButton","appendChild","textOfSendButton","colorOfSendButton","actionElements","sendButton","attachButton","transform","fontFamily","buttons","mainLang","_this$props","overlayClass","loading","components_Loading_Loading","lib_default","directLine","selectVoice","voices","voice","find","gender","alt","waitWhileConnecting","_ref18","APPLICATION_JSON","MainWindow","componentDidMount","data","Accept","finishedLoading","welcomedUser","handleWindowChangedHeight","handleCloseButtonClicked","handleBackButtonClick","diconnect","navigateToWelcome","queueData","handleRestartButtonClick","clearTokens","WebChatRef","isQueueWaitingVisiable","QueuePosition","updateQueuePosition","handleSelectLanguageChanged","updateDimensions","size","outerHeight","outerWidth","handleToggleMuteSound","setUserLogged","isUserLogged","clearCache","removeItem","createRef","chatWindowHeight","initialHeight","noOfbuttonPressed","textBox","includes","addPlaceholderInTextBox","mainWindow","getSearchParameters","components_WebChatComponent_WebChat","forwardedRef","WelcomeScreenComponent_WelcomeScreen","match","pl","search","decode","s","decodeURIComponent","query","location","substring","urlParams","exec","chatBox","App","searchParameters","minHeight","components_MainWindowComponent_MainWindow","caches","keys","names","delete","Boolean","hostname","ReactDOM","render","es","components_AppComponent_App","navigator","serviceWorker","ready","registration","unregister","module","exports","p","./ar-EG.json","./ar-JO.json","./ar-SA.json","./en-US.json","webpackAsyncContext","req","o","Error","ids","t"],"mappings":"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","file":"static/js/main.84973a02.chunk.js","sourcesContent":["const LOAD_LITERALS = 'LOAD_LITERALS';\r\nconst defaultState = {};\r\n\r\nconst langReducer = (state = defaultState, { type, payload }) => {\r\n switch (type) {\r\n case LOAD_LITERALS:\r\n return payload;\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nexport default langReducer;\r\n\r\nexport const loadLiterals = literals => ({\r\n type: LOAD_LITERALS,\r\n payload: literals,\r\n});\r\n","import { createStore, combineReducers } from 'redux';\r\nimport literals from './reducers';\r\n\r\nconst rootReducer = combineReducers({\r\n literals,\r\n});\r\n\r\nexport default createStore(\r\n rootReducer,\r\n window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__()\r\n);\r\n","export default function loadLang(lang = 'en-us') {\r\n return import(`./${lang}.json`);\r\n}\r\n","export const ENGLISH = \"en-us\";\r\nexport const ARABIC = \"ar-jo\";\r\nexport const China = \"zh-Hans\";\r\nexport const Hindi = \"hi\";\r\nexport const Turkish = \"tr\";\r\nexport const Italian = \"it\";\r\nexport const French = \"fr\";","import React, { Component } from 'react';\r\nimport { ENGLISH, ARABIC } from '../../shared/supportedLanguages';\r\nimport \"./WelcomeScreenComponent.css\";\r\nimport welcomeSlogan from '../../assets/images/welcomeSlogan.png';\r\nimport logoImg from '../../assets/images/logoImg.png';\r\n\r\nexport default class WelcomeScreen extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n window.addEventListener(\"startChatbotEnglish\", () => this.handleStartChatBotEnglish(), false);\r\n window.addEventListener(\"startChatbotArabic\", () => this.handleStartChatBotArabic(), false);\r\n }\r\n \r\n componentDidMount() { }\r\n\r\n handleStartChatBotEnglish() {\r\n this.props.startBotWithLanguage(ENGLISH);\r\n }\r\n\r\n handleStartChatBotArabic () {\r\n this.props.startBotWithLanguage(ARABIC);\r\n }\r\n // Handel Start With Lang \r\n handelStartWithLang = (lang) => {\r\n debugger;\r\n if (lang == ARABIC) {\r\n localStorage.setItem('botLang',ARABIC);\r\n this.handleStartChatBotArabic();\r\n this.props.onOpenChat(lang);\r\n }\r\n else {\r\n // alert('Lang is : ' + lang);\r\n localStorage.setItem('botLang',ENGLISH);\r\n this.handleStartChatBotEnglish(); \r\n this.props.onOpenChat(lang);\r\n // alert('End onOpenChat : ' + lang);\r\n }\r\n // return this.props.onOpenChat(lang);\r\n }\r\n\r\n render() {\r\n return (\r\n // \r\n
\r\n
\r\n \r\n
\r\n
\r\n

\r\n Hi, I’m Maryam!
\r\n Your friendly assistant from Ministry of Health and Prevention.

\r\n Please type your question and in case I didn’t understand you, you will be transferred to our customer happiness agent.\r\n

\r\n {/*

Sincerely Yours,Maryam!

*/}\r\n
\r\n \r\n
\r\n
\r\n
\r\n {/* \r\n */}\r\n \r\n \r\n
\r\n
\r\n

{process.env.REACT_APP_VERSION}

\r\n
\r\n
\r\n )\r\n }\r\n}","import React from 'react';\r\nimport './PasswordInput.css';\r\nimport PropTypes from 'prop-types';\r\nimport { ENGLISH } from '../../shared/supportedLanguages';\r\n\r\nclass PasswordInput extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n code: '',\r\n submitted: false,\r\n };\r\n }\r\n\r\n handleCodeChange = ({ target: { value: code } }) => {\r\n this.setState(() => ({ code }));\r\n };\r\n\r\n handleSubmit = event => {\r\n event.preventDefault();\r\n const encoded = window.btoa(this.state.code);\r\n this.props.context.sendPostBack(encoded);\r\n this.setState(() => ({ submitted: true }));\r\n this.props.handlePasswordSubmit();\r\n };\r\n\r\n render() {\r\n const {\r\n state: { code, submitted },\r\n props,\r\n handleSubmit,\r\n handleCodeChange,\r\n } = this;\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nPasswordInput.propTypes = {\r\n promptMessage: PropTypes.string.isRequired, \r\n passwordPlaceholder: PropTypes.string.isRequired,\r\n language: PropTypes.string.isRequired\r\n};\r\n\r\nexport default PasswordInput","import React from 'react';\r\nimport { css } from 'glamor';\r\nimport PropTypes from 'prop-types';\r\n\r\nexport default class ActivityWithNoAvatar extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n const opacity = this.props.showAvatar ? '1' : '0';\r\n\r\n const avatarAndRtlStyles = css({\r\n '& .activity .avatar': {\r\n opacity: opacity\r\n },\r\n '& .content p': {\r\n textAlign: this.props.language.indexOf('ar') >= 0 ? 'right' : '',\r\n direction: this.props.language.indexOf('ar') >= 0 ? 'rtl' : ''\r\n },\r\n '& .ac-input .ac-multichoiceInput .ac-choiceSetInput-compact': {\r\n direction: this.props.language.indexOf('ar') >= 0 ? 'rtl' : ''\r\n },\r\n '& .ac-input .ac-multichoiceInput .ac-choiceSetInput-compact::after': {\r\n content : this.props.language.indexOf('ar') >= 0 ? '\\\\200E‎' : ''\r\n },\r\n '& .ac-input .ac-multichoiceInput .ac-choiceSetInput-compact::before': {\r\n content : this.props.language.indexOf('ar') >= 0 ? '\\\\200E‎' : ''\r\n },\r\n '& .attachment .bubble': {\r\n textAlign: this.props.language.indexOf('ar') >= 0 ? 'right' : '',\r\n direction: this.props.language.indexOf('ar') >= 0 ? 'rtl' : ''\r\n },\r\n '& .ac-pushButton': {\r\n backgroundColor: this.props.webChatConfiguration.adaptiveCardPushButton.backgroundColor,\r\n borderStyle: this.props.webChatConfiguration.adaptiveCardPushButton.borderStyle, //'solid',\r\n borderColor: this.props.webChatConfiguration.adaptiveCardPushButton.borderColor ,// '#840084',\r\n borderRadius: this.props.webChatConfiguration.adaptiveCardPushButton.borderRadius ,//'10px',\r\n borderWidth: this.props.webChatConfiguration.adaptiveCardPushButton.borderWidth, //'1px',\r\n color: this.props.webChatConfiguration.adaptiveCardPushButton.color , //'#840084', // !important\r\n fontWeight: this.props.webChatConfiguration.adaptiveCardPushButton.fontWeight , //'500', // !important\r\n padding: this.props.webChatConfiguration.adaptiveCardPushButton.padding //'10px' \r\n },\r\n '& .ac-pushButton:hover': {\r\n backgroundColor: this.props.webChatConfiguration.adaptiveCardPushButtonHover.backgroundColor, // '#840084', // !important\r\n borderStyle: this.props.webChatConfiguration.adaptiveCardPushButtonHover.borderStyle, //'solid',\r\n borderColor: this.props.webChatConfiguration.adaptiveCardPushButtonHover.borderColor, //'#840084',\r\n borderRadius:this.props.webChatConfiguration.adaptiveCardPushButtonHover.borderRadius, // '10px', //'8px',\r\n borderWidth: this.props.webChatConfiguration.adaptiveCardPushButtonHover.borderWidth, //'1px',\r\n color: this.props.webChatConfiguration.adaptiveCardPushButtonHover.color, //'#ffff', // !important\r\n fontWeight: this.props.webChatConfiguration.adaptiveCardPushButtonHover.fontWeight, //'600',\r\n padding: this.props.webChatConfiguration.adaptiveCardPushButtonHover.padding //'10px'\r\n }\r\n });\r\n\r\n this.state = { style: avatarAndRtlStyles };\r\n }\r\n render() {\r\n const { props } = this;\r\n return (\r\n
\r\n
{props.children}
\r\n
\r\n );\r\n }\r\n}\r\n\r\nActivityWithNoAvatar.propTypes = {\r\n showAvatar: PropTypes.bool.isRequired\r\n};\r\n","import { ENGLISH } from './supportedLanguages';\r\n\r\nconst LOGIN_AR = 'شكراً. يرجى إدخال كلمة السر الخاصة بك.';\r\nconst LOGIN_EN = 'Thank you. Please enter your password.';\r\nexport function getLoginMessage(language = ENGLISH) {\r\n return language === ENGLISH ? LOGIN_EN : LOGIN_AR;\r\n}\r\n\r\nconst LOGIN_RETRY_AR = 'عذرا ، كلمة مرور غير صالحة ، يرجى المحاولة مرة أخرى!';\r\nconst LOGIN_RETRY_EN = 'Sorry, invalid password, please try again!';\r\nexport function getLoginRetryMessage(language = ENGLISH) {\r\n return language === ENGLISH ? LOGIN_RETRY_EN : LOGIN_RETRY_AR;\r\n}\r\n","import { createStyleSet } from 'botframework-webchat';\r\nimport { ENGLISH } from './supportedLanguages';\r\nimport botAvatar from '../assets/images/avatar.png';\r\nimport userAvatar from '../assets/images/astro.svg';\r\nimport dots from '../assets/images/dots.gif';\r\n\r\nexport const getWebChatStyleSet = (webChatConfiguration = {}, language = ENGLISH) => {\r\n\tconst styleSet = createStyleSet({\r\n\t\t...webChatConfiguration,\r\n\t\taccent: webChatConfiguration.accent ? webChatConfiguration.accent : 'white',\r\n\t\tbackgroundColor: webChatConfiguration.backgroundColor ? webChatConfiguration.backgroundColor : 'Transparent',\r\n\t\tbotAvatarImage: webChatConfiguration.botAvatarImage ? webChatConfiguration.botAvatarImage : botAvatar,\r\n\t\tuserAvatarImage: webChatConfiguration.userAvatar ? webChatConfiguration.userAvatar : userAvatar,\r\n\t\tbotAvatarInitials: webChatConfiguration.botAvatarInitials ? webChatConfiguration.botAvatarInitials : 'Blackstone Bot',\r\n\t\tuserAvatarInitials: webChatConfiguration.userAvatarInitials ? webChatConfiguration.userAvatarInitials : 'You',\r\n\t\tavatarSize: webChatConfiguration.avatarSize ? webChatConfiguration.avatarSize : 30,\r\n\t\tbubbleBackground: webChatConfiguration.bubbleBackground ? webChatConfiguration.bubbleBackground : '#F2F2F2',\r\n\t\tbubbleMinHeight: 20,\r\n\t\tbubbleLineHeight:'52px',\r\n\t\tbubbleBorderRadius: webChatConfiguration.bubbleBorderRadius ? webChatConfiguration.bubbleBorderRadius : 8,\r\n\t\tbubbleFromUserBackground: webChatConfiguration.bubbleFromUserBackground ? webChatConfiguration.bubbleFromUserBackground : '#0064bd',\r\n\t\tbubbleFromUserBorderRadius: webChatConfiguration.bubbleFromUserBorderRadius ? webChatConfiguration.bubbleFromUserBorderRadius : 8,\r\n\t\tbubbleFromUserTextColor: webChatConfiguration.bubbleFromUserTextColor ? webChatConfiguration.bubbleFromUserTextColor : '#ffff',\r\n\t\tbubbleTextColor: webChatConfiguration.bubbleTextColor ? webChatConfiguration.bubbleTextColor : '#000000',\r\n\t\tbubbleImageHeight: webChatConfiguration.bubbleImageHeight ? webChatConfiguration.bubbleImageHeight : 240,\r\n\t\tsendBoxBackground: webChatConfiguration.sendBoxBackground ? webChatConfiguration.sendBoxBackground : 'white!important',\r\n\t\tsendBoxButtonColor: webChatConfiguration.sendBoxButtonColor ? webChatConfiguration.sendBoxButtonColor : '#767676',\r\n\t\tsendBoxHeight: webChatConfiguration.sendBoxHeight ? webChatConfiguration.sendBoxHeight : 65,\r\n\t\tsendBoxMaxHeight: webChatConfiguration.sendBoxMaxHeight ? webChatConfiguration.sendBoxMaxHeight : 200,\r\n\t\tbubbleMaxWidth: webChatConfiguration.bubbleMaxWidth ? webChatConfiguration.bubbleMaxWidth : '88%',\r\n\t\tbubbleMinWidth: webChatConfiguration.bubbleMinWidth ? webChatConfiguration.bubbleMinWidth : 250,\r\n\t\ttypingAnimationHeight: webChatConfiguration.typingAnimationHeight ? webChatConfiguration.typingAnimationHeight : 50,\r\n\t\ttypingAnimationWidth: webChatConfiguration.typingAnimationWidth ? webChatConfiguration.typingAnimationWidth : 50,\r\n\t\ttypingAnimationBackgroundImage: webChatConfiguration.typingAnimationBackgroundImage ? webChatConfiguration.typingAnimationBackgroundImage : `url(${dots})`\r\n\t});\r\n\r\n\tstyleSet.root = Object.assign(\r\n\t\t{},\r\n\t\tstyleSet.root,\r\n\t\t{\r\n\t\t\t/* width */\r\n\t\t\t' ::-webkit-scrollbar': {\r\n\t\t\t\t// 'width': '6px',\r\n\t\t\t\t'backgroundcolor': '#F5F5F5',\r\n\t\t\t\t'width': '5px'\r\n\t\t\t},\r\n\r\n\t\t\t/* Track */\r\n\t\t\t' ::-webkit-scrollbar-track': {\r\n\t\t\t\t'WebkitBoxShadow': 'inset 0 0 6px rgba(0,0,0,0.3)',\r\n\t\t\t\t'borderradius': '10px',\r\n\t\t\t\t'backgroundcolor': '#F5F5F5'\r\n\t\t\t},\r\n\r\n\t\t\t/* Handle */\r\n\t\t\t' ::-webkit-scrollbar-thumb': {\r\n\t\t\t\t'borderradius': '10px',\r\n\t\t\t\t'WebkitBoxShadow': 'inset 0 0 6px rgba(0,0,0,.3)',\r\n\t\t\t\t'backgroundcolor': '#555'\r\n\t\t\t},\r\n\r\n\t\t\t/* Handle on hover */\r\n\t\t\t' ::-webkit-scrollbar-thumb:hover': {\r\n\t\t\t\t'backgroundcolor': '#777'\r\n\t\t\t}\r\n\t\t}\r\n\t);\r\n\r\n\tstyleSet.sendBox = {\r\n\t\t...styleSet.sendBox,\r\n\t\t'& button:nth-child(odd)': {\r\n\t\t\tpaddingRight: language === ENGLISH ? '5px' : '5px',\r\n\t\t\tpaddingLeft: language === ENGLISH ? '5px' : '5px'\r\n\t\t},\r\n\t\t'& button:nth-child(even)': {\r\n\t\t\tpaddingLeft: language === ENGLISH ? '5px' : '5px',\r\n\t\t\tpaddingRight: language === ENGLISH ? '5px' : '5px'\r\n\t\t},\r\n\t\t'& .ac-inlineActionButton .ac-input .ac-quickActionButton': {\r\n\t\t\tborder: '1px solid #dcdcdc',\r\n\t\t\tborderRadius: '1px',\r\n\t\t\tpadding: '6px'\r\n\t\t},\r\n\t\t'& button:not(:disabled)': {\r\n\t\t\tborderRadius: webChatConfiguration && webChatConfiguration.adaptiveCardButtons && webChatConfiguration.adaptiveCardButtons.borderRadius,\r\n\t\t},\r\n\t\t'& button': {\r\n\t\t\tborderColor: webChatConfiguration && webChatConfiguration.adaptiveCardButtons && webChatConfiguration.adaptiveCardButtons.borderColor, // '#840084', //!important\r\n\t\t\tborderStyle: webChatConfiguration && webChatConfiguration.adaptiveCardButtons && webChatConfiguration.adaptiveCardButtons.borderStyle, //'solid',\r\n\t\t\t// fontFamily: webChatConfiguration && webChatConfiguration.adaptiveCardButtons && webChatConfiguration.adaptiveCardButtons.fontFamily //\"Calibri\" \r\n\t\t},\r\n\t\t'& button nobr': {\r\n\t\t\tcolor: webChatConfiguration && webChatConfiguration.adaptiveCardButtonsNobr && webChatConfiguration.adaptiveCardButtonsNobr.color, // '#840084',\r\n\t\t\tpaddingRight: webChatConfiguration && webChatConfiguration.adaptiveCardButtonsNobr && webChatConfiguration.adaptiveCardButtonsNobr.paddingRight, //'12px'\r\n\t\t\tpaddingLeft: webChatConfiguration && webChatConfiguration.adaptiveCardButtonsNobr && webChatConfiguration.adaptiveCardButtonsNobr.paddingLeft //'12px'\r\n\t\t}\r\n\t}\r\n\r\n\treturn styleSet;\r\n}","export function eventToPromise(target, name) {\r\n\treturn new Promise((resolve, reject) => {\r\n\t\tconst handler = event => {\r\n\t\t\ttarget.removeEventListener(name, handler);\r\n\t\t\tresolve(event);\r\n\t\t};\r\n\r\n\t\ttarget.addEventListener(name, handler);\r\n\t});\r\n}\r\n\r\nexport async function downscaleImage(imageURL, contentType, maxSize) {\r\n\tconst image = document.createElement('img');\r\n\tconst imageLoadPromise = eventToPromise(image, 'load');\r\n\r\n\timage.src = imageURL;\r\n\r\n\tawait imageLoadPromise;\r\n\r\n\tconst canvas = document.createElement('canvas');\r\n\r\n\tcanvas.height = image.height > image.width ? maxSize : ~~(image.height / image.width * maxSize);\r\n\tcanvas.width = image.width > image.height ? maxSize : ~~(image.width / image.height * maxSize);\r\n\tcanvas.getContext('2d').drawImage(image, 0, 0, canvas.width, canvas.height);\r\n\r\n\tconst dataURL = canvas.toDataURL(contentType);\r\n\r\n\treturn dataURL;\r\n}","import React, { Fragment, Component } from 'react';\r\nimport './ConnectedCardComponent.css';\r\n\r\nclass ConnectedCard extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n }\r\n\r\n handleThumbsUp = () => {\r\n this.props.sendMessage(this.props.text);\r\n }\r\n\r\n render() {\r\n return(\r\n \r\n
\r\n {/* Image */}\r\n
\r\n \r\n
\r\n {/* Text */}\r\n

{this.props.text}

\r\n
\r\n
\r\n )\r\n }\r\n\r\n}\r\n\r\nexport default ConnectedCard;","import React, { Fragment, Component } from 'react';\r\nimport './ThumbsComponent.css';\r\n\r\nclass Thumbs extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n }\r\n\r\n handleThumbsUp = () => {\r\n this.props.sendMessage(\"👍\");\r\n }\r\n\r\n handleThumbsDown = () => {\r\n this.props.sendMessage(\"👎\");\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n )\r\n }\r\n\r\n}\r\n\r\nexport default Thumbs;","import React, { Fragment } from 'react';\r\nimport './Loading.css';\r\nimport loader from '../../assets/images/feather-loader.svg';\r\n\r\nconst Loading = props => {\r\n return(\r\n \r\n
\r\n {/* Image */}\r\n
\r\n \r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default Loading;","import memoize from 'memoize-one';\r\nimport React, { Component } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport ReactWebChat, { createDirectLine, createStore } from 'botframework-webchat';\r\n// import { InputText } from '../formComponents/inputText'\r\nimport PropTypes from 'prop-types';\r\nimport domtoimage from 'dom-to-image';\r\nimport PasswordInput from '../PasswordInputComponent/PasswordInput';\r\nimport ActivityWithNoAvatar from '../ActivityWithNoAvatar';\r\nimport { getLoginMessage, getLoginRetryMessage } from '../../shared/conversationConsts';\r\nimport './WebChat.css';\r\nimport loader from '../../assets/images/loader.svg';\r\nimport { getWebChatStyleSet } from '../../shared/createStyleSet';\r\nimport { downscaleImage } from '../../shared/imageDownscalar';\r\nimport { createCognitiveServicesSpeechServicesPonyfillFactory, createBrowserWebSpeechPonyfillFactory } from 'botframework-webchat';\r\nimport directLineDisconnect from 'botframework-webchat-core/lib/actions/disconnect';\r\nimport ConnectedCard from '../ConnectedCardComponent/ConnectedCardComponent';\r\nimport Thumbs from '../ThumbsComponent/ThumbsComponent';\r\nimport Loading from '../Loading/Loading';\r\n// import CustomActivityHandler from '../HandlerComponent/customActivityHandler';\r\n\r\nconst DirectLineConnectionStatus = {\r\n\tUninitialized: 0,\r\n\tConnecting: 1,\r\n\tOnline: 2,\r\n\tExpiredToken: 3,\r\n\tFailedToConnect: 4,\r\n\tEnded: 5\r\n}\r\n\r\nclass WebChat extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.state = {\r\n\t\t\tccv: null,\r\n\t\t\tcardNo: null,\r\n\t\t\tdate: null,\r\n\t\t\tisBtnClicked: null,\r\n\t\t\tisRestartClick: false\r\n\t\t\t// isConfirmActions: false\r\n\t\t}\r\n\t\tconst store = this.getStore();\r\n\r\n\t\t// this.createDirectLine = memoize(token => createDirectLine({ token, locale: 'en-us' }));\r\n\t\t// const styleSet = getWebChatStyleSet(this.props.webChatConfiguration, this.props.language);\r\n\r\n\t\tthis.createDirectLine = memoize(token => createDirectLine({ token, locale: localStorage.getItem('botLang') }));\r\n\t\tconst styleSet = getWebChatStyleSet(this.props.webChatConfiguration, localStorage.getItem('botLang'));\r\n\r\n\t\tconst { connectToWebChat } = window.WebChat;\r\n\r\n\t\tvar isConnectedVisible = false;\r\n\t\tvar thumbsActivityId;\r\n\t\tvar connectedToAgentId;\r\n\t\tvar disabledPreviousButtonId;\r\n\t\t// var formName;\r\n\t\t// var isRestartClick = false;\r\n\t\tvar radioChoices;\r\n\t\tvar radioItem;\r\n\r\n\t\tconst ConnectedPasswordInputActivity = connectToWebChat(\r\n\t\t\t({ postActivity }) => ({ postActivity })\r\n\t\t)(props => );\r\n\r\n\t\tconst WithoutAvatarActivity = connectToWebChat(\r\n\t\t\t({ postActivity }) => ({ postActivity })\r\n\t\t)(props => );\r\n\r\n\t\tlet showAvatar = true;\r\n\t\tlet previousMessageFrom = '';\r\n\t\tthis.hasSubmittedPassword = false;\r\n\r\n\t\tconst activityMiddleware = () => next => card => {\r\n\t\t\t// try {\r\n\t\t\tif (card.activity.type === 'message') {\r\n\t\t\t\tif (card.activity.attachments && card.activity.attachments.length && card.activity.attachments[0].content && card.activity.attachments[0].content.body && card.activity.attachments[0].content.body.length && card.activity.attachments[0].contentType === \"application/vnd.microsoft.card.adaptive\") {\r\n\t\t\t\t\tlet self = this;\r\n\t\t\t\t\tfor (let i = 0; i < card.activity.attachments[0].content.body.length; i++) {\r\n\t\t\t\t\t\tif (card.activity.attachments[0].content.body[i].type === \"Image\" && card.activity.attachments[0].content.body[i].url.split(\"###\")[0] === \"PAYMENT\") {\r\n\t\t\t\t\t\t\tlet cardInfo = card.activity.attachments[0].content.body[i].url.split(\"###\")\r\n\t\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\t\tccv: cardInfo[1],\r\n\t\t\t\t\t\t\t\tcardNo: cardInfo[2],\r\n\t\t\t\t\t\t\t\tdate: cardInfo[3],\r\n\t\t\t\t\t\t\t\tname: cardInfo[4]\r\n\t\t\t\t\t\t\t}, () => {\r\n\r\n\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\tcard.activity.attachments[0].content.body[i].url = 'https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcQ1Tort3a_IQFnYdmtLtmU7rEMJGz8Lsc5soA&usqp=CAU';\r\n\t\t\t\t\t\t\tsetTimeout(() => { this.adjustImage() }, 0)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\t\tif (self) {\r\n\t\t\t\t\t\t\tself.adjustInputField()\r\n\t\t\t\t\t\t\tself.adjustCheckbox()\r\n\t\t\t\t\t\t\treturn next(card);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}, 100);\r\n\t\t\t\t}\r\n\t\t\t\tif (card.activity.from.role === 'bot' &&\r\n\t\t\t\t\t(card.activity.text === getLoginMessage(this.props.language) || card.activity.text === getLoginRetryMessage(this.props.language))\r\n\t\t\t\t) {\r\n\t\t\t\t\tif (!this.hasSubmittedPassword && (card.activity.text === getLoginRetryMessage(this.props.language))) {\r\n\t\t\t\t\t\tcard.activity.text = \"Please provide the password in the password field!\";\r\n\t\t\t\t\t\tthis.hasSubmittedPassword = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn next(card);\r\n\r\n\t\t\t\t}\r\n\t\t\t\tif (card.activity.attachments && card.activity.attachments[0] && card.activity.attachments[0].contentUrl === '') {\r\n\t\t\t\t\tcard.activity.attachments[0].contentUrl = \"/\";\r\n\t\t\t\t}\r\n\t\t\t\tif (card.activity.attachments && card.activity.attachments.length && card.activity.attachments[0].content\r\n\t\t\t\t\t&& card.activity.attachments[0].content.body\r\n\t\t\t\t\t&& card.activity.attachments[0].content.body.length) {\r\n\t\t\t\t\tif (card.activity.attachments[0].content.body[0].items && card.activity.attachments[0].content.body[0].items.length) {\r\n\t\t\t\t\t\tvar items = card.activity.attachments[0].content.body[0].items;\r\n\t\t\t\t\t\tfor (let i = 0; i < items.length; i++) {\r\n\t\t\t\t\t\t\tif (items[i].style == 'Expanded') {\r\n\t\t\t\t\t\t\t\tthis.radioItem = items[i];\r\n\t\t\t\t\t\t\t\tif (items[i].choices.length)\r\n\t\t\t\t\t\t\t\t\tthis.radioChoices = items[i].choices;\r\n\t\t\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\t\t\tthis.radioChoices = [];\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tif (card.activity.from.role === 'user' && card.activity.channelData.state === 'send failed') {\r\n\t\t\t\t\tcard.activity.channelData.state = 'sent';\r\n\t\t\t\t}\r\n\t\t\t\tif (card.activity.value && card.activity.value.Id === \"ThumbsActivity\") {\r\n\t\t\t\t\treturn children => (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t\tif (card.activity.value && card.activity.value.Id === \"ConnectedToAgent\") {\r\n\t\t\t\t\tthis.props.handleDequeued(null);\r\n\t\t\t\t\treturn children => (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t)\r\n\t\t\t\t}\r\n\t\t\t\tif (card.activity.value && card.activity.value.Id === \"DisabledPreviousButton\") {\r\n\t\t\t\t\tvar pushBtns = document.querySelectorAll(\"button\");\r\n\t\t\t\t\tif (pushBtns.length) {\r\n\t\t\t\t\t\tfor (let i = 0; i < pushBtns.length; i++) {\r\n\t\t\t\t\t\t\tif (pushBtns[i].ariaLabel == 'Cancel' || pushBtns[i].ariaLabel == \"Chat Now\" || pushBtns[i].ariaLabel == \"التحدث الآن\" || pushBtns[i].ariaLabel == \"الغاء\") {\r\n\t\t\t\t\t\t\t\tpushBtns[i].disabled = true;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// if (card.activity.value && card.activity.value.Name === \"Form\") {\r\n\t\t\t\t// \tvar form = document.querySelectorAll(\".ac-container.ac-adaptiveCard\");\r\n\t\t\t\t// \tconsole.log(\"form \", form)\r\n\t\t\t\t// \tif(form.length) {\r\n\t\t\t\t// \t\tfor(let i =0 ; i< form.length; i++) {\r\n\t\t\t\t// \t\t\tconsole.log(\"children \", form[i].children)\r\n\t\t\t\t// \t\t\tform[i].classList.add('white');\r\n\t\t\t\t// \t\t\tconsole.log(\"form[i].classList \",form[i] + form[i].classList)\r\n\t\t\t\t// \t\t}\r\n\t\t\t\t// \t}\r\n\t\t\t\t// \tconsole.log(\"form\")\r\n\t\t\t\t// }\r\n\r\n\t\t\t\t// if (card.activity.value && card.activity.value.Id === \"ConfirmActions\") {\r\n\t\t\t\t// \t// debugger\r\n\t\t\t\t// \tconsole.log(\"Hi\")\r\n\t\t\t\t// \tthis.setState({ isConfirmActions: true });\r\n\t\t\t\t// }\r\n\r\n\t\t\t\tconst currentMessageFrom = card.activity.from.role;\r\n\t\t\t\tshowAvatar =\r\n\t\t\t\t\tpreviousMessageFrom !== currentMessageFrom ||\r\n\t\t\t\t\tpreviousMessageFrom === '';\r\n\t\t\t\tpreviousMessageFrom = currentMessageFrom;\r\n\t\t\t\treturn next(card);\r\n\t\t\t}\r\n\t\t\t// if(card.activity.type === 'event') {\r\n\t\t\t// \tif(card.activity.value && this.isRestartClick) {\r\n\t\t\t// \t\treturn children => (\r\n\t\t\t// \t\t\t\r\n\t\t\t// \t\t)\r\n\t\t\t// \t}\r\n\t\t\t// }\r\n\r\n\t\t\treturn next(card);\r\n\t\t\t// }\r\n\t\t\t// catch(e) {\r\n\t\t\t// \tconsole.log(\"e\" , e)\r\n\t\t\t// \tconsole.log(\"activitiy\" , card.activity)\r\n\t\t\t// }\r\n\r\n\r\n\t\t};\r\n\t\tlet disabled = false;\r\n\t\tlet token = localStorage.getItem(\"botToken\");\r\n\r\n\t\tlet sendOnMount = false;\r\n\t\twindow.addEventListener(\"RequestAgent\", this.RequestAgentHandler.bind(this), false);\r\n\r\n\t\tlet listening = false;\r\n\t\tthis.state = {\r\n\t\t\tactivityMiddleware,\r\n\t\t\tstore,\r\n\t\t\ttoken,\r\n\t\t\tsendOnMount,\r\n\t\t\tdisabled,\r\n\t\t\tlistening\r\n\t\t};\r\n\r\n\t\tthis.startSendHeartBeat();\r\n\t}\r\n\r\n\trtf = new Intl.RelativeTimeFormat('en', { numeric: 'auto' })\r\n\r\n\t// Send Message \r\n\tsendMessage = (text) => {\r\n\t\tthis.setState({ disabled: false }, async () => {\r\n\t\t\tvar eventObj = {\r\n\t\t\t\ttype: 'WEB_CHAT/SEND_MESSAGE',\r\n\t\t\t\tpayload: {\r\n\t\t\t\t\tname: 'message',\r\n\t\t\t\t\tvalue: { language: this.props.language },\r\n\t\t\t\t\tlanguage: this.props.language,\r\n\t\t\t\t\ttext: text\r\n\t\t\t\t},\r\n\t\t\t\tlocale: this.props.language\r\n\t\t\t};\r\n\r\n\t\t\tthis.state.store.dispatch(eventObj);\r\n\t\t\tthis.setState(() => ({ submitted: true }));\r\n\t\t});\r\n\t}\r\n\r\n\tRequestAgentHandler = async (e) => {\r\n\t\tvar eventObj = {\r\n\t\t\ttype: 'WEB_CHAT/SEND_EVENT',\r\n\t\t\tpayload: {\r\n\t\t\t\tname: 'handoff/CreateRequest',\r\n\t\t\t\tvalue: { language: this.props.language },\r\n\t\t\t\tlanguage: this.props.language\r\n\t\t\t},\r\n\t\t\tlocale: this.props.language\r\n\t\t};\r\n\r\n\t\tthis.state.store.dispatch(eventObj);\r\n\t};\r\n\r\n\tcheckQueuePosition = () => {\r\n\t\tthis.setState({ disabled: false }, async () => {\r\n\t\t\tvar eventObj = {\r\n\t\t\t\ttype: 'WEB_CHAT/SEND_EVENT',\r\n\t\t\t\tpayload: {\r\n\t\t\t\t\tname: 'handoff/QueuePosition', // 'webchat/getQueue'\r\n\t\t\t\t\tvalue: { language: this.props.language },\r\n\t\t\t\t\tlanguage: this.props.language\r\n\t\t\t\t},\r\n\t\t\t\tlocale: this.props.language\r\n\t\t\t};\r\n\r\n\t\t\tthis.state.store.dispatch(eventObj);\r\n\t\t});\r\n\t}\r\n\r\n\r\n\tsetConversationAsAbandon = () => {\r\n\t\tthis.setState({ disabled: false }, async () => {\r\n\t\t\tvar eventObj = {\r\n\t\t\t\ttype: 'WEB_CHAT/SEND_EVENT',\r\n\t\t\t\tpayload: {\r\n\t\t\t\t\tname: 'conversation/Abandon', // 'Abandon'\r\n\t\t\t\t\tvalue: { language: this.props.language },\r\n\t\t\t\t\tlanguage: this.props.language\r\n\t\t\t\t},\r\n\t\t\t\tlocale: this.props.language\r\n\t\t\t};\r\n\r\n\t\t\tthis.state.store.dispatch(eventObj);\r\n\t\t});\r\n\t}\r\n\r\n\r\n\tcount = 0;\r\n\tSendEncryptedCodeStartUp = (e) => {\r\n\t\t//alert('localStorage : ' + localStorage.getItem(\"botLang\"));\r\n\t\tlet lang = localStorage.getItem(\"botLang\");\r\n\t\tthis.setState({ disabled: false, language: lang }, async () => {\r\n\t\t\tvar eventObj = {\r\n\t\t\t\ttype: 'WEB_CHAT/SEND_EVENT',\r\n\t\t\t\tpayload: {\r\n\t\t\t\t\tname: 'webchat/join', // 'webchat/getQueue'\r\n\t\t\t\t\tvalue: { language: lang },\r\n\t\t\t\t\tlanguage: lang\r\n\t\t\t\t},\r\n\t\t\t\tlocale: lang\r\n\t\t\t};\r\n\t\t\tconsole.log(eventObj);\r\n\t\t\tthis.state.store.dispatch(eventObj);\r\n\t\t});\r\n\t};\r\n\r\n\tSendEncryptedCodeEnd = async (e) => {\r\n\t\tawait this.SendEncryptedCode('webchat/end_join');\r\n\t};\r\n\r\n\tSendEncryptedCodeNewAccount = async (e) => {\r\n\t\tawait this.SendEncryptedCode('webchat/be_token_received');\r\n\t};\r\n\r\n\tSendEncryptedCode = async (eventName) => {\r\n\r\n\t\tthis.setState({ disabled: false }, async () => {\r\n\t\t\tvar eventObj = {\r\n\t\t\t\ttype: 'WEB_CHAT/SEND_EVENT',\r\n\t\t\t\tpayload: {\r\n\t\t\t\t\tname: eventName,\r\n\t\t\t\t\tvalue: { language: this.props.language },\r\n\t\t\t\t\tlanguage: this.props.language\r\n\t\t\t\t},\r\n\t\t\t\tlocale: this.props.language\r\n\t\t\t};\r\n\r\n\t\t\tthis.state.store.dispatch(eventObj);\r\n\t\t});\r\n\t};\r\n\r\n\t// Disconnect Chatbot Handler\r\n\tdisconnectChatbotHandler = () => {\r\n\t\t//this.SendEncryptedCodeEnd();\r\n\t\tArray.from(document.getElementsByTagName(\"li\")).forEach(element => { element.remove() });\r\n\t\tthis.isRestartClick = true;\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.isRestartClick = false;\r\n\t\t\tthis.state.store.dispatch(directLineDisconnect());\r\n\t\t}, 1000);\r\n\t}\r\n\r\n\tshowRefresh = () => {\r\n\t\tthis.setState({ isRestartClick: true });\r\n\t\t//this.isRestartClick = true;\r\n\t\tsetTimeout(() => {\r\n\t\t\t//this.isRestartClick = false;\r\n\t\t\tthis.setState({ isRestartClick: false });\r\n\t\t}, 500);\r\n\t}\r\n\r\n\t// Get Store\r\n\tgetStore = () => {\r\n\r\n\t\tconst store = createStore({}, ({ dispatch }) => next => async action => {\r\n\t\t\tswitch (action.type) {\r\n\t\t\t\tcase 'DIRECT_LINE/CONNECT_FULFILLED':\r\n\r\n\t\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\t\tlet messages = Array.from(document.getElementsByTagName(\"li\"));\r\n\t\t\t\t\t\tif (!messages || messages.length === 0) {\r\n\t\t\t\t\t\t\tthis.SendEncryptedCodeStartUp();\r\n\t\t\t\t\t\t\tlocalStorage.setItem('preflightSent', true);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}, 2000);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'WEB_CHAT/MARK_ACTIVITY':\r\n\t\t\t\t\tif (action.payload && action.payload.name === \"speak\") {\r\n\t\t\t\t\t\t// if (action.payload.value) {\r\n\t\t\t\t\t\t// \tif (!document.getElementsByClassName(\"gif_player\")[0].classList.contains(\"playing\")) {\r\n\t\t\t\t\t\t// \t\tdocument.getElementsByClassName(\"gif_player\")[0].classList.add(\"playing\");\r\n\t\t\t\t\t\t// \t\tdocument.getElementsByClassName(\"gif_player\")[0].getElementsByTagName('img')[0].src = \"../../assets/images/avatar.gif\";\r\n\t\t\t\t\t\t// \t}\r\n\t\t\t\t\t\t// } else if (document.getElementsByClassName(\"gif_player\")[0].classList.contains(\"playing\")) {\r\n\t\t\t\t\t\t// \tdocument.getElementsByClassName(\"gif_player\")[0].classList.remove(\"playing\");\r\n\t\t\t\t\t\t// \tdocument.getElementsByClassName(\"gif_player\")[0].getElementsByTagName('img')[0].src = \"../../assets/images/avatar_preview.gif\";\r\n\t\t\t\t\t\t// }\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'WEB_CHAT/SET_LANGUAGE':\r\n\t\t\t\t\t//action.payload.language = this.props.language;\r\n\t\t\t\t\taction.payload.language = localStorage.getItem('botLang');\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'WEB_CHAT/SEND_MESSAGE':\r\n\t\t\t\t\t// Check if message contains only whitespaces; drop message if it does\r\n\t\t\t\t\tif (!action.payload.text.replace(/\\s/g, '').length) {\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'DIRECT_LINE/POST_ACTIVITY':\r\n\t\t\t\t\tif (action.payload.activity &&\r\n\t\t\t\t\t\taction.payload.activity.attachments &&\r\n\t\t\t\t\t\taction.payload.activity.channelData &&\r\n\t\t\t\t\t\taction.payload.activity.channelData.attachmentSizes &&\r\n\t\t\t\t\t\taction.payload.activity.channelData.attachmentSizes.some(x => x > 4000000)) {\r\n\t\t\t\t\t\tconsole.log('this.props.language : ' + this.props.language);\r\n\t\t\t\t\t\tconsole.log('this.state.language : ' + this.state.language);\r\n\t\t\t\t\t\tconsole.log('action.payload.language : ' + action.payload.language);\r\n\t\t\t\t\t\tconsole.log('action.payload.lang : ' + action.payload.lang);\r\n\r\n\t\t\t\t\t\t// alert('this.props.language : ' + this.props.language);\r\n\t\t\t\t\t\t// alert('this.state.language : ' + this.state.language);\r\n\t\t\t\t\t\t// alert('action.payload.language : ' + action.payload.language);\r\n\t\t\t\t\t\t// alert('action.payload.lang : ' + action.payload.lang);\r\n\r\n\r\n\t\t\t\t\t\tdispatch({\r\n\t\t\t\t\t\t\ttype: 'DIRECT_LINE/INCOMING_ACTIVITY',\r\n\t\t\t\t\t\t\tpayload: {\r\n\t\t\t\t\t\t\t\tactivity: {\r\n\t\t\t\t\t\t\t\t\tid: (new Date()).toISOString(),\r\n\t\t\t\t\t\t\t\t\tchannelId: \"directline\",\r\n\t\t\t\t\t\t\t\t\tfrom: {\r\n\t\t\t\t\t\t\t\t\t\tid: \"LocalAttachmentValidation\",\r\n\t\t\t\t\t\t\t\t\t\tname: \"Blackstone Bot\",\r\n\t\t\t\t\t\t\t\t\t\trole: \"bot\"\r\n\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\ttimestamp: (new Date()).toISOString(),\r\n\t\t\t\t\t\t\t\t\ttext: this.props.literals.attachmentSizeValidationMessage,\r\n\t\t\t\t\t\t\t\t\tinputHint: \"expectingInput\",\r\n\t\t\t\t\t\t\t\t\tlocale: this.props.language,\r\n\t\t\t\t\t\t\t\t\ttype: \"message\"\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (action.payload.activity.type === 'message') {\r\n\r\n\t\t\t\t\t\tthis.disableAllButtons();\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (action.payload.activity && action.payload.activity.attachments) {\r\n\t\t\t\t\t\tconst downscaledImages = await Promise.all(action.payload.activity.attachments.map(\r\n\t\t\t\t\t\t\t({ contentType, contentUrl }) => /^image\\//.test(contentType) ? downscaleImage(contentUrl, contentType, 480) : null));\r\n\t\t\t\t\t\t(action.payload.activity.channelData || (action.payload.activity.channelData = {})).thumbnails = downscaledImages;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'DIRECT_LINE/INCOMING_ACTIVITY':\r\n\t\t\t\t\tconst { activity } = action.payload;\r\n\t\t\t\t\tif (activity && activity.type === 'message' && activity.from.role === 'bot') {\r\n\t\t\t\t\t\tthis.playReceivedMessageSound();\r\n\t\t\t\t\t\tif (action.payload.activity.value && action.payload.activity.value.Id === \"ThumbsActivity\")\r\n\t\t\t\t\t\t\tthis.thumbsActivityId = \"ThumbsActivity\";\r\n\t\t\t\t\t\tif (action.payload.activity.value && action.payload.activity.value.Id === \"ConnectedToAgent\")\r\n\t\t\t\t\t\t\tthis.connectedToAgentId = \"ConnectedToAgent\";\r\n\t\t\t\t\t\tif (action.payload.activity.value && action.payload.activity.value.Id === \"DisabledPreviousButton\")\r\n\t\t\t\t\t\t\tthis.disabledPreviousButtonId = \"DisabledPreviousButton\";\r\n\t\t\t\t\t\t// if (action.payload.activity.value && action.payload.activity.value.Name === \"Form\")\r\n\t\t\t\t\t\t// \tthis.formName = \"Form\";\r\n\r\n\t\t\t\t\t\tif (activity.locale) {\r\n\t\t\t\t\t\t\tconsole.log('activity locale : ' + activity.locale);\r\n\t\t\t\t\t\t\tlocalStorage.setItem('botLang', activity.locale);\r\n\t\t\t\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\t\t\t\tthis.checkLanguageDirection(activity.locale);\r\n\t\t\t\t\t\t\t}, 100);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (activity.attachments && activity.attachments.length &&\r\n\t\t\t\t\t\t\tactivity.attachments[0].content && activity.attachments[0].content.body &&\r\n\t\t\t\t\t\t\tactivity.attachments[0].content.body.length && activity.attachments[0].content.body[0].items) {\r\n\t\t\t\t\t\t\tthis.radioChoices = [];\r\n\t\t\t\t\t\t\tconsole.log(activity)\r\n\t\t\t\t\t\t\tfor (let i = 0; i < activity.attachments[0].content.body[0].items.length; i++) {\r\n\t\t\t\t\t\t\t\tif (activity.attachments[0].content.body[0].items[i].style == \"Expanded\")\r\n\t\t\t\t\t\t\t\t\tthis.radioItem = activity.attachments[0].content.body[0].items[i];\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (activity.type === 'event') {\r\n\r\n\t\t\t\t\t\tif (activity.action && activity.action === 'openUrl') {\r\n\t\t\t\t\t\t\t//console.log(\"activity from openUrl \", activity)\r\n\t\t\t\t\t\t\twindow.open(activity.channelData);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (activity.name === 'webchat/request_be_token' && activity.from.role === 'bot') {\r\n\t\t\t\t\t\t\tif (!localStorage.getItem('preflightSent')) {\r\n\t\t\t\t\t\t\t\tlocalStorage.setItem('preflightSent', true);\r\n\t\t\t\t\t\t\t\twindow.parent.dispatchEvent(new CustomEvent('ChatbotTokenReceived'), {});\r\n\t\t\t\t\t\t\t\tthis.SendEncryptedCodeNewAccount();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (activity.name === 'webchat/end_join' && activity.from.role === 'bot') {\r\n\t\t\t\t\t\t\tthis.setState({ disabled: false });\r\n\t\t\t\t\t\t\t//this.isRestartClick = true;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (activity.name === \"handoff/queued\")\r\n\t\t\t\t\t\t\tthis.props.handleQueueDataRecieved(activity.value);\r\n\r\n\t\t\t\t\t\tif (activity.name === \"handoff/Dequeued\")\r\n\t\t\t\t\t\t\tthis.props.handleDequeued(activity.value);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (activity && activity.locale && activity.from.role === 'bot') {\r\n\t\t\t\t\t\tif (this.props.showedIntroCard) {\r\n\t\t\t\t\t\t\tthis.props.changeLanguage(activity.locale);\r\n\t\t\t\t\t\t\tdispatch({ type: 'WEB_CHAT/SET_LANGUAGE', payload: { language: activity.locale } });\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.props.handleShowedIntroCard();\r\n\t\t\t\t\t\t\tactivity.locale = this.props.language;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (activity && activity.attachments && activity.channelData && activity.channelData.thumbnails) {\r\n\t\t\t\t\t\taction.payload.activity.attachments = activity.attachments.map((attachment, index) => ({ ...attachment, contentUrl: activity.channelData.thumbnails[index] || attachment.contentUrl }));\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'DIRECT_LINE/DISCONNECT_REJECTED':\r\n\t\t\t\tcase 'DIRECT_LINE/DISCONNECT':\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'DIRECT_LINE/DISCONNECT_FULFILLED':\r\n\t\t\t\t\tthis.fetchToken(true);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'DIRECT_LINE/CONNECTION_STATUS_UPDATE':\r\n\t\t\t\t\tif (!!action.payload && !!action.payload.connectionStatus) {\r\n\t\t\t\t\t\tif (action.payload.connectionStatus === DirectLineConnectionStatus.ExpiredToken ||\r\n\t\t\t\t\t\t\taction.payload.connectionStatus === DirectLineConnectionStatus.FailedToConnect) {\r\n\t\t\t\t\t\t\tthis.setState({ token: null });\r\n\t\t\t\t\t\t\tlocalStorage.setItem('preflightSent', false);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'WEB_CHAT/START_DICTATE':\r\n\t\t\t\t\tif (!this.state.listening)\r\n\t\t\t\t\t\tthis.setState({ listening: true });\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'WEB_CHAT/STOP_DICTATE':\r\n\t\t\t\t\tif (this.state.listening)\r\n\t\t\t\t\t\tthis.setState({ listening: false });\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t\treturn next(action);\r\n\t\t});\r\n\t\treturn store;\r\n\t}\r\n\r\n\thandlePasswordSubmit = () => {\r\n\t\tthis.hasSubmittedPassword = true;\r\n\t}\r\n\r\n\thandleCustomButtonDesign = (id) => {\r\n\t\tlet ul = document.querySelector('ul[role=\"list\"]');\r\n\t\tif (ul) {\r\n\t\t\tlet lastLi = ul.lastChild;\r\n\t\t\t//debugger\r\n\t\t\tif (ul && lastLi && this.state.isConfirmActions)\r\n\t\t\t\tlastLi.classList.add(id);\r\n\t\t}\r\n\t}\r\n\r\n\tallDescendants = (node, lang) => {\r\n\t\tfor (var i = 0; i < node.children.length; i++) {\r\n\t\t\tvar child = node.children[i];\r\n\t\t\tthis.allDescendants(child, lang);\r\n\t\t\tchild.style.direction = (lang != 'ar-jo') ? \"ltr\" : \"rtl\";\r\n\t\t\tchild.style.textAlign = (lang != 'ar-jo') ? \"left\" : \"right\";\r\n\t\t}\r\n\t}\r\n\r\n\t// Check Language Direction\r\n\tcheckLanguageDirection = (lang) => {\r\n\t\tlet ul = document.querySelector('ul[role=\"list\"]');\r\n\t\tlet lastLi = document.querySelector('ul[role=\"list\"]').lastChild;\r\n\t\tif (lastLi)\r\n\t\t\tthis.allDescendants(lastLi, lang);\r\n\t\t// let lastLiContent = lastLi.getElementsByClassName(\"webchat__bubble__content\")[0];\r\n\t\t// let content = lastLi.getElementsByClassName(\"css-14ztl9d\")[0];\r\n\t\t// let lastLiContentChildren = []\r\n\t\t// if(document.getElementsByClassName(\"css-14ztl9d\")[0]) {\r\n\t\t// \tif(lastLi.getElementsByClassName(\"css-14ztl9d\")[0].children) {\r\n\t\t// \t\tlastLiContentChildren = lastLi.getElementsByClassName(\"css-14ztl9d\")[0].children;\r\n\t\t// \t}\r\n\t\t// }\r\n\t\t// if (ul && lastLi) {\r\n\t\t// \tif (lastLiContent) {\r\n\t\t// \t\tif(lastLiContentChildren && lastLiContentChildren.length > 0) {\r\n\r\n\t\t// \t\t\tfor(let i=0; i< lastLiContentChildren.length; i++) {\r\n\t\t// \t\t\t\tconsole.log(\"lang from loop \", lang)\r\n\t\t// \t\t\t\tlastLiContentChildren[i].style.direction = (lang != 'ar-jo') ? \"ltr\" : \"rtl\";\r\n\t\t// \t\t\t\tlastLiContentChildren[i].style.textAlign = (lang != 'ar-jo') ? \"left\" : \"right\";\r\n\t\t// \t\t\t}\r\n\t\t// \t\t}\r\n\t\t// \t\t// lastLiContent.style.direction = (lang != 'ar-jo') ? \"ltr\" : \"rtl\";\r\n\t\t// \t\t// lastLiContent.style.textAlign = (lang != 'ar-jo') ? \"left\" : \"right\";\r\n\t\t// \t\tcontent.style.direction = (lang != 'ar-jo') ? \"ltr\" : \"rtl\";\r\n\t\t// \t\tcontent.style.textAlign = (lang != 'ar-jo') ? \"left\" : \"right\";\r\n\t\t// \t\tconsole.log(\"lastLiContentChildren \", lastLiContentChildren)\r\n\t\t// \t\tconsole.log(\"lang \", lang)\r\n\t\t// \t\tconsole.log(\"lastLiContent \", lastLiContent)\r\n\t\t// \t\tconsole.log(\"content \", content)\r\n\t\t// \t}\r\n\t\t// }\r\n\r\n\t\t// if(document.querySelector('ul[role=\"list\"]') && document.querySelector('ul[role=\"list\"]').lastChild) {\r\n\t\t// \t//console.log(\"last li \", document.querySelector('ul[role=\"list\"]').lastChild)\r\n\t\t// \t//console.log(\"last content \", document.querySelector('ul[role=\"list\"]').lastChild.getElementsByClassName(\"webchat__bubble__content\")[0])\r\n\t\t// \tif(document.querySelector('ul[role=\"list\"]').lastChild.getElementsByClassName(\"webchat__bubble__content\")[0]) {\r\n\t\t// \t\tdocument.querySelector('ul[role=\"list\"]').lastChild.getElementsByClassName(\"webchat__bubble__content\")[0].style.direction = (lang !== 'ar-jo') ? \"ltr\" : \"rtl\";\r\n\t\t// \t\tdocument.querySelector('ul[role=\"list\"]').lastChild.getElementsByClassName(\"webchat__bubble__content\")[0].style.textAlign = (lang !== 'ar-jo') ? \"left\" : \"right\";\r\n\t\t// \t}\r\n\t\t// }\r\n\r\n\t}\r\n\r\n\t// Handle Scroll ToTop Item\r\n\thandleScrollToTopItem = () => {\r\n\t\t//console.log(\"Hi from scroll\")\r\n\t\tsetTimeout(() => {\r\n\t\t\tlet allMessages = document.querySelector('ul[role=\"list\"]');\r\n\t\t\tif (allMessages) {\r\n\t\t\t\tlet lastChild = allMessages.lastChild;\r\n\t\t\t\t//if (!!lastChild) {\r\n\t\t\t\tif (lastChild) {\r\n\t\t\t\t\t//\tconsole.log(\"allMessages \", allMessages)\r\n\t\t\t\t\t//\tallMessages.scrollY = lastChild.offsetTop;\r\n\t\t\t\t\t//\tconsole.log(\"allMessages.scrollY \", allMessages.scrollY)\r\n\r\n\t\t\t\t\t// lastChild.scroll({\r\n\t\t\t\t\t// \ttop: document.body.offsetHeight,\r\n\t\t\t\t\t// \tleft: 0, \r\n\t\t\t\t\t// \tbehavior: 'smooth',\r\n\t\t\t\t\t// });\r\n\t\t\t\t\t//lastChild.scrollIntoView();\r\n\r\n\t\t\t\t\t//lastChild.scrollIntoView({ behavior: \"smooth\", block: \"nearest\", inline: \"start\" });\r\n\r\n\t\t\t\t\t//console.log(\"last child \", lastChild);\r\n\t\t\t\t\t//allMessages.scrollTop = lastChild.offsetTop - allMessages.offsetTop;\r\n\t\t\t\t\t//allMessages.scrollTop = lastChild.offsetTop - allMessages.scrollTop;\r\n\t\t\t\t\t//allMessages.scrollTop = lastChild.offsetTop;\r\n\t\t\t\t\t//document.querySelectorAll(\".css-y1c0xs\")[0].scrollY = lastChild.offsetTop;\r\n\t\t\t\t\t// console.log(\"document.documentElement.scrollTop \", document.querySelectorAll(\".css-y1c0xs\")[0].scrollY)\r\n\t\t\t\t\t// console.log(\"allMessages.scrollTop \", allMessages.scrollTop)\r\n\t\t\t\t\t// console.log(\"lastChild.scrollTop \", lastChild.offsetTop)\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}, 100);\r\n\t}\r\n\r\n\tcomponentDidUpdate(prevProps) {\r\n\t\tthis.adjustCheckbox();\r\n\t\tthis.adjustInputField();\r\n\t\tthis.adjustSendButton();\r\n\r\n\t\t//this.adjustMicrophoneButton();\r\n\r\n\t\t// this.handleCustomButtonDesign(\"confirm_Actions\");\r\n\r\n\t\tif (prevProps && prevProps.language.toLocaleLowerCase() !== this.props.language.toLocaleLowerCase()) {\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tvar eventObj = {\r\n\t\t\t\t\ttype: 'WEB_CHAT/SEND_EVENT',\r\n\t\t\t\t\tpayload: {\r\n\t\t\t\t\t\tname: 'webchat/language_change',\r\n\t\t\t\t\t\tvalue: { language: this.props.language },\r\n\t\t\t\t\t\tlanguage: this.props.language\r\n\t\t\t\t\t},\r\n\t\t\t\t\tlocale: this.props.language\r\n\r\n\t\t\t\t};\r\n\t\t\t\tconsole.log('language_change obj : ' + eventObj);\r\n\t\t\t\tthis.state.store.dispatch(eventObj);\r\n\t\t\t}, 50)\r\n\t\t}\r\n\r\n\t\tthis.changeNewMessagesBtnText();\r\n\t\tthis.handleScrollToTopItem();\r\n\r\n\t\tthis.makeBtnAsFocused();\r\n\t\tthis.setLinkOnClick();\r\n\t}\r\n\r\n\tclearToken = () => {\r\n\t\t// localStorage.removeItem('botToken');\r\n\t\t// localStorage.removeItem('botLang');\r\n\t\t// this.setState({ token });\r\n\t\tlocalStorage.clear();\r\n\t}\r\n\r\n\t// Change New Messages Btn Text\r\n\tchangeNewMessagesBtnText = () => {\r\n\t\tlet scrollElem = document.querySelectorAll(\".css-y1c0xs\")[0];\r\n\t\tif (scrollElem) {\r\n\t\t\tscrollElem.addEventListener('scroll', () => {\r\n\t\t\t\tlet newMessagesBtn = document.getElementsByClassName('css-1m1alj7');\r\n\t\t\t\tif (newMessagesBtn[0])\r\n\t\t\t\t\tnewMessagesBtn[0].innerText = \"↓\";\r\n\t\t\t})\r\n\t\t}\r\n\t}\r\n\r\n\tmakeBtnAsFocused = () => {\r\n\t\tconst btns = [...document.querySelectorAll(\"button\")];\r\n\t\tbtns.forEach(el => {\r\n\t\t\tel.addEventListener(\"click\", (x) => {\r\n\t\t\t\t//\tdebugger\r\n\t\t\t\t//if(el.innerText == x.target.ariaLabel) {\r\n\r\n\t\t\t\t// console.log(\"focused\");\r\n\t\t\t\t// console.log(\"x \", x);\r\n\t\t\t\t// console.log(\"x.target\", x.target);\r\n\t\t\t\t// console.log(\"x.target.parentElement\", x.target.parentElement);\r\n\t\t\t\t// console.log(\"x.target.parentElement.nodeName\", x.target.parentElement.nodeName);\r\n\r\n\t\t\t\t// this.setState({ isBtnClicked: el });\r\n\t\t\t\t// this.state.isBtnClicked.className += \" focusedBtn\";\r\n\t\t\t\t// this.state.isBtnClicked.parentElement.className += \" focusedBtn\";\r\n\t\t\t\t// this.state.isBtnClicked.style.backgroundColor = \"red\";\r\n\t\t\t\t// this.state.isBtnClicked.parentElement.style.backgroundColor = \"red\";\r\n\r\n\t\t\t\t//x.target.classList.add(\"focusedBtn\");\r\n\t\t\t\t//parent.classList.add(\"focusedBtn\");\r\n\t\t\t\t// el.classList.add(\"focusedBtn\");\r\n\t\t\t\t//[btns.indexOf(x.target)].classList.add(\"focusedBtn\");\r\n\t\t\t\t//\t}\r\n\r\n\t\t\t\t// for(let j= 0; j< this.state.down.length; j++) {\r\n\t\t\t\t// this.state.up[i].classList.add(\"active\");\r\n\t\t\t\t// this.state.down[i].classList.remove(\"active\");\r\n\t\t\t\t// }\r\n\r\n\t\t\t})\r\n\t\t})\r\n\r\n\t}\r\n\r\n\tstartSendHeartBeat = () => {\r\n\t\tsetInterval(() => {\r\n\t\t\tvar eventObj = {\r\n\t\t\t\ttype: 'WEB_CHAT/SEND_EVENT',\r\n\t\t\t\tpayload: {\r\n\t\t\t\t\tname: 'conversation/heartbeat',\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t\tthis.state.store.dispatch(eventObj);\r\n\t\t}, 30000);\r\n\t}\r\n\r\n\tcomponentDidMount() {\r\n\t\t// this.setUpSpeechService();\r\n\r\n\t\tif (!this.state.token)\r\n\t\t\tthis.fetchToken();\r\n\r\n\t\t// this.makeBtnAsFocused();\r\n\t\t// this.SendEncryptedCodeStartUp();\r\n\t\t// this.setLinkOnClick();\r\n\t\t//this.scrollTopMessage();\r\n\t}\r\n\r\n\t// componentWillUnmount() {\r\n\t// \tif (localStorage.getItem('botToken'))\r\n\t// \t\tthis.clearToken();\r\n\t// }\r\n\r\n\tsetLinkOnClick = () => {\r\n\t\t//console.log(\"from setLink \")\r\n\t\tconst btns = document.getElementsByTagName(\"BUTTON\");\r\n\t\tfor (let i = 0; i < btns.length; i++) {\r\n\t\t\t//console.log(\"btns[i] \", btns[i])\r\n\t\t\tbtns[i].addEventListener('click', function (e) {\r\n\t\t\t\tif (e.target.localName == 'a' && e.target.href.length) {\r\n\t\t\t\t\t//\tconsole.log(\"target \", e.target)\r\n\t\t\t\t\t//if(e.target && e.target.nodeName == \"BUTTON\") {\r\n\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\twindow.parent.dispatchEvent(new CustomEvent(\"OpenLink\", { bubbles: true, detail: { href: e.target.href } }));\r\n\t\t\t\t\t// window.parent.dispatchEvent(new CustomEvent(\"OpenLink\", { bubbles: true, detail: { href: e.target.nodeName } }));\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t}, false);\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tplayReceivedMessageSound = () => {\r\n\t\tif (!this.props.soundMuted) {\r\n\t\t\ttry {\r\n\t\t\t\tif (!window.audioObject) {\r\n\t\t\t\t\twindow.audioObject = new Audio('../build/assets/audio/unconvinced.mp3');\r\n\t\t\t\t\twindow.audioObject.mute = true;\r\n\t\t\t\t\twindow.audioObject.volume = 0.7;\r\n\t\t\t\t\twindow.AudioContextObject = new (window.AudioContext || window.webkitAudioContext)();\r\n\t\t\t\t\twindow.AudioContextSource = window.AudioContextObject.createMediaElementSource(window.audioObject);\r\n\t\t\t\t\twindow.AudioContextSource.connect(window.AudioContextObject.destination);\r\n\t\t\t\t}\r\n\t\t\t} catch (error) {\r\n\t\t\t\tconsole.log(\"Audio is not supported in this browser\")\r\n\t\t\t}\r\n\r\n\t\t\tif (window.audioObject !== undefined) {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tvar pr = window.audioObject.play();\r\n\t\t\t\t\twindow.audioObject.mute = false;\r\n\t\t\t\t\tif (!!pr) {\r\n\t\t\t\t\t\tpr.then(function () {\r\n\t\t\t\t\t\t\t// Automatic playback started!\r\n\t\t\t\t\t\t}).catch(function (error) {\r\n\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\twindow.focus();\r\n\t\t\t\t\t\t\t\tvar pr2 = window.audioObject.play();\r\n\t\t\t\t\t\t\t\twindow.audioObject.mute = false;\r\n\t\t\t\t\t\t\t\tif (!!pr2) {\r\n\t\t\t\t\t\t\t\t\tpr2.then(function () {\r\n\t\t\t\t\t\t\t\t\t\t// Automatic playback started!\r\n\t\t\t\t\t\t\t\t\t}).catch(function (error) {\r\n\t\t\t\t\t\t\t\t\t\t//console.log(\"User needs to interact to enable custom audio\")\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tcomponentWillReceiveProps(nextProps) {\r\n\t\tif (this.props.token && !nextProps.token) {\r\n\t\t\tconst store = this.getStore();\r\n\t\t\tthis.setState({ store });\r\n\t\t}\r\n\t}\r\n\r\n\tadjustImage() {\r\n\t\tlet imageNode = document.getElementsByClassName(\"ac-image\");\r\n\t\tdocument.getElementById(\"card2\").style.display = 'block'\r\n\t\tfor (let i = 0; i < imageNode.length; i++) {\r\n\t\t\tif (imageNode[i].src === \"https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcQ1Tort3a_IQFnYdmtLtmU7rEMJGz8Lsc5soA&usqp=CAU\") {\r\n\t\t\t\tlet node = document.getElementsByClassName('rccs')[0];\r\n\t\t\t\tdomtoimage.toPng(node)\r\n\t\t\t\t\t.then(function (dataUrl) {\r\n\t\t\t\t\t\timageNode[i].src = dataUrl\r\n\t\t\t\t\t\tdocument.getElementById(\"card2\").style.display = 'none'\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.catch(function (error) {\r\n\t\t\t\t\t\tconsole.error('oops, something went wrong!', error);\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tadjustCheckbox() {\r\n\r\n\t\t// \"ac-choiceSetInput-multiSelect\"\r\n\t\tlet singleSelect = document.getElementsByClassName(\"ac-toggleInput\");\r\n\t\tfor (let x = 0; x < singleSelect.length; x++) {\r\n\t\t\tsingleSelect[x].style.marginBottom = '7px'\r\n\t\t\tlet input = singleSelect[x].children[0];\r\n\t\t\tinput.classList.add('option-input');\r\n\t\t}\r\n\r\n\t\tlet multiSelect = document.getElementsByClassName(\"ac-choiceSetInput-multiSelect\")\r\n\t\tfor (let i = 0; i < multiSelect.length; i++) {\r\n\t\t\tlet baseEle = multiSelect[i];\r\n\t\t\tfor (let j = 0; j < baseEle.children.length; j++) {\r\n\t\t\t\tbaseEle.children[j].classList.add(\"radiobtn\")\r\n\t\t\t\tif (this.props.language.slice(0, 2) === 'ar') {\r\n\t\t\t\t\tbaseEle.children[j].classList.add('radiobtnrtl')\r\n\t\t\t\t} else {\r\n\t\t\t\t\tbaseEle.children[j].classList.remove('radiobtnrtl')\r\n\t\t\t\t}\r\n\t\t\t\tbaseEle.children[j].children[0].addEventListener('click', (e) => {\r\n\t\t\t\t\tif (e.target.checked) {\r\n\t\t\t\t\t\tbaseEle.children[j].children[2].classList.add('radio-focus')\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tbaseEle.children[j].children[2].classList.remove('radio-focus')\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tlet radioSelect = document.querySelectorAll('.ac-choiceSetInput-expanded:not(.radbtnConverted)');\r\n\r\n\t\t//let radioSelect = document.getElementsByClassName('ac-choiceSetInput-compact');\r\n\t\t// if(radioSelect.length > 0) {\r\n\t\t// document.getElementsByClassName(\"ac-choiceSetInput-compact\")[0].remove();\r\n\r\n\t\t// \tif(this.radioChoices.length) {\r\n\r\n\t\t// \t\tlet span = document.createElement(\"span\");\r\n\t\t// \t\tlet newLabel = document.createElement(\"label\");\r\n\t\t// \t\tspan.classList.add('bar');\r\n\t\t// \t\tnewLabel.className ='input-label du-chatbox input-label_space';\r\n\t\t// \t\tnewLabel.innerHTML = this.radioItem.label;\r\n\t\t// \t\tdocument.getElementsByClassName(\"ac-input-container\")[0].append(span);\r\n\t\t// \t\tdocument.getElementsByClassName(\"ac-input-container\")[0].append(newLabel);\r\n\r\n\t\t// \t\tlet radioDiv = document.createElement(\"label\");\r\n\t\t// \t\tradioDiv.classList.add('radio-group');\r\n\r\n\t\t// \t\tdocument.getElementsByClassName(\"ac-input-container\")[0].appendChild(radioDiv);\r\n\r\n\t\t// \t\tfor(let i=0; i< this.radioChoices.length; i++) {\r\n\t\t// \t\t\tvar input = document.createElement(\"input\");\r\n\t\t// \t\t\tvar radioLabel = document.createElement(\"label\");\r\n\t\t// \t\t\tinput.setAttribute(\"type\", \"radio\");\r\n\t\t// \t\t\tinput.setAttribute(\"name\", \"option\");\r\n\t\t// \t\t\tinput.setAttribute(\"value\", this.radioChoices[i].value);\r\n\r\n\t\t// \t\t\tvar labelText = document.createTextNode(this.radioChoices[i].value);\r\n\t\t// \t\t\tradioLabel.appendChild(labelText);\r\n\r\n\t\t// \t\t\tradioDiv.appendChild(input);\r\n\t\t// \t\t\tradioDiv.appendChild(radioLabel);\r\n\t\t// \t\t}\r\n\t\t// \t}\r\n\t\t// }\r\n\r\n\t\tfor (let i = 0; i < radioSelect.length; i++) {\r\n\r\n\t\t\tlet radioEle = radioSelect[i];\r\n\t\t\tfor (let j = 0; j < radioEle.children.length; j++) {\r\n\t\t\t\tif (this.props.language.slice(0, 2) === 'ar') {\r\n\t\t\t\t\tradioEle.children[j].classList.add(\"radbtnrtl\")\r\n\t\t\t\t} else {\r\n\t\t\t\t\tradioEle.children[j].classList.remove(\"radbtnrtl\")\r\n\t\t\t\t}\r\n\t\t\t\tradioEle.children[j].classList.add(\"radbtn\")\r\n\t\t\t\tradioEle.children[j].children[0].addEventListener('change', (e) => {\r\n\t\t\t\t\tfor (let k = 0; k < radioEle.childElementCount; k++) {\r\n\t\t\t\t\t\tif (radioEle.childNodes[k].firstElementChild.checked) {\r\n\t\t\t\t\t\t\tradioEle.children[k].children[2].classList.add('radbtn-focus')\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tradioEle.children[k].children[2].classList.remove('radbtn-focus')\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t\tradioEle.classList.add(\"radbtnConverted\")\r\n\t\t}\r\n\t}\r\n\r\n\tadjustInputField() {\r\n\t\tlet elementContainer = document.getElementsByClassName(\"ac-adaptiveCard\")\r\n\t\tfor (let j = 0; j < elementContainer.length; j++) {\r\n\t\t\tlet temb = document.getElementsByClassName(\"ac-input-container\")[0]\r\n\t\t\tif (elementContainer[j].contains(temb)) {\r\n\t\t\t\telementContainer[j].style.backgroundColor = \"white \"\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tlet containers = document.getElementsByClassName(\"ac-input-container\");\r\n\t\tfor (let i = 0; i < containers.length; i++) {\r\n\t\t\t//console.log(\"containers[i] \", containers[i])\r\n\t\t\tlet tembEle = \"\";\r\n\t\t\tif (containers[i].getElementsByTagName(\"input\").length > 0)\r\n\t\t\t\ttembEle = containers[i].getElementsByTagName(\"input\");\r\n\t\t\tif (containers[i].getElementsByTagName(\"textarea\").length > 0)\r\n\t\t\t\ttembEle = containers[i].getElementsByTagName(\"textarea\");\r\n\r\n\t\t\t//console.log(\"tembEle \", tembEle);\r\n\r\n\t\t\tif (tembEle.length) {\r\n\t\t\t\t// if (tembEle.length && (tembEle[0].type === 'text' || tembEle[0].type === 'date')) {\r\n\t\t\t\tcontainers[i].classList.add(\"du-chatbox\");\r\n\t\t\t\tlet valOfPlaceHolder = tembEle[0].getAttribute(\"placeholder\");\r\n\t\t\t\ttembEle[0].setAttribute('placeholder', '');\r\n\t\t\t\tlet span = document.createElement(\"span\");\r\n\t\t\t\tlet newLabel = document.createElement(\"LABEL\");\r\n\t\t\t\tspan.classList.add('bar')\r\n\t\t\t\tnewLabel.classList.add('input-label')\r\n\t\t\t\tnewLabel.innerHTML = tembEle[0].type === 'date' ? \"Date\" : valOfPlaceHolder;\r\n\r\n\t\t\t\tif (valOfPlaceHolder === \"password\") tembEle[0].type = 'password'\r\n\t\t\t\tif (tembEle[0].type === 'date') {\r\n\t\t\t\t\tnewLabel.style.display = 'none'\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttembEle[0].addEventListener('focus', (event) => {\r\n\t\t\t\t\tif (tembEle[0].type === 'date') {\r\n\t\t\t\t\t\tnewLabel.style.display = 'block'\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (tembEle[0].type === 'date') {\r\n\t\t\t\t\t\tnewLabel.classList.add('input-label-focus-date')\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tnewLabel.classList.add('input-label-focus')\r\n\t\t\t\t\t}\r\n\t\t\t\t\tspan.classList.add('bar-focused')\r\n\r\n\t\t\t\t})\r\n\t\t\t\ttembEle[0].addEventListener('blur', (event) => {\r\n\t\t\t\t\tif (tembEle[0].type === 'date') {\r\n\t\t\t\t\t\tnewLabel.style.display = 'none'\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (tembEle[0].value) return;\r\n\t\t\t\t\tif (tembEle[0].type === 'date') {\r\n\t\t\t\t\t\tnewLabel.classList.remove('input-label-focus-date')\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tnewLabel.classList.remove('input-label-focus')\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tspan.classList.remove('bar-focused')\r\n\r\n\t\t\t\t})\r\n\t\t\t\tif (tembEle[0].type === 'text' || tembEle[0].type === 'password') { containers[i].append(span) }\r\n\t\t\t\tcontainers[i].append(newLabel)\r\n\t\t\t} else if (tembEle.length && tembEle[0].type === 'checkbox') {\r\n\t\t\t\t//containers[i].classList.add('check-chat');\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tcreateDuSendButton() {\r\n\t\tlet duSendButton = document.getElementById(\"duwebchatsendbutton\");\r\n\t\tif (!!duSendButton) {\r\n\t\t\tduSendButton.parentNode.removeChild(duSendButton);\r\n\t\t}\r\n\r\n\t\tvar btnSend = document.createElement('button');\r\n\t\tbtnSend.addEventListener('click', this.handleSendButton.bind(this));\r\n\t\tbtnSend.id = 'duwebchatsendbutton';\r\n\t\tbtnSend.className = 'duwebchatsendbutton';\r\n\t\tbtnSend.innerHTML = \"\";\r\n\t\tbtnSend.style.paddingRight = '15px'\r\n\t\tbtnSend.style.paddingLeft = '10px';\r\n\t\tbtnSend.style.borderRadius = '0px !important';\r\n\r\n\t\t// if (this.props.language.slice(0, 2) == 'ar') {\r\n\t\t// \tbtnSend.style.paddingLeft = '40px';\r\n\t\t// } else {\r\n\t\t// \tbtnSend.style.paddingRight = '40px'\r\n\t\t// }\r\n\t\treturn btnSend;\r\n\t}\r\n\r\n\tcreateDuMicButton() {\r\n\t\tlet duMicButton = document.getElementById(\"dumicbtn\");\r\n\t\tif (!!duMicButton) {\r\n\t\t\tduMicButton.parentNode.removeChild(duMicButton);\r\n\t\t}\r\n\r\n\t\tvar btnMic = document.createElement('button');\r\n\t\tbtnMic.addEventListener('click', this.handleMicrophoneButton.bind(this));\r\n\t\tbtnMic.id = 'dumicbtn';\r\n\t\tbtnMic.innerHTML = \"\";\r\n\t\t// btnMic.innerHTML = '';\r\n\t\tbtnMic.className = !this.state.listening ? 'dumicbtn' : 'dumicbtn dumicbtnon';\r\n\t\tbtnMic.style.borderRadius = '0px !important';\r\n\t\treturn btnMic;\r\n\t}\r\n\r\n\thandleMicrophoneButton(e) {\r\n\t\tif (!this.state.listening)\r\n\t\t\tthis.startListening();\r\n\t\telse\r\n\t\t\tthis.stopListening();\r\n\t}\r\n\r\n\thandleSendButton(e) {\r\n\t\tthis.state.store.dispatch({\r\n\t\t\ttype: 'WEB_CHAT/SUBMIT_SEND_BOX',\r\n\t\t\tpayload: {\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tstartListening() {\r\n\t\tthis.state.store.dispatch({\r\n\t\t\ttype: 'WEB_CHAT/STOP_SPEAKING',\r\n\t\t\tpayload: {\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tthis.state.store.dispatch({\r\n\t\t\ttype: 'WEB_CHAT/START_DICTATE',\r\n\t\t\tpayload: {\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tstopListening() {\r\n\t\tthis.state.store.dispatch({\r\n\t\t\ttype: 'WEB_CHAT/STOP_DICTATE',\r\n\t\t\tpayload: {\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tadjustMicrophoneButton() {\r\n\t\tvar mic = document.getElementById('dumicbtn');\r\n\t\tif (!mic)\r\n\t\t\treturn;\r\n\t\tif (this.state.listening) {\r\n\t\t\tif (!mic.classList.contains('dumicbtnon')) {\r\n\t\t\t\tmic.classList.add('dumicbtnon');\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tif (mic.classList.contains('dumicbtnon')) {\r\n\t\t\t\tmic.classList.remove('dumicbtnon');\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tadjustSendButton() {\r\n\t\tlet mains = document.getElementsByClassName(\"main\")[0];\r\n\t\tif (!mains)\r\n\t\t\treturn;\r\n\r\n\t\tif (this.props.language.slice(0, 2) === 'ar') {\r\n\t\t\tmains.style.direction = 'rtl';\r\n\t\t} else {\r\n\t\t\tmains.style.direction = 'ltr';\r\n\t\t}\r\n\r\n\t\tvar duSendButton = this.createDuSendButton(this.props.language.slice(0, 2) === 'ar' ? 'إرسال' : 'Send');\r\n\t\tif (!duSendButton)\r\n\t\t\treturn;\r\n\r\n\t\t// var duMicButton = this.createDuMicButton();\r\n\t\t// if (!duMicButton)\r\n\t\t// \treturn;\r\n\r\n\t\t// mains.appendChild(duMicButton);\r\n\t\tmains.appendChild(duSendButton);\r\n\t}\r\n\r\n\tfetchToken = async (force) => {\r\n\t\tif (!this.state.token || !!force) {\r\n\t\t\tconst response = await fetch(\r\n\t\t\t\tprocess.env.REACT_APP_DIRECTLINE_URL,\r\n\t\t\t\t{\r\n\t\t\t\t\tmethod: 'POST',\r\n\t\t\t\t\theaders: {\r\n\t\t\t\t\t\tAuthorization: process.env.REACT_APP_DIRECTLINE_KEY,// 'bearer p4qFrtLTEAk.tJ2TzlhwrtMlwNBUs17x70BIIfz5HpDV5S4Mcc8fJEc',//\r\n\t\t\t\t\t\t'Content-Type': 'text/plain',\r\n\t\t\t\t\t},\r\n\t\t\t\t}\r\n\t\t\t).catch(function () {\r\n\t\t\t\t// Handle error if needed.\r\n\t\t\t\treturn;\r\n\t\t\t});\r\n\t\t\tconst { token } = await response.json();\r\n\t\t\tlocalStorage.setItem('botToken', token);\r\n\t\t\tthis.setState({ token });\r\n\t\t}\r\n\t};\r\n\r\n\tsetUpSpeechService = async () => {\r\n\t\ttry {\r\n\t\t\t//debugger\r\n\t\t\tconst webSpeechPonyfillFactoryCognitive = await createCognitiveServicesSpeechServicesPonyfillFactory({\r\n\t\t\t\tregion: process.env.REACT_APP_SPEECH_SERVICE_REGION,\r\n\t\t\t\tsubscriptionKey: process.env.REACT_APP_SPEECH_SERVICE_KEY,\r\n\t\t\t});\r\n\t\t\tconst webSpeechPonyfillFactoryBRWSR = await createBrowserWebSpeechPonyfillFactory();\r\n\r\n\t\t\twindow.CognitiveSpeechServiceFactory = webSpeechPonyfillFactoryCognitive;\r\n\t\t\twindow.BrowserSpeechServiceFactory = webSpeechPonyfillFactoryBRWSR;\r\n\r\n\t\t\tconst webSpeechPonyfillFactory = function (ref2) {\r\n\t\t\t\tvar speechCognitive = window.CognitiveSpeechServiceFactory(ref2);\r\n\t\t\t\tvar speechBRWSR = window.BrowserSpeechServiceFactory(ref2);\r\n\t\t\t\tspeechBRWSR.speechSynthesis = speechCognitive.speechSynthesis;\r\n\t\t\t\tspeechBRWSR.SpeechSynthesisUtterance = speechCognitive.SpeechSynthesisUtterance;\r\n\t\t\t\treturn speechBRWSR;\r\n\t\t\t};\r\n\r\n\t\t\tthis.setState(() => ({\r\n\t\t\t\twebSpeechPonyfillFactory: webSpeechPonyfillFactory\r\n\t\t\t}));\r\n\t\t}\r\n\t\tcatch (e) {\r\n\t\t\tconsole.log(\"Speech service is not supported in this browser!: \" + e);\r\n\t\t}\r\n\t};\r\n\r\n\tadjustSendButtonActions(textOfSendButton, colorOfSendButton, fontWeight) {\r\n\t\tlet actionElements = document.getElementsByClassName(\"css-1mq10jz\");\r\n\t\tlet sendButton = actionElements ? actionElements[0] : null;\r\n\t\tlet attachButton = actionElements ? actionElements[1] : null;\r\n\t\tif (sendButton) sendButton.style.transform = 'rotate(210deg)';\r\n\t\tif (attachButton) {\r\n\t\t\tattachButton.innerHTML = textOfSendButton;\r\n\t\t\tattachButton.style.color = colorOfSendButton;\r\n\t\t\tattachButton.style.fontFamily = \"inherit\"\r\n\t\t\tattachButton.style.fontWeight = fontWeight;\r\n\t\t}\r\n\t}\r\n\r\n\tdisableAllButtons() {\r\n\t\tvar buttons = document.querySelectorAll(\".ac-pushButton\");\r\n\t\tfor (var i = 0; i < buttons.length; i++) {\r\n\t\t\tif (!buttons[i].classList.contains('disabled'))\r\n\t\t\t\tbuttons[i].classList.add('disabled');\r\n\t\t}\r\n\t}\r\n\r\n\trender() {\r\n\t\t//let mainLang = this.props.language.slice(0, 2);\r\n\t\tlet mainLang = localStorage.getItem('botLang');\r\n\t\tconst gender = process.env.REACT_APP_SPEECH_GENDER;\r\n\t\t//\t\tconst styleSet = getWebChatStyleSet(this.props.webChatConfiguration, this.props.language);\r\n\t\tconst styleSet = getWebChatStyleSet(this.props.webChatConfiguration, localStorage.getItem('botLang'));\r\n\t\tconst {\r\n\t\t\tprops: { className, language },\r\n\t\t\tstate: { activityMiddleware, store, token, webSpeechPonyfillFactory, disabled },\r\n\t\t} = this;\r\n\t\tlet overlayClass = disabled ? \"disabled-overlay-shown\" : \"disabled-overlay-shown disabled-overlay-hidden\";\r\n\t\tlet loading = this.state.isRestartClick ? : \"\";\r\n\t\treturn token ? (\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t{/* */}\r\n\t\t\t\t{loading}\r\n\t\t\t\t {\r\n\t\t\t\t\t\tvar voice;\r\n\t\t\t\t\t\tif (activity.locale.indexOf('ar') >= 0) {\r\n\t\t\t\t\t\t\tvoice = voices.find((e) => e.lang.indexOf('ar-SA') >= 0 && e.gender === gender);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tvoice = voices.find((e) => e.lang.indexOf('en-us') >= 0 && e.gender === gender);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (!voice)\r\n\t\t\t\t\t\t\tvoice = voices[0];\r\n\t\t\t\t\t\treturn voice;\r\n\t\t\t\t\t}}\r\n\t\t\t\t/>\r\n\t\t\t
\r\n\t\t) : (\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{/* {''} */}\r\n\t\t\t\t\t\t{''}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t

{this.props.literals.waitWhileConnecting}

\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nWebChat.propTypes = {\r\n\tclassName: PropTypes.string.isRequired,\r\n\ttoken: PropTypes.string,\r\n\tlanguage: PropTypes.string.isRequired,\r\n\tchangeLanguage: PropTypes.func.isRequired,\r\n\tshowedIntroCard: PropTypes.bool.isRequired,\r\n\thandleShowedIntroCard: PropTypes.func.isRequired,\r\n};\r\nconst mapStateToProps = ({ literals }) => ({\r\n\tliterals,\r\n});\r\n\r\nexport default connect(mapStateToProps)(WebChat);","export const APPLICATION_JSON = \"application/json\";","import React, { Component } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { loadLiterals } from '../../redux/reducers';\r\nimport loadLang from '../../i18n/i18n';\r\n// import WebChatHeader from '../WebChatHeaderComponent/WebChatHeader';\r\nimport WelcomeScreen from '../WelcomeScreenComponent/WelcomeScreenComponent';\r\nimport WebChat from '../WebChatComponent/WebChat';\r\nimport { ENGLISH, ARABIC } from '../../shared/supportedLanguages';\r\nimport { APPLICATION_JSON } from '../../shared/sharedConsts';\r\nimport './MainWindow.css';\r\n// import CloseChatComponent from \"../CloseChatComponent/CloseChatComponent\";\r\n\r\nclass MainWindow extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tlet size = window.parent != null ? { height: window.parent.outerHeight, width: window.parent.outerWidth } : { height: window.outerHeight, width: window.outerWidth };\r\n\t\tconst initialHeight = 570; // \"60%\";\r\n\t\t// var locale = ENGLISH;\r\n\r\n\t\tlet botLang;\r\n\t\tif (localStorage.getItem('botLang') != null) {\r\n\t\t\tvar locale = localStorage.getItem('botLang');\r\n\t\t\tlocalStorage.setItem('botLang', locale);\r\n\t\t\tbotLang = locale;\r\n\t\t}\r\n\t\telse {\r\n\t\t\tvar locale = ENGLISH;\r\n\t\t\tlocalStorage.setItem('botLang', locale);\r\n\t\t\tbotLang = locale;\r\n\t\t}\r\n\t\tlocalStorage.removeItem('botToken');\r\n\r\n\t\tthis.WebChatRef = React.createRef();\r\n\r\n\t\t// if (!!props.searchParameters['locale'])\r\n\t\t// \tif (props.searchParameters['locale'].indexOf('ar') >= 0)\r\n\t\t// \t\tlocale = ARABIC;\r\n\r\n\t\tthis.state = {\r\n\t\t\ttoken: null,\r\n\t\t\tlanguage: locale,\r\n\t\t\twelcomedUser: true,\r\n\t\t\tchatWindowHeight: initialHeight,\r\n\t\t\theight: initialHeight,\r\n\t\t\tinitialHeight: initialHeight,\r\n\t\t\tnoOfbuttonPressed: 0,\r\n\t\t\tshowedIntroCard: false,\r\n\t\t\tsize: size,\r\n\t\t\twebChatConfiguration: '',\r\n\t\t\tsoundMuted: false,\r\n\t\t\twebSpeechPonyfillFactory: null,\r\n\t\t\tfinishedLoading: false,\r\n\t\t\tisUserLogged: false,\r\n\t\t\tqueueData: null\r\n\t\t};\r\n\r\n\t\tthis.updateQueuePosition();\r\n\t}\r\n\r\n\tcomponentDidMount = async () => {\r\n\t\tif (!this.state.webChatConfiguration) {\r\n\t\t\tconst response = await fetch(\r\n\t\t\t\t\"./webChatConfiguration.json\",\r\n\t\t\t\t{\r\n\t\t\t\t\theaders: {\r\n\t\t\t\t\t\t'Content-Type': APPLICATION_JSON,\r\n\t\t\t\t\t\t'Accept': APPLICATION_JSON\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t).catch(function () {\r\n\t\t\t\t// Handle error if needed\r\n\t\t\t\tthis.setState({ finishedLoading: true });\r\n\t\t\t\treturn;\r\n\t\t\t});\r\n\r\n\t\t\tconst data = await response.json();\r\n\t\t\tthis.setState({ webChatConfiguration: data, finishedLoading: true });\r\n\t\t}\r\n\t}\r\n\r\n\tstartBotWithLanguage = (language) => {\r\n\t\tthis.locale = language;\r\n\t\tthis.language = language;\r\n\t\t//alert('begin startBotWithLanguage : ' + language);\r\n\t\tloadLang(language).then(lang => this.props.dispatch(loadLiterals(lang)));\r\n\t\tthis.setState({ language: language }, () => { this.setState({ welcomedUser: true }) })\r\n\t\tthis.changeLanguage(language);\r\n\t\t//alert('end startBotWithLanguage : ' + language);\r\n\r\n\t}\r\n\r\n\thandleWindowChangedHeight = () => {\r\n\t\twindow.parent.dispatchEvent(new CustomEvent('ChatbotResizeNeeded'), {})\r\n\t};\r\n\thandleCloseButtonClicked = () => {\r\n\t\twindow.parent.dispatchEvent(new CustomEvent('Minimize'), {});\r\n\t};\r\n\r\n\t// Handle Back\r\n\thandleBackButtonClick = () => {\r\n\t\tdebugger;\r\n\t\tthis.setConversationAsAbandon();\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.setState({ token: null, showedIntroCard: false, welcomedUser: false }, () => {\r\n\t\t\t\twindow.parent.dispatchEvent(new CustomEvent('ChatbotBackClicked'), {});\r\n\t\t\t});\r\n\r\n\t\t\tthis.handleDequeued(null);\r\n\t\t\tthis.diconnect();\r\n\t\t\tthis.navigateToWelcome();\r\n\t\t}, 200);\r\n\t};\r\n\r\n\r\n\thandleShowedIntroCard = () => {\r\n\t\tthis.setState({ showedIntroCard: true });\r\n\t}\r\n\thandleQueueDataRecieved = (data) => {\r\n\t\tthis.setState({ queueData: data });\r\n\t}\r\n\thandleDequeued = (data) => {\r\n\t\tthis.setState({ queueData: null });\r\n\t}\r\n\r\n\thandleRestartButtonClick = (event) => {\r\n\t\tsetTimeout(() => {\r\n\t\t\t//var lang = this.state.language;\r\n\t\t\tvar lang = localStorage.getItem('botLang');\r\n\t\t\tif (!!event && !!event.target && !!event.target.value) {\r\n\t\t\t\tlang = event.target.value;\r\n\t\t\t}\r\n\t\t\tthis.setState({ token: null, showedIntroCard: false, welcomedUser: false }, () => {\r\n\t\t\t\twindow.parent.dispatchEvent(new CustomEvent('ChatbotRestartClicked', { detail: {} }))\r\n\t\t\t\tthis.clearTokens();\r\n\t\t\t\tthis.startBotWithLanguage(lang);\r\n\t\t\t});\r\n\t\t\t// this.handleDequeued(null); \r\n\t\t\t//this.diconnect();\r\n\t\t\tthis.showRefresh();\r\n\t\t\tthis.checkQueuePosition();\r\n\t\t}, 100);\r\n\r\n\t}\r\n\r\n\tshowRefresh = () => {\r\n\t\tthis.WebChatRef.showRefresh();\r\n\t}\r\n\r\n\tdiconnect = () => {\r\n\t\tthis.WebChatRef.disconnectChatbotHandler()\r\n\t}\r\n\r\n\tcheckQueuePosition = () => {\r\n\t\tthis.WebChatRef.checkQueuePosition();\r\n\t}\r\n\r\n\tsetConversationAsAbandon = () => {\r\n\t\tdebugger;\r\n\t\tthis.WebChatRef.setConversationAsAbandon();\r\n\t}\r\n\r\n\tisQueueWaitingVisiable = () => {\r\n\t\tif (this.state.queueData && this.state.queueData.QueuePosition > 0) {\r\n\t\t\treturn true;\r\n\t\t}\r\n\t\telse\r\n\t\t\treturn false;\r\n\t}\r\n\r\n\tupdateQueuePosition = () => {\r\n\t\tsetInterval(() => {\r\n\t\t\tif (this.isQueueWaitingVisiable())\r\n\t\t\t\tthis.checkQueuePosition();\r\n\t\t}, 20000);\r\n\t}\r\n\r\n\thandleSelectLanguageChanged = (event) => {\r\n\t\tthis.handleRestartButtonClick(event);\r\n\t}\r\n\tchangeLanguage = (language) => {\r\n\t\tthis.setState({ language: language });\r\n\t}\r\n\tupdateDimensions = () => {\r\n\t\tlet size = window.parent != null ? { height: window.parent.outerHeight, width: window.parent.outerWidth } : { height: window.outerHeight, width: window.outerWidth };\r\n\t\tthis.setState({ size: size });\r\n\t}\r\n\thandleToggleMuteSound = () => {\r\n\t\tthis.setState({ soundMuted: !this.state.soundMuted })\r\n\t}\r\n\r\n\r\n\t// Set User Logged\r\n\tsetUserLogged = (lang) => {\r\n\t\t//alert('begin setUserLogged : ' + lang);\r\n\t\tlet isUserLogged = true;\r\n\t\tthis.setState({ isUserLogged: isUserLogged, language: lang })\r\n\t\twindow.parent.dispatchEvent(new CustomEvent('ChangeChatWidth', { detail: { width: '450px' } }), {});\r\n\t\t//alert('end setUserLogged : ' + lang);\r\n\t}\r\n\r\n\t// Clear Tokens\r\n\t// clearTokens = () => {\r\n\tclearTokens() {\r\n\t\t// if (localStorage.getItem('botToken')) {\r\n\t\t// \tlocalStorage.removeItem('botToken');\r\n\t\t// \tlocalStorage.removeItem('preflightSent');\r\n\t\t// \tlocalStorage.removeItem('botLang');\r\n\t\t// }\r\n\t\tlocalStorage.clear();\r\n\t}\r\n\r\n\t// Navigate To Welcome\r\n\tnavigateToWelcome = () => {\r\n\t\tlet isUserLogged = false;\r\n\t\tthis.setState({ isUserLogged: isUserLogged, language: localStorage.getItem('botLang') })\r\n\t\tthis.clearTokens();\r\n\t\twindow.parent.dispatchEvent(new CustomEvent('ChangeChatWidth', { detail: { width: '350px' } }), {});\r\n\t}\r\n\r\n\taddPlaceholderInTextBox() {\r\n\t\tlet textBox = document.querySelectorAll('[data-id=\"webchat-sendbox-input\"]');\r\n\t\tif (textBox[0]) {\r\n\t\t\tlet mains = document.getElementsByClassName(\"main\")[0];\r\n\t\t\tif (this.state.language.includes(\"ar\")) {\r\n\t\t\t\ttextBox[0].placeholder = \"اكتب رسالتك\";\r\n\t\t\t\tmains.style.direction = 'rtl';\r\n\t\t\t\t// textBox[0].style.direction = 'rtl';\r\n\t\t\t\t// textBox[0].style.setProperty('margin-right','10%');\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\ttextBox[0].placeholder = \"Press here to write your message...\"\r\n\t\t\t\tmains.style.direction = 'ltr';\r\n\t\t\t\t//textBox[0].style.direction = 'ltr';\r\n\t\t\t}\r\n\r\n\t\t}\r\n\t}\r\n\r\n\tcomponentDidUpdate() {\r\n\t\t//if (!this.state.language.includes(\"ar\"))\r\n\t\tthis.addPlaceholderInTextBox()\r\n\r\n\t\t// if (!localStorage.getItem('botLang').includes(\"ar\"))\r\n\t\t// \tthis.addPlaceholderInTextBox()\r\n\r\n\t\tthis.clearCache();\r\n\t}\r\n\r\n\tclearCache = () => {\r\n\t\twindow.parent.dispatchEvent(new CustomEvent(\"ClearCache\", { bubbles: true, detail: {} }));\r\n\t}\r\n\r\n\trender() {\r\n\t\tconst {\r\n\t\t\tstate: { token, welcomedUser, language, showedIntroCard, webChatConfiguration, finishedLoading, size, soundMuted, webSpeechPonyfillFactory, isUserLogged },\r\n\t\t\tstartBotWithLanguage,\r\n\t\t\thandleWindowChangedHeight,\r\n\t\t\thandleCloseButtonClicked,\r\n\t\t\thandleBackButtonClick,\r\n\t\t\thandleShowedIntroCard,\r\n\t\t\thandleQueueDataRecieved,\r\n\t\t\thandleDequeued,\r\n\t\t\thandleRestartButtonClick,\r\n\t\t\tchangeLanguage,\r\n\t\t\thandleSelectLanguageChanged,\r\n\t\t\thandleToggleMuteSound,\r\n\t\t\tsetUserLogged,\r\n\t\t\tdisconnectChatbotHandler,\r\n\t\t\tdiconnect\r\n\t\t} = this;\r\n\t\tlet mainClassName = \"chat-box\";\r\n\r\n\t\t// var mainWindow = (webChatConfiguration.showWelcomeScreen ? (\r\n\t\tvar mainWindow = (!isUserLogged ? (\r\n\t\t\t startBotWithLanguage(lang)} onOpenChat={this.setUserLogged} />\r\n\t\t) : (\r\n\t\t\t
= 0 ? \"rtl\" : \"ltr\"}>\r\n\t\t\t\t{/* */}\r\n\t\t\t\t this.WebChatRef = el}\r\n\t\t\t\t/>\r\n\t\t\t
\r\n\t\t)\r\n\t\t);\r\n\t\treturn (!finishedLoading ?
: mainWindow);\r\n\t}\r\n}\r\n\r\nconst mapStateToProps = ({ literals }) => ({\r\n\tliterals,\r\n});\r\n\r\nvar getSearchParameters = (lang) => {\r\n\tvar match,\r\n\t\tpl = /\\+/g, // Regex for replacing addition symbol with a space\r\n\t\tsearch = /([^&=]+)=?([^&]*)/g,\r\n\t\tdecode = function (s) { return decodeURIComponent(s.replace(pl, \" \")); },\r\n\t\tquery = window.location.search.substring(1);\r\n\r\n\tvar urlParams = {};\r\n\twhile (match = search.exec(query))\r\n\t\turlParams[decode(match[1])] = decode(match[2]);\r\n\r\n\t// if (!urlParams.locale)\r\n\t// \treturn ENGLISH;\r\n\r\n\t// if (urlParams.locale.indexOf('ar') >= 0) {\r\n\t// \treturn ARABIC\r\n\t// }\r\n\r\n\t// if (urlParams.locale.indexOf('en') >= 0) {\r\n\t// \treturn ENGLISH\r\n\t// }\r\n\turlParams.locale = lang ? lang : ENGLISH;\r\n\tdocument.getElementsByTagName(\"html\")[0].lang = urlParams.locale.indexOf('ar') >= 0 ? \"ar\" : \"en\";\r\n\tvar chatBox = document.getElementsByClassName('chat-box')[0];\r\n\tif (chatBox)\r\n\t\tchatBox.dir = urlParams.locale.indexOf('ar') >= 0 ? \"rtl\" : \"ltr\"\r\n\treturn urlParams.locale;\r\n};\r\n\r\nexport default connect(mapStateToProps)(MainWindow);","import React from 'react';\r\nimport MainWindow from '../MainWindowComponent/MainWindow';\r\nimport './App.css';\r\n\r\nconst App = () => {\r\n\tvar getSearchParameters = () => {\r\n\t\tvar match,\r\n\t\t\tpl = /\\+/g, // Regex for replacing addition symbol with a space\r\n\t\t\tsearch = /([^&=]+)=?([^&]*)/g,\r\n\t\t\tdecode = function (s) { return decodeURIComponent(s.replace(pl, \" \")); },\r\n\t\t\tquery = window.location.search.substring(1);\r\n\r\n\t\tvar urlParams = {};\r\n\t\twhile (match = search.exec(query))\r\n\t\t\turlParams[decode(match[1])] = decode(match[2]);\r\n\t\treturn urlParams;\r\n\t};\r\n\tvar searchParameters = getSearchParameters();\r\n\tsearchParameters.minHeight = 570; \r\n\r\n\t // Function to clear complete cache data\r\n\t const clearCacheData = () => {\r\n\t\tcaches.keys().then((names) => {\r\n\t\t names.forEach((name) => {\r\n\t\t\tcaches.delete(name);\r\n\t\t });\r\n\t\t});\r\n\t };\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\r\n\t\t//
\r\n\t\t// \t\t\r\n\t\t//
\r\n\t);\r\n}\r\n\r\nexport default App;\r\n","// This optional code is used to register a service worker.\r\n// register() is not called by default.\r\n\r\n// This lets the app load faster on subsequent visits in production, and gives\r\n// it offline capabilities. However, it also means that developers (and users)\r\n// will only see deployed updates on subsequent visits to a page, after all the\r\n// existing tabs open on the page have been closed, since previously cached\r\n// resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model and instructions on how to\r\n// opt-in, read https://bit.ly/CRA-PWA\r\n\r\nconst isLocalhost = Boolean(\r\n window.location.hostname === 'localhost' ||\r\n // [::1] is the IPv6 localhost address.\r\n window.location.hostname === '[::1]' ||\r\n // 127.0.0.1/8 is considered localhost for IPv4.\r\n window.location.hostname.match(\r\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\r\n )\r\n);\r\n\r\nexport function register(config) {\r\n debugger; \r\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\r\n // The URL constructor is available in all browsers that support SW.\r\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\r\n if (publicUrl.origin !== window.location.origin) {\r\n // Our service worker won't work if PUBLIC_URL is on a different origin\r\n // from what our page is served on. This might happen if a CDN is used to\r\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\r\n return;\r\n }\r\n\r\n window.addEventListener('load', () => {\r\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\r\n\r\n if (isLocalhost) {\r\n // This is running on localhost. Let's check if a service worker still exists or not.\r\n checkValidServiceWorker(swUrl, config);\r\n\r\n // Add some additional logging to localhost, pointing developers to the\r\n // service worker/PWA documentation.\r\n navigator.serviceWorker.ready.then(() => {\r\n // 'This web app is being served cache-first by a service ' +\r\n // 'worker. To learn more, visit https://bit.ly/CRA-PWA'\r\n // );\r\n });\r\n } else {\r\n // Is not localhost. Just register service worker\r\n registerValidSW(swUrl, config);\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction registerValidSW(swUrl, config) {\r\n navigator.serviceWorker\r\n .register(swUrl)\r\n .then(registration => {\r\n registration.onupdatefound = () => {\r\n const installingWorker = registration.installing;\r\n if (installingWorker == null) {\r\n return;\r\n }\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === 'installed') {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the updated precached content has been fetched,\r\n // but the previous service worker will still serve the older\r\n // content until all client tabs are closed.\r\n // 'New content is available and will be used when all ' +\r\n // 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\r\n // );\r\n\r\n // Execute callback\r\n if (config && config.onUpdate) {\r\n config.onUpdate(registration);\r\n }\r\n } else {\r\n // At this point, everything has been precached.\r\n // It's the perfect time to display a\r\n // \"Content is cached for offline use.\" message.\r\n\r\n // Execute callback\r\n if (config && config.onSuccess) {\r\n config.onSuccess(registration);\r\n }\r\n }\r\n }\r\n };\r\n };\r\n })\r\n .catch(error => {\r\n console.error('Error during service worker registration:', error);\r\n });\r\n}\r\n\r\nfunction checkValidServiceWorker(swUrl, config) {\r\n // Check if the service worker can be found. If it can't reload the page.\r\n fetch(swUrl)\r\n .then(response => {\r\n // Ensure service worker exists, and that we really are getting a JS file.\r\n const contentType = response.headers.get('content-type');\r\n if (\r\n response.status === 404 ||\r\n (contentType != null && contentType.indexOf('javascript') === -1)\r\n ) {\r\n // No service worker found. Probably a different app. Reload the page.\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister().then(() => {\r\n window.location.reload();\r\n });\r\n });\r\n } else {\r\n // Service worker found. Proceed as normal.\r\n registerValidSW(swUrl, config);\r\n }\r\n })\r\n .catch(() => {\r\n \r\n });\r\n}\r\n\r\nexport function unregister() {\r\n if ('serviceWorker' in navigator) {\r\n navigator.serviceWorker.ready.then(registration => {\r\n registration.unregister();\r\n });\r\n }\r\n}\r\n","import 'react-app-polyfill/ie11';\r\nimport 'custom-event-polyfill';\r\nimport \"react-app-polyfill/stable\";\r\nimport React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport { Provider } from 'react-redux';\r\nimport store from './redux/store';\r\nimport './icons.css';\r\nimport './index.css';\r\nimport App from './components/AppComponent/App';\r\nimport * as serviceWorker from './serviceWorker';\r\nimport { loadLiterals } from './redux/reducers';\r\nimport loadLang from './i18n/i18n';\r\n\r\nloadLang().then(lang => store.dispatch(loadLiterals(lang)));\r\n\r\nReactDOM.render(\r\n \r\n \r\n ,\r\n document.getElementById('root')\r\n);\r\n\r\n// If you want your app to work offline and load faster, you can change\r\n// unregister() to register() below. Note this comes with some pitfalls.\r\n// Learn more about service workers: https://bit.ly/CRA-PWA\r\nserviceWorker.unregister();","module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"static/media/logoImg.b0e770ef.png\";","module.exports = __webpack_public_path__ + \"static/media/loader.cf7a11ed.svg\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAcCAYAAABlL09dAAAAAXNSR0IArs4c6QAABMlJREFUSA2VVl1o21UUP/fe/0eSf9IscU0/tvRLtw5ccUqFoQNbQfwAUR+czIp1TwMFZUVwD8Lqix8PMvbgw3RzT0q7J5GJDOdE2RiMgrRSy0pn27Sltk2TNE3S/r/u9dx/mjbJBo0Xbs65557zO+fee875h0ANo3lwJNAQ4p+pjpu6c0/9FL7utnczU3ZTkPttD4nTbzzW9v4+Q4FfwonEBYDLu9nR3RTkfohDUzzoA24KWEqa9bXY1BTx4krhy+E/7rXDhh2eSxe+rQX4f+hcYS8M/H729cFxrRajmq6iCHTcDXJi5WDdVwswuU/po5stMcb3GJYFGr69YQGoSOtsHqrzqSch6Xyl2Y6rotywUcfCA6SczPnxlxPlWDvAZ65Gelqbzz3REHo1TIXBHAGKK0DFqbgAiiOopJoAV3E4kbzcUzmAyPN8ajzzw+St+dOfJ/rS0sHW4wnS0/rnuXeebO/frzpA0IAKnGjEBCAVwJCnRZ4WZbiHcilTgIadR2L9hoXeEnAScYUXcfjM9Y5TR1v+6o4FA+k1ExQEUdBIRiwBJZUyCSQjLVGp4+3j6eqiPkiNpQqjFye63l3q+8eLuCkYaGS2CMysFuBAfQAUjEIaSIBKWpR5J5F7JT10nJ3MgmJDoD5iNMISFIH9XIh8zobnOqPQ27W3/A1q5heuL8Lc8CxgGaE7vDb5oxcsQ8MIAT1Xj5u/LkB+fac1bCI/dnWuWg2ILUDjBPwWNeQm7Rm8daQxHLykIah8pPKB7wezdzPgutJrcZgIvDKRKS23qbSVWRKJ+C/dOfDTEeoHGGqt87coNveyYFtzi9ERnMJOVkpOL1uX9L1MwQAC8WCLUMUw9bmsU7FsocrXliGWDYIoTc0G0LL61A0V9jQHyrSKLMGICZrbwgGFsoOKXkr0rbyttnj6tTawN12wC463xTQKh/s6qtUq1gRPpCimdUN3jWdV9CTTqHqMX1uA0aFpCIdU7w7FsgmH3uqA1lfi1areWucabPDsDSrW3P7k3NptjVMvL6u1o/sCwDDiWDwI9TjZhguhFu/hK1Xx2hihkJ1O3xYW66ffXeyd5ysbA1j/XhlXauMdH47AU+8dAjtt4rSg68NHIfp4tFoND08wgzmY6Y2Bo1MvzXuVpwvBZKrIKnvQiB9rADlrGZwBk3oeMF3jOUNlsDiWgfxM3ivpUp9gmEJeP0DHpX4ho9tJQOw4GJCTtIBhxrhZN78NnEvO/p2aMr4J7K87sZLIMRWbitcubUEwa3wqphG2TU8muxlBIAFiE7liF5MR+lQ3fzczFMqkxyVwuWP4uPPH9pAuNN00sYHjR9QEqG8KnI+3Nz7POGaNdOAyWJ7891phOvOBBCgOHZi5aT0Db0+XJBXAJWE5/Q2+3+s/WHdcoRCQT0AdKKxPZa/0wpvJcr1q/oHAF0ZG1Bh72LBJzgjpQVVp83HNBObbNCGo6S4dzVCac2zNcfKry6v57lP3/4GpAL48kW4jivhEcdxuzRENKn7nfA5oSIXmgKNhSupYsTgJyiyfC+soX8I0GGHcPRs50T5Tinzr01RcrivJxSBEv8CMlGUVQ68RIXgQhHiREHIMJ76auInV/zPmRQ4nft/4MiFiLrniLJZAJf0PYmcjwtSZBmEAAAAASUVORK5CYII=\"","module.exports = __webpack_public_path__ + \"static/media/astro.1e9e573b.svg\";","module.exports = __webpack_public_path__ + \"static/media/dots.ab7f6050.gif\";","module.exports = __webpack_public_path__ + \"static/media/feather-loader.c8fea5c0.svg\";","var map = {\n\t\"./ar-EG.json\": [\n\t\t1707,\n\t\t3\n\t],\n\t\"./ar-JO.json\": [\n\t\t1708,\n\t\t4\n\t],\n\t\"./ar-SA.json\": [\n\t\t1709,\n\t\t5\n\t],\n\t\"./en-US.json\": [\n\t\t1710,\n\t\t6\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(function() {\n\t\treturn __webpack_require__.t(id, 3);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = 859;\nmodule.exports = webpackAsyncContext;"],"sourceRoot":""}