@koredev/agentai-web-sdk 1.2.4 → 1.2.6-rc
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/components/aaWindow/aaWindow.d.ts +2 -0
- package/dist/components/aaWindow/config/brandingJSON.d.ts +8 -2
- package/dist/components/common/constants/events.cnst.d.ts +8 -3
- package/dist/components/common/constants/projConsts.d.ts +11 -0
- package/dist/components/common/services/rootService.d.ts +4 -2
- package/dist/esm/agentai-web-sdk.min.js +1 -1
- package/dist/umd/agentai-web-sdk-umd.min.js +1 -1
- package/dist/umd/agentai-web-sdk-umd.min.js.map +1 -1
- package/dist/umd/hot/hot-update.js +1019 -2369
- package/dist/umd/hot/hot-update.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hot/hot-update.js","mappings":"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","sources":["webpack://KoreAASDK/./src/components/aaWindow/aaWindow.ts","webpack://KoreAASDK/./src/components/common/constants/projConsts.ts","webpack://KoreAASDK/./src/components/common/services/rootService.ts","webpack://KoreAASDK/./src/components/common/services/web-socket-service.ts","webpack://KoreAASDK/./src/components/common/templatemanager/base/aaContainer/aaContainer.tsx","webpack://KoreAASDK/./src/components/common/templatemanager/tabs/assist-suggestions/assist-suggestions.tsx","webpack://KoreAASDK/./src/components/common/templatemanager/tabs/search/search.tsx","webpack://KoreAASDK/./src/components/common/templatemanager/tabs/suggestion-placeholder/suggestion-placeholder.tsx","webpack://KoreAASDK/./src/components/common/templatemanager/tabs/suggestions/article/article.tsx","webpack://KoreAASDK/./src/components/common/templatemanager/tabs/suggestions/faq/faq.tsx","webpack://KoreAASDK/./src/components/common/templatemanager/tabs/suggestions/file/file.tsx","webpack://KoreAASDK/./src/components/common/templatemanager/tabs/suggestions/snippet/snippet.tsx","webpack://KoreAASDK/webpack/runtime/getFullHash"],"sourcesContent":["import './_aaWindow.scss';\nimport { EventEmitter } from '../common/utils/EventEmiter';\nimport { getHTML } from '../common/templatemanager/base/domManager'\nimport { AAContainer, AALoder } from '../common/templatemanager/base/aaContainer/aaContainer';\nimport websocketservice from '../common/services/web-socket-service'\nimport { EVENTS, INTERNAL_EVENTS } from '../common/constants/events.cnst';\nimport rootService from '../common/services/rootService';\nimport EventManager from '../common/templatemanager/base/eventManager'\nimport { IdMapConstant, ProjConstants } from '../common/constants/projConsts';\nimport fetchInstance from '../common/utils/interceptor';\n\n\nclass AAWindow extends EventEmitter{\n private socketConnection: any;\n private rootService: any;\n\n chatEle : any;\n config: any;\n eventManager: any;\n constructor() {\n super();\n }\n\n show(config: any) {\n this.config = config;\n this.initShow(config);\n this.eventManager = new EventManager(this);\n };\n\n\n handleAgentUserMessage(data: any) {\n if (data?.name === 'agentAssist.AgentMessage' || data.type === 'AGENT' || data?.author?.type === 'AGENT') {\n this.emitUserAgentMessage(data, 'agent_inp_msg');\n } else if (data?.name === 'agentAssist.CustomerMessage' || data.type === 'USER' || data?.author?.type === 'USER') {\n this.emitUserAgentMessage(data, 'user_inp_msg');\n }\n\n if (data.value) {\n \n let userInputData = data;\n let agent_assist_request : any = {\n 'author': {\n \"firstName\": userInputData.author?.firstName,\n \"lastName\": userInputData.author?.lastName,\n \"type\": userInputData.author?.type\n },\n 'botId': this.rootService.connectionDetails.botId,\n 'conversationId': userInputData.conversationId,\n 'experience': this.rootService.connectionDetails?.channel,\n 'query': userInputData.value,\n 'positionId' : this.rootService.isAutomationOnGoing ? this.rootService.currentPositionId : null\n };\n \n if(userInputData?.customData) {\n agent_assist_request['customData'] = JSON.parse(JSON.stringify(userInputData?.customData));\n }\n if(userInputData?.secureCustomData) {\n agent_assist_request['secureCustomData'] = userInputData?.secureCustomData;\n } else {\n if (userInputData?.author?.type === 'USER') {\n if (this.rootService.proactiveMode) {\n this.socketConnection.emitEvents(EVENTS.agent_assist_request, agent_assist_request);\n }\n }\n }\n }\n}\n\n\nemitUserAgentMessage(payload: any, eType = '') {\n // emit userAgentMsg\n if (eType === 'user_inp_msg') {\n this.emit(INTERNAL_EVENTS.USER_TRANSCRIPT_MSG, payload);\n this.socketConnection.emitEvents(EVENTS.user_sent_message, payload);\n } else if (eType === 'agent_inp_msg') {\n this.emit(INTERNAL_EVENTS.AGENT_TRANSCRIPT_MSG, payload);\n this.socketConnection.emitEvents(EVENTS.agent_sent_message, payload);\n }\n}\n\n initShow(config: any) {\n this.renderLoader();\n this.socketConnection = new websocketservice(this);\n this.rootService = new rootService();\n this.rootService.connectionDetails = config.connectionDetails;\n this.JWTSetup(config)\n .then((data: any) => {\n \n this.rootService.grantResponseObj = data;\n config['JWT_RESP'] = data;\n this.socketConnection.configOptions = config;\n \n const { botId } = config.connectionDetails;\n this.getAASettings(botId)\n .then((settings)=>{\n this.rootService.aaSettings = settings?.agentAssistSettings || {};\n this.socketConnection.socketConnection(config);\n let chatWindowHtml: any;\n chatWindowHtml = getHTML(AAContainer, {}, this);\n this.chatEle = chatWindowHtml;\n this.render(chatWindowHtml);\n this.bindEvents();\n })\n\n })\n .catch((err: any) => {\n });\n };\n\n getAASettings(botId: string){\n const { channel } = this.rootService.connectionDetails;\n return fetchInstance('get_aa_settings', {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n },\n }, this, { botId, channel});\n }\n\n \n JWTSetup(options: any) {\n\n const { token, botId } = options.connectionDetails || {};\n\n var payload = {\n \"assertion\": token,\n \"botInfo\": {\n taskBotId: botId,\n chatBot: 'Sample Bot'\n },\n \"token\": {}\n }\n\n return fetchInstance('jwt_grant', {\n method: 'POST',\n body: JSON.stringify(payload),\n }, this);\n }\n\n render(chatWindowHtml: any) {\n this.clearContainer();\n const container = document.getElementsByClassName(this.config.container)[0];\n container.append(chatWindowHtml);\n };\n\n clearContainer(){\n let elements : any = document.getElementsByClassName(this.config.container);\n // Loop through each element and clear its children\n for (let i = 0; i < elements.length; i++) {\n while (elements[i].firstChild) {\n elements[i].removeChild(elements[i].firstChild);\n }\n }\n }\n\n renderLoader(){\n let loaderHtml = getHTML(AALoder,{}, this);\n const container = document.getElementsByClassName(this.config.container)[0];\n container.append(loaderHtml);\n }\n\n bindEvents() {\n this.on('ON_SOCKET_CONNECTION', (config: any) => {\n this.commonEmitEvents(config);\n });\n }\n\n commonEmitEvents(config: any) {\n\n const { botId, conversationId, autoBotId, interactiveLanguage, userName, customData, token, channel } = config?.connectionDetails;\n let sendCustomData = '';\n let sendInteractiveLanguage = '';\n let sendAutoBotId = '';\n\n if (customData && Object.keys(customData)?.length > 0 && config?.connectionDetails?.source !== 'smartassist-color-scheme') {\n sendCustomData = customData\n };\n\n if (interactiveLanguage !== null && typeof interactiveLanguage !== 'undefined' && interactiveLanguage !== \"''\") {\n sendInteractiveLanguage = interactiveLanguage; // Return the default value for null, undefined, or \"''\"\n };\n\n if (autoBotId && autoBotId !== 'undefined') {\n sendAutoBotId = autoBotId;\n };\n\n let welComeMsgReqParam: any = {\n \"waitTime\": 2000,\n \"userName\": userName,\n \"id\": conversationId,\n \"isSendWelcomeMessage\": true,\n \"agentassistInfo\": {},\n \"botId\": botId,\n \"sendMenuRequest\": true,\n \"uId\": \"\",\n \"sId\": \"\",\n \"experience\": channel,\n \"jToken\": token,\n \"conversationId\": conversationId,\n \"autoBotId\": sendAutoBotId,\n \"language\": sendInteractiveLanguage,\n \"allQueryParams\": config?.connectionDetials,\n \"customData\": sendCustomData,\n };\n\n this.welComeMsgReq(welComeMsgReqParam);\n this.handleOverrideMode(false, null);\n\n let menuReqParam = {\n \"botId\": botId,\n \"conversationId\": conversationId,\n \"experience\": channel,\n \"autoBotId\": sendAutoBotId,\n \"language\": sendInteractiveLanguage\n };\n\n this.menuReq(menuReqParam)\n }\n\n prepareAgentAssistRequestParams(data : any) {\n let connectionDetails = this.socketConnection?.configOptions?.connectionDetails;\n let agent_assist_request : any = {\n 'conversationId': data.conversationId,\n 'query': data.value,\n 'botId': data.botId,\n 'agentId': '',\n 'experience': connectionDetails?.channel,\n 'positionId': data.positionId,\n 'intType': 'assist'\n }\n if (data.intentName) {\n agent_assist_request['intentName'] = data.value;\n }\n if (data.entities) {\n agent_assist_request['entities'] = data.entities;\n } else {\n agent_assist_request['entities'] = [];\n }\n if (data.childBotId) {\n agent_assist_request['childBotId'] = data.childBotId;\n }\n if (data.childBotName) { \n agent_assist_request['childBotName'] = data.childBotName;\n }\n if (connectionDetails?.autoBotId && connectionDetails?.autoBotId !== 'undefined') {\n agent_assist_request['autoBotId'] = connectionDetails.autoBotId;\n } else {\n agent_assist_request['autoBotId'] = '';\n }\n if (data.intentName && data.userInput) {\n agent_assist_request['query'] = data.userInput\n }\n if (this.rootService.isAutomationOnGoing) {\n agent_assist_request['positionId'] = this.rootService.currentPositionId;\n }\n if(Array.isArray(data.traits) && data?.traits?.length){\n agent_assist_request['traits'] = data.traits\n }\n\n if(data.taskRefId){\n agent_assist_request['taskRefId'] = data.taskRefId\n }\n\n if(data.dialogId){\n agent_assist_request['dialogId'] = data.dialogId\n }\n\n if(data.isDiscard){\n agent_assist_request['terminateTask'] = data.isDiscard\n }\n\n if(data?.attachments) {\n agent_assist_request['query'] = data?.attachments[0]?.url?.fileUrl || '';\n agent_assist_request['attachments'] = data?.attachments;\n }\n\n if(data?.author) {\n agent_assist_request['firstName'] = data?.author?.firstName || '';\n agent_assist_request['lastName'] = data?.author?.lastName || '';\n agent_assist_request['type'] = data?.author?.type || '';\n }\n\n agent_assist_request = this.addSourceMsgIdToRequestParams(data,agent_assist_request)\n\n return agent_assist_request;\n }\n\n\n prepareAgentAssistAgentRequestParams(data : any) {\n let connectionDetails = this.socketConnection?.configOptions?.connectionDetails;\n let agent_assist_agent_request_params: any = {\n 'isSearch': data.isSearch,\n 'conversationId': data.conversationId,\n 'query': data.value,\n 'botId': data.botId,\n 'experience': connectionDetails?.channel,\n 'positionId': data?.positionId,\n 'childBotId': data?.childBotId || '',\n 'childBotName': data?.childBotName || '',\n 'intType': 'myBot'\n }\n if (data.intentName) {\n agent_assist_agent_request_params.intentName = data.intentName;\n }\n // if(data.childBotId) {\n // agent_assist_agent_request_params['childBotId'] = data.childBotId;\n // agent_assist_agent_request_params['childBotName'] = data.childBotName;\n // }\n if (connectionDetails?.autoBotId && connectionDetails?.autoBotId !== 'undefined') {\n agent_assist_agent_request_params['autoBotId'] = connectionDetails.autoBotId;\n } else {\n agent_assist_agent_request_params['autoBotId'] = '';\n }\n if (data.intentName && data.userInput) {\n agent_assist_agent_request_params['query'] = data.userInput\n }\n\n // if (this.isMyBotAutomationOnGoing) {\n // agent_assist_agent_request_params['positionId'] = this.currentPositionIdOfMyBot;\n // }\n\n if(Array.isArray(data.traits) && data?.traits?.length){\n agent_assist_agent_request_params['traits'] = data.traits\n }\n\n if(data.taskRefId){\n agent_assist_agent_request_params['taskRefId'] = data.taskRefId\n }\n\n if(data.dialogId){\n agent_assist_agent_request_params['dialogId'] = data.dialogId\n }\n\n if(data.isDiscard){\n agent_assist_agent_request_params['terminateTask'] = data.isDiscard\n }\n\n if(data?.attachments) {\n agent_assist_agent_request_params['query'] = data?.attachments[0]?.url?.fileUrl || '';\n agent_assist_agent_request_params['attachments'] = data?.attachments;\n }\n\n agent_assist_agent_request_params = this.addSourceMsgIdToRequestParams(data,agent_assist_agent_request_params)\n \n return agent_assist_agent_request_params;\n }\n\n addSourceMsgIdToRequestParams(data : any,requestParams : any){\n if(data.sourceMsgId){\n if(data.sourceMsgId == 'fromLibrary'){\n requestParams['fromLibrary'] = true\n }else{\n requestParams['sourceMsgId'] = data.sourceMsgId\n }\n }\n return requestParams;\n }\n\n handleOverrideMode = (toggleOverride : any, dialogId : any) => { \n let connectionDetails = this.rootService.connectionDetails;\n let overRideObj: any = {\n \"agentId\": \"\",\n \"botId\": connectionDetails.botId,\n \"conversationId\": connectionDetails.conversationId,\n \"query\": \"\",\n \"enable_override_userinput\": toggleOverride,\n 'experience': this.rootService.connectionDetails?.channel,\n \"positionId\": dialogId\n }\n this.rootService.proactiveMode = !toggleOverride;\n this.socketConnection.emitEvents(EVENTS.enable_override_userinput, overRideObj);\n this.rootService.OverRideMode = toggleOverride;\n \n }\n\n welComeMsgReq(welComeMsgReqParam: any) {\n this.socketConnection.emitEvents(EVENTS.welcome_message_request, welComeMsgReqParam);\n }\n\n menuReq(menuReqParam: any) {\n this.socketConnection.emitEvents(EVENTS.agent_menu_request, menuReqParam);\n }\n\n\n //events to handle from client\n // selectAAFooterTab(data : any){\n // this.emit('selectTab', data , {});\n // }\n \n openAssistTab(footerTag : any, isActive: false){\n this.emit('updateActiveTab', {activeTab : 'ast', isActive, footerTag});\n }\n\n openTranscriptTab(footerTag : any, isActive: false){\n this.emit('updateActiveTab', {activeTab : 'trnspt', isActive, footerTag});\n }\n\n openSearchTab(footerTag : any, isActive: false){\n this.emit('updateActiveTab', {activeTab : 'srch', isActive, footerTag});\n }\n\n openMybotTab(footerTag : any, isActive: false){\n this.emit('updateActiveTab', {activeTab : 'mB', isActive, footerTag});\n }\n\n openPlaybookTab(footerTag : any, isActive: false){\n this.emit('updateActiveTab', {activeTab : 'playbook', isActive, footerTag});\n }\n\n}\n\nexport default AAWindow;\n","export const Tabs = {\n SEARCH: 'SEARCH',\n MYBOT: 'MYBOT',\n ASSIST: 'ASSIST',\n TRANSCRIPT: 'TRANSCRIPT',\n HISTORY: 'HISTORY',\n SETTINGS: 'SETTINGS',\n SMARTASSIST_SOURCE: 'SMARTASSIST_SOURCE',\n};\n\nexport const RenderResponseType = {\n SUGGESTIONS : 'SUGGESTIONS',\n SMALLTALK : 'SMALLTALK',\n AUTOMATION : 'AUTOMATION',\n USERMSG : 'USERMSG',\n ASSISTRESPONSE : 'ASSISTRESPONSE',\n FEEDBACK : 'FEEDBACK',\n WELCOME_MSG : 'WELCOME_MSG'\n}\n\nexport const ProjConstants = {\n ASSIST : 'Assist',\n MYBOT : 'My Bot',\n TRANSCRIPT : \"Transcript\",\n LIBRARY : 'Library',\n SETTINGS : 'Settings',\n SEARCH : 'Search',\n PLAYBOOK: 'Playbook',\n VOICE : 'voice',\n CHAT : 'chat',\n BOTID : 'botId',\n CONVESATIONID : 'conversationId',\n RUN : 'RUN',\n AGENTASSIST_RUN : 'Run with Agent Inputs',\n SEND : 'Send',\n COPY : 'Copy',\n COPIED : 'COPIED',\n SHOW_MORE : 'Show more',\n SHOW_LESS : 'Show less',\n READ_MORE : 'Read more',\n READ_LESS : 'Read less',\n EXPAND : 'Expand',\n READ_MORE_EXPAND : 'Read more | Expand',\n CLOSE : 'Close',\n DIALOG : 'Dialog task',\n FAQ : 'FAQ',\n ARTICLE : 'Article',\n SNIPPET : 'Snippet',\n VIEW_ALL_FAQ : 'View All FAQs',\n VIEW_FEW_FAQ : 'View Few FAQs',\n VIEW_ALL_ARTICLES : 'View All Articles',\n VIEW_FEW_ARTICLES : 'View Few Articles',\n VIEW_ALL_SNIPPETS : 'View All Snippets',\n VIEW_FEW_SNIPPETS : 'View Few Snippets',\n SENDMSG : 'agentAssist.SendMessage',\n COPYMSG : 'agentAssist.CopyMessage',\n SEND_METHOD : 'send',\n COPY_METHOD : 'copy',\n AWAITING : 'Awaiting Response | Type to override',\n OVERRIDE : 'Type to override',\n ACCEPT_RESPONSE : 'Response Accepted',\n AGENT_ENTERED : 'Agent Entered',\n WIDGET_LOADER : 'widget',\n INDIVIDUAL_LOADER : 'individual',\n LOGO_PATH : 'assets/images/logo/koreLogo.svg',\n DOCUMENTATION_LINK : 'https://docs.kore.ai/agentassist/',\n FAQ_LINK : 'https://docs.kore.ai/agentassist/frequently-asked-questions/faq/',\n KOREACADEMY_LINK : 'https://academy.kore.ai/',\n WRONG_SUGGESTION : \"Wrong suggestions\",\n INCORRECT_INTENT : \"Incorrect intent\",\n ACCIDENTAL_CLICK : \"Accidental click\",\n TIME_TAKING : \"Time taking\",\n OTHER : \"Other\",\n SETTINGS_DOCUMENTATION : \"documentation\",\n SETTINGS_FAQ : \"faq\",\n SETTINGS_KOREACADEMY : \"koreAcademy\",\n SUGGESTION_LINEHEIGHT : 18,\n SUGGESTION_ADDHEIGHT : 10,\n SUGGESTION_MAXHEIGHT : 12,\n}\n\nexport const coachingConst: any = {\n NUDGE_DATA: {\n positive: {\n color: '#22C55E',\n icon: 'krIocnsFont-thumbs-up'\n },\n neutral: {\n color: '#E5E5E5',\n className : 'info-nudge'\n },\n alert: {\n color: '#F59E0B',\n icon: 'krIocnsFont-alert-triangle',\n className : 'warning-nudge'\n },\n critical: {\n color: '#EF4444',\n icon: 'krIocnsFont-hand',\n className : 'danger-nudge'\n }\n },\n\n HINT_DATA: {\n positive: {\n color: '#22C55E',\n icon: 'krIocnsFont-thumbs-up'\n },\n neutral: {\n color: '#E5E5E5',\n icon : 'krIocnsFont-exclamation',\n className : 'info-hint'\n },\n alert: {\n color: '#F59E0B',\n icon : 'krIocnsFont-alert-triangle',\n className: 'warning-hint',\n },\n critical: {\n color: '#EF4444',\n icon : 'krIocnsFont-hand',\n className: 'danger-hint'\n }\n }\n}\n\n export const serviceTabMap : any = {\n \"ast\": Tabs.ASSIST,\n \"srch\": Tabs.SEARCH,\n \"trnspt\": Tabs.TRANSCRIPT,\n \"mB\": Tabs.MYBOT\n}\n\nexport const ClassMapConstanst = {\n \"HEADER\" : '.aa-header',\n \"FOOTER\" : '.aa-footer',\n \"FOOTER_BTN\" : '.aa-footer-btn-',\n \"FOOTER_BTN_SEARCH\" : '.aa-footer-btn-srch',\n \"FOOTER_BTN_MYBOT\" : '.aa-footer-btn-mB',\n \"FOOTER_BTN_ASSIST\" : '.aa-footer-btn-ast',\n \"FOOTER_BTN_TRANSCRIPT\" : '.aa-footer-btn-trnspt',\n \"ASSIST_SECTION\" : '.aa-assist-section',\n \"SUGGESTION_EACH\" :'.aa-each-suggestion',\n \"SUGGESTION_EACH_HEADER\" : '.aa-suggestion-header',\n \"SUGGESTION_EACH_TITLE\" : '.aa-suggestion-title',\n \"SUGGESTION_EACH_BODY\" : '.aa-each-suggestion-faq-body',\n \"SUGGESTION_LESS_LINK\" : '.aa-less-link',\n \"SUGGESTION_MORE_LINK\" : '.aa-more-link',\n \"SUGGESTION_SEND_BTN\" : '.aa-send-btn-suggestion',\n \"SUGGESTION_COPY_BTN\" : '.aa-copy-btn-suggestion',\n \"SUGGESTION_SENDCPY_ACTION\" : '.aa-action-buttons',\n \"SUGGESTION_FAQ_UP_ARROW\" : '.aa-faq-up-arrow',\n \"SUGGESTION_FAQ_DOWN_ARROW\" : '.aa-faq-down-arrow',\n \"SUGGESTION_FAQ_EXPAND\" : '.aa-expand-btn-link',\n \"SUGGESTION_FAQ_CLOSE\" : '.aa-close-btn-link',\n \"SUGGESTION_FAQ_ANS_LENGTH\" : '.aa-faq-ans-length',\n \"SUGGESTION_FAQ_ANS_LOADER\" : '.aa-faq-answer-loader',\n \"SUGGESTION_SNIPPET_SOURCE_TAG\" : '.aa-source-tag',\n \"SUGGESTION_SNIPPET_LINK\" : '.aa-snippet-link',\n \"SUGGESTION_ARTICLE_LINK\" : '.aa-article-link',\n \"SUGGESTION_FILE_LINK\" : '.aa-file-link',\n \"SEARCH_INPUT_BLOCK\" : '.aa-input-block',\n \"SEARCH_INPUT_CLOSE\" : '.aa-input-search-close',\n \"SEARCH_INPUT_ICON\" : '.aa-input-search-icon',\n \"SUGGESTION_SENT_TEXT\" : '.aa-sent-text',\n \"SEARCH_SUGGESTION_WRAPPER\" : '.aa-search-suggestion-wrapper',\n \"HIDE_ELEMENT\" : 'aa-hidden',\n \"SDK_MAIN_WRAPPER\" : 'agentassist-widget-main-chat-container-wrapper',\n \"NUDGE_TEMPLATE\" : 'aa-nudges-template-data',\n \"NUDGE_CLOSE\" : 'aa-close-nudge',\n \"HINT_CLOSE\" : 'aa-close-hint',\n \"HINT_TEMPLATE\" : 'aa-hints-template-data',\n \"SEND_TEXT\" : '.aa-sent-text'\n}\n\nexport const IdMapConstant = {\n \"PROACTIVE_BTN\" : 'aa-proactiveBtn',\n \"ASSIST_FAQ_SUGGESTION\" : 'aa-faqSuggestion-',\n \"ASSIST_SNIPPET_SUGGESTION\" : 'aa-snippetSuggestion-',\n \"ASSIST_ARTICLE_SUGGESTION\" : 'aa-articleSuggestion-',\n \"ASSIST_FILE_SUGGESTION\" : 'aa-fileSuggestion-',\n \"SEARCH_FAQ_SUGGESTION\" : 'aa-faqSuggestion',\n \"SEARCH_SNIPPET_SUGGESTION\" : 'aa-snippetSuggestion',\n \"SEARCH_ARTICLE_SUGGESTION\" : 'aa-articleSuggestion',\n \"SEARCH_FILE_SUGGESTION\" : 'aa-fileSuggestion',\n \"SEARCH_INPUT\" : 'aa-search-input',\n \"SEARCH_SUGGESTION_BLOCK\" : 'searchSuggestionsBlock'\n}\n","import { EVENTS, SDK_EVENTS } from '../constants/events.cnst';\nimport { ClassMapConstanst, IdMapConstant, ProjConstants, RenderResponseType, Tabs } from '../constants/projConsts'\nimport { getHTML } from '../templatemanager/base/domManager';\nimport { ArticleSendCopyActionButtons, ArticleSentText } from '../templatemanager/tabs/suggestions/article/article';\nimport { FaqAnswerPlacement, FaqExpandCloseBtn, FAQSendCopyActionButtons, FaqSentText } from '../templatemanager/tabs/suggestions/faq/faq';\nimport { FileSendCopyActionButtons, FileSentText } from '../templatemanager/tabs/suggestions/file/file';\nimport { SnippetSendCopyActionButtons, SnippetSentText } from '../templatemanager/tabs/suggestions/snippet/snippet';\nexport class rootService {\n\n isAutomationOnGoing : boolean = false;\n\n grantResponseObj: any = {};\n\n prefsAccessObj: any = {\n tabsNTitles: [],\n prefs: {},\n };\n\n connectionDetails: any = {};\n\n settingsData: any = {};\n\n numOfLines: any = 4;\n maxHeight: any = 'max-content';\n scrollHeight: any = Number.MAX_VALUE;\n\n classConstants : any = ClassMapConstanst;\n idConstants : any = IdMapConstant;\n\n faqambiguityResponse : boolean = false;\n\n activeTab : string = '';\n\n myBotTabSessionId : any = '';\n assistTabSessionId : any = '';\n sentSearchResponse : boolean = false;\n searchedResultData : any = {};\n\n proactiveMode : boolean = false;\n \n\n constructor() {\n\n }\n\n formatWelcomeMessageResponse(data : any){\n let renderResponse: any = {\n data: data,\n type: RenderResponseType.WELCOME_MSG,\n connectionDetails: this.connectionDetails,\n responseType: RenderResponseType.ASSISTRESPONSE\n }\n return renderResponse;\n }\n\n formatSearchResponse(response: any, isSearch = false) {\n let suggestions = response.suggestions;\n let dialoguesArray = suggestions.dialogs || [];\n let faqArray = suggestions.faqs || [];\n let snippersArray = this.formatSnippetResponse(suggestions?.searchassist?.snippets || [], response)\n let filesArray = suggestions?.searchassist?.files || [];\n let searchResponse: any = {};\n if (suggestions?.searchassist && suggestions?.searchassist?.snippets && suggestions?.searchassist?.snippets?.length == 0) {\n delete suggestions.searchassist.snippets;\n }\n let searchassistKeys = Object.keys(suggestions?.searchassist || {});\n if (suggestions?.searchassist && searchassistKeys?.length == 1 && searchassistKeys[0] === 'searchRequestId') {\n suggestions.searchassist = {};\n }\n if (dialoguesArray.length || faqArray.length || snippersArray.length || filesArray.length || (suggestions?.searchassist && Object.keys(suggestions?.searchassist)?.length)) {\n searchResponse.dialogs = [];\n searchResponse.faqs = [];\n searchResponse.articles = [];\n searchResponse.snippets = [];\n searchResponse.files = [];\n if (suggestions.searchassist && Object.keys(suggestions.searchassist)?.length > 0) {\n for (let source in suggestions.searchassist) {\n if (source != \"snippets\" && source != \"file\" && source != 'searchRequestId') {\n suggestions.searchassist[source] = this.checkEmptyObjectsInArray(suggestions.searchassist[source]);\n if (suggestions.searchassist[source] && Object.keys(suggestions.searchassist[source])?.length > 0) {\n searchResponse.articles.push.apply(searchResponse.articles, suggestions.searchassist[source]);\n }\n }\n if (source == \"file\") {\n suggestions.searchassist[source] = this.checkEmptyObjectsInArray(suggestions.searchassist[source]);\n if (suggestions.searchassist[source] && Object.keys(suggestions.searchassist[source])?.length > 0) {\n searchResponse.files.push.apply(searchResponse.files, suggestions.searchassist[source]);\n }\n }\n if (source && source != 'searchRequestId') {\n suggestions?.searchassist[source]?.forEach((item: any) => {\n item.subType = source;\n });\n }\n }\n for (let article of searchResponse.articles) {\n article.showMoreButton = true;\n article.showLessButton = false;\n article.content = article.content ? article.content : '';\n article.contentId = article.contentId;\n article.userInput = response.userInput;\n article.sourceMsgId = response.sourceMsgId || '';\n article.subType = article.subType;\n article.intType = isSearch ? 'mybot' : 'assist';\n article.feedbackData = this.prepareFeedbackForSuggestions('article', article, {})\n }\n for (let file of searchResponse.files) {\n file.showMoreButton = true;\n file.showLessButton = false;\n file.content = file.content ? file.content : '';\n file.contentId = file.contentId;\n file.userInput = response.userInput;\n file.sourceMsgId = response.sourceMsgId || '';\n file.subType = file.subType;\n file.intType = isSearch ? 'mybot' : 'assist';\n file.feedbackData = this.prepareFeedbackForSuggestions('file', file, {})\n }\n }\n\n for (let faq of faqArray) {\n let faqObject: any = {\n question: faq.question,\n displayName: faq.displayName,\n taskRefId: faq?.taskRefId,\n answer: (faq.answer && faq.answer.length > 0) ? [] : false,\n showMoreButton: true,\n showLessButton: false,\n answerRender: faq.answer || false,\n childBotId: faq.childBotId,\n childBotName: faq.childBotName,\n answerCount: 1,\n sourceMsgId: response.sourceMsgId || '',\n positionId: faq.positionId,\n userInput: response.userInput,\n intType: response.intType\n }\n if (faq.answer && faq.answer.length > 0) {\n for (let ans of faq.answer) {\n let object: any = {\n ans: ans,\n taskRefId: faq.taskRefId,\n showMoreButton: true,\n showLessButton: false,\n displayName: faq.displayName,\n sourceMsgId: response.sourceMsgId || '',\n positionId: faq.positionId\n }\n faqObject.answer.push(object);\n }\n }\n let feedbackData = faq.historyFeedback ? faq.historyFeedback : {};\n faqObject.feedbackData = this.prepareFeedbackForSuggestions('faqs', faqObject, feedbackData);\n faqObject.feedbackData.interactionType = isSearch ? 'mybot' : 'assist';\n searchResponse.faqs.push(faqObject);\n }\n if (suggestions?.searchassist?.snippets?.length > 0) {\n if (snippersArray?.length > 0) {\n searchResponse.snippets = Object.assign([], snippersArray);\n }\n for (let snippet of searchResponse.snippets) {\n snippet.showMoreButton = true;\n snippet.showLessButton = false;\n snippet.subType = 'snippets';\n }\n }\n\n for (let dialog of dialoguesArray) {\n if (dialog.entities && dialog.entities?.length > 0) {\n dialog.entities.forEach((entity: any) => {\n entity.editMode = false;\n });\n }\n searchResponse.dialogs.push({\n name: dialog.name, agentRunButton: false, childBotId: dialog.childBotId,\n childBotName: dialog.childBotName, entities: dialog.entities, userInput: response.userInput,\n sourceMsgId: response.sourceMsgId || ''\n });\n }\n }\n return searchResponse;\n }\n\n formatSnippetResponse(snippetsArray: any, response: any) {\n let snipObje: any = {};\n snipObje['contentArray'] = [];\n snipObje['sources'] = [];\n snipObje['internalInfo'] = [];\n snipObje['sendCopyText'] = '';\n let snippetResponeArray: any = [];\n if (snippetsArray?.length > 0) {\n snippetsArray.forEach((snippet: any) => {\n if (snippet?.templateType) {\n if (snippet.templateType == 'active_citation_snippet' || snippet.templateType == 'citation_snippet') {\n if (\n snippet?.content &&\n Array.isArray(snippet?.content) &&\n snippet?.content?.length > 0\n ) {\n snippet.content.forEach((ansSnippet: any) => {\n let ansObj = {\n ans: ansSnippet.answer_fragment,\n sources: ansSnippet?.sources || [],\n internalFlag: snippet.internalFlag\n };\n snipObje['contentArray'].push(ansObj);\n snipObje.internalFlag = snippet.internalFlag || false;\n snipObje.isActCit = true;\n });\n }\n } else {\n if (snippet?.content) {\n if (Array.isArray(snippet?.content)) {\n snippet.content = snippet?.content.join('\\n');\n }\n snipObje.internalFlag = snippet.internalFlag || false;\n let otherType: any = {\n ans: snippet.content,\n internalFlag: snippet.internalFlag\n }\n if (snippet.url) {\n otherType['sources'] = [{ title: snippet.source, url: snippet.url }];\n }\n snipObje.contentArray.push(otherType);\n }\n }\n snipObje.templateType = snippet.templateType;\n snipObje.positionId = snippet.positionId;\n snipObje.sourceMsgId = response.sourceMsgId || '';\n snipObje.intType = response.intType;\n snipObje.isFromGeneratedSummary = response.isFromGeneratedSummary;\n snipObje.userInput = response.userInput || '';\n }\n });\n let extInfo = '';\n let interlInfo = ''\n let uniqueSource: any = [];\n snipObje['contentArray']\n ?.forEach((entry: any) => {\n let className = '';\n snipObje.sources.push(\n ...(entry?.sources || []).filter((item: any) => {\n let returnValue = item.url && uniqueSource.indexOf(item.title) == -1;\n if (returnValue) {\n uniqueSource.push(item.title);\n }\n if (uniqueSource.indexOf(item.title) != -1) {\n className += `fragment-ext-${uniqueSource.indexOf(item.title) + 1} `;\n }\n return returnValue;\n })\n );\n\n if (!entry.internalFlag) {\n snipObje['sendCopyText'] += entry.ans;\n }\n let temp = `<span class=\"${className}\">${entry.ans} `;\n if (Array.isArray(entry?.sources) && entry?.sources?.length) {\n for (let source of entry?.sources) {\n if (source?.title && uniqueSource.indexOf(source?.title) != -1) {\n let srcCount = uniqueSource.indexOf(source.title);\n temp += `<span class=\"source-count-num\">${srcCount + 1}</span>`;\n }\n }\n }\n temp += '</span>';\n if (entry.internalFlag) {\n interlInfo += temp;\n } else {\n extInfo += temp;\n }\n });\n snipObje['contentArray'] = [];\n snipObje['internalInfo'] = [];\n if (interlInfo?.trim()) {\n snipObje['internalInfo'].push(interlInfo?.trim());\n }\n if (extInfo?.trim()) {\n snipObje['contentArray'].push(extInfo?.trim());\n }\n snipObje.feedbackData = this.prepareFeedbackForSuggestions('answer', snipObje, {})\n snippetResponeArray.push(snipObje);\n }\n return snippetResponeArray;\n }\n\n\n updateSearchResponse(assistResponseArray: any, response: any, ambiguityTokenExt: any) {\n response.suggestions.faqs = this.formatFAQResponse(response.suggestions.faqs);\n\n const faqWithoutAnswerIndex = response?.suggestions?.faqs?.findIndex((faq : any, index : number) => {\n if (faq.question === ambiguityTokenExt.question) {\n return faq;\n }\n });\n\n let faqWithoutAnswer : any = {};\n\n if(faqWithoutAnswerIndex >= 0){\n faqWithoutAnswer = response?.suggestions?.faqs[faqWithoutAnswerIndex];\n }\n\n if(faqWithoutAnswer && Object.keys(faqWithoutAnswer)?.length > 0){\n const updatedArray = assistResponseArray.map((item: any, idx: number) => {\n if (idx === ambiguityTokenExt.assistSuggestion) {\n const updatedItem = { ...item };\n let existingFaq : any = updatedItem.searchResponse?.faqs[ambiguityTokenExt.index];\n if(existingFaq && faqWithoutAnswer && faqWithoutAnswer?.answer){\n existingFaq.answer = faqWithoutAnswer?.answer;\n existingFaq.toggle = true;\n existingFaq.showMoreButton = false;\n existingFaq.showLessButton = false;\n existingFaq.showSpinner = false;\n }\n updatedItem.faqArrowClickResponse = true;\n return updatedItem;\n }\n return item;\n });\n return updatedArray;\n }\n }\n\n prepareFeedbackForSuggestions(suggestionType: any, suggestion: any, feedbackData: any = {}) {\n let renderResponse: any = {\n type: RenderResponseType.FEEDBACK,\n connectionDetails: this.connectionDetails,\n positionId: suggestion.positionId,\n submitForm: feedbackData?.feedback ? true : false,\n feedback: feedbackData?.feedback ? feedbackData.feedback : '',\n feedbackDetails: feedbackData?.feedbackDetails?.length ? feedbackData.feedbackDetails : [],\n comment: feedbackData?.comment ? feedbackData?.comment : '',\n sourceMsgId: suggestion.sourceMsgId || '',\n query: suggestion.userInput,\n suggestionType: suggestionType,\n dialogPositionId: suggestion.positionId,\n subType: suggestion.subType || ''\n }\n\n if (suggestionType == 'answer') {\n renderResponse.isFromGeneratedSummary = suggestion.isFromGeneratedSummary;\n renderResponse.answerType = suggestion.templateType;\n renderResponse.title = suggestion.title;\n renderResponse.answer = suggestion.sendCopyText || '';\n renderResponse.interactionType = suggestion.intType;\n renderResponse.sources = suggestion.sources;\n if (suggestion.internalInfo?.length > 0) {\n renderResponse.answer += suggestion.internalInfo.join(' ');\n }\n } else if (suggestionType == 'article' || suggestionType == 'file') {\n renderResponse.title = suggestion.title;\n renderResponse.answer = suggestion.content || '';\n renderResponse.interactionType = suggestion.intType;\n } else if (suggestionType == 'faqs') {\n let answer = '';\n if (Array.isArray(suggestion?.answer)) {\n suggestion?.answer?.forEach((element: any) => {\n answer += element.ans;\n });\n }\n renderResponse.title = suggestion.question;\n renderResponse.answer = answer;\n }\n return renderResponse\n }\n\n checkEmptyObjectsInArray(arr: any) {\n arr = arr.filter(\n (obj: any) => (obj && Object.keys(obj)?.length > 0) && (obj.title || obj.content)\n );\n return arr;\n }\n\n formatFAQResponse(faqArray: any) {\n let searchResponse = [];\n if(faqArray && faqArray?.length > 0){\n for (let faq of faqArray) {\n let faqObject: any = {\n question: faq.question,\n taskRefId: faq?.taskRefId,\n answer: (faq?.answer && faq?.answer?.length > 0) ? [] : false\n }\n if (faq.answer && faq.answer.length > 0) {\n for (let ans of faq.answer) {\n let object: any = {\n taskRefId: faq.taskRefId,\n ans: ans,\n showMoreButton: true,\n showLessButton: false,\n }\n faqObject?.answer?.push(object);\n }\n }\n searchResponse.push(faqObject);\n }\n }\n return searchResponse;\n }\n\n openurlInBrowser(url: any) {\n if (this.settingsData?.urlOpenBehaviour && this.settingsData?.urlOpenBehaviour?.sendPostEvent) {\n let message = {\n method: 'AgentAssist.UrlClickedMessage',\n from: 'agent_assist',\n url: url\n };\n window.parent.postMessage(message, '*');\n } else {\n window.open(url, '_blank');\n }\n }\n\n\n extractTextFromElement(element: HTMLElement): string {\n let text = '';\n if (element) {\n const extractText = (node: Node) => {\n if (node.nodeType === Node.TEXT_NODE) {\n text += node.textContent;\n } else if (node.nodeType === Node.ELEMENT_NODE) {\n const childNodes = node.childNodes;\n for (let i = 0; i < childNodes.length; i++) {\n extractText(childNodes[i]);\n }\n }\n };\n extractText(element);\n }\n return text.trim();\n }\n\n handleSendCopyButton(actionType: any, faq_or_article_obj: any, selectType: any) {\n let message: any = {};\n if (actionType == ProjConstants.SEND) {\n message = {\n method: 'send',\n name: ProjConstants.SENDMSG,\n conversationId: this.connectionDetails.conversationId,\n // payload: selectType == ProjConstants.FAQ ? (faq_or_article_obj.answer || faq_or_article_obj.ans) : faq_or_article_obj.content\n payload: faq_or_article_obj.sendContent\n };\n if (selectType === ProjConstants.ARTICLE) {\n message['title'] = faq_or_article_obj.title;\n message['contentId'] = faq_or_article_obj.contentId;\n } else {\n message['title'] = faq_or_article_obj.displayName;\n message['contentId'] = faq_or_article_obj.taskRefId\n }\n } else {\n message = {\n method: 'copy',\n name: ProjConstants.COPYMSG,\n conversationId: this.connectionDetails.conversationId,\n // payload: selectType == ProjConstants.FAQ ? (faq_or_article_obj.answer || faq_or_article_obj.ans) : faq_or_article_obj.content\n payload: faq_or_article_obj.sendContent\n };\n if (selectType === ProjConstants.ARTICLE) {\n message['title'] = faq_or_article_obj.title;\n message['contentId'] = faq_or_article_obj.contentId;\n } else {\n message['title'] = faq_or_article_obj.displayName;\n message['contentId'] = faq_or_article_obj.taskRefId\n }\n }\n message['type'] = (selectType == ProjConstants.FAQ) ? 'faq' : 'article'\n window.parent.postMessage(message, '*');\n return (this.faqArticleSendorCopyEvent(selectType, message, faq_or_article_obj))\n }\n\n faqArticleSendorCopyEvent(selectType : any, message : any, faq_or_article_obj : any) {\n let data: any = {\n botId: this.connectionDetails.botId,\n conversationId: this.connectionDetails.conversationId,\n experience: this.connectionDetails?.channel,\n source: this.connectionDetails.source,\n usedType: message.method,\n type: message.type,\n name: message.name,\n payload: message.payload,\n title: message.title,\n contentId: message.contentId,\n positionId: faq_or_article_obj.positionId ? faq_or_article_obj.positionId : '',\n sessionId: (this.activeTab == Tabs.MYBOT || this.activeTab == Tabs.SEARCH) ? this.myBotTabSessionId : this.assistTabSessionId,\n };\n data = this.addSourceMsgIdToRequestParams(faq_or_article_obj, data);\n if (this.activeTab == Tabs.SEARCH) {\n data.skipMsg = this.sentSearchResponse;\n data.input = this.searchedResultData?.userInput || '';\n this.sentSearchResponse = true;\n }\n if (faq_or_article_obj.subType) {\n data.subType = faq_or_article_obj.subType;\n }\n return data;\n }\n \n addSourceMsgIdToRequestParams(data : any,requestParams : any){\n if(data.sourceMsgId){\n if(data.sourceMsgId == 'fromLibrary'){\n requestParams['fromLibrary'] = true\n }else{\n requestParams['sourceMsgId'] = data.sourceMsgId\n }\n }\n return requestParams;\n }\n\n addSentOrCopiedTextForFaqs(ansObj: any, ele: any, sendText: any, hostInstance : any) {\n let titleInfoSec = ele.querySelector(this.classConstants.SUGGESTION_EACH_TITLE);\n let titleSendText = ele.querySelector(`${this.classConstants.SUGGESTION_EACH_TITLE} ${this.classConstants.SUGGESTION_SENT_TEXT}`);\n if (!ansObj.send && !titleSendText) {\n ansObj.send = sendText;\n let eachFAQSentText: any = getHTML(FaqSentText, { ansObj: ansObj }, hostInstance);\n titleInfoSec.append(eachFAQSentText);\n }\n let sendTextele = ele.querySelector(this.classConstants.SEND_TEXT);\n sendTextele.textContent = sendText;\n }\n\n addSentOrCopiedTextForFiles (file: any, ele: any, sendText: any, hostInstance : any) {\n if (!file.send) {\n file.send = sendText;\n let eachFileSentText: any = getHTML(FileSentText, { file: file }, hostInstance);\n ele.querySelector(this.classConstants.SUGGESTION_EACH_TITLE).append(eachFileSentText);\n }\n let sendTextele = ele.querySelector(this.classConstants.SEND_TEXT);\n sendTextele.textContent = sendText;\n }\n\n addSentOrCopiedTextForArticle (article: any, ele: any, sendText: any, hostInstance : any) {\n if (!article.send) {\n article.send = sendText;\n let eachArticleSentText: any = getHTML(ArticleSentText, { article: article }, hostInstance);\n ele.querySelector(this.classConstants.SUGGESTION_EACH_TITLE).append(eachArticleSentText);\n }\n let sendTextele = ele.querySelector(this.classConstants.SEND_TEXT);\n sendTextele.textContent = sendText;\n }\n\n addSentOrCopiedTextForSnippets (snippet: any, ele: any, sendText: any, hostInstance : any) {\n console.log(sendText, \"send Text\", snippet.send);\n \n if (!snippet.send) {\n snippet.send = sendText;\n let eachSnippetSentText: any = getHTML(SnippetSentText, { snippet: snippet }, hostInstance);\n ele.querySelector(this.classConstants.SUGGESTION_EACH_TITLE).append(eachSnippetSentText);\n }\n let sendTextele = ele.querySelector(this.classConstants.SEND_TEXT);\n sendTextele.textContent = sendText;\n }\n\n handleSendCopyButtonForFaq (actionType: any, ansObj: any, selectType: any, sourceMsgId: any, hostInstance : any) {\n // let faqTemplate = this.faqcontent.find((element : any, index : any) => index === inx);\n // let faqTemplate = faqList[inx];\n ansObj.sourceMsgId = sourceMsgId;\n ansObj.sendContent = ansObj.answer || ansObj.ans;\n let copyEventData = this.handleSendCopyButton(actionType, ansObj, selectType);\n this.emitSendOrCopyEvent(copyEventData, hostInstance);\n }\n\n handleSendCopyButtonForSnippet (actionType: any, snippetObj: any, selectType: any, hostInstance : any) { \n snippetObj.sendContent = (snippetObj.sendCopyText);\n let copyEventData = this.handleSendCopyButton(actionType, snippetObj, selectType);\n this.emitSendOrCopyEvent(copyEventData, hostInstance);\n }\n\n handleSendCopyButtonArticleOrFile (actionType: any, articleObj: any, selectType: any, hostInstance : any){\n articleObj.sendContent = articleObj.content;\n let copyEventData = this.handleSendCopyButton(actionType, articleObj, selectType);\n this.emitSendOrCopyEvent(copyEventData, hostInstance);\n };\n\n handleActionTemplateClickEventsForFAQ(eachActionTemplate : any, faq : any, ansObj : any, faqListHTMLEle : any, hostInstance : any){\n hostInstance.eventManager?.addEventListener(this.classConstants.SUGGESTION_SEND_BTN, 'click', () => {\n this.handleSendCopyButtonForFaq(ProjConstants.SEND, ansObj, ProjConstants.FAQ, faq.sourceMsgId, hostInstance);\n this.addSentOrCopiedTextForFaqs(ansObj, faqListHTMLEle, 'Sent', hostInstance);\n }, eachActionTemplate);\n\n hostInstance.eventManager?.addEventListener(this.classConstants.SUGGESTION_COPY_BTN, 'click', () => {\n this.handleSendCopyButtonForFaq(ProjConstants.COPY, ansObj, ProjConstants.FAQ, faq.sourceMsgId, hostInstance);\n this.addSentOrCopiedTextForFaqs(ansObj, faqListHTMLEle, 'Copied', hostInstance);\n }, eachActionTemplate);\n }\n\n emitSendOrCopyEvent(copyEventData : any, hostInstance : any){\n hostInstance.socketConnection.emitEvents(EVENTS.agent_send_or_copy, copyEventData);\n }\n\n handleFaqExpandCloseBtnClickEvents(expandClostBtnTemplate : any, faqSuggestionBodyList : any, suggestionHeaderActionTemplate : any, faqListHTMLIndex : any, hostInstance : any){\n let expandElement = expandClostBtnTemplate.querySelector(this.classConstants.SUGGESTION_FAQ_EXPAND);\n let closeElement = expandClostBtnTemplate.querySelector(this.classConstants.SUGGESTION_FAQ_CLOSE);\n let faqAnsLenghtElement = faqListHTMLIndex?.querySelector(`${this.classConstants.SUGGESTION_EACH_HEADER} ${this.classConstants.SUGGESTION_EACH_TITLE} ${this.classConstants.SUGGESTION_FAQ_ANS_LENGTH}`);\n\n hostInstance.eventManager?.addEventListener(this.classConstants.SUGGESTION_FAQ_EXPAND, 'click', () => {\n\n if (closeElement?.classList?.contains(this.classConstants.HIDE_ELEMENT)) {\n closeElement?.classList?.remove(this.classConstants.HIDE_ELEMENT)\n }\n expandElement?.classList?.add(this.classConstants.HIDE_ELEMENT);\n\n faqSuggestionBodyList.forEach((ansTemplate: any, index: any) => {\n if (ansTemplate?.classList?.contains(this.classConstants.HIDE_ELEMENT)) {\n ansTemplate?.classList?.remove(this.classConstants.HIDE_ELEMENT)\n }\n });\n\n faqAnsLenghtElement?.classList?.add(this.classConstants.HIDE_ELEMENT);\n\n //hide header send copy btns\n suggestionHeaderActionTemplate?.classList?.add(this.classConstants.HIDE_ELEMENT);\n\n //add send copy btns for first answer\n let firstAnswerActionBtn = faqSuggestionBodyList[0]?.querySelector(this.classConstants.SUGGESTION_SENDCPY_ACTION);\n if (firstAnswerActionBtn?.classList?.contains(this.classConstants.HIDE_ELEMENT)) {\n firstAnswerActionBtn?.classList?.remove(this.classConstants.HIDE_ELEMENT)\n }\n\n }, expandClostBtnTemplate);\n\n hostInstance.eventManager?.addEventListener(this.classConstants.SUGGESTION_FAQ_CLOSE, 'click', () => {\n\n if (expandElement?.classList?.contains(this.classConstants.HIDE_ELEMENT)) {\n expandElement?.classList?.remove(this.classConstants.HIDE_ELEMENT);\n }\n closeElement?.classList?.add(this.classConstants.HIDE_ELEMENT);\n\n faqSuggestionBodyList.forEach((ansTemplate: any, index: any) => {\n if (index != 0) {\n ansTemplate?.classList?.add(this.classConstants.HIDE_ELEMENT);\n }\n });\n\n if(faqAnsLenghtElement?.classList?.contains(this.classConstants.HIDE_ELEMENT)){\n faqAnsLenghtElement?.classList?.remove(this.classConstants.HIDE_ELEMENT);\n }\n\n //show header send copy btns\n if (suggestionHeaderActionTemplate?.classList?.contains(this.classConstants.HIDE_ELEMENT)) {\n suggestionHeaderActionTemplate?.classList?.remove(this.classConstants.HIDE_ELEMENT);\n }\n\n //remove send copy btns for first answer\n let firstAnswerActionBtn = faqSuggestionBodyList[0]?.querySelector(this.classConstants.SUGGESTION_SENDCPY_ACTION);\n firstAnswerActionBtn?.classList?.add(this.classConstants.HIDE_ELEMENT);\n\n }, expandClostBtnTemplate);\n }\n\n handleActionTemplateClickEventsForSnippet(eachActionTemplate : any, snippet : any, snippetListHtmlEle : any, hostInstance : any){\n hostInstance.eventManager?.addEventListener(this.classConstants.SUGGESTION_SEND_BTN, 'click', () => {\n this.handleSendCopyButtonForSnippet(ProjConstants.SEND, snippet, ProjConstants.ARTICLE, hostInstance);\n this.addSentOrCopiedTextForSnippets(snippet, snippetListHtmlEle, 'Sent', hostInstance);\n }, eachActionTemplate);\n\n hostInstance.eventManager?.addEventListener(this.classConstants.SUGGESTION_COPY_BTN, 'click', () => {\n this.handleSendCopyButtonForSnippet(ProjConstants.COPY, snippet, ProjConstants.ARTICLE, hostInstance);\n this.addSentOrCopiedTextForSnippets(snippet, snippetListHtmlEle, 'Copied', hostInstance);\n }, eachActionTemplate);\n }\n\n handleActionTemplateClickEventsForArticle(eachActionTemplate : any, article : any, articleListHtmlEle : any, hostInstance : any){\n hostInstance.eventManager?.addEventListener(this.classConstants.SUGGESTION_SEND_BTN, 'click', () => {\n this.handleSendCopyButtonArticleOrFile(ProjConstants.SEND, article, ProjConstants.ARTICLE, hostInstance);\n this.addSentOrCopiedTextForArticle(article, articleListHtmlEle, 'Sent', hostInstance);\n }, eachActionTemplate);\n\n hostInstance.eventManager?.addEventListener(this.classConstants.SUGGESTION_COPY_BTN, 'click', () => {\n this.handleSendCopyButtonArticleOrFile(ProjConstants.COPY, article, ProjConstants.ARTICLE, hostInstance);\n this.addSentOrCopiedTextForArticle(article, articleListHtmlEle, 'Copied', hostInstance);\n }, eachActionTemplate);\n }\n\n handleActionTemplateClickEventsForFile(eachActionTemplate : any, file : any, fileListHtmlEle : any, hostInstance : any){\n hostInstance.eventManager?.addEventListener(this.classConstants.SUGGESTION_SEND_BTN, 'click', () => {\n this.handleSendCopyButtonArticleOrFile(ProjConstants.SEND, file, ProjConstants.ARTICLE, hostInstance);\n this.addSentOrCopiedTextForFiles(file, fileListHtmlEle, 'Sent', hostInstance);\n }, eachActionTemplate);\n\n hostInstance.eventManager?.addEventListener(this.classConstants.SUGGESTION_COPY_BTN, 'click', () => {\n this.handleSendCopyButtonArticleOrFile(ProjConstants.COPY, file, ProjConstants.ARTICLE, hostInstance);\n this.addSentOrCopiedTextForFiles(file, fileListHtmlEle, 'Copied', hostInstance);\n }, eachActionTemplate);\n }\n\n handleSuggestionLessClickEvent (actionHtml : any, suggestionElement: any, listHtml: any, hostInstance : any) {\n let moreElement = actionHtml.querySelector(this.classConstants.SUGGESTION_MORE_LINK);\n let lessElement = actionHtml.querySelector(this.classConstants.SUGGESTION_LESS_LINK);\n hostInstance.eventManager?.addEventListener(this.classConstants.SUGGESTION_MORE_LINK, 'click', () => {\n if (lessElement?.classList?.contains(this.classConstants.HIDE_ELEMENT)) {\n lessElement?.classList?.remove(this.classConstants.HIDE_ELEMENT)\n }\n moreElement?.classList?.add(this.classConstants.HIDE_ELEMENT);\n listHtml.forEach((item: any) => {\n if (item?.classList?.contains(this.classConstants.HIDE_ELEMENT)) {\n item?.classList?.remove(this.classConstants.HIDE_ELEMENT)\n }\n });\n }, suggestionElement)\n\n }\n\n handleSuggestionMoreClickEvent (actionHtml : any, suggestionElement: any, listHtml: any, hostInstance : any) {\n let moreElement = actionHtml.querySelector(this.classConstants.SUGGESTION_MORE_LINK);\n let lessElement = actionHtml.querySelector(this.classConstants.SUGGESTION_LESS_LINK);\n hostInstance?.eventManager?.addEventListener(this.classConstants.SUGGESTION_LESS_LINK, 'click', () => {\n if (moreElement?.classList?.contains(this.classConstants.HIDE_ELEMENT)) {\n moreElement?.classList?.remove(this.classConstants.HIDE_ELEMENT)\n }\n lessElement?.classList?.add(this.classConstants.HIDE_ELEMENT);\n listHtml.forEach((item: any, inx: any) => {\n if (inx >= 2 && item) {\n item?.classList?.add(this.classConstants.HIDE_ELEMENT);\n }\n });\n }, suggestionElement);\n\n }\n\n setFaqIndividualLoader (inx : any, hide = false, id : string) {\n let faqSuggestionEle : any = document.getElementById(id); \n let faqListHTML = faqSuggestionEle?.querySelectorAll(this.classConstants.SUGGESTION_EACH);\n let faqLoaderEle = faqListHTML[inx]?.querySelector(`${this.classConstants.SUGGESTION_EACH_HEADER} ${this.classConstants.SUGGESTION_EACH_TITLE} ${this.classConstants.SUGGESTION_FAQ_ANS_LOADER}`);\n \n if(hide && faqLoaderEle){\n faqLoaderEle?.classList?.add(this.classConstants.HIDE_ELEMENT);\n }else if(faqLoaderEle){\n if (faqLoaderEle?.classList?.contains(this.classConstants.HIDE_ELEMENT)) {\n faqLoaderEle?.classList?.remove(this.classConstants.HIDE_ELEMENT)\n }\n setTimeout(() => {\n faqLoaderEle?.classList?.add(this.classConstants.HIDE_ELEMENT);\n }, 10000);\n }\n }\n\n addOrHideFAQArrows(faqUpArrowTemplate : any, faqDownArrowTemplate : any, type : string){\n if(type === 'up'){\n if(faqDownArrowTemplate?.classList?.contains(this.classConstants.HIDE_ELEMENT)){\n faqDownArrowTemplate?.classList?.remove(this.classConstants.HIDE_ELEMENT);\n }\n faqUpArrowTemplate?.classList?.add(this.classConstants.HIDE_ELEMENT);\n }else{\n if(faqUpArrowTemplate?.classList?.contains(this.classConstants.HIDE_ELEMENT)){\n faqUpArrowTemplate?.classList?.remove(this.classConstants.HIDE_ELEMENT);\n }\n faqDownArrowTemplate?.classList?.add(this.classConstants.HIDE_ELEMENT);\n }\n }\n\n toggleArrows(index : number, faqId : string){\n let faqSuggestionEle : any = document.getElementById(faqId); \n let faqListHTML = faqSuggestionEle?.querySelectorAll(this.classConstants.SUGGESTION_EACH);\n let suggestionHeaderTemplate = faqListHTML[index]?.querySelector(this.classConstants.SUGGESTION_EACH_HEADER);\n\n let faqUpArrowTemplate = suggestionHeaderTemplate?.querySelector(this.classConstants.SUGGESTION_FAQ_UP_ARROW);\n let faqDownArrowTemplate = suggestionHeaderTemplate?.querySelector(this.classConstants.SUGGESTION_FAQ_DOWN_ARROW);\n this.addOrHideFAQArrows(faqUpArrowTemplate, faqDownArrowTemplate, 'down');\n }\n\n openLinksInBrowser(url: any) {\n this.openurlInBrowser(url);\n };\n\n openurlInBrowserForSnippet(url: any, snippet: any, hostInstance : any) {\n this.openurlInBrowser(url);\n this.handleUrlClickEvent(url, snippet, hostInstance);\n }\n \n handleUrlClickEvent (url: any, snippet: any, hostInstance : any) {\n let socketRequestParams: any = this.commonRequestParamsForActivity(snippet);\n socketRequestParams.eventType = \"url_clicked\";\n socketRequestParams.url = url;\n hostInstance.socketConnection.emitEvents(EVENTS.agent_activity_request, socketRequestParams);\n }\n\n commonRequestParamsForActivity (snippet: any) {\n const { botId, conversationId, channel } = this.connectionDetails;\n let socketRequestParams = {\n botId: botId,\n conversationId: conversationId,\n event: \"clicked\",\n sourceMsgId: snippet.sourceMsgId,\n dataSource: \"snippet\",\n positionId: snippet.positionId,\n // participant : rootServiceInstance?.internalTransferData?.participant || {}\n }\n return socketRequestParams;\n }\n\n emitSearchRequestForAssistSuggestions (value : any, isSearch : any, faq : any, hostInstance : any) {\n let connectionDetails: any = Object.assign({}, this.connectionDetails);\n connectionDetails.value = value;\n connectionDetails.isSearch = isSearch;\n // connectionDetails.positionId = searchObj?.positionId;\n if (connectionDetails.interactiveLanguage && typeof connectionDetails.interactiveLanguage == 'string' && connectionDetails.interactiveLanguage != \"''\") {\n connectionDetails['language'] = connectionDetails.interactiveLanguage; // Return the default value for null, undefined, or \"''\"\n }\n if(faq.sourceMsgId){\n connectionDetails['sourceMsgId'] = faq.sourceMsgId;\n }\n\n let agent_assist_request_params = hostInstance.prepareAgentAssistRequestParams(connectionDetails);\n\n if(faq.ambiguityToken){\n agent_assist_request_params.uiunqref = faq.ambiguityToken;\n }\n hostInstance.socketConnection.emitEvents(EVENTS.agent_assist_request, agent_assist_request_params);\n }\n\n emitSearchRequestForSearch (searchTextObj : any, isSearch: boolean, faq: any = {}, hostInstance : any) {\n let searchTextValue = searchTextObj?.value;\n const connectionDetails = { ...hostInstance?.socketConnection?.configOptions?.connectionDetails, value : searchTextValue, isSearch };\n if (connectionDetails.interactiveLanguage && typeof connectionDetails.interactiveLanguage === 'string' && connectionDetails.interactiveLanguage !== \"''\") {\n connectionDetails.language = connectionDetails.interactiveLanguage;\n }\n if (faq && faq.sourceMsgId) {\n connectionDetails.sourceMsgId = faq.sourceMsgId;\n }\n const agentAssistAgentRequestParams = hostInstance.prepareAgentAssistAgentRequestParams(connectionDetails);\n if(isSearch){\n agentAssistAgentRequestParams.startTime = searchTextObj?.stTime;\n agentAssistAgentRequestParams.endTime = searchTextObj?.edTime;\n }\n if(faq.ambiguityToken){\n agentAssistAgentRequestParams.uiunqref = faq.ambiguityToken;\n }\n // agentAssistAgentRequestParams.participant = rootService?.internalTransferData?.participant || {};\n hostInstance.socketConnection.emitEvents(EVENTS.agent_assist_agent_request, agentAssistAgentRequestParams);\n };\n\n handleFaqAmbiguityDescElement(faqId : string, ambiguityToken : any, faqs : any, hideActionButtons : boolean, hideCopyButton : boolean, hideSendButton : boolean, hostInstance : any){ \n let faqSuggestionEle : any = document.getElementById(faqId); \n let faqListHTML = faqSuggestionEle?.querySelectorAll(this.classConstants.SUGGESTION_EACH);\n let faqinx = ambiguityToken?.index;\n let descEle : any;\n let faqwithAns = faqs[faqinx];\n this.setFaqIndividualLoader(faqinx, true, faqId);\n if(faqwithAns && faqwithAns?.answer?.length > 0 && faqListHTML[faqinx]){\n descEle = getHTML(FaqAnswerPlacement, { faq : faqwithAns }, hostInstance);\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, descEle, { event: SDK_EVENTS.FAQ_ANSWER_AFTER_TOGGLE, data: faqs });\n if(descEle){\n faqListHTML[faqinx].append(descEle);\n }\n }\n \n let suggestionHeaderTemplate = faqListHTML[faqinx]?.querySelector(this.classConstants.SUGGESTION_EACH_HEADER);\n this.addOrHideFAQActionExpandCloseElements(faqwithAns, hideActionButtons, hideCopyButton, hideSendButton, suggestionHeaderTemplate, faqListHTML, faqinx, hostInstance);\n }\n\n handleFaqToggle (faq : any, index : any , type : string, faqListHTML : any, hostInstance : any, isAssistSuggestion : boolean, props : any) {\n faq.toggle = !faq.toggle;\n faq.seeMoreWrapper = false;\n let faqSuggestionBodyList = faqListHTML[index]?.querySelectorAll(this.classConstants.SUGGESTION_EACH_BODY);\n if(type == 'down' && !faq.answer){\n if(isAssistSuggestion){\n this.checkAnswerAndToggleForAssist(faq, index, hostInstance, props);\n }else{\n this.checkAnswerAndToggleForSearch(faq, index, hostInstance);\n }\n }else if (type == 'down' && faq.answer){\n faqSuggestionBodyList.forEach((ansTemplate: any, index: any) => {\n if (ansTemplate?.classList?.contains(this.classConstants.HIDE_ELEMENT)) {\n ansTemplate?.classList?.remove(this.classConstants.HIDE_ELEMENT)\n }\n });\n }else if(type == 'up'){\n faqSuggestionBodyList.forEach((ansTemplate: any, index: any) => {\n ansTemplate?.classList?.add(this.classConstants.HIDE_ELEMENT);\n });\n }\n }\n\n checkAnswerAndToggleForAssist (faq: any, index : number, hostInstance : any, props : any){\n if (!faq.answer && faq.toggle) {\n faq.ambiguityToken = btoa(JSON.stringify({ question: faq.question, index : index, assistSuggestion: props.suggestionIndex }));\n this.emitSearchRequestForAssistSuggestions(faq.displayName, false, faq, hostInstance);\n let faqId = this.idConstants.ASSIST_FAQ_SUGGESTION + props.suggestionIndex;\n this.setFaqIndividualLoader(index, false, faqId);\n }\n };\n\n checkAnswerAndToggleForSearch(faq: any, index : number, hostInstance : any){\n if (!faq.answer && faq.toggle) {\n faq.ambiguityToken = btoa(JSON.stringify({ question: faq.question, index : index }));\n this.emitSearchRequestForSearch({value : faq.displayName}, false, faq, hostInstance);\n this.setFaqIndividualLoader(index, false, this.idConstants.SEARCH_FAQ_SUGGESTION);\n }\n }\n\n renderEachFaqInSuggestionList(searchResponse : any, faqListHTML : any, hideActionButtons : boolean, hideCopyButton : boolean, hideSendButton : boolean, hostInstance : any, isAssistSuggestion : boolean, props : any){\n searchResponse?.faqs?.forEach((faq: any, index : number) => {\n\n let suggestionHeaderTemplate = faqListHTML[index]?.querySelector(this.classConstants.SUGGESTION_EACH_HEADER);\n\n let faqUpArrowTemplate = suggestionHeaderTemplate?.querySelector(this.classConstants.SUGGESTION_FAQ_UP_ARROW);\n let faqDownArrowTemplate = suggestionHeaderTemplate?.querySelector(this.classConstants.SUGGESTION_FAQ_DOWN_ARROW); \n\n hostInstance.eventManager?.addEventListener(this.classConstants.SUGGESTION_FAQ_UP_ARROW, 'click', () => {\n\n this.addOrHideFAQArrows(faqUpArrowTemplate, faqDownArrowTemplate, 'up');\n this.handleFaqToggle(faq, index, 'up', faqListHTML, hostInstance, isAssistSuggestion, props);\n \n }, suggestionHeaderTemplate);\n\n hostInstance.eventManager?.addEventListener(this.classConstants.SUGGESTION_FAQ_DOWN_ARROW, 'click', () => {\n\n this.addOrHideFAQArrows(faqUpArrowTemplate, faqDownArrowTemplate, 'down');\n this.handleFaqToggle(faq, index, 'down', faqListHTML, hostInstance, isAssistSuggestion, props)\n \n }, suggestionHeaderTemplate);\n\n if (faq.answer && faq?.answer?.length > 0 && !hideActionButtons) {\n \n this.addOrHideFAQActionExpandCloseElements(faq, hideActionButtons, hideCopyButton, hideSendButton, suggestionHeaderTemplate, faqListHTML, index, hostInstance)\n \n }\n\n });\n }\n\n renderEachSnippetInSuggestionList(searchResponse : any, snippetListHtml : any, hideActionButtons : boolean, hideCopyButton : boolean, hideSendButton : boolean, hostInstance : any){\n searchResponse?.snippets?.forEach((snippet: any, index : number) => {\n let eachActionTemplate: any = getHTML(SnippetSendCopyActionButtons, { snippet: snippet, hostInstance: hostInstance, hideActionButtons: hideActionButtons, hideCopyButton: hideCopyButton, hideSendButton: hideSendButton }, hostInstance);\n\n if (eachActionTemplate && eachActionTemplate?.nodeName != '#text') {\n\n snippetListHtml[index]?.querySelector(this.classConstants.SUGGESTION_EACH_HEADER).append(eachActionTemplate);\n this.handleActionTemplateClickEventsForSnippet(eachActionTemplate, snippet, snippetListHtml[index], hostInstance); \n }\n\n let sourceListHtml = snippetListHtml[index].querySelectorAll(this.classConstants.SUGGESTION_SNIPPET_SOURCE_TAG); \n\n snippet.sources?.forEach((source : any, inx : any) => {\n hostInstance.eventManager?.addEventListener(this.classConstants.SUGGESTION_SNIPPET_LINK, 'click', () => {\n this.openurlInBrowserForSnippet(source.url, snippet, hostInstance)\n }, sourceListHtml[inx]);\n });\n });\n }\n\n renderEachArticleInSuggestionList(searchResponse : any, articlesListHTML : any, hideActionButtons : boolean, hideCopyButton : boolean, hideSendButton : boolean, hostInstance : any){\n searchResponse?.articles?.forEach((article: any, index : number) => {\n let eachActionTemplate: any = getHTML(ArticleSendCopyActionButtons, { article: article, hostInstance: hostInstance, hideActionButtons: hideActionButtons, hideCopyButton: hideCopyButton, hideSendButton: hideSendButton }, hostInstance);\n\n if (eachActionTemplate && eachActionTemplate?.nodeName != '#text') {\n articlesListHTML[index]?.querySelector(this.classConstants.SUGGESTION_EACH_HEADER).append(eachActionTemplate);\n this.handleActionTemplateClickEventsForArticle(eachActionTemplate, article, articlesListHTML[index], hostInstance); \n }\n hostInstance.eventManager?.addEventListener(this.classConstants.SUGGESTION_ARTICLE_LINK, 'click', () => {\n this.openLinksInBrowser(article.link)\n }, articlesListHTML[index]);\n\n });\n }\n\n renderEachFileInSuggestionList(searchResponse : any, filesListHtml : any, hideActionButtons : boolean, hideCopyButton : boolean, hideSendButton : boolean, hostInstance : any){\n searchResponse?.files?.forEach((file: any, index : number) => {\n let eachActionTemplate: any = getHTML(FileSendCopyActionButtons, { file: file, hostInstance: hostInstance, hideActionButtons: hideActionButtons, hideCopyButton: hideCopyButton, hideSendButton: hideSendButton }, hostInstance);\n if (eachActionTemplate && eachActionTemplate?.nodeName != '#text') {\n filesListHtml[index]?.querySelector(this.classConstants.SUGGESTION_EACH_HEADER).append(eachActionTemplate);\n this.handleActionTemplateClickEventsForFile(eachActionTemplate, file, filesListHtml[index], hostInstance); \n }\n hostInstance.eventManager?.addEventListener(this.classConstants.SUGGESTION_FILE_LINK, 'click', () => {\n this.openLinksInBrowser(file.link)\n }, filesListHtml[index]);\n });\n\n }\n\n // search\n handleSearchText(searchText : any, hostInstance : any){\n if (searchText.isEntered) {\n this.emitSearchRequestForSearch (searchText, true,{}, hostInstance);\n }\n let inputBlock = hostInstance?.chatEle?.querySelector(this.classConstants.SEARCH_INPUT_BLOCK);\n let inputEle = hostInstance?.chatEle?.querySelector(`#${this.idConstants.SEARCH_INPUT}`);\n if (inputBlock) {\n let inputSearchIcon = inputBlock?.querySelector(this.classConstants.SEARCH_INPUT_ICON);\n let inputCloseIcon = inputBlock?.querySelector(this.classConstants.SEARCH_INPUT_CLOSE);\n\n if (searchText.value) {\n inputSearchIcon.classList.add(this.classConstants.HIDE_ELEMENT);\n inputCloseIcon.classList.remove(this.classConstants.HIDE_ELEMENT);\n } else {\n inputCloseIcon.classList.add(this.classConstants.HIDE_ELEMENT);\n inputSearchIcon.classList.remove(this.classConstants.HIDE_ELEMENT);\n }\n inputEle.value = searchText.value;\n }\n }\n\n addOrHideFAQActionExpandCloseElements(faq : any, hideActionButtons : any, hideCopyButton : any, hideSendButton : any, suggestionHeaderTemplate : any, faqListHTML : any, index : any, hostInstance : any){\n let eachActionTemplate: any = getHTML(FAQSendCopyActionButtons, { ansObj: faq.answer[0], hostInstance: hostInstance, hideActionButtons: hideActionButtons, hideCopyButton: hideCopyButton, hideSendButton: hideSendButton, addHideClass: false }, hostInstance);\n\n if (suggestionHeaderTemplate && eachActionTemplate && eachActionTemplate?.nodeName != '#text') {\n\n suggestionHeaderTemplate.append(eachActionTemplate);\n\n this.handleActionTemplateClickEventsForFAQ(eachActionTemplate, faq, faq.answer[0], faqListHTML[index], hostInstance); \n } \n \n if (faq.answer?.length > 1) {\n\n let faqSuggestionBodyList = faqListHTML[index]?.querySelectorAll(this.classConstants.SUGGESTION_EACH_BODY);\n\n faq.answer?.forEach((ansObj: any, inx: any) => {\n\n let eachAnsActionTemplate: any = getHTML(FAQSendCopyActionButtons, { ansObj: ansObj, hostInstance: hostInstance, hideActionButtons: hideActionButtons, hideCopyButton: hideCopyButton, hideSendButton: hideSendButton, addHideClass: (inx == 0 ? true : false) }, hostInstance);\n\n if (eachAnsActionTemplate && eachAnsActionTemplate?.nodeName != '#text') {\n\n\n if (faqSuggestionBodyList && faqSuggestionBodyList?.length > 0) {\n\n faqSuggestionBodyList[inx].prepend(eachAnsActionTemplate);\n\n this.handleActionTemplateClickEventsForFAQ(eachAnsActionTemplate, faq, ansObj, faqListHTML[index], hostInstance); \n }\n\n }\n });\n\n let expandClostBtnTemplate: any = getHTML(FaqExpandCloseBtn, {}, hostInstance);\n \n faqListHTML[index]?.append(expandClostBtnTemplate);\n\n let suggestionHeaderActionTemplate = faqListHTML[index]?.querySelector(`${this.classConstants.SUGGESTION_EACH_HEADER} ${this.classConstants.SUGGESTION_SENDCPY_ACTION}`);\n\n this.handleFaqExpandCloseBtnClickEvents(expandClostBtnTemplate, faqSuggestionBodyList, suggestionHeaderActionTemplate, faqListHTML[index], hostInstance)\n \n }\n }\n\n\n}\n\nexport default rootService;\n","\nimport { io } from 'socket.io-client';\nimport { DATA_EVENTS, EVENTS } from '../constants/events.cnst';\nclass websocketservice {\n\n private _agentAssistSocket: any;\n private hostIns: any;\n private configOptions: any;\n\n prevTimeStamp : number = 0;\n intervalTime : number = 510;\n count = 1;\n\n constructor(hostIns: any) {\n this.hostIns = hostIns;\n }\n\n socketConnection(configOptions: any) {\n this.configOptions = configOptions;\n let finalUrl = 'https://huddl-agentassist-dev.kore.ai/koreagentassist';\n const config = {\n url: finalUrl,\n options: {\n path: '/agentassist/api/v1/chat',\n autoConnect: false,\n transports: ['websocket', 'polling', 'flashsocket'],\n reconnection: true,\n reconnectionDelay: 5000,\n reconnectionAttempts: 13,\n query: { 'jToken': configOptions?.connectionDetails?.token }\n }\n };\n\n this._agentAssistSocket = io(config.url, config.options);\n this._agentAssistSocket.connect();\n this.listenEvents();\n this._agentAssistSocket.on(\"connect\", () => {\n this.hostIns.emit('ON_SOCKET_CONNECTION', configOptions);\n });\n }\n emitEvents(eventName: string, requestParams: any, keepOldTraceId = false) {\n const { fromSAT, source, autoBotId, channel, interactiveLanguage, botId } = this.configOptions.connectionDetails;\n if (requestParams) {\n requestParams.isExtAD = fromSAT ? false : true;\n requestParams.source = source;\n requestParams.experience = channel;\n requestParams.traceId = (keepOldTraceId && requestParams.traceId) ? requestParams.traceId : 'ua-f0f3edc3-16ca-4e02-9363-4f48c602df62';\n requestParams.language = interactiveLanguage;\n }\n\n if (eventName == 'internal_transfer') {\n requestParams.botId = botId;\n }\n this._agentAssistSocket.emit(eventName, requestParams);\n }\n\n listenEvents() {\n this._agentAssistSocket.on(EVENTS.agent_assist_response, (data: any) => {\n this.hostIns.rootService.assistTabSessionId = '';\n if (data.sessionId) {\n this.hostIns.rootService.assistTabSessionId = data?.sessionId;\n } \n this.hostIns.emit(DATA_EVENTS.AGENT_AI_RESPONSE, data);\n });\n\n this._agentAssistSocket.on(EVENTS.agent_menu_response, (data: any) => {\n\n });\n\n this._agentAssistSocket.on(EVENTS.agent_coaching_response, (data: any) => {\n this.hostIns.emit(DATA_EVENTS.AGENT_COACHING_RESPONSES, data);\n });\n\n this._agentAssistSocket.on(EVENTS.checklist_step_response, (data: any) => {\n });\n\n this._agentAssistSocket.on(EVENTS.checklist_response, (data: any) => {\n });\n\n this._agentAssistSocket.on(EVENTS.realtime_sentiment_response, (data: any) => {\n });\n\n this._agentAssistSocket.on(EVENTS.agent_assist_agent_response, (data: any) => {\n\n let settimeoutTime = this.getTimeout();\n setTimeout(() => {\n this.hostIns.rootService.sentSearchResponse = false;\n this.hostIns.rootService.myBotTabSessionId = '';\n if(data.sessionId) {\n this.hostIns.rootService.myBotTabSessionId = data?.sessionId;\n }\n this.hostIns.emit(DATA_EVENTS.AGENT_AI_AGENT_RESPONSE, data);\n },settimeoutTime);\n });\n\n this._agentAssistSocket.on(EVENTS.agent_assist_endoftask, (data: any) => {\n });\n\n this._agentAssistSocket.on(EVENTS.user_message, (data: any) => {\n this.hostIns.emit(DATA_EVENTS.USER_TRANSCRIPT_RESPONSE, data);\n });\n\n this._agentAssistSocket.on(EVENTS.agent_message, (data: any) => {\n this.hostIns.emit(DATA_EVENTS.AGENT_TRANSCRIPT_RESPONSE, data);\n });\n\n this._agentAssistSocket.on(EVENTS.agent_assist_user_message, (data: any) => {\n });\n\n this._agentAssistSocket.on(EVENTS.agent_feedback_response, (data: any) => {\n });\n\n this._agentAssistSocket.on(EVENTS.response_resolution_comments, (data: any) => {\n })\n\n this._agentAssistSocket.on(EVENTS.agentassist_control_response, (data: any) => {\n });\n }\n\n getTimeout(){\n let timestamp1 = Date.now();\n let settimeoutTime = this.intervalTime;\n if ((timestamp1 - this.prevTimeStamp) < this.intervalTime) {\n settimeoutTime = (settimeoutTime * this.count) + (this.intervalTime - (timestamp1 - this.prevTimeStamp));\n this.count += 1;\n }else{\n this.count = 1;\n }\n this.prevTimeStamp = timestamp1;\n return settimeoutTime;\n }\n \n\n}\nexport default websocketservice;\n","import './aaContainer.scss';\nimport { useEffect, useState } from 'preact/hooks';\nimport { h } from 'preact';\nimport { ClassMapConstanst, IdMapConstant, ProjConstants, serviceTabMap, Tabs, coachingConst} from '../../../constants/projConsts';\nimport { AllTabs } from '../../tabs/all-tabs';\nimport { Assist } from '../../tabs/assist/assist';\nimport { Search } from '../../tabs/search/search';\nimport { Transcript } from '../../tabs/transcript/transcript';\nimport { Header } from '../../tabs/header/header';\nimport { DATA_EVENTS, SDK_EVENTS, EVENTS } from '../../../constants/events.cnst';\nimport { MyBot } from '../../tabs/mybot/mybot';\nimport { getHTML } from '../domManager';\n\n\nexport function AALoder(props: any) {\n return (\n <div id=\"aa-loader-main\" className=\"loader-progress-main\">\n <div className=\"loading-border\"></div>\n </div>\n );\n}\n\nexport function AAContainer(props: any) {\n\n const [assistTabActive, setAssistTabActive] = useState(true);\n const [mybotTabActive, setMybotTabActive] = useState(false);\n const [searchTabActive, setSearchTabActive] = useState(false);\n const [transcriptTabActive, setTranscriptTabActive] = useState(false);\n const [selectedTheme, setSelectedTheme] = useState('light');\n const [coachingHints, setCoachingHints] = useState<any[]>([]);\n const [coachingNudges, setCoachingNudges] = useState<any[]>([]);\n let hints: any = [];\n let nudges: any = [];\n\n const tabsNTitles = [\n { type: 'srch', title: 'Search' },\n { type: 'mB', title: 'My Bot' },\n { type: 'ast', title: 'Assist' },\n { type: 'trnspt', title: 'Transcript' },\n ];\n const connectionDetails = props.connectionDetails;\n const sourceDesktop = 'SomeSource';\n const hideUserBotHistory = false;\n const serTabMap : any = serviceTabMap;\n const hostInstance = props.hostInstance;\n const rootServiceInstance = hostInstance.rootService;\n const selectTab : any = 'ast';\n const classConstants : any = ClassMapConstanst;\n const idMapConstants : any = IdMapConstant;\n\n let chatContainerClass = classConstants.SDK_MAIN_WRAPPER; //left-menu-nav-enable\n\n useEffect(() => {\n addHeaderTemplate();\n addFooterTemplate();\n hostInstance.on('updateActiveTab', (data : any)=> {\n toggleActiveTab(data.activeTab, data.footerTag);\n })\n },[]);\n\n\n const chooseTheme = () => {\n setSelectedTheme(selectedTheme === 'light' ? 'dark' : 'light');\n };\n \n useEffect(() => {\n const handleCoachingEvents = (response: any) => handleCocahingResponse(response);\n\n hostInstance.on('AGENT_COACHING_RESPONSES', handleCoachingEvents);\n }, []);\n\n const handleCocahingResponse = (resData: any) => {\n\n if(resData?.action === 'nudge'){\n handleNudgeData(resData);\n } else if(resData?.action === 'hint') {\n handleHintData(resData);\n }\n }\n\n const handleNudgeData = (NudgeObject: any) =>{\n let uQ = NudgeObject.actionId;\n nudges.unshift(NudgeObject);\n setCoachingNudges(prevNudges => [NudgeObject, ...prevNudges]);\n\n const nudgeBanner : any = getHTML(nudgeHTMLEle, NudgeObject, hostInstance);\n const nudgeEle = document.getElementsByClassName(ClassMapConstanst.NUDGE_TEMPLATE)[0];\n setTimeout(() => {\n let inx = nudges.findIndex((item: any)=> item.actionId === uQ);\n if(inx >= 0){\n const nudgeElement = document.getElementById(`${uQ}`);\n if (nudgeElement) {\n nudgeElement.remove();\n coachingHints.splice(inx, 1);\n closeNudge(uQ);\n setCoachingNudges(prevNudges => prevNudges.filter((nudge: any) => nudge.actionId !== uQ));\n } else {\n console.log('Element not found:', uQ);\n }\n }\n }, 7000);\n hostInstance.eventManager?.addEventListener(`.${ClassMapConstanst.NUDGE_CLOSE}`, 'click', () => {\n closeNudge(uQ);\n }, nudgeBanner);\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, nudgeBanner, {event: SDK_EVENTS.NUDGE_TEMPLATE, NudgeObject});\n nudgeEle.append(nudgeBanner);\n }\n\n useEffect(() => {\n }, [coachingNudges]);\n\n const nudgeHTMLEle = (props: any) => {\n let {msgData} = props; \n return (\n <div class={`nudges-card ${coachingConst.NUDGE_DATA[msgData?.expression]?.className}`} id={`${msgData?.actionId}`}>\n {coachingConst.NUDGE_DATA[msgData?.expression]?.icon && (\n <div class=\"icon_block\">\n <i class={coachingConst.NUDGE_DATA[msgData?.expression]?.icon}></i>\n </div>\n )}\n <p>{msgData?.message?.title}</p>\n <button class=\"close-nudge aa-close-nudge\">\n <i class=\"krIocnsFont-close-md\"></i>\n </button>\n </div>\n\n )\n }\n \n const closeNudge = (uQ: any) => {\n let inx = nudges.findIndex((item: any)=> item.actionId === uQ);\n if(inx >= 0){\n const nudgeElement = document.getElementById(`${uQ}`);\n if (nudgeElement) {\n nudgeElement.remove();\n nudges.splice(inx, 1);\n setCoachingNudges(prevNudges => prevNudges.filter((nudge: any) => nudge.actionId !== uQ));\n }\n }\n }\n\n const handleHintData = (hintObject: any) => {\n let uQ = hintObject.actionId;\n hints.unshift(hintObject);\n setCoachingHints(prevHints => [hintObject, ...prevHints]);\n // this.hintScrollBottom(true);\n const HintBanner = getHTML(hintHTMLEle, hintObject, hostInstance);\n const hintEle = document.getElementsByClassName(ClassMapConstanst.HINT_TEMPLATE)[0];\n if(hintObject?.message?.postAction !== 'doesnot_auto_close'){\n setTimeout(() => {\n let inx = hints.findIndex((item: any)=> item.actionId === uQ);\n if(inx >= 0){\n const hintElement = document.getElementById(`${uQ}`);\n if (hintElement) {\n hintElement.remove();\n hints.splice(inx, 1);\n setCoachingHints(prevHints => prevHints.filter((hints: any) => hints.actionId !== uQ));\n }\n }\n }, (hintObject.message?.time < 900 ? hintObject.message?.time : 900) * 1000);\n }\n hostInstance.eventManager?.addEventListener(`.${ClassMapConstanst.HINT_CLOSE}`, 'click', () => {\n closeHint(uQ);\n }, HintBanner)\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, HintBanner, {event: SDK_EVENTS.HINT_TEMPLATE, hintObject});\n hintEle.append(HintBanner);\n }\n\n const hintHTMLEle = (props: any) => {\n const {msgData} = props;\n return (\n <div className={`hint-card ${coachingConst?.HINT_DATA[msgData?.expression]?.className}`} style={{ border: coachingConst?.HINT_DATA[msgData?.expression]?.color }} id={`${msgData.actionId}`}>\n <div className=\"top-card-info\">\n {coachingConst?.HINT_DATA[msgData?.expression]?.icon && (\n <div className=\"icon_block\">\n <i className={coachingConst?.HINT_DATA[msgData?.expression]?.icon} style={{ color: coachingConst?.HINT_DATA[msgData?.expression]?.color }}></i>\n </div>\n )}\n <h1>{msgData.message.title}</h1>\n <button className=\"close-hint aa-close-hint\" >\n <i className=\"krIocnsFont-close-md\"></i>\n </button>\n </div>\n <div className=\"body-hint\">\n <p>{msgData.message.body}</p>\n </div>\n <div className=\"footer-hint\">\n {msgData.adherence?.adType === 'ack' && (\n <button>\n {msgData.adherence?.ackText}\n </button>\n )}\n </div>\n </div>\n );\n }\n\n const closeHint = (uQ: any) => {\n let inx = hints.findIndex((item: any)=> item.actionId === uQ);\n if(inx >= 0){\n const hintElement = document.getElementById(`${uQ}`);\n if (hintElement) {\n hintElement.remove();\n hints.splice(inx, 1);\n setCoachingHints(prevHints => prevHints.filter((hints: any) => hints.actionId !== uQ));\n }\n }\n }\n \n // const hintScrollBottom = (flag: any) => {\n // if(flag && this.overlayhint){\n // this.overlayhint.nativeElement.scrollTop = 0;\n // }\n // }\n \n const hintAckPressed = (data: any) => {\n data[\"ackPressed\"] = true;\n hostInstance.socketConnection.emitEvents(EVENTS.agent_coaching_ackpress, data);\n }\n\n useEffect(() => {\n },[]);\n const addHeaderTemplate = () => {\n let headerTemplate : any;\n headerTemplate = getHTML(Header, {}, hostInstance);\n let headerSection = hostInstance.chatEle.querySelector(classConstants.HEADER);\n if(headerSection && headerTemplate){\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, headerTemplate, { event: SDK_EVENTS.HEADER_TEMPLATE, data : {}});\n headerSection.append(headerTemplate);\n hostInstance?.eventManager?.addEventListener(`#${idMapConstants.PROACTIVE_BTN}`, 'click', (event: any) => {\n hostInstance?.emit(DATA_EVENTS.PRO_ACTIVE_CHANGE, event.target.checked);\n hostInstance?.handleOverrideMode(!event.target.checked);\n }, headerTemplate);\n }\n }\n\n const addFooterTemplate = () => {\n let allTabs: any;\n allTabs = getHTML(AllTabs,\n {\n tabsNTitles, selectedTab : serTabMap[selectTab], showTranscript: hostInstance.rootService.connectionDetails.channel === ProjConstants.VOICE, connectionDetails,\n sourceDesktop, hideUserBotHistory, projConstants: Tabs,\n selectedTheme, chooseTheme: chooseTheme, hostInstance\n },\n hostInstance);\n\n let footerTag = hostInstance.chatEle.querySelector(classConstants.FOOTER);\n\n if (footerTag) {\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, allTabs, { event: SDK_EVENTS.FOOTER_TEMPLATE, data : {tabsNTitles, footerTag}});\n footerTag.append(allTabs);\n tabsNTitles.forEach((tab: any) => {\n hostInstance.eventManager?.addEventListener(`${classConstants.FOOTER_BTN}${tab.type}`, 'click', () => {\n toggleActiveTab(tab.type, footerTag);\n }, footerTag);\n });\n }\n }\n\n const toggleActiveTab = (activeTab: any, footerTag: any) => { \n updateTabActive(activeTab);\n tabsNTitles.forEach((tab) => {\n let footerTabEle = footerTag.querySelector(`${classConstants.FOOTER_BTN}${tab.type}`);\n if (tab.type === activeTab) {\n footerTabEle?.classList?.add(...[\"selected-tab\", \"sel-bg\"]);\n } else {\n footerTabEle?.classList?.remove(...[\"selected-tab\", \"sel-bg\"]);\n }\n })\n }\n\n const updateTabActive = (tab : string, removeOtherTabs = true)=>{\n rootServiceInstance.activeTab = serviceTabMap[tab];\n if(removeOtherTabs){\n setAssistTabActive(false);\n setMybotTabActive(false);\n setSearchTabActive(false);\n setTranscriptTabActive(false);\n }\n switch (tab) {\n case 'ast':\n setAssistTabActive(true);\n break;\n case 'srch':\n setSearchTabActive(true);\n break;\n case 'mB':\n setMybotTabActive(true);\n break;\n case 'trnspt':\n setTranscriptTabActive(true);\n break;\n\n default:\n setAssistTabActive(true);\n break;\n }\n }\n \n return (\n <div className={chatContainerClass} aria-label='agent-window-section'>\n <section className=\"section-agent-aa-wrapper\">\n <header className=\"aa-header\">\n </header>\n <section className=\"body-container-aa\">\n <div className={assistTabActive ? 'animate-compo-slide-up-wrapper' : 'aa-hidden'}>\n <Assist hostInstance={hostInstance}/>\n </div>\n <div className={searchTabActive ? 'animate-compo-slide-up-wrapper' : 'aa-hidden'}>\n <Search hostInstance={hostInstance}/>\n </div>\n {<div className={transcriptTabActive ? 'animate-compo-slide-up-wrapper' : 'aa-hidden'}>\n <Transcript hostInstance={hostInstance}/>\n </div>}\n <div className={mybotTabActive ? 'animate-compo-slide-up-wrapper' : 'aa-hidden'}>\n <MyBot hostInstance={hostInstance}/>\n </div>\n </section>\n <footer className=\"aa-footer\">\n </footer>\n <div className=\"nudges-wrapper-fixed \">\n <div className=\"nudges-template-data aa-nudges-template-data\">\n </div>\n </div>\n\n <div className=\"hints-wrapper-fixed \">\n <div className=\"hints-template-data aa-hints-template-data\">\n </div>\n </div>\n\n <div className=\"summery-wrapper-container aa-d-none\">\n <div className=\"summery-popup-data\" id=\"summary\">\n <div className=\"title-block\">\n <h1>Summary</h1>\n <div className=\"ai-block\">\n <svg width=\"19\" height=\"14\" viewBox=\"0 0 19 14\" fill=\"none\">\n <path d=\"M9.99979 5.81524V8.01866C9.56245 8.60838 8.98161 8.80996 8.40024 8.80996C7.3657 8.80996 6.64453 7.93073 6.64453 6.92499C6.64453 5.90316 7.3657 5.00732 8.40024 5.00732C8.98161 5.00732 9.56245 5.21212 9.99979 5.81524Z\" fill=\"#111827\"/>\n <path d=\"M16.4016 0.310059H4.49325C4.21767 0.309988 3.94477 0.36504 3.69014 0.47207C3.43552 0.579099 3.20415 0.73601 3.00926 0.93384C2.81437 1.13167 2.65978 1.36654 2.5543 1.62505C2.44882 1.88355 2.39453 2.16062 2.39453 2.44043V9.25632C3.97002 9.26274 5.2009 10.4831 5.2009 12.0474C5.20345 12.5621 5.06557 13.0674 4.80255 13.5074H16.4016C16.9579 13.507 17.4914 13.2824 17.8848 12.883C18.2782 12.4836 18.4994 11.9419 18.4998 11.3771V2.44257C18.5001 2.1626 18.4461 1.88532 18.3408 1.62657C18.2355 1.36782 18.081 1.13269 17.8861 0.934628C17.6913 0.736565 17.4598 0.579454 17.2051 0.472284C16.9504 0.365115 16.6773 0.309988 16.4016 0.310059ZM12.2015 10.4932H10.234V9.94594C9.71132 10.2921 9.0748 10.4932 8.3113 10.4932C6.44232 10.4932 4.92796 8.91285 4.92796 6.91516C4.92796 4.88858 6.44232 3.32104 8.3113 3.32104C9.07322 3.32104 9.71132 3.5222 10.234 3.86834V3.32104H12.2015V10.4932ZM15.9679 10.4932H14.0004V3.32104H15.9706L15.9679 10.4932Z\" fill=\"#111827\"/>\n <path d=\"M2.16101 10.5996C1.30956 10.5996 0.605469 11.2231 0.605469 12.0442C0.605469 12.884 1.30956 13.5075 2.16101 13.5075C3.03295 13.5075 3.73705 12.884 3.73705 12.0442C3.73705 11.2226 3.03295 10.5996 2.16101 10.5996Z\" fill=\"#111827\"/>\n </svg>\n <span>Suggested</span>\n <button type=\"button\" className=\"close-summery\">\n <svg width=\"20\" height=\"21\" viewBox=\"0 0 20 21\" fill=\"none\">\n <path d=\"M15 5.2002L5 15.2002M5 5.2002L15 15.2002\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n </div>\n </div>\n <div className=\"input-block\">\n <textarea className=\"input-control\" id=\"summaryText\" placeholder=\"Type Summary...\" rows={4} cols={50}></textarea>\n <button className=\"recylin-bin-btn\">\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n <path d=\"M13.3333 4.99996V4.33329C13.3333 3.39987 13.3333 2.93316 13.1517 2.57664C12.9919 2.26304 12.7369 2.00807 12.4233 1.84828C12.0668 1.66663 11.6001 1.66663 10.6667 1.66663H9.33333C8.39991 1.66663 7.9332 1.66663 7.57668 1.84828C7.26308 2.00807 7.00811 2.26304 6.84832 2.57664C6.66667 2.93316 6.66667 3.39987 6.66667 4.33329V4.99996M8.33333 9.58329V13.75M11.6667 9.58329V13.75M2.5 4.99996H17.5M15.8333 4.99996V14.3333C15.8333 15.7334 15.8333 16.4335 15.5608 16.9683C15.3212 17.4387 14.9387 17.8211 14.4683 18.0608C13.9335 18.3333 13.2335 18.3333 11.8333 18.3333H8.16667C6.76654 18.3333 6.06647 18.3333 5.53169 18.0608C5.06129 17.8211 4.67883 17.4387 4.43915 16.9683C4.16667 16.4335 4.16667 15.7334 4.16667 14.3333V4.99996\" stroke=\"#D92D20\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n </div>\n <div className=\"actions-footer\">\n <div className=\"footer-btns-left-sec\">\n <button className=\"aa_btn primaryBtn\" id=\"summarySubmit\">Submit</button>\n <button className=\"aa_btn aa-solidbtn\" id=\"summaryCopy\">Copy</button>\n </div>\n </div>\n </div>\n </div>\n\n {/* <div id=\"loader\" className=\"loader-progress\">\n <div className=\"loading-border\"></div>\n </div>\n\n <div id=\"loader\" className=\"loader-progress-individual\">\n <div className=\"loading-border\"></div>\n </div> */}\n </section>\n </div>\n );\n}\n","import { Fragment, h } from 'preact';\nimport { useEffect, useState } from 'preact/hooks';\nimport { SDK_EVENTS, EVENTS } from '../../../constants/events.cnst';\nimport { ClassMapConstanst, IdMapConstant, ProjConstants } from '../../../constants/projConsts';\nimport { getHTML } from '../../base/domManager';\nimport { ArticleSuggestion, ArticleViewMoreLessButtons } from '../suggestions/article/article';\nimport { FAQSuggestion, FAQViewMoreLessButtons } from '../suggestions/faq/faq';\nimport { FileSuggestion, FileViewMoreLessButtons } from '../suggestions/file/file';\nimport { SnippetSuggestion } from '../suggestions/snippet/snippet';\nimport {SuggestionPlaceholder} from '../suggestion-placeholder/suggestion-placeholder';\nimport './assist-suggestions.scss';\n\n\nexport function AssistSuggestions(props: any) {\n \n const [searchResponse, setSearchResponse] = useState(props.suggestions.searchResponse);\n const [hideActionButtons, setHideActionButtons] = useState(false);\n const [hideSendButton, setHideSendButton] = useState(false);\n const [hideCopyButton, setHideCopyButton] = useState(false);\n const hostInstance = props.hostInstance;\n const rootServiceInstance = hostInstance.rootService;\n\n const classConstants : any = ClassMapConstanst;\n const idConstants : any = IdMapConstant;\n\n useEffect(() => { \n setSuggestions();\n }, []);\n\n useEffect(() => {\n if(props.ambiguityToken && Object.keys(props.ambiguityToken)?.length > 0){\n let faqId = idConstants.ASSIST_FAQ_SUGGESTION + props.suggestionIndex;\n rootServiceInstance.handleFaqAmbiguityDescElement(faqId, props.ambiguityToken, searchResponse?.faqs, hideActionButtons, hideCopyButton, hideSendButton, hostInstance);\n }\n }, [props.suggestions]);\n\n const setSuggestions = () => {\n let faqSuggestionElement = document.getElementById(idConstants.ASSIST_FAQ_SUGGESTION + props.suggestionIndex);\n let snippetSuggestionElement = document.getElementById(idConstants.ASSIST_SNIPPET_SUGGESTION + props.suggestionIndex);\n let articleSuggestionElement = document.getElementById(idConstants.ASSIST_ARTICLE_SUGGESTION + props.suggestionIndex);\n let fileSuggestionElement = document.getElementById(idConstants.ASSIST_FILE_SUGGESTION + props.suggestionIndex);\n\n hideSendAndCopy();\n\n if ((searchResponse?.faqs || [])?.length) {\n let faqHtml: any;\n let faqMoreLessActionHtml: any;\n faqHtml = getHTML(FAQSuggestion, { searchResponse: searchResponse, hostInstance: hostInstance, faqs: searchResponse.faqs, viewCount: 2 }, hostInstance);\n faqMoreLessActionHtml = getHTML(FAQViewMoreLessButtons, { hostInstance: hostInstance, faqs: searchResponse.faqs, moreClick: false }, hostInstance);\n if (faqMoreLessActionHtml) {\n faqHtml?.append(faqMoreLessActionHtml);\n }\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, faqHtml, { event: SDK_EVENTS.FAQ_TEMPLATE, data: searchResponse.faqs });\n faqSuggestionElement?.append(faqHtml);\n\n let faqListHTML = faqHtml.querySelectorAll(classConstants.SUGGESTION_EACH);\n\n rootServiceInstance.renderEachFaqInSuggestionList(searchResponse, faqListHTML, hideActionButtons, hideCopyButton, hideSendButton, hostInstance, true, props);\n\n //more and less article button click events handling\n if (faqMoreLessActionHtml) {\n rootServiceInstance.handleSuggestionMoreClickEvent(faqMoreLessActionHtml, faqSuggestionElement, faqListHTML, hostInstance);\n rootServiceInstance.handleSuggestionLessClickEvent(faqMoreLessActionHtml, faqSuggestionElement, faqListHTML, hostInstance);\n }\n }\n\n if (searchResponse?.snippets?.length) {\n let snippetHtml: any;\n snippetHtml = getHTML(SnippetSuggestion, { searchResponse: searchResponse, hostInstance: hostInstance, snippets: searchResponse.snippets }, hostInstance);\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, snippetHtml, { event: SDK_EVENTS.SNIPPET_TEMPLATE, data: searchResponse.snippets });\n snippetSuggestionElement?.append(snippetHtml);\n let snippetListHtml = snippetHtml.querySelectorAll(classConstants.SUGGESTION_EACH);\n rootServiceInstance.renderEachSnippetInSuggestionList(searchResponse, snippetListHtml, hideActionButtons, hideCopyButton, hideSendButton, hostInstance);\n }\n\n if ((searchResponse?.articles || [])?.length > 0) {\n let articleHtml: any;\n let articleMoreLessActionHtml: any;\n articleHtml = getHTML(ArticleSuggestion, { searchResponse: searchResponse, hostInstance: hostInstance, articles: searchResponse.articles, viewCount: 2 }, hostInstance);\n articleMoreLessActionHtml = getHTML(ArticleViewMoreLessButtons, { hostInstance: hostInstance, articles: searchResponse.articles, moreClick: false }, hostInstance);\n if (articleMoreLessActionHtml) {\n articleHtml?.append(articleMoreLessActionHtml);\n }\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, articleHtml, { event: SDK_EVENTS.ARTICE_TEMPLATE, data: searchResponse.articles });\n articleSuggestionElement?.append(articleHtml);\n // send, copy and link buttons of article click events handling.\n let articlesListHTML = articleHtml.querySelectorAll(classConstants.SUGGESTION_EACH);\n\n rootServiceInstance.renderEachArticleInSuggestionList(searchResponse, articlesListHTML, hideActionButtons, hideCopyButton, hideSendButton, hostInstance);\n\n //more and less article button click events handling\n if (articleMoreLessActionHtml) {\n rootServiceInstance.handleSuggestionMoreClickEvent(articleMoreLessActionHtml, articleSuggestionElement, articlesListHTML, hostInstance);\n rootServiceInstance.handleSuggestionLessClickEvent(articleMoreLessActionHtml, articleSuggestionElement, articlesListHTML, hostInstance);\n }\n }\n\n if (searchResponse?.files?.length) {\n let fileHtml: any;\n let fileMoreLessActionHtml: any;\n fileHtml = getHTML(FileSuggestion, { searchResponse: searchResponse, hostInstance: hostInstance, files: searchResponse.files }, hostInstance);\n fileMoreLessActionHtml = getHTML(FileViewMoreLessButtons, { hostInstance: hostInstance, files: searchResponse.files, moreClick: false }, hostInstance);\n if (fileMoreLessActionHtml) {\n fileHtml?.append(fileMoreLessActionHtml);\n }\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, fileHtml, { event: SDK_EVENTS.FILE_TEMPLATE, data: searchResponse.files });\n fileSuggestionElement?.append(fileHtml);\n // send, copy and link buttons of file click events handling.\n let filesListHtml = fileHtml.querySelectorAll(classConstants.SUGGESTION_EACH);\n\n rootServiceInstance.renderEachFileInSuggestionList(searchResponse, filesListHtml, hideActionButtons, hideCopyButton, hideSendButton, hostInstance);\n\n \n //more and less file button click events handling\n if (fileMoreLessActionHtml) {\n rootServiceInstance.handleSuggestionMoreClickEvent(fileMoreLessActionHtml, fileSuggestionElement, filesListHtml, hostInstance);\n rootServiceInstance.handleSuggestionLessClickEvent(fileMoreLessActionHtml, fileSuggestionElement, filesListHtml, hostInstance);\n }\n }\n checkFaqAnswerNotRenderCountAndRequest();\n }\n\n const checkFaqAnswerNotRenderCountAndRequest = () => {\n const answerNotRenderedElements = searchResponse.faqs?.filter((faq: any, index : any) => {\n if (!faq.answer) {\n faq.index = index;\n return true;\n }\n return false;\n });\n if (answerNotRenderedElements?.length === 1) {\n getFaqAnswerAndToggle(answerNotRenderedElements[0], answerNotRenderedElements[0]?.index);\n }\n };\n\n const getFaqAnswerAndToggle = (faq: any, index : number) => {\n let faqId = idConstants.ASSIST_FAQ_SUGGESTION + props.suggestionIndex;\n rootServiceInstance.toggleArrows(index, faqId);\n faq.toggle = !faq.toggle;\n faq.seeMoreWrapper = false;\n rootServiceInstance.checkAnswerAndToggleForAssist(faq, index, hostInstance, props);\n };\n\n const hideSendAndCopy = () => {\n // Both send and copy\n let hideCopyButton = false;\n let hideSendButton = false;\n\n setHideActionButtons((rootServiceInstance.connectionDetails.channel === ProjConstants.VOICE) ? true : false);\n\n //send Button\n if (rootServiceInstance?.settingsData?.isAgentResponseEnabled === false) {\n setHideSendButton(true);\n hideSendButton = true;\n }\n\n if (rootServiceInstance?.settingsData?.isAgentResponseCopyEnabled === false) {\n setHideCopyButton(true);\n hideCopyButton = true;\n }\n\n if (hideSendButton && hideCopyButton) {\n setHideActionButtons(true);\n }\n }\n\n return (\n <Fragment>\n {(Object.keys(searchResponse)?.length > 0) && (\n <div className=\"assist-suggestions-list\">\n <SuggestionPlaceholder hostInstance={hostInstance} searchResponse={searchResponse} suggestionIndex={props.suggestionIndex} isAssist ={true}/>\n </div>\n )}\n </Fragment>\n )\n}\n","import { Fragment, h } from 'preact';\nimport { useState, useEffect, useRef, useCallback } from 'preact/hooks';\nimport { SDK_EVENTS } from '../../../constants/events.cnst';\nimport './search.scss';\nimport { ArticleSuggestion, ArticleViewMoreLessButtons } from '../suggestions/article/article';\nimport { FAQSuggestion, FAQViewMoreLessButtons } from '../suggestions/faq/faq';\nimport { SnippetSuggestion } from '../suggestions/snippet/snippet';\nimport { FileSuggestion, FileViewMoreLessButtons } from '../suggestions/file/file';\nimport { getHTML } from '../../../templatemanager/base/domManager';\nimport { ClassMapConstanst, IdMapConstant, ProjConstants } from '../../../constants/projConsts';\nimport { SuggestionPlaceholder } from '../suggestion-placeholder/suggestion-placeholder';\n\n\nexport function searchInputTemplate() {\n return <div className=\"input-block aa-input-block\">\n <input\n id=\"aa-search-input\"\n type=\"text\"\n className=\"input-control\"\n aria-describedby=\"search\"\n placeholder=\"Ask a customer\"\n value=\"\"\n // onKeyUp={(e) => (e.key === 'Enter' && getSearchResults(e)) || (e.key !== 'Enter' && onSearch(e))}\n />\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" className=\"aa-input-search-icon\">\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M8.33342 1.66675C4.65152 1.66675 1.66675 4.65152 1.66675 8.33342C1.66675 12.0153 4.65152 15.0001 8.33342 15.0001C9.87401 15.0001 11.2925 14.4775 12.4215 13.6L16.9108 18.0893C17.2363 18.4148 17.7639 18.4148 18.0893 18.0893C18.4148 17.7639 18.4148 17.2363 18.0893 16.9108L13.6 12.4215C14.4775 11.2925 15.0001 9.87401 15.0001 8.33342C15.0001 4.65152 12.0153 1.66675 8.33342 1.66675ZM3.33341 8.33342C3.33341 5.57199 5.57199 3.33341 8.33342 3.33341C11.0948 3.33341 13.3334 5.57199 13.3334 8.33342C13.3334 11.0948 11.0948 13.3334 8.33342 13.3334C5.57199 13.3334 3.33341 11.0948 3.33341 8.33342Z\"\n fill=\"#667085\"\n />\n </svg>\n\n\n <button className=\"clear-search aa-input-search-close aa-hidden\">\n <svg width=\"20\" height=\"21\" viewBox=\"0 0 20 21\" fill=\"none\">\n <path d=\"M15 5.2002L5 15.2002M5 5.2002L15 15.2002\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n </div>\n}\n\n\n\nexport function Search({ hostInstance }: any) {\n\n interface SearchResponse {\n faqs?: { question: string; answer: string[] }[];\n articles?: { title: string; content: string }[];\n files?: { title: string; content: string }[];\n snippets?: { snippet: string }[];\n dialogs?: { dialog: string }[];\n totalSearchResults?: number;\n }\n\n const [searchText, setSearchText]: any = useState({ value: '', isEntered: false, stTime : null, edTime : null });\n const [autocompleteText, setAutocompleteText] = useState('');\n // const [rootServiceInstance.answerPlaceableIDs, setAnswerPlaceableIDs] = useState<AnswerPlaceableID[]>([]);\n const [searchResponse, setSearchResponse] = useState<SearchResponse>({});\n const [searched, setSearched] = useState(false);\n const [showSpinner, setShowSpinner] = useState(false);\n const rootServiceInstance = hostInstance.rootService;\n\n const [hideActionButtons, setHideActionButtons] = useState(false);\n const [hideSendButton, setHideSendButton] = useState(false);\n const [hideCopyButton, setHideCopyButton] = useState(false);\n\n const classConstants : any = ClassMapConstanst;\n const idConstants : any = IdMapConstant;\n\n let startTime : any = null;\n let endTime : any = null;\n\n\n useEffect(() => {\n const handleAgentAssistAgentResponse = (agentResponse : any) => {\n if (agentResponse?.suggestions && Object.keys(agentResponse?.suggestions)?.length > 0 && (agentResponse.isSearch || agentResponse.uiunqref)) {\n handleSearchResponse(agentResponse);\n setShowSpinner(false);\n rootServiceInstance.searchedResultData = agentResponse;\n }\n }\n hostInstance.on('AGENT_AI_AGENT_RESPONSE', handleAgentAssistAgentResponse);\n addSearchBlock();\n return () => {\n hostInstance.off('AGENT_AI_AGENT_RESPONSE', handleAgentAssistAgentResponse);\n };\n }, []);\n\n\n useEffect(() => {\n rootServiceInstance.handleSearchText(searchText, hostInstance);\n }, [searchText]);\n\n useEffect(() => {\n enableOrdisableInputCloseIcon(showSpinner);\n }, [showSpinner])\n\n\n useEffect(() => {\n if(!rootServiceInstance.faqAnswerIdsPlace && searchResponse && Object.keys(searchResponse)?.length > 0){ \n setSuggestions();\n checkFaqAnswerNotRenderCountAndRequest();\n }\n }, [searchResponse])\n\n const enableOrdisableInputCloseIcon= (spinner : boolean) => {\n let inputEle = hostInstance?.chatEle?.querySelector(classConstants.SEARCH_INPUT_BLOCK);\n if(inputEle){\n let closeIcon = inputEle?.querySelector(classConstants.SEARCH_INPUT_CLOSE);\n closeIcon.disabled = spinner;\n }\n }\n\n const addSearchBlock =() => {\n let inputHtml = getHTML(searchInputTemplate, { }, hostInstance);\n \n if(inputHtml){\n\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, inputHtml, { event: SDK_EVENTS.SEARCH_INPUT});\n\n hostInstance?.chatEle?.querySelector(classConstants.SEARCH_SUGGESTION_WRAPPER)?.querySelector(`#${idConstants.SEARCH_SUGGESTION_BLOCK}`)?.append(inputHtml);\n\n hostInstance.eventManager?.addEventListener(`#${idConstants.SEARCH_INPUT}`, 'keyup', (e : any) => {\n if(e.key === 'Enter' && e.target.value){\n getSearchResults(e);\n }else {\n onSearch(e);\n }\n }, inputHtml);\n\n hostInstance.eventManager?.addEventListener(classConstants.SEARCH_INPUT_CLOSE, 'click', (e : any) => {\n clearSearch();\n }, inputHtml);\n }\n }\n\n const onSearch = (event: any) => {\n setSearchText({ value: event.target.value, isEntered: false });\n let searchText = event.target.value;\n // if (rootService.settingsData?.searchAssistConfig?.showAutoSuggestions) {\n if (searchText.length > 0) {\n if (autocompleteText === searchText || autocompleteText.includes(searchText)) {\n // setSecondaryIp(true);\n } else {\n // setSecondaryIp(false);\n }\n } else {\n // setSecondaryIp(true);\n clearSearch();\n }\n\n if (searchText?.length > 0 && !startTime) {\n startTime = new Date();\n }\n };\n\n const getSearchResults = (event: any) => {\n setShowSpinner(true);\n setValue(event.target.value, true);\n setAutocompleteText('');\n setTimeout(() => {\n setShowSpinner(false);\n }, 15000);\n };\n\n const setValue = (value: string, isEntered = false) => {\n let stTime = null;\n let edTime = null;\n if(isEntered){\n stTime = startTime;\n edTime = new Date();\n }\n setSearchText({ value, isEntered, stTime, edTime });\n }\n\n const clearSearch = () => {\n setSearchText({ value: '', isEntered: false });\n setAutocompleteText('');\n setSearched(false);\n setSearchResponse({});\n startTime = null;\n rootServiceInstance.faqAnswerIdsPlace = false;\n };\n\n const handleSearchResponse = (response: any) => {\n setSearched(true);\n if (response?.suggestions) {\n if (!response.uiunqref) {\n rootServiceInstance.faqAnswerIdsPlace = false;\n \n let sResponse = (rootServiceInstance.formatSearchResponse(response, true));\n\n if (sResponse && Object.keys(sResponse).length > 0) {\n sResponse = {\n ...sResponse, totalSearchResults: (sResponse.dialogs?.length || 0) +\n (sResponse.faqs?.length || 0) +\n (sResponse.articles?.length || 0) +\n (sResponse.files?.length || 0) +\n (sResponse.snippets?.length || 0)\n }\n setSearchResponse(sResponse);\n }\n } else if(response.uiunqref){\n let ambiguityTokenExt : any = JSON.parse(atob(response.uiunqref));\n response.suggestions.faqs = rootServiceInstance.formatFAQResponse(response.suggestions.faqs);\n rootServiceInstance.faqAnswerIdsPlace = ambiguityTokenExt && ambiguityTokenExt?.question === response.suggestions.faqs[0].question ? true : false; \n if (rootServiceInstance.faqAnswerIdsPlace) {\n const faqWithoutAnswerIndex = response?.suggestions?.faqs?.findIndex((faq : any, index : number) => {\n if (faq.question === ambiguityTokenExt.question) {\n return faq;\n }\n });\n let faqWithoutAnswer : any = {};\n if(faqWithoutAnswerIndex >= 0){\n faqWithoutAnswer = response?.suggestions?.faqs[faqWithoutAnswerIndex]; \n }\n if(faqWithoutAnswer && Object.keys(faqWithoutAnswer)?.length > 0){\n let existingFaqs : any = [];\n setSearchResponse((prevResponse: any) => {\n existingFaqs = prevResponse?.faqs?.map((faq: any, idx : number) => {\n if (faqWithoutAnswer && faqWithoutAnswer.answer && idx === ambiguityTokenExt.index) {\n faq.answer = faqWithoutAnswer.answer;\n }\n if (faqWithoutAnswer) {\n faq.showSpinner = false;\n }\n return faq;\n })\n return prevResponse;\n }); \n rootServiceInstance.handleFaqAmbiguityDescElement(idConstants.SEARCH_FAQ_SUGGESTION, ambiguityTokenExt, existingFaqs, hideActionButtons, hideCopyButton, hideSendButton, hostInstance);\n setSearchResponse((prevResponse: any) => ({\n ...prevResponse,\n faqs: existingFaqs\n }));\n } \n }\n }\n } else {\n setSearchResponse({});\n }\n };\n\n const removeSuggestionFromDom = (suggestionslist: any) => {\n suggestionslist?.forEach((element: any) => {\n if (element) {\n element.innerHTML = '';\n }\n });\n }\n\n const setSuggestions = () => {\n let faqSuggestionElement = document.getElementById(idConstants.SEARCH_FAQ_SUGGESTION);\n let snippetSuggestionElement = document.getElementById(idConstants.SEARCH_SNIPPET_SUGGESTION);\n let articleSuggestionElement = document.getElementById(idConstants.SEARCH_ARTICLE_SUGGESTION);\n let fileSuggestionElement = document.getElementById(idConstants.SEARCH_FILE_SUGGESTION);\n\n hideSendAndCopy();\n\n removeSuggestionFromDom([faqSuggestionElement, snippetSuggestionElement, articleSuggestionElement, fileSuggestionElement]);\n\n if ((searchResponse?.faqs || [])?.length) {\n let faqHtml: any;\n let faqMoreLessActionHtml: any;\n faqHtml = getHTML(FAQSuggestion, { searchResponse: searchResponse, hostInstance: hostInstance, faqs: searchResponse.faqs, viewCount: 2 }, hostInstance);\n faqMoreLessActionHtml = getHTML(FAQViewMoreLessButtons, { hostInstance: hostInstance, faqs: searchResponse.faqs, moreClick: false }, hostInstance);\n if (faqMoreLessActionHtml) {\n faqHtml?.append(faqMoreLessActionHtml);\n }\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, faqHtml, { event: SDK_EVENTS.SEARCH_FAQ_TEMPLATE, data: searchResponse.faqs });\n faqSuggestionElement?.append(faqHtml);\n\n let faqListHTML = faqHtml.querySelectorAll(classConstants.SUGGESTION_EACH);\n\n rootServiceInstance.renderEachFaqInSuggestionList(searchResponse, faqListHTML, hideActionButtons, hideCopyButton, hideSendButton, hostInstance, false, {});\n\n //more and less article button click events handling\n if (faqMoreLessActionHtml) {\n rootServiceInstance.handleSuggestionMoreClickEvent(faqMoreLessActionHtml, faqSuggestionElement, faqListHTML, hostInstance);\n rootServiceInstance.handleSuggestionLessClickEvent(faqMoreLessActionHtml, faqSuggestionElement, faqListHTML, hostInstance);\n }\n }\n\n if (searchResponse?.snippets?.length) {\n let snippetHtml: any;\n snippetHtml = getHTML(SnippetSuggestion, { searchResponse: searchResponse, hostInstance: hostInstance, snippets: searchResponse.snippets }, hostInstance);\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, snippetHtml, { event: SDK_EVENTS.SEARCH_SNIPPET_TEMPLATE, data: searchResponse.snippets });\n snippetSuggestionElement?.append(snippetHtml);\n // send, copy and link buttons of article click events handling.\n let snippetListHtml = snippetHtml.querySelectorAll(classConstants.SUGGESTION_EACH);\n rootServiceInstance.renderEachSnippetInSuggestionList(searchResponse, snippetListHtml, hideActionButtons, hideCopyButton, hideSendButton, hostInstance);\n }\n\n if ((searchResponse?.articles || [])?.length > 0) {\n let articleHtml: any;\n let articleMoreLessActionHtml: any;\n articleHtml = getHTML(ArticleSuggestion, { searchResponse: searchResponse, hostInstance: hostInstance, articles: searchResponse.articles, viewCount: 2 }, hostInstance);\n articleMoreLessActionHtml = getHTML(ArticleViewMoreLessButtons, { hostInstance: hostInstance, articles: searchResponse.articles, moreClick: false }, hostInstance);\n if (articleMoreLessActionHtml) {\n articleHtml?.append(articleMoreLessActionHtml);\n }\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, articleHtml, { event: SDK_EVENTS.SEARCH_ARTICE_TEMPLATE, data: searchResponse.articles });\n articleSuggestionElement?.append(articleHtml);\n // send, copy and link buttons of article click events handling.\n let articlesListHTML = articleHtml.querySelectorAll(classConstants.SUGGESTION_EACH);\n rootServiceInstance.renderEachArticleInSuggestionList(searchResponse, articlesListHTML, hideActionButtons, hideCopyButton, hideSendButton, hostInstance);\n\n //more and less article button click events handling\n if (articleMoreLessActionHtml) {\n rootServiceInstance.handleSuggestionMoreClickEvent(articleMoreLessActionHtml, articleSuggestionElement, articlesListHTML, hostInstance);\n rootServiceInstance.handleSuggestionLessClickEvent(articleMoreLessActionHtml, articleSuggestionElement, articlesListHTML, hostInstance);\n }\n }\n\n if (searchResponse?.files?.length) {\n let fileHtml: any;\n let fileMoreLessActionHtml: any;\n fileHtml = getHTML(FileSuggestion, { searchResponse: searchResponse, hostInstance: hostInstance, files: searchResponse.files }, hostInstance);\n fileMoreLessActionHtml = getHTML(FileViewMoreLessButtons, { hostInstance: hostInstance, files: searchResponse.files, moreClick: false }, hostInstance);\n if (fileMoreLessActionHtml) {\n fileHtml?.append(fileMoreLessActionHtml);\n }\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, fileHtml, { event: SDK_EVENTS.SEARCH_FILE_TEMPLATE, data: searchResponse.files });\n fileSuggestionElement?.append(fileHtml);\n // send, copy and link buttons of article click events handling.\n let filesListHtml = fileHtml.querySelectorAll(classConstants.SUGGESTION_EACH);\n rootServiceInstance.renderEachFileInSuggestionList(searchResponse, filesListHtml, hideActionButtons, hideCopyButton, hideSendButton, hostInstance);\n //more and less article button click events handling\n if (fileMoreLessActionHtml) {\n rootServiceInstance.handleSuggestionMoreClickEvent(fileMoreLessActionHtml, fileSuggestionElement, filesListHtml, hostInstance);\n rootServiceInstance.handleSuggestionLessClickEvent(fileMoreLessActionHtml, fileSuggestionElement, filesListHtml, hostInstance);\n }\n }\n }\n \n const checkFaqAnswerNotRenderCountAndRequest = () => {\n const answerNotRenderedElements : any = searchResponse.faqs?.filter((faq: any, index : any) => {\n if(!faq.answer){\n faq.index = index;\n return true;\n }\n return false;\n });\n if (answerNotRenderedElements?.length === 1) {\n getFaqAnswerAndToggle(answerNotRenderedElements[0], answerNotRenderedElements[0]?.index);\n }\n };\n\n const getFaqAnswerAndToggle = (faq: any, index : any) => {\n faq.toggle = !faq.toggle;\n faq.seeMoreWrapper = false;\n let faqId = idConstants.SEARCH_FAQ_SUGGESTION;\n rootServiceInstance.toggleArrows(index, faqId);\n rootServiceInstance.checkAnswerAndToggleForSearch(faq, index, hostInstance);\n };\n\n const hideSendAndCopy = () => {\n // Both send and copy\n let hideCopyButton = false;\n let hideSendButton = false;\n\n setHideActionButtons((rootServiceInstance.connectionDetails.channel === ProjConstants.VOICE) ? true : false);\n\n //send Button\n if (rootServiceInstance?.settingsData?.isAgentResponseEnabled === false) {\n setHideSendButton(true);\n hideSendButton = true;\n }\n\n if (rootServiceInstance?.settingsData?.isAgentResponseCopyEnabled === false) {\n setHideCopyButton(true);\n hideCopyButton = true;\n }\n\n if (hideSendButton && hideCopyButton) {\n setHideActionButtons(true);\n }\n }\n\n return (\n <div className=\"search-block-data-suggestions-wrapper aa-search-suggestion-wrapper\">\n <div class=\"search-block-data-suggestions\">\n <div className=\"suggestionslist-conntent-search\">\n {(Object.keys(searchResponse)?.length > 0 || searched) && <Fragment>\n <SuggestionPlaceholder hostInstance={hostInstance} searchResponse={searchResponse} isAssist ={false}/>\n </Fragment>\n }\n {(Object.keys(searchResponse)?.length == 0 && searched && !showSpinner) &&\n <div class=\"empty-search-container-wrapper\">\n <figure>\n <img src=\"/src/assets/images/icons/search-empty.png\" />\n </figure>\n <h1 className=\"aa-text-md m-0 center\">No Search Result Found</h1>\n <p className=\"aa-desc-sm m-0 center\">\"Could you rephrase your question or ask something else?\"</p>\n </div>\n }\n {showSpinner && \n <div id=\"loader\" className=\"loader-progress-individual\">\n <div className=\"loading-border\"></div>\n </div>\n }\n {(Object.keys(searchResponse)?.length == 0 && !searched && !showSpinner) &&\n <div class=\"empty-search-container-wrapper\">\n <figure>\n <img src=\"/src/assets/images/icons/search-empty.png\" />\n </figure>\n <p className=\"aa-desc-sm m-0 center\">Type to search</p>\n </div>\n }\n </div>\n <div className=\"search-block-input\" id=\"searchSuggestionsBlock\">\n </div>\n </div>\n </div>\n );\n};\n\nexport default Search;\n","import { Fragment, h } from \"preact\";\nimport {IdMapConstant} from \"../../../constants/projConsts\";\n\nexport function SuggestionPlaceholder(props : any){\n\n const idConstants : any = IdMapConstant;\n\n return (\n <Fragment>\n {(props.searchResponse?.faqs || [])?.length > 0 && (\n <div className=\"sugestions-block\">\n <div className=\"suggestion-header\">\n <div className=\"icon_block\">\n <figure>\n <img src=\"/src/assets/images/icons/dialog.svg\" alt=\"Article Suggestions\" />\n </figure>\n </div>\n <h1 className=\"aa-text-xxs semibold text-truncate\">FAQ</h1>\n <span className=\"count-text aa-text-xxs\">{props.searchResponse?.faqs?.length}</span>\n <span class=\"by-n-ai\">\n <span class=\"snippet-by-label aa-desc-xxs\">by</span>\n <svg width=\"19\" height=\"14\" viewBox=\"0 0 19 14\" fill=\"none\">\n <path d=\"M9.99979 5.81573V8.01915C9.56245 8.60887 8.98161 8.81044 8.40024 8.81044C7.3657 8.81044 6.64453 7.93122 6.64453 6.92548C6.64453 5.90365 7.3657 5.00781 8.40024 5.00781C8.98161 5.00781 9.56245 5.21261 9.99979 5.81573Z\" fill=\"#111827\" />\n <path d=\"M16.4016 0.310059H4.49325C4.21767 0.309988 3.94477 0.36504 3.69014 0.47207C3.43552 0.579099 3.20415 0.73601 3.00926 0.93384C2.81437 1.13167 2.65978 1.36654 2.5543 1.62505C2.44882 1.88355 2.39453 2.16062 2.39453 2.44043V9.25632C3.97002 9.26274 5.2009 10.4831 5.2009 12.0474C5.20345 12.5621 5.06557 13.0674 4.80255 13.5074H16.4016C16.9579 13.507 17.4914 13.2824 17.8848 12.883C18.2782 12.4836 18.4994 11.9419 18.4998 11.3771V2.44257C18.5001 2.1626 18.4461 1.88532 18.3408 1.62657C18.2355 1.36782 18.081 1.13269 17.8861 0.934628C17.6913 0.736565 17.4598 0.579454 17.2051 0.472284C16.9504 0.365115 16.6773 0.309988 16.4016 0.310059ZM12.2015 10.4932H10.234V9.94594C9.71132 10.2921 9.0748 10.4932 8.3113 10.4932C6.44232 10.4932 4.92796 8.91285 4.92796 6.91516C4.92796 4.88858 6.44232 3.32104 8.3113 3.32104C9.07322 3.32104 9.71132 3.5222 10.234 3.86834V3.32104H12.2015V10.4932ZM15.9679 10.4932H14.0004V3.32104H15.9706L15.9679 10.4932Z\" fill=\"#111827\" />\n <path d=\"M2.16101 10.5996C1.30956 10.5996 0.605469 11.2231 0.605469 12.0442C0.605469 12.884 1.30956 13.5075 2.16101 13.5075C3.03295 13.5075 3.73705 12.884 3.73705 12.0442C3.73705 11.2226 3.03295 10.5996 2.16101 10.5996Z\" fill=\"#111827\" />\n </svg>\n </span>\n </div>\n <div className=\"suggestion-body-search\" id={props?.isAssist ? `${idConstants.ASSIST_FAQ_SUGGESTION}${props.suggestionIndex}` : `${idConstants.SEARCH_FAQ_SUGGESTION}`}>\n </div>\n </div>\n )}\n\n {(props.searchResponse?.snippets || [])?.length > 0 && (\n <div className=\"sugestions-block\">\n <div className=\"suggestion-header\">\n <div className=\"icon_block\">\n <figure>\n <img src=\"/src/assets/images/icons/dialog.svg\" alt=\"Article Suggestions\" />\n </figure>\n </div>\n <h1 className=\"aa-text-xxs semibold text-truncate\">Answers</h1>\n <span className=\"count-text aa-text-xxs\">{props.searchResponse?.snippets?.length}</span>\n <span class=\"by-n-ai\">\n <span class=\"snippet-by-label aa-desc-xxs\">by</span>\n <svg width=\"19\" height=\"14\" viewBox=\"0 0 19 14\" fill=\"none\">\n <path d=\"M9.99979 5.81573V8.01915C9.56245 8.60887 8.98161 8.81044 8.40024 8.81044C7.3657 8.81044 6.64453 7.93122 6.64453 6.92548C6.64453 5.90365 7.3657 5.00781 8.40024 5.00781C8.98161 5.00781 9.56245 5.21261 9.99979 5.81573Z\" fill=\"#111827\" />\n <path d=\"M16.4016 0.310059H4.49325C4.21767 0.309988 3.94477 0.36504 3.69014 0.47207C3.43552 0.579099 3.20415 0.73601 3.00926 0.93384C2.81437 1.13167 2.65978 1.36654 2.5543 1.62505C2.44882 1.88355 2.39453 2.16062 2.39453 2.44043V9.25632C3.97002 9.26274 5.2009 10.4831 5.2009 12.0474C5.20345 12.5621 5.06557 13.0674 4.80255 13.5074H16.4016C16.9579 13.507 17.4914 13.2824 17.8848 12.883C18.2782 12.4836 18.4994 11.9419 18.4998 11.3771V2.44257C18.5001 2.1626 18.4461 1.88532 18.3408 1.62657C18.2355 1.36782 18.081 1.13269 17.8861 0.934628C17.6913 0.736565 17.4598 0.579454 17.2051 0.472284C16.9504 0.365115 16.6773 0.309988 16.4016 0.310059ZM12.2015 10.4932H10.234V9.94594C9.71132 10.2921 9.0748 10.4932 8.3113 10.4932C6.44232 10.4932 4.92796 8.91285 4.92796 6.91516C4.92796 4.88858 6.44232 3.32104 8.3113 3.32104C9.07322 3.32104 9.71132 3.5222 10.234 3.86834V3.32104H12.2015V10.4932ZM15.9679 10.4932H14.0004V3.32104H15.9706L15.9679 10.4932Z\" fill=\"#111827\" />\n <path d=\"M2.16101 10.5996C1.30956 10.5996 0.605469 11.2231 0.605469 12.0442C0.605469 12.884 1.30956 13.5075 2.16101 13.5075C3.03295 13.5075 3.73705 12.884 3.73705 12.0442C3.73705 11.2226 3.03295 10.5996 2.16101 10.5996Z\" fill=\"#111827\" />\n </svg>\n </span>\n </div>\n <div className=\"suggestion-body-search\" id={props?.isAssist ? `${idConstants.ASSIST_SNIPPET_SUGGESTION}${props.suggestionIndex}` : `${idConstants.SEARCH_SNIPPET_SUGGESTION}`}>\n </div>\n </div>\n )}\n\n {(props.searchResponse?.articles || [])?.length > 0 && (\n <div className=\"sugestions-block\">\n <div className=\"suggestion-header\">\n <div className=\"icon_block\">\n <figure>\n <img src=\"/src/assets/images/icons/dialog.svg\" alt=\"Article Suggestions\" />\n </figure>\n </div>\n <h1 className=\"aa-text-xxs semibold text-truncate\">Web Pages</h1>\n <span className=\"count-text aa-text-xxs\">{props.searchResponse?.articles?.length}</span>\n <span class=\"by-n-ai\">\n <span class=\"snippet-by-label aa-desc-xxs\">by</span>\n <svg width=\"19\" height=\"14\" viewBox=\"0 0 19 14\" fill=\"none\">\n <path d=\"M9.99979 5.81573V8.01915C9.56245 8.60887 8.98161 8.81044 8.40024 8.81044C7.3657 8.81044 6.64453 7.93122 6.64453 6.92548C6.64453 5.90365 7.3657 5.00781 8.40024 5.00781C8.98161 5.00781 9.56245 5.21261 9.99979 5.81573Z\" fill=\"#111827\" />\n <path d=\"M16.4016 0.310059H4.49325C4.21767 0.309988 3.94477 0.36504 3.69014 0.47207C3.43552 0.579099 3.20415 0.73601 3.00926 0.93384C2.81437 1.13167 2.65978 1.36654 2.5543 1.62505C2.44882 1.88355 2.39453 2.16062 2.39453 2.44043V9.25632C3.97002 9.26274 5.2009 10.4831 5.2009 12.0474C5.20345 12.5621 5.06557 13.0674 4.80255 13.5074H16.4016C16.9579 13.507 17.4914 13.2824 17.8848 12.883C18.2782 12.4836 18.4994 11.9419 18.4998 11.3771V2.44257C18.5001 2.1626 18.4461 1.88532 18.3408 1.62657C18.2355 1.36782 18.081 1.13269 17.8861 0.934628C17.6913 0.736565 17.4598 0.579454 17.2051 0.472284C16.9504 0.365115 16.6773 0.309988 16.4016 0.310059ZM12.2015 10.4932H10.234V9.94594C9.71132 10.2921 9.0748 10.4932 8.3113 10.4932C6.44232 10.4932 4.92796 8.91285 4.92796 6.91516C4.92796 4.88858 6.44232 3.32104 8.3113 3.32104C9.07322 3.32104 9.71132 3.5222 10.234 3.86834V3.32104H12.2015V10.4932ZM15.9679 10.4932H14.0004V3.32104H15.9706L15.9679 10.4932Z\" fill=\"#111827\" />\n <path d=\"M2.16101 10.5996C1.30956 10.5996 0.605469 11.2231 0.605469 12.0442C0.605469 12.884 1.30956 13.5075 2.16101 13.5075C3.03295 13.5075 3.73705 12.884 3.73705 12.0442C3.73705 11.2226 3.03295 10.5996 2.16101 10.5996Z\" fill=\"#111827\" />\n </svg>\n </span>\n </div>\n <div className=\"suggestion-body-search\" id={props?.isAssist ? `${idConstants.ASSIST_ARTICLE_SUGGESTION}${props.suggestionIndex}` : `${idConstants.SEARCH_ARTICLE_SUGGESTION}`}></div>\n </div>\n )}\n\n {(props.searchResponse?.files || [])?.length > 0 && (\n <div className=\"sugestions-block\">\n <div className=\"suggestion-header\">\n <div className=\"icon_block\">\n <figure>\n <img src=\"/src/assets/images/icons/dialog.svg\" alt=\"File Suggestions\" />\n </figure>\n </div>\n <h1 className=\"aa-text-xxs semibold text-truncate\">Files</h1>\n <span className=\"count-text aa-text-xxs\">{props.searchResponse?.files?.length}</span>\n <span class=\"by-n-ai\">\n <span class=\"snippet-by-label aa-desc-xxs\">by</span>\n <svg width=\"19\" height=\"14\" viewBox=\"0 0 19 14\" fill=\"none\">\n <path d=\"M9.99979 5.81573V8.01915C9.56245 8.60887 8.98161 8.81044 8.40024 8.81044C7.3657 8.81044 6.64453 7.93122 6.64453 6.92548C6.64453 5.90365 7.3657 5.00781 8.40024 5.00781C8.98161 5.00781 9.56245 5.21261 9.99979 5.81573Z\" fill=\"#111827\" />\n <path d=\"M16.4016 0.310059H4.49325C4.21767 0.309988 3.94477 0.36504 3.69014 0.47207C3.43552 0.579099 3.20415 0.73601 3.00926 0.93384C2.81437 1.13167 2.65978 1.36654 2.5543 1.62505C2.44882 1.88355 2.39453 2.16062 2.39453 2.44043V9.25632C3.97002 9.26274 5.2009 10.4831 5.2009 12.0474C5.20345 12.5621 5.06557 13.0674 4.80255 13.5074H16.4016C16.9579 13.507 17.4914 13.2824 17.8848 12.883C18.2782 12.4836 18.4994 11.9419 18.4998 11.3771V2.44257C18.5001 2.1626 18.4461 1.88532 18.3408 1.62657C18.2355 1.36782 18.081 1.13269 17.8861 0.934628C17.6913 0.736565 17.4598 0.579454 17.2051 0.472284C16.9504 0.365115 16.6773 0.309988 16.4016 0.310059ZM12.2015 10.4932H10.234V9.94594C9.71132 10.2921 9.0748 10.4932 8.3113 10.4932C6.44232 10.4932 4.92796 8.91285 4.92796 6.91516C4.92796 4.88858 6.44232 3.32104 8.3113 3.32104C9.07322 3.32104 9.71132 3.5222 10.234 3.86834V3.32104H12.2015V10.4932ZM15.9679 10.4932H14.0004V3.32104H15.9706L15.9679 10.4932Z\" fill=\"#111827\" />\n <path d=\"M2.16101 10.5996C1.30956 10.5996 0.605469 11.2231 0.605469 12.0442C0.605469 12.884 1.30956 13.5075 2.16101 13.5075C3.03295 13.5075 3.73705 12.884 3.73705 12.0442C3.73705 11.2226 3.03295 10.5996 2.16101 10.5996Z\" fill=\"#111827\" />\n </svg>\n </span>\n </div>\n <div className=\"suggestion-body-search\" id={props?.isAssist ? `${idConstants.ASSIST_FILE_SUGGESTION}${props.suggestionIndex}` : `${idConstants.SEARCH_FILE_SUGGESTION}`}>\n </div>\n </div>\n )}\n </Fragment>\n )\n}","import { Fragment, h } from 'preact';\nimport './article.scss';\n\n\nexport function ArticleSentText(props: any) {\n return (\n <div className=\"aa-text-xs sent-msg-text aa-sent-text\">\n {/* {props?.msgData?.article.send === 'send' ? 'Sent' : 'Copied'} */}\n </div>\n )\n}\n\n\nexport function ArticleViewMoreLessButtons(props: any) {\n return (\n <>\n {props?.msgData?.articles?.length > 2 && (\n <div className=\"more-links-buttons\">\n <button className=\"more-link-text aa-text-xs aa-hidden aa-less-link\" role=\"link\">Less Article</button>\n <button className=\"more-link-text aa-text-xs aa-more-link\" role=\"link\">More Article</button>\n </div>\n )}\n </>\n )\n}\n\nexport function ArticleSendCopyActionButtons(props: any) {\n return (\n <>\n {!props?.msgData?.hideActionButtons && props?.msgData?.article?.content && !props?.msgData?.article?.internalFlag && (\n <div className=\"action-buttons aa-action-buttons\">\n {!props?.msgData?.hideCopyButton && (\n <button\n className=\"aa-solidbtn aa-copy-btn-suggestion\" aria-label=\"button\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <g clip-path=\"url(#clip0_9506_130502)\">\n <path d=\"M10.6663 10.6663V12.533C10.6663 13.2797 10.6663 13.6531 10.521 13.9383C10.3932 14.1892 10.1892 14.3932 9.93833 14.521C9.65311 14.6663 9.27974 14.6663 8.53301 14.6663H3.46634C2.7196 14.6663 2.34624 14.6663 2.06102 14.521C1.81014 14.3932 1.60616 14.1892 1.47833 13.9383C1.33301 13.6531 1.33301 13.2797 1.33301 12.533V7.46634C1.33301 6.7196 1.33301 6.34624 1.47833 6.06102C1.60616 5.81014 1.81014 5.60616 2.06102 5.47833C2.34624 5.33301 2.7196 5.33301 3.46634 5.33301H5.33301M7.46634 10.6663H12.533C13.2797 10.6663 13.6531 10.6663 13.9383 10.521C14.1892 10.3932 14.3932 10.1892 14.521 9.93833C14.6663 9.65311 14.6663 9.27974 14.6663 8.53301V3.46634C14.6663 2.7196 14.6663 2.34624 14.521 2.06102C14.3932 1.81014 14.1892 1.60616 13.9383 1.47833C13.6531 1.33301 13.2797 1.33301 12.533 1.33301H7.46634C6.7196 1.33301 6.34624 1.33301 6.06102 1.47833C5.81014 1.60616 5.60616 1.81014 5.47833 2.06102C5.33301 2.34624 5.33301 2.7196 5.33301 3.46634V8.53301C5.33301 9.27974 5.33301 9.65311 5.47833 9.93833C5.60616 10.1892 5.81014 10.3932 6.06102 10.521C6.34624 10.6663 6.7196 10.6663 7.46634 10.6663Z\" stroke=\"#101828\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </g>\n <defs>\n <clipPath id=\"clip0_9506_130502\">\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\n </clipPath>\n </defs>\n </svg>\n </button>\n )}\n {!props?.msgData?.hideSendButton && (\n <button className=\"aa-solidbtn aa-text-xxs aa-send-btn-suggestion\" aria-label=\"button\">Send</button>\n )}\n </div>\n )}\n </>\n )\n}\n\nexport function ArticleSuggestion(props: any) {\n return (\n <div>\n {\n (props?.msgData?.articles || [])?.map((article: any, inx: any) => (\n <div className={\"suggestion-item-card aa-each-suggestion \" + (inx < props?.msgData?.viewCount ? '' : 'aa-hidden')}>\n <div className=\"suggestion-header-faq aa-suggestion-header\">\n <div className=\"titles-info-sec aa-suggestion-title\">\n\n {!article.link && article.title && (\n <h2 className=\"aa-text-xs\">{article.title}</h2>\n )}\n {article.link && article.title && (\n <h2 className=\"aa-text-xs\">\n <a className=\"moreText aa-article-link\" role=\"link\">\n {article.title}\n </a>\n </h2>\n )}\n </div>\n </div>\n <div className=\"suggestion-body-faq\">\n <p className=\"aa-desc-xs\" dangerouslySetInnerHTML={{ __html: article?.content }} />\n\n {article.link && !article.title && (\n <div className=\"more-links-buttons\">\n <button className=\"more-link-text aa-text-xs aa-article-link\" role=\"link\">View Full Article</button>\n </div>\n )}\n </div>\n\n </div>\n ))\n\n }\n \n </div>\n )\n}\n\n","import { Fragment, h } from 'preact';\nimport { useState } from 'preact/hooks';\nimport './faq.scss';\n\n\nexport function FaqAnswerPlacement(props : any){\n const [faq, setFaq] = useState(props.msgData?.faq);\n return (\n <Fragment>\n {faq.answer && faq?.answer?.length > 0 && ((faq.toggle && !faq.answerRender) || faq.answerRender) && (\n faq?.answer?.map((ansObj: any, ii: any) => (\n <div className={\"suggestion-body-faq aa-each-suggestion-faq-body \" + (ii <= 0 ? '' : 'aa-hidden')} key={ii}>\n <p className=\"aa-desc-xs\" dangerouslySetInnerHTML={{ __html: ansObj['ans'] }}></p>\n </div>\n ))\n )}\n </Fragment>\n )\n}\n\nexport function FaqExpandCloseBtn(props: any) {\n return (\n <div className=\"more-links-buttons\">\n <button className=\"more-link-text aa-text-xs expand-link aa-close-btn-link aa-hidden\" role=\"link\">Close</button>\n <button className=\"more-link-text aa-text-xs expand-link aa-expand-btn-link\" role=\"link\">Expand/More</button>\n </div>\n )\n}\n\nexport function FaqSentText(props: any) {\n return (\n <div className=\"aa-text-xs sent-msg-text aa-sent-text\">\n {/* {props?.msgData?.ansObj?.send === 'send' ? 'Sent' : 'Copied'} */}\n </div>\n )\n}\n\n\nexport function FAQViewMoreLessButtons(props: any) {\n return (\n <>\n {props?.msgData?.faqs?.length > 2 && (\n <div className=\"more-links-buttons\">\n <button className=\"more-link-text aa-text-xs aa-hidden aa-less-link\" role=\"link\">Less FAQ</button>\n <button className=\"more-link-text aa-text-xs aa-more-link\" role=\"link\">More FAQ</button>\n </div>\n )}\n </>\n )\n}\n\nexport function FAQSendCopyActionButtons(props: any) {\n return (\n <div className={\"action-buttons aa-action-buttons \" + (props?.msgData?.addHideClass ? 'aa-hidden' : '')}>\n {!props?.msgData?.hideCopyButton && (\n <button className=\"aa-solidbtn aa-copy-btn-suggestion\" aria-label=\"button\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <g clip-path=\"url(#clip0_9506_130502)\">\n <path d=\"M10.6663 10.6663V12.533C10.6663 13.2797 10.6663 13.6531 10.521 13.9383C10.3932 14.1892 10.1892 14.3932 9.93833 14.521C9.65311 14.6663 9.27974 14.6663 8.53301 14.6663H3.46634C2.7196 14.6663 2.34624 14.6663 2.06102 14.521C1.81014 14.3932 1.60616 14.1892 1.47833 13.9383C1.33301 13.6531 1.33301 13.2797 1.33301 12.533V7.46634C1.33301 6.7196 1.33301 6.34624 1.47833 6.06102C1.60616 5.81014 1.81014 5.60616 2.06102 5.47833C2.34624 5.33301 2.7196 5.33301 3.46634 5.33301H5.33301M7.46634 10.6663H12.533C13.2797 10.6663 13.6531 10.6663 13.9383 10.521C14.1892 10.3932 14.3932 10.1892 14.521 9.93833C14.6663 9.65311 14.6663 9.27974 14.6663 8.53301V3.46634C14.6663 2.7196 14.6663 2.34624 14.521 2.06102C14.3932 1.81014 14.1892 1.60616 13.9383 1.47833C13.6531 1.33301 13.2797 1.33301 12.533 1.33301H7.46634C6.7196 1.33301 6.34624 1.33301 6.06102 1.47833C5.81014 1.60616 5.60616 1.81014 5.47833 2.06102C5.33301 2.34624 5.33301 2.7196 5.33301 3.46634V8.53301C5.33301 9.27974 5.33301 9.65311 5.47833 9.93833C5.60616 10.1892 5.81014 10.3932 6.06102 10.521C6.34624 10.6663 6.7196 10.6663 7.46634 10.6663Z\" stroke=\"#101828\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </g>\n <defs>\n <clipPath id=\"clip0_9506_130502\">\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\n </clipPath>\n </defs>\n </svg>\n </button>\n )}\n {!props?.msgData?.hideSendButton && (\n <button className=\"aa-solidbtn aa-text-xxs aa-send-btn-suggestion\" aria-label=\"button\">\n Send\n </button>\n )}\n </div>\n )\n}\n\nexport function FAQSuggestion(props: any) {\n\n const getFaqAnswerAndtoggle = (faq: any) => {\n faq.toggle = !faq.toggle;\n faq.seeMoreWrapper = false;\n if (!faq.answer) {\n faq.showSpinner = true;\n // this.faqAnswerToggle.emit(faq);\n }\n }\n\n return (\n <div>\n {props?.msgData?.faqs?.map((faq: any, i: any) => (\n <div className={\"suggestion-item-card aa-each-suggestion \" + (i < props?.msgData?.viewCount ? '' : 'aa-hidden')} key={i}>\n <div className=\"suggestion-header-faq aa-suggestion-header\">\n\n <div className=\"titles-info-sec aa-suggestion-title\">\n {(!faq.displayName || faq.question) && (\n <h2 className=\"aa-text-xs semibold text-truncate\">{faq.displayName || faq.question}</h2>\n )}\n\n {faq.answer && faq?.answer?.length > 1 &&\n ((!faq.seeMoreWrapper && faq.answerRender) || (faq.toggle && !faq.answerRender && !faq.seeMoreWrapper)) && (\n <span className=\"aa-faq-ans-length\">1/{faq?.answer?.length}</span>\n )}\n\n {faq.childBotName && <span className=\"aa-desc-sm semibold child-bot-name text-truncate\">({faq.childBotName})</span>}\n <span className={\"up-down-arrows aa-faq-down-arrow \" + (!faq.answerRender && !faq.toggle ? '' : 'aa-hidden')}>\n <svg width=\"16\" height=\"17\" viewBox=\"0 0 16 17\" fill=\"none\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.36437 10.3494C8.17497 10.5383 7.87481 10.5494 7.67239 10.3828L7.63563 10.3494L3.15093 6.07722C2.94969 5.87653 2.94969 5.55115 3.15093 5.35047C3.34033 5.16158 3.64048 5.15047 3.84291 5.31713L3.87967 5.35047L8 9.25923L12.1203 5.35047C12.3097 5.16158 12.6099 5.15047 12.8123 5.31713L12.8491 5.35047C13.0385 5.53935 13.0496 5.83868 12.8825 6.04056L12.8491 6.07722L8.36437 10.3494Z\" fill=\"#9AA4B2\"/>\n </svg>\n </span>\n <span className={\"up-down-arrows aa-faq-up-arrow \" + (!faq.answerRender && faq.toggle ? '' : 'aa-hidden')}>\n <svg width=\"16\" height=\"17\" viewBox=\"0 0 16 17\" fill=\"none\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.63563 5.35054C7.82503 5.16166 8.12519 5.15055 8.32761 5.31721L8.36437 5.35054L12.8491 9.6227C13.0503 9.82338 13.0503 10.1488 12.8491 10.3494C12.6597 10.5383 12.3595 10.5494 12.1571 10.3828L12.1203 10.3494L8 6.44074L3.87967 10.3494C3.69027 10.5383 3.39012 10.5494 3.18769 10.3828L3.15093 10.3494C2.96153 10.1606 2.95039 9.86123 3.1175 9.65936L3.15093 9.6227L7.63563 5.35054Z\" fill=\"#9AA4B2\"/>\n </svg>\n </span>\n\n <div id=\"loader\" className=\"loader-progress-individual aa-faq-answer-loader aa-hidden\">\n <div className=\"loading-border\"></div>\n </div>\n\n </div>\n </div>\n\n {faq.answer && faq?.answer?.length > 0 && ((faq.toggle && !faq.answerRender) || faq.answerRender) && (\n faq?.answer?.map((ansObj: any, ii: any) => (\n <div className={\"suggestion-body-faq aa-each-suggestion-faq-body \" + (ii <= 0 ? '' : 'aa-hidden')} key={ii}>\n <p className=\"aa-desc-xs\" dangerouslySetInnerHTML={{ __html: ansObj['ans'] }}></p>\n </div>\n ))\n )}\n </div>\n ))}\n </div>\n );\n}\n","import { Fragment, h } from 'preact';\nimport './file.scss';\n\nexport function FileSentText(props: any) {\n return (\n <div className=\"aa-text-xs sent-msg-text aa-sent-text\">\n {/* {props?.msgData?.file?.send === 'send' ? 'Sent' : 'Copied'} */}\n </div>\n )\n}\n\n\nexport function FileViewMoreLessButtons(props: any) {\n return (\n <>\n {props?.msgData?.files?.length > 2 && (\n <div className=\"more-links-buttons\">\n <button className=\"more-link-text aa-text-xs aa-hidden aa-less-link\" role=\"link\">Less File</button>\n <button className=\"more-link-text aa-text-xs aa-more-link\" role=\"link\">More File</button>\n </div>\n )}\n </>\n )\n}\n\nexport function FileSendCopyActionButtons(props: any) {\n return (\n <>\n\n\n {!props?.msgData?.hideActionButtons && props?.msgData?.file?.content && !props?.msgData?.file?.internalFlag && (\n <div className=\"action-buttons aa-action-buttons\">\n {!props?.msgData?.hideCopyButton && (\n <button\n className=\"aa-solidbtn aa-copy-btn-suggestion\" aria-label=\"button\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <g clip-path=\"url(#clip0_9506_130502)\">\n <path d=\"M10.6663 10.6663V12.533C10.6663 13.2797 10.6663 13.6531 10.521 13.9383C10.3932 14.1892 10.1892 14.3932 9.93833 14.521C9.65311 14.6663 9.27974 14.6663 8.53301 14.6663H3.46634C2.7196 14.6663 2.34624 14.6663 2.06102 14.521C1.81014 14.3932 1.60616 14.1892 1.47833 13.9383C1.33301 13.6531 1.33301 13.2797 1.33301 12.533V7.46634C1.33301 6.7196 1.33301 6.34624 1.47833 6.06102C1.60616 5.81014 1.81014 5.60616 2.06102 5.47833C2.34624 5.33301 2.7196 5.33301 3.46634 5.33301H5.33301M7.46634 10.6663H12.533C13.2797 10.6663 13.6531 10.6663 13.9383 10.521C14.1892 10.3932 14.3932 10.1892 14.521 9.93833C14.6663 9.65311 14.6663 9.27974 14.6663 8.53301V3.46634C14.6663 2.7196 14.6663 2.34624 14.521 2.06102C14.3932 1.81014 14.1892 1.60616 13.9383 1.47833C13.6531 1.33301 13.2797 1.33301 12.533 1.33301H7.46634C6.7196 1.33301 6.34624 1.33301 6.06102 1.47833C5.81014 1.60616 5.60616 1.81014 5.47833 2.06102C5.33301 2.34624 5.33301 2.7196 5.33301 3.46634V8.53301C5.33301 9.27974 5.33301 9.65311 5.47833 9.93833C5.60616 10.1892 5.81014 10.3932 6.06102 10.521C6.34624 10.6663 6.7196 10.6663 7.46634 10.6663Z\" stroke=\"#101828\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </g>\n <defs>\n <clipPath id=\"clip0_9506_130502\">\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\n </clipPath>\n </defs>\n </svg>\n </button>\n )}\n {!props?.msgData?.hideSendButton && (\n <button className=\"aa-solidbtn aa-text-xxs aa-send-btn-suggestion\" aria-label=\"button\">Send</button>\n )}\n </div>\n )}\n </>\n )\n}\n\nexport function FileSuggestion(props: any) {\n return (\n <div>\n {\n props?.msgData?.files?.map((file: any, inx: any) => (\n <div\n key={inx}\n className=\"suggestion-item-card aa-each-suggestion \">\n <div className=\"suggestion-header-faq aa-suggestion-header\">\n <div className=\"titles-info-sec aa-suggestion-title\">\n {!file.link && file.title && (\n <h2 className=\"aa-text-xs\">{file.title}</h2>\n )}\n {file.link && file.title && (\n <h2 className=\"aa-text-xs\">\n <a className=\"moreText aa-file-link\" role=\"link\">\n {file.title}\n </a>\n </h2>\n )}\n </div>\n </div>\n <div className=\"suggestion-body-faq\">\n <p className=\"aa-desc-xs\" dangerouslySetInnerHTML={{ __html: file?.content }} />\n\n {file.link && !file.title && (\n <div className=\"more-links-buttons\">\n <button className=\"more-link-text aa-text-xs aa-file-link\" role=\"link\">View Full File</button>\n </div>\n )}\n\n </div>\n </div>\n ))\n }\n </div>\n );\n}\n","import { Fragment, h } from 'preact';\nimport { useEffect, useState, useRef } from 'preact/hooks';\nimport { ProjConstants } from '../../../../constants/projConsts';\nimport './snippet.scss';\n\n\nexport function SnippetSentText(props: any) {\n return (\n <div className=\"aa-text-xs sent-msg-text aa-sent-text\">\n {/* {props?.msgData?.snippet?.send === 'send' ? 'Sent' : 'Copied'} */}\n </div>\n )\n}\n\nexport function SnippetSendCopyActionButtons(props: any) {\n return (\n <>\n {!props?.msgData?.hideActionButtons && props?.msgData?.snippet.contentArray.length > 0 && (\n <div className=\"action-buttons aa-action-buttons\">\n {!props?.msgData?.hideCopyButton && (\n <button\n className=\"aa-solidbtn aa-copy-btn-suggestion\" aria-label=\"button\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <g clip-path=\"url(#clip0_9506_130502)\">\n <path d=\"M10.6663 10.6663V12.533C10.6663 13.2797 10.6663 13.6531 10.521 13.9383C10.3932 14.1892 10.1892 14.3932 9.93833 14.521C9.65311 14.6663 9.27974 14.6663 8.53301 14.6663H3.46634C2.7196 14.6663 2.34624 14.6663 2.06102 14.521C1.81014 14.3932 1.60616 14.1892 1.47833 13.9383C1.33301 13.6531 1.33301 13.2797 1.33301 12.533V7.46634C1.33301 6.7196 1.33301 6.34624 1.47833 6.06102C1.60616 5.81014 1.81014 5.60616 2.06102 5.47833C2.34624 5.33301 2.7196 5.33301 3.46634 5.33301H5.33301M7.46634 10.6663H12.533C13.2797 10.6663 13.6531 10.6663 13.9383 10.521C14.1892 10.3932 14.3932 10.1892 14.521 9.93833C14.6663 9.65311 14.6663 9.27974 14.6663 8.53301V3.46634C14.6663 2.7196 14.6663 2.34624 14.521 2.06102C14.3932 1.81014 14.1892 1.60616 13.9383 1.47833C13.6531 1.33301 13.2797 1.33301 12.533 1.33301H7.46634C6.7196 1.33301 6.34624 1.33301 6.06102 1.47833C5.81014 1.60616 5.60616 1.81014 5.47833 2.06102C5.33301 2.34624 5.33301 2.7196 5.33301 3.46634V8.53301C5.33301 9.27974 5.33301 9.65311 5.47833 9.93833C5.60616 10.1892 5.81014 10.3932 6.06102 10.521C6.34624 10.6663 6.7196 10.6663 7.46634 10.6663Z\" stroke=\"#101828\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </g>\n <defs>\n <clipPath id=\"clip0_9506_130502\">\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\n </clipPath>\n </defs>\n </svg>\n </button>\n )}\n {!props?.msgData?.hideSendButton && (\n <button className=\"aa-solidbtn aa-text-xxs aa-send-btn-suggestion\" aria-label=\"button\">Send</button>\n )}\n </div>\n )}\n </>\n )\n}\n\nexport function SnippetSuggestion(props: any) {\n\n let [prevClass, setPrevClass] = useState('');\n\n\n const snippetContentRef = useRef<HTMLParagraphElement>(null);\n const snippetContent1Ref = useRef<HTMLParagraphElement>(null);\n\n\n const mouseLeave = () => {\n if (prevClass) {\n document.querySelectorAll(prevClass)?.forEach(el => el?.classList?.remove('selection-on-snippet-color'));\n }\n }\n\n const hoverOnSource = (sourceInx: any, type: any, i: any) => {\n if (prevClass) {\n document.querySelectorAll(prevClass)?.forEach(el => el?.classList?.remove('selection-on-snippet-color'));\n }\n prevClass = '.fragment-ext-' + sourceInx;\n document.querySelectorAll(prevClass)?.forEach(el => el?.classList?.add('selection-on-snippet-color'));\n }\n\n return (\n <div>\n {props?.msgData?.snippets?.map((snippet: any, i: any) => (\n <div className=\"suggestion-item-card aa-each-suggestion \" key={i}>\n <div className=\"suggestion-header-faq aa-suggestion-header\">\n <div className=\"titles-info-sec aa-suggestion-title\">\n {snippet.title && (\n <h2 className=\"aa-text-xs\">{snippet.title}</h2>\n )}\n {/* {snippet.send && (\n <div className=\"aa-text-xs sent-msg-text aa-sent-text\">\n {snippet.send === 'send' ? 'SENT' : 'COPIED'}\n </div>\n )} */}\n </div>\n </div>\n\n <div className=\"suggestion-body-faq\">\n <p className=\"aa-desc-xs aa-snippet-content-ref1\">\n {snippet.contentArray.map((content: any, ii: any) => (content?.length > 0 && (\n <div key={ii} dangerouslySetInnerHTML={{ __html: content }}></div>\n )\n ))}\n </p>\n {snippet.internalInfo?.length > 0 && (\n <Fragment>\n <div className=\"line-with-text-heading\">\n <h2>Internal Information</h2>\n <span></span>\n </div>\n <p className=\"aa-desc-xs aa-snippet-content-ref2\">\n {snippet.internalInfo.map((content: any, ii: any) => (\n content?.length > 0 && (\n <div\n key={ii}\n className={`inner-text-snippet-selection ${snippet.internalInfo.length > 1 && !snippet.isActCit ? 'snippet-list-style' : ''}`}\n dangerouslySetInnerHTML={{ __html: content }}\n ></div>\n )\n ))}\n </p>\n <div className=\"line-with-text-heading\">\n <span></span>\n <h2>Internal Information</h2>\n </div>\n </Fragment>\n )}\n\n {snippet?.sources?.length > 0 && (\n <div className=\"souces-names-wrapper\">\n <h1 className=\"aa-desc-xs\">Sources :</h1>\n <div className=\"source-names\">\n {snippet.sources.map((source: any, ii: any) => (\n source.url && (\n <div\n key={ii}\n className=\"source-tag aa-source-tag\"\n onMouseOver={() => hoverOnSource(ii + 1, 'ext', i)}\n onMouseLeave={mouseLeave}\n >\n {snippet.isActCit && <span>{ii + 1}</span>}\n <a title={source.title} className=\"aa-snippet-link\">\n {source?.title || 'Know More'}\n </a>\n </div>\n )\n ))}\n </div>\n </div>\n )}\n </div>\n </div>\n ))}\n </div>\n );\n}\n","__webpack_require__.h = () => (\"3ee174b3bd77f6e249e4\")"],"names":[],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"hot/hot-update.js","mappings":"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","sources":["webpack://KoreAASDK/./src/components/common/templatemanager/tabs/assist/assist.scss","webpack://KoreAASDK/./src/components/common/templatemanager/tabs/transcript/transcript.scss","webpack://KoreAASDK/./src/components/common/constants/projConsts.ts","webpack://KoreAASDK/./src/components/common/services/web-socket-service.ts","webpack://KoreAASDK/./src/components/common/templatemanager/base/aaContainer/aaContainer.tsx","webpack://KoreAASDK/./src/components/common/templatemanager/tabs/assist/assist.tsx","webpack://KoreAASDK/./src/components/common/templatemanager/tabs/transcript/transcript.tsx","webpack://KoreAASDK/./src/components/common/utils/interceptor.ts","webpack://KoreAASDK/webpack/runtime/getFullHash"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.assist-data-wrapper-container {\n height: 100%;\n padding: 8px;\n width: 100%;\n}\n.assist-data-wrapper-container .assist-block-content {\n height: 100%;\n display: flex;\n flex-direction: column;\n border: 1px solid var(--AA-gloabl-border);\n background: var(--AA-global-white-bg);\n border-radius: 4px;\n}\n.assist-data-wrapper-container .assist-block-content .assist-header-content {\n display: flex;\n align-items: center;\n padding: 8px;\n min-height: 36px;\n gap: 10px;\n border-bottom: 1px solid var(--AA-gloabl-border);\n}\n.assist-data-wrapper-container .assist-block-content .assist-header-content .left-title-info {\n width: 100%;\n overflow: hidden;\n}\n.assist-data-wrapper-container .assist-block-content .assist-header-content .left-title-info .text-dropdown-info {\n display: flex;\n align-items: center;\n gap: 6px;\n}\n.assist-data-wrapper-container .assist-block-content .assist-header-content .left-title-info .text-dropdown-info h1 {\n color: var(--AA-gloabl-text-color);\n font-size: 14px;\n font-weight: 600;\n line-height: 20px;\n margin: 0 0 2px 0;\n}\n.assist-data-wrapper-container .assist-block-content .scroll-data-assist {\n flex: 1 1 auto;\n height: 100%;\n overflow: auto;\n}\n.assist-data-wrapper-container .assist-block-content .scroll-data-assist .summery-conv-banner-wrapper {\n padding: 12px;\n border-radius: 8px;\n border: 1px solid var(--AA-gloabl-border);\n background: var(--AA-gloabl-bg-secondary);\n margin: 8px;\n}\n.assist-data-wrapper-container .assist-block-content .scroll-data-assist .summery-conv-banner-wrapper .heading-text {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n margin-bottom: 10px;\n}\n.assist-data-wrapper-container .assist-block-content .scroll-data-assist .summery-conv-banner-wrapper .heading-text svg {\n flex-shrink: 0;\n}\n.assist-data-wrapper-container .assist-block-content .scroll-data-assist .summery-conv-banner-wrapper .heading-text svg path {\n fill: var(--AA-gloabl-text-color);\n}\n.assist-data-wrapper-container .assist-block-content .scroll-data-assist .summery-conv-banner-wrapper li {\n color: var(--AA-gloabl-text-color);\n font-size: 13px;\n font-weight: 400;\n line-height: 20px;\n list-style-type: none;\n display: flex;\n align-items: flex-end;\n gap: 8px;\n width: 100%;\n}\n.assist-data-wrapper-container .assist-block-content .scroll-data-assist .summery-conv-banner-wrapper li span {\n width: 100%;\n}\n.assist-data-wrapper-container .assist-block-content .scroll-data-assist .summery-conv-banner-wrapper li .copy-btn {\n padding: 0;\n width: 25px;\n height: 25px;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n font-size: 16px;\n border: 0;\n background: transparent;\n display: flex;\n cursor: pointer;\n border-radius: 4px;\n transition: 0.2s all ease;\n}\n.assist-data-wrapper-container .assist-block-content .scroll-data-assist .summery-conv-banner-wrapper li .copy-btn svg path {\n stroke: var(--AA-gloabl-text-color);\n}\n.assist-data-wrapper-container .assist-block-content .scroll-data-assist .summery-conv-banner-wrapper li .copy-btn:hover {\n background: var(--AA-global-white-bg);\n}\n\n.empty-listing-triggers {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n flex-direction: column;\n padding: 0 16px;\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/common/templatemanager/tabs/assist/assist.scss\"],\"names\":[],\"mappings\":\"AACA;EACI,YAAA;EACA,YAAA;EACA,WAAA;AAAJ;AACI;EACI,YAAA;EACA,aAAA;EACA,sBAAA;EACA,yCAAA;EACA,qCAAA;EACA,kBAAA;AACR;AAAQ;EACI,aAAA;EACA,mBAAA;EACA,YAAA;EACA,gBAAA;EACA,SAAA;EACA,gDAAA;AAEZ;AADY;EACI,WAAA;EACA,gBAAA;AAGhB;AAFgB;EACI,aAAA;EACA,mBAAA;EACA,QAAA;AAIpB;AAHoB;EACI,kCAAA;EACA,eAAA;EACA,gBAAA;EACA,iBAAA;EACA,iBAAA;AAKxB;AAAQ;EACI,cAAA;EACA,YAAA;EACA,cAAA;AAEZ;AADY;EACI,aAAA;EACA,kBAAA;EACA,yCAAA;EACA,yCAAA;EACA,WAAA;AAGhB;AAFgB;EACI,aAAA;EACA,mBAAA;EACA,uBAAA;EACA,QAAA;EACA,mBAAA;AAIpB;AAHoB;EACI,cAAA;AAKxB;AAJwB;EACI,iCAAA;AAM5B;AAFgB;EACI,kCAAA;EACA,eAAA;EACA,gBAAA;EACA,iBAAA;EACA,qBAAA;EACA,aAAA;EACA,qBAAA;EACA,QAAA;EACA,WAAA;AAIpB;AAHoB;EACI,WAAA;AAKxB;AAHoB;EACI,UAAA;EACA,WAAA;EACA,YAAA;EACA,cAAA;EACA,mBAAA;EACA,uBAAA;EACA,eAAA;EACA,SAAA;EACA,uBAAA;EACA,aAAA;EACA,eAAA;EACA,kBAAA;EACA,yBAAA;AAKxB;AAH4B;EACI,mCAAA;AAKhC;AAFwB;EACI,qCAAA;AAI5B;;AAKA;EACI,aAAA;EACA,mBAAA;EACA,uBAAA;EACA,YAAA;EACA,sBAAA;EACA,eAAA;AAFJ\",\"sourcesContent\":[\"\\n.assist-data-wrapper-container{\\n height: 100%;\\n padding: 8px;\\n width: 100%;\\n .assist-block-content{\\n height: 100%;\\n display: flex;\\n flex-direction: column;\\n border: 1px solid var(--AA-gloabl-border);\\n background: var(--AA-global-white-bg);\\n border-radius: 4px;\\n .assist-header-content{\\n display: flex;\\n align-items: center;\\n padding: 8px;\\n min-height: 36px;\\n gap: 10px;\\n border-bottom: 1px solid var(--AA-gloabl-border);\\n .left-title-info{\\n width: 100%;\\n overflow: hidden;\\n .text-dropdown-info{\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n h1{\\n color: var(--AA-gloabl-text-color);\\n font-size: 14px;\\n font-weight: 600;\\n line-height: 20px;\\n margin: 0 0 2px 0;\\n }\\n }\\n }\\n }\\n .scroll-data-assist{\\n flex: 1 1 auto;\\n height: 100%;\\n overflow: auto;\\n .summery-conv-banner-wrapper{\\n padding: 12px;\\n border-radius: 8px;\\n border: 1px solid var(--AA-gloabl-border);\\n background: var(--AA-gloabl-bg-secondary);\\n margin: 8px;\\n .heading-text{\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n gap: 8px;\\n margin-bottom: 10px;\\n svg{\\n flex-shrink: 0;\\n path{\\n fill: var(--AA-gloabl-text-color);\\n }\\n }\\n }\\n li{\\n color: var(--AA-gloabl-text-color);\\n font-size: 13px;\\n font-weight: 400;\\n line-height: 20px;\\n list-style-type: none;\\n display: flex;\\n align-items: flex-end;\\n gap: 8px;\\n width: 100%;\\n span{\\n width: 100%;\\n }\\n .copy-btn{\\n padding: 0;\\n width: 25px;\\n height: 25px;\\n flex-shrink: 0;\\n align-items: center;\\n justify-content: center;\\n font-size: 16px;\\n border: 0;\\n background: transparent;\\n display: flex;\\n cursor: pointer;\\n border-radius: 4px;\\n transition: 0.2s all ease;\\n svg{\\n path{\\n stroke: var(--AA-gloabl-text-color);\\n }\\n }\\n &:hover{\\n background: var(--AA-global-white-bg);\\n }\\n }\\n }\\n }\\n }\\n }\\n}\\n\\n.empty-listing-triggers{\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n height: 100%;\\n flex-direction: column;\\n padding: 0 16px;\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.transcript-template-wrapper {\n height: 100%;\n padding: 8px;\n width: 100%;\n}\n.transcript-template-wrapper .transcript-template-data {\n height: 100%;\n display: flex;\n flex-direction: column;\n border: 1px solid var(--AA-gloabl-border);\n border-radius: 4px;\n}\n.transcript-template-wrapper .transcript-template-data .transcript-header {\n padding: 7px 11px;\n border-radius: 4px 4px 0px 0px;\n border-bottom: 1px solid var(--AA-gloabl-border);\n background: var(--AA-global-white-bg);\n}\n.transcript-template-wrapper .transcript-template-data .transcript-body-wrapper {\n flex: 1 1 auto;\n overflow: auto;\n display: flex;\n flex-direction: column;\n height: 100%;\n padding: 12px 11px;\n gap: 12px;\n}\n\n.aa-agent-bubble-comp {\n display: flex;\n width: 100%;\n justify-content: flex-end;\n}\n.aa-agent-bubble-comp .agent-bubble-content {\n display: flex;\n flex-wrap: wrap;\n flex-direction: column;\n justify-content: flex-end;\n align-items: flex-end;\n gap: 6px;\n max-width: 90%;\n transition: 0.5s all ease;\n word-break: break-word;\n}\n.aa-agent-bubble-comp .agent-bubble-content .top-info {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n.aa-agent-bubble-comp .agent-bubble-content .top-info .time-tamp {\n font-weight: 400;\n font-size: 12px;\n line-height: 15px;\n color: var(--AA-gloabl-text-color);\n}\n.aa-agent-bubble-comp .agent-bubble-content .top-info .you-text {\n font-weight: 600;\n font-size: 12px;\n line-height: 15px;\n color: var(--AA-gloabl-text-color);\n}\n.aa-agent-bubble-comp .agent-bubble-content .bubble-msg {\n background: var(--AA-global-theme-bg);\n border-radius: 8px 8px 2px 8px;\n font-weight: 400;\n font-size: 14px;\n line-height: 18px;\n color: var(--AA-global-white-color);\n padding: 8px 12px;\n}\n\n.aa-bot-bubble-comp {\n display: flex;\n width: 100%;\n justify-content: flex-start;\n}\n.aa-bot-bubble-comp .bot-bubble-content {\n display: flex;\n flex-wrap: wrap;\n flex-direction: column;\n max-width: 90%;\n justify-content: flex-start;\n align-items: flex-start;\n transition: 0.5s all ease;\n word-break: break-word;\n gap: 6px;\n}\n.aa-bot-bubble-comp .bot-bubble-content .top-info {\n display: flex;\n align-items: center;\n gap: 4px;\n width: 100%;\n}\n.aa-bot-bubble-comp .bot-bubble-content .top-info .time-tamp {\n font-weight: 400;\n font-size: 12px;\n line-height: 15px;\n color: var(--AA-gloabl-text-color);\n flex-shrink: 0;\n}\n.aa-bot-bubble-comp .bot-bubble-content .top-info .you-text {\n font-weight: 600;\n font-size: 12px;\n line-height: 15px;\n color: var(--AA-gloabl-text-color);\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.aa-bot-bubble-comp .bot-bubble-content .bubble-msg {\n background: var(--AA-gloabl-bg-secondary);\n border-radius: 8px 8px 2px 8px;\n font-weight: 400;\n font-size: 14px;\n line-height: 18px;\n color: var(--AA-gloabl-text-color);\n padding: 8px 12px;\n word-break: break-word;\n white-space: break-spaces;\n}\n\n.agent-joined-banner {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 20px;\n margin-bottom: 20px;\n}\n.agent-joined-banner .line-border {\n width: 100%;\n border-top: 1px solid var(--AA-gloabl-border);\n}\n.agent-joined-banner .info-joined-details {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 2px;\n flex-shrink: 0;\n}\n\n.summary-wrapper {\n border-radius: 8px;\n border: 1px solid var(--AA-gloabl-border);\n background: var(--AA-gloabl-bg-secondary);\n display: inline-flex;\n padding: 12px;\n justify-content: center;\n align-items: center;\n align-self: stretch;\n flex-direction: column;\n width: auto;\n margin: 10px auto;\n gap: 6px;\n}\n.summary-wrapper .summary-header {\n display: flex;\n align-items: center;\n gap: 6px;\n}\n.summary-wrapper .summary-header svg path {\n fill: var(--AA-gloabl-text-color);\n}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/common/templatemanager/tabs/transcript/transcript.scss\"],\"names\":[],\"mappings\":\"AAEA;EACI,YAAA;EACA,YAAA;EACA,WAAA;AADJ;AAEI;EACI,YAAA;EACA,aAAA;EACA,sBAAA;EACA,yCAAA;EACA,kBAAA;AAAR;AACQ;EACI,iBAAA;EACA,8BAAA;EACA,gDAAA;EACA,qCAAA;AACZ;AACQ;EACI,cAAA;EACA,cAAA;EACA,aAAA;EACA,sBAAA;EACA,YAAA;EACA,kBAAA;EACA,SAAA;AACZ;;AAIA;EACI,aAAA;EACA,WAAA;EACA,yBAAA;AADJ;AAEI;EACI,aAAA;EACA,eAAA;EACA,sBAAA;EACA,yBAAA;EACA,qBAAA;EACA,QAAA;EACA,cAAA;EACA,yBAAA;EACA,sBAAA;AAAR;AACQ;EACI,aAAA;EACA,mBAAA;EACA,QAAA;AACZ;AAAY;EACI,gBAAA;EACA,eAAA;EACA,iBAAA;EACA,kCAAA;AAEhB;AAAY;EACI,gBAAA;EACA,eAAA;EACA,iBAAA;EACA,kCAAA;AAEhB;AACQ;EACI,qCAAA;EACA,8BAAA;EACA,gBAAA;EACA,eAAA;EACA,iBAAA;EACA,mCAAA;EACA,iBAAA;AACZ;;AAIA;EACI,aAAA;EACA,WAAA;EACA,2BAAA;AADJ;AAEI;EACI,aAAA;EACA,eAAA;EACA,sBAAA;EACA,cAAA;EACA,2BAAA;EACA,uBAAA;EACA,yBAAA;EACA,sBAAA;EACA,QAAA;AAAR;AACQ;EACI,aAAA;EACA,mBAAA;EACA,QAAA;EACA,WAAA;AACZ;AAAY;EACI,gBAAA;EACA,eAAA;EACA,iBAAA;EACA,kCAAA;EACA,cAAA;AAEhB;AAAY;EACI,gBAAA;EACA,eAAA;EACA,iBAAA;EACA,kCAAA;EACA,gBAAA;EACA,mBAAA;EACA,uBAAA;AAEhB;AACQ;EACI,yCAAA;EACA,8BAAA;EACA,gBAAA;EACA,eAAA;EACA,iBAAA;EACA,kCAAA;EACA,iBAAA;EACA,sBAAA;EACA,yBAAA;AACZ;;AAIA;EACI,aAAA;EACA,mBAAA;EACA,uBAAA;EACA,SAAA;EACA,mBAAA;AADJ;AAEI;EACI,WAAA;EACA,6CAAA;AAAR;AAEI;EACI,aAAA;EACA,sBAAA;EACA,mBAAA;EACA,QAAA;EACA,cAAA;AAAR;;AAKA;EACI,kBAAA;EACA,yCAAA;EACA,yCAAA;EACA,oBAAA;EACA,aAAA;EACA,uBAAA;EACA,mBAAA;EACA,mBAAA;EACA,sBAAA;EACA,WAAA;EACA,iBAAA;EACA,QAAA;AAFJ;AAGI;EACI,aAAA;EACA,mBAAA;EACA,QAAA;AADR;AAGY;EACI,iCAAA;AADhB\",\"sourcesContent\":[\"\\n\\n.transcript-template-wrapper{\\n height: 100%;\\n padding: 8px;\\n width: 100%;\\n .transcript-template-data{\\n height: 100%;\\n display: flex;\\n flex-direction: column;\\n border: 1px solid var(--AA-gloabl-border);\\n border-radius: 4px;\\n .transcript-header{\\n padding: 7px 11px;\\n border-radius: 4px 4px 0px 0px;\\n border-bottom: 1px solid var(--AA-gloabl-border);\\n background: var(--AA-global-white-bg);\\n }\\n .transcript-body-wrapper{\\n flex: 1 1 auto;\\n overflow: auto;\\n display: flex;\\n flex-direction: column;\\n height: 100%;\\n padding: 12px 11px;\\n gap: 12px;\\n }\\n }\\n}\\n\\n.aa-agent-bubble-comp{\\n display: flex;\\n width: 100%;\\n justify-content: flex-end;\\n .agent-bubble-content{\\n display: flex;\\n flex-wrap: wrap;\\n flex-direction: column;\\n justify-content: flex-end;\\n align-items: flex-end;\\n gap: 6px;\\n max-width: 90%;\\n transition: 0.5s all ease;\\n word-break: break-word;\\n .top-info{\\n display: flex;\\n align-items: center;\\n gap: 4px;\\n .time-tamp{\\n font-weight: 400;\\n font-size: 12px;\\n line-height: 15px;\\n color: var(--AA-gloabl-text-color);\\n }\\n .you-text{\\n font-weight: 600;\\n font-size: 12px;\\n line-height: 15px;\\n color: var(--AA-gloabl-text-color);\\n }\\n }\\n .bubble-msg{\\n background:var(--AA-global-theme-bg);\\n border-radius: 8px 8px 2px 8px;\\n font-weight: 400;\\n font-size: 14px;\\n line-height: 18px;\\n color: var(--AA-global-white-color);\\n padding: 8px 12px;\\n }\\n }\\n}\\n\\n.aa-bot-bubble-comp{\\n display: flex;\\n width: 100%;\\n justify-content: flex-start;\\n .bot-bubble-content{\\n display: flex;\\n flex-wrap: wrap;\\n flex-direction: column;\\n max-width: 90%;\\n justify-content: flex-start;\\n align-items: flex-start;\\n transition: 0.5s all ease; \\n word-break: break-word;\\n gap: 6px;\\n .top-info{\\n display: flex;\\n align-items: center;\\n gap: 4px;\\n width: 100%;\\n .time-tamp{\\n font-weight: 400;\\n font-size: 12px;\\n line-height: 15px;\\n color: var(--AA-gloabl-text-color);\\n flex-shrink: 0;\\n }\\n .you-text{\\n font-weight: 600;\\n font-size: 12px;\\n line-height: 15px;\\n color: var(--AA-gloabl-text-color);\\n overflow: hidden;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n }\\n }\\n .bubble-msg{\\n background: var(--AA-gloabl-bg-secondary);\\n border-radius: 8px 8px 2px 8px;\\n font-weight: 400;\\n font-size: 14px;\\n line-height: 18px;\\n color: var(--AA-gloabl-text-color);\\n padding: 8px 12px;\\n word-break: break-word;\\n white-space: break-spaces;\\n }\\n }\\n}\\n\\n.agent-joined-banner{\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n gap: 20px;\\n margin-bottom: 20px;\\n .line-border{\\n width: 100%;\\n border-top: 1px solid var(--AA-gloabl-border);\\n }\\n .info-joined-details{\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n gap: 2px;\\n flex-shrink: 0;\\n }\\n}\\n\\n\\n.summary-wrapper{\\n border-radius: 8px;\\n border: 1px solid var(--AA-gloabl-border);\\n background: var(--AA-gloabl-bg-secondary);\\n display: inline-flex;\\n padding: 12px;\\n justify-content: center;\\n align-items: center;\\n align-self: stretch;\\n flex-direction: column;\\n width: auto;\\n margin: 10px auto;\\n gap: 6px;\\n .summary-header{\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n svg{\\n path{\\n fill: var(--AA-gloabl-text-color);\\n }\\n }\\n }\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","export const Tabs = {\n SEARCH: 'SEARCH',\n MYBOT: 'MYBOT',\n ASSIST: 'ASSIST',\n TRANSCRIPT: 'TRANSCRIPT',\n HISTORY: 'HISTORY',\n SETTINGS: 'SETTINGS',\n SMARTASSIST_SOURCE: 'SMARTASSIST_SOURCE',\n};\n\nexport const RenderResponseType = {\n SUGGESTIONS : 'SUGGESTIONS',\n SMALLTALK : 'SMALLTALK',\n AUTOMATION : 'AUTOMATION',\n USERMSG : 'USERMSG',\n ASSISTRESPONSE : 'ASSISTRESPONSE',\n FEEDBACK : 'FEEDBACK',\n WELCOME_MSG : 'WELCOME_MSG'\n}\n\nexport const ProjConstants = {\n ASSIST : 'Assist',\n MYBOT : 'My Bot',\n TRANSCRIPT : \"Transcript\",\n LIBRARY : 'Library',\n SETTINGS : 'Settings',\n SEARCH : 'Search',\n PLAYBOOK: 'Playbook',\n VOICE : 'voice',\n CHAT : 'chat',\n BOTID : 'botId',\n CONVESATIONID : 'conversationId',\n RUN : 'RUN',\n AGENTASSIST_RUN : 'Run with Agent Inputs',\n SEND : 'Send',\n COPY : 'Copy',\n COPIED : 'COPIED',\n SHOW_MORE : 'Show more',\n SHOW_LESS : 'Show less',\n READ_MORE : 'More',\n READ_LESS : 'Less',\n EXPAND : 'Expand',\n READ_MORE_EXPAND : 'Read more | Expand',\n CLOSE : 'Close',\n DIALOG : 'Dialog task',\n FAQ : 'FAQ',\n ARTICLE : 'Article',\n SNIPPET : 'Snippet',\n VIEW_ALL_FAQ : 'View All FAQs',\n VIEW_FEW_FAQ : 'View Few FAQs',\n VIEW_ALL_ARTICLES : 'View All Articles',\n VIEW_FEW_ARTICLES : 'View Few Articles',\n VIEW_ALL_SNIPPETS : 'View All Snippets',\n VIEW_FEW_SNIPPETS : 'View Few Snippets',\n SENDMSG : 'agentAssist.SendMessage',\n COPYMSG : 'agentAssist.CopyMessage',\n SEND_METHOD : 'send',\n COPY_METHOD : 'copy',\n AWAITING : 'Awaiting Response | Type to override',\n OVERRIDE : 'Type to override',\n ACCEPT_RESPONSE : 'Response Accepted',\n AGENT_ENTERED : 'Agent Entered',\n WIDGET_LOADER : 'widget',\n INDIVIDUAL_LOADER : 'individual',\n LOGO_PATH : 'assets/images/logo/koreLogo.svg',\n DOCUMENTATION_LINK : 'https://docs.kore.ai/agentassist/',\n FAQ_LINK : 'https://docs.kore.ai/agentassist/frequently-asked-questions/faq/',\n KOREACADEMY_LINK : 'https://academy.kore.ai/',\n WRONG_SUGGESTION : \"Wrong suggestions\",\n INCORRECT_INTENT : \"Incorrect intent\",\n ACCIDENTAL_CLICK : \"Accidental click\",\n TIME_TAKING : \"Time taking\",\n OTHER : \"Other\",\n SETTINGS_DOCUMENTATION : \"documentation\",\n SETTINGS_FAQ : \"faq\",\n SETTINGS_KOREACADEMY : \"koreAcademy\",\n SUGGESTION_LINEHEIGHT : 18,\n SUGGESTION_ADDHEIGHT : 10,\n SUGGESTION_MAXHEIGHT : 12,\n}\n\nexport const coachingConst: any = {\n NUDGE_DATA: {\n positive: {\n color: '#22C55E',\n icon: 'krIocnsFont-thumbs-up'\n },\n neutral: {\n color: '#E5E5E5',\n className : 'info-nudge'\n },\n alert: {\n color: '#F59E0B',\n icon: 'krIocnsFont-alert-triangle',\n className : 'warning-nudge'\n },\n critical: {\n color: '#EF4444',\n icon: 'krIocnsFont-hand',\n className : 'danger-nudge'\n }\n },\n\n HINT_DATA: {\n positive: {\n color: '#22C55E',\n icon: 'krIocnsFont-thumbs-up'\n },\n neutral: {\n color: '#E5E5E5',\n icon : 'krIocnsFont-exclamation',\n className : 'info-hint'\n },\n alert: {\n color: '#F59E0B',\n icon : 'krIocnsFont-alert-triangle',\n className: 'warning-hint',\n },\n critical: {\n color: '#EF4444',\n icon : 'krIocnsFont-hand',\n className: 'danger-hint'\n }\n }\n}\n\n export const serviceTabMap : any = {\n \"ast\": Tabs.ASSIST,\n \"srch\": Tabs.SEARCH,\n \"trnspt\": Tabs.TRANSCRIPT,\n \"mB\": Tabs.MYBOT\n}\n\nexport const ClassMapConstanst = {\n \"HEADER\" : '.aa-header',\n \"FOOTER\" : '.aa-footer',\n \"FOOTER_BTN\" : '.aa-footer-btn-',\n \"FOOTER_BTN_SEARCH\" : '.aa-footer-btn-srch',\n \"FOOTER_BTN_MYBOT\" : '.aa-footer-btn-mB',\n \"FOOTER_BTN_ASSIST\" : '.aa-footer-btn-ast',\n \"FOOTER_BTN_TRANSCRIPT\" : '.aa-footer-btn-trnspt',\n \"ASSIST_SECTION\" : '.aa-assist-section',\n \"SUGGESTION_EACH\" :'.aa-each-suggestion',\n \"SUGGESTION_EACH_HEADER\" : '.aa-suggestion-header',\n \"SUGGESTION_EACH_TITLE\" : '.aa-suggestion-title',\n \"SUGGESTION_EACH_BODY\" : '.aa-each-suggestion-faq-body',\n \"SUGGESTION_LESS_LINK\" : '.aa-less-link',\n \"SUGGESTION_MORE_LINK\" : '.aa-more-link',\n \"SUGGESTION_SEND_BTN\" : '.aa-send-btn-suggestion',\n \"SUGGESTION_COPY_BTN\" : '.aa-copy-btn-suggestion',\n \"SUGGESTION_SENDCPY_ACTION\" : '.aa-action-buttons',\n \"SUGGESTION_FAQ_UP_ARROW\" : '.aa-faq-up-arrow',\n \"SUGGESTION_FAQ_DOWN_ARROW\" : '.aa-faq-down-arrow',\n \"SUGGESTION_FAQ_EXPAND\" : '.aa-expand-btn-link',\n \"SUGGESTION_FAQ_CLOSE\" : '.aa-close-btn-link',\n \"SUGGESTION_FAQ_ANS_LENGTH\" : '.aa-faq-ans-length',\n \"SUGGESTION_FAQ_ANS_LOADER\" : '.aa-faq-answer-loader',\n \"SUGGESTION_SNIPPET_SOURCE_TAG\" : '.aa-source-tag',\n \"SUGGESTION_SNIPPET_LINK\" : '.aa-snippet-link',\n \"SUGGESTION_ARTICLE_LINK\" : '.aa-article-link',\n \"SUGGESTION_FILE_LINK\" : '.aa-file-link',\n \"SEARCH_INPUT_BLOCK\" : '.aa-input-block',\n \"SEARCH_INPUT_CLOSE\" : '.aa-input-search-close',\n \"SEARCH_INPUT_ICON\" : '.aa-input-search-icon',\n \"SUGGESTION_SENT_TEXT\" : '.aa-sent-text',\n \"SEARCH_SUGGESTION_WRAPPER\" : '.aa-search-suggestion-wrapper',\n \"HIDE_ELEMENT\" : 'aa-hidden',\n \"SDK_MAIN_WRAPPER\" : 'agentassist-widget-main-chat-container-wrapper',\n \"NUDGE_TEMPLATE\" : 'aa-nudges-template-data',\n \"NUDGE_CLOSE\" : 'aa-close-nudge',\n \"HINT_CLOSE\" : 'aa-close-hint',\n \"HINT_TEMPLATE\" : 'aa-hints-template-data',\n \"SEND_TEXT\" : '.aa-sent-text',\n \"SCROLL_DATA_ASSIST\": 'scroll-data-assist',\n 'DESC_TEXT_SUGGESTION' : '.suggestion-paragraph',\n 'DESC_TEXT_SNIPPET_EXTERNAL' : '.aa-snippet-content-ref1',\n 'DESC_TEXT_SNIPPET_INTERNAL' : '.aa-snippet-content-ref2',\n 'MORE_BTN_CONTAINER' : '.aa-seemore-buttons',\n 'EXTERNAL_SNIPPET_MORE_BTN_CONTAINER' : '.aa-external-seemore-buttons',\n 'INTERNAL_SNIPPET_MORE_BTN_CONTAINER' : '.aa-internal-seemore-buttons',\n 'MORE_BUTTON' : '.aa-more-button',\n 'SUGGESTION_EXPANDED' : 'expanded',\n 'TRANSCRIPT_BODY_WRAPPER' : 'aa-transcript-body-wrapper'\n}\n\nexport const IdMapConstant = {\n \"PROACTIVE_BTN\" : 'aa-proactiveBtn',\n \"ASSIST_FAQ_SUGGESTION\" : 'aa-faqSuggestion-',\n \"ASSIST_SNIPPET_SUGGESTION\" : 'aa-snippetSuggestion-',\n \"ASSIST_ARTICLE_SUGGESTION\" : 'aa-articleSuggestion-',\n \"ASSIST_FILE_SUGGESTION\" : 'aa-fileSuggestion-',\n \"SEARCH_FAQ_SUGGESTION\" : 'aa-faqSuggestion',\n \"SEARCH_SNIPPET_SUGGESTION\" : 'aa-snippetSuggestion',\n \"SEARCH_ARTICLE_SUGGESTION\" : 'aa-articleSuggestion',\n \"SEARCH_FILE_SUGGESTION\" : 'aa-fileSuggestion',\n \"SEARCH_INPUT\" : 'aa-search-input',\n \"SEARCH_SUGGESTION_BLOCK\" : 'searchSuggestionsBlock',\n \"SUMMARY_OVERLAY_BLOCK\" : \"section-agent-aa-wrapper\"\n}\n","\nimport { io } from 'socket.io-client';\nimport { DATA_EVENTS, EVENTS } from '../constants/events.cnst';\nclass websocketservice {\n\n private _agentAssistSocket: any;\n private hostIns: any;\n private configOptions: any;\n\n prevTimeStamp : number = 0;\n intervalTime : number = 510;\n count = 1;\n\n constructor(hostIns: any) {\n this.hostIns = hostIns;\n }\n\n socketConnection(configOptions: any) {\n this.configOptions = configOptions;\n let finalUrl = configOptions?.connectionDetails?.domainURL+'/koreagentassist';\n const config = {\n url: finalUrl,\n options: {\n path: '/agentassist/api/v1/chat',\n autoConnect: false,\n transports: ['websocket', 'polling', 'flashsocket'],\n reconnection: true,\n reconnectionDelay: 5000,\n reconnectionAttempts: 13,\n query: { 'jToken': configOptions?.connectionDetails?.token }\n }\n };\n\n this._agentAssistSocket = io(config.url, config.options);\n this._agentAssistSocket.connect();\n this.listenEvents();\n this._agentAssistSocket.on(\"connect\", () => {\n this.hostIns.emit('ON_SOCKET_CONNECTION', configOptions);\n });\n }\n emitEvents(eventName: string, requestParams: any, keepOldTraceId = false) {\n const { fromSAT, source, autoBotId, channel, interactiveLanguage, botId } = this.configOptions.connectionDetails;\n if (requestParams) {\n requestParams.isExtAD = fromSAT ? false : true;\n requestParams.source = source;\n requestParams.experience = channel;\n requestParams.traceId = (keepOldTraceId && requestParams.traceId) ? requestParams.traceId : 'ua-f0f3edc3-16ca-4e02-9363-4f48c602df62';\n requestParams.language = interactiveLanguage;\n }\n\n if (eventName == 'internal_transfer') {\n requestParams.botId = botId;\n }\n this._agentAssistSocket.emit(eventName, requestParams);\n }\n\n listenEvents() {\n this._agentAssistSocket.on(EVENTS.agent_assist_response, (data: any) => {\n this.hostIns.rootService.assistTabSessionId = '';\n if (data.sessionId) {\n this.hostIns.rootService.assistTabSessionId = data?.sessionId;\n } \n this.hostIns.emit(DATA_EVENTS.AGENT_AI_RESPONSE, data);\n });\n\n this._agentAssistSocket.on(EVENTS.agent_menu_response, (data: any) => {\n\n });\n\n this._agentAssistSocket.on(EVENTS.agent_coaching_response, (data: any) => {\n this.hostIns.emit(DATA_EVENTS.AGENT_COACHING_RESPONSES, data);\n });\n\n this._agentAssistSocket.on(EVENTS.checklist_step_response, (data: any) => {\n });\n\n this._agentAssistSocket.on(EVENTS.checklist_response, (data: any) => {\n });\n\n this._agentAssistSocket.on(EVENTS.realtime_sentiment_response, (data: any) => {\n });\n\n this._agentAssistSocket.on(EVENTS.agent_assist_agent_response, (data: any) => {\n\n let settimeoutTime = this.getTimeout();\n setTimeout(() => {\n this.hostIns.rootService.sentSearchResponse = false;\n this.hostIns.rootService.myBotTabSessionId = '';\n if(data.sessionId) {\n this.hostIns.rootService.myBotTabSessionId = data?.sessionId;\n }\n this.hostIns.emit(DATA_EVENTS.AGENT_AI_AGENT_RESPONSE, data);\n },settimeoutTime);\n });\n\n this._agentAssistSocket.on(EVENTS.agent_assist_endoftask, (data: any) => {\n });\n\n this._agentAssistSocket.on(EVENTS.user_message, (data: any) => {\n this.hostIns.emit(DATA_EVENTS.USER_TRANSCRIPT_RESPONSE, data);\n });\n\n this._agentAssistSocket.on(EVENTS.agent_message, (data: any) => {\n this.hostIns.emit(DATA_EVENTS.AGENT_TRANSCRIPT_RESPONSE, data);\n });\n\n this._agentAssistSocket.on(EVENTS.agent_assist_user_message, (data: any) => {\n });\n\n this._agentAssistSocket.on(EVENTS.agent_feedback_response, (data: any) => {\n });\n\n this._agentAssistSocket.on(EVENTS.response_resolution_comments, (data: any) => {\n this.hostIns.emit(DATA_EVENTS.RESOLUTION_COMMENTS_RESPONSE, data);\n })\n\n this._agentAssistSocket.on(EVENTS.agentassist_control_response, (data: any) => {\n });\n }\n\n getTimeout(){\n let timestamp1 = Date.now();\n let settimeoutTime = this.intervalTime;\n if ((timestamp1 - this.prevTimeStamp) < this.intervalTime) {\n settimeoutTime = (settimeoutTime * this.count) + (this.intervalTime - (timestamp1 - this.prevTimeStamp));\n this.count += 1;\n }else{\n this.count = 1;\n }\n this.prevTimeStamp = timestamp1;\n return settimeoutTime;\n }\n \n\n}\nexport default websocketservice;\n","import './aaContainer.scss';\nimport { useEffect, useState } from 'preact/hooks';\nimport { h } from 'preact';\nimport { ClassMapConstanst, IdMapConstant, ProjConstants, serviceTabMap, Tabs, coachingConst} from '../../../constants/projConsts';\nimport { AllTabs } from '../../tabs/all-tabs';\nimport { Assist } from '../../tabs/assist/assist';\nimport { Search } from '../../tabs/search/search';\nimport { Transcript } from '../../tabs/transcript/transcript';\nimport { Header } from '../../tabs/header/header';\nimport { DATA_EVENTS, SDK_EVENTS, EVENTS, INTERNAL_EVENTS } from '../../../constants/events.cnst';\nimport { MyBot } from '../../tabs/mybot/mybot';\nimport { getHTML } from '../domManager';\nimport KoreGenerateuuidPipe from '../../../utils/koregenerateuuid';\n\n\nexport function AALoder(props: any) {\n return (\n <div id=\"aa-loader-main\" className=\"loader-progress-main\">\n <div className=\"loading-border\"></div>\n </div>\n );\n}\n\nexport function AAContainer(props: any) {\n\n const [assistTabActive, setAssistTabActive] = useState(true);\n const [mybotTabActive, setMybotTabActive] = useState(false);\n const [searchTabActive, setSearchTabActive] = useState(false);\n const [transcriptTabActive, setTranscriptTabActive] = useState(false);\n const [selectedTheme, setSelectedTheme] = useState('light');\n const [coachingHints, setCoachingHints] = useState<any[]>([]);\n const [coachingNudges, setCoachingNudges] = useState<any[]>([]);\n const [showSummary, setSummaryFlag] = useState(false);\n const [summaryText, setSummaryText] = useState(\"\");\n let hints: any = [];\n let nudges: any = [];\n\n const tabsNTitles = [\n { type: 'srch', title: 'Search' },\n { type: 'mB', title: 'My Bot' },\n { type: 'ast', title: 'Assist' },\n { type: 'trnspt', title: 'Transcript' },\n ];\n const connectionDetails = props.connectionDetails;\n const sourceDesktop = 'SomeSource';\n const hideUserBotHistory = false;\n const serTabMap : any = serviceTabMap;\n const hostInstance = props.hostInstance;\n const rootServiceInstance = hostInstance.rootService;\n const selectTab : any = 'ast';\n const classConstants : any = ClassMapConstanst;\n const idMapConstants : any = IdMapConstant;\n\n let chatContainerClass = classConstants.SDK_MAIN_WRAPPER; //left-menu-nav-enable\n\n useEffect(() => {\n addHeaderTemplate();\n addFooterTemplate();\n hostInstance.on('updateActiveTab', (data : any)=> {\n toggleActiveTab(data.activeTab, data.footerTag);\n });\n\n const handleCoachingEvents = (response: any) => handleCocahingResponse(response);\n hostInstance.on('AGENT_COACHING_RESPONSES', handleCoachingEvents);\n\n hostInstance.on('END_OF_CONVERSATION', endOfConversationEvent)\n\n const getResolutionComments = (response: any) => handleSummaryResolutionComments(response);\n hostInstance.on('RESOLUTION_COMMENTS_RESPONSE', getResolutionComments)\n },[]);\n\n\n const chooseTheme = () => {\n setSelectedTheme(selectedTheme === 'light' ? 'dark' : 'light');\n };\n\n const endOfConversationEvent = () => {\n let request_resolution_comments = {\n conversationId: hostInstance?.rootService?.connectionDetails?.conversationId,\n userId: hostInstance?.rootService?.connectionDetails?.userId || '',\n botId: hostInstance?.rootService?.connectionDetails?.botId,\n sessionId: KoreGenerateuuidPipe(),\n chatHistory: hostInstance?.rootService?.connectionDetails?.chatHistory\n }\n if(hostInstance?.rootService?.connectionDetails?.summaryEnabled) {\n hostInstance.socketConnection.emitEvents(EVENTS.request_resolution_comments, request_resolution_comments);\n }\n hostInstance.socketConnection.emitEvents(EVENTS.end_of_conversation, request_resolution_comments);\n }\n\n const handleSummaryResolutionComments = (respData: any) => {\n setSummaryFlag(true);\n const summary = respData.summary[0] || \"\";\n setSummaryText(summary);\n hostInstance.socketConnection.emitEvents(EVENTS.response_resolution_comments_ack, respData, true);\n\n const summaryObj = getHTML(SummaryPopupHTMLEle, respData, hostInstance);\n const summaryOverlayEle = document.getElementsByClassName(idMapConstants.SUMMARY_OVERLAY_BLOCK)[0];\n summaryOverlayEle?.append(summaryObj);\n\n hostInstance.eventManager?.addEventListener('.aa-delete-summary-text', 'click', () => {\n deleteSummaryText();\n }, summaryObj);\n hostInstance.eventManager?.addEventListener('.aa-summit-summary-text', 'click', () => {\n submitSummaryResolution();\n }, summaryObj);\n hostInstance.eventManager?.addEventListener('.aa-copy-summary-text', 'click', () => {\n copySummaryResolution();\n }, summaryObj);\n hostInstance.eventManager?.addEventListener('.aa-close-summary-text', 'click', () => {\n closeSummaryPopup();\n }, summaryObj);\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, summaryObj, {\n event: SDK_EVENTS.CONVERSATION_SUMMARY_TEMPLATE,\n respData\n });\n }\n\n const SummaryPopupHTMLEle = (props: any) => {\n let {msgData} = props;\n return (\n <div className=\"summery-wrapper-container\">\n <div className=\"summery-popup-data\" id=\"aa-conv-summary\">\n <div className=\"title-block\">\n <h1>Summary</h1>\n <div className=\"ai-block\">\n <div>\n <svg width=\"19\" height=\"14\" viewBox=\"0 0 19 14\" fill=\"none\" >\n <path d=\"M9.99979 5.81524V8.01866C9.56245 8.60838 8.98161 8.80996 8.40024 8.80996C7.3657 8.80996 6.64453 7.93073 6.64453 6.92499C6.64453 5.90316 7.3657 5.00732 8.40024 5.00732C8.98161 5.00732 9.56245 5.21212 9.99979 5.81524Z\" fill=\"#111827\"/>\n <path d=\"M16.4016 0.310059H4.49325C4.21767 0.309988 3.94477 0.36504 3.69014 0.47207C3.43552 0.579099 3.20415 0.73601 3.00926 0.93384C2.81437 1.13167 2.65978 1.36654 2.5543 1.62505C2.44882 1.88355 2.39453 2.16062 2.39453 2.44043V9.25632C3.97002 9.26274 5.2009 10.4831 5.2009 12.0474C5.20345 12.5621 5.06557 13.0674 4.80255 13.5074H16.4016C16.9579 13.507 17.4914 13.2824 17.8848 12.883C18.2782 12.4836 18.4994 11.9419 18.4998 11.3771V2.44257C18.5001 2.1626 18.4461 1.88532 18.3408 1.62657C18.2355 1.36782 18.081 1.13269 17.8861 0.934628C17.6913 0.736565 17.4598 0.579454 17.2051 0.472284C16.9504 0.365115 16.6773 0.309988 16.4016 0.310059ZM12.2015 10.4932H10.234V9.94594C9.71132 10.2921 9.0748 10.4932 8.3113 10.4932C6.44232 10.4932 4.92796 8.91285 4.92796 6.91516C4.92796 4.88858 6.44232 3.32104 8.3113 3.32104C9.07322 3.32104 9.71132 3.5222 10.234 3.86834V3.32104H12.2015V10.4932ZM15.9679 10.4932H14.0004V3.32104H15.9706L15.9679 10.4932Z\" fill=\"#111827\"/>\n <path d=\"M2.16101 10.5996C1.30956 10.5996 0.605469 11.2231 0.605469 12.0442C0.605469 12.884 1.30956 13.5075 2.16101 13.5075C3.03295 13.5075 3.73705 12.884 3.73705 12.0442C3.73705 11.2226 3.03295 10.5996 2.16101 10.5996Z\" fill=\"#111827\"/>\n </svg>\n </div>\n <span>Suggested</span>\n <button type=\"button\" className=\"close-summery aa-close-summary-text\">\n <svg width=\"20\" height=\"21\" viewBox=\"0 0 20 21\" fill=\"none\">\n <path d=\"M15 5.2002L5 15.2002M5 5.2002L15 15.2002\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n </div>\n </div>\n <div className=\"input-block\">\n <textarea className=\"input-control\" id=\"summaryText\" placeholder=\"Type Summary...\" rows={4} cols={50} value={msgData?.summary[0]} onChange={(e) => setSummaryText((e.target as HTMLTextAreaElement).value)}></textarea>\n <button className=\"recylin-bin-btn aa-delete-summary-text\">\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n <path d=\"M13.3333 4.99996V4.33329C13.3333 3.39987 13.3333 2.93316 13.1517 2.57664C12.9919 2.26304 12.7369 2.00807 12.4233 1.84828C12.0668 1.66663 11.6001 1.66663 10.6667 1.66663H9.33333C8.39991 1.66663 7.9332 1.66663 7.57668 1.84828C7.26308 2.00807 7.00811 2.26304 6.84832 2.57664C6.66667 2.93316 6.66667 3.39987 6.66667 4.33329V4.99996M8.33333 9.58329V13.75M11.6667 9.58329V13.75M2.5 4.99996H17.5M15.8333 4.99996V14.3333C15.8333 15.7334 15.8333 16.4335 15.5608 16.9683C15.3212 17.4387 14.9387 17.8211 14.4683 18.0608C13.9335 18.3333 13.2335 18.3333 11.8333 18.3333H8.16667C6.76654 18.3333 6.06647 18.3333 5.53169 18.0608C5.06129 17.8211 4.67883 17.4387 4.43915 16.9683C4.16667 16.4335 4.16667 15.7334 4.16667 14.3333V4.99996\" stroke=\"#D92D20\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n </div>\n <div className=\"actions-footer\">\n <div className=\"footer-btns-left-sec\">\n <button className=\"aa_btn primaryBtn aa-summit-summary-text\" id=\"summarySubmit\" >Submit</button>\n <button className=\"aa_btn aa-solidbtn aa-copy-summary-text\" id=\"summaryCopy\" >Copy</button>\n </div>\n </div>\n </div>\n </div>\n )\n }\n\n const submitSummaryResolution = () => {\n const summaryTextValue = (document.getElementById(\"summaryText\") as HTMLTextAreaElement)?.value || \"\";\n let submitSummaryRequestParams = {\n conversationId : hostInstance.rootService.connectionDetails?.conversationId,\n botId: hostInstance.rootService.connectionDetails?.botId,\n summary : [\n {\n 'summary_text' : summaryTextValue\n }\n ]\n };\n hostInstance.socketConnection.emitEvents(EVENTS.submit_summary_request, submitSummaryRequestParams)\n closeSummaryPopup();\n }\n\n const copySummaryResolution = () => {\n const summaryTextValue = (document.getElementById(\"summaryText\") as HTMLTextAreaElement)?.value || \"\";\n navigator.clipboard.writeText(summaryTextValue).then(() => {\n }).catch(err => {\n });\n }\n\n const closeSummaryPopup = () => {\n const summaryTextValue = (document.getElementById(\"summaryText\") as HTMLTextAreaElement)?.value || \"\";\n hostInstance.emit(INTERNAL_EVENTS.CONVERSATION_SUMMARY_IN_ASSIST, summaryTextValue);\n const parentElement = document.querySelector('.'+idMapConstants.SUMMARY_OVERLAY_BLOCK);\n const childToRemove = document.querySelector('.summery-wrapper-container');\n if (parentElement && childToRemove) {\n // Remove the child element\n parentElement.removeChild(childToRemove);\n }\n }\n\n const deleteSummaryText = () => {\n setSummaryText(\"\");\n (document.getElementById(\"summaryText\") as HTMLTextAreaElement).value = '';\n }\n\n const handleCocahingResponse = (resData: any) => {\n\n if(resData?.action === 'nudge'){\n handleNudgeData(resData);\n } else if(resData?.action === 'hint') {\n handleHintData(resData);\n }\n }\n\n const handleNudgeData = (NudgeObject: any) =>{\n let uQ = NudgeObject.actionId;\n nudges.unshift(NudgeObject);\n setCoachingNudges(prevNudges => [NudgeObject, ...prevNudges]);\n\n const nudgeBanner : any = getHTML(nudgeHTMLEle, NudgeObject, hostInstance);\n const nudgeEle = document.getElementsByClassName(ClassMapConstanst.NUDGE_TEMPLATE)[0];\n setTimeout(() => {\n let inx = nudges.findIndex((item: any)=> item.actionId === uQ);\n if(inx >= 0){\n const nudgeElement = document.getElementById(`${uQ}`);\n if (nudgeElement) {\n nudgeElement.remove();\n coachingHints.splice(inx, 1);\n closeNudge(uQ);\n setCoachingNudges(prevNudges => prevNudges.filter((nudge: any) => nudge.actionId !== uQ));\n } \n }\n }, 7000);\n hostInstance.eventManager?.addEventListener(`.${ClassMapConstanst.NUDGE_CLOSE}`, 'click', () => {\n closeNudge(uQ);\n }, nudgeBanner);\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, nudgeBanner, {event: SDK_EVENTS.NUDGE_TEMPLATE, NudgeObject});\n nudgeEle.append(nudgeBanner);\n }\n\n const nudgeHTMLEle = (props: any) => {\n let {msgData} = props; \n return (\n <div class={`nudges-card ${coachingConst.NUDGE_DATA[msgData?.expression]?.className}`} id={`${msgData?.actionId}`}>\n {coachingConst.NUDGE_DATA[msgData?.expression]?.icon && (\n <div class=\"icon_block\">\n\n { msgData?.expression === 'neutral' && <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <path d=\"M2.55371 8.35C2.55371 7.7701 3.02381 7.3 3.60371 7.3C4.18361 7.3 4.65371 7.7701 4.65371 8.35V12.55C4.65371 13.1299 4.18361 13.6 3.60371 13.6C3.02381 13.6 2.55371 13.1299 2.55371 12.55V8.35Z\" fill=\"white\"/>\n <path d=\"M5.35371 8.23334V12.0348C5.35371 12.565 5.65331 13.0498 6.12761 13.287L6.1625 13.3044C6.5513 13.4988 6.98002 13.6 7.4147 13.6H11.206C11.8733 13.6 12.4479 13.129 12.5788 12.4746L13.4188 8.27457C13.5921 7.40826 12.9295 6.6 12.046 6.6H9.55371V3.8C9.55371 3.0268 8.92691 2.4 8.15371 2.4C7.76711 2.4 7.45371 2.7134 7.45371 3.1V3.56667C7.45371 4.1725 7.25721 4.762 6.89371 5.24667L5.91371 6.55334C5.55021 7.038 5.35371 7.6275 5.35371 8.23334Z\" fill=\"white\"/>\n </svg>}\n\n { msgData?.expression === 'alert' && <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.71312 3.61289C7.27776 2.60908 8.72302 2.60908 9.28766 3.61289L13.4086 10.9389C13.9624 11.9235 13.2509 13.14 12.1213 13.14H3.87949C2.74988 13.14 2.03841 11.9235 2.59222 10.9389L6.71312 3.61289ZM8.7388 10.9246C8.7388 11.3325 8.40817 11.6631 8.00033 11.6631C7.59248 11.6631 7.26185 11.3325 7.26185 10.9246C7.26185 10.5168 7.59248 10.1862 8.00033 10.1862C8.40817 10.1862 8.7388 10.5168 8.7388 10.9246ZM8.00033 5.01685C7.59248 5.01685 7.26185 5.34748 7.26185 5.75533V7.97075C7.26185 8.37859 7.59248 8.70922 8.00033 8.70922C8.40817 8.70922 8.7388 8.37859 8.7388 7.97075V5.75533C8.7388 5.34748 8.40817 5.01685 8.00033 5.01685Z\" fill=\"white\"/>\n </svg>}\n\n { msgData?.expression === 'critical' && <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <path d=\"M7.29961 3.1C7.29961 2.7134 7.61301 2.4 7.99961 2.4C8.38621 2.4 8.69961 2.7134 8.69961 3.1V6.95C8.69961 7.1433 8.85631 7.3 9.04961 7.3C9.24291 7.3 9.39961 7.1433 9.39961 6.95V3.8C9.39961 3.4134 9.71301 3.1 10.0996 3.1C10.4862 3.1 10.7996 3.4134 10.7996 3.8V6.95C10.7996 7.1433 10.9563 7.3 11.1496 7.3C11.3429 7.3 11.4996 7.1433 11.4996 6.95V5.2C11.4996 4.8134 11.813 4.5 12.1996 4.5C12.5862 4.5 12.8996 4.8134 12.8996 5.2V8.7C12.8996 11.4062 10.7058 13.6 7.99961 13.6C5.29341 13.6 3.09961 11.4062 3.09961 8.7V7.3C3.09961 6.9134 3.41301 6.6 3.79961 6.6C4.18621 6.6 4.49961 6.9134 4.49961 7.3V9.05C4.49961 9.2433 4.65631 9.4 4.84961 9.4C5.04291 9.4 5.19961 9.2433 5.19961 9.05V3.8C5.19961 3.4134 5.51301 3.1 5.89961 3.1C6.28621 3.1 6.59961 3.4134 6.59961 3.8V6.95C6.59961 7.1433 6.75631 7.3 6.94961 7.3C7.14291 7.3 7.29961 7.1433 7.29961 6.95V3.1Z\" fill=\"white\"/>\n </svg>}\n\n { msgData?.expression === 'positive' && <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\n <path d=\"M5.76708 0.5C5.40707 0.5 5.08084 0.712015 4.93462 1.04099L3.25425 4.82184C3.21348 4.91357 3.19219 4.96087 3.17474 4.99418L3.17319 4.99711L3.16988 4.99734C3.13236 4.99976 3.08048 5 2.9801 5L2.58073 5C2.31715 4.99999 2.08977 4.99998 1.90249 5.01528C1.70481 5.03144 1.50821 5.06709 1.31902 5.16349C1.03677 5.3073 0.807302 5.53677 0.663492 5.81901C0.567095 6.0082 0.531437 6.20481 0.515286 6.40249C0.499985 6.58977 0.499992 6.81714 0.5 7.08071V9.41927C0.499992 9.68284 0.499985 9.91023 0.515286 10.0975C0.531437 10.2952 0.567095 10.4918 0.663492 10.681C0.807302 10.9632 1.03677 11.1927 1.31902 11.3365C1.50821 11.4329 1.70481 11.4686 1.90249 11.4847C2.08977 11.5 2.31715 11.5 2.58072 11.5C2.81228 11.5 3 11.3123 3 11.0807L3 7C3 6.72386 3.22386 6.5 3.5 6.5C3.77614 6.5 4 6.72386 4 7L4 10.7C4 10.98 4 11.12 4.0545 11.227C4.10243 11.3211 4.17892 11.3976 4.27301 11.4455C4.37996 11.5 4.51997 11.5 4.8 11.5H7.9598C8.30918 11.5 8.59925 11.5 8.83792 11.4818C9.08711 11.4629 9.31681 11.4222 9.53857 11.3217C9.88536 11.1646 10.1801 10.9117 10.3881 10.5929C10.5212 10.3889 10.5963 10.1681 10.6529 9.9247C10.7072 9.69158 10.7513 9.40489 10.8044 9.05958L11.0722 7.31883C11.1426 6.86136 11.2003 6.4863 11.2207 6.18021C11.2418 5.86439 11.228 5.56971 11.1203 5.28725C10.9548 4.85354 10.6437 4.49087 10.2402 4.26142C9.9774 4.11199 9.68824 4.05357 9.37289 4.02636C9.06724 3.99999 8.68779 3.99999 8.22491 4H7.8C7.65174 4 7.57061 3.99961 7.51232 3.99485L7.50573 3.99428L7.50515 3.98768C7.50039 3.92939 7.5 3.84826 7.5 3.7V2.23292C7.5 1.27585 6.72415 0.5 5.76708 0.5Z\" fill=\"#039855\"/>\n </svg>}\n </div>\n )}\n <p>{msgData?.message?.title}</p>\n <button className=\"close-nudge aa-close-nudge\" aria-label=\"button\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <path d=\"M4 12L12 4M4 4L12 12\" stroke=\"white\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n </div>\n\n )\n }\n \n const closeNudge = (uQ: any) => {\n let inx = nudges.findIndex((item: any)=> item.actionId === uQ);\n if(inx >= 0){\n const nudgeElement = document.getElementById(`${uQ}`);\n if (nudgeElement) {\n nudgeElement.remove();\n nudges.splice(inx, 1);\n setCoachingNudges(prevNudges => prevNudges.filter((nudge: any) => nudge.actionId !== uQ));\n }\n }\n }\n\n const handleHintData = (hintObject: any) => {\n let uQ = hintObject.actionId;\n hints.unshift(hintObject);\n setCoachingHints(prevHints => [hintObject, ...prevHints]);\n // this.hintScrollBottom(true);\n const HintBanner = getHTML(hintHTMLEle, hintObject, hostInstance);\n const hintEle = document.getElementsByClassName(ClassMapConstanst.HINT_TEMPLATE)[0];\n if(hintObject?.message?.postAction !== 'doesnot_auto_close'){\n setTimeout(() => {\n let inx = hints.findIndex((item: any)=> item.actionId === uQ);\n if(inx >= 0){\n const hintElement = document.getElementById(`${uQ}`);\n if (hintElement) {\n hintElement.remove();\n hints.splice(inx, 1);\n setCoachingHints(prevHints => prevHints.filter((hints: any) => hints.actionId !== uQ));\n }\n }\n }, (hintObject.message?.time < 900 ? hintObject.message?.time : 900) * 1000);\n }\n hostInstance.eventManager?.addEventListener(`.${ClassMapConstanst.HINT_CLOSE}`, 'click', () => {\n closeHint(uQ);\n }, HintBanner)\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, HintBanner, {event: SDK_EVENTS.HINT_TEMPLATE, hintObject});\n hintEle.append(HintBanner);\n }\n\n const hintHTMLEle = (props: any) => {\n const {msgData} = props;\n return (\n <div className={`hint-card ${coachingConst?.HINT_DATA[msgData?.expression]?.className}`} style={{ border: coachingConst?.HINT_DATA[msgData?.expression]?.color }} id={`${msgData.actionId}`}>\n <div className=\"top-card-info\">\n {coachingConst?.HINT_DATA[msgData?.expression]?.icon && (\n <div className=\"icon_block\">\n\n { msgData?.expression === 'positive' && <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\n <path d=\"M5.76708 0.5C5.40707 0.5 5.08084 0.712015 4.93462 1.04099L3.25425 4.82184C3.21348 4.91357 3.19219 4.96087 3.17474 4.99418L3.17319 4.99711L3.16988 4.99734C3.13236 4.99976 3.08048 5 2.9801 5L2.58073 5C2.31715 4.99999 2.08977 4.99998 1.90249 5.01528C1.70481 5.03144 1.50821 5.06709 1.31902 5.16349C1.03677 5.3073 0.807302 5.53677 0.663492 5.81901C0.567095 6.0082 0.531437 6.20481 0.515286 6.40249C0.499985 6.58977 0.499992 6.81714 0.5 7.08071V9.41927C0.499992 9.68284 0.499985 9.91023 0.515286 10.0975C0.531437 10.2952 0.567095 10.4918 0.663492 10.681C0.807302 10.9632 1.03677 11.1927 1.31902 11.3365C1.50821 11.4329 1.70481 11.4686 1.90249 11.4847C2.08977 11.5 2.31715 11.5 2.58072 11.5C2.81228 11.5 3 11.3123 3 11.0807L3 7C3 6.72386 3.22386 6.5 3.5 6.5C3.77614 6.5 4 6.72386 4 7L4 10.7C4 10.98 4 11.12 4.0545 11.227C4.10243 11.3211 4.17892 11.3976 4.27301 11.4455C4.37996 11.5 4.51997 11.5 4.8 11.5H7.9598C8.30918 11.5 8.59925 11.5 8.83792 11.4818C9.08711 11.4629 9.31681 11.4222 9.53857 11.3217C9.88536 11.1646 10.1801 10.9117 10.3881 10.5929C10.5212 10.3889 10.5963 10.1681 10.6529 9.9247C10.7072 9.69158 10.7513 9.40489 10.8044 9.05958L11.0722 7.31883C11.1426 6.86136 11.2003 6.4863 11.2207 6.18021C11.2418 5.86439 11.228 5.56971 11.1203 5.28725C10.9548 4.85354 10.6437 4.49087 10.2402 4.26142C9.9774 4.11199 9.68824 4.05357 9.37289 4.02636C9.06724 3.99999 8.68779 3.99999 8.22491 4H7.8C7.65174 4 7.57061 3.99961 7.51232 3.99485L7.50573 3.99428L7.50515 3.98768C7.50039 3.92939 7.5 3.84826 7.5 3.7V2.23292C7.5 1.27585 6.72415 0.5 5.76708 0.5Z\" fill=\"#039855\"/>\n </svg>}\n\n { msgData?.expression === 'neutral' && <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M10.2008 6.00005C10.2008 8.31964 8.32038 10.2 6.00078 10.2C3.68119 10.2 1.80078 8.31964 1.80078 6.00005C1.80078 3.68045 3.68119 1.80005 6.00078 1.80005C8.32038 1.80005 10.2008 3.68045 10.2008 6.00005ZM6.52578 8.10005C6.52578 8.39 6.29073 8.62505 6.00078 8.62505C5.71083 8.62505 5.47578 8.39 5.47578 8.10005C5.47578 7.8101 5.71083 7.57505 6.00078 7.57505C6.29073 7.57505 6.52578 7.8101 6.52578 8.10005ZM6.00078 3.37505C5.71083 3.37505 5.47578 3.6101 5.47578 3.90005V6.00005C5.47578 6.29 5.71083 6.52505 6.00078 6.52505C6.29073 6.52505 6.52578 6.29 6.52578 6.00005V3.90005C6.52578 3.6101 6.29073 3.37505 6.00078 3.37505Z\" fill=\"#667085\"/>\n </svg>}\n\n { msgData?.expression === 'alert' && <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.40714 0.834185C6.14848 0.719172 5.8532 0.719172 5.59454 0.834185C5.39478 0.923011 5.26501 1.07947 5.17471 1.20696C5.08593 1.3323 4.99087 1.49651 4.88634 1.67711L0.75276 8.81693C0.647804 8.99818 0.552428 9.16289 0.487757 9.30268C0.422033 9.44475 0.35073 9.63572 0.373455 9.85369C0.40286 10.1357 0.550631 10.392 0.779988 10.5588C0.957236 10.6877 1.15823 10.7217 1.31411 10.736C1.46749 10.75 1.65782 10.75 1.86726 10.75H10.1344C10.3438 10.75 10.5342 10.75 10.6876 10.736C10.8434 10.7217 11.0444 10.6877 11.2217 10.5588C11.451 10.392 11.5988 10.1357 11.6282 9.85369C11.651 9.63572 11.5796 9.44475 11.5139 9.30268C11.4493 9.1629 11.3539 8.9982 11.2489 8.81697L7.11533 1.67709C7.0108 1.49651 6.91575 1.3323 6.82697 1.20696C6.73667 1.07947 6.6069 0.923011 6.40714 0.834185ZM6.50085 4.5C6.50085 4.22386 6.277 4 6.00085 4C5.72471 4 5.50085 4.22386 5.50085 4.5V6.5C5.50085 6.77614 5.72471 7 6.00085 7C6.277 7 6.50085 6.77614 6.50085 6.5V4.5ZM6.00085 8C5.72471 8 5.50085 8.22386 5.50085 8.5C5.50085 8.77614 5.72471 9 6.00085 9H6.00585C6.282 9 6.50585 8.77614 6.50585 8.5C6.50585 8.22386 6.282 8 6.00585 8H6.00085Z\" fill=\"#F79009\"/>\n </svg>}\n\n { msgData?.expression === 'critical' && <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\n <path d=\"M3.45 5.72222V7.11111M3.45 5.72222V2.38889C3.45 1.92865 3.83056 1.55556 4.3 1.55556C4.76944 1.55556 5.15 1.92865 5.15 2.38889M3.45 5.72222C3.45 5.26198 3.06944 4.88889 2.6 4.88889C2.13056 4.88889 1.75 5.26198 1.75 5.72222V6.83333C1.75 9.13452 3.65279 11 6 11C8.34721 11 10.25 9.13452 10.25 6.83333V4.05556C10.25 3.59532 9.86944 3.22222 9.4 3.22222C8.93056 3.22222 8.55 3.59532 8.55 4.05556M5.15 2.38889V5.44444M5.15 2.38889V1.83333C5.15 1.3731 5.53056 1 6 1C6.46944 1 6.85 1.3731 6.85 1.83333V2.38889M6.85 2.38889V5.44444M6.85 2.38889C6.85 1.92865 7.23056 1.55556 7.7 1.55556C8.16944 1.55556 8.55 1.92865 8.55 2.38889V4.05556M8.55 4.05556V5.44444\" stroke=\"#F04438\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>}\n \n </div>\n )}\n <h1>{msgData.message.title}</h1>\n <button className=\"close-hint aa-close-hint\" aria-label=\"button\">\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#E3E8EF\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </svg>\n </button>\n </div>\n <div className=\"body-hint\">\n <p>{msgData.message.body}</p>\n </div>\n <div className=\"footer-hint\">\n {msgData.adherence?.adType === 'ack' && (\n <button>\n {msgData.adherence?.ackText}\n </button>\n )}\n </div>\n </div>\n );\n }\n\n const closeHint = (uQ: any) => {\n let inx = hints.findIndex((item: any)=> item.actionId === uQ);\n if(inx >= 0){\n const hintElement = document.getElementById(`${uQ}`);\n if (hintElement) {\n hintElement.remove();\n hints.splice(inx, 1);\n setCoachingHints(prevHints => prevHints.filter((hints: any) => hints.actionId !== uQ));\n }\n }\n }\n \n // const hintScrollBottom = (flag: any) => {\n // if(flag && this.overlayhint){\n // this.overlayhint.nativeElement.scrollTop = 0;\n // }\n // }\n \n const hintAckPressed = (data: any) => {\n data[\"ackPressed\"] = true;\n hostInstance.socketConnection.emitEvents(EVENTS.agent_coaching_ackpress, data);\n }\n\n const addHeaderTemplate = () => {\n let headerTemplate : any;\n headerTemplate = getHTML(Header, {}, hostInstance);\n let headerSection = hostInstance.chatEle.querySelector(classConstants.HEADER);\n if(headerSection && headerTemplate){\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, headerTemplate, { event: SDK_EVENTS.HEADER_TEMPLATE, data : {}});\n headerSection.append(headerTemplate);\n hostInstance?.eventManager?.addEventListener(`#${idMapConstants.PROACTIVE_BTN}`, 'click', (event: any) => {\n hostInstance?.emit(DATA_EVENTS.PRO_ACTIVE_CHANGE, event.target.checked);\n hostInstance?.handleOverrideMode(!event.target.checked);\n }, headerTemplate);\n }\n }\n\n const addFooterTemplate = () => {\n let allTabs: any;\n allTabs = getHTML(AllTabs,\n {\n tabsNTitles, selectedTab : serTabMap[selectTab], showTranscript: hostInstance.rootService.connectionDetails.channel === ProjConstants.VOICE, connectionDetails,\n sourceDesktop, hideUserBotHistory, projConstants: Tabs,\n selectedTheme, chooseTheme: chooseTheme, hostInstance\n },\n hostInstance);\n\n let footerTag = hostInstance.chatEle.querySelector(classConstants.FOOTER);\n\n if (footerTag) {\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, allTabs, { event: SDK_EVENTS.FOOTER_TEMPLATE, data : {tabsNTitles, footerTag}});\n footerTag.append(allTabs);\n tabsNTitles.forEach((tab: any) => {\n hostInstance.eventManager?.addEventListener(`${classConstants.FOOTER_BTN}${tab.type}`, 'click', () => {\n toggleActiveTab(tab.type, footerTag);\n }, footerTag);\n });\n }\n }\n\n const toggleActiveTab = (activeTab: any, footerTag: any) => { \n updateTabActive(activeTab);\n tabsNTitles.forEach((tab) => {\n let footerTabEle = footerTag.querySelector(`${classConstants.FOOTER_BTN}${tab.type}`);\n if (tab.type === activeTab) {\n footerTabEle?.classList?.add(...[\"selected-tab\", \"sel-bg\"]);\n } else {\n footerTabEle?.classList?.remove(...[\"selected-tab\", \"sel-bg\"]);\n }\n })\n }\n\n const updateTabActive = (tab : string, removeOtherTabs = true)=>{\n rootServiceInstance.activeTab = serviceTabMap[tab];\n if(removeOtherTabs){\n setAssistTabActive(false);\n setMybotTabActive(false);\n setSearchTabActive(false);\n setTranscriptTabActive(false);\n }\n switch (tab) {\n case 'ast':\n setAssistTabActive(true);\n break;\n case 'srch':\n setSearchTabActive(true);\n break;\n case 'mB':\n setMybotTabActive(true);\n break;\n case 'trnspt':\n setTranscriptTabActive(true);\n break;\n\n default:\n setAssistTabActive(true);\n break;\n }\n }\n \n return (\n <div className={chatContainerClass} aria-label='agent-window-section'>\n <section className=\"section-agent-aa-wrapper\">\n <header className=\"aa-header\">\n </header>\n <section className=\"body-container-aa\">\n <div className={assistTabActive ? 'animate-compo-slide-up-wrapper' : 'aa-hidden'}>\n <Assist hostInstance={hostInstance}/>\n </div>\n <div className={searchTabActive ? 'animate-compo-slide-up-wrapper' : 'aa-hidden'}>\n <Search hostInstance={hostInstance}/>\n </div>\n {<div className={transcriptTabActive ? 'animate-compo-slide-up-wrapper' : 'aa-hidden'}>\n <Transcript hostInstance={hostInstance}/>\n </div>}\n <div className={mybotTabActive ? 'animate-compo-slide-up-wrapper' : 'aa-hidden'}>\n <MyBot hostInstance={hostInstance}/>\n </div>\n </section>\n <footer className=\"aa-footer\">\n </footer>\n <div className=\"nudges-wrapper-fixed \">\n <div className=\"nudges-template-data aa-nudges-template-data\">\n </div>\n </div>\n\n <div className=\"hints-wrapper-fixed \">\n <div className=\"hints-template-data aa-hints-template-data\">\n </div>\n </div>\n </section>\n </div>\n );\n}\n","import { Fragment, h } from 'preact';\nimport { useEffect, useState } from 'preact/hooks';\nimport { ClassMapConstanst, ProjConstants, RenderResponseType } from '../../../constants/projConsts';\nimport KoreGenerateuuidPipe from '../../../utils/koregenerateuuid';\nimport {AssistSuggestions} from '../assist-suggestions/assist-suggestions';\nimport './assist.scss';\nimport { getHTML } from '../../base/domManager';\nimport { SDK_EVENTS } from '../../../constants/events.cnst';\n\nexport function Assist({ hostInstance }: any) {\n \n const rootServiceInstance = hostInstance.rootService;\n const [assistResponseArray, setAssistResponseArray] = useState<any>([]);\n const [ambiguityToken, setAmbiguityToken] = useState<any>({});\n const [welcomeMsgResponse, setWelcomeMsgResponse] = useState<any>({});\n const [hideEmptyScreen, setHideEmptyScreen] = useState(true);\n\n const classConstants : any = ClassMapConstanst\n\n useEffect(() => {\n const conversationSummaryResponse = (summaryResponse: any) => showConversationSummaryResponse(summaryResponse);\n hostInstance.on('CONVERSATION_SUMMARY_IN_ASSIST', conversationSummaryResponse);\n\n const handleAgentAssistResponse = (assistResponse: any) => { \n if (assistResponse && Object.keys(assistResponse)?.length > 0) {\n processAgentAssistResponse(assistResponse);\n }\n };\n hostInstance.on('AGENT_AI_RESPONSE', handleAgentAssistResponse);\n\n return () => {\n hostInstance.off('AGENT_AI_RESPONSE', handleAgentAssistResponse);\n };\n }, []);\n\n useEffect(() => { \n const assistEle = document.querySelector(classConstants.ASSIST_SECTION) as HTMLElement;\n assistEle.scrollTop = assistEle.scrollHeight;\n }, [assistResponseArray])\n\n const showConversationSummaryResponse = (summaryObj: any) => {\n if(assistResponseArray.length === 0) {\n setHideEmptyScreen(false)\n } \n const summaryBannerAssist = getHTML(SummaryBannerHTMLEle, summaryObj, hostInstance);\n const summaryOverlayEle = document.getElementsByClassName(classConstants.SCROLL_DATA_ASSIST)[0];\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, summaryBannerAssist, {\n event: SDK_EVENTS.SUMMARY_TEMPLATE_ASSIST,\n summaryObj\n });\n summaryOverlayEle?.append(summaryBannerAssist);\n hostInstance.eventManager?.addEventListener('.aa-copy-summary-text', 'click', () => {\n copySummaryText(summaryObj);\n }, summaryBannerAssist);\n }\n\n const SummaryBannerHTMLEle = (props: any) => {\n let {msgData} = props;\n return (\n <div class=\"summery-conv-banner-wrapper\">\n <div class=\"heading-text\">\n <svg width=\"19\" height=\"14\" viewBox=\"0 0 19 14\" fill=\"none\" >\n <path d=\"M9.99979 5.81524V8.01866C9.56245 8.60838 8.98161 8.80996 8.40024 8.80996C7.3657 8.80996 6.64453 7.93073 6.64453 6.92499C6.64453 5.90316 7.3657 5.00732 8.40024 5.00732C8.98161 5.00732 9.56245 5.21212 9.99979 5.81524Z\" fill=\"#111827\"/>\n <path d=\"M16.4016 0.310059H4.49325C4.21767 0.309988 3.94477 0.36504 3.69014 0.47207C3.43552 0.579099 3.20415 0.73601 3.00926 0.93384C2.81437 1.13167 2.65978 1.36654 2.5543 1.62505C2.44882 1.88355 2.39453 2.16062 2.39453 2.44043V9.25632C3.97002 9.26274 5.2009 10.4831 5.2009 12.0474C5.20345 12.5621 5.06557 13.0674 4.80255 13.5074H16.4016C16.9579 13.507 17.4914 13.2824 17.8848 12.883C18.2782 12.4836 18.4994 11.9419 18.4998 11.3771V2.44257C18.5001 2.1626 18.4461 1.88532 18.3408 1.62657C18.2355 1.36782 18.081 1.13269 17.8861 0.934628C17.6913 0.736565 17.4598 0.579454 17.2051 0.472284C16.9504 0.365115 16.6773 0.309988 16.4016 0.310059ZM12.2015 10.4932H10.234V9.94594C9.71132 10.2921 9.0748 10.4932 8.3113 10.4932C6.44232 10.4932 4.92796 8.91285 4.92796 6.91516C4.92796 4.88858 6.44232 3.32104 8.3113 3.32104C9.07322 3.32104 9.71132 3.5222 10.234 3.86834V3.32104H12.2015V10.4932ZM15.9679 10.4932H14.0004V3.32104H15.9706L15.9679 10.4932Z\" fill=\"#111827\"/>\n <path d=\"M2.16101 10.5996C1.30956 10.5996 0.605469 11.2231 0.605469 12.0442C0.605469 12.884 1.30956 13.5075 2.16101 13.5075C3.03295 13.5075 3.73705 12.884 3.73705 12.0442C3.73705 11.2226 3.03295 10.5996 2.16101 10.5996Z\" fill=\"#111827\"/>\n </svg>\n <h1 className=\"aa-text-sm medium\">CONVERSATION SUMMARY</h1>\n </div>\n <li>\n <span className=\"summary-text\">{msgData}</span>\n <button class=\"copy-btn aa-copy-summary-text\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <g clip-path=\"url(#clip0_9506_130502)\">\n <path d=\"M10.6663 10.6663V12.533C10.6663 13.2797 10.6663 13.6531 10.521 13.9383C10.3932 14.1892 10.1892 14.3932 9.93833 14.521C9.65311 14.6663 9.27974 14.6663 8.53301 14.6663H3.46634C2.7196 14.6663 2.34624 14.6663 2.06102 14.521C1.81014 14.3932 1.60616 14.1892 1.47833 13.9383C1.33301 13.6531 1.33301 13.2797 1.33301 12.533V7.46634C1.33301 6.7196 1.33301 6.34624 1.47833 6.06102C1.60616 5.81014 1.81014 5.60616 2.06102 5.47833C2.34624 5.33301 2.7196 5.33301 3.46634 5.33301H5.33301M7.46634 10.6663H12.533C13.2797 10.6663 13.6531 10.6663 13.9383 10.521C14.1892 10.3932 14.3932 10.1892 14.521 9.93833C14.6663 9.65311 14.6663 9.27974 14.6663 8.53301V3.46634C14.6663 2.7196 14.6663 2.34624 14.521 2.06102C14.3932 1.81014 14.1892 1.60616 13.9383 1.47833C13.6531 1.33301 13.2797 1.33301 12.533 1.33301H7.46634C6.7196 1.33301 6.34624 1.33301 6.06102 1.47833C5.81014 1.60616 5.60616 1.81014 5.47833 2.06102C5.33301 2.34624 5.33301 2.7196 5.33301 3.46634V8.53301C5.33301 9.27974 5.33301 9.65311 5.47833 9.93833C5.60616 10.1892 5.81014 10.3932 6.06102 10.521C6.34624 10.6663 6.7196 10.6663 7.46634 10.6663Z\" stroke=\"#101828\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n </g>\n <defs>\n <clipPath id=\"clip0_9506_130502\">\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\n </clipPath>\n </defs>\n </svg>\n </button>\n </li>\n </div>\n )\n }\n\n const copySummaryText = (summaryText: any) => {\n navigator.clipboard.writeText(summaryText);\n }\n\n const processAgentAssistResponse = (data: any) => {\n let responseId = KoreGenerateuuidPipe();\n let renderResponse: any = {}; \n if (!rootServiceInstance.isAutomationOnGoing && data.suggestions && Object.keys(data.suggestions)?.length > 0) {\n if (!data.uiunqref) {\n renderResponse = formatSuggestionRenderResponse(data, responseId);\n if(renderResponse && Object.keys(renderResponse)?.length > 0){\n setAssistResponseArray((prevResponse : any) => [...prevResponse, renderResponse]);\n }\n } else if(data.uiunqref){\n let ambiguityTokenExt : any = JSON.parse(atob(data.uiunqref));\n setAssistResponseArray((prevResponse: any) => {\n let faqAnswerIdsPlace = ambiguityTokenExt && ambiguityTokenExt?.question === data.suggestions?.faqs[0].question ? true : false;\n if (faqAnswerIdsPlace) {\n let assistResArray: any = rootServiceInstance.updateSearchResponse(prevResponse, data, ambiguityTokenExt);\n return assistResArray;\n }\n return prevResponse;\n });\n setAmbiguityToken(ambiguityTokenExt);\n }\n }\n if(data.sendMenuRequest && data?.buttons?.length > 0 && Object.keys(welcomeMsgResponse)?.length == 0){\n renderResponse = rootServiceInstance.formatWelcomeMessageResponse(data);\n setWelcomeMsgResponse(data);\n // assistResponseArray = rootServiceInstance.formatRunningLastSmallTalkEntityNode(assistResponseArray, renderResponse);\n\n }\n }\n\n const formatSuggestionRenderResponse = (data : any, responseId : any) => {\n if(data && Object.keys(data)?.length > 0){\n data.suggestionFrom = ProjConstants.ASSIST;\n }\n let suggestionIndex = 0;\n setAssistResponseArray((prevResponse : any) => {\n if(prevResponse?.length > 0){\n suggestionIndex = prevResponse?.length;\n }\n return prevResponse;\n })\n let renderResponse = {\n data: data,\n type: RenderResponseType.SUGGESTIONS,\n uuid: responseId,\n searchResponse: rootServiceInstance.formatSearchResponse(data, false, suggestionIndex),\n connectionDetails: rootServiceInstance.connectionDetails\n }\n return renderResponse;\n }\n \n return (\n <Fragment>\n <div className=\"assist-data-wrapper-container\">\n <div className=\"assist-block-content\">\n <div className=\"assist-header-content\">\n <div className=\"left-title-info\">\n <div className=\"text-dropdown-info\">\n <h1>Assist</h1>\n </div>\n </div>\n </div>\n <div className=\"scroll-data-assist aa-assist-section\">\n {(assistResponseArray)?.map((response: any, index: any) => {\n return response.type === RenderResponseType.SUGGESTIONS && (\n <AssistSuggestions hostInstance={hostInstance} suggestions={response} suggestionIndex={index} key={index} ambiguityToken={ambiguityToken} />\n )\n }\n )}\n\n {assistResponseArray.length === 0 && Object.keys(welcomeMsgResponse)?.length === 0 && (\n <Fragment>\n { hideEmptyScreen && <div class=\"empty-listing-triggers\">\n <h1 className=\"aa-text-sm medium m-0 center\">Listening for triggers</h1>\n <p className=\"aa-desc-xs m-0 center\">Agent AI is actively listening to your conversation and ready to assist automatically when triggered.</p>\n </div>}\n </Fragment>\n )}\n </div>\n </div>\n </div>\n </Fragment>\n )\n}\n","import { Fragment, h } from 'preact';\nimport { useState, useEffect, useRef } from 'preact/hooks';\nimport './transcript.scss';\nimport { getHTML } from '../../base/domManager';\nimport { SDK_EVENTS } from '../../../constants/events.cnst';\nimport fetchInstance from '../../../utils/interceptor';\nimport { ClassMapConstanst, ProjConstants } from '../../../constants/projConsts';\n\ninterface TranscriptProps {\n hostInstance: any;\n}\n\ninterface MessageData {\n timestamp: string;\n msg: string;\n from: string;\n type: string;\n}\n\nexport function Transcript({ hostInstance }: TranscriptProps) {\n\n const [messages, setMessages] = useState<MessageData[]>([]);\n const [userAgentHistory, setUserAgentHistory] = useState<any[]>([]);\n const [userBotHistory, setUserBotHistory] = useState<any[]>([]);\n const [summary, setSummary] = useState<any>(undefined);\n const [agentJoinedBanner, setAgentJoinedBanner] = useState<{ title: string; timeStamp: string } | null>(null);\n const isInitialRender = useRef(true);\n const rootServiceInstance = hostInstance.rootService;\n const classMapConstansts: any = ClassMapConstanst;\n\n // Socket and History API call methods\n useEffect(() => {\n listeningToSocketEvents();\n transcriptHistoryAPICall();\n }, []);\n\n // User and Agent transcript messages from Socket\n const listeningToSocketEvents =() => {\n const handleUserAgentMessage = (agentResponse: any) => handleTranscriptionResponse(agentResponse);\n\n hostInstance.on('AGENT_TRANSCRIPT_MSG', handleUserAgentMessage);\n hostInstance.on('USER_TRANSCRIPT_MSG', handleUserAgentMessage);\n\n hostInstance.on('AGENT_TRANSCRIPT_RESPONSE', handleUserAgentMessage);\n hostInstance.on('USER_TRANSCRIPT_RESPONSE', handleUserAgentMessage);\n }\n\n // Transcript History API call\n const transcriptHistoryAPICall = () => {\n fetchTranscriptHistoryData().then((res: any) => {\n if (res) {\n const { userBotMessages, summary, userAgentMessages } = res;\n const processedUserBotMessages = processMessages(userBotMessages?.result);\n setUserBotHistory(processedUserBotMessages);\n if (summary?.message) {\n summaryBannerData(summary);\n }\n const processedUserAgentMessages = processMessages(userAgentMessages?.result);\n setUserAgentHistory(processedUserAgentMessages);\n } \n })\n .catch((error: any) => {\n addAgentJoiningBanner();\n });\n \n }\n\n useEffect(() => {\n if(isInitialRender.current){\n isInitialRender.current = false;\n return;\n }\n (userBotHistory || []).forEach((element: any) => {\n if (element?.components[0]?.data?.text) {\n handleUserBotHistoryResponse(element);\n }\n });\n if (summary?.msg) {\n const summaryBanner = getHTML(SummaryEleBanner, summary, hostInstance);\n const transcriptEle = document.getElementsByClassName(classMapConstansts.TRANSCRIPT_BODY_WRAPPER)[0];\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, summaryBanner, { event: SDK_EVENTS.SUMMARY_TEMPLATE, summary });\n transcriptEle.append(summaryBanner);\n }\n addAgentJoiningBanner();\n (userAgentHistory || []).forEach((element: any) => {\n if ((element?.msgType === 'USER' || element?.msgType === 'AGENT') && element?.components[0]?.data?.text) {\n handleUserAgentHistoryResponse(element);\n }\n });\n }, [userBotHistory, userAgentHistory, summary]);\n\n const processMessages = (messages: any[]) => {\n if(!messages?.length){\n return [];\n }\n return messages.map(item => {\n try {\n if (typeof item?.components[0]?.data?.text === 'string') {\n const parsedText = JSON.parse(item.components[0].data.text);\n if (parsedText?.payload?.text) {\n item.components[0].data.text = parsedText.payload.text;\n }\n }\n } catch {\n // Handle JSON parsing error if needed\n }\n return item;\n });\n };\n\n const fetchTranscriptHistoryData: any = () => {\n let isSummaryRequired = true;\n const {botId, conversationId, channel, sessionId} = rootServiceInstance.connectionDetails || {};\n let params = {\n conversationId,\n botId,\n channel,\n sessionId: sessionId || 0,\n isSummaryRequired: isSummaryRequired,\n }\n return fetchInstance('get_history_trascript', {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json',\n },\n }, hostInstance, params\n );\n\n\n };\n\n // userBot Converstion Transcript History\n const handleUserBotHistoryResponse = (response: any) => {\n\n const data: MessageData = {\n timestamp: formatStandardTime(response.createdOn),\n msg: response.components[0]?.data?.text,\n from: response.msgType === 'BOT' ? 'bot' : 'user',\n type: response.msgType === 'BOT' ? 'bot' : 'user'\n };\n\n const trnsptBubble = getHTML(TranscriptBubble, data, hostInstance);\n const transcriptEle = document.getElementsByClassName(classMapConstansts.TRANSCRIPT_BODY_WRAPPER)[0];\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, trnsptBubble, {\n event: response.msgType === 'BOT' ? SDK_EVENTS.BOT_TRANSCRIPT : SDK_EVENTS.USER_TRANSCRIPT,\n data\n });\n transcriptEle.append(trnsptBubble);\n }\n\n // userAgent Conversation Transcript History\n const handleUserAgentHistoryResponse = (response: any) => {\n const data: MessageData = {\n timestamp: formatStandardTime(response.createdOn),\n msg: response.components[0]?.data?.text,\n from: response.msgType === 'AGENT' ? 'agent' : 'user',\n type: response.msgType === 'AGENT' ? 'agent' : 'user'\n };\n\n const trnsptBubble = getHTML(TranscriptBubble, data, hostInstance);\n const transcriptEle = document.getElementsByClassName(classMapConstansts.TRANSCRIPT_BODY_WRAPPER)[0];\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, trnsptBubble, {\n event: response.msgType === 'AGENT' ? SDK_EVENTS.AGENT_TRANSCRIPT : SDK_EVENTS.USER_TRANSCRIPT,\n data\n });\n transcriptEle.append(trnsptBubble);\n }\n\n // conversion of standard UTC timestamp\n const formatStandardTime = (timeStamp: any) => {\n const date = new Date(timeStamp);\n let hours = date.getUTCHours();\n let minutes: any = date.getUTCMinutes();\n const ampm = hours >= 12 ? 'pm' : 'am';\n \n hours = hours % 12;\n hours = hours ? hours : 12;\n minutes = minutes < 10 ? '0' + minutes : minutes;\n \n return `${hours}:${minutes} ${ampm}`;\n }\n\n // Live conversation of user and Agent Transcripts\n const handleTranscriptionResponse = (response: any) => {\n const data: MessageData = {\n timestamp: formatAmpm(new Date()),\n msg: response?.value,\n from: response?.author?.type?.toLowerCase(),\n type: response?.author?.type?.toLowerCase()\n };\n\n setMessages([...messages, data]);\n const trnsptBubble = getHTML(TranscriptBubble, data, hostInstance) ;\n const transcriptEle = document.getElementsByClassName(classMapConstansts.TRANSCRIPT_BODY_WRAPPER)[0];\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, trnsptBubble, {\n event: response?.author?.type === 'AGENT' ? SDK_EVENTS.AGENT_TRANSCRIPT : SDK_EVENTS.USER_TRANSCRIPT, \n data\n });\n transcriptEle.append(trnsptBubble);\n }\n\n // Live converstion timestamp conversion\n const formatAmpm = (date: any) => {\n let hours = date.getHours();\n let minutes = date.getMinutes();\n let ampm = hours >= 12 ? 'pm' : 'am';\n hours = hours % 12;\n hours = hours ? hours : 12;\n minutes = minutes < 10 ? '0' + minutes : minutes;\n let strTime = hours + ':' + minutes + ' ' + ampm;\n return strTime;\n }\n\n // Banner for the Agent Joining\n const addAgentJoiningBanner = () => {\n const timeStr = formatAmpm(new Date());\n const data = { title: 'Agent joined the conversation', timeStamp: timeStr };\n \n setAgentJoinedBanner(agentJoinedBanner);\n \n const agentJoinBanner = getHTML(AgentJoiningEleBanner, data, hostInstance);\n const transcriptEle = document.getElementsByClassName(classMapConstansts.TRANSCRIPT_BODY_WRAPPER)[0];\n hostInstance.emit(SDK_EVENTS.BEFORE_VIEW_INIT, agentJoinBanner, {\n event: SDK_EVENTS.AGENT_JOINED_TEMPLATE, data\n });\n transcriptEle.append(agentJoinBanner);\n }\n\n // Agent joining banner HTML\n const AgentJoiningEleBanner = (props: any) => {\n const {msgData} = props;\n return (\n <div className=\"agent-joined-banner\">\n <div className=\"line-border\"></div>\n <div className=\"info-joined-details\">\n <h4 className=\"aa-text-sm\">{msgData.title}</h4>\n {/* <p className=\"aa-desc-xs\">{msgData.timeStamp}</p> */}\n </div>\n <div className=\"line-border\"></div>\n </div>\n )\n }\n\n \n const SummaryEleBanner = (props: any) => {\n const {msgData} = props;\n return (\n <div className=\"summary-wrapper\">\n <div className=\"summary-header\">\n <i className=\"krIocnsFont-Aimark\"></i>\n <span className=\"aa-text-md medium\">{msgData.title}</span>\n </div>\n <p className=\"aa-text-sm\">{msgData.msg}</p>\n </div>\n )\n }\n\n const summaryBannerData = (response: any) => {\n let data: any = {\n title : 'Conversation Summary',\n msg : response?.message\n }\n setSummary(data);\n }\n\n // Message Bubbles for user agent\n const TranscriptBubble = (props: any)=>{\n const { msgData } = props;\n return (\n <div className={msgData.type === 'user' ? 'aa-bot-bubble-comp' : 'aa-agent-bubble-comp'}>\n <div className={msgData.type === 'user' ? 'bot-bubble-content' : 'agent-bubble-content'}>\n <div className=\"top-info\">\n {msgData.type !== 'bot' && (<div className=\"you-text\">{msgData.type === 'agent' ? 'agent' : 'user'}</div>)}\n {msgData.type === 'bot' && (<div className=\"you-text\">{msgData.type === 'bot' ? 'bot' : 'user'}</div>)}\n <div className=\"time-tamp\">\n <time>{msgData.timestamp}</time>\n </div>\n </div>\n <div className=\"bubble-msg\">{msgData.msg}</div>\n </div>\n </div>\n \n );\n };\n\n //scroll to bottom during message incoming\n useEffect(() => {\n const transcriptEle = document.querySelector('.aa-transcript-body-wrapper') as HTMLElement;\n transcriptEle.scrollTop = transcriptEle.scrollHeight;\n }, [messages]);\n\n\n return (\n <Fragment> \n <div className=\"transcript-template-wrapper\">\n <div className=\"transcript-template-data\">\n <h1 className=\"transcript-header aa-text-md semibold\">Transcript</h1>\n <div className=\"transcript-body-wrapper aa-transcript-body-wrapper\">\n </div>\n </div>\n </div>\n </Fragment>\n );\n}","\nconst endPoints:any = {\n 'jwt_grant': '/api/1.1/oAuth/token/jwtgrant',\n 'get_aa_settings': '/agentassist/api/v1/agentassist/:botId/agentassistsetting?e=:channel',\n 'get_history_trascript': '/agentassist/api/v1/agentassistconversations/:conversationId/conversation?page=0&limit=-1&botId=:botId&sessionId=:sessionId&isSummaryRequired=:isSummaryRequired&experience=:channel'\n};\n\nconst fetchInstance = async (endPoint: string, options: any = {}, hostInst: any, params?: any ) => {\n try {\n const replacedURL = replaceValuesInString(endPoints[endPoint], params);\n const { domainURL, botId } = hostInst.rootService.connectionDetails;\n const { accountId } = hostInst.rootService.grantResponseObj?.userInfo || {};\n const { accessToken } = hostInst.rootService.grantResponseObj?.authorization || {};\n \n let headers = new Headers(options.headers || {});\n let headerObj : any = { iid: botId, accountId, Authorization: 'bearer '+accessToken, 'Content-Type': 'application/json' };\n\n Object.keys(headerObj).forEach((key) => {\n headers.set(key, headerObj[key]);\n });\n\n const modifiedOptions = {\n ...options,\n headers,\n };\n\n const API_URL = domainURL+replacedURL;\n const response = await fetch(API_URL, modifiedOptions);\n if (!response.ok) {\n const error = await response.json();\n throw new Error(error.message || 'Something went wrong');\n };\n return await response.json();\n } catch (error) {\n console.error('Fetch error:', error);\n throw error;\n }\n};\n\nfunction replaceValuesInString(template: any, values: any) {\n return template.replace(/:(\\w+)/g, (_:any, key:any) => {\n return values[key] !== undefined ? values[key] : `:${key}`;\n });\n}\nexport default fetchInstance;","__webpack_require__.h = () => (\"9aa12e021d27d8abdd47\")"],"names":[],"sourceRoot":""}
|