{"version":3,"sources":["loader.min.js"],"names":["EBContext","modules","Loader","options","utils","extendObj","parentElement","loaderClass","loaderType","prependLoader","disableParentElement","independent","loaderIcon","icon","animation","ajaxNav","loader","loaderEl","document","createElement","className","ajaxQueue","getIcon","element","getAttribute","el","cl","classList","setIcon","setAttribute","remove","add","disable","origDisabled","removeAttribute","init","parentContainer","parentContent","loaderWrap","appendChild","enabled","fnLoaderStart","childNodes","length","origVisibility","style","visibility","fnLoaderEnd","removeChild","loaderItem","firstChild","insertBefore","iconEl","querySelector","origIcon"],"mappings":"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","sourcesContent":["EBContext.modules.Loader = function(options){\r\n\tthis.options = EBContext.utils.extendObj(false, {\r\n\t\tparentElement: null,\r\n\t\tloaderClass: 'fas fa-fw fa-spinner fa-spin',\r\n\t\tloaderType: 'overlay',\r\n\t\tprependLoader: false,\r\n\t\tdisableParentElement: true,\r\n\t\tindependent: false,\r\n\t\tloaderIcon: {\r\n\t\t\ticon: 'spinner',\r\n\t\t\tanimation: 'spin'\r\n\t\t}\r\n\t}, options);\r\n\tif(!this.options.parentElement) return EBContext.ajaxNav.options.loader; //pou�ije se v�choz� ajaxNav loader\r\n\t\r\n\tthis.loaderEl = document.createElement('i');\r\n\tthis.loaderEl.className = this.options.loaderClass;\r\n\tthis.ajaxQueue = (this.options.independent ? [] : EBContext.ajaxNav.ajaxQueue);\r\n\t\r\n\tthis.getIcon = element=>{\r\n\t\treturn {\r\n\t\t\ticon: element.getAttribute('data-icon'),\r\n\t\t\telement: element,\r\n\t\t\tanimation: (el=>{\r\n\t\t\t\tfor(const cl of [...el.classList]){\r\n\t\t\t\t\tif(cl==='fa-spin') return 'spin';\r\n\t\t\t\t\tif(cl==='fa-pulse') return 'pulse';\r\n\t\t\t\t\treturn null;\r\n\t\t\t\t}\r\n\t\t\t})(element)\r\n\t\t};\r\n\t};\r\n\tthis.setIcon = (element, icon)=>{\r\n\t\telement.setAttribute('data-icon', icon.icon);\r\n\t\telement.classList.remove('fa-spin','fa-pulse');\r\n\t\tif(icon.animation) element.classList.add('fa-'+icon.animation);\r\n\t};\r\n\t\r\n\tthis.disableParentElement = function(disable){\r\n\t\tif(disable){\r\n\t\t\tthis.origDisabled = this.options.parentElement.getAttribute('disabled');\r\n\t\t\tthis.options.parentElement.setAttribute('disabled', 'disabled');\r\n\t\t} else{\r\n\t\t\tif(this.origDisabled === null){\r\n\t\t\t\tthis.options.parentElement.removeAttribute('disabled');\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\tthis.options.parentElement.setAttribute('disabled', this.origDisabled);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\tthis.init = function(options){\r\n\t\tEBContext.utils.extendObj(false, this.options, options);\r\n\t\tif(this.options.loaderType === 'overlay'){\r\n\t\t\tthis.parentContainer = document.createElement('div');\r\n\t\t\tthis.parentContainer.className = 'loader_parentContainer';\r\n\t\t\tthis.parentContent = document.createElement('div');\r\n\t\t\tthis.parentContent.className = 'loader_parentContent';\r\n\t\t\tthis.loaderWrap = document.createElement('div');\r\n\t\t\tthis.loaderWrap.className = 'loader_loaderWrap';\r\n\t\t\tthis.loaderWrap.appendChild(this.loaderEl);\r\n\t\t\t\r\n\t\t\tthis.enabled = true;\r\n\t\t\tthis.fnLoaderStart = function () {\r\n\t\t\t\twhile(this.options.parentElement.childNodes.length>0){\r\n\t\t\t\t\tthis.parentContent.appendChild(this.options.parentElement.childNodes[0]);\r\n\t\t\t\t}\t\t\t\t\r\n\t\t\t\tthis.parentContainer.appendChild(this.parentContent);\r\n\t\t\t\tthis.options.parentElement.appendChild(this.parentContainer);\r\n\t\t\t\tthis.origVisibility = this.parentContent.style.visibility;\r\n\t\t\t\tif(this.options.disableParentElement){\r\n\t\t\t\t\tthis.disableParentElement(true);\r\n\t\t\t\t}\r\n\t\t\t\tthis.parentContent.style.visibility = 'hidden';\r\n\t\t\t\tthis.parentContainer.appendChild(this.loaderWrap);\r\n\t\t\t};\r\n\t\t\tthis.fnLoaderEnd = function () {\r\n\t\t\t\tif(this.options.disableParentElement){\r\n\t\t\t\t\tthis.disableParentElement(false);\r\n\t\t\t\t}\r\n\t\t\t\twhile(this.parentContent.childNodes.length>0){\r\n\t\t\t\t\tthis.options.parentElement.appendChild(this.parentContent.childNodes[0]);\r\n\t\t\t\t}\r\n\t\t\t\tif(this.loaderWrap.parentElement) this.loaderWrap.parentElement.removeChild(this.loaderWrap);\r\n\t\t\t\tif(this.parentContainer.parentElement) this.parentContainer.parentElement.removeChild(this.parentContainer);\r\n\t\t\t\t// this.parentContent.style.visibility = this.origVisibility;\r\n\t\t\t};\r\n\t\t} else if(this.options.loaderType === 'append'){\r\n\t\t\tthis.loaderItem = document.createElement('div');\r\n\t\t\tthis.loaderItem.className = 'loader_loaderItem';\r\n\t\t\tthis.loaderItem.appendChild(this.loaderEl);\r\n\t\t\tthis.enabled = true;\r\n\t\t\tthis.fnLoaderStart = function () {\r\n\t\t\t\tif(this.options.disableParentElement){\r\n\t\t\t\t\tthis.disableParentElement(true);\r\n\t\t\t\t}\r\n\t\t\t\tif(this.options.prependLoader && this.options.parentElement.firstChild){\r\n\t\t\t\t\tthis.options.parentElement.insertBefore(\r\n\t\t\t\t\t\tthis.loaderItem, \r\n\t\t\t\t\t\tthis.options.parentElement.firstChild\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t\telse{\r\n\t\t\t\t\tthis.options.parentElement.appendChild(this.loaderItem);\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t\tthis.fnLoaderEnd = function () {\r\n\t\t\t\tif(this.options.disableParentElement){\r\n\t\t\t\t\tthis.disableParentElement(false);\r\n\t\t\t\t}\r\n\t\t\t\tif(this.loaderEl.parentElement) this.loaderEl.parentElement.removeChild(this.loaderItem);\r\n\t\t\t};\r\n\t\t} else if(this.options.loaderType === 'replace'){\r\n\t\t\tthis.enabled = true;\r\n\t\t\tthis.fnLoaderStart = function () {\r\n\t\t\t\tif(this.options.disableParentElement){\r\n\t\t\t\t\tthis.disableParentElement(true);\r\n\t\t\t\t}\r\n\t\t\t\tlet iconEl = this.options.parentElement.querySelector('svg[data-icon]');\r\n\t\t\t\tthis.origIcon = this.getIcon(iconEl);\r\n\t\t\t\tthis.setIcon(iconEl, this.options.loaderIcon);\r\n\t\t\t};\r\n\t\t\tthis.fnLoaderEnd = function () {\r\n\t\t\t\tif(this.options.disableParentElement){\r\n\t\t\t\t\tthis.disableParentElement(false);\r\n\t\t\t\t}\r\n\t\t\t\tlet iconEl = this.options.parentElement.querySelector('svg[data-icon]');\r\n\t\t\t\tthis.setIcon(iconEl, this.origIcon);\r\n\t\t\t}\r\n\t\t} else{\r\n\t\t\t// this.parentIcon = this.options.parentElement.querySelector('svg[data-icon]');\r\n\t\t}\r\n\t};\r\n\tthis.init();\r\n\treturn this;\r\n};\r\n/* \r\n\tP��klad pou�it�:\r\n\tvar loaderObj = new EBContext.modules.Loader({\r\n\t\tparentElement: btn,\r\n\t\tloaderClass: 'fas fa-spinner fa-pulse',\r\n\t\tloaderType: 'overlay'\r\n\t});\r\n\tEBContext.ajaxNav.ajaxCall('/?ajax=1&action=BasketAddItems&ebPageItemUpdate=*basketBox,headerBasketProducts', null, 'goods=' + encodeURIComponent(goods), { loader: loaderObj });\r\n*/"]}