{"version":3,"sources":["webpack:///./node_modules/vex-js/dist/js/vex.js","webpack:///./assets/javascripts/modules/components/ModalComponent.js"],"names":["require","module","exports","e","t","n","r","s","o","u","a","i","f","Error","code","l","call","length","1","window","self","document","createElement","createElementNS","view","elemCtrProto","Element","objCtr","Object","strTrim","String","trim","this","replace","arrIndexOf","Array","indexOf","item","len","DOMEx","type","message","name","DOMException","checkTokenAndGetIndex","classList","token","test","ClassList","elem","trimmedClasses","getAttribute","classes","split","push","_updateClassName","setAttribute","toString","classListProto","classListGetter","contains","add","tokens","arguments","updated","remove","index","splice","toggle","force","result","method","join","defineProperty","classListPropDesc","get","enumerable","configurable","ex","undefined","number","__defineGetter__","testElement","createMethod","original","DOMTokenList","prototype","_toggle","2","html","doc","TypeError","m","exec","createTextNode","tag","el","innerHTML","removeChild","lastChild","wrap","map","_default","depth","prefix","suffix","firstChild","fragment","createDocumentFragment","appendChild","bugTestDiv","innerHTMLBug","getElementsByTagName","legend","tr","col","td","th","option","optgroup","thead","tbody","colgroup","caption","tfoot","polyline","ellipse","polygon","circle","text","line","path","rect","g","3","assign","target","firstSource","to","nextSource","keysArray","keys","nextIndex","nextKey","desc","getOwnPropertyDescriptor","polyfill","writable","value","4","domify","escapeHtml","str","div","addClasses","classStr","className","animationEndEvent","eventNames","animation","WebkitAnimation","MozAnimation","OAnimation","msAnimation","style","baseClassNames","vex","content","overlay","close","closing","open","vexes","globalId","isEscapeActive","opts","warnDeprecated","prop","console","warn","css","overlayCSS","contentCSS","closeCSS","vexInstance","id","isOpen","options","escapeButtonCloses","shouldClose","beforeClose","bind","getComputedStyle","contentEl","hasAnimationPre","getPropertyValue","hasAnimation","rootEl","parentNode","removeEventListener","overlayEl","bodyEl","afterClose","body","addEventListener","unsafeContent","defaultOptions","overlayClassName","overlayClosesOnClick","contentClassName","Node","showCloseButton","closeEl","closeClassName","querySelector","appendLocation","afterOpen","vexOrId","closeTop","ids","closeAll","getAll","getById","keyCode","closeAllOnPopState","registerPlugin","pluginFn","plugin","pluginName","classlist-polyfill","es6-object-assign","ModalComponent","_classCallCheck","_this","_possibleConstructorReturn","__proto__","getPrototypeOf","focusableEl","$","SELECTORS","Component","trigger","vexContainer","container","tab","select","fakeSelectToCleanUp","canScroll","closeText","overflow","_this2","$close","$container","closeLabel","removeClass","addClass","CLASSES","find","LIBRARIES_SELECTORS","moduleLoader","loadBootstrapJsComponentAndExecute","log","error","stack","attr","first","focus","data","JSON","parse","_this3","ctx","url","title","overlayClass","dataType","dataEgonValidation","toUpperCase","getRequestBody","ajax","contentType","then","resp","chunked","_typeof","vexWrapper","wrappedContent","outerHTML","setTimeout","$emit","$customEvents","MODAL_EVENTS","modalAfterOpen","egonValidation","conf","classData","modalClass","$header","append","$body","_this4","$on","_ref","event","$el","currentTarget","preventDefault","openStaticContent","openAjaxContent","show","_ref2","payload","openRemoteContent","bindEvents"],"mappings":"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","file":"component-ModalComponent.chunks.js","sourcesContent":["(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.vex = f()}})(function(){var define,module,exports;return (function(){function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o', ''],\n tr: [2, '', '
'],\n col: [2, '', '
'],\n // for script/link/style tags to work in IE6-8, you have to wrap\n // in a div with a non-whitespace character in front, ha!\n _default: innerHTMLBug ? [1, 'X
', '
'] : [0, '', '']\n};\n\nmap.td =\nmap.th = [3, '', '
'];\n\nmap.option =\nmap.optgroup = [1, ''];\n\nmap.thead =\nmap.tbody =\nmap.colgroup =\nmap.caption =\nmap.tfoot = [1, '', '
'];\n\nmap.polyline =\nmap.ellipse =\nmap.polygon =\nmap.circle =\nmap.text =\nmap.line =\nmap.path =\nmap.rect =\nmap.g = [1, '',''];\n\n/**\n * Parse `html` and return a DOM Node instance, which could be a TextNode,\n * HTML DOM Node of some kind (
for example), or a DocumentFragment\n * instance, depending on the contents of the `html` string.\n *\n * @param {String} html - HTML string to \"domify\"\n * @param {Document} doc - The `document` instance to create the Node for\n * @return {DOMNode} the TextNode, DOM Node, or DocumentFragment instance\n * @api private\n */\n\nfunction parse(html, doc) {\n if ('string' != typeof html) throw new TypeError('String expected');\n\n // default to the global `document` object\n if (!doc) doc = document;\n\n // tag name\n var m = /<([\\w:]+)/.exec(html);\n if (!m) return doc.createTextNode(html);\n\n html = html.replace(/^\\s+|\\s+$/g, ''); // Remove leading/trailing whitespace\n\n var tag = m[1];\n\n // body support\n if (tag == 'body') {\n var el = doc.createElement('html');\n el.innerHTML = html;\n return el.removeChild(el.lastChild);\n }\n\n // wrap map\n var wrap = map[tag] || map._default;\n var depth = wrap[0];\n var prefix = wrap[1];\n var suffix = wrap[2];\n var el = doc.createElement('div');\n el.innerHTML = prefix + html + suffix;\n while (depth--) el = el.lastChild;\n\n // one element\n if (el.firstChild == el.lastChild) {\n return el.removeChild(el.firstChild);\n }\n\n // several elements\n var fragment = doc.createDocumentFragment();\n while (el.firstChild) {\n fragment.appendChild(el.removeChild(el.firstChild));\n }\n\n return fragment;\n}\n\n},{}],3:[function(require,module,exports){\n/**\n * Code refactored from Mozilla Developer Network:\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign\n */\n\n'use strict';\n\nfunction assign(target, firstSource) {\n if (target === undefined || target === null) {\n throw new TypeError('Cannot convert first argument to object');\n }\n\n var to = Object(target);\n for (var i = 1; i < arguments.length; i++) {\n var nextSource = arguments[i];\n if (nextSource === undefined || nextSource === null) {\n continue;\n }\n\n var keysArray = Object.keys(Object(nextSource));\n for (var nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex++) {\n var nextKey = keysArray[nextIndex];\n var desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);\n if (desc !== undefined && desc.enumerable) {\n to[nextKey] = nextSource[nextKey];\n }\n }\n }\n return to;\n}\n\nfunction polyfill() {\n if (!Object.assign) {\n Object.defineProperty(Object, 'assign', {\n enumerable: false,\n configurable: true,\n writable: true,\n value: assign\n });\n }\n}\n\nmodule.exports = {\n assign: assign,\n polyfill: polyfill\n};\n\n},{}],4:[function(require,module,exports){\n// classList polyfill for old browsers\r\nrequire('classlist-polyfill')\r\n// Object.assign polyfill\r\nrequire('es6-object-assign').polyfill()\r\n\r\n// String to DOM function\r\nvar domify = require('domify')\r\n\r\n// Use the DOM's HTML parsing to escape any dangerous strings\r\nvar escapeHtml = function escapeHtml (str) {\r\n if (typeof str !== 'undefined') {\r\n var div = document.createElement('div')\r\n div.appendChild(document.createTextNode(str))\r\n return div.innerHTML\r\n } else {\r\n return ''\r\n }\r\n}\r\n\r\n// Utility function to add space-delimited class strings to a DOM element's classList\r\nvar addClasses = function addClasses (el, classStr) {\r\n if (typeof classStr !== 'string' || classStr.length === 0) {\r\n return\r\n }\r\n var classes = classStr.split(' ')\r\n for (var i = 0; i < classes.length; i++) {\r\n var className = classes[i]\r\n if (className.length) {\r\n el.classList.add(className)\r\n }\r\n }\r\n}\r\n\r\n// Detect CSS Animation End Support\r\n// https://github.com/limonte/sweetalert2/blob/99bd539f85e15ac170f69d35001d12e092ef0054/src/utils/dom.js#L194\r\nvar animationEndEvent = (function detectAnimationEndEvent () {\r\n var el = document.createElement('div')\r\n var eventNames = {\r\n 'animation': 'animationend',\r\n 'WebkitAnimation': 'webkitAnimationEnd',\r\n 'MozAnimation': 'animationend',\r\n 'OAnimation': 'oanimationend',\r\n 'msAnimation': 'MSAnimationEnd'\r\n }\r\n for (var i in eventNames) {\r\n if (el.style[i] !== undefined) {\r\n return eventNames[i]\r\n }\r\n }\r\n return false\r\n})()\r\n\r\n// vex base CSS classes\r\nvar baseClassNames = {\r\n vex: 'vex',\r\n content: 'vex-content',\r\n overlay: 'vex-overlay',\r\n close: 'vex-close',\r\n closing: 'vex-closing',\r\n open: 'vex-open'\r\n}\r\n\r\n// Private lookup table of all open vex objects, keyed by id\r\nvar vexes = {}\r\nvar globalId = 1\r\n\r\n// Private boolean to assist the escapeButtonCloses option\r\nvar isEscapeActive = false\r\n\r\n// vex itself is an object that exposes a simple API to open and close vex objects in various ways\r\nvar vex = {\r\n open: function open (opts) {\r\n // Check for usage of deprecated options, and log a warning\r\n var warnDeprecated = function warnDeprecated (prop) {\r\n console.warn('The \"' + prop + '\" property is deprecated in vex 3. Use CSS classes and the appropriate \"ClassName\" options, instead.')\r\n console.warn('See http://github.hubspot.com/vex/api/advanced/#options')\r\n }\r\n if (opts.css) {\r\n warnDeprecated('css')\r\n }\r\n if (opts.overlayCSS) {\r\n warnDeprecated('overlayCSS')\r\n }\r\n if (opts.contentCSS) {\r\n warnDeprecated('contentCSS')\r\n }\r\n if (opts.closeCSS) {\r\n warnDeprecated('closeCSS')\r\n }\r\n\r\n // The dialog instance\r\n var vexInstance = {}\r\n\r\n // Set id\r\n vexInstance.id = globalId++\r\n\r\n // Store internally\r\n vexes[vexInstance.id] = vexInstance\r\n\r\n // Set state\r\n vexInstance.isOpen = true\r\n\r\n // Close function on the vex instance\r\n // This is how all API functions should close individual vexes\r\n vexInstance.close = function instanceClose () {\r\n // Check state\r\n if (!this.isOpen) {\r\n return true\r\n }\r\n\r\n var options = this.options\r\n\r\n // escapeButtonCloses is checked first\r\n if (isEscapeActive && !options.escapeButtonCloses) {\r\n return false\r\n }\r\n\r\n // Allow the user to validate any info or abort the close with the beforeClose callback\r\n var shouldClose = (function shouldClose () {\r\n // Call before close callback\r\n if (options.beforeClose) {\r\n return options.beforeClose.call(this)\r\n }\r\n // Otherwise indicate that it's ok to continue with close\r\n return true\r\n }.bind(this)())\r\n\r\n // If beforeClose() fails, abort the close\r\n if (shouldClose === false) {\r\n return false\r\n }\r\n\r\n // Update state\r\n this.isOpen = false\r\n\r\n // Detect if the content el has any CSS animations defined\r\n var style = window.getComputedStyle(this.contentEl)\r\n function hasAnimationPre (prefix) {\r\n return style.getPropertyValue(prefix + 'animation-name') !== 'none' && style.getPropertyValue(prefix + 'animation-duration') !== '0s'\r\n }\r\n var hasAnimation = hasAnimationPre('') || hasAnimationPre('-webkit-') || hasAnimationPre('-moz-') || hasAnimationPre('-o-')\r\n\r\n // Define the function that will actually close the instance\r\n var close = function close () {\r\n if (!this.rootEl.parentNode) {\r\n return\r\n }\r\n // Run once\r\n this.rootEl.removeEventListener(animationEndEvent, close)\r\n this.overlayEl.removeEventListener(animationEndEvent, close)\r\n // Remove from lookup table (prevent memory leaks)\r\n delete vexes[this.id]\r\n // Remove the dialog from the DOM\r\n this.rootEl.parentNode.removeChild(this.rootEl)\r\n // Remove the overlay from the DOM\r\n this.bodyEl.removeChild(this.overlayEl)\r\n // Call after close callback\r\n if (options.afterClose) {\r\n options.afterClose.call(this)\r\n }\r\n // Remove styling from the body, if no more vexes are open\r\n if (Object.keys(vexes).length === 0) {\r\n document.body.classList.remove(baseClassNames.open)\r\n }\r\n }.bind(this)\r\n\r\n // Close the vex\r\n if (animationEndEvent && hasAnimation) {\r\n // Setup the end event listener, to remove the el from the DOM\r\n this.rootEl.addEventListener(animationEndEvent, close)\r\n this.overlayEl.addEventListener(animationEndEvent, close)\r\n // Add the closing class to the dialog, showing the close animation\r\n this.rootEl.classList.add(baseClassNames.closing)\r\n this.overlayEl.classList.add(baseClassNames.closing)\r\n } else {\r\n close()\r\n }\r\n\r\n return true\r\n }\r\n\r\n // Allow strings as content\r\n if (typeof opts === 'string') {\r\n opts = {\r\n content: opts\r\n }\r\n }\r\n\r\n // `content` is unsafe internally, so translate\r\n // safe default: HTML-escape the content before passing it through\r\n if (opts.unsafeContent && !opts.content) {\r\n opts.content = opts.unsafeContent\r\n } else if (opts.content) {\r\n opts.content = escapeHtml(opts.content)\r\n }\r\n\r\n // Store options on instance for future reference\r\n var options = vexInstance.options = Object.assign({}, vex.defaultOptions, opts)\r\n\r\n // Get Body Element\r\n var bodyEl = vexInstance.bodyEl = document.getElementsByTagName('body')[0]\r\n\r\n // vex root\r\n var rootEl = vexInstance.rootEl = document.createElement('div')\r\n rootEl.classList.add(baseClassNames.vex)\r\n addClasses(rootEl, options.className)\r\n\r\n // Overlay\r\n var overlayEl = vexInstance.overlayEl = document.createElement('div')\r\n overlayEl.classList.add(baseClassNames.overlay)\r\n addClasses(overlayEl, options.overlayClassName)\r\n if (options.overlayClosesOnClick) {\r\n rootEl.addEventListener('click', function overlayClickListener (e) {\r\n if (e.target === rootEl) {\r\n vexInstance.close()\r\n }\r\n })\r\n }\r\n bodyEl.appendChild(overlayEl)\r\n\r\n // Content\r\n var contentEl = vexInstance.contentEl = document.createElement('div')\r\n contentEl.classList.add(baseClassNames.content)\r\n addClasses(contentEl, options.contentClassName)\r\n contentEl.appendChild(options.content instanceof window.Node ? options.content : domify(options.content))\r\n rootEl.appendChild(contentEl)\r\n\r\n // Close button\r\n if (options.showCloseButton) {\r\n var closeEl = vexInstance.closeEl = document.createElement('div')\r\n closeEl.classList.add(baseClassNames.close)\r\n addClasses(closeEl, options.closeClassName)\r\n closeEl.addEventListener('click', vexInstance.close.bind(vexInstance))\r\n contentEl.appendChild(closeEl)\r\n }\r\n\r\n // Add to DOM\r\n document.querySelector(options.appendLocation).appendChild(rootEl)\r\n\r\n // Call after open callback\r\n if (options.afterOpen) {\r\n options.afterOpen.call(vexInstance)\r\n }\r\n\r\n // Apply styling to the body\r\n document.body.classList.add(baseClassNames.open)\r\n\r\n // Return the created vex instance\r\n return vexInstance\r\n },\r\n\r\n // A top-level vex.close function to close dialogs by reference or id\r\n close: function close (vexOrId) {\r\n var id\r\n if (vexOrId.id) {\r\n id = vexOrId.id\r\n } else if (typeof vexOrId === 'string') {\r\n id = vexOrId\r\n } else {\r\n throw new TypeError('close requires a vex object or id string')\r\n }\r\n if (!vexes[id]) {\r\n return false\r\n }\r\n return vexes[id].close()\r\n },\r\n\r\n // Close the most recently created/opened vex\r\n closeTop: function closeTop () {\r\n var ids = Object.keys(vexes)\r\n if (!ids.length) {\r\n return false\r\n }\r\n return vexes[ids[ids.length - 1]].close()\r\n },\r\n\r\n // Close every vex!\r\n closeAll: function closeAll () {\r\n for (var id in vexes) {\r\n this.close(id)\r\n }\r\n return true\r\n },\r\n\r\n // A getter for the internal lookup table\r\n getAll: function getAll () {\r\n return vexes\r\n },\r\n\r\n // A getter for the internal lookup table\r\n getById: function getById (id) {\r\n return vexes[id]\r\n }\r\n}\r\n\r\n// Close top vex on escape\r\nwindow.addEventListener('keyup', function vexKeyupListener (e) {\r\n if (e.keyCode === 27) {\r\n isEscapeActive = true\r\n vex.closeTop()\r\n isEscapeActive = false\r\n }\r\n})\r\n\r\n// Close all vexes on history pop state (useful in single page apps)\r\nwindow.addEventListener('popstate', function () {\r\n if (vex.defaultOptions.closeAllOnPopState) {\r\n vex.closeAll()\r\n }\r\n})\r\n\r\nvex.defaultOptions = {\r\n content: '',\r\n showCloseButton: true,\r\n escapeButtonCloses: true,\r\n overlayClosesOnClick: true,\r\n appendLocation: 'body',\r\n className: '',\r\n overlayClassName: '',\r\n contentClassName: '',\r\n closeClassName: '',\r\n closeAllOnPopState: true\r\n}\r\n\r\n// TODO Loading symbols?\r\n\r\n// Include escapeHtml function on the library object\r\nObject.defineProperty(vex, '_escapeHtml', {\r\n configurable: false,\r\n enumerable: false,\r\n writable: false,\r\n value: escapeHtml\r\n})\r\n\r\n// Plugin system!\r\nvex.registerPlugin = function registerPlugin (pluginFn, name) {\r\n var plugin = pluginFn(vex)\r\n var pluginName = name || plugin.name\r\n if (vex[pluginName]) {\r\n throw new Error('Plugin ' + name + ' is already registered.')\r\n }\r\n vex[pluginName] = plugin\r\n}\r\n\r\nmodule.exports = vex\r\n\n},{\"classlist-polyfill\":1,\"domify\":2,\"es6-object-assign\":3}]},{},[4])(4)\n});","import Component from '../abstracts/Component';\nimport vex from 'vex-js';\n\nexport default class ModalComponent extends Component {\n get SELECTORS() {\n return {\n trigger: '[data-modal]',\n vexContainer: '[data-vex-container]',\n container: '.vex',\n focusableEl: 'a, :input:not([type=hidden]), button, [tabindex], iframe, :input:not(.form-group__username)'\n }\n }\n\n get LIBRARIES_SELECTORS() {\n return {\n tab: '[data-tabs]',\n select: 'select',\n fakeSelectToCleanUp: 'select.select2-hidden-accessible + span.select2-container'\n }\n }\n\n get CLASSES () {\n return {\n canScroll: 'can-scroll'\n }\n }\n\n constructor() {\n super();\n this.focusableEl = $(this.SELECTORS.focusableEl);\n }\n\n modalAfterOpen(vexInstance, closeText, overflow) {\n let $close = $(vexInstance.closeEl);\n let $container = $(vexInstance.rootEl);\n let closeLabel = closeText;\n $($close).removeClass('vex-close');\n $($close).addClass('icon-close');\n\n if (closeText) {\n $close.text(closeLabel).addClass('cta-close')\n }\n\n if (overflow === 'auto') {\n $('body').addClass(this.CLASSES.canScroll);\n }\n\n let $tabs = $container.find(this.LIBRARIES_SELECTORS.tab);\n if ($tabs.length > 0) {\n this.moduleLoader.loadBootstrapJsComponentAndExecute(\"tab\",\n (module) => {\n $(this.LIBRARIES_SELECTORS.tab).tab();\n this.log('Tab initialized');\n },\n (error) => {\n console.log(\"failed to load tabs \", error.stack);\n }\n )\n }\n\n // let $select = $container.find(this.LIBRARIES_SELECTORS.select);\n\n // if ($select.length > 0) {\n // this.moduleLoader.loadSelect2(\n // (module) => {\n // $container.find(this.LIBRARIES_SELECTORS.fakeSelectToCleanUp).remove()\n // const $selectEl = $(this.LIBRARIES_SELECTORS.select);\n\n // $selectEl.each(function () {\n // let ctx = $(this);\n // ctx.select2({\n // minimumResultsForSearch: Infinity\n // });\n // });\n // },\n // (error) => {\n // console.log(\"failed to load select2 \", error.stack);\n // }\n // );\n // }\n\n //ADD ACCESSIBILITY PROPERTIES\n $container.attr('tabindex', -1).attr('role', 'dialog');\n $close.attr('role', 'button').attr('tabindex', 0);\n\n let $focusableEl = $container.find(this.SELECTORS.focusableEl);\n $focusableEl.first().focus();\n }\n\n getRequestBody (el) {\n try {\n const body = el.data('body');\n return typeof body === \"string\" ? JSON.parse(el.data('body')) : body;\n } catch (e) {\n return {}\n }\n }\n\n openAjaxContent(el) {\n let ctx = this;\n let url = el.data('href') || el.attr('href');\n let title = el.data('title');\n let close = el.data('closeText');\n let overlayClass = el.data('overlayClass');\n let overflow = el.data('overflow');\n let dataType = el.data('type');\n let dataEgonValidation = el.data('egonValidation');\n let method = el.data('method') || 'GET';\n let body = method.toUpperCase() === 'POST' ? this.getRequestBody(el) : null;\n\n $.ajax({\n type: method,\n url: url,\n data: body,\n dataType: dataType,\n contentType: body ? \"application/json; charset=utf-8\" : undefined,\n }).then(resp => {\n let chunked = $(resp).find('[data-ajax-chunk]');\n\n if (typeof resp !=\"object\" && chunked.length) {\n resp = chunked.html();\n }\n var vexWrapper = document.querySelector(this.SELECTORS.vexContainer);\n vex.open({\n appendLocation: '[data-vex-container]',\n unsafeContent: this.wrappedContent(resp, title)[0].outerHTML,\n className: el.data('modalClass'),\n afterOpen: function() {\n vexWrapper.classList.add('vex');\n setTimeout(function(){\n $('body').trigger(\"formInitializeAll\");\n }, 1000);\n ctx.$emit(ctx.$customEvents.MODAL_EVENTS.afterOpen);\n ctx.modalAfterOpen(this, close, overflow);\n if (dataEgonValidation === true) {\n ctx.$emit(ctx.$customEvents.MODAL_EVENTS.egonValidation);\n }\n },\n afterClose: function() {\n vexWrapper.classList.remove('vex');\n ctx.$emit(ctx.$customEvents.MODAL_EVENTS.afterClose, this);\n $('body').removeClass(ctx.CLASSES.canScroll);\n },\n overlayClassName: overlayClass\n });\n });\n }\n\n openStaticContent(el) {\n let ctx = this;\n let title = el.data('title');\n let close = el.data('closeText');\n let content = $(el.data('modalId'))[0].outerHTML;\n\n vex.open({\n unsafeContent: this.wrappedContent(content, title)[0].outerHTML,\n className: el.data('modalClass'),\n defaultOptions: {\n appendLocation: 'vex-container',\n },\n afterOpen: function() {\n ctx.$emit(ctx.$customEvents.MODAL_EVENTS.afterOpen);\n ctx.modalAfterOpen(this, close);\n },\n afterClose: function() {\n ctx.$emit(ctx.$customEvents.MODAL_EVENTS.afterClose, this);\n $('body').removeClass(ctx.CLASSES.canScroll);\n }\n });\n }\n\n openRemoteContent(conf) {\n let title = $(conf.unsafeContent).data('title');\n let close = $(conf.unsafeContent).data('closeText');\n const ctx = this;\n let classData = $(conf.unsafeContent).data('modalClass');\n if(conf.modalClass){\n classData = conf.modalClass ;\n }\n if (conf.canScroll) document.body.classList.add(this.CLASSES.canScroll);\n vex.open({\n unsafeContent: this.wrappedContent(conf.unsafeContent, title)[0].outerHTML,\n className: classData,\n defaultOptions: {\n appendLocation: 'vex-container',\n },\n afterOpen: function () {\n this.conf = conf; // use to pass parameters...\n ctx.$emit(ctx.$customEvents.MODAL_EVENTS.afterOpen, this);\n ctx.modalAfterOpen(this, close);\n },\n afterClose: function () {\n ctx.$emit(ctx.$customEvents.MODAL_EVENTS.afterClose, this);\n $('body').removeClass(ctx.CLASSES.canScroll);\n }\n });\n }\n\n wrappedContent(content, title) {\n let container = $(`
`);\n if (title) {\n let $header = $(`

${title}

`);\n container.append($header);\n } else {\n container.addClass('no-header')\n }\n if (content) {\n let $body = $(`
${content}
`);\n container.append($body);\n }\n return container;\n }\n\n bindEvents() {\n this.$on('click.modal', ({event}) => {\n let $el = $(event.currentTarget);\n if ($el.data(\"originalEvent\") !== \"run\") {\n event.preventDefault();\n }\n if ($el.data('modalId') ) {\n this.openStaticContent($el);\n } else {\n this.openAjaxContent($el);\n }\n }, 'body', this.SELECTORS.trigger);\n\n // Modal when clicking a button/link with data-href\n // $(this.SELECTORS.trigger).on('click.modal', (e) => {\n // e.preventDefault();\n // let $el = $(e.currentTarget);\n // if ($el.data('modalId') ) {\n // ctx.openStaticContent($el);\n // } else {\n // ctx.openAjaxContent($el);\n // }\n // });\n\n // Modal when calling from outside\n this.$on(this.$customEvents.MODAL_EVENTS.show, ({payload}) => {\n this.openRemoteContent(payload);\n });\n }\n\n render() {\n this.bindEvents();\n }\n}\n"],"sourceRoot":""}