{"version":3,"sources":["webpack:///./src/client/default/js/components/aisChatTogglerComponent.js","webpack:///./src/client/default/js/base/baseComponent.js","webpack:///./node_modules/js-cookie/src/js.cookie.js"],"names":["AisChatTogglerComponent","element","handleCookie","handleClick","aisChatWrapper","chatButton","userAuthenticated","this","$options","maiaCookie","Cookies","get","container","document","querySelector","SELECTORS","digitiamoChat","createElement","appendChild","classList","add","$on","EMIT","CUSTOM_MESSAGES","MODAL_EVENTS","close","BaseComponent","_componentElement","setAttribute","_checkMessages","compOptions","options","$el","dataset","Object","keys","filter","entry","includes","forEach","optionValue","cleanEntry","cleanOptionKey","JSON","parse","replace","convertType","deepFreeze","getAttribute","events","cb","elements","Bean","on","e","stopPropagation","one","off","fire","message","_loading","LOADER_EVENTS","show","body","error","icon","setTimeout","hide","option","optionReturn","key","str","charAt","toLocaleLowerCase","slice","BaseGiaComponent","factory","module","exports","OldCookies","window","api","noConflict","extend","i","result","arguments","length","attributes","decode","s","decodeURIComponent","init","converter","set","value","path","defaults","expires","Date","toUTCString","stringify","test","write","encodeURIComponent","String","escape","stringifiedAttributes","attributeName","split","cookie","json","jar","cookies","parts","join","name","read","getJSON","remove","withConverter"],"mappings":"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","file":"js/component-aisChatTogglerComponent-js.chunks.js","sourcesContent":["import BaseComponent from '../base/baseComponent';\nimport Cookies from 'js-cookie';\nexport default class AisChatTogglerComponent extends BaseComponent {\n get SELECTORS() {\n return {\n aisChatWrapper: '.ais-chat-wrapper',\n chatButton: '.chatFourTriggerButton:not(.d-none)'\n };\n }\n constructor(element) {\n super(element);\n this.handleCookie();\n this.handleClick();\n }\n\n handleCookie() {\n let userAuthenticated = this.$options.userAuthenticated;\n var maiaCookie = Cookies.get('maia_state');\n var container = document.querySelector(this.SELECTORS.aisChatWrapper);\n\n if (maiaCookie && userAuthenticated && container) {\n const digitiamoChat = document.createElement('maia-chat');\n container.appendChild(digitiamoChat);\n if (document.querySelector(this.SELECTORS.chatButton)) {\n document.querySelector(this.SELECTORS.chatButton).classList.add('d-none', 'js-activechat');\n }\n }\n }\n\n handleClick() {\n var container = document.querySelector(this.SELECTORS.aisChatWrapper);\n\n this.$on('click', () => {\n // TO DO: loader\n const digitiamoChat = document.createElement('maia-chat');\n container.appendChild(digitiamoChat);\n if (document.querySelector(this.SELECTORS.chatButton)) {\n document.querySelector(this.SELECTORS.chatButton).classList.add('d-none', 'js-activechat');\n }\n this.EMIT(this.CUSTOM_MESSAGES.MODAL_EVENTS.close, {});\n });\n }\n}\n","/* eslint-disable new-cap */\n/* eslint-disable valid-jsdoc */\n/* eslint-disable no-underscore-dangle */\n\nimport Bean from 'bean';\nimport deepFreeze from '../utilities/freeze';\nimport BaseGiaComponent from './baseGiaComponent';\n\nexport default class BaseComponent extends BaseGiaComponent {\n /**\n * @returns {HTMLElement}\n */\n get $el() {\n return /** @type {HTMLElement} */ (this._componentElement);\n }\n\n get $options() {\n const compOptions = {};\n const options = { ...this.$el.dataset };\n const optionsEntires = Object.keys(options).filter((entry) => entry.includes('option'));\n optionsEntires.forEach((entry) => {\n const cleanEntry = BaseComponent.cleanOptionKey(entry);\n let optionValue;\n if (options[entry].includes('{') && options[entry].includes('}')) {\n optionValue = JSON.parse(options[entry].replace(/'/g, '\"'));\n } else {\n optionValue = BaseComponent.convertType(options[entry]);\n }\n compOptions[cleanEntry] = optionValue;\n });\n return deepFreeze(compOptions);\n }\n\n get COMPONENT_NAME() {\n return this.$el.getAttribute('data-component');\n }\n\n /**\n *\n * constructor\n *\n * @param {Element} element\n */\n constructor(element) {\n super(element);\n this._componentElement = element;\n this._componentElement.setAttribute('data-component-init', 'true');\n this._checkMessages();\n }\n\n static convertType(option) {\n let optionReturn;\n switch (option) {\n case 'false':\n optionReturn = false;\n break;\n case 'true':\n optionReturn = true;\n break;\n case 'null':\n optionReturn = null;\n break;\n default:\n optionReturn = option;\n break;\n }\n\n return optionReturn;\n }\n\n static cleanOptionKey(key) {\n const str = key.replace('option', '');\n return `${str.charAt(0).toLocaleLowerCase()}${str.slice(1)}`;\n }\n\n /**\n *\n * $on\n *\n * @param {String} events\n * @param {Function} cb\n * @param {Element} [element = this.$el]\n * @param {Array|String|Element} [elements = null]\n */\n $on(events, cb, element = this.$el, elements = null) {\n if (!element || !events || !cb) return;\n if (!elements) {\n Bean.on(element, events, (e) => {\n if (e) e.stopPropagation();\n cb(e);\n });\n } else {\n Bean.on(element, events, elements, (e) => {\n if (e) e.stopPropagation();\n cb(e);\n });\n }\n }\n\n /**\n *\n * $one\n *\n * @param {String} events\n * @param {Function} cb\n * @param {Element} [element = this.$el]\n */\n $one(events, cb, element = this.$el) {\n Bean.one(element, events, cb);\n }\n\n /**\n *\n * $off\n *\n * @param {String} events\n * @param {Element} [element = this.$el]\n */\n $off(events, element = this.$el) {\n Bean.off(element, events);\n }\n\n /**\n *\n * $fire\n *\n * @param {String} events\n * @param {Element} [element = this.$el]\n */\n $fire(events, element = this.$el) {\n Bean.fire(element, events);\n }\n\n /**\n *\n * Activate loader\n *\n * @param {HTMLElement} [container]\n * @param {String} [message]\n */\n loading(container, message) {\n this._loading = true;\n this.EMIT(this.CUSTOM_MESSAGES.LOADER_EVENTS.show, {\n container: container || document.body,\n message: message ?? null\n });\n }\n\n /**\n *\n * Deactivate loader\n *\n * @param {HTMLElement} [container]\n * @param {String} [message]\n * @param {Boolean} [error=false]\n * @param {String} [icon]\n */\n endLoading(container, message, error = false, icon) {\n this._loading = false;\n setTimeout(() => {\n if (!this._loading) {\n this.EMIT(this.CUSTOM_MESSAGES.LOADER_EVENTS.hide, {\n container: container || document.body,\n message,\n error,\n icon\n });\n }\n }, 400);\n }\n}\n","/*!\n * JavaScript Cookie v2.2.1\n * https://github.com/js-cookie/js-cookie\n *\n * Copyright 2006, 2015 Klaus Hartl & Fagner Brack\n * Released under the MIT license\n */\n;(function (factory) {\n\tvar registeredInModuleLoader;\n\tif (typeof define === 'function' && define.amd) {\n\t\tdefine(factory);\n\t\tregisteredInModuleLoader = true;\n\t}\n\tif (typeof exports === 'object') {\n\t\tmodule.exports = factory();\n\t\tregisteredInModuleLoader = true;\n\t}\n\tif (!registeredInModuleLoader) {\n\t\tvar OldCookies = window.Cookies;\n\t\tvar api = window.Cookies = factory();\n\t\tapi.noConflict = function () {\n\t\t\twindow.Cookies = OldCookies;\n\t\t\treturn api;\n\t\t};\n\t}\n}(function () {\n\tfunction extend () {\n\t\tvar i = 0;\n\t\tvar result = {};\n\t\tfor (; i < arguments.length; i++) {\n\t\t\tvar attributes = arguments[ i ];\n\t\t\tfor (var key in attributes) {\n\t\t\t\tresult[key] = attributes[key];\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n\n\tfunction decode (s) {\n\t\treturn s.replace(/(%[0-9A-Z]{2})+/g, decodeURIComponent);\n\t}\n\n\tfunction init (converter) {\n\t\tfunction api() {}\n\n\t\tfunction set (key, value, attributes) {\n\t\t\tif (typeof document === 'undefined') {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tattributes = extend({\n\t\t\t\tpath: '/'\n\t\t\t}, api.defaults, attributes);\n\n\t\t\tif (typeof attributes.expires === 'number') {\n\t\t\t\tattributes.expires = new Date(new Date() * 1 + attributes.expires * 864e+5);\n\t\t\t}\n\n\t\t\t// We're using \"expires\" because \"max-age\" is not supported by IE\n\t\t\tattributes.expires = attributes.expires ? attributes.expires.toUTCString() : '';\n\n\t\t\ttry {\n\t\t\t\tvar result = JSON.stringify(value);\n\t\t\t\tif (/^[\\{\\[]/.test(result)) {\n\t\t\t\t\tvalue = result;\n\t\t\t\t}\n\t\t\t} catch (e) {}\n\n\t\t\tvalue = converter.write ?\n\t\t\t\tconverter.write(value, key) :\n\t\t\t\tencodeURIComponent(String(value))\n\t\t\t\t\t.replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g, decodeURIComponent);\n\n\t\t\tkey = encodeURIComponent(String(key))\n\t\t\t\t.replace(/%(23|24|26|2B|5E|60|7C)/g, decodeURIComponent)\n\t\t\t\t.replace(/[\\(\\)]/g, escape);\n\n\t\t\tvar stringifiedAttributes = '';\n\t\t\tfor (var attributeName in attributes) {\n\t\t\t\tif (!attributes[attributeName]) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tstringifiedAttributes += '; ' + attributeName;\n\t\t\t\tif (attributes[attributeName] === true) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\t// Considers RFC 6265 section 5.2:\n\t\t\t\t// ...\n\t\t\t\t// 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n\t\t\t\t// character:\n\t\t\t\t// Consume the characters of the unparsed-attributes up to,\n\t\t\t\t// not including, the first %x3B (\";\") character.\n\t\t\t\t// ...\n\t\t\t\tstringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n\t\t\t}\n\n\t\t\treturn (document.cookie = key + '=' + value + stringifiedAttributes);\n\t\t}\n\n\t\tfunction get (key, json) {\n\t\t\tif (typeof document === 'undefined') {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar jar = {};\n\t\t\t// To prevent the for loop in the first place assign an empty array\n\t\t\t// in case there are no cookies at all.\n\t\t\tvar cookies = document.cookie ? document.cookie.split('; ') : [];\n\t\t\tvar i = 0;\n\n\t\t\tfor (; i < cookies.length; i++) {\n\t\t\t\tvar parts = cookies[i].split('=');\n\t\t\t\tvar cookie = parts.slice(1).join('=');\n\n\t\t\t\tif (!json && cookie.charAt(0) === '\"') {\n\t\t\t\t\tcookie = cookie.slice(1, -1);\n\t\t\t\t}\n\n\t\t\t\ttry {\n\t\t\t\t\tvar name = decode(parts[0]);\n\t\t\t\t\tcookie = (converter.read || converter)(cookie, name) ||\n\t\t\t\t\t\tdecode(cookie);\n\n\t\t\t\t\tif (json) {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tcookie = JSON.parse(cookie);\n\t\t\t\t\t\t} catch (e) {}\n\t\t\t\t\t}\n\n\t\t\t\t\tjar[name] = cookie;\n\n\t\t\t\t\tif (key === name) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t} catch (e) {}\n\t\t\t}\n\n\t\t\treturn key ? jar[key] : jar;\n\t\t}\n\n\t\tapi.set = set;\n\t\tapi.get = function (key) {\n\t\t\treturn get(key, false /* read as raw */);\n\t\t};\n\t\tapi.getJSON = function (key) {\n\t\t\treturn get(key, true /* read as json */);\n\t\t};\n\t\tapi.remove = function (key, attributes) {\n\t\t\tset(key, '', extend(attributes, {\n\t\t\t\texpires: -1\n\t\t\t}));\n\t\t};\n\n\t\tapi.defaults = {};\n\n\t\tapi.withConverter = init;\n\n\t\treturn api;\n\t}\n\n\treturn init(function () {});\n}));\n"],"sourceRoot":""}