{"version":3,"sources":["webpack:///./src/js/components/ZoomModalTriggerComponent.js","webpack:///./src/js/abstracts/BaseComponent.js","webpack:///./node_modules/@babel/runtime/helpers/get.js","webpack:///./node_modules/@babel/runtime/helpers/superPropBase.js","webpack:///./src/js/components/ModalTriggerComponent.js"],"names":["ZoomModalTriggerComponent","element","this","CUSTOM_MESSAGES","MODAL_EVENTS","afterOpen","setImage","beforeClose","resetImage","container","mobileImage","modalContent","vexInstance","contentEl","querySelector","mobileImageModal","SELECTORS","containerModal","image","src","style","backgroundImage","e","target","includes","ModalTriggerComponent","BaseComponent","_componentElement","setAttribute","compOptions","options","$el","dataset","Object","keys","filter","entry","forEach","optionValue","cleanEntry","cleanOptionKey","JSON","parse","replace","e2","convertType","console","error","Freeze","getAttribute","events","cb","elements","Bean","on","stopPropagation","one","off","fire","message","EMIT","LOADER_EVENTS","show","icon","hide","option","optionReturn","Number","key","str","charAt","toLocaleLowerCase","slice","CommonInterface","superPropBase","_get","property","receiver","Reflect","get","module","exports","base","desc","getOwnPropertyDescriptor","call","value","getPrototypeOf","object","prototype","hasOwnProperty","init","$options","immediate","open","handleClick","close","selector","className","classname","$on"],"mappings":"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","file":"js/component-ZoomModalTriggerComponent-js.chunks.js","sourcesContent":["import ModalTriggerComponent from './ModalTriggerComponent';\n\nexport default class ZoomModalTriggerComponent extends ModalTriggerComponent {\n get Messages() {\n return {\n ...super.Messages,\n [this.CUSTOM_MESSAGES.MODAL_EVENTS.afterOpen]: this.setImage,\n [this.CUSTOM_MESSAGES.MODAL_EVENTS.beforeClose]: this.resetImage\n\n };\n }\n\n get SELECTORS() {\n return {\n container: '.js-zoom-image-container',\n mobileImage: '.js-mobile-zoom-img'\n };\n }\n\n constructor(element) {\n super(element);\n }\n\n setImage({ vexInstance }) {\n const modal = vexInstance.contentEl;\n const modalContent = modal.querySelector('.zoom-container');\n if (modalContent) {\n var mobileImageModal = modalContent.querySelector(this.SELECTORS.mobileImage);\n var containerModal = modalContent.querySelector(this.SELECTORS.container);\n\n if (this.image) {\n mobileImageModal.src = this.image;\n containerModal.style.backgroundImage = `url(${this.image})`;\n }\n }\n }\n\n resetImage({ vexInstance }) {\n const modal = vexInstance.contentEl;\n const modalContent = modal.querySelector('.zoom-container');\n if (modalContent) {\n var mobileImageModal = modalContent.querySelector(this.SELECTORS.mobileImage);\n var containerModal = modalContent.querySelector(this.SELECTORS.container);\n\n mobileImageModal.src = '';\n if (this.image) {\n containerModal.style.backgroundImage = '';\n }\n }\n this.image = '';\n }\n\n open(e) {\n this.image = e.target.src;\n var isGif = e.target.src.includes('.gif');\n if (isGif) {\n this.image = '';\n }\n super.open();\n }\n}\n","\nimport Bean from 'bean';\nimport Freeze from '../utilities/Freeze';\nimport CommonInterface from './CommonInterface';\n\nexport default class BaseComponent extends CommonInterface {\n get $el() {\n return 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 try {\n const cleanEntry = BaseComponent.cleanOptionKey(entry);\n let optionValue;\n if (options[entry].includes('{') && options[entry].includes('}')) {\n\n // PDB-786 JSON.parse(\"{\\\"address1\\\":\\\"2 Rue d'Orsel\\\"}\".replace(/'/g, '\"')) => SyntaxError: Unexpected token O in JSON at position 21\n try {\n optionValue = JSON.parse(options[entry].replace(/'/g, '\"'));\n } catch (e2) {\n optionValue = JSON.parse(options[entry]);\n }\n\n } else {\n optionValue = BaseComponent.convertType(options[entry]);\n }\n compOptions[cleanEntry] = optionValue;\n } catch (e) {\n console.error('get $options() from component => ', this._componentElement, e);\n }\n });\n return Freeze(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();\n this._componentElement = element;\n this._componentElement.setAttribute('data-component-init', true);\n }\n\n static convertType(option) {\n let optionReturn;\n if (Number(option)) return Number(option);\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 const cleanedKey = `${str.charAt(0).toLocaleLowerCase()}${str.slice(1)}`;\n return cleanedKey;\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 * @param {HTMLElement} [container]\n */\n loading(container, message) {\n this.EMIT(this.CUSTOM_MESSAGES.LOADER_EVENTS.show, {\n container: container || this.$el,\n message\n });\n }\n\n /**\n *\n * @param {HTMLElement} [container]\n * @param {String} [message]\n * @param {String} [icon]\n * @param {Boolean} [error=false]\n */\n endLoading(container, message, error = false, icon) {\n this.EMIT(this.CUSTOM_MESSAGES.LOADER_EVENTS.hide, {\n container: container || this.$el,\n message,\n icon,\n error\n });\n }\n}\n","var superPropBase = require(\"./superPropBase\");\n\nfunction _get(target, property, receiver) {\n if (typeof Reflect !== \"undefined\" && Reflect.get) {\n module.exports = _get = Reflect.get;\n } else {\n module.exports = _get = function _get(target, property, receiver) {\n var base = superPropBase(target, property);\n if (!base) return;\n var desc = Object.getOwnPropertyDescriptor(base, property);\n\n if (desc.get) {\n return desc.get.call(receiver);\n }\n\n return desc.value;\n };\n }\n\n return _get(target, property, receiver || target);\n}\n\nmodule.exports = _get;","var getPrototypeOf = require(\"./getPrototypeOf\");\n\nfunction _superPropBase(object, property) {\n while (!Object.prototype.hasOwnProperty.call(object, property)) {\n object = getPrototypeOf(object);\n if (object === null) break;\n }\n\n return object;\n}\n\nmodule.exports = _superPropBase;","import BaseComponent from '../abstracts/BaseComponent';\n\nexport default class ModalTriggerComponent extends BaseComponent {\n constructor(element) {\n super(element);\n this.init();\n }\n\n init() {\n if (this.$options.immediate) {\n this.open();\n }\n this.handleClick();\n }\n\n\n open(e) {\n if (this.$options.element && !this.$options.close) {\n this.EMIT(this.CUSTOM_MESSAGES.MODAL_EVENTS.show, {\n selector: this.$options.element,\n className: this.$options.classname || ''\n });\n } else {\n this.EMIT(this.CUSTOM_MESSAGES.MODAL_EVENTS.close);\n }\n }\n\n async handleClick() {\n this.$on('click.modal', (e) => {\n this.open(e);\n });\n }\n}\n"],"sourceRoot":""}