{"version":3,"sources":["webpack:///./node_modules/@kouts/vue-modal/dist/vue-modal.es.js"],"names":["url","i","toString","toUpperCase","nonSecure","size","id","Math","random","_typeof","obj","Symbol","iterator","constructor","prototype","config","selector","concat","setSelector","isBrowser","window","undefined","document","TargetContainer","extend","abstract","name","props","data","vm","updatedNodes","nodes","render","h","this","length","text","tag","destroyed","el","$el","parentNode","removeChild","Portal","disabled","type","Boolean","prepend","String","default","$scopedSlots","created","getTargetEl","insertTargetEl","updated","_this","$nextTick","slotFn","container","beforeDestroy","unmount","watch","immediate","handler","mount","methods","querySelector","parent","child","createElement","substring","appendChild","targetEl","firstChild","insertBefore","propsData","$destroy","install","_Vue","options","arguments","component","defaultSelector","Vue","use","TYPE_CSS","Object","Array","FOCUSABLE_ELEMENTS","animatingZIndex","script","components","model","prop","event","title","baseZindex","Number","bgClass","wrapperClass","modalClass","modalStyle","inClass","assign","outClass","bgInClass","bgOutClass","appendTo","live","enableClose","basedOn","zIndex","show","elToFocus","mounted","_uid","$watch","newVal","this$1","close","$emit","clickOutside","e","target","$refs","keydown","which","all","slice","call","querySelectorAll","filter","offsetWidth","offsetHeight","getClientRects","shiftKey","preventDefault","focus","getAllVisibleWrappers","w","display","getTopZindex","reduce","acc","curr","parseInt","style","handleFocus","wrapper","autofocus","focusable","beforeOpen","activeElement","lastZindex","opening","afterOpen","beforeClose","closing","afterClose","requestAnimationFrame","contains","body","normalizeComponent","template","scopeId","isFunctionalTemplate","moduleIdentifier","shadowMode","createInjector","createInjectorSSR","createInjectorShadow","hook","staticRenderFns","_compiled","functional","_scopeId","context","$vnode","ssrContext","__VUE_SSR_CONTEXT__","_registeredComponents","add","_ssrRegister","$root","$options","shadowRoot","originalRender","existing","beforeCreate","__vue_script__","__vue_render__","_vm","_h","$createElement","_c","_self","attrs","directives","rawName","value","expression","staticClass","class","_v","on","enter","leave","ref","cursor","tabindex","role","click","$event","_t","_s","_e","__vue_staticRenderFns__","_withStripped","__vue_inject_styles__","__vue_scope_id__","__vue_module_identifier__","__vue_is_functional_template__","__vue_component__"],"mappings":"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","file":"js/chunk-vendors~0c11e706.3e8b7d71.js","sourcesContent":["import Vue from 'vue';\n\n// This alphabet uses a-z A-Z 0-9 _- symbols.\n// Symbols are generated for smaller size.\n// -_zyxwvutsrqponmlkjihgfedcba9876543210ZYXWVUTSRQPONMLKJIHGFEDCBA\nvar url = '-_';\n// Loop from 36 to 0 (from z to a and 9 to 0 in Base36).\nvar i = 36;\nwhile (i--) {\n // 36 is radix. Number.prototype.toString(36) returns number\n // in Base36 representation. Base36 is like hex, but it uses 0–9 and a-z.\n url += i.toString(36);\n}\n// Loop from 36 to 10 (from Z to A in Base36).\ni = 36;\nwhile (i-- - 10) {\n url += i.toString(36).toUpperCase();\n}\n\n/**\n * Generate URL-friendly unique ID. This method use non-secure predictable\n * random generator with bigger collision probability.\n *\n * @param {number} [size=21] The number of symbols in ID.\n *\n * @return {string} Random string.\n *\n * @example\n * const nanoid = require('nanoid/non-secure')\n * model.id = nanoid() //=> \"Uakgb_J5m9g-0JDMbcJqL\"\n *\n * @name nonSecure\n * @function\n */\nvar nonSecure = function (size) {\n var id = '';\n i = size || 21;\n // Compact alternative for `for (var i = 0; i < size; i++)`\n while (i--) {\n // `| 0` is compact and faster alternative for `Math.floor()`\n id += url[Math.random() * 64 | 0];\n }\n return id\n};\n\nfunction _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nvar config = {\n selector: \"vue-portal-target-\".concat(nonSecure())\n};\nvar setSelector = function setSelector(selector) {\n return config.selector = selector;\n};\nvar isBrowser = typeof window !== 'undefined' && (typeof document === \"undefined\" ? \"undefined\" : _typeof(document)) !== undefined;\n\nvar TargetContainer = Vue.extend({\n // as an abstract component, it doesn't appear in\n // the $parent chain of components.\n // which means the next parent of any component rendered inside of this oen\n // will be the parent from which is was portal'd\n abstract: true,\n name: 'PortalOutlet',\n props: ['nodes', 'tag'],\n data: function data(vm) {\n return {\n updatedNodes: vm.nodes\n };\n },\n render: function render(h) {\n var nodes = this.updatedNodes && this.updatedNodes();\n if (!nodes) { return h(); }\n return nodes.length < 2 && !nodes[0].text ? nodes : h(this.tag || 'DIV', nodes);\n },\n destroyed: function destroyed() {\n var el = this.$el;\n el.parentNode.removeChild(el);\n }\n});\n\nvar Portal = Vue.extend({\n name: 'VueSimplePortal',\n props: {\n disabled: {\n type: Boolean\n },\n prepend: {\n type: Boolean\n },\n selector: {\n type: String,\n default: function _default() {\n return \"#\".concat(config.selector);\n }\n },\n tag: {\n type: String,\n default: 'DIV'\n }\n },\n render: function render(h) {\n if (this.disabled) {\n var nodes = this.$scopedSlots && this.$scopedSlots.default();\n if (!nodes) { return h(); }\n return nodes.length < 2 && !nodes[0].text ? nodes : h(this.tag, nodes);\n }\n\n return h();\n },\n created: function created() {\n if (!this.getTargetEl()) {\n this.insertTargetEl();\n }\n },\n updated: function updated() {\n var _this = this;\n\n // We only update the target container component\n // if the scoped slot function is a fresh one\n // The new slot syntax (since Vue 2.6) can cache unchanged slot functions\n // and we want to respect that here.\n this.$nextTick(function () {\n if (!_this.disabled && _this.slotFn !== _this.$scopedSlots.default) {\n _this.container.updatedNodes = _this.$scopedSlots.default;\n }\n\n _this.slotFn = _this.$scopedSlots.default;\n });\n },\n beforeDestroy: function beforeDestroy() {\n this.unmount();\n },\n watch: {\n disabled: {\n immediate: true,\n handler: function handler(disabled) {\n disabled ? this.unmount() : this.$nextTick(this.mount);\n }\n }\n },\n methods: {\n // This returns the element into which the content should be mounted.\n getTargetEl: function getTargetEl() {\n if (!isBrowser) { return; }\n return document.querySelector(this.selector);\n },\n insertTargetEl: function insertTargetEl() {\n if (!isBrowser) { return; }\n var parent = document.querySelector('body');\n var child = document.createElement(this.tag);\n child.id = this.selector.substring(1);\n parent.appendChild(child);\n },\n mount: function mount() {\n var targetEl = this.getTargetEl();\n var el = document.createElement('DIV');\n\n if (this.prepend && targetEl.firstChild) {\n targetEl.insertBefore(el, targetEl.firstChild);\n } else {\n targetEl.appendChild(el);\n }\n\n this.container = new TargetContainer({\n el: el,\n parent: this,\n propsData: {\n tag: this.tag,\n nodes: this.$scopedSlots.default\n }\n });\n },\n unmount: function unmount() {\n if (this.container) {\n this.container.$destroy();\n delete this.container;\n }\n }\n }\n});\n\nfunction install(_Vue) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _Vue.component(options.name || 'portal', Portal);\n\n if (options.defaultSelector) {\n setSelector(options.defaultSelector);\n }\n}\n\nif (typeof window !== 'undefined' && window.Vue && window.Vue === Vue) {\n // plugin was inlcuded directly in a browser\n Vue.use(install);\n}\n\n//\n\nvar TYPE_CSS = {\n type: [String, Object, Array],\n default: ''\n};\nvar FOCUSABLE_ELEMENTS =\n 'a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), [tabindex]:not([tabindex=\"-1\"])';\nvar animatingZIndex = 0;\n\nvar script = {\n name: 'VueModal',\n components: {\n Portal: Portal\n },\n model: {\n prop: 'basedOn',\n event: 'close'\n },\n props: {\n title: {\n type: String,\n default: ''\n },\n baseZindex: {\n type: Number,\n default: 1051\n },\n bgClass: TYPE_CSS,\n wrapperClass: TYPE_CSS,\n modalClass: TYPE_CSS,\n modalStyle: TYPE_CSS,\n inClass: Object.assign({}, TYPE_CSS, { default: 'vm-fadeIn' }),\n outClass: Object.assign({}, TYPE_CSS, { default: 'vm-fadeOut' }),\n bgInClass: Object.assign({}, TYPE_CSS, { default: 'vm-fadeIn' }),\n bgOutClass: Object.assign({}, TYPE_CSS, { default: 'vm-fadeOut' }),\n appendTo: {\n type: String,\n default: 'body'\n },\n live: {\n type: Boolean,\n default: false\n },\n enableClose: {\n type: Boolean,\n default: true\n },\n basedOn: {\n type: Boolean,\n default: false\n }\n },\n data: function data() {\n return {\n zIndex: 0,\n id: null,\n show: false,\n mount: false,\n elToFocus: null\n }\n },\n created: function created() {\n if (this.live) {\n this.mount = true;\n }\n },\n mounted: function mounted() {\n this.id = 'vm-' + this._uid;\n this.$watch(\n 'basedOn',\n function (newVal) {\n var this$1 = this;\n\n if (newVal) {\n this.mount = true;\n this.$nextTick(function () {\n this$1.show = true;\n });\n } else {\n this.show = false;\n }\n },\n {\n immediate: true\n }\n );\n },\n beforeDestroy: function beforeDestroy() {\n this.elToFocus = null;\n },\n methods: {\n close: function close() {\n if (this.enableClose === true) {\n this.$emit('close', false);\n }\n },\n clickOutside: function clickOutside(e) {\n if (e.target === this.$refs['vm-wrapper']) {\n this.close();\n }\n },\n keydown: function keydown(e) {\n if (e.which === 27) {\n this.close();\n }\n if (e.which === 9) {\n // Get only visible elements\n var all = [].slice.call(this.$refs['vm-wrapper'].querySelectorAll(FOCUSABLE_ELEMENTS)).filter(function (el) {\n return !!(el.offsetWidth || el.offsetHeight || el.getClientRects().length)\n });\n if (e.shiftKey) {\n if (e.target === all[0] || e.target === this.$refs['vm-wrapper']) {\n e.preventDefault();\n all[all.length - 1].focus();\n }\n } else {\n if (e.target === all[all.length - 1]) {\n e.preventDefault();\n all[0].focus();\n }\n }\n }\n },\n getAllVisibleWrappers: function getAllVisibleWrappers() {\n return [].slice.call(document.querySelectorAll('[data-vm-wrapper-id]')).filter(function (w) { return w.display !== 'none'; })\n },\n getTopZindex: function getTopZindex() {\n return this.getAllVisibleWrappers().reduce(function (acc, curr) {\n return parseInt(curr.style.zIndex) > acc ? parseInt(curr.style.zIndex) : acc\n }, 0)\n },\n handleFocus: function handleFocus(wrapper) {\n var autofocus = wrapper.querySelector('[autofocus]');\n if (autofocus) {\n autofocus.focus();\n } else {\n var focusable = wrapper.querySelectorAll(FOCUSABLE_ELEMENTS);\n focusable.length ? focusable[0].focus() : wrapper.focus();\n }\n },\n beforeOpen: function beforeOpen() {\n // console.log('beforeOpen');\n this.elToFocus = document.activeElement;\n var lastZindex = this.getTopZindex();\n if (animatingZIndex) {\n this.zIndex = animatingZIndex + 2;\n } else {\n this.zIndex = lastZindex === 0 ? this.baseZindex : lastZindex + 2;\n }\n animatingZIndex = this.zIndex;\n this.$emit('before-open');\n },\n opening: function opening() {\n // console.log('opening');\n this.$emit('opening');\n },\n afterOpen: function afterOpen() {\n // console.log('afterOpen');\n this.handleFocus(this.$refs['vm-wrapper']);\n this.$emit('after-open');\n },\n beforeClose: function beforeClose() {\n // console.log('beforeClose');\n this.$emit('before-close');\n },\n closing: function closing() {\n // console.log('closing');\n this.$emit('closing');\n },\n afterClose: function afterClose() {\n var this$1 = this;\n\n // console.log('afterClose');\n this.zIndex = 0;\n if (!this.live) {\n this.mount = false;\n }\n this.$nextTick(function () {\n window.requestAnimationFrame(function () {\n var lastZindex = this$1.getTopZindex();\n if (lastZindex > 0) {\n var all = this$1.getAllVisibleWrappers();\n for (var i = 0; i < all.length; i++) {\n var wrapper = all[i];\n if (parseInt(wrapper.style.zIndex) === lastZindex) {\n if (wrapper.contains(this$1.elToFocus)) {\n this$1.elToFocus.focus();\n } else {\n // console.log(wrapper);\n this$1.handleFocus(wrapper);\n }\n break\n }\n }\n } else {\n if (document.body.contains(this$1.elToFocus)) {\n this$1.elToFocus.focus();\n }\n }\n animatingZIndex = 0;\n this$1.$emit('after-close');\n });\n });\n }\n }\n};\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\r\n if (typeof shadowMode !== 'boolean') {\r\n createInjectorSSR = createInjector;\r\n createInjector = shadowMode;\r\n shadowMode = false;\r\n }\r\n // Vue.extend constructor export interop.\r\n var options = typeof script === 'function' ? script.options : script;\r\n // render functions\r\n if (template && template.render) {\r\n options.render = template.render;\r\n options.staticRenderFns = template.staticRenderFns;\r\n options._compiled = true;\r\n // functional template\r\n if (isFunctionalTemplate) {\r\n options.functional = true;\r\n }\r\n }\r\n // scopedId\r\n if (scopeId) {\r\n options._scopeId = scopeId;\r\n }\r\n var hook;\r\n if (moduleIdentifier) {\r\n // server build\r\n hook = function (context) {\r\n // 2.3 injection\r\n context =\r\n context || // cached call\r\n (this.$vnode && this.$vnode.ssrContext) || // stateful\r\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional\r\n // 2.2 with runInNewContext: true\r\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\r\n context = __VUE_SSR_CONTEXT__;\r\n }\r\n // inject component styles\r\n if (style) {\r\n style.call(this, createInjectorSSR(context));\r\n }\r\n // register component module identifier for async chunk inference\r\n if (context && context._registeredComponents) {\r\n context._registeredComponents.add(moduleIdentifier);\r\n }\r\n };\r\n // used by ssr in case component is cached and beforeCreate\r\n // never gets called\r\n options._ssrRegister = hook;\r\n }\r\n else if (style) {\r\n hook = shadowMode\r\n ? function (context) {\r\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\r\n }\r\n : function (context) {\r\n style.call(this, createInjector(context));\r\n };\r\n }\r\n if (hook) {\r\n if (options.functional) {\r\n // register for functional component in vue file\r\n var originalRender = options.render;\r\n options.render = function renderWithStyleInjection(h, context) {\r\n hook.call(context);\r\n return originalRender(h, context);\r\n };\r\n }\r\n else {\r\n // inject component registration as beforeCreate hook\r\n var existing = options.beforeCreate;\r\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\r\n }\r\n }\r\n return script;\r\n}\n\n/* script */\nvar __vue_script__ = script;\n/* template */\nvar __vue_render__ = function() {\n var _vm = this;\n var _h = _vm.$createElement;\n var _c = _vm._self._c || _h;\n return _vm.mount\n ? _c(\n \"div\",\n [\n _c(\n \"portal\",\n { attrs: { selector: _vm.appendTo } },\n [\n _c(\n \"transition\",\n {\n attrs: {\n name: \"vm-backdrop-transition\",\n \"enter-active-class\": _vm.bgInClass,\n \"leave-active-class\": _vm.bgOutClass\n }\n },\n [\n _c(\"div\", {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.show,\n expression: \"show\"\n }\n ],\n staticClass: \"vm-backdrop\",\n class: _vm.bgClass,\n style: { \"z-index\": _vm.zIndex - 1 },\n attrs: { \"data-vm-backdrop-id\": _vm.id }\n })\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"transition\",\n {\n attrs: {\n name: \"vm-transition\",\n \"enter-active-class\": _vm.inClass,\n \"leave-active-class\": _vm.outClass\n },\n on: {\n \"before-enter\": _vm.beforeOpen,\n enter: _vm.opening,\n \"after-enter\": _vm.afterOpen,\n \"before-leave\": _vm.beforeClose,\n leave: _vm.closing,\n \"after-leave\": _vm.afterClose\n }\n },\n [\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.show,\n expression: \"show\"\n }\n ],\n ref: \"vm-wrapper\",\n staticClass: \"vm-wrapper\",\n class: _vm.wrapperClass,\n style: {\n \"z-index\": _vm.zIndex,\n cursor: _vm.enableClose ? \"pointer\" : \"default\"\n },\n attrs: {\n \"data-vm-wrapper-id\": _vm.id,\n tabindex: \"-1\",\n role: \"dialog\",\n \"aria-label\": _vm.title,\n \"aria-modal\": \"true\"\n },\n on: {\n click: function($event) {\n return _vm.clickOutside($event)\n },\n keydown: function($event) {\n return _vm.keydown($event)\n }\n }\n },\n [\n _c(\n \"div\",\n {\n ref: \"vm\",\n staticClass: \"vm\",\n class: _vm.modalClass,\n style: _vm.modalStyle,\n attrs: { \"data-vm-id\": _vm.id }\n },\n [\n _vm._t(\"titlebar\", [\n _c(\"div\", { staticClass: \"vm-titlebar\" }, [\n _c(\"h3\", { staticClass: \"vm-title\" }, [\n _vm._v(\n \"\\n \" +\n _vm._s(_vm.title) +\n \"\\n \"\n )\n ]),\n _vm._v(\" \"),\n _vm.enableClose\n ? _c(\"button\", {\n staticClass: \"vm-btn-close\",\n attrs: { type: \"button\" },\n on: {\n click: function($event) {\n $event.preventDefault();\n return _vm.close($event)\n }\n }\n })\n : _vm._e()\n ])\n ]),\n _vm._v(\" \"),\n _vm._t(\"content\", [\n _c(\n \"div\",\n { staticClass: \"vm-content\" },\n [_vm._t(\"default\")],\n 2\n )\n ])\n ],\n 2\n )\n ]\n )\n ]\n )\n ],\n 1\n )\n ],\n 1\n )\n : _vm._e()\n};\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n\n /* style */\n var __vue_inject_styles__ = undefined;\n /* scoped */\n var __vue_scope_id__ = undefined;\n /* module identifier */\n var __vue_module_identifier__ = undefined;\n /* functional template */\n var __vue_is_functional_template__ = false;\n /* style inject */\n \n /* style inject SSR */\n \n /* style inject shadow dom */\n \n\n \n var __vue_component__ = /*#__PURE__*/normalizeComponent(\n { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },\n __vue_inject_styles__,\n __vue_script__,\n __vue_scope_id__,\n __vue_is_functional_template__,\n __vue_module_identifier__,\n false,\n undefined,\n undefined,\n undefined\n );\n\nexport default __vue_component__;\n//# sourceMappingURL=vue-modal.es.js.map\n"],"sourceRoot":""}