{"version":3,"sources":["webpack://[name]/./src/js/components/LoaderComponent.js"],"names":["LoaderComponent","_BaseComponent","element","_this","_classCallCheck","_callSuper","createFullScreenLoader","attachLoader","_inherits","_createClass","key","value","loaderContainer","document","createElement","id","classList","add","spinner","appendChild","body","selectors","eventType","_this2","querySelectorAll","forEach","link","addEventListener","showLoader","setTimeout","hideLoader","loader","querySelector","remove","getElementById","BaseComponent"],"mappings":"keAAuD,IAElCA,EAAe,SAAAC,GAClC,SAAAD,EAAYE,GAAS,IAAAC,EAIa,OAJbC,IAAA,KAAAJ,IACnBG,EAAAE,EAAA,KAAAL,EAAA,CAAME,KAEDI,yBACLH,EAAKI,aAAa,IAAK,SAASJ,EACjC,OAAAK,IAAAR,EAAAC,GAAAQ,IAAAT,EAAA,EAAAU,IAAA,yBAAAC,MAED,WACE,IAAMC,EAAkBC,SAASC,cAAc,OAC/CF,EAAgBG,GAAK,qBACrBH,EAAgBI,UAAUC,IAAI,SAAU,UAExC,IAAMC,EAAUL,SAASC,cAAc,OACvCI,EAAQF,UAAUC,IAAI,oBAEtBL,EAAgBO,YAAYD,GAE5BL,SAASO,KAAKD,YAAYP,KAC3B,CAAAF,IAAA,eAAAC,MAED,SAAaU,EAAWC,GAAW,IAAAC,EAAA,KACjCV,SAASW,iBAAiBH,GAAWI,SAAQ,SAAAC,GAC3CA,EAAKC,iBAAiBL,GAAW,WAC/BC,EAAKK,aACLC,YAAW,WACTN,EAAKO,eACJ,aAGR,CAAApB,IAAA,aAAAC,MAED,WACE,IAAMoB,EAASlB,SAASmB,cAAc,uBAClCD,GACFA,EAAOf,UAAUiB,OAAO,YAE3B,CAAAvB,IAAA,aAAAC,MAED,WACE,IAAMoB,EAASlB,SAASqB,eAAe,sBACnCH,GACFA,EAAOf,UAAUC,IAAI,cA1CS,C,OAASkB","file":"js/component-LoaderComponent-js.chunks.js","sourcesContent":["import BaseComponent from '../abstracts/BaseComponent';\n\nexport default class LoaderComponent extends BaseComponent {\n constructor(element) {\n super(element);\n\n this.createFullScreenLoader();\n this.attachLoader('a', 'click');\n }\n\n createFullScreenLoader() {\n const loaderContainer = document.createElement('div');\n loaderContainer.id = 'full-screen-loader';\n loaderContainer.classList.add('loader', 'hidden');\n\n const spinner = document.createElement('div');\n spinner.classList.add('mu-admin-spinner');\n\n loaderContainer.appendChild(spinner);\n\n document.body.appendChild(loaderContainer);\n }\n\n attachLoader(selectors, eventType) {\n document.querySelectorAll(selectors).forEach(link => {\n link.addEventListener(eventType, () => {\n this.showLoader();\n setTimeout(() => {\n this.hideLoader(); // hide loader after 3 seconds\n }, 3000);\n });\n });\n }\n\n showLoader() {\n const loader = document.querySelector('#full-screen-loader');\n if (loader) {\n loader.classList.remove('hidden');\n }\n }\n\n hideLoader() {\n const loader = document.getElementById('full-screen-loader');\n if (loader) {\n loader.classList.add('hidden');\n }\n }\n}\n"],"sourceRoot":""}