diff --git a/bower.json b/bower.json index 5925cd3..ce32ba2 100644 --- a/bower.json +++ b/bower.json @@ -1,7 +1,7 @@ { "name": "rmodal", "main": "rmodal.js", - "version": "1.0.23", + "version": "1.0.24", "authors": [ "Iskren Slavov " ], @@ -25,4 +25,4 @@ "test", "tests" ] -} +} \ No newline at end of file diff --git a/dist/rmodal.js b/dist/rmodal.js index 100531d..3ada9df 100644 --- a/dist/rmodal.js +++ b/dist/rmodal.js @@ -130,12 +130,12 @@ RModal.prototype._doClose = function _doClose () { }, this.opts.closeTimeout); }; -RModal.prototype.content = function content (content) { - if (content === undefined) { +RModal.prototype.content = function content (html) { + if (html === undefined) { return this.dialog.innerHTML; } - this.dialog.innerHTML = content; + this.dialog.innerHTML = html; }; RModal.prototype.elements = function elements (selector, fallback) { @@ -192,11 +192,10 @@ RModal.prototype.keydown = function keydown (ev) { } }; -RModal.prototype.version = '1.0.23'; -RModal.version = '1.0.23'; +RModal.prototype.version = '1.0.24'; +RModal.version = '1.0.24'; return RModal; }))); - //# sourceMappingURL=rmodal.js.map diff --git a/dist/rmodal.js.map b/dist/rmodal.js.map index 029d74d..c1569a9 100644 --- a/dist/rmodal.js.map +++ b/dist/rmodal.js.map @@ -1 +1 @@ -{"version":3,"file":"rmodal.js","sources":["rmodal.js"],"sourcesContent":["'use strict';\n\nlet is = (obj, type) => Object.prototype.toString.call(obj).toLowerCase() === `[object ${type}]`;\n\nlet addClass = (el, cls) => {\n let arr = el.className\n .split(/\\s+/)\n .filter((c) => !!c && c == cls);\n\n if (!arr.length) {\n el.className += ` ${cls}`;\n }\n}\n\nlet removeClass = (el, cls) => {\n el.className = el.className\n .split(/\\s+/)\n .filter((c) => !!c && c != cls)\n .join(' ');\n}\n\nclass RModal {\n constructor(el, opts) {\n this.opened = false;\n\n this.opts = {\n bodyClass: 'modal-open'\n , dialogClass: 'modal-dialog'\n , dialogOpenClass: 'bounceInDown'\n , dialogCloseClass: 'bounceOutUp'\n\n , focus: true\n , focusElements: [\n 'a[href]', 'area[href]', 'input:not([disabled]):not([type=hidden])'\n , 'button:not([disabled])', 'select:not([disabled])'\n , 'textarea:not([disabled])', 'iframe', 'object', 'embed'\n , '*[tabindex]', '*[contenteditable]'\n ]\n\n , escapeClose: true\n , content: null\n , closeTimeout: 500\n };\n\n Object.keys(opts || {})\n .forEach((key) => {\n /* istanbul ignore else */\n if (opts[key] !== undefined) {\n this.opts[key] = opts[key];\n }\n });\n\n this.overlay = el;\n this.dialog = el.querySelector(`.${this.opts.dialogClass}`);\n\n if (this.opts.content) {\n this.content(this.opts.content);\n }\n }\n\n open(content) {\n this.content(content);\n\n if (!is(this.opts.beforeOpen, 'function')) {\n return this._doOpen();\n }\n\n this.opts.beforeOpen(() => {\n this._doOpen();\n });\n }\n\n _doOpen() {\n addClass(document.body, this.opts.bodyClass);\n\n removeClass(this.dialog, this.opts.dialogCloseClass);\n addClass(this.dialog, this.opts.dialogOpenClass);\n\n this.overlay.style.display = 'block';\n\n if (this.opts.focus) {\n this.focusOutElement = document.activeElement;\n this.focus();\n }\n\n if (is(this.opts.afterOpen, 'function')) {\n this.opts.afterOpen();\n }\n this.opened = true;\n }\n\n close() {\n if (!is(this.opts.beforeClose, 'function')) {\n return this._doClose();\n }\n\n this.opts.beforeClose(() => {\n this._doClose();\n });\n }\n\n _doClose() {\n removeClass(this.dialog, this.opts.dialogOpenClass);\n addClass(this.dialog, this.opts.dialogCloseClass);\n\n removeClass(document.body, this.opts.bodyClass);\n\n if (this.opts.focus) {\n this.focus(this.focusOutElement);\n }\n\n if (is(this.opts.afterClose, 'function')) {\n this.opts.afterClose();\n }\n\n this.opened = false;\n setTimeout(() => {\n this.overlay.style.display = 'none';\n }, this.opts.closeTimeout);\n }\n\n content(content) {\n if (content === undefined) {\n return this.dialog.innerHTML;\n }\n\n this.dialog.innerHTML = content;\n }\n\n elements(selector, fallback) {\n fallback = fallback || window.navigator.appVersion.indexOf('MSIE 9.0') > -1;\n selector = is(selector, 'array') ? selector.join(',') : selector;\n\n return [].filter.call(\n this.dialog.querySelectorAll(selector)\n , (element) => {\n if (fallback) {\n var style = window.getComputedStyle(element);\n return style.display !== 'none' && style.visibility !== 'hidden';\n }\n\n return element.offsetParent !== null;\n }\n );\n }\n\n focus(el) {\n el = el || this.elements(this.opts.focusElements)[0] || this.dialog.firstChild;\n\n if (el && is(el.focus, 'function')) {\n el.focus();\n }\n }\n\n keydown(ev) {\n if (this.opts.escapeClose && ev.which == 27) {\n this.close();\n }\n\n function stopEvent() {\n ev.preventDefault();\n ev.stopPropagation();\n }\n\n if (this.opened && ev.which == 9 && this.dialog.contains(ev.target)) {\n var elements = this.elements(this.opts.focusElements)\n , first = elements[0]\n , last = elements[elements.length - 1];\n\n if (first == last) {\n stopEvent();\n }\n else if (ev.target == first && ev.shiftKey) {\n stopEvent();\n last.focus();\n }\n else if (ev.target == last && !ev.shiftKey) {\n stopEvent();\n first.focus();\n }\n }\n }\n}\n\nRModal.prototype.version = '@@VERSION@@';\nRModal.version = '@@VERSION@@';\n\nexport default RModal;\n"],"names":["let"],"mappings":"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","sourceRoot":"/source/"} \ No newline at end of file +{"version":3,"file":"rmodal.js","sources":["rmodal.js"],"sourcesContent":["'use strict';\n\nlet is = (obj, type) => Object.prototype.toString.call(obj).toLowerCase() === `[object ${type}]`;\n\nlet addClass = (el, cls) => {\n let arr = el.className\n .split(/\\s+/)\n .filter((c) => !!c && c == cls);\n\n if (!arr.length) {\n el.className += ` ${cls}`;\n }\n};\n\nlet removeClass = (el, cls) => {\n el.className = el.className\n .split(/\\s+/)\n .filter((c) => !!c && c != cls)\n .join(' ');\n};\n\nclass RModal {\n constructor(el, opts) {\n this.opened = false;\n\n this.opts = {\n bodyClass: 'modal-open'\n , dialogClass: 'modal-dialog'\n , dialogOpenClass: 'bounceInDown'\n , dialogCloseClass: 'bounceOutUp'\n\n , focus: true\n , focusElements: [\n 'a[href]', 'area[href]', 'input:not([disabled]):not([type=hidden])'\n , 'button:not([disabled])', 'select:not([disabled])'\n , 'textarea:not([disabled])', 'iframe', 'object', 'embed'\n , '*[tabindex]', '*[contenteditable]'\n ]\n\n , escapeClose: true\n , content: null\n , closeTimeout: 500\n };\n\n Object.keys(opts || {})\n .forEach((key) => {\n /* istanbul ignore else */\n if (opts[key] !== undefined) {\n this.opts[key] = opts[key];\n }\n });\n\n this.overlay = el;\n this.dialog = el.querySelector(`.${this.opts.dialogClass}`);\n\n if (this.opts.content) {\n this.content(this.opts.content);\n }\n }\n\n open(content) {\n this.content(content);\n\n if (!is(this.opts.beforeOpen, 'function')) {\n return this._doOpen();\n }\n\n this.opts.beforeOpen(() => {\n this._doOpen();\n });\n }\n\n _doOpen() {\n addClass(document.body, this.opts.bodyClass);\n\n removeClass(this.dialog, this.opts.dialogCloseClass);\n addClass(this.dialog, this.opts.dialogOpenClass);\n\n this.overlay.style.display = 'block';\n\n if (this.opts.focus) {\n this.focusOutElement = document.activeElement;\n this.focus();\n }\n\n if (is(this.opts.afterOpen, 'function')) {\n this.opts.afterOpen();\n }\n this.opened = true;\n }\n\n close() {\n if (!is(this.opts.beforeClose, 'function')) {\n return this._doClose();\n }\n\n this.opts.beforeClose(() => {\n this._doClose();\n });\n }\n\n _doClose() {\n removeClass(this.dialog, this.opts.dialogOpenClass);\n addClass(this.dialog, this.opts.dialogCloseClass);\n\n removeClass(document.body, this.opts.bodyClass);\n\n if (this.opts.focus) {\n this.focus(this.focusOutElement);\n }\n\n if (is(this.opts.afterClose, 'function')) {\n this.opts.afterClose();\n }\n\n this.opened = false;\n setTimeout(() => {\n this.overlay.style.display = 'none';\n }, this.opts.closeTimeout);\n }\n\n content(html) {\n if (html === undefined) {\n return this.dialog.innerHTML;\n }\n\n this.dialog.innerHTML = html;\n }\n\n elements(selector, fallback) {\n fallback = fallback || window.navigator.appVersion.indexOf('MSIE 9.0') > -1;\n selector = is(selector, 'array') ? selector.join(',') : selector;\n\n return [].filter.call(\n this.dialog.querySelectorAll(selector)\n , (element) => {\n if (fallback) {\n var style = window.getComputedStyle(element);\n return style.display !== 'none' && style.visibility !== 'hidden';\n }\n\n return element.offsetParent !== null;\n }\n );\n }\n\n focus(el) {\n el = el || this.elements(this.opts.focusElements)[0] || this.dialog.firstChild;\n\n if (el && is(el.focus, 'function')) {\n el.focus();\n }\n }\n\n keydown(ev) {\n if (this.opts.escapeClose && ev.which == 27) {\n this.close();\n }\n\n function stopEvent() {\n ev.preventDefault();\n ev.stopPropagation();\n }\n\n if (this.opened && ev.which == 9 && this.dialog.contains(ev.target)) {\n var elements = this.elements(this.opts.focusElements)\n , first = elements[0]\n , last = elements[elements.length - 1];\n\n if (first == last) {\n stopEvent();\n }\n else if (ev.target == first && ev.shiftKey) {\n stopEvent();\n last.focus();\n }\n else if (ev.target == last && !ev.shiftKey) {\n stopEvent();\n first.focus();\n }\n }\n }\n}\n\nRModal.prototype.version = '@@VERSION@@';\nRModal.version = '@@VERSION@@';\n\nexport default RModal;"],"names":["let"],"mappings":"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","preExistingComment":"//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjpudWxsLCJzb3VyY2VzIjpbIi9Vc2Vycy93aXNoL0Rlc2t0b3Avcm1vZGFsLmpzL3NyYy9ybW9kYWwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG5sZXQgaXMgPSAob2JqLCB0eXBlKSA9PiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqKS50b0xvd2VyQ2FzZSgpID09PSBgW29iamVjdCAke3R5cGV9XWA7XG5cbmxldCBhZGRDbGFzcyA9IChlbCwgY2xzKSA9PiB7XG4gICAgbGV0IGFyciA9IGVsLmNsYXNzTmFtZVxuICAgIC5zcGxpdCgvXFxzKy8pXG4gICAgLmZpbHRlcigoYykgPT4gISFjICYmIGMgPT0gY2xzKTtcblxuICAgIGlmICghYXJyLmxlbmd0aCkge1xuICAgICAgICBlbC5jbGFzc05hbWUgKz0gYCAke2Nsc31gO1xuICAgIH1cbn07XG5cbmxldCByZW1vdmVDbGFzcyA9IChlbCwgY2xzKSA9PiB7XG4gICAgZWwuY2xhc3NOYW1lID0gZWwuY2xhc3NOYW1lXG4gICAgLnNwbGl0KC9cXHMrLylcbiAgICAuZmlsdGVyKChjKSA9PiAhIWMgJiYgYyAhPSBjbHMpXG4gICAgLmpvaW4oJyAnKTtcbn07XG5cbmNsYXNzIFJNb2RhbCB7XG4gICAgY29uc3RydWN0b3IoZWwsIG9wdHMpIHtcbiAgICAgICAgdGhpcy5vcGVuZWQgPSBmYWxzZTtcblxuICAgICAgICB0aGlzLm9wdHMgPSB7XG4gICAgICAgICAgICBib2R5Q2xhc3M6ICdtb2RhbC1vcGVuJ1xuICAgICAgICAgICAgLCBkaWFsb2dDbGFzczogJ21vZGFsLWRpYWxvZydcbiAgICAgICAgICAgICwgZGlhbG9nT3BlbkNsYXNzOiAnYm91bmNlSW5Eb3duJ1xuICAgICAgICAgICAgLCBkaWFsb2dDbG9zZUNsYXNzOiAnYm91bmNlT3V0VXAnXG5cbiAgICAgICAgICAgICwgZm9jdXM6IHRydWVcbiAgICAgICAgICAgICwgZm9jdXNFbGVtZW50czogW1xuICAgICAgICAgICAgICAgICdhW2hyZWZdJywgJ2FyZWFbaHJlZl0nLCAnaW5wdXQ6bm90KFtkaXNhYmxlZF0pOm5vdChbdHlwZT1oaWRkZW5dKSdcbiAgICAgICAgICAgICAgICAsICdidXR0b246bm90KFtkaXNhYmxlZF0pJywgJ3NlbGVjdDpub3QoW2Rpc2FibGVkXSknXG4gICAgICAgICAgICAgICAgLCAndGV4dGFyZWE6bm90KFtkaXNhYmxlZF0pJywgJ2lmcmFtZScsICdvYmplY3QnLCAnZW1iZWQnXG4gICAgICAgICAgICAgICAgLCAnKlt0YWJpbmRleF0nLCAnKltjb250ZW50ZWRpdGFibGVdJ1xuICAgICAgICAgICAgXVxuXG4gICAgICAgICAgICAsIGVzY2FwZUNsb3NlOiB0cnVlXG4gICAgICAgICAgICAsIGNvbnRlbnQ6IG51bGxcbiAgICAgICAgICAgICwgY2xvc2VUaW1lb3V0OiA1MDBcbiAgICAgICAgfTtcblxuICAgICAgICBPYmplY3Qua2V5cyhvcHRzIHx8IHt9KVxuICAgICAgICAuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICAgICAgaWYgKG9wdHNba2V5XSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vcHRzW2tleV0gPSBvcHRzW2tleV07XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMub3ZlcmxheSA9IGVsO1xuICAgICAgICB0aGlzLmRpYWxvZyA9IGVsLnF1ZXJ5U2VsZWN0b3IoYC4ke3RoaXMub3B0cy5kaWFsb2dDbGFzc31gKTtcblxuICAgICAgICBpZiAodGhpcy5vcHRzLmNvbnRlbnQpIHtcbiAgICAgICAgICAgIHRoaXMuY29udGVudCh0aGlzLm9wdHMuY29udGVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvcGVuKGNvbnRlbnQpIHtcbiAgICAgICAgdGhpcy5jb250ZW50KGNvbnRlbnQpO1xuXG4gICAgICAgIGlmICghaXModGhpcy5vcHRzLmJlZm9yZU9wZW4sICdmdW5jdGlvbicpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fZG9PcGVuKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm9wdHMuYmVmb3JlT3BlbigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9kb09wZW4oKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgX2RvT3BlbigpIHtcbiAgICAgICAgYWRkQ2xhc3MoZG9jdW1lbnQuYm9keSwgdGhpcy5vcHRzLmJvZHlDbGFzcyk7XG5cbiAgICAgICAgcmVtb3ZlQ2xhc3ModGhpcy5kaWFsb2csIHRoaXMub3B0cy5kaWFsb2dDbG9zZUNsYXNzKTtcbiAgICAgICAgYWRkQ2xhc3ModGhpcy5kaWFsb2csIHRoaXMub3B0cy5kaWFsb2dPcGVuQ2xhc3MpO1xuXG4gICAgICAgIHRoaXMub3ZlcmxheS5zdHlsZS5kaXNwbGF5ID0gJ2Jsb2NrJztcblxuICAgICAgICBpZiAodGhpcy5vcHRzLmZvY3VzKSB7XG4gICAgICAgICAgICB0aGlzLmZvY3VzT3V0RWxlbWVudCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICB0aGlzLmZvY3VzKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXModGhpcy5vcHRzLmFmdGVyT3BlbiwgJ2Z1bmN0aW9uJykpIHtcbiAgICAgICAgICAgIHRoaXMub3B0cy5hZnRlck9wZW4oKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm9wZW5lZCA9IHRydWU7XG4gICAgfVxuXG4gICAgY2xvc2UoKSB7XG4gICAgICAgIGlmICghaXModGhpcy5vcHRzLmJlZm9yZUNsb3NlLCAnZnVuY3Rpb24nKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2RvQ2xvc2UoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub3B0cy5iZWZvcmVDbG9zZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9kb0Nsb3NlKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIF9kb0Nsb3NlKCkge1xuICAgICAgICByZW1vdmVDbGFzcyh0aGlzLmRpYWxvZywgdGhpcy5vcHRzLmRpYWxvZ09wZW5DbGFzcyk7XG4gICAgICAgIGFkZENsYXNzKHRoaXMuZGlhbG9nLCB0aGlzLm9wdHMuZGlhbG9nQ2xvc2VDbGFzcyk7XG5cbiAgICAgICAgcmVtb3ZlQ2xhc3MoZG9jdW1lbnQuYm9keSwgdGhpcy5vcHRzLmJvZHlDbGFzcyk7XG5cbiAgICAgICAgaWYgKHRoaXMub3B0cy5mb2N1cykge1xuICAgICAgICAgICAgdGhpcy5mb2N1cyh0aGlzLmZvY3VzT3V0RWxlbWVudCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXModGhpcy5vcHRzLmFmdGVyQ2xvc2UsICdmdW5jdGlvbicpKSB7XG4gICAgICAgICAgICB0aGlzLm9wdHMuYWZ0ZXJDbG9zZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5vcGVuZWQgPSBmYWxzZTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm92ZXJsYXkuc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICAgICAgfSwgdGhpcy5vcHRzLmNsb3NlVGltZW91dCk7XG4gICAgfVxuXG4gICAgY29udGVudChodG1sKSB7XG4gICAgICAgIGlmIChodG1sID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmRpYWxvZy5pbm5lckhUTUw7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmRpYWxvZy5pbm5lckhUTUwgPSBodG1sO1xuICAgIH1cblxuICAgIGVsZW1lbnRzKHNlbGVjdG9yLCBmYWxsYmFjaykge1xuICAgICAgICBmYWxsYmFjayA9IGZhbGxiYWNrIHx8IHdpbmRvdy5uYXZpZ2F0b3IuYXBwVmVyc2lvbi5pbmRleE9mKCdNU0lFIDkuMCcpID4gLTE7XG4gICAgICAgIHNlbGVjdG9yID0gaXMoc2VsZWN0b3IsICdhcnJheScpID8gc2VsZWN0b3Iuam9pbignLCcpIDogc2VsZWN0b3I7XG5cbiAgICAgICAgcmV0dXJuIFtdLmZpbHRlci5jYWxsKFxuICAgICAgICAgICAgdGhpcy5kaWFsb2cucXVlcnlTZWxlY3RvckFsbChzZWxlY3RvcilcbiAgICAgICAgICAgICwgKGVsZW1lbnQpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZmFsbGJhY2spIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBzdHlsZS5kaXNwbGF5ICE9PSAnbm9uZScgJiYgc3R5bGUudmlzaWJpbGl0eSAhPT0gJ2hpZGRlbic7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGVsZW1lbnQub2Zmc2V0UGFyZW50ICE9PSBudWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGZvY3VzKGVsKSB7XG4gICAgICAgIGVsID0gZWwgfHwgdGhpcy5lbGVtZW50cyh0aGlzLm9wdHMuZm9jdXNFbGVtZW50cylbMF0gfHwgdGhpcy5kaWFsb2cuZmlyc3RDaGlsZDtcblxuICAgICAgICBpZiAoZWwgJiYgaXMoZWwuZm9jdXMsICdmdW5jdGlvbicpKSB7XG4gICAgICAgICAgICBlbC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAga2V5ZG93bihldikge1xuICAgICAgICBpZiAodGhpcy5vcHRzLmVzY2FwZUNsb3NlICYmIGV2LndoaWNoID09IDI3KSB7XG4gICAgICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBzdG9wRXZlbnQoKSB7XG4gICAgICAgICAgICBldi5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgZXYuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5vcGVuZWQgJiYgZXYud2hpY2ggPT0gOSAmJiB0aGlzLmRpYWxvZy5jb250YWlucyhldi50YXJnZXQpKSB7XG4gICAgICAgICAgICB2YXIgZWxlbWVudHMgPSB0aGlzLmVsZW1lbnRzKHRoaXMub3B0cy5mb2N1c0VsZW1lbnRzKVxuICAgICAgICAgICAgICAgICwgZmlyc3QgPSBlbGVtZW50c1swXVxuICAgICAgICAgICAgICAgICwgbGFzdCA9IGVsZW1lbnRzW2VsZW1lbnRzLmxlbmd0aCAtIDFdO1xuXG4gICAgICAgICAgICBpZiAoZmlyc3QgPT0gbGFzdCkge1xuICAgICAgICAgICAgICAgIHN0b3BFdmVudCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoZXYudGFyZ2V0ID09IGZpcnN0ICYmIGV2LnNoaWZ0S2V5KSB7XG4gICAgICAgICAgICAgICAgc3RvcEV2ZW50KCk7XG4gICAgICAgICAgICAgICAgbGFzdC5mb2N1cygpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoZXYudGFyZ2V0ID09IGxhc3QgJiYgIWV2LnNoaWZ0S2V5KSB7XG4gICAgICAgICAgICAgICAgc3RvcEV2ZW50KCk7XG4gICAgICAgICAgICAgICAgZmlyc3QuZm9jdXMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuUk1vZGFsLnByb3RvdHlwZS52ZXJzaW9uID0gJ0BAVkVSU0lPTkBAJztcblJNb2RhbC52ZXJzaW9uID0gJ0BAVkVSU0lPTkBAJztcblxuZXhwb3J0IGRlZmF1bHQgUk1vZGFsOyJdLCJuYW1lcyI6WyJsZXQiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUVBQSxJQUFJLEVBQUUsR0FBRyxVQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsU0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLE1BQUssVUFBUyxHQUFFLElBQUksTUFBRSxDQUFDLEdBQUEsQ0FBQzs7QUFFakdBLElBQUksUUFBUSxHQUFHLFVBQUMsRUFBRSxFQUFF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"} \ No newline at end of file diff --git a/dist/rmodal.min.js b/dist/rmodal.min.js index c9e651c..522bb5d 100644 --- a/dist/rmodal.min.js +++ b/dist/rmodal.min.js @@ -1,2 +1,2 @@ -!function(t,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o():"function"==typeof define&&define.amd?define(o):t.RModal=o()}(this,function(){var t=function(t,o){return Object.prototype.toString.call(t).toLowerCase()==="[object "+o+"]"},o=function(t,o){var e=t.className.split(/\s+/).filter(function(t){return!!t&&t==o});e.length||(t.className+=" "+o)},e=function(t,o){t.className=t.className.split(/\s+/).filter(function(t){return!!t&&t!=o}).join(" ")},s=function(t,o){var e=this;this.opened=!1,this.opts={bodyClass:"modal-open",dialogClass:"modal-dialog",dialogOpenClass:"bounceInDown",dialogCloseClass:"bounceOutUp",focus:!0,focusElements:["a[href]","area[href]","input:not([disabled]):not([type=hidden])","button:not([disabled])","select:not([disabled])","textarea:not([disabled])","iframe","object","embed","*[tabindex]","*[contenteditable]"],escapeClose:!0,content:null,closeTimeout:500},Object.keys(o||{}).forEach(function(t){void 0!==o[t]&&(e.opts[t]=o[t])}),this.overlay=t,this.dialog=t.querySelector("."+this.opts.dialogClass),this.opts.content&&this.content(this.opts.content)};return s.prototype.open=function(o){var e=this;return this.content(o),t(this.opts.beforeOpen,"function")?void this.opts.beforeOpen(function(){e._doOpen()}):this._doOpen()},s.prototype._doOpen=function(){o(document.body,this.opts.bodyClass),e(this.dialog,this.opts.dialogCloseClass),o(this.dialog,this.opts.dialogOpenClass),this.overlay.style.display="block",this.opts.focus&&(this.focusOutElement=document.activeElement,this.focus()),t(this.opts.afterOpen,"function")&&this.opts.afterOpen(),this.opened=!0},s.prototype.close=function(){var o=this;return t(this.opts.beforeClose,"function")?void this.opts.beforeClose(function(){o._doClose()}):this._doClose()},s.prototype._doClose=function(){var s=this;e(this.dialog,this.opts.dialogOpenClass),o(this.dialog,this.opts.dialogCloseClass),e(document.body,this.opts.bodyClass),this.opts.focus&&this.focus(this.focusOutElement),t(this.opts.afterClose,"function")&&this.opts.afterClose(),this.opened=!1,setTimeout(function(){s.overlay.style.display="none"},this.opts.closeTimeout)},s.prototype.content=function t(t){return void 0===t?this.dialog.innerHTML:void(this.dialog.innerHTML=t)},s.prototype.elements=function(o,e){return e=e||window.navigator.appVersion.indexOf("MSIE 9.0")>-1,o=t(o,"array")?o.join(","):o,[].filter.call(this.dialog.querySelectorAll(o),function(t){if(e){var o=window.getComputedStyle(t);return"none"!==o.display&&"hidden"!==o.visibility}return null!==t.offsetParent})},s.prototype.focus=function(o){o=o||this.elements(this.opts.focusElements)[0]||this.dialog.firstChild,o&&t(o.focus,"function")&&o.focus()},s.prototype.keydown=function(t){function o(){t.preventDefault(),t.stopPropagation()}if(this.opts.escapeClose&&27==t.which&&this.close(),this.opened&&9==t.which&&this.dialog.contains(t.target)){var e=this.elements(this.opts.focusElements),s=e[0],i=e[e.length-1];s==i?o():t.target==s&&t.shiftKey?(o(),i.focus()):t.target!=i||t.shiftKey||(o(),s.focus())}},s.prototype.version="1.0.23",s.version="1.0.23",s}); +!function(t,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o():"function"==typeof define&&define.amd?define(o):t.RModal=o()}(this,function(){var t=function(t,o){return Object.prototype.toString.call(t).toLowerCase()==="[object "+o+"]"},o=function(t,o){var e=t.className.split(/\s+/).filter(function(t){return!!t&&t==o});e.length||(t.className+=" "+o)},e=function(t,o){t.className=t.className.split(/\s+/).filter(function(t){return!!t&&t!=o}).join(" ")},s=function(t,o){var e=this;this.opened=!1,this.opts={bodyClass:"modal-open",dialogClass:"modal-dialog",dialogOpenClass:"bounceInDown",dialogCloseClass:"bounceOutUp",focus:!0,focusElements:["a[href]","area[href]","input:not([disabled]):not([type=hidden])","button:not([disabled])","select:not([disabled])","textarea:not([disabled])","iframe","object","embed","*[tabindex]","*[contenteditable]"],escapeClose:!0,content:null,closeTimeout:500},Object.keys(o||{}).forEach(function(t){void 0!==o[t]&&(e.opts[t]=o[t])}),this.overlay=t,this.dialog=t.querySelector("."+this.opts.dialogClass),this.opts.content&&this.content(this.opts.content)};return s.prototype.open=function(o){var e=this;return this.content(o),t(this.opts.beforeOpen,"function")?void this.opts.beforeOpen(function(){e._doOpen()}):this._doOpen()},s.prototype._doOpen=function(){o(document.body,this.opts.bodyClass),e(this.dialog,this.opts.dialogCloseClass),o(this.dialog,this.opts.dialogOpenClass),this.overlay.style.display="block",this.opts.focus&&(this.focusOutElement=document.activeElement,this.focus()),t(this.opts.afterOpen,"function")&&this.opts.afterOpen(),this.opened=!0},s.prototype.close=function(){var o=this;return t(this.opts.beforeClose,"function")?void this.opts.beforeClose(function(){o._doClose()}):this._doClose()},s.prototype._doClose=function(){var s=this;e(this.dialog,this.opts.dialogOpenClass),o(this.dialog,this.opts.dialogCloseClass),e(document.body,this.opts.bodyClass),this.opts.focus&&this.focus(this.focusOutElement),t(this.opts.afterClose,"function")&&this.opts.afterClose(),this.opened=!1,setTimeout(function(){s.overlay.style.display="none"},this.opts.closeTimeout)},s.prototype.content=function(t){return void 0===t?this.dialog.innerHTML:void(this.dialog.innerHTML=t)},s.prototype.elements=function(o,e){return e=e||window.navigator.appVersion.indexOf("MSIE 9.0")>-1,o=t(o,"array")?o.join(","):o,[].filter.call(this.dialog.querySelectorAll(o),function(t){if(e){var o=window.getComputedStyle(t);return"none"!==o.display&&"hidden"!==o.visibility}return null!==t.offsetParent})},s.prototype.focus=function(o){o=o||this.elements(this.opts.focusElements)[0]||this.dialog.firstChild,o&&t(o.focus,"function")&&o.focus()},s.prototype.keydown=function(t){function o(){t.preventDefault(),t.stopPropagation()}if(this.opts.escapeClose&&27==t.which&&this.close(),this.opened&&9==t.which&&this.dialog.contains(t.target)){var e=this.elements(this.opts.focusElements),s=e[0],i=e[e.length-1];s==i?o():t.target==s&&t.shiftKey?(o(),i.focus()):t.target!=i||t.shiftKey||(o(),s.focus())}},s.prototype.version="1.0.24",s.version="1.0.24",s}); //# sourceMappingURL=rmodal.min.js.map diff --git a/dist/rmodal.min.js.map b/dist/rmodal.min.js.map index 1d45216..f38b96f 100644 --- a/dist/rmodal.min.js.map +++ b/dist/rmodal.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["/source/rmodal.js"],"names":["let","is","obj","type","Object","prototype","toString","call","toLowerCase","addClass","el","cls","arr","className","split","filter","c","length","removeClass","join","RModal","opts","this","opened","bodyClass","dialogClass","dialogOpenClass","dialogCloseClass","focus","focusElements","escapeClose","content","closeTimeout","keys","forEach","key","undefined","this$1","overlay","dialog","querySelector","open","beforeOpen","_doOpen","document","body","style","display","focusOutElement","activeElement","afterOpen","close","beforeClose","_doClose","afterClose","setTimeout","innerHTML","elements","selector","fallback","window","navigator","appVersion","indexOf","querySelectorAll","element","getComputedStyle","visibility","offsetParent","firstChild","keydown","ev","stopEvent","preventDefault","stopPropagation","which","contains","target","first","last","shiftKey","version"],"mappings":"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","file":"rmodal.min.js","sourcesContent":["'use strict';\n\nlet is = (obj, type) => Object.prototype.toString.call(obj).toLowerCase() === `[object ${type}]`;\n\nlet addClass = (el, cls) => {\n let arr = el.className\n .split(/\\s+/)\n .filter((c) => !!c && c == cls);\n\n if (!arr.length) {\n el.className += ` ${cls}`;\n }\n}\n\nlet removeClass = (el, cls) => {\n el.className = el.className\n .split(/\\s+/)\n .filter((c) => !!c && c != cls)\n .join(' ');\n}\n\nclass RModal {\n constructor(el, opts) {\n this.opened = false;\n\n this.opts = {\n bodyClass: 'modal-open'\n , dialogClass: 'modal-dialog'\n , dialogOpenClass: 'bounceInDown'\n , dialogCloseClass: 'bounceOutUp'\n\n , focus: true\n , focusElements: [\n 'a[href]', 'area[href]', 'input:not([disabled]):not([type=hidden])'\n , 'button:not([disabled])', 'select:not([disabled])'\n , 'textarea:not([disabled])', 'iframe', 'object', 'embed'\n , '*[tabindex]', '*[contenteditable]'\n ]\n\n , escapeClose: true\n , content: null\n , closeTimeout: 500\n };\n\n Object.keys(opts || {})\n .forEach((key) => {\n /* istanbul ignore else */\n if (opts[key] !== undefined) {\n this.opts[key] = opts[key];\n }\n });\n\n this.overlay = el;\n this.dialog = el.querySelector(`.${this.opts.dialogClass}`);\n\n if (this.opts.content) {\n this.content(this.opts.content);\n }\n }\n\n open(content) {\n this.content(content);\n\n if (!is(this.opts.beforeOpen, 'function')) {\n return this._doOpen();\n }\n\n this.opts.beforeOpen(() => {\n this._doOpen();\n });\n }\n\n _doOpen() {\n addClass(document.body, this.opts.bodyClass);\n\n removeClass(this.dialog, this.opts.dialogCloseClass);\n addClass(this.dialog, this.opts.dialogOpenClass);\n\n this.overlay.style.display = 'block';\n\n if (this.opts.focus) {\n this.focusOutElement = document.activeElement;\n this.focus();\n }\n\n if (is(this.opts.afterOpen, 'function')) {\n this.opts.afterOpen();\n }\n this.opened = true;\n }\n\n close() {\n if (!is(this.opts.beforeClose, 'function')) {\n return this._doClose();\n }\n\n this.opts.beforeClose(() => {\n this._doClose();\n });\n }\n\n _doClose() {\n removeClass(this.dialog, this.opts.dialogOpenClass);\n addClass(this.dialog, this.opts.dialogCloseClass);\n\n removeClass(document.body, this.opts.bodyClass);\n\n if (this.opts.focus) {\n this.focus(this.focusOutElement);\n }\n\n if (is(this.opts.afterClose, 'function')) {\n this.opts.afterClose();\n }\n\n this.opened = false;\n setTimeout(() => {\n this.overlay.style.display = 'none';\n }, this.opts.closeTimeout);\n }\n\n content(content) {\n if (content === undefined) {\n return this.dialog.innerHTML;\n }\n\n this.dialog.innerHTML = content;\n }\n\n elements(selector, fallback) {\n fallback = fallback || window.navigator.appVersion.indexOf('MSIE 9.0') > -1;\n selector = is(selector, 'array') ? selector.join(',') : selector;\n\n return [].filter.call(\n this.dialog.querySelectorAll(selector)\n , (element) => {\n if (fallback) {\n var style = window.getComputedStyle(element);\n return style.display !== 'none' && style.visibility !== 'hidden';\n }\n\n return element.offsetParent !== null;\n }\n );\n }\n\n focus(el) {\n el = el || this.elements(this.opts.focusElements)[0] || this.dialog.firstChild;\n\n if (el && is(el.focus, 'function')) {\n el.focus();\n }\n }\n\n keydown(ev) {\n if (this.opts.escapeClose && ev.which == 27) {\n this.close();\n }\n\n function stopEvent() {\n ev.preventDefault();\n ev.stopPropagation();\n }\n\n if (this.opened && ev.which == 9 && this.dialog.contains(ev.target)) {\n var elements = this.elements(this.opts.focusElements)\n , first = elements[0]\n , last = elements[elements.length - 1];\n\n if (first == last) {\n stopEvent();\n }\n else if (ev.target == first && ev.shiftKey) {\n stopEvent();\n last.focus();\n }\n else if (ev.target == last && !ev.shiftKey) {\n stopEvent();\n first.focus();\n }\n }\n }\n}\n\nRModal.prototype.version = '@@VERSION@@';\nRModal.version = '@@VERSION@@';\n\nexport default RModal;\n"],"sourceRoot":"/source/"} \ No newline at end of file +{"version":3,"sources":["rmodal.js"],"names":["let","is","obj","type","Object","prototype","toString","call","toLowerCase","addClass","el","cls","arr","className","split","filter","c","length","removeClass","join","RModal","opts","this","opened","bodyClass","dialogClass","dialogOpenClass","dialogCloseClass","focus","focusElements","escapeClose","content","closeTimeout","keys","forEach","key","undefined","this$1","overlay","dialog","querySelector","open","beforeOpen","_doOpen","document","body","style","display","focusOutElement","activeElement","afterOpen","close","beforeClose","_doClose","afterClose","setTimeout","html","innerHTML","elements","selector","fallback","window","navigator","appVersion","indexOf","querySelectorAll","element","getComputedStyle","visibility","offsetParent","firstChild","keydown","ev","stopEvent","preventDefault","stopPropagation","which","contains","target","first","last","shiftKey","version"],"mappings":"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","file":"rmodal.min.js","sourcesContent":["'use strict';\n\nlet is = (obj, type) => Object.prototype.toString.call(obj).toLowerCase() === `[object ${type}]`;\n\nlet addClass = (el, cls) => {\n let arr = el.className\n .split(/\\s+/)\n .filter((c) => !!c && c == cls);\n\n if (!arr.length) {\n el.className += ` ${cls}`;\n }\n};\n\nlet removeClass = (el, cls) => {\n el.className = el.className\n .split(/\\s+/)\n .filter((c) => !!c && c != cls)\n .join(' ');\n};\n\nclass RModal {\n constructor(el, opts) {\n this.opened = false;\n\n this.opts = {\n bodyClass: 'modal-open'\n , dialogClass: 'modal-dialog'\n , dialogOpenClass: 'bounceInDown'\n , dialogCloseClass: 'bounceOutUp'\n\n , focus: true\n , focusElements: [\n 'a[href]', 'area[href]', 'input:not([disabled]):not([type=hidden])'\n , 'button:not([disabled])', 'select:not([disabled])'\n , 'textarea:not([disabled])', 'iframe', 'object', 'embed'\n , '*[tabindex]', '*[contenteditable]'\n ]\n\n , escapeClose: true\n , content: null\n , closeTimeout: 500\n };\n\n Object.keys(opts || {})\n .forEach((key) => {\n /* istanbul ignore else */\n if (opts[key] !== undefined) {\n this.opts[key] = opts[key];\n }\n });\n\n this.overlay = el;\n this.dialog = el.querySelector(`.${this.opts.dialogClass}`);\n\n if (this.opts.content) {\n this.content(this.opts.content);\n }\n }\n\n open(content) {\n this.content(content);\n\n if (!is(this.opts.beforeOpen, 'function')) {\n return this._doOpen();\n }\n\n this.opts.beforeOpen(() => {\n this._doOpen();\n });\n }\n\n _doOpen() {\n addClass(document.body, this.opts.bodyClass);\n\n removeClass(this.dialog, this.opts.dialogCloseClass);\n addClass(this.dialog, this.opts.dialogOpenClass);\n\n this.overlay.style.display = 'block';\n\n if (this.opts.focus) {\n this.focusOutElement = document.activeElement;\n this.focus();\n }\n\n if (is(this.opts.afterOpen, 'function')) {\n this.opts.afterOpen();\n }\n this.opened = true;\n }\n\n close() {\n if (!is(this.opts.beforeClose, 'function')) {\n return this._doClose();\n }\n\n this.opts.beforeClose(() => {\n this._doClose();\n });\n }\n\n _doClose() {\n removeClass(this.dialog, this.opts.dialogOpenClass);\n addClass(this.dialog, this.opts.dialogCloseClass);\n\n removeClass(document.body, this.opts.bodyClass);\n\n if (this.opts.focus) {\n this.focus(this.focusOutElement);\n }\n\n if (is(this.opts.afterClose, 'function')) {\n this.opts.afterClose();\n }\n\n this.opened = false;\n setTimeout(() => {\n this.overlay.style.display = 'none';\n }, this.opts.closeTimeout);\n }\n\n content(html) {\n if (html === undefined) {\n return this.dialog.innerHTML;\n }\n\n this.dialog.innerHTML = html;\n }\n\n elements(selector, fallback) {\n fallback = fallback || window.navigator.appVersion.indexOf('MSIE 9.0') > -1;\n selector = is(selector, 'array') ? selector.join(',') : selector;\n\n return [].filter.call(\n this.dialog.querySelectorAll(selector)\n , (element) => {\n if (fallback) {\n var style = window.getComputedStyle(element);\n return style.display !== 'none' && style.visibility !== 'hidden';\n }\n\n return element.offsetParent !== null;\n }\n );\n }\n\n focus(el) {\n el = el || this.elements(this.opts.focusElements)[0] || this.dialog.firstChild;\n\n if (el && is(el.focus, 'function')) {\n el.focus();\n }\n }\n\n keydown(ev) {\n if (this.opts.escapeClose && ev.which == 27) {\n this.close();\n }\n\n function stopEvent() {\n ev.preventDefault();\n ev.stopPropagation();\n }\n\n if (this.opened && ev.which == 9 && this.dialog.contains(ev.target)) {\n var elements = this.elements(this.opts.focusElements)\n , first = elements[0]\n , last = elements[elements.length - 1];\n\n if (first == last) {\n stopEvent();\n }\n else if (ev.target == first && ev.shiftKey) {\n stopEvent();\n last.focus();\n }\n else if (ev.target == last && !ev.shiftKey) {\n stopEvent();\n first.focus();\n }\n }\n }\n}\n\nRModal.prototype.version = '@@VERSION@@';\nRModal.version = '@@VERSION@@';\n\nexport default RModal;"]} \ No newline at end of file diff --git a/gulpfile.js b/gulpfile.js index f8f7d9a..5b4c525 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -29,7 +29,7 @@ let bundle = (format) => { /@@VERSION@@/g , require('./package.json').version )); -} +}; gulp.task('lint', () => { return gulp.src('src/*.js') @@ -52,7 +52,8 @@ gulp.task('cjs', () => { })) .pipe(sourcemaps.write('.')) .pipe(gulp.dest('./')); -}) +}); + gulp.task('js', [ 'cjs' ], () => { return bundle('umd') diff --git a/index.js b/index.js index 9b1ddc0..1c82067 100644 --- a/index.js +++ b/index.js @@ -124,12 +124,12 @@ RModal.prototype._doClose = function _doClose () { }, this.opts.closeTimeout); }; -RModal.prototype.content = function content (content) { - if (content === undefined) { +RModal.prototype.content = function content (html) { + if (html === undefined) { return this.dialog.innerHTML; } - this.dialog.innerHTML = content; + this.dialog.innerHTML = html; }; RModal.prototype.elements = function elements (selector, fallback) { @@ -186,9 +186,8 @@ RModal.prototype.keydown = function keydown (ev) { } }; -RModal.prototype.version = '1.0.23'; -RModal.version = '1.0.23'; +RModal.prototype.version = '1.0.24'; +RModal.version = '1.0.24'; module.exports = RModal; - //# sourceMappingURL=index.js.map diff --git a/index.js.map b/index.js.map index 19dc8d4..d539cd8 100644 --- a/index.js.map +++ b/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sources":["rmodal.js"],"sourcesContent":["'use strict';\n\nlet is = (obj, type) => Object.prototype.toString.call(obj).toLowerCase() === `[object ${type}]`;\n\nlet addClass = (el, cls) => {\n let arr = el.className\n .split(/\\s+/)\n .filter((c) => !!c && c == cls);\n\n if (!arr.length) {\n el.className += ` ${cls}`;\n }\n}\n\nlet removeClass = (el, cls) => {\n el.className = el.className\n .split(/\\s+/)\n .filter((c) => !!c && c != cls)\n .join(' ');\n}\n\nclass RModal {\n constructor(el, opts) {\n this.opened = false;\n\n this.opts = {\n bodyClass: 'modal-open'\n , dialogClass: 'modal-dialog'\n , dialogOpenClass: 'bounceInDown'\n , dialogCloseClass: 'bounceOutUp'\n\n , focus: true\n , focusElements: [\n 'a[href]', 'area[href]', 'input:not([disabled]):not([type=hidden])'\n , 'button:not([disabled])', 'select:not([disabled])'\n , 'textarea:not([disabled])', 'iframe', 'object', 'embed'\n , '*[tabindex]', '*[contenteditable]'\n ]\n\n , escapeClose: true\n , content: null\n , closeTimeout: 500\n };\n\n Object.keys(opts || {})\n .forEach((key) => {\n /* istanbul ignore else */\n if (opts[key] !== undefined) {\n this.opts[key] = opts[key];\n }\n });\n\n this.overlay = el;\n this.dialog = el.querySelector(`.${this.opts.dialogClass}`);\n\n if (this.opts.content) {\n this.content(this.opts.content);\n }\n }\n\n open(content) {\n this.content(content);\n\n if (!is(this.opts.beforeOpen, 'function')) {\n return this._doOpen();\n }\n\n this.opts.beforeOpen(() => {\n this._doOpen();\n });\n }\n\n _doOpen() {\n addClass(document.body, this.opts.bodyClass);\n\n removeClass(this.dialog, this.opts.dialogCloseClass);\n addClass(this.dialog, this.opts.dialogOpenClass);\n\n this.overlay.style.display = 'block';\n\n if (this.opts.focus) {\n this.focusOutElement = document.activeElement;\n this.focus();\n }\n\n if (is(this.opts.afterOpen, 'function')) {\n this.opts.afterOpen();\n }\n this.opened = true;\n }\n\n close() {\n if (!is(this.opts.beforeClose, 'function')) {\n return this._doClose();\n }\n\n this.opts.beforeClose(() => {\n this._doClose();\n });\n }\n\n _doClose() {\n removeClass(this.dialog, this.opts.dialogOpenClass);\n addClass(this.dialog, this.opts.dialogCloseClass);\n\n removeClass(document.body, this.opts.bodyClass);\n\n if (this.opts.focus) {\n this.focus(this.focusOutElement);\n }\n\n if (is(this.opts.afterClose, 'function')) {\n this.opts.afterClose();\n }\n\n this.opened = false;\n setTimeout(() => {\n this.overlay.style.display = 'none';\n }, this.opts.closeTimeout);\n }\n\n content(content) {\n if (content === undefined) {\n return this.dialog.innerHTML;\n }\n\n this.dialog.innerHTML = content;\n }\n\n elements(selector, fallback) {\n fallback = fallback || window.navigator.appVersion.indexOf('MSIE 9.0') > -1;\n selector = is(selector, 'array') ? selector.join(',') : selector;\n\n return [].filter.call(\n this.dialog.querySelectorAll(selector)\n , (element) => {\n if (fallback) {\n var style = window.getComputedStyle(element);\n return style.display !== 'none' && style.visibility !== 'hidden';\n }\n\n return element.offsetParent !== null;\n }\n );\n }\n\n focus(el) {\n el = el || this.elements(this.opts.focusElements)[0] || this.dialog.firstChild;\n\n if (el && is(el.focus, 'function')) {\n el.focus();\n }\n }\n\n keydown(ev) {\n if (this.opts.escapeClose && ev.which == 27) {\n this.close();\n }\n\n function stopEvent() {\n ev.preventDefault();\n ev.stopPropagation();\n }\n\n if (this.opened && ev.which == 9 && this.dialog.contains(ev.target)) {\n var elements = this.elements(this.opts.focusElements)\n , first = elements[0]\n , last = elements[elements.length - 1];\n\n if (first == last) {\n stopEvent();\n }\n else if (ev.target == first && ev.shiftKey) {\n stopEvent();\n last.focus();\n }\n else if (ev.target == last && !ev.shiftKey) {\n stopEvent();\n first.focus();\n }\n }\n }\n}\n\nRModal.prototype.version = '@@VERSION@@';\nRModal.version = '@@VERSION@@';\n\nexport default RModal;\n"],"names":["let"],"mappings":"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","sourceRoot":"/source/"} \ No newline at end of file +{"version":3,"file":"index.js","sources":["rmodal.js"],"sourcesContent":["'use strict';\n\nlet is = (obj, type) => Object.prototype.toString.call(obj).toLowerCase() === `[object ${type}]`;\n\nlet addClass = (el, cls) => {\n let arr = el.className\n .split(/\\s+/)\n .filter((c) => !!c && c == cls);\n\n if (!arr.length) {\n el.className += ` ${cls}`;\n }\n};\n\nlet removeClass = (el, cls) => {\n el.className = el.className\n .split(/\\s+/)\n .filter((c) => !!c && c != cls)\n .join(' ');\n};\n\nclass RModal {\n constructor(el, opts) {\n this.opened = false;\n\n this.opts = {\n bodyClass: 'modal-open'\n , dialogClass: 'modal-dialog'\n , dialogOpenClass: 'bounceInDown'\n , dialogCloseClass: 'bounceOutUp'\n\n , focus: true\n , focusElements: [\n 'a[href]', 'area[href]', 'input:not([disabled]):not([type=hidden])'\n , 'button:not([disabled])', 'select:not([disabled])'\n , 'textarea:not([disabled])', 'iframe', 'object', 'embed'\n , '*[tabindex]', '*[contenteditable]'\n ]\n\n , escapeClose: true\n , content: null\n , closeTimeout: 500\n };\n\n Object.keys(opts || {})\n .forEach((key) => {\n /* istanbul ignore else */\n if (opts[key] !== undefined) {\n this.opts[key] = opts[key];\n }\n });\n\n this.overlay = el;\n this.dialog = el.querySelector(`.${this.opts.dialogClass}`);\n\n if (this.opts.content) {\n this.content(this.opts.content);\n }\n }\n\n open(content) {\n this.content(content);\n\n if (!is(this.opts.beforeOpen, 'function')) {\n return this._doOpen();\n }\n\n this.opts.beforeOpen(() => {\n this._doOpen();\n });\n }\n\n _doOpen() {\n addClass(document.body, this.opts.bodyClass);\n\n removeClass(this.dialog, this.opts.dialogCloseClass);\n addClass(this.dialog, this.opts.dialogOpenClass);\n\n this.overlay.style.display = 'block';\n\n if (this.opts.focus) {\n this.focusOutElement = document.activeElement;\n this.focus();\n }\n\n if (is(this.opts.afterOpen, 'function')) {\n this.opts.afterOpen();\n }\n this.opened = true;\n }\n\n close() {\n if (!is(this.opts.beforeClose, 'function')) {\n return this._doClose();\n }\n\n this.opts.beforeClose(() => {\n this._doClose();\n });\n }\n\n _doClose() {\n removeClass(this.dialog, this.opts.dialogOpenClass);\n addClass(this.dialog, this.opts.dialogCloseClass);\n\n removeClass(document.body, this.opts.bodyClass);\n\n if (this.opts.focus) {\n this.focus(this.focusOutElement);\n }\n\n if (is(this.opts.afterClose, 'function')) {\n this.opts.afterClose();\n }\n\n this.opened = false;\n setTimeout(() => {\n this.overlay.style.display = 'none';\n }, this.opts.closeTimeout);\n }\n\n content(html) {\n if (html === undefined) {\n return this.dialog.innerHTML;\n }\n\n this.dialog.innerHTML = html;\n }\n\n elements(selector, fallback) {\n fallback = fallback || window.navigator.appVersion.indexOf('MSIE 9.0') > -1;\n selector = is(selector, 'array') ? selector.join(',') : selector;\n\n return [].filter.call(\n this.dialog.querySelectorAll(selector)\n , (element) => {\n if (fallback) {\n var style = window.getComputedStyle(element);\n return style.display !== 'none' && style.visibility !== 'hidden';\n }\n\n return element.offsetParent !== null;\n }\n );\n }\n\n focus(el) {\n el = el || this.elements(this.opts.focusElements)[0] || this.dialog.firstChild;\n\n if (el && is(el.focus, 'function')) {\n el.focus();\n }\n }\n\n keydown(ev) {\n if (this.opts.escapeClose && ev.which == 27) {\n this.close();\n }\n\n function stopEvent() {\n ev.preventDefault();\n ev.stopPropagation();\n }\n\n if (this.opened && ev.which == 9 && this.dialog.contains(ev.target)) {\n var elements = this.elements(this.opts.focusElements)\n , first = elements[0]\n , last = elements[elements.length - 1];\n\n if (first == last) {\n stopEvent();\n }\n else if (ev.target == first && ev.shiftKey) {\n stopEvent();\n last.focus();\n }\n else if (ev.target == last && !ev.shiftKey) {\n stopEvent();\n first.focus();\n }\n }\n }\n}\n\nRModal.prototype.version = '@@VERSION@@';\nRModal.version = '@@VERSION@@';\n\nexport default RModal;"],"names":["let"],"mappings":"AAEAA,IAAI,EAAE,GAAG,UAAC,GAAG,EAAE,IAAI,EAAE,SAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,MAAK,UAAS,GAAE,IAAI,MAAE,CAAC,GAAA,CAAC;;AAEjGA,IAAI,QAAQ,GAAG,UAAC,EAAE,EAAE,GAAG,EAAE;IACrBA,IAAI,GAAG,GAAG,EAAE,CAAC,SAAS;KACrB,KAAK,CAAC,KAAK,CAAC;KACZ,MAAM,CAAC,UAAC,CAAC,EAAE,SAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,GAAA,CAAC,CAAC;;IAEhC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;QACb,EAAE,CAAC,SAAS,IAAI,GAAE,GAAE,GAAG,CAAG;KAC7B;CACJ,CAAC;;AAEFA,IAAI,WAAW,GAAG,UAAC,EAAE,EAAE,GAAG,EAAE;IACxB,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC,SAAS;KAC1B,KAAK,CAAC,KAAK,CAAC;KACZ,MAAM,CAAC,UAAC,CAAC,EAAE,SAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,GAAA,CAAC;KAC9B,IAAI,CAAC,GAAG,CAAC,CAAC;CACd,CAAC;;AAEF,IAAM,MAAM,GAAC,eACE,CAAC,EAAE,EAAE,IAAI,EAAE;;;IACtB,IAAQ,CAAC,MAAM,GAAG,KAAK,CAAC;;IAExB,IAAQ,CAAC,IAAI,GAAG;QACZ,SAAa,EAAE,YAAY;UACrB,WAAW,EAAE,cAAc;UAC3B,eAAe,EAAE,cAAc;UAC/B,gBAAgB,EAAE,aAAa;;UAE/B,KAAK,EAAE,IAAI;UACX,aAAa,EAAE;YACjB,SAAa,EAAE,YAAY,EAAE,0CAA0C;cACjE,wBAAwB,EAAE,wBAAwB;cAClD,0BAA0B,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO;cACvD,aAAa,EAAE,oBAAoB;SACxC;;UAEC,WAAW,EAAE,IAAI;UACjB,OAAO,EAAE,IAAI;UACb,YAAY,EAAE,GAAG;KACtB,CAAC;;IAEN,MAAU,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;KACtB,OAAO,CAAC,UAAC,GAAG,EAAE;;QAEf,IAAQ,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE;YAC7B,MAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;SAC9B;KACJ,CAAC,CAAC;;IAEP,IAAQ,CAAC,OAAO,GAAG,EAAE,CAAC;IACtB,IAAQ,CAAC,MAAM,GAAG,EAAE,CAAC,aAAa,EAAC,GAAE,IAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAA,EAAG,CAAC;;IAEhE,IAAQ,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;QACvB,IAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACnC;CACJ,CAAA;;AAEL,iBAAI,IAAI,kBAAC,OAAO,EAAE;;;IACd,IAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;;IAE1B,IAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE;QAC3C,OAAW,IAAI,CAAC,OAAO,EAAE,CAAC;KACzB;;IAEL,IAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,YAAG;QACxB,MAAQ,CAAC,OAAO,EAAE,CAAC;KAClB,CAAC,CAAC;CACN,CAAA;;AAEL,iBAAI,OAAO,uBAAG;IACV,QAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;;IAEjD,WAAe,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACzD,QAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;;IAErD,IAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;;IAEzC,IAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;QACrB,IAAQ,CAAC,eAAe,GAAG,QAAQ,CAAC,aAAa,CAAC;QAClD,IAAQ,CAAC,KAAK,EAAE,CAAC;KAChB;;IAEL,IAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE;QACzC,IAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;KACzB;IACL,IAAQ,CAAC,MAAM,GAAG,IAAI,CAAC;CACtB,CAAA;;AAEL,iBAAI,KAAK,qBAAG;;;IACR,IAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE;QAC5C,OAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;KAC1B;;IAEL,IAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAG;QACzB,MAAQ,CAAC,QAAQ,EAAE,CAAC;KACnB,CAAC,CAAC;CACN,CAAA;;AAEL,iBAAI,QAAQ,wBAAG;;;IACX,WAAe,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACxD,QAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;;IAEtD,WAAe,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;;IAEpD,IAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;QACrB,IAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;KACpC;;IAEL,IAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE;QAC1C,IAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;KAC1B;;IAEL,IAAQ,CAAC,MAAM,GAAG,KAAK,CAAC;IACxB,UAAc,CAAC,YAAG;QACd,MAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;KACvC,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;CAC9B,CAAA;;AAEL,iBAAI,OAAO,qBAAC,IAAI,EAAE;IACd,IAAQ,IAAI,KAAK,SAAS,EAAE;QACxB,OAAW,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;KAChC;;IAEL,IAAQ,CAAC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;CAChC,CAAA;;AAEL,iBAAI,QAAQ,sBAAC,QAAQ,EAAE,QAAQ,EAAE;IAC7B,QAAY,GAAG,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IAChF,QAAY,GAAG,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;;IAErE,OAAW,EAAE,CAAC,MAAM,CAAC,IAAI;QACrB,IAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC;UACpC,UAAC,OAAO,EAAE;YACZ,IAAQ,QAAQ,EAAE;gBACd,IAAQ,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBACjD,OAAW,KAAK,CAAC,OAAO,KAAK,MAAM,IAAI,KAAK,CAAC,UAAU,KAAK,QAAQ,CAAC;aACpE;;YAEL,OAAW,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC;SACxC;KACJ,CAAC;CACL,CAAA;;AAEL,iBAAI,KAAK,mBAAC,EAAE,EAAE;IACV,EAAM,GAAG,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;;IAEnF,IAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE;QACpC,EAAM,CAAC,KAAK,EAAE,CAAC;KACd;CACJ,CAAA;;AAEL,iBAAI,OAAO,qBAAC,EAAE,EAAE;IACZ,IAAQ,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,KAAK,IAAI,EAAE,EAAE;QAC7C,IAAQ,CAAC,KAAK,EAAE,CAAC;KAChB;;IAEL,SAAa,SAAS,GAAG;QACrB,EAAM,CAAC,cAAc,EAAE,CAAC;QACxB,EAAM,CAAC,eAAe,EAAE,CAAC;KACxB;;IAEL,IAAQ,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE;QACrE,IAAQ,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;cAC/C,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC;cACnB,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;;QAE/C,IAAQ,KAAK,IAAI,IAAI,EAAE;YACnB,SAAa,EAAE,CAAC;SACf;aACI,IAAI,EAAE,CAAC,MAAM,IAAI,KAAK,IAAI,EAAE,CAAC,QAAQ,EAAE;YAC5C,SAAa,EAAE,CAAC;YAChB,IAAQ,CAAC,KAAK,EAAE,CAAC;SAChB;aACI,IAAI,EAAE,CAAC,MAAM,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE;YAC5C,SAAa,EAAE,CAAC;YAChB,KAAS,CAAC,KAAK,EAAE,CAAC;SACjB;KACJ;CACJ,CAAA;;AAGL,MAAM,CAAC,SAAS,CAAC,OAAO,GAAG,aAAa,CAAC;AACzC,MAAM,CAAC,OAAO,GAAG,aAAa,CAAC,AAE/B;;","preExistingComment":"//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjpudWxsLCJzb3VyY2VzIjpbIi9Vc2Vycy93aXNoL0Rlc2t0b3Avcm1vZGFsLmpzL3NyYy9ybW9kYWwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBzdHJpY3QnO1xuXG5sZXQgaXMgPSAob2JqLCB0eXBlKSA9PiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwob2JqKS50b0xvd2VyQ2FzZSgpID09PSBgW29iamVjdCAke3R5cGV9XWA7XG5cbmxldCBhZGRDbGFzcyA9IChlbCwgY2xzKSA9PiB7XG4gICAgbGV0IGFyciA9IGVsLmNsYXNzTmFtZVxuICAgIC5zcGxpdCgvXFxzKy8pXG4gICAgLmZpbHRlcigoYykgPT4gISFjICYmIGMgPT0gY2xzKTtcblxuICAgIGlmICghYXJyLmxlbmd0aCkge1xuICAgICAgICBlbC5jbGFzc05hbWUgKz0gYCAke2Nsc31gO1xuICAgIH1cbn07XG5cbmxldCByZW1vdmVDbGFzcyA9IChlbCwgY2xzKSA9PiB7XG4gICAgZWwuY2xhc3NOYW1lID0gZWwuY2xhc3NOYW1lXG4gICAgLnNwbGl0KC9cXHMrLylcbiAgICAuZmlsdGVyKChjKSA9PiAhIWMgJiYgYyAhPSBjbHMpXG4gICAgLmpvaW4oJyAnKTtcbn07XG5cbmNsYXNzIFJNb2RhbCB7XG4gICAgY29uc3RydWN0b3IoZWwsIG9wdHMpIHtcbiAgICAgICAgdGhpcy5vcGVuZWQgPSBmYWxzZTtcblxuICAgICAgICB0aGlzLm9wdHMgPSB7XG4gICAgICAgICAgICBib2R5Q2xhc3M6ICdtb2RhbC1vcGVuJ1xuICAgICAgICAgICAgLCBkaWFsb2dDbGFzczogJ21vZGFsLWRpYWxvZydcbiAgICAgICAgICAgICwgZGlhbG9nT3BlbkNsYXNzOiAnYm91bmNlSW5Eb3duJ1xuICAgICAgICAgICAgLCBkaWFsb2dDbG9zZUNsYXNzOiAnYm91bmNlT3V0VXAnXG5cbiAgICAgICAgICAgICwgZm9jdXM6IHRydWVcbiAgICAgICAgICAgICwgZm9jdXNFbGVtZW50czogW1xuICAgICAgICAgICAgICAgICdhW2hyZWZdJywgJ2FyZWFbaHJlZl0nLCAnaW5wdXQ6bm90KFtkaXNhYmxlZF0pOm5vdChbdHlwZT1oaWRkZW5dKSdcbiAgICAgICAgICAgICAgICAsICdidXR0b246bm90KFtkaXNhYmxlZF0pJywgJ3NlbGVjdDpub3QoW2Rpc2FibGVkXSknXG4gICAgICAgICAgICAgICAgLCAndGV4dGFyZWE6bm90KFtkaXNhYmxlZF0pJywgJ2lmcmFtZScsICdvYmplY3QnLCAnZW1iZWQnXG4gICAgICAgICAgICAgICAgLCAnKlt0YWJpbmRleF0nLCAnKltjb250ZW50ZWRpdGFibGVdJ1xuICAgICAgICAgICAgXVxuXG4gICAgICAgICAgICAsIGVzY2FwZUNsb3NlOiB0cnVlXG4gICAgICAgICAgICAsIGNvbnRlbnQ6IG51bGxcbiAgICAgICAgICAgICwgY2xvc2VUaW1lb3V0OiA1MDBcbiAgICAgICAgfTtcblxuICAgICAgICBPYmplY3Qua2V5cyhvcHRzIHx8IHt9KVxuICAgICAgICAuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICAgICAgaWYgKG9wdHNba2V5XSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vcHRzW2tleV0gPSBvcHRzW2tleV07XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMub3ZlcmxheSA9IGVsO1xuICAgICAgICB0aGlzLmRpYWxvZyA9IGVsLnF1ZXJ5U2VsZWN0b3IoYC4ke3RoaXMub3B0cy5kaWFsb2dDbGFzc31gKTtcblxuICAgICAgICBpZiAodGhpcy5vcHRzLmNvbnRlbnQpIHtcbiAgICAgICAgICAgIHRoaXMuY29udGVudCh0aGlzLm9wdHMuY29udGVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvcGVuKGNvbnRlbnQpIHtcbiAgICAgICAgdGhpcy5jb250ZW50KGNvbnRlbnQpO1xuXG4gICAgICAgIGlmICghaXModGhpcy5vcHRzLmJlZm9yZU9wZW4sICdmdW5jdGlvbicpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fZG9PcGVuKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm9wdHMuYmVmb3JlT3BlbigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9kb09wZW4oKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgX2RvT3BlbigpIHtcbiAgICAgICAgYWRkQ2xhc3MoZG9jdW1lbnQuYm9keSwgdGhpcy5vcHRzLmJvZHlDbGFzcyk7XG5cbiAgICAgICAgcmVtb3ZlQ2xhc3ModGhpcy5kaWFsb2csIHRoaXMub3B0cy5kaWFsb2dDbG9zZUNsYXNzKTtcbiAgICAgICAgYWRkQ2xhc3ModGhpcy5kaWFsb2csIHRoaXMub3B0cy5kaWFsb2dPcGVuQ2xhc3MpO1xuXG4gICAgICAgIHRoaXMub3ZlcmxheS5zdHlsZS5kaXNwbGF5ID0gJ2Jsb2NrJztcblxuICAgICAgICBpZiAodGhpcy5vcHRzLmZvY3VzKSB7XG4gICAgICAgICAgICB0aGlzLmZvY3VzT3V0RWxlbWVudCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICB0aGlzLmZvY3VzKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXModGhpcy5vcHRzLmFmdGVyT3BlbiwgJ2Z1bmN0aW9uJykpIHtcbiAgICAgICAgICAgIHRoaXMub3B0cy5hZnRlck9wZW4oKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm9wZW5lZCA9IHRydWU7XG4gICAgfVxuXG4gICAgY2xvc2UoKSB7XG4gICAgICAgIGlmICghaXModGhpcy5vcHRzLmJlZm9yZUNsb3NlLCAnZnVuY3Rpb24nKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2RvQ2xvc2UoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub3B0cy5iZWZvcmVDbG9zZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9kb0Nsb3NlKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIF9kb0Nsb3NlKCkge1xuICAgICAgICByZW1vdmVDbGFzcyh0aGlzLmRpYWxvZywgdGhpcy5vcHRzLmRpYWxvZ09wZW5DbGFzcyk7XG4gICAgICAgIGFkZENsYXNzKHRoaXMuZGlhbG9nLCB0aGlzLm9wdHMuZGlhbG9nQ2xvc2VDbGFzcyk7XG5cbiAgICAgICAgcmVtb3ZlQ2xhc3MoZG9jdW1lbnQuYm9keSwgdGhpcy5vcHRzLmJvZHlDbGFzcyk7XG5cbiAgICAgICAgaWYgKHRoaXMub3B0cy5mb2N1cykge1xuICAgICAgICAgICAgdGhpcy5mb2N1cyh0aGlzLmZvY3VzT3V0RWxlbWVudCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXModGhpcy5vcHRzLmFmdGVyQ2xvc2UsICdmdW5jdGlvbicpKSB7XG4gICAgICAgICAgICB0aGlzLm9wdHMuYWZ0ZXJDbG9zZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5vcGVuZWQgPSBmYWxzZTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm92ZXJsYXkuc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICAgICAgfSwgdGhpcy5vcHRzLmNsb3NlVGltZW91dCk7XG4gICAgfVxuXG4gICAgY29udGVudChodG1sKSB7XG4gICAgICAgIGlmIChodG1sID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmRpYWxvZy5pbm5lckhUTUw7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmRpYWxvZy5pbm5lckhUTUwgPSBodG1sO1xuICAgIH1cblxuICAgIGVsZW1lbnRzKHNlbGVjdG9yLCBmYWxsYmFjaykge1xuICAgICAgICBmYWxsYmFjayA9IGZhbGxiYWNrIHx8IHdpbmRvdy5uYXZpZ2F0b3IuYXBwVmVyc2lvbi5pbmRleE9mKCdNU0lFIDkuMCcpID4gLTE7XG4gICAgICAgIHNlbGVjdG9yID0gaXMoc2VsZWN0b3IsICdhcnJheScpID8gc2VsZWN0b3Iuam9pbignLCcpIDogc2VsZWN0b3I7XG5cbiAgICAgICAgcmV0dXJuIFtdLmZpbHRlci5jYWxsKFxuICAgICAgICAgICAgdGhpcy5kaWFsb2cucXVlcnlTZWxlY3RvckFsbChzZWxlY3RvcilcbiAgICAgICAgICAgICwgKGVsZW1lbnQpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZmFsbGJhY2spIHtcbiAgICAgICAgICAgICAgICAgICAgdmFyIHN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBzdHlsZS5kaXNwbGF5ICE9PSAnbm9uZScgJiYgc3R5bGUudmlzaWJpbGl0eSAhPT0gJ2hpZGRlbic7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGVsZW1lbnQub2Zmc2V0UGFyZW50ICE9PSBudWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGZvY3VzKGVsKSB7XG4gICAgICAgIGVsID0gZWwgfHwgdGhpcy5lbGVtZW50cyh0aGlzLm9wdHMuZm9jdXNFbGVtZW50cylbMF0gfHwgdGhpcy5kaWFsb2cuZmlyc3RDaGlsZDtcblxuICAgICAgICBpZiAoZWwgJiYgaXMoZWwuZm9jdXMsICdmdW5jdGlvbicpKSB7XG4gICAgICAgICAgICBlbC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAga2V5ZG93bihldikge1xuICAgICAgICBpZiAodGhpcy5vcHRzLmVzY2FwZUNsb3NlICYmIGV2LndoaWNoID09IDI3KSB7XG4gICAgICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBzdG9wRXZlbnQoKSB7XG4gICAgICAgICAgICBldi5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgZXYuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5vcGVuZWQgJiYgZXYud2hpY2ggPT0gOSAmJiB0aGlzLmRpYWxvZy5jb250YWlucyhldi50YXJnZXQpKSB7XG4gICAgICAgICAgICB2YXIgZWxlbWVudHMgPSB0aGlzLmVsZW1lbnRzKHRoaXMub3B0cy5mb2N1c0VsZW1lbnRzKVxuICAgICAgICAgICAgICAgICwgZmlyc3QgPSBlbGVtZW50c1swXVxuICAgICAgICAgICAgICAgICwgbGFzdCA9IGVsZW1lbnRzW2VsZW1lbnRzLmxlbmd0aCAtIDFdO1xuXG4gICAgICAgICAgICBpZiAoZmlyc3QgPT0gbGFzdCkge1xuICAgICAgICAgICAgICAgIHN0b3BFdmVudCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoZXYudGFyZ2V0ID09IGZpcnN0ICYmIGV2LnNoaWZ0S2V5KSB7XG4gICAgICAgICAgICAgICAgc3RvcEV2ZW50KCk7XG4gICAgICAgICAgICAgICAgbGFzdC5mb2N1cygpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAoZXYudGFyZ2V0ID09IGxhc3QgJiYgIWV2LnNoaWZ0S2V5KSB7XG4gICAgICAgICAgICAgICAgc3RvcEV2ZW50KCk7XG4gICAgICAgICAgICAgICAgZmlyc3QuZm9jdXMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuUk1vZGFsLnByb3RvdHlwZS52ZXJzaW9uID0gJ0BAVkVSU0lPTkBAJztcblJNb2RhbC52ZXJzaW9uID0gJ0BAVkVSU0lPTkBAJztcblxuZXhwb3J0IGRlZmF1bHQgUk1vZGFsOyJdLCJuYW1lcyI6WyJsZXQiXSwibWFwcGluZ3MiOiJBQUVBQSxJQUFJLEVBQUUsR0FBRyxVQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsU0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLE1BQUssVUFBUyxHQUFFLElBQUksTUFBRSxDQUFDLEdBQUEsQ0FBQzs7QUFFakdBLElBQUksUUFBUSxHQUFHLFVBQUMsRUFBRSxFQUFFLEdBQUcs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"} \ No newline at end of file diff --git a/package.json b/package.json index 15b9945..1a28287 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,10 @@ { "name": "rmodal", - "version": "1.0.23", + "version": "1.0.24", "description": "A simple modal dialog with no external dependencies. IE9+ supported.", "main": "index.js", + "module": "src/rmodal.js", + "jsnext:main": "src/rmodal.js", "scripts": { "test": "./node_modules/.bin/gulp test" }, @@ -26,14 +28,14 @@ }, "homepage": "http://rmodal.js.org/", "devDependencies": { - "buble": "^0.14.0", + "buble": "^0.15.2", "chai": "^3.5.0", - "eslint": "^3.2.0", + "eslint": "^3.13.1", "gulp": "^3.9.1", "gulp-eslint": "^3.0.1", "gulp-rename": "^1.2.2", "gulp-replace": "^0.5.4", - "gulp-sourcemaps": "^1.6.0", + "gulp-sourcemaps": "^2.4.0", "gulp-uglify": "^2.0.0", "istanbul": "^0.4.5", "istanbul-coveralls": "^1.0.3", @@ -42,16 +44,16 @@ "karma-commonjs": "^1.0.0", "karma-coverage": "^1.1.1", "karma-coveralls": "^1.1.2", - "karma-mocha": "^1.2.0", + "karma-mocha": "^1.3.0", "karma-phantomjs-launcher": "^1.0.2", "karma-sinon": "^1.0.5", - "mocha": "^3.1.1", - "phantomjs-prebuilt": "^2.1.13", - "rollup": "^0.36.3", - "rollup-plugin-buble": "^0.14.0", - "rollup-stream": "^1.14.0", - "sinon": "^1.17.6", + "mocha": "^3.2.0", + "phantomjs-prebuilt": "^2.1.14", + "rollup": "^0.41.1", + "rollup-plugin-buble": "^0.15.0", + "rollup-stream": "^1.18.0", + "sinon": "^1.17.7", "vinyl-buffer": "^1.0.0", "vinyl-source-stream": "^1.1.0" } -} +} \ No newline at end of file diff --git a/src/rmodal.js b/src/rmodal.js index 3e0a731..7ec8ba2 100644 --- a/src/rmodal.js +++ b/src/rmodal.js @@ -10,14 +10,14 @@ let addClass = (el, cls) => { if (!arr.length) { el.className += ` ${cls}`; } -} +}; let removeClass = (el, cls) => { el.className = el.className .split(/\s+/) .filter((c) => !!c && c != cls) .join(' '); -} +}; class RModal { constructor(el, opts) { @@ -119,12 +119,12 @@ class RModal { }, this.opts.closeTimeout); } - content(content) { - if (content === undefined) { + content(html) { + if (html === undefined) { return this.dialog.innerHTML; } - this.dialog.innerHTML = content; + this.dialog.innerHTML = html; } elements(selector, fallback) { @@ -185,4 +185,4 @@ class RModal { RModal.prototype.version = '@@VERSION@@'; RModal.version = '@@VERSION@@'; -export default RModal; +export default RModal; \ No newline at end of file