{"version":3,"sources":["webpack:///./node_modules/@bluekiri/alexandria-contrib-components/components/checkbox/client/js/prototype.js","webpack:///./node_modules/@logitravel/alex-comp-cru/components/newsletter-subscription/regexpEmail.js","webpack:///./node_modules/@logitravel/alex-comp-cru/components/newsletter-agent/client/js/index.js","webpack:///./node_modules/@bluekiri/alexandria-contrib-components/components/checkbox/client/js/index.js","webpack:///./node_modules/@logitravel/alex-comp-cru/components/newsletter-subscription/client/js/index.js"],"names":["checkbox","_objectSpread","require","isChecked","this","getInput","checked","check","uncheck","onChange","_this","event","arguments","length","undefined","value","set","config","forEach","item","call","addEventListener","bindEvents","removeEventListener","bind","init","setPairing","module","exports","getRegExpEmail","elementExist","agentCarouselClient","newsletterSubscription","selector","configuration","instance","element","document","querySelector","agentCarousel","concat","randomId","inputConfig","prototype","Object","create","id","dataset","error","$","window","jQuery","tippy","inputClient","checkboxClient","emailExpReg","delay","arrow","arrowType","duration","animation","placement","theme","allowTitleHTML","trigger","interactive","distance","input","submitButton","getElementById","email","customCommunication","urlEndpoint","params","preventDefault","RegExp","test","validateMail","setError","ajax","beforeSend","getElementsByClassName","style","display","data","origenSuscrip","success","status","setAttribute","removeAttribute","clearForm","type","url","console","warn","submit","setValid","on"],"mappings":";suBAGA,IAEMA,EAAQC,IAAA,GAFSC,EAAQ,SAGV,IAEjBC,UAAW,WACP,OAAOC,KAAKC,WAAWC,SAI3BC,MAAO,WAGH,OAFKH,KAAKD,cAAaC,KAAKC,WAAWC,SAAU,GAE1CF,MAIXI,QAAS,WAGL,OAFIJ,KAAKD,cAAaC,KAAKC,WAAWC,SAAU,GAEzCF,MAIXK,SAAU,WAA2B,IAAAC,EAAA,KAAfC,EAAKC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,IAAAA,UAAA,GAOvB,OALIR,KAAKW,QAAUX,KAAKC,WAAWU,OAAOX,KAAKY,IAAIZ,KAAKC,WAAWU,OAAO,GAGtEX,KAAKa,OAAOR,SAASI,OAAS,GAAGT,KAAKa,OAAOR,SAASS,SAAQ,SAAAC,GAAI,OAAIA,EAAKC,KAAKV,EAAMA,EAAMC,MAEzFP,MAIXiB,iBAAkB,WAOd,OALAjB,KAAKkB,aAGLlB,KAAKC,WAAWgB,iBAAiB,SAAUjB,KAAKK,UAEzCL,MAIXmB,oBAAqB,WAIjB,OAFAnB,KAAKC,WAAWkB,oBAAoB,SAAUnB,KAAKK,UAE5CL,MAIXkB,WAAY,WAGR,OAFAlB,KAAKK,SAAWL,KAAKK,SAASe,KAAKpB,MAE5BA,MAIXqB,KAAM,WAEFrB,KAAKsB,aAGLtB,KAAKiB,sBAIbM,EAAOC,QAAU5B,G,mBCxEjB2B,EAAOC,QAAU,CACbC,eAAgB,WAAF,MAAQ,2J,qBCF1B,IAAQC,EAAiB5B,EAAQ,QAAzB4B,aACFC,EAAsB7B,EAAQ,QAC9B8B,EAAyB9B,EAAQ,QAEvCyB,EAAOC,QAAU,WAAoG,IAArEK,EAAQrB,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,qCAAsCsB,EAAatB,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,GAC7G,GAAIkB,EAAaG,GAAW,CACxB,IAAME,EAAW,GAUjB,OARAA,EAASlB,OAASiB,EAElBC,EAASC,QAAUC,SAASC,cAAcL,GAE1CE,EAASI,cAAgBR,EAAoB,GAADS,OAAIP,EAAQ,sCAExDD,IAEOG,K,0qBChBf,IAAQL,EAAiB5B,EAAQ,QAAzB4B,aACAW,EAAavC,EAAQ,QAArBuC,SACFC,EAAcxC,EAAQ,QACtByC,EAAYzC,EAAQ,QAE1ByB,EAAOC,QAAU,WAAsF,IAA9DK,EAAQrB,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,8BAA+BsB,EAAatB,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,GAC/F,GAAIkB,EAAaG,GAAW,CAExB,IAAME,EAAWS,OAAOC,OAAOF,GAoB/B,OAjBAR,EAASlB,OAAMhB,IAAA,GAAQyC,GAAgBR,GAGvCC,EAASC,QAAUC,SAASC,cAAcL,GAG1CE,EAASW,GAAKX,EAASC,QAAQW,QAAQD,IAAML,EAAS,YAGtDN,EAASa,OAAQ,EAGjBb,EAASpB,MAAQoB,EAAS9B,WAAWU,MAGjCoB,EAASlB,OAAOQ,MAAMU,EAASV,OAE5BU,K,mDC5Bf,IAAMc,EAAI/C,EAAQ,QAElBgD,OAAOD,EAAIA,EACXC,OAAOC,OAASF,EAEhB,IAAMG,EAAQlD,EAAQ,QAChBmD,EAAcnD,EAAQ,QACtBoD,EAAiBpD,EAAQ,QACzBqD,EAAcrD,EAAQ,QAE5ByB,EAAOC,QAAU,WACbwB,EAAM,uCAAwC,CAC1CI,MAAO,EACPC,OAAO,EACPC,UAAW,QACXC,SAAU,EACVC,UAAW,QACXC,UAAW,SACXC,MAAO,wBACPC,gBAAgB,EAChBC,QAAS,QACTC,aAAa,EACbC,SAAU,KAGdZ,EAAe,4EACf,IAAMa,EAAQd,EAAY,yEAmDpBe,EAAe/B,SAASgC,eAAe,oBAEzCD,IACAA,EAAa/C,iBAAiB,SAAS,SAAAV,GACnC,IAAM2D,EAAQjC,SAASC,cAAc,qCAC/BiC,EAAsBlC,SAASgC,eAAe,sBAC9CG,EAAcnC,SAASgC,eAAe,eAAetD,MACrD0D,EAAS,CACXH,QACAC,uBAEJ5D,EAAM+D,kBArDO,SAAAJ,GAGjB,OAFY,IAAIK,OAAOpB,EAAY1B,kBAExB+C,KAAKN,EAAMvD,OAoDd8D,CAAaP,GAIbH,EAAMW,aArDH,SAACN,EAAaC,GACrBD,EACAvB,EAAE8B,KAAK,CACHC,WAAY,WACR3C,SAAS4C,uBAAuB,wBAAwB,GAAGC,MAAMC,QAAU,SAG/EC,KAAM,CACFd,MAAOG,EAAOH,MAAMvD,MACpBsE,cAAe,EACfd,oBAAqBE,EAAOF,oBAAoBjE,SAEpD0C,MAAO,WACHX,SAAS4C,uBAAuB,yBAAyB,GAAGC,MAAMC,QAAU,SAEhFG,QAAS,SAAAF,GACe,OAAhBA,EAAKG,SAELlD,SAAS4C,uBAAuB,yBAAyB,GAAGC,MAAMC,QAAU,QA/B9E,SAAAV,GACdA,EAAOH,MAAMkB,aAAa,QAAS,IACnCf,EAAOF,oBAAoBkB,gBAAgB,WA8B3BC,CAAUjB,IAGM,UAAhBW,EAAKG,SACLlD,SAAS4C,uBAAuB,uBAAuB,GAAGC,MAAMC,QAAU,SAE9E9C,SAAS4C,uBAAuB,wBAAwB,GAAGC,MAAMC,QAAU,QAE/EQ,KAAM,OACNC,IAAKpB,IAKNqB,QAAQC,KAAK,4DAiBZC,CAAOvB,EAAaC,GACpBN,EAAM6B,eAMd/C,EAAE,wBAAwBgD,GAAG,SAAS,SAAAtF,GAClCA,EAAM+D,iBACNrC,SAAS4C,uBAAuB,yBAAyB,GAAGC,MAAMC,QAAU,OAC5E9C,SAAS4C,uBAAuB,uBAAuB,GAAGC,MAAMC,QAAU","file":"newsletter-agent.f019b83a3458f422818d.bundle.js","sourcesContent":["/* ==========================================================================\n Checkbox > Protoype\n ========================================================================== */\nconst inputPrototype = require('../../../input/client/js/prototype');\n\nconst checkbox = {\n ...inputPrototype,\n /* Status is checked */\n isChecked: function Fn() {\n return this.getInput().checked;\n },\n\n /* Check */\n check: function Fn() {\n if (!this.isChecked()) this.getInput().checked = true;\n\n return this;\n },\n\n /* Uncheck */\n uncheck: function Fn() {\n if (this.isChecked()) this.getInput().checked = false;\n\n return this;\n },\n\n /* On change */\n onChange: function Fn(event = false) {\n /* Get track of the new value in the instance based on the input one */\n if (this.value !== this.getInput().value) this.set(this.getInput().value, false);\n\n /* Fire external callbacks */\n if (this.config.onChange.length > 0) this.config.onChange.forEach(item => item.call(this, this, event));\n\n return this;\n },\n\n /* Add event listener */\n addEventListener: function Fn() {\n /* Bind events */\n this.bindEvents();\n\n /* On change */\n this.getInput().addEventListener('change', this.onChange);\n\n return this;\n },\n\n /* Remove event listener */\n removeEventListener: function Fn() {\n /* On change */\n this.getInput().removeEventListener('change', this.onChange);\n\n return this;\n },\n\n /* Bind events */\n bindEvents: function Fn() {\n this.onChange = this.onChange.bind(this);\n\n return this;\n },\n\n /* Init */\n init: function Fn() {\n /* Connect the label in case it has it with its input */\n this.setPairing();\n\n /* Adding listener */\n this.addEventListener();\n }\n};\n\nmodule.exports = checkbox;\n","/* eslint-disable */\nmodule.exports = {\n getRegExpEmail: () => /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/\n};\n/* eslint-enable */\n","const { elementExist } = require('@bluekiri/alexandria/helpers/domHelpers');\nconst agentCarouselClient = require('@bluekiri/alexandria-contrib-components/components/agent-carousel/client/js');\nconst newsletterSubscription = require('../../../newsletter-subscription/client/js');\n\nmodule.exports = function NewsletterAgentClient(selector = '[data-component=\"NewsletterAgent\"]', configuration = {}) {\n if (elementExist(selector)) {\n const instance = {};\n\n instance.config = configuration;\n\n instance.element = document.querySelector(selector);\n\n instance.agentCarousel = agentCarouselClient(`${selector} [data-component=\"AgentCarousel\"]`);\n\n newsletterSubscription();\n\n return instance;\n }\n};\n","const { elementExist } = require('@bluekiri/alexandria/helpers/domHelpers');\nconst { randomId } = require('@bluekiri/alexandria/helpers/dataHelpers');\nconst inputConfig = require('../../../input/client/js/config');\nconst prototype = require('./prototype');\n\nmodule.exports = function CheckboxClient(selector = '[data-component=\"Checkbox\"]', configuration = {}) {\n if (elementExist(selector)) {\n // Extend the proto input base with specific methods\n const instance = Object.create(prototype);\n\n // Config\n instance.config = { ...inputConfig, ...configuration };\n\n // Element reference\n instance.element = document.querySelector(selector);\n\n // Id reference\n instance.id = instance.element.dataset.id || randomId('checkbox');\n\n // Init error handler\n instance.error = false;\n\n // Value reference\n instance.value = instance.getInput().value;\n\n // Auto init\n if (instance.config.init) instance.init();\n\n return instance;\n }\n};\n","const $ = require('jquery');\n\nwindow.$ = $;\nwindow.jQuery = $;\n\nconst tippy = require('tippy.js');\nconst inputClient = require('@bluekiri/alexandria-contrib-components/components/input/client/js');\nconst checkboxClient = require('@bluekiri/alexandria-contrib-components/components/checkbox/client/js');\nconst emailExpReg = require('../../regexpEmail');\n\nmodule.exports = function NewsletterSubscription() {\n tippy('[data-type=\"tooltip-newsletter-sub\"]', {\n delay: 0,\n arrow: true,\n arrowType: 'sharp',\n duration: 0,\n animation: 'scale',\n placement: 'bottom',\n theme: 'light base newsletter',\n allowTitleHTML: true,\n trigger: 'click',\n interactive: true,\n distance: 20\n });\n\n checkboxClient('[data-component=\"NewsletterSubscription\"] [data-id=\"checkboxNewsletter\"]');\n const input = inputClient('[data-component=\"NewsletterSubscription\"] [data-id=\"emailNewsletter\"]');\n\n const clearForm = params => {\n params.email.setAttribute('value', '');\n params.customCommunication.removeAttribute('checked');\n\n return true;\n };\n\n const validateMail = email => {\n const reg = new RegExp(emailExpReg.getRegExpEmail());\n\n return reg.test(email.value);\n };\n\n const submit = (urlEndpoint, params) => {\n if (urlEndpoint) {\n $.ajax({\n beforeSend: () => {\n document.getElementsByClassName('js-loader-newsletter')[0].style.display = 'block';\n // SHOW LOADING\n },\n data: {\n email: params.email.value,\n origenSuscrip: 0,\n customCommunication: params.customCommunication.checked\n },\n error: () => {\n document.getElementsByClassName('js-success-newsletter')[0].style.display = 'block';\n },\n success: data => {\n if (data.status === 'ok') {\n // VALID MESSAGE\n document.getElementsByClassName('js-success-newsletter')[0].style.display = 'block';\n clearForm(params);\n }\n\n if (data.status === 'error') {\n document.getElementsByClassName('js-error-newsletter')[0].style.display = 'block';\n }\n document.getElementsByClassName('js-loader-newsletter')[0].style.display = 'none';\n },\n type: 'POST',\n url: urlEndpoint // toolfactory.common.configuration.globals.secureUrl + \"/mybookings/Subscribe\",\n });\n\n return true;\n }\n return console.warn(\"Newsletter subscription component hasn't been configured\");\n };\n\n const submitButton = document.getElementById('submitNewsletter');\n\n if (submitButton) {\n submitButton.addEventListener('click', event => {\n const email = document.querySelector('[data-id=\"emailNewsletter\"] input');\n const customCommunication = document.getElementById('checkboxNewsletter');\n const urlEndpoint = document.getElementById('endpointUrl').value;\n const params = {\n email,\n customCommunication\n };\n event.preventDefault();\n\n if (validateMail(email)) {\n submit(urlEndpoint, params);\n input.setValid();\n } else {\n input.setError();\n }\n });\n\n $('.js-close-newsletter').on('click', event => {\n event.preventDefault();\n document.getElementsByClassName('js-success-newsletter')[0].style.display = 'none';\n document.getElementsByClassName('js-error-newsletter')[0].style.display = 'none';\n });\n }\n};\n"],"sourceRoot":""}