{"version":3,"sources":["colorHelper.js","custom.js","processingOverlay.js"],"names":["getColors","colorCount","color1","color2","color3","color4","style","getComputedStyle","document","body","theme","colorArray","primary","getPropertyValue","secondary","dark","light","push","length","pop","gradstop","stops","inputFormat","includeHTML","$","each","current","this","parent","file","data","title","icon","hasClass","get","done","c","filename","split","d","substr","lastIndexOf","sib","after","siblings","last","find","text","children","append","replaceWith","header","first","newicon","attr","html","prepend","handleNav","on","height","outerHeight","css","removeAttr","delay","nheight","currentPath","window","location","pathname","tabletState","addClass","e","outerWidth","toggleClass","localStorage","setItem","getItem","desktopState","removeClass","handleDatePickers","selector","datepicker","uiLibrary","showOnFocus","iconsLibrary","format","icons","rightIcon","handleSimpleDataTable","DataTable","handleSimpleDataTableWithState","stateSave","handleFilePickers","fileName","val","next","setCookie","name","value","expiracy","exdate","Date","c_value","setTime","getTime","escape","toUTCString","cookie","getCookie","x","y","ARRcookies","i","indexOf","replace","decodeURI","unescape","handleDownloadDialog","click","processingOverlay","show","setTimeout","checkDownloadCookie","downloadTimeout","hide","saveTabNavigation","pagekey","activeTab","hash","firstTab","tab","preventDefault","tab_name","getAttribute","history","pushState","anchor","resetTabNavigation","undefined","handleJqueryDataTable","props","tableKey","jquerySettings","tableId","columns","ready","filterSettings","filterSetting","filterKey","inputType","key","sessionStorage","dataList","change","defaultDataLoad","j","p","str","charAt","toLowerCase","slice","render","type","row","columnOverrides","overrideFilter","filter","index","element","target","override","visible","searchable","orderable","actionColumn","Query","fn","dataTable","moment","to","locale","utc","local","isDataTable","destroy","empty","onFilterSearch","Object","assign","serverSide","ajax","obj","dataLoad","ajaxSettings","ClipboardJS","tooltip","zeroPad","num","places","String","padStart","dateHelper","GetDateFormatted","month","date","getMonth","getFullYear","getDate","GetDateFormattedHtml","GetRelativeDateFormattedHtml","root","constructDialog","$dialog","settings","remove","nonceAttr","nonce","el","parseHTML","message","options","extend","headerText","headerSize","headerClass","dialogSize","messageStyle","contentElement","contentClass","onHide","onShow","$headerTag","$contentTag","margin","off","call","modal","cb","newMessage","jQuery"],"mappings":"AAQA,SAAAA,UAAAC,EAAAC,EAAAC,EAAAC,EAAAC,GACA,IAAAC,EAAAC,iBAAAC,SAAAC,IAAA,EACAC,EAAA,GAMAC,GALAD,EAAAE,QAAAN,EAAAO,iBAAA,WAAA,EACAH,EAAAI,UAAAR,EAAAO,iBAAA,aAAA,EACAH,EAAAK,KAAAT,EAAAO,iBAAA,QAAA,EACAH,EAAAM,MAAAV,EAAAO,iBAAA,SAAA,EAEA,IAEA,GAAA,MAAAX,GAAA,IAAAA,EACA,OAAAA,GACA,IAAA,UACAS,EAAAM,KAAAP,EAAAE,OAAA,EACA,MACA,IAAA,YACAD,EAAAM,KAAAP,EAAAI,SAAA,EACA,MACA,IAAA,OACAH,EAAAM,KAAAP,EAAAK,IAAA,EACA,MACA,IAAA,QACAJ,EAAAM,KAAAP,EAAAM,KAAA,EACA,MACA,QACAL,EAAAM,KAAAP,EAAAE,OAAA,CAEA,CAGA,GAAA,MAAAT,GAAA,IAAAA,EACA,OAAAA,GACA,IAAA,UACAQ,EAAAM,KAAAP,EAAAE,OAAA,EACA,MACA,IAAA,YACAD,EAAAM,KAAAP,EAAAI,SAAA,EACA,MACA,IAAA,OACAH,EAAAM,KAAAP,EAAAK,IAAA,EACA,MACA,IAAA,QACAJ,EAAAM,KAAAP,EAAAM,KAAA,EACA,MACA,QACAL,EAAAM,KAAAP,EAAAK,IAAA,CAEA,CAGA,GAAA,MAAAX,GAAA,IAAAA,EACA,OAAAA,GACA,IAAA,UACAO,EAAAM,KAAAP,EAAAE,OAAA,EACA,MACA,IAAA,YACAD,EAAAM,KAAAP,EAAAI,SAAA,EACA,MACA,IAAA,OACAH,EAAAM,KAAAP,EAAAK,IAAA,EACA,MACA,IAAA,QACAJ,EAAAM,KAAAP,EAAAM,KAAA,EACA,MACA,QACAL,EAAAM,KAAAP,EAAAE,OAAA,CAEA,CAGA,GAAA,MAAAP,GAAA,IAAAA,EACA,OAAAA,GACA,IAAA,UACAM,EAAAM,KAAAP,EAAAE,OAAA,EACA,MACA,IAAA,YACAD,EAAAM,KAAAP,EAAAI,SAAA,EACA,MACA,IAAA,OACAH,EAAAM,KAAAP,EAAAK,IAAA,EACA,MACA,IAAA,QACAJ,EAAAM,KAAAP,EAAAM,KAAA,EACA,MACA,QACAL,EAAAM,KAAAP,EAAAE,OAAA,CAEA,CAIA,KAAAX,EAAAU,EAAAO,QACAP,EAAAQ,IAAA,EAGA,OAAA,GAAAlB,EACAU,EAAA,GAEAS,SAAA,CACAC,MAAApB,EACAqB,YAAA,MACAX,WAAAA,CACA,CAAA,CAEA,CC1GA,SAAAY,cACAC,EAAA,qBAAA,EACAC,KAAA,WACA,IAAAC,EAAAF,EAAAG,IAAA,EACAC,EAAAF,EAAAE,OAAA,EACAC,EAAAH,EAAAI,KAAA,cAAA,EACAC,EAAAL,EAAAI,KAAA,YAAA,EACAE,EAAAN,EAAAI,KAAA,WAAA,EACAF,EAAAK,SAAA,aAAA,EACAT,EAAAU,IAAAL,CAAA,EAAAM,KAAA,SAAAL,GACA,IAAAM,EAAAN,EACAO,EAAAR,EAAAS,MAAA,GAAA,EAAAnB,IAAA,EACAoB,EAAAF,EAAAG,OAAA,EAAAH,EAAAI,YAAA,GAAA,CAAA,EAGAC,GADAhB,EAAAiB,MADA,0DAAAJ,EAAA,yFAAAA,EAAA,gDACA,gBAAAA,EAAA,0DAAAA,EAAA,iCAAAA,EAAA,6BAAA,EACAb,EAAAkB,SAAA,EAAAC,KAAA,GACAH,EAAAI,KAAA,MAAA,EAAAC,KAAAX,CAAA,EACAM,EAAAM,SAAA,EAAAH,KAAA,EAAAI,OAAA,2EAAAV,EAAA,wCAAA,EACAb,EAAAwB,YAAApB,CAAA,CACA,CAAA,EACAJ,EAAAI,KAAA,WAAA,EACAN,EAAAU,IAAAL,CAAA,EAAAM,KAAA,SAAAL,GACA,IAAAY,EAAAhB,EAAAkB,SAAA,EAAAC,KAAA,EACAnB,EAAAwB,YAAApB,CAAA,EAEAqB,EADAT,EAAAE,SAAA,EAAAQ,MAAA,EACAN,KAAA,IAAA,EACAO,EAAAF,EAAAL,KAAA,GAAA,EAAAQ,KAAA,QAAA,2BAAAtB,CAAA,EACAmB,EAAAI,KAAAxB,CAAA,EAAAyB,QAAAH,CAAA,CACA,CAAA,EAEA7B,EAAAU,IAAAL,CAAA,EAAAM,KAAA,SAAAL,GACAJ,EAAAwB,YAAApB,CAAA,CACA,CAAA,CAEA,CAAA,CACA,CAEA,SAAA2B,YAEAjC,EAAA,aAAA,EAAAkC,GAAA,oBAAA,WACA,IAAAC,EAAAnC,EAAA,UAAA,EAAAoC,YAAA,EACApC,EAAA,MAAA,EAAAqC,IAAA,aAAAF,CAAA,CACA,CAAA,EACAnC,EAAA,aAAA,EAAAkC,GAAA,qBAAA,WACAlC,EAAA,MAAA,EAAAsC,WAAA,OAAA,EAAAC,MAAA,GAAA,EACA,IAAAC,EAAAxC,EAAA,UAAA,EAAAoC,YAAA,EACApC,EAAA,MAAA,EAAAqC,IAAA,aAAAG,CAAA,CACA,CAAA,EAGA,IAAAC,EAAAC,OAAAC,SAAAC,SAwBAC,GAvBA7C,EAAA,UAAA,EACAsB,KAAA,uBAAAmB,EAAA,IAAA,EACArC,OAAA,EAAA0C,SAAA,QAAA,EACA1C,OAAA,EAAA0C,SAAA,MAAA,EACA1B,SAAA,EAAAU,KAAA,gBAAA,MAAA,EACA1B,OAAA,EAAA0C,SAAA,QAAA,EAGA9C,EAAA,aAAA,EAAAkC,GAAA,QAAA,SAAAa,GACA/C,EAAA0C,MAAA,EAAAM,WAAA,EACA,KACAhD,EAAA,UAAA,EAAAiD,YAAA,gBAAA,EACAC,aAAAC,QAAA,wBAAAnD,EAAA,UAAA,EAAAS,SAAA,gBAAA,CAAA,IAEAT,EAAA,UAAA,EAAAiD,YAAA,kBAAA,EACAC,aAAAC,QAAA,yBAAAnD,EAAA,UAAA,EAAAS,SAAA,kBAAA,CAAA,EAEA,CAAA,EACAT,EAAA,iBAAA,EAAAkC,GAAA,QAAA,WACAlC,EAAA,UAAA,EAAAiD,YAAA,gBAAA,CACA,CAAA,EAGAC,aAAAE,QAAA,uBAAA,GACAC,EAAAH,aAAAE,QAAA,wBAAA,EAGA,OAAAP,GAGA,SAAAA,EAKA7C,EAAA,UAAA,EAAA8C,SAAA,gBAAA,EAFA9C,EAAA,UAAA,EAAAsD,YAAA,gBAAA,EAOA,OAAAD,GAKA,SAAAA,EAMArD,EAAA,UAAA,EAAA8C,SAAA,kBAAA,EAFA9C,EAAA,UAAA,EAAAsD,YAAA,kBAAA,CAKA,CAEA,SAAAC,kBAAAC,GACAxD,EAAAwD,CAAA,EAAAvD,KAAA,WACAD,EAAAG,IAAA,EAAAsD,WAAA,CACAC,UAAA,aACAC,YAAA,CAAA,EACAC,aAAA,cACAC,OAAA,aACAC,MAAA,CACAC,UAAA,qCACA,CACA,CAAA,CACA,CAAA,CACA,CAEA,SAAAC,sBAAAR,GACAxD,EAAAwD,CAAA,EAAAS,UAAA,CACA,CAEA,SAAAC,+BAAAV,GACAxD,EAAAwD,CAAA,EAAAS,UAAA,CAAAE,UAAA,CAAA,CAAA,CAAA,CACA,CAEA,SAAAC,kBAAAZ,GACAxD,EAAAwD,CAAA,EAAAtB,GAAA,SAAA,WAEA,IAAAmC,EAAArE,EAAAG,IAAA,EAAAmE,IAAA,EAEAtE,EAAAG,IAAA,EAAAoE,KAAA,oBAAA,EAAAxC,KAAAsC,CAAA,CACA,CAAA,CACA,CAEA,SAAAG,UAAAC,EAAAC,EAAAC,GACA,IAAAC,EAAA,IAAAC,KAEAC,GADAF,EAAAG,QAAAH,EAAAI,QAAA,EAAA,IAAAL,CAAA,EACAM,OAAAP,CAAA,GAAA,MAAAC,EAAA,GAAA,aAAAC,EAAAM,YAAA,IACAlG,SAAAmG,OAAAV,EAAA,IAAAK,EAAA,UACA,CAEA,SAAAM,UAAAX,GAEA,IADA,IAAAY,EAAAC,EAAAC,EAAAvG,SAAAmG,OAAArE,MAAA,GAAA,EACA0E,EAAA,EAAAA,EAAAD,EAAA7F,OAAA8F,CAAA,GAIA,GAHAH,EAAAE,EAAAC,GAAAxE,OAAA,EAAAuE,EAAAC,GAAAC,QAAA,GAAA,CAAA,EACAH,EAAAC,EAAAC,GAAAxE,OAAAuE,EAAAC,GAAAC,QAAA,GAAA,EAAA,CAAA,GACAJ,EAAAA,EAAAK,QAAA,aAAA,EAAA,IACAjB,EACA,OAAAa,GAAAK,UAAAC,SAAAN,EAAAI,QAAA,MAAA,GAAA,CAAA,CAAA,CAGA,CAEA,SAAAG,qBAAArC,GACAxD,EAAAwD,CAAA,EAAAsC,MAAA,WACAC,kBAAAC,KAAA,EACAxB,UAAA,kBAAA,EAAA,GAAA,EACAyB,WAAAC,oBAAA,GAAA,CACA,CAAA,CACA,CAGA,IAAAC,gBACA,SAAAD,sBACA,GAAAd,UAAA,iBAAA,GACAZ,UAAA,kBAAA,QAAA,GAAA,EACAuB,kBAAAK,KAAA,GAEAD,gBAAAF,WAAAC,oBAAA,GAAA,CAEA,CAKA,SAAAG,kBAAAC,GACAtG,EAAA,WACA,IAAAuG,EAAArD,aAAAE,QAAAkD,CAAA,GACAC,GAAAvG,EAAA,WAAAuG,EAAA,IAAA,EAAA7G,OACAM,EAAA,WAAAuG,EAAA,IAAA,EAEA5D,SAAA6D,MAAAxG,EAAA,WAAA2C,SAAA6D,KAAA,IAAA,EAAA9G,OACAM,EAAA,WAAA2C,SAAA6D,KAAA,IAAA,GAGAC,EAAAzG,EAAA,mBAAA,EAAA8B,KAAA,MAAA,EAEAa,SAAA6D,KAAAC,EAEAvD,aAAAC,QAAAmD,EAAAG,CAAA,EACAzG,EAAA,WAAAyG,EAAA,IAAA,IAXAC,IAAA,MAAA,CAaA,CAAA,EAEA1G,EAAA,MAAA,EAAAkC,GAAA,QAAA,uBAAA,SAAAa,GACAA,EAAA4D,eAAA,EACAC,EAAAzG,KAAA0G,aAAA,MAAA,EAUA,OATAC,QAAAC,UACAD,QAAAC,UAAA,KAAA,KAAAH,CAAA,EAGAjE,SAAA6D,KAAAI,EAEA1D,aAAAC,QAAAmD,EAAAM,CAAA,EAEA5G,EAAAG,IAAA,EAAAuG,IAAA,MAAA,EACA,CAAA,CACA,CAAA,EAEA1G,EAAA0C,MAAA,EAAAR,GAAA,WAAA,WACA,IAAA8E,EAAArE,SAAA6D,MAAAxG,EAAA,sBAAA,EAAA4B,MAAA,EAAAE,KAAA,MAAA,EACA9B,EAAA,WAAAgH,EAAA,IAAA,EAAAN,IAAA,MAAA,CACA,CAAA,CACA,CAGA,SAAAO,mBAAAX,GACApD,aAAAC,QAAAmD,EAAAY,KAAAA,CAAA,CACA,CAyBA,SAAAC,sBAAAC,GACA,GAAA,CAAAA,EAAAC,SACA,KAAA,uBAGA,GAAAD,CAAAA,EAAAE,eACA,KAAA,6BACA,IAIAC,EAJA,GAAAH,EAAAE,eAAAE,QAoKA,OAhKAD,EAAA,IAAAH,EAAAC,SAEArH,EAAAhB,QAAA,EACAyI,MAAA,WACA,GAAAL,EAAAM,gBAAA,EAAAN,EAAAM,eAAAhI,OACA,IAAA,IAAA8F,EAAA,EAAAA,EAAA4B,EAAAM,eAAAhI,OAAA8F,CAAA,GAAA,CACA,IAAAmC,EAAAP,EAAAM,eAAAlC,GAEA,GAAA,CAAAmC,EAAAC,UACA,KAAA,0CAGA,WAAAD,EAAAE,WA4IAC,EA3IAH,EAAAC,UA4IAtH,EAAAA,KAAAA,GAAAA,EAAAyH,eAAA3E,QAAAgE,EAAAC,SAAAS,CAAA,IACAxH,EAAAZ,SACAsI,EAAA1H,EAAAQ,MAAA,GAAA,EACAd,EAAA,IAAA8H,CAAA,EAAAxD,IAAA0D,CAAA,EAAAC,OAAA,KAXAH,EAlIAH,EAAAC,UAmIAtH,EAAAA,KAAAA,GAAAA,EAAAyH,eAAA3E,QAAAgE,EAAAC,SAAAS,CAAA,IACAxH,EAAAZ,QACAM,EAAA,IAAA8H,CAAA,EAAAxD,IAAAhE,CAAA,GAlIAN,EAAA,IAAA2H,EAAAC,SAAA,EAAAK,OAwHA,SAAAH,GACA,OAAA,WACA,IAAApD,EAAA1E,EAAA,IAAA8H,CAAA,EAAAxD,IAAA,EACAyD,eAAA5E,QAAAiE,EAAAC,SAAAS,EAAApD,CAAA,CACA,CACA,EA7HAiD,EAAAC,SAAA,CAAA,EACAD,EAAAO,iBACAP,EAAAO,gBAAA,CAEA,CAGA,IAwHA,IAOAJ,EACAxH,EAhIA6H,EAAA,EAAAA,EAAAf,EAAAE,eAAAE,QAAA9H,OAAAyI,CAAA,GAAA,CACA,IAAAC,GA8CAC,EA9CAjB,EAAAE,eAAAE,QAAAW,GAAA7H,MA+CAgI,OAAA,CAAA,EAAAC,YAAA,EAAAF,EAAAG,MAAA,CAAA,EA9CApB,EAAAE,eAAAE,QAAAW,GAAAM,OAyCA,SAAAL,GACA,OAAA,SAAA9H,EAAAoI,EAAAC,GAAA,OAAAA,EAAAP,EAAA,CACA,EA3CAA,CAAA,EAEAhB,EAAAwB,iBAGA,GAFAC,EAAAzB,EAAAwB,gBAAAE,OA8CA,SAAAC,GACA,OAAA,SAAAC,GACA,OAAAA,EAAAC,SAAAF,CACA,CACA,EAlDAZ,CAAA,CAAA,GAEAzI,UACAwJ,EAAAL,EAAA,IACAvI,OACA8G,EAAAE,eAAAE,QAAAW,GAAA7H,KAAA4I,EAAA5I,MAGA4I,EAAA3I,QACA6G,EAAAE,eAAAE,QAAAW,GAAA5H,MAAA2I,EAAA3I,OAGA2I,EAAAC,UACA/B,EAAAE,eAAAE,QAAAW,GAAAgB,QAAAD,EAAAC,SAGAD,EAAAE,aACAhC,EAAAE,eAAAE,QAAAW,GAAAiB,WAAAF,EAAAE,YAGAF,EAAAT,SACArB,EAAAE,eAAAE,QAAAW,GAAAM,OAAAS,EAAAT,QAGAS,EAAAG,aACAjC,EAAAE,eAAAE,QAAAW,GAAAkB,UAAAH,EAAAG,UAIA,CAEAC,cACAlC,EAAAE,eAAAE,QAAA/H,KAAA6J,YAAA,EAGAC,EAAA,CAgBA,CAAA,EAEAvJ,EAAAwJ,GAAAC,UAAAhB,OAAAiB,OAAA,SAAAC,EAAAC,GACA,OAAA,SAAA7I,EAAA2H,EAAAC,GACA,OAAA5H,EAGA2B,OAAAgH,OAAAG,IAAA9I,CAAA,EAIA+I,MAAA,EAAAjG,OAAA,SAAA6E,GAAA,SAAAA,EAAA,IAAAiB,CAAA,EANA,SAAAjB,GAAA,SAAAA,EAAA,EAAA3H,CAOA,CACA,EAkEAwI,EAnKA,KAAA,qCAmGA,SAAAA,IACAvJ,EAAAwJ,GAAAC,UAAAM,YAAAxC,CAAA,IACAvH,EAAAuH,CAAA,EAAAtD,UAAA,EAAA+F,QAAA,EACAhK,EAAAuH,CAAA,EAAA0C,MAAA,GAGA7C,EAAA8C,gBACA9C,EAAA8C,eAAA,EAGAlK,EAAAuH,CAAA,EACAtD,UAAAkG,OAAAC,OACA,GACA,CACAC,WAAA,CAAA,EACAlG,UAAA,CAAA,EACAmG,KAQA,WACA,IAAAC,EAAA,CAAA7B,KAAA,MAAA,EAEAtB,EAAAoD,WACAD,EAAAjK,KAAA8G,EAAAoD,SAAA,GAGApD,EAAAqD,eACAF,EAAAJ,OAAAC,OACA,GACAG,EACAnD,EAAAqD,YAAA,GAGA,OAAAF,CACA,EAvBA,CACA,EACAnD,EAAAE,cAAA,CACA,EAGAtH,EAAAuH,EAAA,WAAA,EAAAjE,YAAA,QAAA,EAAAA,YAAA,qBAAA,CAkBA,CAyBA,CAzaAtD,EAAA,WACA,IAAA0K,YAAA,OAAA,EACA1K,EAAA,yBAAA,EAAA2K,QAAA,CACA,CAAA,EAyaA,IAAAC,QAAA,SAAAC,EAAAC,GAAA,OAAAC,OAAAF,CAAA,EAAAG,SAAAF,EAAA,GAAA,CAAA,EAMAG,WAAA,CACAC,iBAAA,SAAA5K,GACA,IAKA6K,EALA,OAAA7K,GACAA,EAAAZ,QAAA,KACAY,GAAAA,EAAA,IAAAoF,QAAA,KAAA,GAAA,GAGAyF,GADAC,EAAA,IAAAvG,KAAAvE,CAAA,GACA+K,SAAA,EAAA,EACAD,EAAAE,YAAA,EAAA,IAAAV,QAAAO,EAAA,CAAA,EAAA,IAAAP,QAAAQ,EAAAG,QAAA,EAAA,CAAA,GAGA,IAEA,EACAC,qBAAA,SAAAlL,GACA,OAAAA,GACAA,EAAAZ,QAAA,KACAY,GAAAA,EAAA,IAAAoF,QAAA,KAAA,GAAA,GAMA,WAJA0F,EAAA,IAAAvG,KAAAvE,CAAA,GACA+K,SAAA,EAAA,EACA,IAAAD,EAAAG,QAAA,EAAA,IAAAH,EAAAE,YAAA,GAEA,WAEA,8BAEA,EACAG,6BAAA,SAAAnL,GACA,OAAAA,GACAA,EAAAZ,QAAA,KACAY,GAAAA,EAAA,IAAAoF,QAAA,KAAA,GAAA,GAMA,8BAJA0F,EAAA,IAAAvG,KAAAvE,CAAA,GACA+K,SAAA,EAAA,EACA,IAAAD,EAAAG,QAAA,EAAA,IAAAH,EAAAE,YAAA,GAEA,0BAEA,8BAEA,CACA,EC5dA,CAAA,SAAAI,GACA,aAQAA,EAAA3F,kBAAA2F,EAAA3F,mBAGA,SAAA/F,GACA,aAEA,SAAA2L,EAAAC,EAAAC,GACA,GAAAD,EACAA,EAAAE,OAAA,EAEA,IAAAC,EAAAF,EAAAG,QAAA,KAAA,GAAA,WAAAH,EAAAG,MAAA,IACAC,EAAAjM,EAAAkM,UACA,gLAAAH,EAAA,IACA,qCACA,8BACA,mDAAAA,EAAA,UACA,2BACA,yEAAAA,EAAA,IACA,gDAAAA,EAAA,UACA,SACA,SACA,SACA,SACA,QACA,EACA,OAAA/L,EAAAiM,CAAA,CACA,CAEA,IAAAL,EAAAC,EAEA,MAAA,CA8CA7F,KAAA,SAAAmG,EAAAC,GAEA,GAAA,OAAAA,IAAA,YACAA,EAAA,GAEA,GAAA,OAAAD,IAAA,YACAA,EAAA,cAEAN,EAAA7L,EAAAqM,OAAA,CACAC,WAAA,gBACAC,WAAA,EACAC,YAAA,cACAC,WAAA,IACAC,aAAA,UACAC,eAAA,IACAC,aAAA,UACAC,OAAA,KACAC,OAAA,KACAd,MAAA,IACA,EAAAI,CAAA,EAEA,IAAAW,EAAAC,EAEApB,EAAAD,EAAAC,EAAAC,CAAA,EAGAD,EAAAtK,KAAA,eAAA,EAAAlB,OAAA,EAAA0C,SAAA,SAAA+I,EAAAa,YAAA,EACAd,EAAAtK,KAAA,eAAA,EAAAQ,KAAA,QAAA,cAAA,EAAAgB,SAAA,SAAA+I,EAAAY,UAAA,EACAb,EAAAtK,KAAA,eAAA,EAAAQ,KAAA,QAAA,yDAAA,EACA,GAAA+J,EAAAa,aAAA,CACAd,EAAAtK,KAAA,eAAA,EAAAwB,SAAA,gBAAA+I,EAAAa,YAAA,EACAd,EAAAtK,KAAA,eAAA,EAAAwB,SAAA,MAAA+I,EAAAa,YAAA,CACA,CAGAK,EAAA/M,EAAA,KAAA6L,EAAAU,WAAA,KAAA,EACAQ,EAAA1K,IAAA,CAAA4K,OAAA,CAAA,CAAA,EACA,GAAApB,EAAAW,YACAO,EAAAjK,SAAA+I,EAAAW,WAAA,EAIAQ,EAAAhN,EAAA,IAAA6L,EAAAc,eAAA,KAAA,EACA,GAAAd,EAAAe,aACAI,EAAAlK,SAAA+I,EAAAe,YAAA,EAIA,GAAAf,EAAAS,aAAA,MAAA,CACAU,EAAAjL,KAAAoK,CAAA,EACAP,EAAAtK,KAAA,aAAA,EAAAU,QAAAgL,CAAA,CACA,MACA,GAAAnB,EAAAS,WAAA,CACAS,EAAAhL,KAAA8J,EAAAS,UAAA,EACAV,EAAAtK,KAAA,eAAA,EAAAS,KAAAgL,CAAA,EAAA/G,KAAA,EAEAgH,EAAAjL,KAAAoK,CAAA,EACAP,EAAAtK,KAAA,aAAA,EAAAU,QAAAgL,CAAA,CACA,KACA,CACAD,EAAAhL,KAAAoK,CAAA,EACAP,EAAAtK,KAAA,eAAA,EAAAS,KAAAgL,CAAA,EAAA/G,KAAA,CACA,CAGA,GAAA,OAAA6F,EAAAgB,SAAA,WACAjB,EAAAsB,IAAA,iBAAA,EAAAhL,GAAA,kBAAA,WACA2J,EAAAgB,OAAAM,KAAAvB,CAAA,CACA,CAAA,EAEA,GAAA,OAAAC,EAAAiB,SAAA,WACAlB,EAAAsB,IAAA,gBAAA,EAAAhL,GAAA,iBAAA,WACA2J,EAAAiB,OAAAK,KAAAvB,CAAA,CACA,CAAA,EAGAA,EAAAwB,MAAA,EAGAxB,EAAA1J,GAAA,iBAAA,WACA0J,EAAAtL,KAAA,QAAA,IAAA,CACA,CAAA,CACA,EAQA8F,KAAA,SAAAiH,GACA,GAAA,OAAAzB,IAAA,YACA,GAAAA,EAAAtL,KAAA,OAAA,IAAA,KAAA,CACAsL,EAAAwB,MAAA,MAAA,EACA,GAAAC,EACAA,EAAAzB,CAAA,CAEA,MAEAA,EAAA1J,GAAA,iBAAA,WACA0J,EAAAwB,MAAA,MAAA,EACA,GAAAC,EACAA,EAAAzB,CAAA,CAEA,CAAA,CAGA,EAOAO,QAAA,SAAAmB,GACA,GAAA,OAAA1B,IAAA,YACA,GAAA,OAAA0B,IAAA,YACA,OAAA1B,EAAAtK,KAAA,kBAAAuK,EAAAU,UAAA,EAAAxK,KAAAuL,CAAA,OAGA,OAAA1B,EAAAtK,KAAA,kBAAAuK,EAAAU,UAAA,EAAAxK,KAAA,CAGA,CACA,CAEA,EA1MA2J,EAAA6B,MAAA,CAGA,EAAApN,IAuMA","file":"scripts.min.js","sourcesContent":["/**\r\n * Get color array.\r\n * @param {number} colorCount - Number of resulting colors.\r\n * @param {string} color1 - First color option\r\n * @param {string} color2 - Second color option\r\n * @param {string} color3 - Third color option\r\n * @param {string} color4 - Fourth color option\r\n */\r\nfunction getColors(colorCount, color1, color2, color3, color4) {\r\n var style = getComputedStyle(document.body);\r\n var theme = {};\r\n theme.primary = style.getPropertyValue('--primary');\r\n theme.secondary = style.getPropertyValue('--secondary');\r\n theme.dark = style.getPropertyValue('--dark');\r\n theme.light = style.getPropertyValue('--light');\r\n \r\n var colorArray = [];\r\n\r\n if (color1 != null && color1 != '') {\r\n switch (color1) {\r\n case 'primary':\r\n colorArray.push(theme.primary);\r\n break;\r\n case 'secondary':\r\n colorArray.push(theme.secondary);\r\n break;\r\n case 'dark':\r\n colorArray.push(theme.dark);\r\n break;\r\n case 'light':\r\n colorArray.push(theme.light);\r\n break;\r\n default:\r\n colorArray.push(theme.primary);\r\n break;\r\n }\r\n }\r\n\r\n if (color2 != null && color2 != '') {\r\n switch (color2) {\r\n case 'primary':\r\n colorArray.push(theme.primary);\r\n break;\r\n case 'secondary':\r\n colorArray.push(theme.secondary);\r\n break;\r\n case 'dark':\r\n colorArray.push(theme.dark);\r\n break;\r\n case 'light':\r\n colorArray.push(theme.light);\r\n break;\r\n default:\r\n colorArray.push(theme.dark);\r\n break;\r\n }\r\n }\r\n\r\n if (color3 != null && color3 != '') {\r\n switch (color3) {\r\n case 'primary':\r\n colorArray.push(theme.primary);\r\n break;\r\n case 'secondary':\r\n colorArray.push(theme.secondary);\r\n break;\r\n case 'dark':\r\n colorArray.push(theme.dark);\r\n break;\r\n case 'light':\r\n colorArray.push(theme.light);\r\n break;\r\n default:\r\n colorArray.push(theme.primary);\r\n break;\r\n }\r\n }\r\n\r\n if (color4 != null && color4 != '') {\r\n switch (color4) {\r\n case 'primary':\r\n colorArray.push(theme.primary);\r\n break;\r\n case 'secondary':\r\n colorArray.push(theme.secondary);\r\n break;\r\n case 'dark':\r\n colorArray.push(theme.dark);\r\n break;\r\n case 'light':\r\n colorArray.push(theme.light);\r\n break;\r\n default:\r\n colorArray.push(theme.primary);\r\n break;\r\n }\r\n }\r\n\r\n // Ensure the length of the colorArray is not greater than colorCount\r\n while (colorArray.length > colorCount) {\r\n colorArray.pop();\r\n }\r\n\r\n if (colorCount == 1) {\r\n return colorArray[0];\r\n } else {\r\n return gradstop({\r\n stops: colorCount,\r\n inputFormat: 'hex',\r\n colorArray: colorArray\r\n });\r\n }\r\n}\r\n","$(function() {\r\n new ClipboardJS('.clip');\r\n $('[data-toggle=\"tooltip\"]').tooltip();\r\n});\r\n\r\n// Partial includes based on data-include-html attributes\r\nfunction includeHTML() {\r\n var i = $('[data-include-html]');\r\n i.each(function() {\r\n var current = $(this);\r\n var parent = current.parent();\r\n var file = current.data('include-html');\r\n var title = current.data('page-title');\r\n var icon = current.data('page-icon');\r\n if(parent.hasClass('icg-example')) {\r\n $.get(file).done(function(data){\r\n var c = data;\r\n var filename = file.split('/').pop();\r\n var d = filename.substr(0, filename.lastIndexOf('.'));\r\n var accordionButton = '
';\r\n current.after(accordionButton + '
');\r\n var sib = current.siblings().last();\r\n sib.find('code').text(c);\r\n sib.children().last().append('\\r');\r\n current.replaceWith(data);\r\n });\r\n } else if(current.data('page-icon')) {\r\n $.get(file).done(function(data){\r\n var sib = current.siblings().last();\r\n current.replaceWith(data);\r\n var replaced = sib.siblings().first();\r\n var header = replaced.find('h1');\r\n var newicon = header.find('i').attr('class', 'page-header-icon fas fa-' + icon);\r\n header.html(title).prepend(newicon);\r\n });\r\n } else {\r\n $.get(file).done(function(data){\r\n current.replaceWith(data);\r\n });\r\n }\r\n });\r\n}\r\n\r\nfunction handleNav() {\r\n // Footer height based on nav height\r\n $('.icg-nav ul').on('shown.bs.collapse', function() {\r\n var height = $('.icg-nav').outerHeight();\r\n $('body').css('min-height', height);\r\n });\r\n $('.icg-nav ul').on('hidden.bs.collapse', function() {\r\n $('body').removeAttr('style').delay(250);\r\n var nheight = $('.icg-nav').outerHeight();\r\n $('body').css('min-height', nheight);\r\n });\r\n\r\n // Select Active Page in Menu\r\n var currentPath = window.location.pathname;\r\n $('.icg-nav')\r\n .find('.nav-item > a[href=\"' + currentPath + '\"]')\r\n .parent().addClass('active')\r\n .parent().addClass('show')\r\n .siblings().attr('aria-expanded','true')\r\n .parent().addClass('active');\r\n \r\n // Toggle left nav menu and set state in localStorage\r\n $('.nav-toggle').on('click', function(e) {\r\n var windowWidth = $(window).outerWidth();\r\n if(windowWidth < 992) {\r\n $('.icg-nav').toggleClass('icg-nav-expand');\r\n localStorage.setItem('menu-tablet-collapsed', $('.icg-nav').hasClass('icg-nav-expand'));\r\n } else {\r\n $('.icg-nav').toggleClass('icg-nav-collapse');\r\n localStorage.setItem('menu-desktop-collapsed', $('.icg-nav').hasClass('icg-nav-collapse'));\r\n }\r\n });\r\n $('.icg-nav-dimmer').on('click', function() {\r\n $('.icg-nav').toggleClass('icg-nav-expand');\r\n });\r\n \r\n // Read left nav menu state from localStorage\r\n var tabletState = localStorage.getItem('menu-tablet-collapsed');\r\n var desktopState = localStorage.getItem('menu-desktop-collapsed');\r\n\r\n // Close left nav menu (tablet) when localStorage is not set\r\n if (tabletState === null) {\r\n $('.icg-nav').removeClass('icg-nav-expand');\r\n } else {\r\n var tabletClassState = tabletState === \"true\" ? true : false;\r\n\r\n if (!tabletClassState) {\r\n $('.icg-nav').removeClass('icg-nav-expand');\r\n } else {\r\n $('.icg-nav').addClass('icg-nav-expand');\r\n }\r\n }\r\n\r\n // Open left nav menu (desktop) when localStorage is not set\r\n if (desktopState === null) {\r\n $('.icg-nav').removeClass('icg-nav-collapse');\r\n } else {\r\n // Save left nav menu state to variable when localStorage is set\r\n // Set to a boolean true/false value instead of a string \"true\" or \"false\" \t\r\n var desktopClassState = desktopState === \"true\" ? true : false;\r\n\r\n // When the state of the menu is not closed, remove the collapsed class from the sidebar.\r\n if (!desktopClassState) {\r\n $('.icg-nav').removeClass('icg-nav-collapse');\r\n } else {\r\n $('.icg-nav').addClass('icg-nav-collapse');\r\n }\r\n }\r\n}\r\n\r\nfunction handleDatePickers(selector){\r\n $(selector).each(function () {\r\n $(this).datepicker({\r\n uiLibrary: 'bootstrap4',\r\n showOnFocus: true,\r\n iconsLibrary: 'fontawesome',\r\n format: 'yyyy-mm-dd',\r\n icons: {\r\n rightIcon: ''\r\n }\r\n });\r\n });\r\n}\r\n\r\nfunction handleSimpleDataTable(selector){\r\n $(selector).DataTable();\r\n}\r\n\r\nfunction handleSimpleDataTableWithState(selector){\r\n $(selector).DataTable({ stateSave: true });\r\n}\r\n\r\nfunction handleFilePickers(selector){\r\n\t$(selector).on('change', function () {\r\n //get the file name\r\n var fileName = $(this).val();\r\n //replace the \"Choose file…\" label\r\n $(this).next('.custom-file-label').html(fileName);\r\n });\r\n}\r\n/* Custom Download Tracking */\r\nfunction setCookie (name, value, expiracy) {\r\n var exdate = new Date();\r\n exdate.setTime(exdate.getTime() + expiracy * 1000);\r\n var c_value = escape(value) + ((expiracy == null) ? \"\" : \"; expires=\" + exdate.toUTCString());\r\n document.cookie = name + \"=\" + c_value + '; path=/';\r\n}\r\n\r\nfunction getCookie (name) {\r\n var i, x, y, ARRcookies = document.cookie.split(\";\");\r\n for (i = 0; i < ARRcookies.length; i++) {\r\n x = ARRcookies[i].substr(0, ARRcookies[i].indexOf(\"=\"));\r\n y = ARRcookies[i].substr(ARRcookies[i].indexOf(\"=\") + 1);\r\n x = x.replace(/^\\s+|\\s+$/g, \"\");\r\n if (x == name) {\r\n return y ? decodeURI(unescape(y.replace(/\\+/g, ' '))) : y; //;//unescape(decodeURI(y));\r\n }\r\n }\r\n}\r\n\r\nfunction handleDownloadDialog(selector){\r\n $(selector).click(function () {\r\n processingOverlay.show();\r\n setCookie('downloadStarted', 0, 100); //Expiration could be anything... As long as we reset the value\r\n setTimeout(checkDownloadCookie, 1000); //Initiate the loop to check the cookie.\r\n });\r\n}\r\n\r\n\r\nvar downloadTimeout;\r\nfunction checkDownloadCookie () {\r\n if (getCookie(\"downloadStarted\") == 1) {\r\n setCookie(\"downloadStarted\", \"false\", 100); //Expiration could be anything... As long as we reset the value\r\n processingOverlay.hide();\r\n } else {\r\n downloadTimeout = setTimeout(checkDownloadCookie, 1000); //Re-run this function in 1 second.\r\n }\r\n}\r\n\r\n// source: https://stackoverflow.com/questions/18999501/bootstrap-3-keep-selected-tab-on-page-refresh/42591519#42591519\r\n/// put on a page to save tab navigation through page redirects\r\n/// pagekey is the key this info will be saved to in localStorage\r\nfunction saveTabNavigation(pagekey) {\r\n $(function () {\r\n var activeTab = localStorage.getItem(pagekey);\r\n if (activeTab && $('a[href=\"' + activeTab + '\"]').length) {\r\n $('a[href=\"' + activeTab + '\"]').tab('show');\r\n }\r\n else if (location.hash && $('a[href=\\'' + location.hash + '\\']').length) {\r\n $('a[href=\\'' + location.hash + '\\']').tab('show');\r\n }\r\n else {\r\n var firstTab = $('.nav-tabs a:first').attr(\"href\");\r\n\r\n location.hash = firstTab;\r\n\r\n localStorage.setItem(pagekey, firstTab);\r\n $('a[href=\"' + firstTab + '\"]').tab('show');\r\n }\r\n });\r\n\r\n $('body').on('click', 'a[data-toggle=\\'tab\\']', function (e) {\r\n e.preventDefault();\r\n var tab_name = this.getAttribute('href');\r\n if (history.pushState) {\r\n history.pushState(null, null, tab_name);\r\n }\r\n else {\r\n location.hash = tab_name;\r\n }\r\n localStorage.setItem(pagekey, tab_name);\r\n\r\n $(this).tab('show');\r\n return false;\r\n });\r\n\r\n $(window).on('popstate', function () {\r\n var anchor = location.hash || $('a[data-toggle=\\'tab\\']').first().attr('href');\r\n $('a[href=\\'' + anchor + '\\']').tab('show');\r\n });\r\n}\r\n\r\n/// run when a tab nav should be reset\r\nfunction resetTabNavigation(pagekey) {\r\n localStorage.setItem(pagekey, undefined);\r\n}\r\n\r\n\r\n\r\n// expected props structure:\r\n// tableKey -> required: id of the table this function will handle.\r\n// actionColumn -> optional: column settings for action column to be appended\r\n// onFilterSearch -> optional: function that will be ran when filter button is pushed. for UI data dependant on filter inputs. use jquery drawCallback object for things requiring query data.\r\n// filterSettings -> optional: array of info on each filter input.\r\n// filterKey -> required: id of the filter this will handle\r\n// inputType -> optional: select or input. if single or multi select, use select. everything else is input. defaults to input.\r\n// defaultDataLoad -> optional: function that will be ran after data is loaded.\r\n// dataLoad -> optional function ran to load data for ajax.data\r\n// jquerySettings -> required: spreads all contained objects directly into jquery datatable setup.\r\n// columns -> required\r\n// ajaxSettings -> optional: spreads all contained objects directly into ajax setup.\r\n// columnOverrides -> optional: list used to override columns defaults.\r\n// target -> required: column index these settings apply to\r\n// data -> optional: column setting to override\r\n// title -> optional: column setting to override\r\n// visible -> optional: column setting to override\r\n// searchable -> optional: column setting to override\r\n// render -> optional: column setting to override\r\n\r\n// Returns the query function to be ran on filter button push.\r\nfunction handleJqueryDataTable(props) {\r\n if (!props.tableKey) {\r\n throw \"tableKey is required\";\r\n }\r\n\r\n if (!props.jquerySettings) {\r\n throw \"jquerySettings is required\";\r\n } else if (!props.jquerySettings.columns) {\r\n throw \"jquerySettings columns is required\";\r\n }\r\n\r\n var tableId = \"#\" + props.tableKey;\r\n\r\n $(document)\r\n .ready(function () {\r\n if (props.filterSettings && props.filterSettings.length > 0) {\r\n for (var i = 0; i < props.filterSettings.length; i++) {\r\n var filterSetting = props.filterSettings[i];\r\n\r\n if (!filterSetting.filterKey) {\r\n throw \"a filter setting is missing a filterkey\";\r\n }\r\n\r\n if (filterSetting.inputType === \"select\") {\r\n LoadSelect(filterSetting.filterKey);\r\n } else {\r\n LoadInput(filterSetting.filterKey);\r\n }\r\n\r\n $('#' + filterSetting.filterKey).change(SaveInput(filterSetting.filterKey));\r\n if (filterSetting.defaultDataLoad) {\r\n filterSetting.defaultDataLoad();\r\n }\r\n }\r\n }\r\n\r\n for (var j = 0; j < props.jquerySettings.columns.length; j++) {\r\n var p = lowerFirstLetter(props.jquerySettings.columns[j].data);\r\n props.jquerySettings.columns[j].render = createRender(p);\r\n\r\n if (props.columnOverrides) {\r\n var overrideFilter = props.columnOverrides.filter(filterFunc(j));\r\n\r\n if (overrideFilter.length > 0) {\r\n var override = overrideFilter[0];\r\n if (override.data) {\r\n props.jquerySettings.columns[j].data = override.data;\r\n }\r\n\r\n if (override.title) {\r\n props.jquerySettings.columns[j].title = override.title;\r\n }\r\n\r\n if (override.visible) {\r\n props.jquerySettings.columns[j].visible = override.visible;\r\n }\r\n\r\n if (override.searchable) {\r\n props.jquerySettings.columns[j].searchable = override.searchable;\r\n }\r\n\r\n if (override.render) {\r\n props.jquerySettings.columns[j].render = override.render;\r\n }\r\n\r\n if (override.orderable) {\r\n props.jquerySettings.columns[j].orderable = override.orderable;\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (actionColumn) {\r\n props.jquerySettings.columns.push(actionColumn);\r\n }\r\n\r\n Query();\r\n\r\n\r\n function createRender(p) {\r\n return function (data, type, row) { return row[p]; };\r\n }\r\n\r\n function lowerFirstLetter(str) {\r\n return str.charAt(0).toLowerCase() + str.slice(1);\r\n }\r\n\r\n function filterFunc(index) {\r\n return function (element) {\r\n return element.target === index;\r\n };\r\n }\r\n });\r\n\r\n $.fn.dataTable.render.moment = function (to, locale) {\r\n return function (d, type, row) {\r\n if (!d) {\r\n return type === 'sort' || type === 'type' ? 0 : d;\r\n }\r\n var m = window.moment.utc(d);\r\n\r\n // Order and type get a number value from Moment, everything else\r\n // sees the rendered value\r\n return m.local().format(type === 'sort' || type === 'type' ? 'x' : to);\r\n };\r\n };\r\n\r\n function Query() {\r\n if ($.fn.dataTable.isDataTable(tableId)) {\r\n $(tableId).DataTable().destroy();\r\n $(tableId).empty();\r\n }\r\n\r\n if (props.onFilterSearch) {\r\n props.onFilterSearch();\r\n }\r\n\r\n $(tableId)\r\n .DataTable(Object.assign(\r\n {},\r\n {\r\n serverSide: true,\r\n stateSave: true,\r\n ajax: getAjaxObject()\r\n },\r\n props.jquerySettings)\r\n );\r\n\r\n //This is common for all instances due to our styles\r\n $(tableId + ' thead th').removeClass('d-flex').removeClass(\"justify-content-end\");\r\n\r\n function getAjaxObject() {\r\n var obj = { type: \"POST\" };\r\n\r\n if (props.dataLoad) {\r\n obj.data = props.dataLoad();\r\n }\r\n\r\n if (props.ajaxSettings) {\r\n obj = Object.assign(\r\n {},\r\n obj,\r\n props.ajaxSettings);\r\n }\r\n\r\n return obj;\r\n }\r\n }\r\n\r\n function SaveInput(key) {\r\n return function () {\r\n var value = $('#' + key).val();\r\n sessionStorage.setItem(props.tableKey + key, value);\r\n };\r\n }\r\n\r\n function LoadInput(key) {\r\n var data = sessionStorage.getItem(props.tableKey + key);\r\n if (data && data.length) {\r\n $('#' + key).val(data);\r\n }\r\n }\r\n\r\n function LoadSelect(key) {\r\n var data = sessionStorage.getItem(props.tableKey + key);\r\n if (data && data.length) {\r\n var dataList = data.split(',');\r\n $('#' + key).val(dataList).change();\r\n }\r\n }\r\n\r\n return Query;\r\n}\r\n\r\n// takes a number and amount to pad it by. (9,5) -> 00009. (999,5) -> 00999\r\nvar zeroPad = function (num, places) { return String(num).padStart(places, '0'); };\r\n\r\n// helper methods for formatting dates. \r\n// GetDateFormatted -> takes a date and returns YYY-MM-DD format. No data returns null\r\n// GetDateFormattedHtml -> takes a date and returns m/d/yyyy format. No data returns minus icon\r\n// GetRelativeDateFormattedHtml -> takes a date and returns relative data tag. No data returns minus icon\r\nvar dateHelper = {\r\n GetDateFormatted: function (data) {\r\n if (data) {\r\n if (data.length <= 10) {\r\n data = (data + '').replace(/-/g, '/'); // if time not included. dont adjust for timezone.\r\n }\r\n var date = new Date(data);\r\n var month = date.getMonth() + 1;\r\n var dateformatted = date.getFullYear() + '-' + zeroPad(month, 2) + '-' + zeroPad(date.getDate(), 2);\r\n return dateformatted;\r\n } else {\r\n return null;\r\n }\r\n },\r\n GetDateFormattedHtml: function (data) {\r\n if (data) {\r\n if (data.length <= 10) {\r\n data = (data + '').replace(/-/g, '/'); // if time not included. dont adjust for timezone.\r\n }\r\n var date = new Date(data);\r\n var month = date.getMonth() + 1;\r\n var dateformatted = month + '/' + date.getDate() + '/' + date.getFullYear();\r\n\r\n return '' + dateformatted + '';\r\n } else {\r\n return '';\r\n }\r\n },\r\n GetRelativeDateFormattedHtml: function (data) {\r\n if (data) {\r\n if (data.length <= 10) {\r\n data = (data + '').replace(/-/g, '/'); // if time not included. dont adjust for timezone.\r\n }\r\n var date = new Date(data);\r\n var month = date.getMonth() + 1;\r\n var dateformatted = month + '/' + date.getDate() + '/' + date.getFullYear();\r\n\r\n return '';\r\n } else {\r\n return '';\r\n }\r\n }\r\n};","(function (root, factory) {\r\n 'use strict';\r\n\r\n // if (typeof define === 'function' && define.amd) {\r\n // define(['jquery'], function ($) {\r\n // return (root.processingOverlay = factory($));\r\n // });\r\n // }\r\n // else {\r\n root.processingOverlay = root.processingOverlay || factory(root.jQuery);\r\n // }\r\n\r\n}(this, function ($) {\r\n 'use strict';\r\n\r\n function constructDialog($dialog, settings) {\r\n if ($dialog) {\r\n $dialog.remove();\r\n }\r\n var nonceAttr = settings.nonce === null ? '' : ' nonce=\"' + settings.nonce + '\"',\r\n el = $.parseHTML(\r\n '
' +\r\n '
' +\r\n '
' +\r\n '
' +\r\n '
' +\r\n '
' +\r\n '
' +\r\n '
' +\r\n '
' +\r\n '
' +\r\n '
' +\r\n '
'\r\n );\r\n return $(el);\r\n }\r\n\r\n var $dialog, settings;\r\n\r\n return {\r\n /********************************\r\n * Show Dialog *\r\n ********************************\r\n *\r\n * @param message Custom message\r\n * @param options Custom options\r\n * \r\n * options.headerText\r\n * Boolean false: hides header and set \"message\" in paragraph above progress bar.\r\n * Non-empty string: \"message\" becomes content above progress bar and headerText string will be set as H3 text.\r\n * \r\n * options.headerSize\r\n * '1': renders as

.\r\n * '2': renders as

.\r\n * '3': renders as

.\r\n * '4': renders as

.\r\n * '5' (default): renders as

.\r\n * '6': renders as
.\r\n * \r\n * options.headerClass\r\n * Extra class(es) for header tag.\r\n * \r\n * options.dialogSize\r\n * 'sm': renders small sized version.\r\n * 'm': renders medium sized version.\r\n * 'lg': renders large sized version.\r\n * \r\n * options.messageStyle\r\n * 'primary': renders 'primary' styled header background and progress bar.\r\n * 'secondary': renders 'secondary' styled header background and progress bar.\r\n * 'success': renders 'success' styled header background and progress bar.\r\n * 'info': renders 'info' styled header background and progress bar.\r\n * 'warning': renders 'warning' styled header background and progress bar.\r\n * 'danger': renders 'danger' styled header background and progress bar.\r\n * 'light': renders 'success' styled header background and progress bar.\r\n * 'dark': renders 'success' styled header background and progress bar.\r\n * \r\n * options.contentElement\r\n * Determines tag of content element\r\n * 'p' (default): generates a

tag\r\n * \r\n * options.contentClass\r\n * Extra class(es) for content tag.\r\n * \r\n *******************************/\r\n show: function (message, options) {\r\n // Assign defaults\r\n if (typeof options === 'undefined') {\r\n options = {};\r\n }\r\n if (typeof message === 'undefined') {\r\n message = 'Please wait';\r\n }\r\n settings = $.extend({\r\n headerText: 'Processing...',\r\n headerSize: 5,\r\n headerClass: 'modal-title',\r\n dialogSize: 'm',\r\n messageStyle: 'primary',\r\n contentElement: 'p',\r\n contentClass: 'content',\r\n onHide: null, // Callback runs after dialog is hidden\r\n onShow: null, // Callback runs after dialog is shown\r\n nonce: null // Nonce to permit inline styles\r\n }, options);\r\n\r\n var $headerTag, $contentTag;\r\n\r\n $dialog = constructDialog($dialog, settings);\r\n\r\n // Configure dialog\r\n $dialog.find('.modal-dialog').parent().addClass('modal-' + settings.messageStyle);\r\n $dialog.find('.modal-dialog').attr('class', 'modal-dialog').addClass('modal-' + settings.dialogSize);\r\n $dialog.find('.progress-bar').attr('class', 'progress-bar progress-bar-striped progress-bar-animated');\r\n if (settings.messageStyle) {\r\n $dialog.find('.progress-bar').addClass('progress-bar-' + settings.messageStyle);\r\n $dialog.find('.progress-bar').addClass('bg-' + settings.messageStyle);\r\n }\r\n\r\n // Generate header tag\r\n $headerTag = $('');\r\n $headerTag.css({ 'margin': 0 });\r\n if (settings.headerClass) {\r\n $headerTag.addClass(settings.headerClass);\r\n }\r\n\r\n // Generate content tag\r\n $contentTag = $('<' + settings.contentElement + ' />');\r\n if (settings.contentClass) {\r\n $contentTag.addClass(settings.contentClass);\r\n }\r\n\r\n // Set headerText and message\r\n if (settings.headerText === false) {\r\n $contentTag.html(message);\r\n $dialog.find('.modal-body').prepend($contentTag);\r\n }\r\n else if (settings.headerText) {\r\n $headerTag.html(settings.headerText);\r\n $dialog.find('.modal-header').html($headerTag).show();\r\n\r\n $contentTag.html(message);\r\n $dialog.find('.modal-body').prepend($contentTag);\r\n }\r\n else {\r\n $headerTag.html(message);\r\n $dialog.find('.modal-header').html($headerTag).show();\r\n }\r\n\r\n // Add callbacks\r\n if (typeof settings.onHide === 'function') {\r\n $dialog.off('hidden.bs.modal').on('hidden.bs.modal', function () {\r\n settings.onHide.call($dialog);\r\n });\r\n }\r\n if (typeof settings.onShow === 'function') {\r\n $dialog.off('shown.bs.modal').on('shown.bs.modal', function () {\r\n settings.onShow.call($dialog);\r\n });\r\n }\r\n // Open dialog\r\n $dialog.modal();\r\n \r\n // Trace if dialog shown\r\n $dialog.on('shown.bs.modal', function () {\r\n $dialog.data('shown', true);\r\n });\r\n },\r\n\r\n /********************************\r\n * Hide Dialog *\r\n ********************************\r\n * @param cb Callback after hide\r\n * \r\n *******************************/\r\n hide: function (cb) {\r\n if (typeof $dialog !== 'undefined') {\r\n if ($dialog.data('shown') === true) {\r\n $dialog.modal('hide');\r\n if (cb) {\r\n cb($dialog);\r\n }\r\n }\r\n else {\r\n $dialog.on('shown.bs.modal', function () {\r\n $dialog.modal('hide');\r\n if (cb) {\r\n cb($dialog);\r\n }\r\n });\r\n }\r\n }\r\n },\r\n /********************************\r\n * Change/display dialog message\r\n ********************************\r\n * @param newMessage New message\r\n * \r\n *******************************/\r\n message: function (newMessage) {\r\n if (typeof $dialog !== 'undefined') {\r\n if (typeof newMessage !== 'undefined') {\r\n return $dialog.find('.modal-header>h' + settings.headerSize).html(newMessage);\r\n }\r\n else {\r\n return $dialog.find('.modal-header>h' + settings.headerSize).html();\r\n }\r\n }\r\n }\r\n };\r\n\r\n}));"]}