{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///noty.min.js","webpack:///webpack/bootstrap f1ec92ba12822f8fc6dd","webpack:///./src/utils.js","webpack:///./src/api.js","webpack:///./src/button.js","webpack:///./src/index.js"],"names":["root","factory","exports","module","define","amd","this","modules","__webpack_require__","moduleId","installedModules","i","l","call","m","c","value","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","object","property","prototype","hasOwnProperty","p","s","_interopRequireWildcard","obj","newObj","key","default","inArray","needle","haystack","argStrict","stopPropagation","evt","window","event","cancelBubble","generateID","prefix","arguments","length","undefined","id","replace","r","Math","random","toString","delegate","el","sel","handler","addEventListener","t","target","matches","parentNode","outerHeight","height","offsetHeight","style","getComputedStyle","parseInt","marginTop","marginBottom","addListener","events","cb","useCapture","split","document","attachEvent","removeListener","removeEventListener","live","eventType","elementQuerySelector","qs","querySelectorAll","index","Array","indexOf","parentElement","findParent","cls","classList","contains","findChild","children","child","hasClass","element","addClass","oldList","newList","className","substring","removeClass","remove","removeChild","visibilityChangeFlow","stopAll","keys","API","Store","forEach","setTimeout","stop","resumeAll","resume","css","deepExtend","animationEndEvents","_typeof","Symbol","iterator","constructor","_api","HTMLElement","matchesSelector","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","out","isArray","camelCase","string","match","letter","toUpperCase","getVendorProp","body","vendorName","cssPrefixes","capName","charAt","slice","getStyleProp","cssProps","applyCss","prop","properties","args","getQueueCounts","queueName","count","max","DefaultMaxVisible","Queues","maxVisible","options","queue","closed","current","addToQueue","ref","push","removeFromQueue","queueRender","noty","shift","show","ghostFix","ghostID","Utils","ghost","createElement","setAttribute","barDom","insertAdjacentHTML","outerHTML","getElementById","build","findOrCreateContainer","markup","text","buildButtons","type","theme","innerHTML","fire","hasButtons","buttons","appendChild","dom","btn","container","layoutDom","querySelector","console","log","layoutID","layout","queueClose","timeout","progressBar","progressDom","transition","width","closeTimer","close","dequeueClose","clearTimeout","eventName","listeners","apply","openFlow","closeFlow","Defaults","_utils","global","closeWith","animation","open","force","killer","callbacks","beforeShow","onShow","afterShow","onClose","afterClose","onHover","onTemplate","_classCallCheck","instance","Constructor","TypeError","NotyButton","html","classes","_this","attributes","propertyName","_createClass","defineProperties","props","descriptor","writable","protoProps","staticProps","_button","Noty","shown","on","closeAll","queueCounts","insertBefore","firstChild","e","closeButton","_t","_setTimeout","_x","ms","optionsOverride","_this2","_this3","_this4","amount","innerHtml"],"mappings":"CAAA,SAAAA,EAAAC,GACA,gBAAAC,UAAA,gBAAAC,QACAA,OAAAD,QAAAD,IACA,kBAAAG,gBAAAC,IACAD,OAAA,UAAAH,GACA,gBAAAC,SACAA,QAAA,KAAAD,IAEAD,EAAA,KAAAC,KACCK,KAAA,WACD,MCAgB,UAAUC,GCN1B,QAAAC,GAAAC,GAGA,GAAAC,EAAAD,GACA,MAAAC,GAAAD,GAAAP,OAGA,IAAAC,GAAAO,EAAAD,IACAE,EAAAF,EACAG,GAAA,EACAV,WAUA,OANAK,GAAAE,GAAAI,KAAAV,EAAAD,QAAAC,IAAAD,QAAAM,GAGAL,EAAAS,GAAA,EAGAT,EAAAD,QAvBA,GAAAQ,KA+DA,OAnCAF,GAAAM,EAAAP,EAGAC,EAAAO,EAAAL,EAGAF,EAAAG,EAAA,SAAAK,GAA2C,MAAAA,IAG3CR,EAAAS,EAAA,SAAAf,EAAAgB,EAAAC,GACAX,EAAAY,EAAAlB,EAAAgB,IACAG,OAAAC,eAAApB,EAAAgB,GACAK,cAAA,EACAC,YAAA,EACAC,IAAAN,KAMAX,EAAAkB,EAAA,SAAAvB,GACA,GAAAgB,GAAAhB,KAAAwB,WACA,WAA2B,MAAAxB,GAAA,SAC3B,WAAiC,MAAAA,GAEjC,OADAK,GAAAS,EAAAE,EAAA,IAAAA,GACAA,GAIAX,EAAAY,EAAA,SAAAQ,EAAAC,GAAsD,MAAAR,QAAAS,UAAAC,eAAAlB,KAAAe,EAAAC,IAGtDrB,EAAAwB,EAAA,GAGAxB,IAAAyB,EAAA,KDgBM,SAAU9B,EAAQD,EAASM,GAEjC,YA+BA,SAAS0B,GAAwBC,GAAO,GAAIA,GAAOA,EAAIR,WAAc,MAAOQ,EAAc,IAAIC,KAAa,IAAW,MAAPD,EAAe,IAAK,GAAIE,KAAOF,GAAWd,OAAOS,UAAUC,eAAelB,KAAKsB,EAAKE,KAAMD,EAAOC,GAAOF,EAAIE,GAAgC,OAAtBD,GAAOE,QAAUH,EAAYC,EElG3P,QAASG,GAASC,EAAQC,EAAUC,GACzC,GAAIL,GAAM,EAEV,KADeK,GAQb,IAAKL,IAAOI,GACV,GAAIA,EAASJ,IAAQG,EACnB,OAAO,MARX,KAAKH,IAAOI,GACV,GAAIA,EAASJ,KAASG,EACpB,OAAO,CAUb,QAAO,EAGF,QAASG,GAAiBC,GAC/BA,EAAMA,GAAOC,OAAOC,UACe,KAAxBF,EAAID,gBACbC,EAAID,kBAGJC,EAAIG,cAAe,EA4BhB,QAASC,KAAyB,GAAbC,GAAaC,UAAAC,OAAA,OAAAC,KAAAF,UAAA,GAAAA,UAAA,GAAJ,GAC/BG,UAAaJ,EAAb,GAOJ,OALAI,IAAM,uCAAuCC,QAAQ,QAAS,SAAUvC,GACtE,GAAIwC,GAAoB,GAAhBC,KAAKC,SAAgB,CAC7B,QADyC,KAAL1C,EAAWwC,EAAS,EAAJA,EAAU,GACrDG,SAAS,MAOf,QAASC,GAAUC,EAAIhB,EAAKiB,EAAKC,GACtCF,EAAGG,iBAAiBnB,EAAK,SAAUE,GAEjC,IADA,GAAIkB,GAAIlB,EAAMmB,OACPD,GAAKA,IAAM1D,MACZ0D,EAAEE,QAAQL,IACZC,EAAQjD,KAAKmD,EAAGlB,GAElBkB,EAAIA,EAAEG,aAKL,QAASC,GAAaR,GAC3B,GAAIS,GAAST,EAAGU,aACZC,EAAQC,iBAAiBZ,EAG7B,OADAS,IAAUI,SAASF,EAAMG,WAAaD,SAASF,EAAMI,cAuDhD,QAASC,GAAahB,EAAIiB,EAAQC,GAAwB,GAApBC,GAAoB7B,UAAAC,OAAA,OAAAC,KAAAF,UAAA,IAAAA,UAAA,EAC/D2B,GAASA,EAAOG,MAAM,IACtB,KAAK,GAAIrE,GAAI,EAAGA,EAAIkE,EAAO1B,OAAQxC,IAC7BsE,SAASlB,iBACXH,EAAGG,iBAAiBc,EAAOlE,GAAImE,EAAIC,GAC1BE,SAASC,aAClBtB,EAAGsB,YAAY,KAAOL,EAAOlE,GAAImE,GAKhC,QAASK,GAAgBvB,EAAIiB,EAAQC,GAC1CD,EAASA,EAAOG,MAAM,IACtB,KAAK,GAAIrE,GAAI,EAAGA,EAAIkE,EAAO1B,OAAQxC,IAC7BsE,SAASG,oBACXxB,EAAGwB,oBAAoBP,EAAOlE,GAAImE,GAAI,GAC7BG,SAASC,aAClBtB,EAAGsB,YAAY,KAAOL,EAAOlE,GAAImE,GAKhC,QAASO,GAAMC,EAAWC,EAAsBT,GACrDG,SAASlB,iBAAiBuB,EAAW,SAACxC,GACpC,GAAI0C,GAAKP,SAASQ,iBAAiBF,EACnC,IAAIC,EAAI,CAGN,IAFA,GAAI5B,GAAKd,EAAMmB,OACXyB,SACG9B,IAA2D,KAAnD8B,EAAQC,MAAM7D,UAAU8D,QAAQ/E,KAAK2E,EAAI5B,KACtDA,EAAKA,EAAGiC,aAGNH,IAAS,GACXZ,EAAGjE,KAAK+C,EAAId,MAMb,QAASgD,GAAYlC,EAAImC,GAC9B,MAAQnC,EAAKA,EAAGiC,iBAAmBjC,EAAGoC,UAAUC,SAASF,KACzD,MAAOnC,GAGF,QAASsC,GAAWtC,EAAImC,GAE7B,IAAK,GADDI,GAAWvC,EAAGuC,SACTxF,EAAI,EAAGA,EAAIwF,EAAShD,OAAQxC,IAAK,CACxC,GAAIyF,GAAQD,EAASxF,EACrB,IAAIyF,EAAMJ,UAAUC,SAASF,GAC3B,MAAOK,IAKN,QAASC,GAAUC,EAASpF,GAEjC,OAD6B,gBAAXoF,GAAsBA,EAAUN,EAAUM,IAChDV,QAAQ,IAAM1E,EAAO,MAAQ,EAGpC,QAASqF,GAAUD,EAASpF,GACjC,GAAIsF,GAAUR,EAAUM,GACpBG,EAAUD,EAAUtF,CAEpBmF,GAASG,EAAStF,KAGtBoF,EAAQI,UAAYD,EAAQE,UAAU,IAGjC,QAASC,GAAaN,EAASpF,GACpC,GACIuF,GADAD,EAAUR,EAAUM,EAGnBD,GAASC,EAASpF,KAGvBuF,EAAUD,EAAQlD,QAAQ,IAAMpC,EAAO,IAAK,KAG5CoF,EAAQI,UAAYD,EAAQE,UAAU,EAAGF,EAAQtD,OAAS,IAGrD,QAAS0D,GAAQP,GACtBA,EAAQnC,WAAW2C,YAAYR,GAG1B,QAASN,GAAWM,GACzB,OAAQ,KAAOA,GAAWA,EAAQI,WAAa,IAAM,KAAKpD,QAAQ,QAAS,KAGtE,QAASyD,KACd,QAASC,KACP3F,OAAO4F,KAAKC,EAAIC,OAAOC,QAAQ,SAAC/D,GAC1B6D,EAAIC,MAAMpF,eAAesB,IAC3BgE,WAAW,WACTH,EAAIC,MAAM9D,GAAIiE,QACb,OAKT,QAASC,KACPlG,OAAO4F,KAAKC,EAAIC,OAAOC,QAAQ,SAAC/D,GAC1B6D,EAAIC,MAAMpF,eAAesB,IAC3BgE,WAAW,WACTH,EAAIC,MAAM9D,GAAImE,UACb,OAKT5C,EAAY/B,OAAQ,OAAQmE,GAC5BpC,EAAY/B,OAAQ,QAAS0E,GFlL/BlG,OAAOC,eAAepB,EAAS,cAC7Bc,OAAO,IAETd,EAAQuH,IAAMvH,EAAQwH,WAAaxH,EAAQyH,uBAAqBvE,EAEhE,IAAIwE,GAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAU3F,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAX0F,SAAyB1F,EAAI4F,cAAgBF,QAAU1F,IAAQ0F,OAAO/F,UAAY,eAAkBK,GAEtQjC,GE7EgBqC,UF8EhBrC,EE3DgByC,kBF4DhBzC,EE1BgB8C,aF2BhB9C,EEfgByD,WFgBhBzD,EEJgBkE,cFKhBlE,EEsDgB0E,cFrDhB1E,EEgEgBiF,iBF/DhBjF,EE0EgBmF,OFzEhBnF,EE0FgB4F,aFzFhB5F,EE8FgBgG,YF7FhBhG,EEuGgBmG,WFtGhBnG,EE2GgBqG,WF1GhBrG,EEoHgB0G,cFnHhB1G,EEgIgB2G,SF/HhB3G,EEmIgB8F,YFlIhB9F,EEsIgB6G,sBAjPhB,IAAAiB,GAAAxH,EAAA,GAAY0G,EF+GFhF,EAAwB8F,EE5G9BnF,QAAOoF,cACTA,YAAYnG,UAAUoC,QAClB+D,YAAYnG,UAAUoC,SACtB+D,YAAYnG,UAAUoG,iBACtBD,YAAYnG,UAAUqG,uBACtBF,YAAYnG,UAAUsG,oBACtBH,YAAYnG,UAAUuG,mBACtBJ,YAAYnG,UAAUwG,iBAGfX,sBAAqB,+EA+BrBD,aAAa,QAAbA,GAAuBa,GAClCA,EAAMA,KAEN,KAAK,GAAI5H,GAAI,EAAGA,EAAIuC,UAAUC,OAAQxC,IAAK,CACzC,GAAIwB,GAAMe,UAAUvC,EAEpB,IAAKwB,EAGL,IAAK,GAAIE,KAAOF,GACVA,EAAIJ,eAAeM,KACjBsD,MAAM6C,QAAQrG,EAAIE,IACpBkG,EAAIlG,GAAOF,EAAIE,GACY,WAApBuF,EAAOzF,EAAIE,KAAiC,MAAZF,EAAIE,GAC3CkG,EAAIlG,GAAOqF,EAAWa,EAAIlG,GAAMF,EAAIE,IAEpCkG,EAAIlG,GAAOF,EAAIE,IAKvB,MAAOkG,IAmCEd,MAAO,WAIhB,QAASgB,GAAWC,GAClB,MAAOA,GAAOpF,QAAQ,QAAS,OAAOA,QAAQ,eAAgB,SAAUqF,EAAOC,GAC7E,MAAOA,GAAOC,gBAIlB,QAASC,GAAe5H,GACtB,GAAIqD,GAAQU,SAAS8D,KAAKxE,KAC1B,IAAIrD,IAAQqD,GAAO,MAAOrD,EAK1B,KAHA,GAEI8H,GAFArI,EAAUsI,EAAY9F,OACtB+F,EAAUhI,EAAKiI,OAAO,GAAGN,cAAgB3H,EAAKkI,MAAM,GAEjDzI,KAEL,IADAqI,EAAaC,EAAYtI,GAAKuI,IACZ3E,GAAO,MAAOyE,EAGlC,OAAO9H,GAGT,QAASmI,GAAcnI,GAErB,MADAA,GAAOuH,EAAUvH,GACVoI,EAASpI,KAAUoI,EAASpI,GAAQ4H,EAAc5H,IAG3D,QAASqI,GAAUjD,EAASkD,EAAMxI,GAChCwI,EAAOH,EAAaG,GACpBlD,EAAQ/B,MAAMiF,GAAQxI,EA/BxB,GAAIiI,IAAe,SAAU,IAAK,MAAO,MACrCK,IAiCJ,OAAO,UAAUhD,EAASmD,GACxB,GACID,GACAxI,EAFA0I,EAAOxG,SAIX,IAAmB,GAAfwG,EAAKvG,OACP,IAAKqG,IAAQC,OAEGrG,MADdpC,EAAQyI,EAAWD,KACQC,EAAW1H,eAAeyH,IAAOD,EAASjD,EAASkD,EAAMxI,OAGtFuI,GAASjD,EAASoD,EAAK,GAAIA,EAAK,SFmOhC,SAAUvJ,EAAQD,EAASM,GAEjC,YAwBA,SAAS0B,GAAwBC,GAAO,GAAIA,GAAOA,EAAIR,WAAc,MAAOQ,EAAc,IAAIC,KAAa,IAAW,MAAPD,EAAe,IAAK,GAAIE,KAAOF,GAAWd,OAAOS,UAAUC,eAAelB,KAAKsB,EAAKE,KAAMD,EAAOC,GAAOF,EAAIE,GAAgC,OAAtBD,GAAOE,QAAUH,EAAYC,EGjW3P,QAASuH,KAAsC,GAAtBC,GAAsB1G,UAAAC,OAAA,OAAAC,KAAAF,UAAA,GAAAA,UAAA,GAAV,SACtC2G,EAAQ,EACRC,EAAMC,CAUV,OARIC,GAAOjI,eAAe6H,KACxBE,EAAME,EAAOJ,GAAWK,WACxB5I,OAAO4F,KAAKE,GAAOC,QAAQ,SAACzG,GACtBwG,EAAMxG,GAAGuJ,QAAQC,OAASP,GAAczC,EAAMxG,GAAGyJ,QACnDP,QAKJQ,QAAYR,EACZI,WAAYH,GAQT,QAASQ,GAAYC,GACrBP,EAAOjI,eAAewI,EAAIL,QAAQC,SACrCH,EAAOO,EAAIL,QAAQC,QAAUF,WAAYF,EAAmBI,WAE9DH,EAAOO,EAAIL,QAAQC,OAAOA,MAAMK,KAAKD,GAOhC,QAASE,GAAiBF,GAC/B,GAAIP,EAAOjI,eAAewI,EAAIL,QAAQC,OAAQ,CAC5C,GAAMA,KACN9I,QAAO4F,KAAK+C,EAAOO,EAAIL,QAAQC,OAAOA,OAAO/C,QAAQ,SAACzG,GAChDqJ,EAAOO,EAAIL,QAAQC,OAAOA,MAAMxJ,GAAG0C,IAAMkH,EAAIlH,IAC/C8G,EAAMK,KAAKR,EAAOO,EAAIL,QAAQC,OAAOA,MAAMxJ,MAG/CqJ,EAAOO,EAAIL,QAAQC,OAAOA,MAAQA,GAS/B,QAASO,KAAmC,GAAtBd,GAAsB1G,UAAAC,OAAA,OAAAC,KAAAF,UAAA,GAAAA,UAAA,GAAV,QACvC,IAAI8G,EAAOjI,eAAe6H,GAAY,CACpC,GAAMe,GAAOX,EAAOJ,GAAWO,MAAMS,OAEjCD,IACFA,EAAKE,QAQJ,QAASC,GAAUP,GACxB,GAAMQ,GAAUC,EAAMhI,WAAW,SAC7BiI,EAAQhG,SAASiG,cAAc,MACnCD,GAAME,aAAa,KAAMJ,GACzBC,EAAMvD,IAAIwD,GACR5G,OAAQ2G,EAAM5G,YAAYmG,EAAIa,QAAU,OAG1Cb,EAAIa,OAAOC,mBAAmB,WAAYJ,EAAMK,WAEhDN,EAAMnE,OAAO0D,EAAIa,QACjBH,EAAQhG,SAASsG,eAAeR,GAChCC,EAAMzE,SAAS0E,EAAO,2BACtBD,EAAMpG,YAAYqG,EAAOD,EAAMrD,mBAAoB,WACjDqD,EAAMnE,OAAOoE,KAQV,QAASO,GAAOjB,GACrBkB,EAAsBlB,EAEtB,IAAMmB,6BAAmCnB,EAAIL,QAAQyB,KAA/C,SAA4DC,EAAarB,GAAzE,sCAENA,GAAIa,OAASnG,SAASiG,cAAc,OACpCX,EAAIa,OAAOD,aAAa,KAAMZ,EAAIlH,IAClC2H,EAAMzE,SAASgE,EAAIa,OAAnB,uBAAkDb,EAAIL,QAAQ2B,KAA9D,gBAAkFtB,EAAIL,QAAQ4B,OAE9FvB,EAAIa,OAAOW,UAAYL,EAEvBM,EAAKzB,EAAK,cAOL,QAAS0B,GAAY1B,GAC1B,SAAQA,EAAIL,QAAQgC,UAAW7K,OAAO4F,KAAKsD,EAAIL,QAAQgC,SAAS/I,QAOlE,QAASyI,GAAcrB,GACrB,GAAI0B,EAAW1B,GAAM,CACnB,GAAI2B,GAAUjH,SAASiG,cAAc,MAUrC,OATAF,GAAMzE,SAAS2F,EAAS,gBAExB7K,OAAO4F,KAAKsD,EAAIL,QAAQgC,SAAS9E,QAAQ,SAAC/E,GACxC6J,EAAQC,YAAY5B,EAAIL,QAAQgC,QAAQ7J,GAAK+J,OAG/C7B,EAAIL,QAAQgC,QAAQ9E,QAAQ,SAACiF,GAC3BH,EAAQC,YAAYE,EAAID,OAEnBF,EAAQZ,UAEjB,MAAO,GAOT,QAASG,GAAuBlB,GAE9B,GAAIA,EAAIL,QAAQoC,UAGd,MAFA/B,GAAIgC,UAAYtH,SAASuH,cAAcjC,EAAIL,QAAQoC,eACnDG,SAAQC,IAAInC,EAAIgC,UAIlB,IAAMI,mBAA2BpC,EAAIL,QAAQ0C,MAC7CrC,GAAIgC,UAAYtH,SAASuH,cAAT,OAA8BG,GAEzCpC,EAAIgC,YACPhC,EAAIgC,UAAYtH,SAASiG,cAAc,OACvCX,EAAIgC,UAAUpB,aAAa,KAAMwB,GACjC1H,SAASuH,cAAc,QAAQL,YAAY5B,EAAIgC,YAQ5C,QAASM,GAAYtC,GACtBA,EAAIL,QAAQ4C,UAEVvC,EAAIL,QAAQ6C,aAAexC,EAAIyC,aACjChC,EAAMvD,IAAI8C,EAAIyC,aACZC,oBAAqB1C,EAAIL,QAAQ4C,QAAjC,YACAI,MAAY,OAIhB3C,EAAI4C,WAAa9F,WAAW,WAC1BkD,EAAI6C,SACH7C,EAAIL,QAAQ4C,UAQZ,QAASO,GAAc9C,GACxBA,EAAIL,QAAQ4C,SAAWvC,EAAI4C,aAC7BG,aAAa/C,EAAI4C,YACjB5C,EAAI4C,WAAa,EAEb5C,EAAIL,QAAQ6C,aAAexC,EAAIyC,aACjChC,EAAMvD,IAAI8C,EAAIyC,aACZC,WAAY,mBACZC,MAAY,UAWb,QAASlB,GAAMzB,EAAKgD,GACrBhD,EAAIiD,UAAUzL,eAAewL,IAC/BhD,EAAIiD,UAAUD,GAAWnG,QAAQ,SAACtC,GACf,kBAANA,IACTA,EAAG2I,MAAMlD,KASV,QAASmD,GAAUnD,GACxByB,EAAKzB,EAAK,aACVsC,EAAWtC,GAEXS,EAAMpG,YAAY2F,EAAIa,OAAQ,aAAc,WAC1CiC,EAAa9C,KAGfS,EAAMpG,YAAY2F,EAAIa,OAAQ,aAAc,WAC1CyB,EAAWtC,KAQR,QAASoD,GAAWpD,SAClBpD,GAAMoD,EAAIlH,IACjB2I,EAAKzB,EAAK,cAEgD,GAAtDA,EAAIgC,UAAU9G,iBAAiB,aAAatC,QAAgBoH,EAAIL,QAAQoC,WAC1EtB,EAAMnE,OAAO0D,EAAIgC,WAEnB7B,EAAYH,EAAIL,QAAQC,OHsG1B9I,OAAOC,eAAepB,EAAS,cAC7Bc,OAAO,IAETd,EAAQ0N,SAAW1N,EAAQiH,MAAQjH,EAAQ8J,OAAS9J,EAAQ6J,sBAAoB3G,GAChFlD,EGhVgByJ,iBHiVhBzJ,EG3TgBoK,aH4ThBpK,EGjTgBuK,kBHkThBvK,EGjSgBwK,cHkShBxK,EGrRgB4K,WHsRhB5K,EGhQgBsL,QHiQhBtL,EG/OgB+L,aHgPhB/L,EG7LgB2M,aH8LhB3M,EG1KgBmN,eH2KhBnN,EGxJgB8L,OHyJhB9L,EG5IgBwN,WH6IhBxN,EG5HgByN,WA7QhB,IAAAE,GAAArN,EAAA,GAAYwK,EH6YA9I,EAAwB2L,GG3YvB9D,sBAAoB,EAEpBC,YACX8D,QACE7D,WAAYF,EACZI,WAIShD,YAEFyG,aACT/B,KAAa,QACbe,OAAa,WACbd,MAAa,OACbH,KAAa,GACbmB,SAAa,EACbC,aAAa,EACbgB,WAAc,SACdC,WACEC,KAAO,oBACPb,MAAO,sBAET/J,IAAa,EACb6K,OAAa,EACbC,QAAa,EACbhE,MAAa,SACbmC,WAAa,EACbJ,WACAkC,WACEC,WAAY,KACZC,OAAY,KACZC,UAAY,KACZC,QAAY,KACZC,WAAY,KACZC,QAAY,KACZC,WAAY,QHgoBV,SAAUxO,EAAQD,EAASM,GAEjC,YAYA,SAAS0B,GAAwBC,GAAO,GAAIA,GAAOA,EAAIR,WAAc,MAAOQ,EAAc,IAAIC,KAAa,IAAW,MAAPD,EAAe,IAAK,GAAIE,KAAOF,GAAWd,OAAOS,UAAUC,eAAelB,KAAKsB,EAAKE,KAAMD,EAAOC,GAAOF,EAAIE,GAAgC,OAAtBD,GAAOE,QAAUH,EAAYC,EAElQ,QAASwM,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIC,WAAU,qCAXhH1N,OAAOC,eAAepB,EAAS,cAC7Bc,OAAO,IAETd,EAAQ8O,eAAa5L,EI9qBrB,IAAAyK,GAAArN,EAAA,GAAYwK,EJkrBA9I,EAAwB2L,EAMnB3N,GItrBJ8O,WACX,QAAAA,GAAaC,EAAMC,EAASpK,GAAqB,GAAAqK,GAAA7O,KAAjB8O,EAAiBlM,UAAAC,OAAA,OAAAC,KAAAF,UAAA,GAAAA,UAAA,KAU/C,OAV+C0L,GAAAtO,KAAA0O,GAC/C1O,KAAK8L,IAAMnH,SAASiG,cAAc,UAClC5K,KAAK8L,IAAIL,UAAYkD,EACrB3O,KAAK+C,GAAK+L,EAAW/L,GAAK+L,EAAW/L,IAAM2H,EAAMhI,WAAW,UAC5D1C,KAAKwE,GAAKA,EACVzD,OAAO4F,KAAKmI,GAAYhI,QAAQ,SAACiI,GAC/BF,EAAK/C,IAAIjB,aAAakE,EAAcD,EAAWC,MAEjDrE,EAAMzE,SAASjG,KAAK8L,IAAK8C,GAAW,YAE7B5O,OJgsBL,SAAUH,EAAQD,KAMlB,SAAUC,EAAQD,EAASM,GAEjC,YAqBA,SAAS0B,GAAwBC,GAAO,GAAIA,GAAOA,EAAIR,WAAc,MAAOQ,EAAc,IAAIC,KAAa,IAAW,MAAPD,EAAe,IAAK,GAAIE,KAAOF,GAAWd,OAAOS,UAAUC,eAAelB,KAAKsB,EAAKE,KAAMD,EAAOC,GAAOF,EAAIE,GAAgC,OAAtBD,GAAOE,QAAUH,EAAYC,EAElQ,QAASwM,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIC,WAAU,qCApBhH1N,OAAOC,eAAepB,EAAS,cAC7Bc,OAAO,GAGT,IAAIsO,GAAe,WAAc,QAASC,GAAiBtL,EAAQuL,GAAS,IAAK,GAAI7O,GAAI,EAAGA,EAAI6O,EAAMrM,OAAQxC,IAAK,CAAE,GAAI8O,GAAaD,EAAM7O,EAAI8O,GAAWjO,WAAaiO,EAAWjO,aAAc,EAAOiO,EAAWlO,cAAe,EAAU,SAAWkO,KAAYA,EAAWC,UAAW,GAAMrO,OAAOC,eAAe2C,EAAQwL,EAAWpN,IAAKoN,IAAiB,MAAO,UAAUX,EAAaa,EAAYC,GAAiJ,MAA9HD,IAAYJ,EAAiBT,EAAYhN,UAAW6N,GAAiBC,GAAaL,EAAiBT,EAAac,GAAqBd,KK1tBhiBtO,GAAA,EACA,IAAAqN,GAAArN,EAAA,GAAYwK,EL+tBA9I,EAAwB2L,GK9tBpC7F,EAAAxH,EAAA,GAAY0G,ELkuBFhF,EAAwB8F,GKjuBlC6H,EAAArP,EAAA,GAEqBsP,ELuuBV,WKtuBT,QAAAA,KAA2B,GAAd5F,GAAchH,UAAAC,OAAA,OAAAC,KAAAF,UAAA,GAAAA,UAAA,KA2BzB,OA3ByB0L,GAAAtO,KAAAwP,GACzBxP,KAAK4J,QAAUc,EAAMtD,cAAeR,EAAI0G,SAAU1D,GAClD5J,KAAK+C,GAAK/C,KAAK4J,QAAQ7G,IAAM2H,EAAMhI,WAAW,OAC9C1C,KAAK6M,YAAc,EACnB7M,KAAK8K,OAAS,KACd9K,KAAKiM,UAAY,KACjBjM,KAAK0M,YAAc,KACnB1M,KAAKyP,OAAQ,EACbzP,KAAK8J,QAAS,EACd9J,KAAKkN,WACHa,cACAC,UACAC,aACAC,WACAC,cACAC,WACAC,eAGFrO,KAAK0P,GAAG,aAAc1P,KAAK4J,QAAQkE,UAAUC,YAC7C/N,KAAK0P,GAAG,SAAU1P,KAAK4J,QAAQkE,UAAUE,QACzChO,KAAK0P,GAAG,YAAa1P,KAAK4J,QAAQkE,UAAUG,WAC5CjO,KAAK0P,GAAG,UAAW1P,KAAK4J,QAAQkE,UAAUI,SAC1ClO,KAAK0P,GAAG,aAAc1P,KAAK4J,QAAQkE,UAAUK,YAC7CnO,KAAK0P,GAAG,UAAW1P,KAAK4J,QAAQkE,UAAUM,SAC1CpO,KAAK0P,GAAG,aAAc1P,KAAK4J,QAAQkE,UAAUO,YAEtCrO,KLuiCT,MAzTAgP,GAAaQ,IACXzN,IAAK,KACLrB,MAAO,SK7uBLuM,GAA0B,GAAfzI,GAAe5B,UAAAC,OAAA,OAAAC,KAAAF,UAAA,GAAAA,UAAA,GAAV,YAIlB,OAHiB,kBAAN4B,IAAoBxE,KAAKkN,UAAUzL,eAAewL,IAC3DjN,KAAKkN,UAAUD,GAAW/C,KAAK1F,GAE1BxE,QLivBP+B,IAAK,OACLrB,MAAO,WK/uBD,GAAAmO,GAAA7O,IACN,KAA4B,IAAxBA,KAAK4J,QAAQiE,OACf2B,EAAKG,eACA,IAAkC,gBAAvB3P,MAAK4J,QAAQiE,OAC7B2B,EAAKG,SAAS3P,KAAK4J,QAAQiE,YACtB,CACL,GAAI+B,GAAchJ,EAAIyC,eAAerJ,KAAK4J,QAAQC,MAElD,IAAI+F,EAAY7F,SAAW6F,EAAYjG,WAErC,MADA/C,GAAIoD,WAAWhK,MACRA,KA+CX,GA3CA4G,EAAIC,MAAM7G,KAAK+C,IAAM/C,KAErB4G,EAAI8E,KAAK1L,KAAM,cAEf4G,EAAIsE,MAAMlL,MAENA,KAAK4J,QAAQgE,MACf5N,KAAKiM,UAAU4D,aAAa7P,KAAK8K,OAAQ9K,KAAKiM,UAAU6D,YAExD9P,KAAKiM,UAAUJ,YAAY7L,KAAK8K,QAElC9K,KAAKyP,OAAQ,EACbzP,KAAK8J,QAAS,EAGVlD,EAAI+E,WAAW3L,OACjBe,OAAO4F,KAAK3G,KAAK4J,QAAQgC,SAAS9E,QAAQ,SAAC/E,GACzC,GAAMgK,GAAM8C,EAAK/D,OAAOoB,cAAZ,IAA8B2C,EAAKjF,QAAQgC,QAAQ7J,GAAKgB,GACpE2H,GAAMpG,YAAYyH,EAAK,QAAS,SAACgE,GAC/BrF,EAAMrI,gBAAgB0N,GACtBlB,EAAKjF,QAAQgC,QAAQ7J,GAAKyC,SAKhCxE,KAAK0M,YAAc1M,KAAK8K,OAAOoB,cAAc,qBAEzCxB,EAAMzI,QAAQ,QAASjC,KAAK4J,QAAQ6D,aACtC/C,EAAMzE,SAASjG,KAAK8K,OAAQ,yBAC5BJ,EAAMpG,YAAYtE,KAAK8K,OAAQ,QAAS,SAACiF,GACvCrF,EAAMrI,gBAAgB0N,GACtBlB,EAAK/B,UACJ,IAGLpC,EAAMpG,YAAYtE,KAAK8K,OAAQ,aAAc,WAC3ClE,EAAI8E,KAAJmD,EAAe,aACd,GAEC7O,KAAK4J,QAAQ4C,SACf9B,EAAMzE,SAASjG,KAAK8K,OAAQ,oBAG1BJ,EAAMzI,QAAQ,SAAUjC,KAAK4J,QAAQ6D,WAAY,CACnD/C,EAAMzE,SAASjG,KAAK8K,OAAQ,yBAE5B,IAAIkF,GAAcrL,SAASiG,cAAc,MACzCF,GAAMzE,SAAS+J,EAAa,qBAC5BA,EAAYvE,UAAY,IACxBzL,KAAK8K,OAAOe,YAAYmE,GAExBtF,EAAMpG,YAAY0L,EAAa,QAAS,SAACD,GACvCrF,EAAMrI,gBAAgB0N,GACtBlB,EAAK/B,UACJ,GAKL,GAFAlG,EAAI8E,KAAK1L,KAAM,UAEoB,MAA/BA,KAAK4J,QAAQ8D,UAAUC,KAAc,CACvC,GAAMsC,GAAKjQ,IACX+G,YAAW,WACTH,EAAIwG,SAAS6C,IACZ,SACE,IAA0C,kBAA/BjQ,MAAK4J,QAAQ8D,UAAUC,KAAoB,CAC3D3N,KAAK4J,QAAQ8D,UAAUC,KAAKR,MAAMnN,KAClC,IAAMiQ,GAAKjQ,IACX+G,YAAW,WACTH,EAAIwG,SAAS6C,IACZ,SAEHvF,GAAMzE,SAASjG,KAAK8K,OAAQ9K,KAAK4J,QAAQ8D,UAAUC,MACnDjD,EAAMpG,YAAYtE,KAAK8K,OAAQJ,EAAMrD,mBAAoB,WACvDqD,EAAMpE,YAAYuI,EAAK/D,OAAQ+D,EAAKjF,QAAQ8D,UAAUC,MACtD/G,EAAIwG,SAAJyB,IAIJ,OAAO7O,SLmvBP+B,IAAK,OACLrB,MAAO,WK/uBP,MADAkG,GAAImG,aAAa/M,MACVA,QLovBP+B,IAAK,SACLrB,MAAO,WKhvBP,MADAkG,GAAI2F,WAAWvM,MACRA,QLqvBP+B,IAAK,aACLrB,MAAO,SAAUwP,GACf,QAASnJ,GAAWoJ,GAClB,MAAOD,GAAY/C,MAAMnN,KAAM4C,WAOjC,MAJAmE,GAAW3D,SAAW,WACpB,MAAO8M,GAAY9M,YAGd2D,GACP,SK7vBQqJ,GACVpQ,KAAKgH,OACLhH,KAAK4J,QAAQ4C,QAAU4D,EACnBpQ,KAAK4J,QAAQ4C,QACf9B,EAAMzE,SAASjG,KAAK8K,OAAQ,oBAE5BJ,EAAMpE,YAAYtG,KAAK8K,OAAQ,mBAGjC,IAAImF,GAAKjQ,IAKT,OAJA+G,YAAW,WACTkJ,EAAG/I,UACF,KAEIlH,SLiwBP+B,IAAK,UACLrB,MAAO,SK/vBAiO,GAA+B,GAAzB0B,GAAyBzN,UAAAC,OAAA,OAAAC,KAAAF,UAAA,IAAAA,UAAA,EAMtC,OALA5C,MAAK8K,OAAOoB,cAAc,cAAcT,UAAYkD,EAEhD0B,IACFrQ,KAAK4J,QAAQyB,KAAOsD,GAEf3O,QLmwBP+B,IAAK,UACLrB,MAAO,SKjwBA6K,GAA+B,GAAA+E,GAAAtQ,KAAzBqQ,EAAyBzN,UAAAC,OAAA,OAAAC,KAAAF,UAAA,IAAAA,UAAA,EAYtC,OAXgB8H,GAAMhF,UAAU1F,KAAK8K,QAAQpG,MAAM,KACzCoC,QAAQ,SAACrG,GACS,eAAtBA,EAAE4F,UAAU,EAAG,KACjBqE,EAAMpE,YAAYgK,EAAKxF,OAAQrK,KAGnCiK,EAAMzE,SAASjG,KAAK8K,OAApB,cAA0CS,GAEtC8E,IACFrQ,KAAK4J,QAAQ2B,KAAOA,GAEfvL,QLswBP+B,IAAK,WACLrB,MAAO,SKpwBC8K,GAAgC,GAAA+E,GAAAvQ,KAAzBqQ,EAAyBzN,UAAAC,OAAA,OAAAC,KAAAF,UAAA,IAAAA,UAAA,EAYxC,OAXgB8H,GAAMhF,UAAU1F,KAAK8K,QAAQpG,MAAM,KACzCoC,QAAQ,SAACrG,GACS,gBAAtBA,EAAE4F,UAAU,EAAG,KACjBqE,EAAMpE,YAAYiK,EAAKzF,OAAQrK,KAGnCiK,EAAMzE,SAASjG,KAAK8K,OAApB,eAA2CU,GAEvC6E,IACFrQ,KAAK4J,QAAQ4B,MAAQA,GAEhBxL,QL8wBP+B,IAAK,QACLrB,MAAO,WKzwBA,GAAA8P,GAAAxQ,IACP,OAAIA,MAAK8J,OACA9J,KAEJA,KAAKyP,OAKV7I,EAAI8E,KAAK1L,KAAM,WAEqB,MAAhCA,KAAK4J,QAAQ8D,UAAUZ,OACzBpC,EAAMnE,OAAOvG,KAAK8K,QAClBlE,EAAIyG,UAAUrN,OACkC,kBAAhCA,MAAK4J,QAAQ8D,UAAUZ,OACvC9M,KAAK4J,QAAQ8D,UAAUZ,MAAMK,MAAMnN,MACnC4G,EAAIyG,UAAUrN,QAEd0K,EAAMzE,SAASjG,KAAK8K,OAAQ9K,KAAK4J,QAAQ8D,UAAUZ,OACnDpC,EAAMpG,YAAYtE,KAAK8K,OAAQJ,EAAMrD,mBAAoB,WACnDmJ,EAAK5G,QAAQgE,MACflD,EAAMnE,OAAOiK,EAAK1F,QAElBlE,EAAI4D,SAAJgG,GAEF5J,EAAIyG,UAAJmD,MAIJxQ,KAAK8J,QAAS,EAEP9J,OA1BL4G,EAAIuD,gBAAgBnK,MACbA,WL+yBT+B,IAAK,WACLrB,MAAO,WK9wB2B,GAAnB4I,GAAmB1G,UAAAC,OAAA,OAAAC,KAAAF,UAAA,IAAAA,UAAA,EASlC,OARA7B,QAAO4F,KAAKC,EAAIC,OAAOC,QAAQ,SAAC/D,GAC1BuG,EACE1C,EAAIC,MAAM9D,GAAI6G,QAAQC,OAASP,GACjC1C,EAAIC,MAAM9D,GAAI+J,QAEhBlG,EAAIC,MAAM9D,GAAI+J,UAGX9M,QLwxBP+B,IAAK,mBACLrB,MAAO,SKlxBgBmB,GAEvB,MADA+E,GAAI0G,SAAW5C,EAAMtD,cAAeR,EAAI0G,SAAUzL,GAC3C7B,QL4xBP+B,IAAK,gBACLrB,MAAO,WKrxBmE,GAAtD+P,GAAsD7N,UAAAC,OAAA,OAAAC,KAAAF,UAAA,GAAAA,UAAA,GAA7CgE,EAAI6C,kBAAmBH,EAAsB1G,UAAAC,OAAA,OAAAC,KAAAF,UAAA,GAAAA,UAAA,GAAV,QAKhE,OAJKgE,GAAI8C,OAAOjI,eAAe6H,KAC7B1C,EAAI8C,OAAOJ,IAAcK,WAAY8G,EAAQ5G,WAE/CjD,EAAI8C,OAAOJ,GAAWK,WAAa8G,EAC5BzQ,QLmyBP+B,IAAK,SACLrB,MAAO,SK1xBMgQ,GAAgD,GAArC9B,GAAqChM,UAAAC,OAAA,OAAAC,KAAAF,UAAA,GAAAA,UAAA,GAA3B,KAAM4B,EAAqB5B,UAAA,GAAjBkM,EAAiBlM,UAAAC,OAAA,OAAAC,KAAAF,UAAA,GAAAA,UAAA,KAC7D,OAAO,IAAA2M,GAAAb,WAAegC,EAAW9B,EAASpK,EAAIsK,MLiyB9C/M,IAAK,UACLrB,MAAO,WK9xBP,MAAO,YLmyBF8O,IAMT5P,GAAQoC,QKzkCawN,EAqSrB9E,EAAMjE,uBLsyBN5G,EAAOD,QAAUA,EAAiB","file":"noty.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"Noty\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Noty\"] = factory();\n\telse\n\t\troot[\"Noty\"] = factory();\n})(this, function() {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"Noty\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Noty\"] = factory();\n\telse\n\t\troot[\"Noty\"] = factory();\n})(this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 4);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.css = exports.deepExtend = exports.animationEndEvents = undefined;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nexports.inArray = inArray;\nexports.stopPropagation = stopPropagation;\nexports.generateID = generateID;\nexports.delegate = delegate;\nexports.outerHeight = outerHeight;\nexports.addListener = addListener;\nexports.removeListener = removeListener;\nexports.live = live;\nexports.findParent = findParent;\nexports.findChild = findChild;\nexports.hasClass = hasClass;\nexports.addClass = addClass;\nexports.removeClass = removeClass;\nexports.remove = remove;\nexports.classList = classList;\nexports.visibilityChangeFlow = visibilityChangeFlow;\n\nvar _api = __webpack_require__(1);\n\nvar API = _interopRequireWildcard(_api);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\n// shims\nif (window.HTMLElement) {\n HTMLElement.prototype.matches = HTMLElement.prototype.matches || HTMLElement.prototype.matchesSelector || HTMLElement.prototype.webkitMatchesSelector || HTMLElement.prototype.mozMatchesSelector || HTMLElement.prototype.msMatchesSelector || HTMLElement.prototype.oMatchesSelector;\n}\n\nvar animationEndEvents = exports.animationEndEvents = 'webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend';\n\nfunction inArray(needle, haystack, argStrict) {\n var key = '';\n var strict = !!argStrict;\n if (strict) {\n for (key in haystack) {\n if (haystack[key] === needle) {\n return true;\n }\n }\n } else {\n for (key in haystack) {\n if (haystack[key] == needle) {\n return true;\n }\n }\n }\n return false;\n}\n\nfunction stopPropagation(evt) {\n evt = evt || window.event;\n if (typeof evt.stopPropagation !== \"undefined\") {\n evt.stopPropagation();\n } else {\n evt.cancelBubble = true;\n }\n}\n\nvar deepExtend = exports.deepExtend = function deepExtend(out) {\n out = out || {};\n\n for (var i = 1; i < arguments.length; i++) {\n var obj = arguments[i];\n\n if (!obj) continue;\n\n for (var key in obj) {\n if (obj.hasOwnProperty(key)) {\n if (Array.isArray(obj[key])) out[key] = obj[key];else if (_typeof(obj[key]) === 'object' && obj[key] != null) out[key] = deepExtend(out[key], obj[key]);else out[key] = obj[key];\n }\n }\n }\n\n return out;\n};\n\nfunction generateID() {\n var prefix = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n\n var id = 'noty_' + prefix + '_';\n\n id += 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\n var r = Math.random() * 16 | 0,\n v = c == 'x' ? r : r & 0x3 | 0x8;\n return v.toString(16);\n });\n\n return id;\n}\n\n// @todo - [needim] - cross browser test\nfunction delegate(el, evt, sel, handler) {\n el.addEventListener(evt, function (event) {\n var t = event.target;\n while (t && t !== this) {\n if (t.matches(sel)) {\n handler.call(t, event);\n }\n t = t.parentNode;\n }\n });\n}\n\nfunction outerHeight(el) {\n var height = el.offsetHeight;\n var style = getComputedStyle(el);\n\n height += parseInt(style.marginTop) + parseInt(style.marginBottom);\n return height;\n}\n\nvar css = exports.css = function () {\n var cssPrefixes = ['Webkit', 'O', 'Moz', 'ms'],\n cssProps = {};\n\n function camelCase(string) {\n return string.replace(/^-ms-/, 'ms-').replace(/-([\\da-z])/gi, function (match, letter) {\n return letter.toUpperCase();\n });\n }\n\n function getVendorProp(name) {\n var style = document.body.style;\n if (name in style) return name;\n\n var i = cssPrefixes.length,\n capName = name.charAt(0).toUpperCase() + name.slice(1),\n vendorName;\n while (i--) {\n vendorName = cssPrefixes[i] + capName;\n if (vendorName in style) return vendorName;\n }\n\n return name;\n }\n\n function getStyleProp(name) {\n name = camelCase(name);\n return cssProps[name] || (cssProps[name] = getVendorProp(name));\n }\n\n function applyCss(element, prop, value) {\n prop = getStyleProp(prop);\n element.style[prop] = value;\n }\n\n return function (element, properties) {\n var args = arguments,\n prop,\n value;\n\n if (args.length == 2) {\n for (prop in properties) {\n value = properties[prop];\n if (value !== undefined && properties.hasOwnProperty(prop)) applyCss(element, prop, value);\n }\n } else {\n applyCss(element, args[1], args[2]);\n }\n };\n}();\n\nfunction addListener(el, events, cb) {\n var useCapture = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n\n events = events.split(' ');\n for (var i = 0; i < events.length; i++) {\n if (document.addEventListener) {\n el.addEventListener(events[i], cb, useCapture);\n } else if (document.attachEvent) {\n el.attachEvent('on' + events[i], cb);\n }\n }\n}\n\nfunction removeListener(el, events, cb) {\n events = events.split(' ');\n for (var i = 0; i < events.length; i++) {\n if (document.removeEventListener) {\n el.removeEventListener(events[i], cb, false);\n } else if (document.attachEvent) {\n el.attachEvent('on' + events[i], cb);\n }\n }\n}\n\nfunction live(eventType, elementQuerySelector, cb) {\n document.addEventListener(eventType, function (event) {\n var qs = document.querySelectorAll(elementQuerySelector);\n if (qs) {\n var el = event.target;\n var index = void 0;\n while (el && (index = Array.prototype.indexOf.call(qs, el)) === -1) {\n el = el.parentElement;\n }\n\n if (index > -1) {\n cb.call(el, event);\n }\n }\n });\n}\n\nfunction findParent(el, cls) {\n while ((el = el.parentElement) && !el.classList.contains(cls)) {}\n return el;\n}\n\nfunction findChild(el, cls) {\n var children = el.children;\n for (var i = 0; i < children.length; i++) {\n var child = children[i];\n if (child.classList.contains(cls)) {\n return child;\n }\n }\n}\n\nfunction hasClass(element, name) {\n var list = typeof element == 'string' ? element : classList(element);\n return list.indexOf(' ' + name + ' ') >= 0;\n}\n\nfunction addClass(element, name) {\n var oldList = classList(element),\n newList = oldList + name;\n\n if (hasClass(oldList, name)) return;\n\n // Trim the opening space.\n element.className = newList.substring(1);\n}\n\nfunction removeClass(element, name) {\n var oldList = classList(element),\n newList;\n\n if (!hasClass(element, name)) return;\n\n // Replace the class name.\n newList = oldList.replace(' ' + name + ' ', ' ');\n\n // Trim the opening and closing spaces.\n element.className = newList.substring(1, newList.length - 1);\n}\n\nfunction remove(element) {\n element.parentNode.removeChild(element);\n}\n\nfunction classList(element) {\n return (' ' + (element && element.className || '') + ' ').replace(/\\s+/gi, ' ');\n}\n\nfunction visibilityChangeFlow() {\n function stopAll() {\n Object.keys(API.Store).forEach(function (id) {\n if (API.Store.hasOwnProperty(id)) {\n setTimeout(function () {\n API.Store[id].stop();\n }, 100);\n }\n });\n }\n\n function resumeAll() {\n Object.keys(API.Store).forEach(function (id) {\n if (API.Store.hasOwnProperty(id)) {\n setTimeout(function () {\n API.Store[id].resume();\n }, 100);\n }\n });\n }\n\n addListener(window, 'blur', stopAll);\n addListener(window, 'focus', resumeAll);\n}\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Defaults = exports.Store = exports.Queues = exports.DefaultMaxVisible = undefined;\nexports.getQueueCounts = getQueueCounts;\nexports.addToQueue = addToQueue;\nexports.removeFromQueue = removeFromQueue;\nexports.queueRender = queueRender;\nexports.ghostFix = ghostFix;\nexports.build = build;\nexports.hasButtons = hasButtons;\nexports.queueClose = queueClose;\nexports.dequeueClose = dequeueClose;\nexports.fire = fire;\nexports.openFlow = openFlow;\nexports.closeFlow = closeFlow;\n\nvar _utils = __webpack_require__(0);\n\nvar Utils = _interopRequireWildcard(_utils);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nvar DefaultMaxVisible = exports.DefaultMaxVisible = 5;\n\nvar Queues = exports.Queues = {\n global: {\n maxVisible: DefaultMaxVisible,\n queue: []\n }\n};\n\nvar Store = exports.Store = {};\n\nvar Defaults = exports.Defaults = {\n type: 'alert',\n layout: 'topRight',\n theme: 'mint',\n text: '',\n timeout: false,\n progressBar: true,\n closeWith: ['click'],\n animation: {\n open: 'noty_effects_open',\n close: 'noty_effects_close'\n },\n id: false,\n force: false,\n killer: false,\n queue: 'global',\n container: false,\n buttons: [],\n callbacks: {\n beforeShow: null,\n onShow: null,\n afterShow: null,\n onClose: null,\n afterClose: null,\n onHover: null,\n onTemplate: null\n }\n};\n\n/**\n * @param {string} queueName\n * @return {object}\n */\nfunction getQueueCounts() {\n var queueName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'global';\n\n var count = 0;\n var max = DefaultMaxVisible;\n\n if (Queues.hasOwnProperty(queueName)) {\n max = Queues[queueName].maxVisible;\n Object.keys(Store).forEach(function (i) {\n if (Store[i].options.queue == queueName && !Store[i].closed) count++;\n });\n }\n\n return {\n current: count,\n maxVisible: max\n };\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nfunction addToQueue(ref) {\n if (!Queues.hasOwnProperty(ref.options.queue)) Queues[ref.options.queue] = { maxVisible: DefaultMaxVisible, queue: [] };\n\n Queues[ref.options.queue].queue.push(ref);\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nfunction removeFromQueue(ref) {\n if (Queues.hasOwnProperty(ref.options.queue)) {\n var queue = [];\n Object.keys(Queues[ref.options.queue].queue).forEach(function (i) {\n if (Queues[ref.options.queue].queue[i].id != ref.id) {\n queue.push(Queues[ref.options.queue].queue[i]);\n }\n });\n Queues[ref.options.queue].queue = queue;\n }\n}\n\n/**\n * @param {string} queueName\n * @return {void}\n */\nfunction queueRender() {\n var queueName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'global';\n\n if (Queues.hasOwnProperty(queueName)) {\n var noty = Queues[queueName].queue.shift();\n\n if (noty) noty.show();\n }\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nfunction ghostFix(ref) {\n var ghostID = Utils.generateID('ghost');\n var ghost = document.createElement('div');\n ghost.setAttribute('id', ghostID);\n Utils.css(ghost, {\n height: Utils.outerHeight(ref.barDom) + 'px'\n });\n\n ref.barDom.insertAdjacentHTML('afterend', ghost.outerHTML);\n\n Utils.remove(ref.barDom);\n ghost = document.getElementById(ghostID);\n Utils.addClass(ghost, 'noty_fix_effects_height');\n Utils.addListener(ghost, Utils.animationEndEvents, function () {\n Utils.remove(ghost);\n });\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nfunction build(ref) {\n findOrCreateContainer(ref);\n\n var markup = '
' + ref.options.text + '
' + buildButtons(ref) + '
';\n\n ref.barDom = document.createElement('div');\n ref.barDom.setAttribute('id', ref.id);\n Utils.addClass(ref.barDom, 'noty_bar noty_type__' + ref.options.type + ' noty_theme__' + ref.options.theme);\n\n ref.barDom.innerHTML = markup;\n\n fire(ref, 'onTemplate');\n}\n\n/**\n * @param {Noty} ref\n * @return {boolean}\n */\nfunction hasButtons(ref) {\n return ref.options.buttons && Object.keys(ref.options.buttons).length ? true : false;\n}\n\n/**\n * @param {Noty} ref\n * @return {string}\n */\nfunction buildButtons(ref) {\n if (hasButtons(ref)) {\n var buttons = document.createElement('div');\n Utils.addClass(buttons, 'noty_buttons');\n\n Object.keys(ref.options.buttons).forEach(function (key) {\n buttons.appendChild(ref.options.buttons[key].dom);\n });\n\n ref.options.buttons.forEach(function (btn) {\n buttons.appendChild(btn.dom);\n });\n return buttons.outerHTML;\n }\n return '';\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nfunction findOrCreateContainer(ref) {\n\n if (ref.options.container) {\n ref.layoutDom = document.querySelector(ref.options.container);\n console.log(ref.layoutDom);\n return;\n }\n\n var layoutID = 'noty_layout__' + ref.options.layout;\n ref.layoutDom = document.querySelector('div#' + layoutID);\n\n if (!ref.layoutDom) {\n ref.layoutDom = document.createElement('div');\n ref.layoutDom.setAttribute('id', layoutID);\n document.querySelector('body').appendChild(ref.layoutDom);\n }\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nfunction queueClose(ref) {\n if (ref.options.timeout) {\n\n if (ref.options.progressBar && ref.progressDom) {\n Utils.css(ref.progressDom, {\n transition: 'width ' + ref.options.timeout + 'ms linear',\n width: '0%'\n });\n }\n\n ref.closeTimer = setTimeout(function () {\n ref.close();\n }, ref.options.timeout);\n }\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nfunction dequeueClose(ref) {\n if (ref.options.timeout && ref.closeTimer) {\n clearTimeout(ref.closeTimer);\n ref.closeTimer = 0;\n\n if (ref.options.progressBar && ref.progressDom) {\n Utils.css(ref.progressDom, {\n transition: 'width 0ms linear',\n width: '100%'\n });\n }\n }\n}\n\n/**\n * @param {Noty} ref\n * @param {string} eventName\n * @return {void}\n */\nfunction fire(ref, eventName) {\n if (ref.listeners.hasOwnProperty(eventName)) {\n ref.listeners[eventName].forEach(function (cb) {\n if (typeof cb == 'function') cb.apply(ref);\n });\n }\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nfunction openFlow(ref) {\n fire(ref, 'afterShow');\n queueClose(ref);\n\n Utils.addListener(ref.barDom, 'mouseenter', function () {\n dequeueClose(ref);\n });\n\n Utils.addListener(ref.barDom, 'mouseleave', function () {\n queueClose(ref);\n });\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nfunction closeFlow(ref) {\n delete Store[ref.id];\n fire(ref, 'afterClose');\n\n if (ref.layoutDom.querySelectorAll('.noty_bar').length == 0 && !ref.options.container) Utils.remove(ref.layoutDom);\n\n queueRender(ref.options.queue);\n}\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.NotyButton = undefined;\n\nvar _utils = __webpack_require__(0);\n\nvar Utils = _interopRequireWildcard(_utils);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar NotyButton = exports.NotyButton = function NotyButton(html, classes, cb) {\n var _this = this;\n\n var attributes = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n\n _classCallCheck(this, NotyButton);\n\n this.dom = document.createElement('button');\n this.dom.innerHTML = html;\n this.id = attributes.id = attributes.id || Utils.generateID('button');\n this.cb = cb;\n Object.keys(attributes).forEach(function (propertyName) {\n _this.dom.setAttribute(propertyName, attributes[propertyName]);\n });\n Utils.addClass(this.dom, classes || 'noty_btn');\n\n return this;\n};\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports) {\n\n// removed by extract-text-webpack-plugin\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /* global VERSION */\n\n__webpack_require__(3);\n\nvar _utils = __webpack_require__(0);\n\nvar Utils = _interopRequireWildcard(_utils);\n\nvar _api = __webpack_require__(1);\n\nvar API = _interopRequireWildcard(_api);\n\nvar _button = __webpack_require__(2);\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Noty = function () {\n function Noty() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n _classCallCheck(this, Noty);\n\n this.options = Utils.deepExtend({}, API.Defaults, options);\n this.id = this.options.id || Utils.generateID('bar');\n this.closeTimer = -1;\n this.barDom = null;\n this.layoutDom = null;\n this.progressDom = null;\n this.shown = false;\n this.closed = false;\n this.listeners = {\n beforeShow: [],\n onShow: [],\n afterShow: [],\n onClose: [],\n afterClose: [],\n onHover: [],\n onTemplate: []\n };\n\n this.on('beforeShow', this.options.callbacks.beforeShow);\n this.on('onShow', this.options.callbacks.onShow);\n this.on('afterShow', this.options.callbacks.afterShow);\n this.on('onClose', this.options.callbacks.onClose);\n this.on('afterClose', this.options.callbacks.afterClose);\n this.on('onHover', this.options.callbacks.onHover);\n this.on('onTemplate', this.options.callbacks.onTemplate);\n\n return this;\n }\n\n _createClass(Noty, [{\n key: 'on',\n value: function on(eventName) {\n var cb = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function () {};\n\n if (typeof cb == 'function' && this.listeners.hasOwnProperty(eventName)) this.listeners[eventName].push(cb);\n\n return this;\n }\n }, {\n key: 'show',\n value: function show() {\n var _this = this;\n\n if (this.options.killer === true) {\n Noty.closeAll();\n } else if (typeof this.options.killer == 'string') {\n Noty.closeAll(this.options.killer);\n } else {\n var queueCounts = API.getQueueCounts(this.options.queue);\n\n if (queueCounts.current >= queueCounts.maxVisible) {\n API.addToQueue(this);\n return this;\n }\n }\n\n API.Store[this.id] = this;\n\n API.fire(this, 'beforeShow');\n\n API.build(this);\n\n if (this.options.force) this.layoutDom.insertBefore(this.barDom, this.layoutDom.firstChild);else this.layoutDom.appendChild(this.barDom);\n\n this.shown = true;\n this.closed = false;\n\n // bind button events if any\n if (API.hasButtons(this)) {\n Object.keys(this.options.buttons).forEach(function (key) {\n var btn = _this.barDom.querySelector('#' + _this.options.buttons[key].id);\n Utils.addListener(btn, 'click', function (e) {\n Utils.stopPropagation(e);\n _this.options.buttons[key].cb();\n });\n });\n }\n\n this.progressDom = this.barDom.querySelector('.noty_progressbar');\n\n if (Utils.inArray('click', this.options.closeWith)) {\n Utils.addClass(this.barDom, 'noty_close_with_click');\n Utils.addListener(this.barDom, 'click', function (e) {\n Utils.stopPropagation(e);\n _this.close();\n }, false);\n }\n\n Utils.addListener(this.barDom, 'mouseenter', function () {\n API.fire(_this, 'onHover');\n }, false);\n\n if (this.options.timeout) {\n Utils.addClass(this.barDom, 'noty_has_timeout');\n }\n\n if (Utils.inArray('button', this.options.closeWith)) {\n Utils.addClass(this.barDom, 'noty_close_with_button');\n\n var closeButton = document.createElement('div');\n Utils.addClass(closeButton, 'noty_close_button');\n closeButton.innerHTML = '×';\n this.barDom.appendChild(closeButton);\n\n Utils.addListener(closeButton, 'click', function (e) {\n Utils.stopPropagation(e);\n _this.close();\n }, false);\n }\n\n API.fire(this, 'onShow');\n\n if (this.options.animation.open == null) {\n var _t = this;\n setTimeout(function () {\n // ugly fix for progressbar display bug\n API.openFlow(_t);\n }, 100);\n } else if (typeof this.options.animation.open == 'function') {\n this.options.animation.open.apply(this);\n var _t2 = this;\n setTimeout(function () {\n // ugly fix for progressbar display bug\n API.openFlow(_t2);\n }, 100);\n } else {\n Utils.addClass(this.barDom, this.options.animation.open);\n Utils.addListener(this.barDom, Utils.animationEndEvents, function () {\n Utils.removeClass(_this.barDom, _this.options.animation.open);\n API.openFlow(_this);\n });\n }\n\n return this;\n }\n }, {\n key: 'stop',\n value: function stop() {\n API.dequeueClose(this);\n return this;\n }\n }, {\n key: 'resume',\n value: function resume() {\n API.queueClose(this);\n return this;\n }\n }, {\n key: 'setTimeout',\n value: function (_setTimeout) {\n function setTimeout(_x) {\n return _setTimeout.apply(this, arguments);\n }\n\n setTimeout.toString = function () {\n return _setTimeout.toString();\n };\n\n return setTimeout;\n }(function (ms) {\n this.stop();\n this.options.timeout = ms;\n if (this.options.timeout) {\n Utils.addClass(this.barDom, 'noty_has_timeout');\n } else {\n Utils.removeClass(this.barDom, 'noty_has_timeout');\n }\n\n var _t = this;\n setTimeout(function () {\n // ugly fix for progressbar display bug\n _t.resume();\n }, 100);\n\n return this;\n })\n }, {\n key: 'setText',\n value: function setText(html) {\n var optionsOverride = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n this.barDom.querySelector('.noty_body').innerHTML = html;\n\n if (optionsOverride) this.options.text = html;\n\n return this;\n }\n }, {\n key: 'setType',\n value: function setType(type) {\n var _this2 = this;\n\n var optionsOverride = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var classList = Utils.classList(this.barDom).split(' ');\n classList.forEach(function (c) {\n if (c.substring(0, 11) == 'noty_type__') Utils.removeClass(_this2.barDom, c);\n });\n\n Utils.addClass(this.barDom, 'noty_type__' + type);\n\n if (optionsOverride) this.options.type = type;\n\n return this;\n }\n }, {\n key: 'setTheme',\n value: function setTheme(theme) {\n var _this3 = this;\n\n var optionsOverride = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var classList = Utils.classList(this.barDom).split(' ');\n classList.forEach(function (c) {\n if (c.substring(0, 12) == 'noty_theme__') Utils.removeClass(_this3.barDom, c);\n });\n\n Utils.addClass(this.barDom, 'noty_theme__' + theme);\n\n if (optionsOverride) this.options.theme = theme;\n\n return this;\n }\n\n /**\n * @return {Noty}\n */\n\n }, {\n key: 'close',\n value: function close() {\n var _this4 = this;\n\n if (this.closed) return this;\n\n if (!this.shown) {\n // it's in the queue\n API.removeFromQueue(this);\n return this;\n }\n\n API.fire(this, 'onClose');\n\n if (this.options.animation.close == null) {\n Utils.remove(this.barDom);\n API.closeFlow(this);\n } else if (typeof this.options.animation.close == 'function') {\n this.options.animation.close.apply(this);\n API.closeFlow(this);\n } else {\n Utils.addClass(this.barDom, this.options.animation.close);\n Utils.addListener(this.barDom, Utils.animationEndEvents, function () {\n if (_this4.options.force) {\n Utils.remove(_this4.barDom);\n } else {\n API.ghostFix(_this4);\n }\n API.closeFlow(_this4);\n });\n }\n\n this.closed = true;\n\n return this;\n }\n\n // API functions\n\n /**\n * @param {boolean|string} queueName\n * @return {Noty}\n */\n\n }], [{\n key: 'closeAll',\n value: function closeAll() {\n var queueName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n Object.keys(API.Store).forEach(function (id) {\n if (queueName) {\n if (API.Store[id].options.queue == queueName) API.Store[id].close();\n } else {\n API.Store[id].close();\n }\n });\n return this;\n }\n\n /**\n * @param {Object} obj\n * @return {Noty}\n */\n\n }, {\n key: 'overrideDefaults',\n value: function overrideDefaults(obj) {\n API.Defaults = Utils.deepExtend({}, API.Defaults, obj);\n return this;\n }\n\n /**\n * @param {int} amount\n * @param {string} queueName\n * @return {Noty}\n */\n\n }, {\n key: 'setMaxVisible',\n value: function setMaxVisible() {\n var amount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : API.DefaultMaxVisible;\n var queueName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'global';\n\n if (!API.Queues.hasOwnProperty(queueName)) API.Queues[queueName] = { maxVisible: amount, queue: [] };\n\n API.Queues[queueName].maxVisible = amount;\n return this;\n }\n\n /**\n * @param {string} innerHtml\n * @param {String} classes\n * @param {Function} cb\n * @param {Object} attributes\n * @return {NotyButton}\n */\n\n }, {\n key: 'button',\n value: function button(innerHtml) {\n var classes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n var cb = arguments[2];\n var attributes = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n\n return new _button.NotyButton(innerHtml, classes, cb, attributes);\n }\n }, {\n key: 'version',\n value: function version() {\n return \"3.0.1\";\n }\n }]);\n\n return Noty;\n}();\n\n// Document visibility change controller\n\n\nexports.default = Noty;\nUtils.visibilityChangeFlow();\nmodule.exports = exports['default'];\n\n/***/ })\n/******/ ]);\n});\n\n\n// WEBPACK FOOTER //\n// noty.min.js"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 4);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap f1ec92ba12822f8fc6dd","import * as API from 'api';\n\n// shims\nif (window.HTMLElement) {\n HTMLElement.prototype.matches =\n HTMLElement.prototype.matches ||\n HTMLElement.prototype.matchesSelector ||\n HTMLElement.prototype.webkitMatchesSelector ||\n HTMLElement.prototype.mozMatchesSelector ||\n HTMLElement.prototype.msMatchesSelector ||\n HTMLElement.prototype.oMatchesSelector;\n}\n\nexport const animationEndEvents = 'webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend';\n\nexport function inArray (needle, haystack, argStrict) {\n var key = '';\n var strict = !!argStrict;\n if (strict) {\n for (key in haystack) {\n if (haystack[key] === needle) {\n return true\n }\n }\n } else {\n for (key in haystack) {\n if (haystack[key] == needle) {\n return true\n }\n }\n }\n return false\n}\n\nexport function stopPropagation (evt) {\n evt = evt || window.event;\n if (typeof evt.stopPropagation !== \"undefined\") {\n evt.stopPropagation();\n }\n else {\n evt.cancelBubble = true;\n }\n}\n\nexport const deepExtend = function (out) {\n out = out || {};\n\n for (var i = 1; i < arguments.length; i++) {\n var obj = arguments[i];\n\n if (!obj)\n continue;\n\n for (var key in obj) {\n if (obj.hasOwnProperty(key)) {\n if (Array.isArray(obj[key]))\n out[key] = obj[key];\n else if (typeof obj[key] === 'object' && obj[key] != null)\n out[key] = deepExtend(out[key], obj[key]);\n else\n out[key] = obj[key];\n }\n }\n }\n\n return out;\n};\n\nexport function generateID (prefix = '') {\n let id = `noty_${prefix}_`;\n\n id += 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\n var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);\n return v.toString(16);\n });\n\n return id;\n}\n\n// @todo - [needim] - cross browser test\nexport function delegate (el, evt, sel, handler) {\n el.addEventListener(evt, function (event) {\n var t = event.target;\n while (t && t !== this) {\n if (t.matches(sel)) {\n handler.call(t, event);\n }\n t = t.parentNode;\n }\n });\n}\n\nexport function outerHeight (el) {\n var height = el.offsetHeight;\n var style = getComputedStyle(el);\n\n height += parseInt(style.marginTop) + parseInt(style.marginBottom);\n return height;\n}\n\nexport let css = (function () {\n var cssPrefixes = ['Webkit', 'O', 'Moz', 'ms'],\n cssProps = {};\n\n function camelCase (string) {\n return string.replace(/^-ms-/, 'ms-').replace(/-([\\da-z])/gi, function (match, letter) {\n return letter.toUpperCase();\n });\n }\n\n function getVendorProp (name) {\n var style = document.body.style;\n if (name in style) return name;\n\n var i = cssPrefixes.length,\n capName = name.charAt(0).toUpperCase() + name.slice(1),\n vendorName;\n while (i--) {\n vendorName = cssPrefixes[i] + capName;\n if (vendorName in style) return vendorName;\n }\n\n return name;\n }\n\n function getStyleProp (name) {\n name = camelCase(name);\n return cssProps[name] || (cssProps[name] = getVendorProp(name));\n }\n\n function applyCss (element, prop, value) {\n prop = getStyleProp(prop);\n element.style[prop] = value;\n }\n\n return function (element, properties) {\n var args = arguments,\n prop,\n value;\n\n if (args.length == 2) {\n for (prop in properties) {\n value = properties[prop];\n if (value !== undefined && properties.hasOwnProperty(prop)) applyCss(element, prop, value);\n }\n } else {\n applyCss(element, args[1], args[2]);\n }\n }\n})();\n\nexport function addListener (el, events, cb, useCapture = false) {\n events = events.split(' ');\n for (var i = 0; i < events.length; i++) {\n if (document.addEventListener) {\n el.addEventListener(events[i], cb, useCapture);\n } else if (document.attachEvent) {\n el.attachEvent('on' + events[i], cb);\n }\n }\n}\n\nexport function removeListener (el, events, cb) {\n events = events.split(' ');\n for (var i = 0; i < events.length; i++) {\n if (document.removeEventListener) {\n el.removeEventListener(events[i], cb, false);\n } else if (document.attachEvent) {\n el.attachEvent('on' + events[i], cb);\n }\n }\n}\n\nexport function live (eventType, elementQuerySelector, cb) {\n document.addEventListener(eventType, (event) => {\n var qs = document.querySelectorAll(elementQuerySelector);\n if (qs) {\n let el = event.target;\n let index;\n while (el && ((index = Array.prototype.indexOf.call(qs, el)) === -1)) {\n el = el.parentElement;\n }\n\n if (index > -1) {\n cb.call(el, event);\n }\n }\n });\n}\n\nexport function findParent (el, cls) {\n while ((el = el.parentElement) && !el.classList.contains(cls));\n return el;\n}\n\nexport function findChild (el, cls) {\n var children = el.children;\n for (var i = 0; i < children.length; i++) {\n var child = children[i];\n if (child.classList.contains(cls)) {\n return child;\n }\n }\n}\n\nexport function hasClass (element, name) {\n var list = typeof element == 'string' ? element : classList(element);\n return list.indexOf(' ' + name + ' ') >= 0;\n}\n\nexport function addClass (element, name) {\n var oldList = classList(element),\n newList = oldList + name;\n\n if (hasClass(oldList, name)) return;\n\n // Trim the opening space.\n element.className = newList.substring(1);\n}\n\nexport function removeClass (element, name) {\n var oldList = classList(element),\n newList;\n\n if (!hasClass(element, name)) return;\n\n // Replace the class name.\n newList = oldList.replace(' ' + name + ' ', ' ');\n\n // Trim the opening and closing spaces.\n element.className = newList.substring(1, newList.length - 1);\n}\n\nexport function remove (element) {\n element.parentNode.removeChild(element);\n}\n\nexport function classList (element) {\n return (' ' + (element && element.className || '') + ' ').replace(/\\s+/gi, ' ');\n}\n\nexport function visibilityChangeFlow () {\n function stopAll () {\n Object.keys(API.Store).forEach((id) => {\n if (API.Store.hasOwnProperty(id)) {\n setTimeout(function () {\n API.Store[id].stop();\n }, 100);\n }\n });\n }\n\n function resumeAll () {\n Object.keys(API.Store).forEach((id) => {\n if (API.Store.hasOwnProperty(id)) {\n setTimeout(function () {\n API.Store[id].resume();\n }, 100);\n }\n });\n }\n\n addListener(window, 'blur', stopAll);\n addListener(window, 'focus', resumeAll);\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils.js","import * as Utils from 'utils';\n\nexport const DefaultMaxVisible = 5;\n\nexport const Queues = {\n global: {\n maxVisible: DefaultMaxVisible,\n queue : []\n }\n};\n\nexport const Store = {};\n\nexport let Defaults = {\n type : 'alert',\n layout : 'topRight',\n theme : 'mint',\n text : '',\n timeout : false,\n progressBar: true,\n closeWith : ['click'],\n animation : {\n open : 'noty_effects_open',\n close: 'noty_effects_close'\n },\n id : false,\n force : false,\n killer : false,\n queue : 'global',\n container : false,\n buttons : [],\n callbacks : {\n beforeShow: null,\n onShow : null,\n afterShow : null,\n onClose : null,\n afterClose: null,\n onHover : null,\n onTemplate: null\n }\n};\n\n/**\n * @param {string} queueName\n * @return {object}\n */\nexport function getQueueCounts (queueName = 'global') {\n let count = 0;\n let max = DefaultMaxVisible;\n\n if (Queues.hasOwnProperty(queueName)) {\n max = Queues[queueName].maxVisible;\n Object.keys(Store).forEach((i) => {\n if (Store[i].options.queue == queueName && !Store[i].closed)\n count++;\n });\n }\n\n return {\n current : count,\n maxVisible: max\n };\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nexport function addToQueue (ref) {\n if (!Queues.hasOwnProperty(ref.options.queue))\n Queues[ref.options.queue] = {maxVisible: DefaultMaxVisible, queue: []};\n\n Queues[ref.options.queue].queue.push(ref);\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nexport function removeFromQueue (ref) {\n if (Queues.hasOwnProperty(ref.options.queue)) {\n const queue = [];\n Object.keys(Queues[ref.options.queue].queue).forEach((i) => {\n if (Queues[ref.options.queue].queue[i].id != ref.id) {\n queue.push(Queues[ref.options.queue].queue[i]);\n }\n });\n Queues[ref.options.queue].queue = queue;\n }\n}\n\n\n/**\n * @param {string} queueName\n * @return {void}\n */\nexport function queueRender (queueName = 'global') {\n if (Queues.hasOwnProperty(queueName)) {\n const noty = Queues[queueName].queue.shift();\n\n if (noty)\n noty.show();\n }\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nexport function ghostFix (ref) {\n const ghostID = Utils.generateID('ghost');\n let ghost = document.createElement('div');\n ghost.setAttribute('id', ghostID);\n Utils.css(ghost, {\n height: Utils.outerHeight(ref.barDom) + 'px'\n });\n\n ref.barDom.insertAdjacentHTML('afterend', ghost.outerHTML);\n\n Utils.remove(ref.barDom);\n ghost = document.getElementById(ghostID);\n Utils.addClass(ghost, 'noty_fix_effects_height');\n Utils.addListener(ghost, Utils.animationEndEvents, () => {\n Utils.remove(ghost);\n });\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nexport function build (ref) {\n findOrCreateContainer(ref);\n\n const markup = `
${ref.options.text}
${buildButtons(ref)}
`;\n\n ref.barDom = document.createElement('div');\n ref.barDom.setAttribute('id', ref.id);\n Utils.addClass(ref.barDom, `noty_bar noty_type__${ref.options.type} noty_theme__${ref.options.theme}`);\n\n ref.barDom.innerHTML = markup;\n\n fire(ref, 'onTemplate');\n}\n\n/**\n * @param {Noty} ref\n * @return {boolean}\n */\nexport function hasButtons (ref) {\n return (ref.options.buttons && Object.keys(ref.options.buttons).length) ? true : false;\n}\n\n/**\n * @param {Noty} ref\n * @return {string}\n */\nfunction buildButtons (ref) {\n if (hasButtons(ref)) {\n let buttons = document.createElement('div');\n Utils.addClass(buttons, 'noty_buttons');\n\n Object.keys(ref.options.buttons).forEach((key) => {\n buttons.appendChild(ref.options.buttons[key].dom);\n });\n\n ref.options.buttons.forEach((btn) => {\n buttons.appendChild(btn.dom);\n });\n return buttons.outerHTML;\n }\n return '';\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nfunction findOrCreateContainer (ref) {\n\n if (ref.options.container) {\n ref.layoutDom = document.querySelector(ref.options.container);\n console.log(ref.layoutDom);\n return;\n }\n\n const layoutID = `noty_layout__${ref.options.layout}`;\n ref.layoutDom = document.querySelector(`div#${layoutID}`);\n\n if (!ref.layoutDom) {\n ref.layoutDom = document.createElement('div');\n ref.layoutDom.setAttribute('id', layoutID);\n document.querySelector('body').appendChild(ref.layoutDom);\n }\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nexport function queueClose (ref) {\n if (ref.options.timeout) {\n\n if (ref.options.progressBar && ref.progressDom) {\n Utils.css(ref.progressDom, {\n transition: `width ${ref.options.timeout}ms linear`,\n width : '0%'\n });\n }\n\n ref.closeTimer = setTimeout(() => {\n ref.close();\n }, ref.options.timeout);\n }\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nexport function dequeueClose (ref) {\n if (ref.options.timeout && ref.closeTimer) {\n clearTimeout(ref.closeTimer);\n ref.closeTimer = 0;\n\n if (ref.options.progressBar && ref.progressDom) {\n Utils.css(ref.progressDom, {\n transition: 'width 0ms linear',\n width : '100%'\n });\n }\n }\n}\n\n/**\n * @param {Noty} ref\n * @param {string} eventName\n * @return {void}\n */\nexport function fire (ref, eventName) {\n if (ref.listeners.hasOwnProperty(eventName)) {\n ref.listeners[eventName].forEach((cb) => {\n if (typeof cb == 'function')\n cb.apply(ref);\n });\n }\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nexport function openFlow (ref) {\n fire(ref, 'afterShow');\n queueClose(ref);\n\n Utils.addListener(ref.barDom, 'mouseenter', () => {\n dequeueClose(ref);\n });\n\n Utils.addListener(ref.barDom, 'mouseleave', () => {\n queueClose(ref);\n });\n}\n\n/**\n * @param {Noty} ref\n * @return {void}\n */\nexport function closeFlow (ref) {\n delete Store[ref.id];\n fire(ref, 'afterClose');\n\n if (ref.layoutDom.querySelectorAll('.noty_bar').length == 0 && !ref.options.container)\n Utils.remove(ref.layoutDom);\n\n queueRender(ref.options.queue);\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/api.js","import * as Utils from 'utils';\n\nexport class NotyButton {\n constructor (html, classes, cb, attributes = {}) {\n this.dom = document.createElement('button');\n this.dom.innerHTML = html;\n this.id = attributes.id = attributes.id || Utils.generateID('button');\n this.cb = cb;\n Object.keys(attributes).forEach((propertyName) => {\n this.dom.setAttribute(propertyName, attributes[propertyName]);\n });\n Utils.addClass(this.dom, classes || 'noty_btn');\n\n return this;\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/button.js","/* global VERSION */\n\nimport 'noty.scss';\nimport * as Utils from 'utils';\nimport * as API from 'api';\nimport { NotyButton } from 'button';\n\nexport default class Noty {\n constructor (options = {}) {\n this.options = Utils.deepExtend({}, API.Defaults, options);\n this.id = this.options.id || Utils.generateID('bar');\n this.closeTimer = -1;\n this.barDom = null;\n this.layoutDom = null;\n this.progressDom = null;\n this.shown = false;\n this.closed = false;\n this.listeners = {\n beforeShow: [],\n onShow : [],\n afterShow : [],\n onClose : [],\n afterClose: [],\n onHover : [],\n onTemplate: []\n };\n\n this.on('beforeShow', this.options.callbacks.beforeShow);\n this.on('onShow', this.options.callbacks.onShow);\n this.on('afterShow', this.options.callbacks.afterShow);\n this.on('onClose', this.options.callbacks.onClose);\n this.on('afterClose', this.options.callbacks.afterClose);\n this.on('onHover', this.options.callbacks.onHover);\n this.on('onTemplate', this.options.callbacks.onTemplate);\n\n return this;\n }\n\n on (eventName, cb = () => {}) {\n if (typeof cb == 'function' && this.listeners.hasOwnProperty(eventName))\n this.listeners[eventName].push(cb);\n\n return this;\n }\n\n show () {\n if (this.options.killer === true) {\n Noty.closeAll();\n } else if (typeof this.options.killer == 'string') {\n Noty.closeAll(this.options.killer);\n } else {\n let queueCounts = API.getQueueCounts(this.options.queue);\n\n if (queueCounts.current >= queueCounts.maxVisible) {\n API.addToQueue(this);\n return this;\n }\n }\n\n API.Store[this.id] = this;\n\n API.fire(this, 'beforeShow');\n\n API.build(this);\n\n if (this.options.force)\n this.layoutDom.insertBefore(this.barDom, this.layoutDom.firstChild);\n else\n this.layoutDom.appendChild(this.barDom);\n\n this.shown = true;\n this.closed = false;\n\n // bind button events if any\n if (API.hasButtons(this)) {\n Object.keys(this.options.buttons).forEach((key) => {\n const btn = this.barDom.querySelector(`#${this.options.buttons[key].id}`);\n Utils.addListener(btn, 'click', (e) => {\n Utils.stopPropagation(e);\n this.options.buttons[key].cb();\n });\n });\n }\n\n this.progressDom = this.barDom.querySelector('.noty_progressbar');\n\n if (Utils.inArray('click', this.options.closeWith)) {\n Utils.addClass(this.barDom, 'noty_close_with_click');\n Utils.addListener(this.barDom, 'click', (e) => {\n Utils.stopPropagation(e);\n this.close();\n }, false);\n }\n\n Utils.addListener(this.barDom, 'mouseenter', () => {\n API.fire(this, 'onHover');\n }, false);\n\n if (this.options.timeout) {\n Utils.addClass(this.barDom, 'noty_has_timeout');\n }\n\n if (Utils.inArray('button', this.options.closeWith)) {\n Utils.addClass(this.barDom, 'noty_close_with_button');\n\n let closeButton = document.createElement('div');\n Utils.addClass(closeButton, 'noty_close_button');\n closeButton.innerHTML = '×';\n this.barDom.appendChild(closeButton);\n\n Utils.addListener(closeButton, 'click', (e) => {\n Utils.stopPropagation(e);\n this.close();\n }, false);\n }\n\n API.fire(this, 'onShow');\n\n if (this.options.animation.open == null) {\n const _t = this;\n setTimeout(function() { // ugly fix for progressbar display bug\n API.openFlow(_t);\n }, 100);\n } else if (typeof this.options.animation.open == 'function') {\n this.options.animation.open.apply(this);\n const _t = this;\n setTimeout(function() { // ugly fix for progressbar display bug\n API.openFlow(_t);\n }, 100);\n } else {\n Utils.addClass(this.barDom, this.options.animation.open);\n Utils.addListener(this.barDom, Utils.animationEndEvents, () => {\n Utils.removeClass(this.barDom, this.options.animation.open);\n API.openFlow(this);\n });\n }\n\n return this;\n }\n\n stop () {\n API.dequeueClose(this);\n return this;\n }\n\n resume () {\n API.queueClose(this);\n return this;\n }\n\n setTimeout (ms) {\n this.stop();\n this.options.timeout = ms;\n if (this.options.timeout) {\n Utils.addClass(this.barDom, 'noty_has_timeout');\n } else {\n Utils.removeClass(this.barDom, 'noty_has_timeout');\n }\n\n var _t = this;\n setTimeout(function() { // ugly fix for progressbar display bug\n _t.resume();\n }, 100);\n\n return this;\n }\n\n setText (html, optionsOverride = false) {\n this.barDom.querySelector('.noty_body').innerHTML = html;\n\n if (optionsOverride)\n this.options.text = html;\n\n return this;\n }\n\n setType (type, optionsOverride = false) {\n let classList = Utils.classList(this.barDom).split(' ');\n classList.forEach((c) => {\n if (c.substring(0, 11) == 'noty_type__')\n Utils.removeClass(this.barDom, c);\n });\n\n Utils.addClass(this.barDom, `noty_type__${type}`);\n\n if (optionsOverride)\n this.options.type = type;\n\n return this;\n }\n\n setTheme (theme, optionsOverride = false) {\n let classList = Utils.classList(this.barDom).split(' ');\n classList.forEach((c) => {\n if (c.substring(0, 12) == 'noty_theme__')\n Utils.removeClass(this.barDom, c);\n });\n\n Utils.addClass(this.barDom, `noty_theme__${theme}`);\n\n if (optionsOverride)\n this.options.theme = theme;\n\n return this;\n }\n\n /**\n * @return {Noty}\n */\n close () {\n if (this.closed)\n return this;\n\n if (!this.shown) { // it's in the queue\n API.removeFromQueue(this);\n return this;\n }\n\n API.fire(this, 'onClose');\n\n if (this.options.animation.close == null) {\n Utils.remove(this.barDom);\n API.closeFlow(this);\n } else if (typeof this.options.animation.close == 'function') {\n this.options.animation.close.apply(this);\n API.closeFlow(this);\n } else {\n Utils.addClass(this.barDom, this.options.animation.close);\n Utils.addListener(this.barDom, Utils.animationEndEvents, () => {\n if (this.options.force) {\n Utils.remove(this.barDom);\n } else {\n API.ghostFix(this);\n }\n API.closeFlow(this);\n });\n }\n\n this.closed = true;\n\n return this;\n }\n\n // API functions\n\n /**\n * @param {boolean|string} queueName\n * @return {Noty}\n */\n static closeAll (queueName = false) {\n Object.keys(API.Store).forEach((id) => {\n if (queueName) {\n if (API.Store[id].options.queue == queueName)\n API.Store[id].close();\n } else {\n API.Store[id].close();\n }\n });\n return this;\n }\n\n /**\n * @param {Object} obj\n * @return {Noty}\n */\n static overrideDefaults (obj) {\n API.Defaults = Utils.deepExtend({}, API.Defaults, obj);\n return this;\n }\n\n /**\n * @param {int} amount\n * @param {string} queueName\n * @return {Noty}\n */\n static setMaxVisible (amount = API.DefaultMaxVisible, queueName = 'global') {\n if (!API.Queues.hasOwnProperty(queueName))\n API.Queues[queueName] = {maxVisible: amount, queue: []};\n\n API.Queues[queueName].maxVisible = amount;\n return this;\n }\n\n /**\n * @param {string} innerHtml\n * @param {String} classes\n * @param {Function} cb\n * @param {Object} attributes\n * @return {NotyButton}\n */\n static button (innerHtml, classes = null, cb, attributes = {}) {\n return new NotyButton(innerHtml, classes, cb, attributes);\n }\n\n static version () {\n return VERSION;\n }\n}\n\n// Document visibility change controller\nUtils.visibilityChangeFlow();\n\n\n\n// WEBPACK FOOTER //\n// ./src/index.js"],"sourceRoot":""}