const showCxengageMessengerProactive=async()=>{if(!cxengageProactiveChatMessage)return void console.warn("showCxengageMessengerProactive() called but cxengageProactiveChatMessage is not defined");const e=document.getElementById("cxengage-web-messenger-proactive");if(e)e.style.display="block";else{for(;null===document.getElementById("web-messenger-container");)await new Promise((e=>requestAnimationFrame(e)));const e=cxengageWebMessengerConfig?cxengageWebMessengerConfig.config.style.brandColor:"65758e";let t;t=cxengageWebMessengerConfig?"tab"===cxengageWebMessengerConfig.config.style.displayStyle?cxengageWebIntegrationId?70:50:cxengageWebMessengerConfig.config.style.buttonHeight?+cxengageWebMessengerConfig.config.style.buttonHeight+50:108:108,document.getElementById("web-messenger-container").insertAdjacentHTML("beforebegin",`\n
\n \n
\n ${cxengageProactiveChatMessage}\n
\n
{const e=document.getElementById("cxengage-web-messenger-proactive");e&&(e.style.display="none")};let cxengageWebMessengerOptions,conversationId,disconnectStatus="false",latest=0;if(cxengageWebIntegrationId)cxengageWebMessengerOptions={integrationId:cxengageWebIntegrationId,canUserSeeConversationList:!1,delegate:{beforeDisplay:function(e){if(e){if("disconnect-conversation"===e?.metadata?.type)return null;if(e?.received&&(latest=e?.received>latest?e?.received:latest),e?.metadata?.disconnectStatus&&e?.received==latest&&(disconnectStatus=e.metadata.disconnectStatus,!document.getElementById("endChat"))){var t=document.getElementById("web-messenger-container");const e=``;t.insertAdjacentHTML("beforebegin",e)}return"false"===e?.metadata?.disconnectStatus&&(conversationId=e.metadata.conversationId),!1===e?.metadata?.displayMessage?null:e&&e.metadata&&"system"===e.metadata.type&&"CxEngageHiddenMessage"===e.metadata.from?null:(e&&"business"===e.role&&e.metadata&&("agent"===e.metadata.type&&e.metadata.firstName?e.displayName=e.metadata.firstName:e.metadata.from&&(e.displayName=e.metadata.from)),e||null)}return null}}};else{if(!cxengageWebAppId)throw new Error("Unable to init chat without integration id or app id.");cxengageWebMessengerOptions={appId:cxengageWebAppId,delegate:{beforeDisplay:function(e){return e.metadata&&"system"===e.metadata.type&&"CxEngageHiddenMessage"===e.metadata.from?null:("appMaker"===e.role&&e.metadata&&("agent"===e.metadata.type&&e.metadata.firstName?e.name=e.metadata.firstName:e.metadata.from&&(e.name=e.metadata.from)),e)}},browserStorage:"sessionStorage",customText:{}},cxengagePrechatCaptureGreetingText&&(cxengageWebMessengerOptions.customText.prechatCaptureGreetingText=cxengagePrechatCaptureGreetingText),cxengagePrechatCaptureConfirmationText&&(cxengageWebMessengerOptions.customText.prechatCaptureConfirmationText=cxengagePrechatCaptureConfirmationText)}function initSDK(e){SerenovaWebChat.init(e).then((function(){if(cxengageProactiveChatTimer){if(!cxengageProactiveChatMessage)return void console.warn("tried to set cxengageProactiveChatTimer called but cxengageProactiveChatMessage is not defined");setTimeout((()=>{showCxengageMessengerProactive()}),1e3*cxengageProactiveChatTimer)}}))}
// initializing the web-chat
// Reinitializing the web-chat
function reInit(e){initSDK(e)}
// Clear and end Chat Function
function clearChat(){const e=document.getElementById("endChat");e.disabled=!0,"false"===disconnectStatus&&SerenovaWebChat.sendMessage({type:"text",text:"disconnect-conversation",metadata:{type:"disconnect-conversation"}},conversationId),setTimeout((()=>{localStorage.removeItem(cxengageWebIntegrationId+".appUserId"),localStorage.removeItem(cxengageWebIntegrationId+".clientId"),localStorage.removeItem(cxengageWebIntegrationId+".sessionToken"),e.remove(),SerenovaWebChat.destroy(),reInit(cxengageWebMessengerOptions)}),3e3)}cxengageRegion&&(cxengageWebMessengerOptions.region=cxengageRegion),initSDK(cxengageWebMessengerOptions);