{"version":3,"file":"2322.chunk.b296cedeb4feb17e40de.js","mappings":"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","sources":["webpack://apexchatwidgets/./widgets/core/hooks/encodeHTML.js","webpack://apexchatwidgets/./widgets/core/hooks/setHexWithAlphaToSolid.js","webpack://apexchatwidgets/./widgets/core/hooks/removeMultipleCSSClasses.js","webpack://apexchatwidgets/./widgets/core/hooks/addClass.js","webpack://apexchatwidgets/./widgets/core/hooks/setPrechatStyles.js","webpack://apexchatwidgets/./widgets/core/hooks/RebasePath.js","webpack://apexchatwidgets/./widgets/core/hooks/PreChatMessageAnimations.js","webpack://apexchatwidgets/./widgets/core/hooks/hasClass.js","webpack://apexchatwidgets/./widgets/core/hooks/Animation.js","webpack://apexchatwidgets/./widgets/core/MessageView.js","webpack://apexchatwidgets/./widgets/core/hooks/getValuesOfObjectAsArray.js","webpack://apexchatwidgets/./widgets/core/hooks/stringify.js","webpack://apexchatwidgets/./widgets/core/enums/BrandingWidget.js","webpack://apexchatwidgets/./widgets/core/hooks/underscore.js","webpack://apexchatwidgets/./widgets/core/hooks/MessageStatus.js","webpack://apexchatwidgets/./widgets/core/hooks/getHeightOfElement.js","webpack://apexchatwidgets/./widgets/core/extend.js","webpack://apexchatwidgets/./widgets/core/hooks/MessageVisibility.js","webpack://apexchatwidgets/./widgets/core/enums/SourceTypes.js","webpack://apexchatwidgets/./widgets/core/hooks/Branding.js","webpack://apexchatwidgets/./widgets/core/WidgetView.js","webpack://apexchatwidgets/./widgets/core/hooks/localStorageAPIGet.js","webpack://apexchatwidgets/./widgets/core/hooks/setTextColorBasedOnBg.js"],"sourcesContent":["const encodeHTML = (html) => {\r\n const txt = document.createElement('textarea');\r\n txt.innerText = html;\r\n return txt.innerHTML;\r\n};\r\nexport default encodeHTML;\r\n","function setHexWithAlphaToSolid(hexColor) {\r\n // Remove the \"#\" if it exists\r\n hexColor = hexColor.replace(\"#\", \"\");\r\n\r\n // If it's a 3-character hex, expand to 6 characters\r\n if (hexColor.length === 4) {\r\n hexColor = hexColor.split(\"\").map(x => x + x).join(\"\");\r\n }\r\n\r\n // Convert hex to RGB\r\n const r = parseInt(hexColor.substring(0, 2), 16);\r\n const g = parseInt(hexColor.substring(2, 4), 16);\r\n const b = parseInt(hexColor.substring(4, 6), 16);\r\n\r\n // Calculate luminance (lighter colors will have higher luminance)\r\n const luminance = 0.2126 * r + 0.7152 * g + 0.0722 * b;\r\n\r\n // If the color is light (luminance > 128), return it as is (no alpha blending)\r\n if (luminance > 128) {\r\n return `#${hexColor}`; // Return the original hex color without modification\r\n }\r\n\r\n // If it's a 4-character hex (with alpha), expand it\r\n if (hexColor.length === 8) {\r\n const a = parseInt(hexColor.substring(6, 8), 16) / 255; // Convert alpha to a 0-1 range\r\n\r\n // Blend with white (255, 255, 255) based on alpha\r\n const solidR = Math.round(r * a + (1 - a) * 255);\r\n const solidG = Math.round(g * a + (1 - a) * 255);\r\n const solidB = Math.round(b * a + (1 - a) * 255);\r\n\r\n // Return the solid color as hex\r\n return `#${solidR.toString(16).padStart(2, '0')}${solidG.toString(16).padStart(2, '0')}${solidB.toString(16).padStart(2, '0')}`;\r\n }\r\n\r\n // If it's just a solid 6-character hex, return it as is\r\n return `#${hexColor}`;\r\n}\r\n\r\n\r\nexport default setHexWithAlphaToSolid;","import hasClass from \"./hasClass\";\r\n\r\nconst removeMultipleCSSClasses = (ele, cls) => {\r\n const multiClass = cls.split(' ');\r\n if (multiClass.length > 0) {\r\n for (let i = 0; i < multiClass.length; i++) {\r\n if (hasClass(ele, multiClass[i])) {\r\n const reg = new RegExp(`(\\\\s|^)${multiClass[i]}(\\\\s|$)`);\r\n ele.className = ele.className.replace(reg, ' ');\r\n }\r\n }\r\n }\r\n};\r\nexport default removeMultipleCSSClasses;\r\n","import hasClass from './hasClass';\r\n\r\nconst addClass = function (ele, cls) {\r\n if (ele) {\r\n if (!hasClass(ele, cls)) {\r\n ele.className += ` ${cls}`;\r\n }\r\n }\r\n};\r\nexport default addClass;\r\n","import RebasePath from './RebasePath';\r\nimport setTextColorBasedOnBg from './setTextColorBasedOnBg';\r\n\r\nconst setPrechatStyles = (root, preChatObject) => {\r\n const { preChat } = preChatObject;\r\n root.documentElement.style.setProperty(\r\n '--innerObjectBackgroundImage',\r\n RebasePath(preChat.handlerImageUrl)\r\n );\r\n root.documentElement.style.setProperty(\r\n '--innerObjectBorderColor',\r\n preChat.innerObject.borderColor\r\n );\r\n root.documentElement.style.setProperty('--innerObjectPadding', preChat.innerObject.padding);\r\n root.documentElement.style.setProperty(\r\n '--innerObjectBorderColor',\r\n preChat.innerObject.borderColor\r\n );\r\n root.documentElement.style.setProperty(\r\n '--innerObjectBorderWidth',\r\n preChat.innerObject.borderWidth\r\n );\r\n root.documentElement.style.setProperty('--innerObjectPadding', preChat.innerObject.padding);\r\n root.documentElement.style.setProperty(\r\n '--innerObjectBorderRadius',\r\n preChat.innerObject.borderRadius\r\n );\r\n root.documentElement.style.setProperty(\r\n '--outerObjectBackgroundImage',\r\n preChat.outerObject.backgroundImage\r\n );\r\n // root.documentElement.style.setProperty('--outerObjectBorderColor', preChat.outerObject.borderColor);\r\n root.documentElement.style.setProperty(\r\n '--outerObjectBorderWidth',\r\n preChat.outerObject.borderWidth\r\n );\r\n root.documentElement.style.setProperty('--outerObjectPadding', preChat.outerObject.padding);\r\n root.documentElement.style.setProperty(\r\n '--outerObjectBorderRadius',\r\n preChat.outerObject.borderRadius\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messageCounterBackgroundColor',\r\n preChat.messageCounter.backgroundColor\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messageCounterFontFamily',\r\n preChat.messageCounter.font.family\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messageCounterFontSize',\r\n preChat.messageCounter.font.size\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messageCounterFontColor',\r\n preChat.messageCounter.font.color\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messagePopupBackgroundColor',\r\n preChat.messagePopup.backgroundColor\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messagePopupBorderRadius',\r\n preChat.messagePopup.borderRadius\r\n );\r\n root.documentElement.style.setProperty('--messagePopupPadding', preChat.messagePopup.padding);\r\n root.documentElement.style.setProperty(\r\n '--messagePopupFontFamily',\r\n preChat.messagePopup.font.family\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messagePopupFontSize',\r\n preChat.messagePopup.font.size\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messagePopupFontColor',\r\n preChat.messagePopup.font.color\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messagePopupCloseIconHeight',\r\n preChat.messagePopup.closeIconSize.height\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messagePopupCloseIconWidth',\r\n preChat.messagePopup.closeIconSize.width\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messageCounterCounterRight',\r\n preChat.messageCounter.counterRight\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messageCounterCounterTop',\r\n preChat.messageCounter.counterTop\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messagePopupBorderWidth',\r\n preChat.messagePopup.borderWidth\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messagePopupBackgroundColor',\r\n preChat.messagePopup.backgroundColor\r\n );\r\n if (preChatObject.rdThemeSettings.questionType.qTQuestion) {\r\n root.documentElement.style.setProperty(\r\n '--messagePopupHighlightColor',\r\n preChatObject.rdThemeSettings.questionType.qTQuestion\r\n );\r\n root.documentElement.style.setProperty(\r\n '--qTButton',\r\n preChatObject.rdThemeSettings.questionType.qTQuestion\r\n );\r\n root.documentElement.style.setProperty(\r\n '--qTButtonText',\r\n preChat.messagePopup.lowLightColor\r\n );\r\n } else {\r\n root.documentElement.style.setProperty(\r\n '--messagePopupHighlightColor',\r\n preChat.messagePopup.highLightColor\r\n );\r\n root.documentElement.style.setProperty(\r\n '--qTButton',\r\n preChat.messagePopup.highLightColor\r\n );\r\n root.documentElement.style.setProperty(\r\n '--qTButtonText',\r\n preChat.messagePopup.lowLightColor\r\n );\r\n }\r\n\r\n root.documentElement.style.setProperty(\r\n '--messagePopupAgentNameFontColor',\r\n preChat.messagePopup.agentNameFontColor\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messagePopupRdGlowTagColor',\r\n preChat.messagePopup.rdGlowTagColor\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messagePopupLowLightColor',\r\n preChat.messagePopup.lowLightColor\r\n );\r\n root.documentElement.style.setProperty(\r\n '--messagePopupMainFontColor',\r\n preChat.messagePopup.mainFontColor\r\n );\r\n if (preChat.enableBranding && ApexChat.IsRoundedDynamicPlusTheme) {\r\n const brandSolid = preChatObject.rdThemeSettings.questionType.qTQuestion\r\n const visitorMsgBubble = `${brandSolid}66`\r\n const textColor = setTextColorBasedOnBg(brandSolid)\r\n const staticDark = \"#020202\";\r\n\r\n root.documentElement.style.setProperty('--messagePopupRdGlowTagColor', brandSolid);\r\n root.documentElement.style.setProperty('--onlineAgentTagColor', textColor);\r\n root.documentElement.style.setProperty('--sendBtnColor', textColor);\r\n root.documentElement.style.setProperty('--visitorFontColor', setTextColorBasedOnBg(visitorMsgBubble));\r\n root.documentElement.style.setProperty('--messagePopupLowLightColor', textColor);\r\n root.documentElement.style.setProperty('--headerFontColor', textColor);\r\n root.documentElement.style.setProperty('--hallowBtn', staticDark);\r\n }\r\n};\r\nexport default setPrechatStyles;\r\n","import GlobalVariables from '../GlobalVariables';\r\n\r\nconst RebasePath = (filePath) => {\r\n let path = filePath;\r\n if (path.startsWith('http')) {\r\n return `url(${path})`;\r\n }\r\n if (path.startsWith('/')) {\r\n path = path.substring(1);\r\n }\r\n if (env.IsCDN === 'true') {\r\n return `url(${GlobalVariables.CdnBaseUrl}${path})`;\r\n }\r\n return `url(${GlobalVariables.ApexChatBaseUrl}${path})`;\r\n};\r\nexport default RebasePath;\r\n","// An enum to keep the 3 prechat message animations\r\nconst PreChatMessageAnimations = {\r\n First: 'apexchat_prechat_first_msg', //\r\n Upcoming: 'apexchat_prechat_upcoming_msg', //\r\n Previous: 'apexchat_prechat_prev_msg', //\r\n FadeOut: 'apexchat_prechat_fade_out' //\r\n};\r\nexport default PreChatMessageAnimations;\r\n","const hasClass = function (ele, cls) {\r\n if (ele) {\r\n return ele.className.match(new RegExp(`(\\\\s|^)${cls}(\\\\s|$)`));\r\n }\r\n};\r\nexport default hasClass;\r\n","import RunAfter from \"./RunAfter\";\r\nimport RunAsSoonAs from \"./RunAsSoonAs\";\r\nimport RunUntil from \"./RunUntil\";\r\n\r\nconst Animation = function (options) {\r\n this.isActive = false;\r\n this.name = options && options.name;\r\n const _name = this.name;\r\n const animate = options && options.animationFunction;\r\n const animateAfter = options && options.runAfter;\r\n const animateAsSoonAs = options && options.runAsSoonAs;\r\n const animateUntil = options && options.runUntil;\r\n const animateUntilIf = options && options.runUntilCondition;\r\n const _start_animate = function (time) {\r\n this.isActive = true;\r\n if (animateAfter) {\r\n if (time > 0) {\r\n RunAfter(() => {\r\n animate(_name);\r\n }, time || animateAfter);\r\n } else {\r\n animate(_name);\r\n }\r\n } else if (animateAsSoonAs) {\r\n RunAsSoonAs(animate, () => animateAsSoonAs);\r\n } else if (animateUntil) {\r\n RunUntil(animate, animateUntil, animateUntilIf);\r\n }\r\n };\r\n return {\r\n start: _start_animate,\r\n isActive: this.isActive,\r\n name: this.name\r\n };\r\n};\r\nexport default Animation;\r\n","/*\r\n Currently designed specifically for PreChat Message views\r\n */\r\nimport Animation from './hooks/Animation';\r\nimport MessageStatus from './hooks/MessageStatus';\r\nimport MessageVisibility from './hooks/MessageVisibility';\r\nimport PreChatMessageAnimations from './hooks/PreChatMessageAnimations';\r\nimport SimpleView from './SimpleView';\r\nimport getValuesOfObjectAsArray from './hooks/getValuesOfObjectAsArray';\r\nimport showElement from './hooks/showElement';\r\n\r\nexport default class MessageView {\r\n constructor(options) {\r\n if (!options) {\r\n return this.create(); // in case of page reloads\r\n }\r\n const me = this;\r\n this.status = options && options.status;\r\n this.visibility = options && options.visibility;\r\n\r\n this.index = options && options.index;\r\n this.model = options && options.model;\r\n this.targetElementSelector = options && options.targetElementSelector;\r\n this.renderOninit = options && options.renderOninit;\r\n this.isLastMessage = true;\r\n this.isFirstMessage = true;\r\n // the html part of the message\r\n me.view = new SimpleView({\r\n context: options.context,\r\n identifier: `${this.model.messageTypeText}_${this.model.id}`,\r\n template: options.template,\r\n model: this.model,\r\n containerSelector: '.apexchat_prechat_message_bubble',\r\n wrap: options.wrap,\r\n rawContent: this.model.message,\r\n renderOninit: this.renderOninit,\r\n targetElementSelector: this.targetElementSelector,\r\n isTemplateAlreadyParsed: true,\r\n beforeRender() {\r\n this.template =\r\n this.template ||\r\n ApexChat.preChatMsgTemplate ||\r\n ApexChat.sessionAPI.Get('livechat_prechat_msg_template');\r\n this.template = this.template\r\n .replace('##message##', this.rawContent)\r\n .replace('apexchat_prechat_message_popup', this.identifier);\r\n },\r\n afterRender() {\r\n ApexChat.preChatElement = this.context.querySelector(`#${this.identifier}`);\r\n const el = this.context.querySelector(`#${this.identifier}`);\r\n showElement(el, true);\r\n }\r\n });\r\n // the following keeps all sorts of animations available in the message so we can invoke one by animate()\r\n me.animations = {};\r\n const animationTypes = getValuesOfObjectAsArray(PreChatMessageAnimations);\r\n for (let i = 0; i < animationTypes.length; i++) {\r\n const animationName = animationTypes[i];\r\n // var animation = ApexChat.PreChatMessageAnimations[animationName];\r\n me.animations[animationName] = new Animation({\r\n name: animationName,\r\n runAfter: 1, // 1 = 1ms, 1000 = 1sec\r\n animationFunction(animationCss) {\r\n me.view.addClass(animationCss);\r\n }\r\n });\r\n }\r\n this.animationTypes = animationTypes;\r\n }\r\n\r\n // used to invoke an animation by name\r\n animate(animation, time) {\r\n let _animation;\r\n if (!animation) {\r\n _animation = this.animations[PreChatMessageAnimations.First];\r\n } else {\r\n _animation = this.animations[animation];\r\n }\r\n _animation.start(time);\r\n }\r\n\r\n // used to create an empty message on reloads\r\n create() {\r\n this.status = MessageStatus.Unread;\r\n this.visibility = MessageVisibility.Visible;\r\n this.animation = PreChatMessageAnimations.Appeared;\r\n this.index = 0;\r\n this.model = {};\r\n this.targetElementSelector = '';\r\n return this;\r\n }\r\n\r\n // after creating a default message using create(), fill in it by parsing the actual message taken out from the cache\r\n parse(messageView) {\r\n this.status = messageView.status;\r\n this.visibility = messageView.visibility;\r\n this.index = messageView.index;\r\n this.model = messageView.model;\r\n this.targetElementSelector = messageView.targetElementSelector;\r\n this.renderOninit = messageView.renderOninit;\r\n this.isLastMessage = messageView.isLastMessage;\r\n this.isFirstMessage = messageView.isFirstMessage;\r\n this.view = new SimpleView({\r\n context: this.context,\r\n identifier: this.model.id,\r\n template: messageView.view.template,\r\n model: this.model,\r\n wrap: messageView.view.wrap,\r\n rawContent: messageView.view.rawContent,\r\n renderOninit: this.renderOninit,\r\n targetElementSelector: this.targetElementSelector\r\n });\r\n }\r\n\r\n // used to detect which animation a message is in currently\r\n getCurrentAnimatedState() {\r\n for (let i = 0; i < this.animations.length; i++) {\r\n if (this.animations[i].isActive()) {\r\n return this.animations[i].name;\r\n }\r\n }\r\n }\r\n\r\n isRead() {\r\n return this.status === MessageStatus.Read;\r\n }\r\n\r\n isVisible() {\r\n return this.visibility === MessageVisibility.Visible;\r\n }\r\n\r\n getMessageType() {\r\n return this.model.messageType; // ApexChat.ScriptsQuestionType\r\n }\r\n}\r\n","/**\r\n * It takes object and returns values as array\r\n * usage: getValuesOfObjectAsArray({obj1: 'test1', obj2: 'test2'});\r\n * returns ['test1', 'test2']\r\n * @param {any} obj\r\n */\r\nconst getValuesOfObjectAsArray = function (obj) {\r\n const values = [];\r\n for (const i in obj) {\r\n if (obj.hasOwnProperty(i)) {\r\n values.push(obj[i]);\r\n }\r\n }\r\n return values;\r\n};\r\nexport default getValuesOfObjectAsArray;\r\n","/**\r\n * ApexChat.stringify is same as JSON.stringify, Its wraps the default JSON.stringify,\r\n * because many client's website can polute the JSON.stringify and we have observed this in ticket #CHAT-6786\r\n * @param {any} value\r\n * @param {any} replacer\r\n * @param {any} space\r\n */\r\nconst stringify = function (value, replacer, space) {\r\n // Checking Its Array Type or Normal JSON\r\n if (value && value.length) {\r\n const val = window.JSON.stringify(value, replacer, space);\r\n // JSON has quoted with invalid Inverted commas, we are removing it elsewise returning the same value.\r\n return val.match(/^\".*/) ? val.substring(1, val.length - 1) : val;\r\n }\r\n return window.JSON.stringify(value, replacer, space);\r\n};\r\nexport default stringify;\r\n","const BrandingWidget = {\r\n RD_DOM: 1,\r\n RD_Invitation: 2,\r\n RD_EP: 3,\r\n RD_PreChat: 4\r\n};\r\nexport default BrandingWidget;\r\n","// note: contains utility function like lodash.js\r\n// todo: this should be move to some other location in a better way\r\nconst underscore = {\r\n // todo: very basic implementation without any typechecking\r\n firstIndex(items, predicate) {\r\n let selectedindex = -1;\r\n for (let i = 0; i < items.length; i++) {\r\n if (predicate(items[i])) {\r\n selectedindex = i;\r\n break;\r\n }\r\n }\r\n return selectedindex;\r\n },\r\n isFunction(func) {\r\n return typeof func === 'function';\r\n },\r\n // isArray: function (func) {\r\n // // for safe-side for very old browsers like chrome 5 and current version is Chrome#90.\r\n // if (typeof Array.isArray === 'undefined') {\r\n // Array.isArray = function (obj) {\r\n // return Object.prototype.toString.call(obj) === '[object Array]';\r\n // }\r\n // }\r\n // return Array.isArray(func);\r\n // },\r\n isPlainObject(obj) {\r\n /**\r\n * Because of IE, we must also check the constructor properties to ensure that node objects and window objects are not passed.\r\n */\r\n if (!obj || typeof obj !== 'object' || obj.nodeType || underscore.isWindow(obj)) {\r\n return false;\r\n }\r\n try {\r\n // If obj has no constructor attribute and no obj in the prototype chain of obj returns false\r\n if (\r\n obj.constructor &&\r\n !underscore.hasOwn.call(obj, 'constructor') &&\r\n !underscore.hasOwn.call(obj.constructor.prototype, 'isPrototypeOf')\r\n ) {\r\n return false;\r\n }\r\n } catch (e) {\r\n // IE8,9 will throw throw exceptions on certain host\r\n return false;\r\n }\r\n let key;\r\n for (key in obj) {\r\n }\r\n /**\r\n * If the key is not assigned, return fasle\r\n */\r\n return key === undefined || underscore.hasOwn.call(obj, key);\r\n },\r\n hasOwn:\r\n {}.hasOwnProperty ||\r\n function (prop) {\r\n if (prop in this) {\r\n const value = this[prop];\r\n\r\n if (!delete this[prop]) {\r\n return true;\r\n }\r\n if (!(prop in this) || this[prop] !== value) {\r\n this[prop] = value;\r\n return true;\r\n }\r\n }\r\n return false;\r\n },\r\n isWindow(obj) {\r\n return obj != null && obj === obj.window;\r\n }\r\n};\r\nexport default underscore;\r\n","// An enum to track message state in terms of user's action\r\nconst MessageStatus = {\r\n Unread: 0,\r\n Read: 1,\r\n Closed: 2\r\n};\r\nexport default MessageStatus;\r\n","import getStyle from './getStyle';\r\n\r\nconst getHeightOfElement = function (ele) {\r\n return parseInt(getStyle(ele, 'height'));\r\n};\r\nexport default getHeightOfElement;\r\n","import underscore from \"./hooks/underscore\";\r\n\r\nexport default function extend() {\r\n let options;\r\n let name;\r\n let src;\r\n let copy;\r\n let copyIsArray;\r\n let clone;\r\n let target = arguments[0] || {};\r\n let i = 1;\r\n const { length } = arguments;\r\n let deep = false;\r\n // Handle a deep copy situation\r\n if (typeof target === 'boolean') {\r\n deep = target;\r\n target = arguments[1] || {};\r\n // skip the boolean and the target\r\n i = 2;\r\n }\r\n // Handle case when target is a string or something (possible in deep copy)\r\n if (typeof target !== 'object' && !underscore.isFunction(target)) {\r\n target = {};\r\n }\r\n // extend jQuery itself if only one argument is passed\r\n if (length === i) {\r\n target = this;\r\n --i;\r\n }\r\n for (; i < length; i++) {\r\n // Only deal with non-null/undefined values\r\n if ((options = arguments[i]) != null) {\r\n // Extend the base object\r\n for (name in options) {\r\n src = target[name];\r\n copy = options[name];\r\n // Prevent never-ending loop\r\n if (target === copy) {\r\n continue;\r\n }\r\n // Recurse if we're merging plain objects or arrays\r\n if (\r\n deep &&\r\n copy &&\r\n (underscore.isPlainObject(copy) || (copyIsArray = Array.isArray(copy)))\r\n ) {\r\n if (copyIsArray) {\r\n copyIsArray = false;\r\n clone = src && Array.isArray(src) ? src : [];\r\n } else {\r\n clone = src && underscore.isPlainObject(src) ? src : {};\r\n }\r\n // Never move original objects, clone them\r\n target[name] = extend(deep, clone, copy);\r\n // Don't bring in undefined values\r\n } else if (copy !== undefined) {\r\n target[name] = copy;\r\n }\r\n }\r\n }\r\n }\r\n // Return the modified object\r\n return target;\r\n}\r\n","// An enum to track message state in terms of visibility of message\r\nconst MessageVisibility = {\r\n Hidden: 0,\r\n Visible: 1\r\n};\r\nexport default MessageVisibility;\r\n","const SourceType = {\r\n PreChat: 1,\r\n VideoGreet: 2\r\n};\r\nexport default SourceType;\r\n","import extend from '../extend';\r\nimport BrandingWidget from '../enums/BrandingWidget';\r\n\r\n/**\r\n * Apply Branding.\r\n * takes config as param returns by settings branding values\r\n * used in Portal & Visitor-end\r\n */\r\nexport default class Branding {\r\n init(options, me) {\r\n this.widget = options.widget;\r\n // Brand config\r\n this.brand = { config: options.brandConfig };\r\n this.brandColor = this.brand.config.global.branding.brandColorCode;\r\n this.brandColorOpacity = `${this.brand.config.global.branding.brandColorCode}0F`; // Hex code 0F for 4% opacity\r\n\r\n // Apply Branding config\r\n this.applyBranding(this.widget);\r\n return this;\r\n }\r\n\r\n applyBranding(widget) {\r\n const me = this;\r\n switch (widget) {\r\n case BrandingWidget.RD_DOM:\r\n return (function () {\r\n // Generic function for RD DOM, takes property of specfic widget, and set up the config.\r\n me.overrideConfig(BrandingWidget.RD_DOM, 'rdChat');\r\n })();\r\n case BrandingWidget.RD_Invitation:\r\n return (function () {\r\n // Generic function, takes property of specfic widget, and set up the config.\r\n me.overrideConfig(BrandingWidget.RD_Invitation, 'rdInvitation');\r\n })();\r\n case BrandingWidget.RD_EP:\r\n return (function () {\r\n // Generic function, takes property of specfic widget, and set up the config.\r\n me.overrideConfig(BrandingWidget.RD_EP, 'exitPopupChat');\r\n })();\r\n case BrandingWidget.RD_PreChat:\r\n return (function () {\r\n // Generic function, takes property of specfic widget, and set up the config.\r\n me.overrideConfig(BrandingWidget.RD_DOM, 'rdThemeSettings');\r\n me.overrideConfig(BrandingWidget.RD_PreChat, 'preChat');\r\n })();\r\n default:\r\n }\r\n }\r\n\r\n /**\r\n * / Generic function which override the config for branding\r\n * @param {any} widget\r\n * @param {any} propertyName\r\n */\r\n overrideConfig(widget, propertyName) {\r\n const me = this;\r\n // getting branding object\r\n const brandedConfig = me.getBrandingElements(widget);\r\n const backupConfig = JSON.parse(JSON.stringify(me.brand.config)); // Cloning object\r\n\r\n // overriding the orignal config with branding\r\n const config = extend(true, me.brand.config[propertyName], brandedConfig);\r\n backupConfig[propertyName] = config;\r\n me.brandedConfig = backupConfig;\r\n }\r\n\r\n getBrandedConfig() {\r\n return this.brandedConfig;\r\n }\r\n\r\n getBrandingElements(widget) {\r\n const me = this;\r\n // In case of branding Visitor Response text is static #3A3A3A\r\n const brandingStaticValues = {\r\n color: '#3A3A3A',\r\n backgroundColor: '#3A3A3A0F',\r\n whiteText: '#FFFFFF',\r\n darkOpacity: `#303030${80}`\r\n };\r\n switch (widget) {\r\n case BrandingWidget.RD_DOM:\r\n return {\r\n enableBranding: true,\r\n brandColor: me.brandColor,\r\n brandColorOpacity: me.brandColorOpacity,\r\n whiteText: brandingStaticValues.whiteText,\r\n general: {\r\n headerColor: me.brandColor,\r\n disclaimerFont: {\r\n color: me.brandColor\r\n },\r\n disclaimerBgColor: me.brandColorOpacity\r\n },\r\n messages: {\r\n agentFont: {\r\n color: me.brandColor\r\n },\r\n visitorFont: {\r\n color: brandingStaticValues.color\r\n },\r\n visitorBgColor: brandingStaticValues.backgroundColor,\r\n typingIndicatorDots: me.brandColor,\r\n agentBgColor: me.brandColorOpacity\r\n },\r\n questionType: {\r\n qTBorder: me.brandColor,\r\n qTQuestion: me.brandColor,\r\n qTButton: me.brandColor\r\n }\r\n };\r\n case BrandingWidget.RD_Invitation:\r\n return {\r\n general: {\r\n backgroundColor: me.brandColor,\r\n typingIndicator: me.brandColor,\r\n btnClose: me.brandColorOpacity\r\n },\r\n rdIcon: {\r\n dotColor: me.brandColor,\r\n dotAnimationColor: me.brandColor\r\n }\r\n };\r\n case BrandingWidget.RD_EP:\r\n return {\r\n enableBranding: true,\r\n general: {\r\n leftBarBackground1Color: me.brandColor,\r\n leftBarBackground2Color: me.brandColor,\r\n btnClose: me.brandColorOpacity,\r\n opacityBrandColor: me.brandColorOpacity,\r\n disclaimerFont: {\r\n color: me.brandColor\r\n }\r\n },\r\n header: {\r\n participantsFont: {\r\n color: brandingStaticValues.whiteText\r\n }\r\n },\r\n messages: {\r\n agentFontField: {\r\n color: me.brandColor\r\n },\r\n visitorFontField: {\r\n color: brandingStaticValues.color\r\n }\r\n },\r\n body: {\r\n typingIndicatorFont: {\r\n color: me.brandColor\r\n }\r\n },\r\n sendButton: {\r\n sendbuttonBackgroundColor: me.brandColor\r\n }\r\n };\r\n case BrandingWidget.RD_PreChat:\r\n return {\r\n enableBranding: true,\r\n messagePopup: {\r\n highLightColor: me.brandColor,\r\n rdGlowTagColor: me.brandColor\r\n }\r\n };\r\n }\r\n }\r\n}\r\n","/*\r\nA Generic class to create an HTML View in browser's window.document\r\nRequired: identifier, 0-many templates \r\n*/\r\nimport addStyleTextInIframe from './hooks/addStyleTextInIframe';\r\nimport parseTemplate from './hooks/parseTemplate';\r\nimport WidgetTypes from './enums/WidgetTypes';\r\nimport AgentImageHandler from './hooks/AgentImageHandler';\r\nimport getStyleForIframe from './hooks/getStyleForIframe';\r\nimport observe from './hooks/observe';\r\nimport showElement from './hooks/showElement';\r\nimport hideElement from './hooks/hideElement';\r\n\r\nexport default class WidgetView {\r\n constructor(options) {\r\n // if (!options.identifier) {\r\n // throw 'identifier is mandatory';\r\n // }\r\n this.options = options;\r\n this.DOM = options.dom;\r\n this.identifier = options.identifier; // EP, DOM or Windowed, etc\r\n this.elements = options.elements ? options.elements : {}; // key-val\r\n this.templates = options.templates; // key-val\r\n if (this.options.style) {\r\n // w idget level css\r\n this.style(this.options.style);\r\n }\r\n if (this.options.cssLink) {\r\n getStyleForIframe(this.options.cssLink, this.options.linkId, undefined, this.DOM);\r\n }\r\n // widget level beforeRender\r\n if (this.options.beforeRender) {\r\n window.setTimeout(this.options.beforeRender.bind2(this), 0);\r\n }\r\n if (options.initialState) {\r\n this.render(options.initialState);\r\n }\r\n // apply polyfills if any - widget level\r\n if (this.options.polyfills) {\r\n this.pollyfill(this, this.options.polyfills);\r\n }\r\n }\r\n\r\n getBody() {\r\n return this.DOM.getElementsByTagName('body')[0];\r\n }\r\n\r\n /*\r\n selectors: is a string containing one or more CSS selectors separated by commas.\r\n */\r\n bind(selector, ev, cb) {\r\n // not tested/used much yet\r\n let elMatched;\r\n try {\r\n elMatched = this.DOM.querySelector(selector);\r\n } catch (e) {\r\n throw 'invalid selector';\r\n }\r\n if (elMatched) {\r\n observe(elMatched, ev, cb.bind2(this, cb)); // invoke cb with in 'this' context\r\n }\r\n }\r\n\r\n reRender(model) {\r\n const wrapper = this.DOM.querySelector(this.elements.containerSelector);\r\n wrapper.innerHTML = parseTemplate(model.chatWidgetTemplate, model);\r\n }\r\n\r\n getContainer() {\r\n return this.elements.containerSelector;\r\n }\r\n\r\n render(state) {\r\n const me = this;\r\n // grab target based on state and show it if already present\r\n const wrapperContainer = this.DOM.getElementById(this.identifier + state);\r\n if (wrapperContainer) {\r\n showElement(wrapperContainer);\r\n return;\r\n }\r\n const tpl = this.templates.find((tpl) => tpl.key == state);\r\n let wrapper;\r\n if (tpl) {\r\n // tpl level beforeRender\r\n if (tpl.beforeRender) {\r\n tpl.beforeRender(tpl);\r\n }\r\n const target = tpl.model.targetElementId\r\n ? this.DOM.getElementById(tpl.model.targetElementId)\r\n : this.getBody();\r\n wrapper = tpl.containerElemType\r\n ? this.DOM.createElement(tpl.containerElemType)\r\n : this.DOM.createElement('div');\r\n\r\n tpl.model.handlerImageUrl = AgentImageHandler(tpl.model.handlerImageUrl);\r\n wrapper.innerHTML = tpl.tpl;\r\n if (tpl.style) {\r\n // tpl level css\r\n this.style(tpl.style);\r\n }\r\n if (tpl.cssLink) {\r\n getStyleForIframe(tpl.cssLink, tpl.linkId, undefined, this.DOM);\r\n }\r\n const containerId = tpl.containerId ? tpl.containerId : this.identifier + state;\r\n wrapper.setAttribute('id', containerId);\r\n if (this.identifier != WidgetTypes.ExitPopup) {\r\n // In case of ExitPopup we dont need this.\r\n hideElement(wrapper);\r\n }\r\n this.elements.containerSelector = `#${containerId}`;\r\n target.appendChild(wrapper);\r\n\r\n // apply polyfills if any - particular template/view level\r\n if (tpl.polyfills) {\r\n this.pollyfill(tpl, tpl.polyfills);\r\n }\r\n } else {\r\n throw `no state found with the key: ${state}`;\r\n }\r\n // tpl level afterRender\r\n if (tpl.afterRender) {\r\n if (\r\n this.identifier === WidgetTypes.ExitPopup ||\r\n this.identifier === WidgetTypes.PreChat\r\n ) {\r\n // In case of ExitPopup and prechat we dont need this.\r\n } else {\r\n window.setTimeout(() => {\r\n if (this.identifier === WidgetTypes.DOM) {\r\n wrapper.style.visibility = 'hidden';\r\n }\r\n showElement(wrapper);\r\n }, 0);\r\n }\r\n window.setTimeout(tpl.afterRender.bind2(this, tpl), 0);\r\n }\r\n // widget level afterRender\r\n if (this.options.afterRender) {\r\n this.options.afterRender.bind2(this);\r\n }\r\n }\r\n\r\n unrender(state, remove) {\r\n // grab target based on state and hide it if already present\r\n const wrapperContainer = this.DOM.getElementById(this.identifier + state);\r\n if (wrapperContainer) {\r\n hideElement(wrapperContainer);\r\n }\r\n // remove altogether if asked\r\n if (remove == true) {\r\n try {\r\n this.DOM.body.removeChild(wrapperContainer);\r\n } catch (e) { }\r\n }\r\n }\r\n\r\n style(css) {\r\n const cssArr = Array.isArray(css) ? css : [css]; // css could be a single obj or list of css obj's\r\n for (let i = 0; i < cssArr.length; i++) {\r\n addStyleTextInIframe(cssArr[i], undefined, undefined, this.DOM);\r\n }\r\n }\r\n\r\n // These are callback functions which get invoked after rendering a view\r\n pollyfill(scope, callbacks) {\r\n const tweaksArr = Array.isArray(callbacks) ? callbacks : [callbacks]; // tweaks could be a single func or list of func\r\n for (let i = 0; i < tweaksArr.length; i++) {\r\n const tweak = tweaksArr[i];\r\n if (typeof tweak === 'function') {\r\n try {\r\n tweak.apply(scope, tweak.arguments);\r\n } catch (e) {\r\n // console.log(e);\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","const localStorageAPIGet = function (storageName) {\r\n if (!storageName) return;\r\n const prefix = storageName.substring(0, 9);\r\n if (prefix === 'livechat_') {\r\n storageName = storageName.substring(prefix.length, storageName.length);\r\n return (\r\n ApexChat.localStorageAPI.Get(`apexchat_${storageName}`) ||\r\n ApexChat.localStorageAPI.Get(`livechat_${storageName}`)\r\n );\r\n }\r\n return ApexChat.localStorageAPI.Get(storageName);\r\n};\r\nexport default localStorageAPIGet;\r\n","import setHexWithAlphaToSolid from \"./setHexWithAlphaToSolid\";\r\n\r\nfunction setTextColorBasedOnBg(hex) {\r\n let hexColor = hex\r\n // Remove the \"#\" if it exists\r\n hexColor = hex.replace(\"#\", \"\");\r\n\r\n if (hexColor.length == 8) {\r\n hexColor = setHexWithAlphaToSolid(hexColor)\r\n }\r\n // Convert hex to RGB\r\n const r = parseInt(hexColor.substring(0, 2), 16);\r\n const g = parseInt(hexColor.substring(2, 4), 16);\r\n const b = parseInt(hexColor.substring(4, 6), 16);\r\n\r\n // Calculate relative luminance\r\n const luminance = 0.2126 * r + 0.7152 * g + 0.0722 * b;\r\n\r\n // Return text color based on luminance\r\n return luminance < 128 ? \"#FFFFFF\" : \"#020202\";\r\n}\r\n\r\nexport default setTextColorBasedOnBg"],"names":["html","txt","document","createElement","innerText","innerHTML","hexColor","replace","length","split","map","x","join","r","parseInt","substring","g","b","a","solidR","Math","round","solidG","solidB","toString","padStart","removeMultipleCSSClasses","ele","cls","multiClass","i","hasClass","reg","RegExp","className","setPrechatStyles","root","preChatObject","preChat","documentElement","style","setProperty","filePath","path","startsWith","GlobalVariables","CdnBaseUrl","RebasePath","handlerImageUrl","innerObject","borderColor","padding","borderWidth","borderRadius","outerObject","backgroundImage","messageCounter","backgroundColor","font","family","size","color","messagePopup","closeIconSize","height","width","counterRight","counterTop","rdThemeSettings","questionType","qTQuestion","lowLightColor","highLightColor","agentNameFontColor","rdGlowTagColor","mainFontColor","enableBranding","ApexChat","IsRoundedDynamicPlusTheme","brandSolid","visitorMsgBubble","textColor","setTextColorBasedOnBg","staticDark","First","Upcoming","Previous","FadeOut","match","options","this","isActive","name","_name","animate","animationFunction","animateAfter","runAfter","animateAsSoonAs","runAsSoonAs","animateUntil","runUntil","animateUntilIf","runUntilCondition","start","time","RunAfter","RunAsSoonAs","RunUntil","MessageView","constructor","create","me","status","visibility","index","model","targetElementSelector","renderOninit","isLastMessage","isFirstMessage","view","SimpleView","context","identifier","messageTypeText","id","template","containerSelector","wrap","rawContent","message","isTemplateAlreadyParsed","beforeRender","preChatMsgTemplate","sessionAPI","Get","afterRender","preChatElement","querySelector","el","showElement","animations","animationTypes","obj","values","hasOwnProperty","push","getValuesOfObjectAsArray","PreChatMessageAnimations","animationName","Animation","animationCss","addClass","animation","_animation","MessageStatus","Unread","MessageVisibility","Visible","Appeared","parse","messageView","getCurrentAnimatedState","isRead","Read","isVisible","getMessageType","messageType","value","replacer","space","val","window","JSON","stringify","RD_DOM","RD_Invitation","RD_EP","RD_PreChat","underscore","firstIndex","items","predicate","selectedindex","isFunction","func","isPlainObject","nodeType","isWindow","hasOwn","call","prototype","e","key","undefined","prop","Closed","getStyle","extend","src","copy","copyIsArray","clone","target","arguments","deep","Array","isArray","Hidden","PreChat","VideoGreet","Branding","init","widget","brand","config","brandConfig","brandColor","global","branding","brandColorCode","brandColorOpacity","applyBranding","BrandingWidget","overrideConfig","propertyName","brandedConfig","getBrandingElements","backupConfig","getBrandedConfig","brandingStaticValues","whiteText","general","headerColor","disclaimerFont","disclaimerBgColor","messages","agentFont","visitorFont","visitorBgColor","typingIndicatorDots","agentBgColor","qTBorder","qTButton","typingIndicator","btnClose","rdIcon","dotColor","dotAnimationColor","leftBarBackground1Color","leftBarBackground2Color","opacityBrandColor","header","participantsFont","agentFontField","visitorFontField","body","typingIndicatorFont","sendButton","sendbuttonBackgroundColor","WidgetView","DOM","dom","elements","templates","cssLink","getStyleForIframe","linkId","setTimeout","bind2","initialState","render","polyfills","pollyfill","getBody","getElementsByTagName","bind","selector","ev","cb","elMatched","observe","reRender","parseTemplate","chatWidgetTemplate","getContainer","state","wrapperContainer","getElementById","tpl","find","wrapper","targetElementId","containerElemType","AgentImageHandler","containerId","setAttribute","WidgetTypes","ExitPopup","hideElement","appendChild","unrender","remove","removeChild","css","cssArr","addStyleTextInIframe","scope","callbacks","tweaksArr","tweak","apply","storageName","prefix","localStorageAPI","hex","setHexWithAlphaToSolid"],"sourceRoot":""}