{"version":3,"names":["PF","ui","Lock","constructor","this","locks","showLoader","bind","onShowLoaderCallback","onHideLoaderCallback","getInstance","undefined","_instance","prototype","acquireLock","lockId","Math","random","document","body","style","cursor","setTimeout","releaseLock","keys","length","hideLoader","onShowLoader","callback","onHideLoader","divJSPFUILockBackground","getElementById","createElement","id","className","getElementsByTagName","appendChild","divJSPFUILockBox","table","tr","td","divLoader","$","height","getDocumentHeight","apply","children","childNodes","i","removeChild"],"sources":["pf.ui.js.lock.js"],"sourcesContent":["PF.ui.Lock = class {\n\tconstructor() {\r\n\t\tthis.locks = {};\r\n\t\t\r\n\t\tthis.showLoader = this.showLoader.bind(this);\r\n\t\t\r\n\t\tthis.onShowLoaderCallback = null;\r\n\t\tthis.onHideLoaderCallback = null;\r\n\t}\n}\n\r\nPF.ui.Lock.getInstance = function() {\r\n\tif (PF.ui.Lock._instance == undefined) {\r\n\t\tPF.ui.Lock._instance = new PF.ui.Lock();\r\n\t}\r\n\treturn PF.ui.Lock._instance;\r\n}\r\n\r\n\r\nPF.ui.Lock.prototype.acquireLock = function(lockId) {\r\n\tif (!lockId) {\r\n\t\tlockId = 'tmp_' + Math.random();\r\n\t}\r\n\t\r\n\tif (lockId in this.locks) {\r\n\t\tthis.locks[lockId]++;\r\n\t}else {\r\n\t\tthis.locks[lockId] = 1;\r\n\t\t\r\n\t\tdocument.body.style.cursor = \"wait\";\r\n\t\t\r\n\t\tsetTimeout(this.showLoader, 300);\r\n\t}\r\n\t\r\n\treturn lockId;\r\n}\r\n\r\nPF.ui.Lock.prototype.releaseLock = function(lockId) {\r\n\tif (lockId in this.locks) {\r\n\t\tthis.locks[lockId]--;\r\n\t\tif (this.locks[lockId] == 0) {\r\n\t\t\tdelete this.locks[lockId];\r\n\t\t}\r\n\t}\r\n\tif (PF.keys(this.locks).length == 0) {\r\n\t\tdocument.body.style.cursor = \"default\";\r\n\t\t\r\n\t\tthis.hideLoader();\r\n\t}\r\n}\r\n\r\nPF.ui.Lock.prototype.onShowLoader = function(callback) {\r\n\tthis.onShowLoaderCallback = callback;\r\n}\r\n\r\nPF.ui.Lock.prototype.onHideLoader = function(callback) {\r\n\tthis.onHideLoaderCallback = callback;\r\n}\r\n\r\nPF.ui.Lock.prototype.showLoader = function() {\r\n\tif (!PF.keys(this.locks).length) {\r\n\t\treturn;\r\n\t}\r\n\t\r\n\tif (this.onShowLoaderCallback === null) {\r\n\t\tvar divJSPFUILockBackground = document.getElementById('divJSPFUILockBackground');\r\n\t\tif (!divJSPFUILockBackground) {\r\n\t\t\tdivJSPFUILockBackground = document.createElement('div');\r\n\t\t\tdivJSPFUILockBackground.id = 'divJSPFUILockBackground';\r\n\t\t\tdivJSPFUILockBackground.className = \"JSPFUILockBackground\";\r\n\t\t\tdocument.getElementsByTagName('body')[0].appendChild(divJSPFUILockBackground);\r\n\t\t}\r\n\t\t\r\n\t\tif (!document.getElementById('divJSPFUILockBox')) {\r\n\t\t\tvar divJSPFUILockBox = document.createElement('div');\r\n\t\t\tdivJSPFUILockBox.id = 'divJSPFUILockBox';\r\n\t\t\tdivJSPFUILockBox.className = \"JSPFUILockBox\";\r\n\t\t\t\r\n\t\t\tvar table = document.createElement('table');\r\n\t\t\tvar tr = document.createElement('tr');\r\n\t\t\tvar td = document.createElement('td');\r\n\t\t\t\r\n\t\t\tvar divLoader = document.createElement('div');\r\n\t\t\tdivLoader.className = \"loader\";\r\n\t\t\t\r\n\t\t\ttable.appendChild(tr);\r\n\t\t\ttr.appendChild(td);\r\n\t\t\ttd.appendChild(divLoader);\r\n\t\t\tdivJSPFUILockBox.appendChild(table);\r\n\t\t\t\r\n\t\t\tdocument.getElementsByTagName('body')[0].appendChild(divJSPFUILockBox);\r\n\t\t}\r\n\t\t\r\n\t\t$(divJSPFUILockBackground).height(PF.ui.getDocumentHeight());\r\n\t}else {\r\n\t\tthis.onShowLoaderCallback.apply(this);\r\n\t}\r\n}\r\n\r\nPF.ui.Lock.prototype.hideLoader = function() {\r\n\tif (this.onHideLoaderCallback === null) {\r\n\t\tvar body = document.getElementsByTagName('body')[0];\r\n\t\tvar children = body.childNodes;\r\n\t\t\r\n\t\tfor (var i = children.length - 1; i >= 0; i--) {\r\n\t\t\tif (children[i].className == 'JSPFUILockBackground' || children[i].className == 'JSPFUILockBox') {\r\n\t\t\t\tbody.removeChild(children[i]);\r\n\t\t\t}\r\n\t\t}\r\n\t}else {\r\n\t\tthis.onHideLoaderCallback.apply(this);\r\n\t}\r\n}\r\n\r\n"],"mappings":"AAAAA,GAAGC,GAAGC,KAAO,MACZC,cACCC,KAAKC,MAAQ,CAAC,EAEdD,KAAKE,WAAaF,KAAKE,WAAWC,KAAKH,MAEvCA,KAAKI,qBAAuB,KAC5BJ,KAAKK,qBAAuB,IAC7B,GAGDT,GAAGC,GAAGC,KAAKQ,YAAc,WAIxB,OAH4BC,MAAxBX,GAAGC,GAAGC,KAAKU,YACdZ,GAAGC,GAAGC,KAAKU,UAAY,IAAIZ,GAAGC,GAAGC,MAE3BF,GAAGC,GAAGC,KAAKU,SACnB,EAGAZ,GAAGC,GAAGC,KAAKW,UAAUC,YAAc,SAASC,GAe3C,OAdKA,IACJA,EAAS,OAASC,KAAKC,UAGpBF,KAAUX,KAAKC,MAClBD,KAAKC,MAAMU,MAEXX,KAAKC,MAAMU,GAAU,EAErBG,SAASC,KAAKC,MAAMC,OAAS,OAE7BC,WAAWlB,KAAKE,WAAY,MAGtBS,CACR,EAEAf,GAAGC,GAAGC,KAAKW,UAAUU,YAAc,SAASR,GACvCA,KAAUX,KAAKC,QAClBD,KAAKC,MAAMU,KACe,GAAtBX,KAAKC,MAAMU,WACPX,KAAKC,MAAMU,IAGc,GAA9Bf,GAAGwB,KAAKpB,KAAKC,OAAOoB,SACvBP,SAASC,KAAKC,MAAMC,OAAS,UAE7BjB,KAAKsB,aAEP,EAEA1B,GAAGC,GAAGC,KAAKW,UAAUc,aAAe,SAASC,GAC5CxB,KAAKI,qBAAuBoB,CAC7B,EAEA5B,GAAGC,GAAGC,KAAKW,UAAUgB,aAAe,SAASD,GAC5CxB,KAAKK,qBAAuBmB,CAC7B,EAEA5B,GAAGC,GAAGC,KAAKW,UAAUP,WAAa,WACjC,GAAKN,GAAGwB,KAAKpB,KAAKC,OAAOoB,OAIzB,GAAkC,OAA9BrB,KAAKI,qBAA+B,CACvC,IAAIsB,EAA0BZ,SAASa,eAAe,2BAQtD,GAPKD,KACJA,EAA0BZ,SAASc,cAAc,QACzBC,GAAK,0BAC7BH,EAAwBI,UAAY,uBACpChB,SAASiB,qBAAqB,QAAQ,GAAGC,YAAYN,KAGjDZ,SAASa,eAAe,oBAAqB,CACjD,IAAIM,EAAmBnB,SAASc,cAAc,OAC9CK,EAAiBJ,GAAK,mBACtBI,EAAiBH,UAAY,gBAE7B,IAAII,EAAQpB,SAASc,cAAc,SAC/BO,EAAKrB,SAASc,cAAc,MAC5BQ,EAAKtB,SAASc,cAAc,MAE5BS,EAAYvB,SAASc,cAAc,OACvCS,EAAUP,UAAY,SAEtBI,EAAMF,YAAYG,GAClBA,EAAGH,YAAYI,GACfA,EAAGJ,YAAYK,GACfJ,EAAiBD,YAAYE,GAE7BpB,SAASiB,qBAAqB,QAAQ,GAAGC,YAAYC,EACtD,CAEAK,EAAEZ,GAAyBa,OAAO3C,GAAGC,GAAG2C,oBACzC,MACCxC,KAAKI,qBAAqBqC,MAAMzC,KAElC,EAEAJ,GAAGC,GAAGC,KAAKW,UAAUa,WAAa,WACjC,GAAkC,OAA9BtB,KAAKK,qBAIR,IAHA,IAAIU,EAAOD,SAASiB,qBAAqB,QAAQ,GAC7CW,EAAW3B,EAAK4B,WAEXC,EAAIF,EAASrB,OAAS,EAAGuB,GAAK,EAAGA,IACZ,wBAAzBF,EAASE,GAAGd,WAAgE,iBAAzBY,EAASE,GAAGd,WAClEf,EAAK8B,YAAYH,EAASE,SAI5B5C,KAAKK,qBAAqBoC,MAAMzC,KAElC"}