diff options
author | Mark Otto <markdotto@gmail.com> | 2016-11-29 04:18:44 +0300 |
---|---|---|
committer | Mark Otto <markdotto@gmail.com> | 2016-11-29 04:18:44 +0300 |
commit | 9749bab4ce07c655231cc13c1539f37d751e856b (patch) | |
tree | 9210818c8eab542f8c0f14554786d6b39362c39c /js | |
parent | 339f8c3c48091675ffabff5663d78b34de88bcb4 (diff) |
grunt
Diffstat (limited to 'js')
-rw-r--r-- | js/dist/modal.js | 5 | ||||
-rw-r--r-- | js/dist/modal.js.map | 2 |
2 files changed, 2 insertions, 5 deletions
diff --git a/js/dist/modal.js b/js/dist/modal.js index a517c26f82..68880ad58a 100644 --- a/js/dist/modal.js +++ b/js/dist/modal.js @@ -181,10 +181,7 @@ var Modal = function ($) { Modal.prototype.dispose = function dispose() { $.removeData(this._element, DATA_KEY); - $(window).off(EVENT_KEY); - $(document).off(EVENT_KEY); - $(this._element).off(EVENT_KEY); - $(this._backdrop).off(EVENT_KEY); + $(window, document, this._element, this._backdrop).off(EVENT_KEY); this._config = null; this._element = null; diff --git a/js/dist/modal.js.map b/js/dist/modal.js.map index 2fcebaddde..9a57775030 100644 --- a/js/dist/modal.js.map +++ b/js/dist/modal.js.map @@ -1 +1 @@ -{"version":3,"sources":["../src/modal.js"],"names":["Modal","$","NAME","VERSION","DATA_KEY","EVENT_KEY","DATA_API_KEY","JQUERY_NO_CONFLICT","fn","TRANSITION_DURATION","BACKDROP_TRANSITION_DURATION","ESCAPE_KEYCODE","Default","backdrop","keyboard","focus","show","DefaultType","Event","HIDE","HIDDEN","SHOW","SHOWN","FOCUSIN","RESIZE","CLICK_DISMISS","KEYDOWN_DISMISS","MOUSEUP_DISMISS","MOUSEDOWN_DISMISS","CLICK_DATA_API","ClassName","SCROLLBAR_MEASURER","BACKDROP","OPEN","FADE","ACTIVE","Selector","DIALOG","DATA_TOGGLE","DATA_DISMISS","FIXED_CONTENT","element","config","_config","_getConfig","_element","_dialog","find","_backdrop","_isShown","_isBodyOverflowing","_ignoreBackdropClick","_originalBodyPadding","_scrollbarWidth","toggle","relatedTarget","hide","showEvent","trigger","isDefaultPrevented","_checkScrollbar","_setScrollbar","document","body","addClass","_setEscapeEvent","_setResizeEvent","on","event","one","target","is","_showBackdrop","_showElement","preventDefault","hideEvent","off","removeClass","Util","supportsTransitionEnd","hasClass","TRANSITION_END","_hideModal","emulateTransitionEnd","dispose","removeData","window","extend","typeCheckConfig","transition","parentNode","nodeType","Node","ELEMENT_NODE","appendChild","style","display","removeAttribute","scrollTop","reflow","_enforceFocus","shownEvent","transitionComplete","has","length","which","_handleUpdate","setAttribute","_resetAdjustments","_resetScrollbar","_removeBackdrop","remove","callback","animate","doAnimate","createElement","className","appendTo","currentTarget","callbackRemove","_adjustDialog","isModalOverflowing","scrollHeight","documentElement","clientHeight","paddingLeft","paddingRight","clientWidth","innerWidth","_getScrollbarWidth","bodyPadding","parseInt","css","scrollDiv","scrollbarWidth","offsetWidth","removeChild","_jQueryInterface","each","data","undefined","Error","selector","getSelectorFromElement","tagName","$target","call","Constructor","noConflict","jQuery"],"mappings":";;;;;;AAGA;;;;;;;AAOA,IAAMA,QAAS,UAACC,CAAD,EAAO;;AAGpB;;;;;;AAMA,MAAMC,OAA+B,OAArC;AACA,MAAMC,UAA+B,eAArC;AACA,MAAMC,WAA+B,UAArC;AACA,MAAMC,kBAAmCD,QAAzC;AACA,MAAME,eAA+B,WAArC;AACA,MAAMC,qBAA+BN,EAAEO,EAAF,CAAKN,IAAL,CAArC;AACA,MAAMO,sBAA+B,GAArC;AACA,MAAMC,+BAA+B,GAArC;AACA,MAAMC,iBAA+B,EAArC,CAjBoB,CAiBoB;;AAExC,MAAMC,UAAU;AACdC,cAAW,IADG;AAEdC,cAAW,IAFG;AAGdC,WAAW,IAHG;AAIdC,UAAW;AAJG,GAAhB;;AAOA,MAAMC,cAAc;AAClBJ,cAAW,kBADO;AAElBC,cAAW,SAFO;AAGlBC,WAAW,SAHO;AAIlBC,UAAW;AAJO,GAApB;;AAOA,MAAME,QAAQ;AACZC,mBAA2Bd,SADf;AAEZe,uBAA6Bf,SAFjB;AAGZgB,mBAA2BhB,SAHf;AAIZiB,qBAA4BjB,SAJhB;AAKZkB,yBAA8BlB,SALlB;AAMZmB,uBAA6BnB,SANjB;AAOZoB,qCAAoCpB,SAPxB;AAQZqB,yCAAsCrB,SAR1B;AASZsB,yCAAsCtB,SAT1B;AAUZuB,6CAAwCvB,SAV5B;AAWZwB,8BAA4BxB,SAA5B,GAAwCC;AAX5B,GAAd;;AAcA,MAAMwB,YAAY;AAChBC,wBAAqB,yBADL;AAEhBC,cAAqB,gBAFL;AAGhBC,UAAqB,YAHL;AAIhBC,UAAqB,MAJL;AAKhBC,YAAqB;AALL,GAAlB;;AAQA,MAAMC,WAAW;AACfC,YAAqB,eADN;AAEfC,iBAAqB,uBAFN;AAGfC,kBAAqB,wBAHN;AAIfC,mBAAqB;AAJN,GAAjB;;AAQA;;;;;;AA/DoB,MAqEdxC,KArEc;AAuElB,mBAAYyC,OAAZ,EAAqBC,MAArB,EAA6B;AAAA;;AAC3B,WAAKC,OAAL,GAA4B,KAAKC,UAAL,CAAgBF,MAAhB,CAA5B;AACA,WAAKG,QAAL,GAA4BJ,OAA5B;AACA,WAAKK,OAAL,GAA4B7C,EAAEwC,OAAF,EAAWM,IAAX,CAAgBX,SAASC,MAAzB,EAAiC,CAAjC,CAA5B;AACA,WAAKW,SAAL,GAA4B,IAA5B;AACA,WAAKC,QAAL,GAA4B,KAA5B;AACA,WAAKC,kBAAL,GAA4B,KAA5B;AACA,WAAKC,oBAAL,GAA4B,KAA5B;AACA,WAAKC,oBAAL,GAA4B,CAA5B;AACA,WAAKC,eAAL,GAA4B,CAA5B;AACD;;AAGD;;AAWA;;AA/FkB,oBAiGlBC,MAjGkB,mBAiGXC,aAjGW,EAiGI;AACpB,aAAO,KAAKN,QAAL,GAAgB,KAAKO,IAAL,EAAhB,GAA8B,KAAKxC,IAAL,CAAUuC,aAAV,CAArC;AACD,KAnGiB;;AAAA,oBAqGlBvC,IArGkB,iBAqGbuC,aArGa,EAqGE;AAAA;;AAClB,UAAME,YAAYxD,EAAEiB,KAAF,CAAQA,MAAMG,IAAd,EAAoB;AACpCkC;AADoC,OAApB,CAAlB;;AAIAtD,QAAE,KAAK4C,QAAP,EAAiBa,OAAjB,CAAyBD,SAAzB;;AAEA,UAAI,KAAKR,QAAL,IAAiBQ,UAAUE,kBAAV,EAArB,EAAqD;AACnD;AACD;;AAED,WAAKV,QAAL,GAAgB,IAAhB;;AAEA,WAAKW,eAAL;AACA,WAAKC,aAAL;;AAEA5D,QAAE6D,SAASC,IAAX,EAAiBC,QAAjB,CAA0BlC,UAAUG,IAApC;;AAEA,WAAKgC,eAAL;AACA,WAAKC,eAAL;;AAEAjE,QAAE,KAAK4C,QAAP,EAAiBsB,EAAjB,CACEjD,MAAMO,aADR,EAEEW,SAASG,YAFX,EAGE,UAAC6B,KAAD;AAAA,eAAW,MAAKZ,IAAL,CAAUY,KAAV,CAAX;AAAA,OAHF;;AAMAnE,QAAE,KAAK6C,OAAP,EAAgBqB,EAAhB,CAAmBjD,MAAMU,iBAAzB,EAA4C,YAAM;AAChD3B,UAAE,MAAK4C,QAAP,EAAiBwB,GAAjB,CAAqBnD,MAAMS,eAA3B,EAA4C,UAACyC,KAAD,EAAW;AACrD,cAAInE,EAAEmE,MAAME,MAAR,EAAgBC,EAAhB,CAAmB,MAAK1B,QAAxB,CAAJ,EAAuC;AACrC,kBAAKM,oBAAL,GAA4B,IAA5B;AACD;AACF,SAJD;AAKD,OAND;;AAQA,WAAKqB,aAAL,CAAmB;AAAA,eAAM,MAAKC,YAAL,CAAkBlB,aAAlB,CAAN;AAAA,OAAnB;AACD,KAzIiB;;AAAA,oBA2IlBC,IA3IkB,iBA2IbY,KA3Ia,EA2IN;AAAA;;AACV,UAAIA,KAAJ,EAAW;AACTA,cAAMM,cAAN;AACD;;AAED,UAAMC,YAAY1E,EAAEiB,KAAF,CAAQA,MAAMC,IAAd,CAAlB;;AAEAlB,QAAE,KAAK4C,QAAP,EAAiBa,OAAjB,CAAyBiB,SAAzB;;AAEA,UAAI,CAAC,KAAK1B,QAAN,IAAkB0B,UAAUhB,kBAAV,EAAtB,EAAsD;AACpD;AACD;;AAED,WAAKV,QAAL,GAAgB,KAAhB;;AAEA,WAAKgB,eAAL;AACA,WAAKC,eAAL;;AAEAjE,QAAE6D,QAAF,EAAYc,GAAZ,CAAgB1D,MAAMK,OAAtB;;AAEAtB,QAAE,KAAK4C,QAAP,EAAiBgC,WAAjB,CAA6B/C,UAAUK,MAAvC;;AAEAlC,QAAE,KAAK4C,QAAP,EAAiB+B,GAAjB,CAAqB1D,MAAMO,aAA3B;AACAxB,QAAE,KAAK6C,OAAP,EAAgB8B,GAAhB,CAAoB1D,MAAMU,iBAA1B;;AAEA,UAAIkD,KAAKC,qBAAL,MACD9E,EAAE,KAAK4C,QAAP,EAAiBmC,QAAjB,CAA0BlD,UAAUI,IAApC,CADH,EAC8C;;AAE5CjC,UAAE,KAAK4C,QAAP,EACGwB,GADH,CACOS,KAAKG,cADZ,EAC4B,UAACb,KAAD;AAAA,iBAAW,OAAKc,UAAL,CAAgBd,KAAhB,CAAX;AAAA,SAD5B,EAEGe,oBAFH,CAEwB1E,mBAFxB;AAGD,OAND,MAMO;AACL,aAAKyE,UAAL;AACD;AACF,KA7KiB;;AAAA,oBA+KlBE,OA/KkB,sBA+KR;AACRnF,QAAEoF,UAAF,CAAa,KAAKxC,QAAlB,EAA4BzC,QAA5B;;AAEAH,QAAEqF,MAAF,EAAUV,GAAV,CAAcvE,SAAd;AACAJ,QAAE6D,QAAF,EAAYc,GAAZ,CAAgBvE,SAAhB;AACAJ,QAAE,KAAK4C,QAAP,EAAiB+B,GAAjB,CAAqBvE,SAArB;AACAJ,QAAE,KAAK+C,SAAP,EAAkB4B,GAAlB,CAAsBvE,SAAtB;;AAEA,WAAKsC,OAAL,GAA4B,IAA5B;AACA,WAAKE,QAAL,GAA4B,IAA5B;AACA,WAAKC,OAAL,GAA4B,IAA5B;AACA,WAAKE,SAAL,GAA4B,IAA5B;AACA,WAAKC,QAAL,GAA4B,IAA5B;AACA,WAAKC,kBAAL,GAA4B,IAA5B;AACA,WAAKC,oBAAL,GAA4B,IAA5B;AACA,WAAKC,oBAAL,GAA4B,IAA5B;AACA,WAAKC,eAAL,GAA4B,IAA5B;AACD,KAhMiB;;AAmMlB;;AAnMkB,oBAqMlBT,UArMkB,uBAqMPF,MArMO,EAqMC;AACjBA,eAASzC,EAAEsF,MAAF,CAAS,EAAT,EAAa3E,OAAb,EAAsB8B,MAAtB,CAAT;AACAoC,WAAKU,eAAL,CAAqBtF,IAArB,EAA2BwC,MAA3B,EAAmCzB,WAAnC;AACA,aAAOyB,MAAP;AACD,KAzMiB;;AAAA,oBA2MlB+B,YA3MkB,yBA2MLlB,aA3MK,EA2MU;AAAA;;AAC1B,UAAMkC,aAAaX,KAAKC,qBAAL,MACjB9E,EAAE,KAAK4C,QAAP,EAAiBmC,QAAjB,CAA0BlD,UAAUI,IAApC,CADF;;AAGA,UAAI,CAAC,KAAKW,QAAL,CAAc6C,UAAf,IACD,KAAK7C,QAAL,CAAc6C,UAAd,CAAyBC,QAAzB,KAAsCC,KAAKC,YAD9C,EAC4D;AAC1D;AACA/B,iBAASC,IAAT,CAAc+B,WAAd,CAA0B,KAAKjD,QAA/B;AACD;;AAED,WAAKA,QAAL,CAAckD,KAAd,CAAoBC,OAApB,GAA8B,OAA9B;AACA,WAAKnD,QAAL,CAAcoD,eAAd,CAA8B,aAA9B;AACA,WAAKpD,QAAL,CAAcqD,SAAd,GAA0B,CAA1B;;AAEA,UAAIT,UAAJ,EAAgB;AACdX,aAAKqB,MAAL,CAAY,KAAKtD,QAAjB;AACD;;AAED5C,QAAE,KAAK4C,QAAP,EAAiBmB,QAAjB,CAA0BlC,UAAUK,MAApC;;AAEA,UAAI,KAAKQ,OAAL,CAAa5B,KAAjB,EAAwB;AACtB,aAAKqF,aAAL;AACD;;AAED,UAAMC,aAAapG,EAAEiB,KAAF,CAAQA,MAAMI,KAAd,EAAqB;AACtCiC;AADsC,OAArB,CAAnB;;AAIA,UAAM+C,qBAAqB,SAArBA,kBAAqB,GAAM;AAC/B,YAAI,OAAK3D,OAAL,CAAa5B,KAAjB,EAAwB;AACtB,iBAAK8B,QAAL,CAAc9B,KAAd;AACD;AACDd,UAAE,OAAK4C,QAAP,EAAiBa,OAAjB,CAAyB2C,UAAzB;AACD,OALD;;AAOA,UAAIZ,UAAJ,EAAgB;AACdxF,UAAE,KAAK6C,OAAP,EACGuB,GADH,CACOS,KAAKG,cADZ,EAC4BqB,kBAD5B,EAEGnB,oBAFH,CAEwB1E,mBAFxB;AAGD,OAJD,MAIO;AACL6F;AACD;AACF,KArPiB;;AAAA,oBAuPlBF,aAvPkB,4BAuPF;AAAA;;AACdnG,QAAE6D,QAAF,EACGc,GADH,CACO1D,MAAMK,OADb,EACsB;AADtB,OAEG4C,EAFH,CAEMjD,MAAMK,OAFZ,EAEqB,UAAC6C,KAAD,EAAW;AAC5B,YAAIN,aAAaM,MAAME,MAAnB,IACA,OAAKzB,QAAL,KAAkBuB,MAAME,MADxB,IAEA,CAACrE,EAAE,OAAK4C,QAAP,EAAiB0D,GAAjB,CAAqBnC,MAAME,MAA3B,EAAmCkC,MAFxC,EAEgD;AAC9C,iBAAK3D,QAAL,CAAc9B,KAAd;AACD;AACF,OARH;AASD,KAjQiB;;AAAA,oBAmQlBkD,eAnQkB,8BAmQA;AAAA;;AAChB,UAAI,KAAKhB,QAAL,IAAiB,KAAKN,OAAL,CAAa7B,QAAlC,EAA4C;AAC1Cb,UAAE,KAAK4C,QAAP,EAAiBsB,EAAjB,CAAoBjD,MAAMQ,eAA1B,EAA2C,UAAC0C,KAAD,EAAW;AACpD,cAAIA,MAAMqC,KAAN,KAAgB9F,cAApB,EAAoC;AAClC,mBAAK6C,IAAL;AACD;AACF,SAJD;AAMD,OAPD,MAOO,IAAI,CAAC,KAAKP,QAAV,EAAoB;AACzBhD,UAAE,KAAK4C,QAAP,EAAiB+B,GAAjB,CAAqB1D,MAAMQ,eAA3B;AACD;AACF,KA9QiB;;AAAA,oBAgRlBwC,eAhRkB,8BAgRA;AAAA;;AAChB,UAAI,KAAKjB,QAAT,EAAmB;AACjBhD,UAAEqF,MAAF,EAAUnB,EAAV,CAAajD,MAAMM,MAAnB,EAA2B,UAAC4C,KAAD;AAAA,iBAAW,OAAKsC,aAAL,CAAmBtC,KAAnB,CAAX;AAAA,SAA3B;AACD,OAFD,MAEO;AACLnE,UAAEqF,MAAF,EAAUV,GAAV,CAAc1D,MAAMM,MAApB;AACD;AACF,KAtRiB;;AAAA,oBAwRlB0D,UAxRkB,yBAwRL;AAAA;;AACX,WAAKrC,QAAL,CAAckD,KAAd,CAAoBC,OAApB,GAA8B,MAA9B;AACA,WAAKnD,QAAL,CAAc8D,YAAd,CAA2B,aAA3B,EAA0C,IAA1C;AACA,WAAKnC,aAAL,CAAmB,YAAM;AACvBvE,UAAE6D,SAASC,IAAX,EAAiBc,WAAjB,CAA6B/C,UAAUG,IAAvC;AACA,eAAK2E,iBAAL;AACA,eAAKC,eAAL;AACA5G,UAAE,OAAK4C,QAAP,EAAiBa,OAAjB,CAAyBxC,MAAME,MAA/B;AACD,OALD;AAMD,KAjSiB;;AAAA,oBAmSlB0F,eAnSkB,8BAmSA;AAChB,UAAI,KAAK9D,SAAT,EAAoB;AAClB/C,UAAE,KAAK+C,SAAP,EAAkB+D,MAAlB;AACA,aAAK/D,SAAL,GAAiB,IAAjB;AACD;AACF,KAxSiB;;AAAA,oBA0SlBwB,aA1SkB,0BA0SJwC,QA1SI,EA0SM;AAAA;;AACtB,UAAMC,UAAUhH,EAAE,KAAK4C,QAAP,EAAiBmC,QAAjB,CAA0BlD,UAAUI,IAApC,IACdJ,UAAUI,IADI,GACG,EADnB;;AAGA,UAAI,KAAKe,QAAL,IAAiB,KAAKN,OAAL,CAAa9B,QAAlC,EAA4C;AAC1C,YAAMqG,YAAYpC,KAAKC,qBAAL,MAAgCkC,OAAlD;;AAEA,aAAKjE,SAAL,GAAiBc,SAASqD,aAAT,CAAuB,KAAvB,CAAjB;AACA,aAAKnE,SAAL,CAAeoE,SAAf,GAA2BtF,UAAUE,QAArC;;AAEA,YAAIiF,OAAJ,EAAa;AACXhH,YAAE,KAAK+C,SAAP,EAAkBgB,QAAlB,CAA2BiD,OAA3B;AACD;;AAEDhH,UAAE,KAAK+C,SAAP,EAAkBqE,QAAlB,CAA2BvD,SAASC,IAApC;;AAEA9D,UAAE,KAAK4C,QAAP,EAAiBsB,EAAjB,CAAoBjD,MAAMO,aAA1B,EAAyC,UAAC2C,KAAD,EAAW;AAClD,cAAI,OAAKjB,oBAAT,EAA+B;AAC7B,mBAAKA,oBAAL,GAA4B,KAA5B;AACA;AACD;AACD,cAAIiB,MAAME,MAAN,KAAiBF,MAAMkD,aAA3B,EAA0C;AACxC;AACD;AACD,cAAI,OAAK3E,OAAL,CAAa9B,QAAb,KAA0B,QAA9B,EAAwC;AACtC,mBAAKgC,QAAL,CAAc9B,KAAd;AACD,WAFD,MAEO;AACL,mBAAKyC,IAAL;AACD;AACF,SAbD;;AAeA,YAAI0D,SAAJ,EAAe;AACbpC,eAAKqB,MAAL,CAAY,KAAKnD,SAAjB;AACD;;AAED/C,UAAE,KAAK+C,SAAP,EAAkBgB,QAAlB,CAA2BlC,UAAUK,MAArC;;AAEA,YAAI,CAAC6E,QAAL,EAAe;AACb;AACD;;AAED,YAAI,CAACE,SAAL,EAAgB;AACdF;AACA;AACD;;AAED/G,UAAE,KAAK+C,SAAP,EACGqB,GADH,CACOS,KAAKG,cADZ,EAC4B+B,QAD5B,EAEG7B,oBAFH,CAEwBzE,4BAFxB;AAID,OA9CD,MA8CO,IAAI,CAAC,KAAKuC,QAAN,IAAkB,KAAKD,SAA3B,EAAsC;AAC3C/C,UAAE,KAAK+C,SAAP,EAAkB6B,WAAlB,CAA8B/C,UAAUK,MAAxC;;AAEA,YAAMoF,iBAAiB,SAAjBA,cAAiB,GAAM;AAC3B,iBAAKT,eAAL;AACA,cAAIE,QAAJ,EAAc;AACZA;AACD;AACF,SALD;;AAOA,YAAIlC,KAAKC,qBAAL,MACD9E,EAAE,KAAK4C,QAAP,EAAiBmC,QAAjB,CAA0BlD,UAAUI,IAApC,CADH,EAC8C;AAC5CjC,YAAE,KAAK+C,SAAP,EACGqB,GADH,CACOS,KAAKG,cADZ,EAC4BsC,cAD5B,EAEGpC,oBAFH,CAEwBzE,4BAFxB;AAGD,SALD,MAKO;AACL6G;AACD;AAEF,OAnBM,MAmBA,IAAIP,QAAJ,EAAc;AACnBA;AACD;AACF,KAlXiB;;AAqXlB;AACA;AACA;AACA;;AAxXkB,oBA0XlBN,aA1XkB,4BA0XF;AACd,WAAKc,aAAL;AACD,KA5XiB;;AAAA,oBA8XlBA,aA9XkB,4BA8XF;AACd,UAAMC,qBACJ,KAAK5E,QAAL,CAAc6E,YAAd,GAA6B5D,SAAS6D,eAAT,CAAyBC,YADxD;;AAGA,UAAI,CAAC,KAAK1E,kBAAN,IAA4BuE,kBAAhC,EAAoD;AAClD,aAAK5E,QAAL,CAAckD,KAAd,CAAoB8B,WAApB,GAAqC,KAAKxE,eAA1C;AACD;;AAED,UAAI,KAAKH,kBAAL,IAA2B,CAACuE,kBAAhC,EAAoD;AAClD,aAAK5E,QAAL,CAAckD,KAAd,CAAoB+B,YAApB,GAAsC,KAAKzE,eAA3C;AACD;AACF,KAzYiB;;AAAA,oBA2YlBuD,iBA3YkB,gCA2YE;AAClB,WAAK/D,QAAL,CAAckD,KAAd,CAAoB8B,WAApB,GAAkC,EAAlC;AACA,WAAKhF,QAAL,CAAckD,KAAd,CAAoB+B,YAApB,GAAmC,EAAnC;AACD,KA9YiB;;AAAA,oBAgZlBlE,eAhZkB,8BAgZA;AAChB,WAAKV,kBAAL,GAA0BY,SAASC,IAAT,CAAcgE,WAAd,GAA4BzC,OAAO0C,UAA7D;AACA,WAAK3E,eAAL,GAAuB,KAAK4E,kBAAL,EAAvB;AACD,KAnZiB;;AAAA,oBAqZlBpE,aArZkB,4BAqZF;AACd,UAAMqE,cAAcC,SAClBlI,EAAEmC,SAASI,aAAX,EAA0B4F,GAA1B,CAA8B,eAA9B,KAAkD,CADhC,EAElB,EAFkB,CAApB;;AAKA,WAAKhF,oBAAL,GAA4BU,SAASC,IAAT,CAAcgC,KAAd,CAAoB+B,YAApB,IAAoC,EAAhE;;AAEA,UAAI,KAAK5E,kBAAT,EAA6B;AAC3BY,iBAASC,IAAT,CAAcgC,KAAd,CAAoB+B,YAApB,GACKI,cAAc,KAAK7E,eADxB;AAED;AACF,KAjaiB;;AAAA,oBAmalBwD,eAnakB,8BAmaA;AAChB/C,eAASC,IAAT,CAAcgC,KAAd,CAAoB+B,YAApB,GAAmC,KAAK1E,oBAAxC;AACD,KAraiB;;AAAA,oBAualB6E,kBAvakB,iCAuaG;AAAE;AACrB,UAAMI,YAAYvE,SAASqD,aAAT,CAAuB,KAAvB,CAAlB;AACAkB,gBAAUjB,SAAV,GAAsBtF,UAAUC,kBAAhC;AACA+B,eAASC,IAAT,CAAc+B,WAAd,CAA0BuC,SAA1B;AACA,UAAMC,iBAAiBD,UAAUE,WAAV,GAAwBF,UAAUN,WAAzD;AACAjE,eAASC,IAAT,CAAcyE,WAAd,CAA0BH,SAA1B;AACA,aAAOC,cAAP;AACD,KA9aiB;;AAiblB;;AAjbkB,UAmbXG,gBAnbW,6BAmbM/F,MAnbN,EAmbca,aAnbd,EAmb6B;AAC7C,aAAO,KAAKmF,IAAL,CAAU,YAAY;AAC3B,YAAIC,OAAY1I,EAAE,IAAF,EAAQ0I,IAAR,CAAavI,QAAb,CAAhB;AACA,YAAMuC,UAAU1C,EAAEsF,MAAF,CACd,EADc,EAEdvF,MAAMY,OAFQ,EAGdX,EAAE,IAAF,EAAQ0I,IAAR,EAHc,EAId,QAAOjG,MAAP,yCAAOA,MAAP,OAAkB,QAAlB,IAA8BA,MAJhB,CAAhB;;AAOA,YAAI,CAACiG,IAAL,EAAW;AACTA,iBAAO,IAAI3I,KAAJ,CAAU,IAAV,EAAgB2C,OAAhB,CAAP;AACA1C,YAAE,IAAF,EAAQ0I,IAAR,CAAavI,QAAb,EAAuBuI,IAAvB;AACD;;AAED,YAAI,OAAOjG,MAAP,KAAkB,QAAtB,EAAgC;AAC9B,cAAIiG,KAAKjG,MAAL,MAAiBkG,SAArB,EAAgC;AAC9B,kBAAM,IAAIC,KAAJ,uBAA8BnG,MAA9B,OAAN;AACD;AACDiG,eAAKjG,MAAL,EAAaa,aAAb;AACD,SALD,MAKO,IAAIZ,QAAQ3B,IAAZ,EAAkB;AACvB2H,eAAK3H,IAAL,CAAUuC,aAAV;AACD;AACF,OAtBM,CAAP;AAuBD,KA3ciB;;AAAA;AAAA;AAAA,0BAsFG;AACnB,eAAOpD,OAAP;AACD;AAxFiB;AAAA;AAAA,0BA0FG;AACnB,eAAOS,OAAP;AACD;AA5FiB;;AAAA;AAAA;;AAgdpB;;;;;;AAMAX,IAAE6D,QAAF,EAAYK,EAAZ,CAAejD,MAAMW,cAArB,EAAqCO,SAASE,WAA9C,EAA2D,UAAU8B,KAAV,EAAiB;AAAA;;AAC1E,QAAIE,eAAJ;AACA,QAAMwE,WAAWhE,KAAKiE,sBAAL,CAA4B,IAA5B,CAAjB;;AAEA,QAAID,QAAJ,EAAc;AACZxE,eAASrE,EAAE6I,QAAF,EAAY,CAAZ,CAAT;AACD;;AAED,QAAMpG,SAASzC,EAAEqE,MAAF,EAAUqE,IAAV,CAAevI,QAAf,IACb,QADa,GACFH,EAAEsF,MAAF,CAAS,EAAT,EAAatF,EAAEqE,MAAF,EAAUqE,IAAV,EAAb,EAA+B1I,EAAE,IAAF,EAAQ0I,IAAR,EAA/B,CADb;;AAGA,QAAI,KAAKK,OAAL,KAAiB,GAAjB,IAAwB,KAAKA,OAAL,KAAiB,MAA7C,EAAqD;AACnD5E,YAAMM,cAAN;AACD;;AAED,QAAMuE,UAAUhJ,EAAEqE,MAAF,EAAUD,GAAV,CAAcnD,MAAMG,IAApB,EAA0B,UAACoC,SAAD,EAAe;AACvD,UAAIA,UAAUE,kBAAV,EAAJ,EAAoC;AAClC;AACA;AACD;;AAEDsF,cAAQ5E,GAAR,CAAYnD,MAAME,MAAlB,EAA0B,YAAM;AAC9B,YAAInB,UAAQsE,EAAR,CAAW,UAAX,CAAJ,EAA4B;AAC1B,iBAAKxD,KAAL;AACD;AACF,OAJD;AAKD,KAXe,CAAhB;;AAaAf,UAAMyI,gBAAN,CAAuBS,IAAvB,CAA4BjJ,EAAEqE,MAAF,CAA5B,EAAuC5B,MAAvC,EAA+C,IAA/C;AACD,GA7BD;;AAgCA;;;;;;AAMAzC,IAAEO,EAAF,CAAKN,IAAL,IAAyBF,MAAMyI,gBAA/B;AACAxI,IAAEO,EAAF,CAAKN,IAAL,EAAWiJ,WAAX,GAAyBnJ,KAAzB;AACAC,IAAEO,EAAF,CAAKN,IAAL,EAAWkJ,UAAX,GAAyB,YAAY;AACnCnJ,MAAEO,EAAF,CAAKN,IAAL,IAAaK,kBAAb;AACA,WAAOP,MAAMyI,gBAAb;AACD,GAHD;;AAKA,SAAOzI,KAAP;AAED,CArgBa,CAqgBXqJ,MArgBW,CAAd","file":"modal.js","sourcesContent":["import Util from './util'\n\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.0.0-alpha.5): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Modal = (($) => {\n\n\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'modal'\n const VERSION = '4.0.0-alpha.5'\n const DATA_KEY = 'bs.modal'\n const EVENT_KEY = `.${DATA_KEY}`\n const DATA_API_KEY = '.data-api'\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n const TRANSITION_DURATION = 300\n const BACKDROP_TRANSITION_DURATION = 150\n const ESCAPE_KEYCODE = 27 // KeyboardEvent.which value for Escape (Esc) key\n\n const Default = {\n backdrop : true,\n keyboard : true,\n focus : true,\n show : true\n }\n\n const DefaultType = {\n backdrop : '(boolean|string)',\n keyboard : 'boolean',\n focus : 'boolean',\n show : 'boolean'\n }\n\n const Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n FOCUSIN : `focusin${EVENT_KEY}`,\n RESIZE : `resize${EVENT_KEY}`,\n CLICK_DISMISS : `click.dismiss${EVENT_KEY}`,\n KEYDOWN_DISMISS : `keydown.dismiss${EVENT_KEY}`,\n MOUSEUP_DISMISS : `mouseup.dismiss${EVENT_KEY}`,\n MOUSEDOWN_DISMISS : `mousedown.dismiss${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n }\n\n const ClassName = {\n SCROLLBAR_MEASURER : 'modal-scrollbar-measure',\n BACKDROP : 'modal-backdrop',\n OPEN : 'modal-open',\n FADE : 'fade',\n ACTIVE : 'active'\n }\n\n const Selector = {\n DIALOG : '.modal-dialog',\n DATA_TOGGLE : '[data-toggle=\"modal\"]',\n DATA_DISMISS : '[data-dismiss=\"modal\"]',\n FIXED_CONTENT : '.navbar-fixed-top, .navbar-fixed-bottom, .is-fixed'\n }\n\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Modal {\n\n constructor(element, config) {\n this._config = this._getConfig(config)\n this._element = element\n this._dialog = $(element).find(Selector.DIALOG)[0]\n this._backdrop = null\n this._isShown = false\n this._isBodyOverflowing = false\n this._ignoreBackdropClick = false\n this._originalBodyPadding = 0\n this._scrollbarWidth = 0\n }\n\n\n // getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n\n // public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n const showEvent = $.Event(Event.SHOW, {\n relatedTarget\n })\n\n $(this._element).trigger(showEvent)\n\n if (this._isShown || showEvent.isDefaultPrevented()) {\n return\n }\n\n this._isShown = true\n\n this._checkScrollbar()\n this._setScrollbar()\n\n $(document.body).addClass(ClassName.OPEN)\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n $(this._element).on(\n Event.CLICK_DISMISS,\n Selector.DATA_DISMISS,\n (event) => this.hide(event)\n )\n\n $(this._dialog).on(Event.MOUSEDOWN_DISMISS, () => {\n $(this._element).one(Event.MOUSEUP_DISMISS, (event) => {\n if ($(event.target).is(this._element)) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event) {\n event.preventDefault()\n }\n\n const hideEvent = $.Event(Event.HIDE)\n\n $(this._element).trigger(hideEvent)\n\n if (!this._isShown || hideEvent.isDefaultPrevented()) {\n return\n }\n\n this._isShown = false\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n $(document).off(Event.FOCUSIN)\n\n $(this._element).removeClass(ClassName.ACTIVE)\n\n $(this._element).off(Event.CLICK_DISMISS)\n $(this._dialog).off(Event.MOUSEDOWN_DISMISS)\n\n if (Util.supportsTransitionEnd() &&\n $(this._element).hasClass(ClassName.FADE)) {\n\n $(this._element)\n .one(Util.TRANSITION_END, (event) => this._hideModal(event))\n .emulateTransitionEnd(TRANSITION_DURATION)\n } else {\n this._hideModal()\n }\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n\n $(window).off(EVENT_KEY)\n $(document).off(EVENT_KEY)\n $(this._element).off(EVENT_KEY)\n $(this._backdrop).off(EVENT_KEY)\n\n this._config = null\n this._element = null\n this._dialog = null\n this._backdrop = null\n this._isShown = null\n this._isBodyOverflowing = null\n this._ignoreBackdropClick = null\n this._originalBodyPadding = null\n this._scrollbarWidth = null\n }\n\n\n // private\n\n _getConfig(config) {\n config = $.extend({}, Default, config)\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const transition = Util.supportsTransitionEnd() &&\n $(this._element).hasClass(ClassName.FADE)\n\n if (!this._element.parentNode ||\n this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // don't move modals dom position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.scrollTop = 0\n\n if (transition) {\n Util.reflow(this._element)\n }\n\n $(this._element).addClass(ClassName.ACTIVE)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const shownEvent = $.Event(Event.SHOWN, {\n relatedTarget\n })\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n $(this._element).trigger(shownEvent)\n }\n\n if (transition) {\n $(this._dialog)\n .one(Util.TRANSITION_END, transitionComplete)\n .emulateTransitionEnd(TRANSITION_DURATION)\n } else {\n transitionComplete()\n }\n }\n\n _enforceFocus() {\n $(document)\n .off(Event.FOCUSIN) // guard against infinite focus loop\n .on(Event.FOCUSIN, (event) => {\n if (document !== event.target &&\n this._element !== event.target &&\n !$(this._element).has(event.target).length) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown && this._config.keyboard) {\n $(this._element).on(Event.KEYDOWN_DISMISS, (event) => {\n if (event.which === ESCAPE_KEYCODE) {\n this.hide()\n }\n })\n\n } else if (!this._isShown) {\n $(this._element).off(Event.KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n $(window).on(Event.RESIZE, (event) => this._handleUpdate(event))\n } else {\n $(window).off(Event.RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._showBackdrop(() => {\n $(document.body).removeClass(ClassName.OPEN)\n this._resetAdjustments()\n this._resetScrollbar()\n $(this._element).trigger(Event.HIDDEN)\n })\n }\n\n _removeBackdrop() {\n if (this._backdrop) {\n $(this._backdrop).remove()\n this._backdrop = null\n }\n }\n\n _showBackdrop(callback) {\n const animate = $(this._element).hasClass(ClassName.FADE) ?\n ClassName.FADE : ''\n\n if (this._isShown && this._config.backdrop) {\n const doAnimate = Util.supportsTransitionEnd() && animate\n\n this._backdrop = document.createElement('div')\n this._backdrop.className = ClassName.BACKDROP\n\n if (animate) {\n $(this._backdrop).addClass(animate)\n }\n\n $(this._backdrop).appendTo(document.body)\n\n $(this._element).on(Event.CLICK_DISMISS, (event) => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n if (event.target !== event.currentTarget) {\n return\n }\n if (this._config.backdrop === 'static') {\n this._element.focus()\n } else {\n this.hide()\n }\n })\n\n if (doAnimate) {\n Util.reflow(this._backdrop)\n }\n\n $(this._backdrop).addClass(ClassName.ACTIVE)\n\n if (!callback) {\n return\n }\n\n if (!doAnimate) {\n callback()\n return\n }\n\n $(this._backdrop)\n .one(Util.TRANSITION_END, callback)\n .emulateTransitionEnd(BACKDROP_TRANSITION_DURATION)\n\n } else if (!this._isShown && this._backdrop) {\n $(this._backdrop).removeClass(ClassName.ACTIVE)\n\n const callbackRemove = () => {\n this._removeBackdrop()\n if (callback) {\n callback()\n }\n }\n\n if (Util.supportsTransitionEnd() &&\n $(this._element).hasClass(ClassName.FADE)) {\n $(this._backdrop)\n .one(Util.TRANSITION_END, callbackRemove)\n .emulateTransitionEnd(BACKDROP_TRANSITION_DURATION)\n } else {\n callbackRemove()\n }\n\n } else if (callback) {\n callback()\n }\n }\n\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // todo (fat): these should probably be refactored out of modal.js\n // ----------------------------------------------------------------------\n\n _handleUpdate() {\n this._adjustDialog()\n }\n\n _adjustDialog() {\n const isModalOverflowing =\n this._element.scrollHeight > document.documentElement.clientHeight\n\n if (!this._isBodyOverflowing && isModalOverflowing) {\n this._element.style.paddingLeft = `${this._scrollbarWidth}px`\n }\n\n if (this._isBodyOverflowing && !isModalOverflowing) {\n this._element.style.paddingRight = `${this._scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n _checkScrollbar() {\n this._isBodyOverflowing = document.body.clientWidth < window.innerWidth\n this._scrollbarWidth = this._getScrollbarWidth()\n }\n\n _setScrollbar() {\n const bodyPadding = parseInt(\n $(Selector.FIXED_CONTENT).css('padding-right') || 0,\n 10\n )\n\n this._originalBodyPadding = document.body.style.paddingRight || ''\n\n if (this._isBodyOverflowing) {\n document.body.style.paddingRight =\n `${bodyPadding + this._scrollbarWidth}px`\n }\n }\n\n _resetScrollbar() {\n document.body.style.paddingRight = this._originalBodyPadding\n }\n\n _getScrollbarWidth() { // thx d.walsh\n const scrollDiv = document.createElement('div')\n scrollDiv.className = ClassName.SCROLLBAR_MEASURER\n document.body.appendChild(scrollDiv)\n const scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth\n document.body.removeChild(scrollDiv)\n return scrollbarWidth\n }\n\n\n // static\n\n static _jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = $.extend(\n {},\n Modal.Default,\n $(this).data(),\n typeof config === 'object' && config\n )\n\n if (!data) {\n data = new Modal(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (data[config] === undefined) {\n throw new Error(`No method named \"${config}\"`)\n }\n data[config](relatedTarget)\n } else if (_config.show) {\n data.show(relatedTarget)\n }\n })\n }\n\n }\n\n\n /**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n let target\n const selector = Util.getSelectorFromElement(this)\n\n if (selector) {\n target = $(selector)[0]\n }\n\n const config = $(target).data(DATA_KEY) ?\n 'toggle' : $.extend({}, $(target).data(), $(this).data())\n\n if (this.tagName === 'A' || this.tagName === 'AREA') {\n event.preventDefault()\n }\n\n const $target = $(target).one(Event.SHOW, (showEvent) => {\n if (showEvent.isDefaultPrevented()) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n $target.one(Event.HIDDEN, () => {\n if ($(this).is(':visible')) {\n this.focus()\n }\n })\n })\n\n Modal._jQueryInterface.call($(target), config, this)\n })\n\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Modal._jQueryInterface\n $.fn[NAME].Constructor = Modal\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Modal._jQueryInterface\n }\n\n return Modal\n\n})(jQuery)\n\nexport default Modal\n"]}
\ No newline at end of file +{"version":3,"sources":["../src/modal.js"],"names":["Modal","$","NAME","VERSION","DATA_KEY","EVENT_KEY","DATA_API_KEY","JQUERY_NO_CONFLICT","fn","TRANSITION_DURATION","BACKDROP_TRANSITION_DURATION","ESCAPE_KEYCODE","Default","backdrop","keyboard","focus","show","DefaultType","Event","HIDE","HIDDEN","SHOW","SHOWN","FOCUSIN","RESIZE","CLICK_DISMISS","KEYDOWN_DISMISS","MOUSEUP_DISMISS","MOUSEDOWN_DISMISS","CLICK_DATA_API","ClassName","SCROLLBAR_MEASURER","BACKDROP","OPEN","FADE","ACTIVE","Selector","DIALOG","DATA_TOGGLE","DATA_DISMISS","FIXED_CONTENT","element","config","_config","_getConfig","_element","_dialog","find","_backdrop","_isShown","_isBodyOverflowing","_ignoreBackdropClick","_originalBodyPadding","_scrollbarWidth","toggle","relatedTarget","hide","showEvent","trigger","isDefaultPrevented","_checkScrollbar","_setScrollbar","document","body","addClass","_setEscapeEvent","_setResizeEvent","on","event","one","target","is","_showBackdrop","_showElement","preventDefault","hideEvent","off","removeClass","Util","supportsTransitionEnd","hasClass","TRANSITION_END","_hideModal","emulateTransitionEnd","dispose","removeData","window","extend","typeCheckConfig","transition","parentNode","nodeType","Node","ELEMENT_NODE","appendChild","style","display","removeAttribute","scrollTop","reflow","_enforceFocus","shownEvent","transitionComplete","has","length","which","_handleUpdate","setAttribute","_resetAdjustments","_resetScrollbar","_removeBackdrop","remove","callback","animate","doAnimate","createElement","className","appendTo","currentTarget","callbackRemove","_adjustDialog","isModalOverflowing","scrollHeight","documentElement","clientHeight","paddingLeft","paddingRight","clientWidth","innerWidth","_getScrollbarWidth","bodyPadding","parseInt","css","scrollDiv","scrollbarWidth","offsetWidth","removeChild","_jQueryInterface","each","data","undefined","Error","selector","getSelectorFromElement","tagName","$target","call","Constructor","noConflict","jQuery"],"mappings":"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","file":"modal.js","sourcesContent":["import Util from './util'\n\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.0.0-alpha.5): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst Modal = (($) => {\n\n\n /**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\n const NAME = 'modal'\n const VERSION = '4.0.0-alpha.5'\n const DATA_KEY = 'bs.modal'\n const EVENT_KEY = `.${DATA_KEY}`\n const DATA_API_KEY = '.data-api'\n const JQUERY_NO_CONFLICT = $.fn[NAME]\n const TRANSITION_DURATION = 300\n const BACKDROP_TRANSITION_DURATION = 150\n const ESCAPE_KEYCODE = 27 // KeyboardEvent.which value for Escape (Esc) key\n\n const Default = {\n backdrop : true,\n keyboard : true,\n focus : true,\n show : true\n }\n\n const DefaultType = {\n backdrop : '(boolean|string)',\n keyboard : 'boolean',\n focus : 'boolean',\n show : 'boolean'\n }\n\n const Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n FOCUSIN : `focusin${EVENT_KEY}`,\n RESIZE : `resize${EVENT_KEY}`,\n CLICK_DISMISS : `click.dismiss${EVENT_KEY}`,\n KEYDOWN_DISMISS : `keydown.dismiss${EVENT_KEY}`,\n MOUSEUP_DISMISS : `mouseup.dismiss${EVENT_KEY}`,\n MOUSEDOWN_DISMISS : `mousedown.dismiss${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n }\n\n const ClassName = {\n SCROLLBAR_MEASURER : 'modal-scrollbar-measure',\n BACKDROP : 'modal-backdrop',\n OPEN : 'modal-open',\n FADE : 'fade',\n ACTIVE : 'active'\n }\n\n const Selector = {\n DIALOG : '.modal-dialog',\n DATA_TOGGLE : '[data-toggle=\"modal\"]',\n DATA_DISMISS : '[data-dismiss=\"modal\"]',\n FIXED_CONTENT : '.navbar-fixed-top, .navbar-fixed-bottom, .is-fixed'\n }\n\n\n /**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\n class Modal {\n\n constructor(element, config) {\n this._config = this._getConfig(config)\n this._element = element\n this._dialog = $(element).find(Selector.DIALOG)[0]\n this._backdrop = null\n this._isShown = false\n this._isBodyOverflowing = false\n this._ignoreBackdropClick = false\n this._originalBodyPadding = 0\n this._scrollbarWidth = 0\n }\n\n\n // getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n\n // public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n const showEvent = $.Event(Event.SHOW, {\n relatedTarget\n })\n\n $(this._element).trigger(showEvent)\n\n if (this._isShown || showEvent.isDefaultPrevented()) {\n return\n }\n\n this._isShown = true\n\n this._checkScrollbar()\n this._setScrollbar()\n\n $(document.body).addClass(ClassName.OPEN)\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n $(this._element).on(\n Event.CLICK_DISMISS,\n Selector.DATA_DISMISS,\n (event) => this.hide(event)\n )\n\n $(this._dialog).on(Event.MOUSEDOWN_DISMISS, () => {\n $(this._element).one(Event.MOUSEUP_DISMISS, (event) => {\n if ($(event.target).is(this._element)) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event) {\n event.preventDefault()\n }\n\n const hideEvent = $.Event(Event.HIDE)\n\n $(this._element).trigger(hideEvent)\n\n if (!this._isShown || hideEvent.isDefaultPrevented()) {\n return\n }\n\n this._isShown = false\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n $(document).off(Event.FOCUSIN)\n\n $(this._element).removeClass(ClassName.ACTIVE)\n\n $(this._element).off(Event.CLICK_DISMISS)\n $(this._dialog).off(Event.MOUSEDOWN_DISMISS)\n\n if (Util.supportsTransitionEnd() &&\n $(this._element).hasClass(ClassName.FADE)) {\n\n $(this._element)\n .one(Util.TRANSITION_END, (event) => this._hideModal(event))\n .emulateTransitionEnd(TRANSITION_DURATION)\n } else {\n this._hideModal()\n }\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n\n $(window, document, this._element, this._backdrop).off(EVENT_KEY)\n\n this._config = null\n this._element = null\n this._dialog = null\n this._backdrop = null\n this._isShown = null\n this._isBodyOverflowing = null\n this._ignoreBackdropClick = null\n this._originalBodyPadding = null\n this._scrollbarWidth = null\n }\n\n\n // private\n\n _getConfig(config) {\n config = $.extend({}, Default, config)\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const transition = Util.supportsTransitionEnd() &&\n $(this._element).hasClass(ClassName.FADE)\n\n if (!this._element.parentNode ||\n this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // don't move modals dom position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.scrollTop = 0\n\n if (transition) {\n Util.reflow(this._element)\n }\n\n $(this._element).addClass(ClassName.ACTIVE)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const shownEvent = $.Event(Event.SHOWN, {\n relatedTarget\n })\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n $(this._element).trigger(shownEvent)\n }\n\n if (transition) {\n $(this._dialog)\n .one(Util.TRANSITION_END, transitionComplete)\n .emulateTransitionEnd(TRANSITION_DURATION)\n } else {\n transitionComplete()\n }\n }\n\n _enforceFocus() {\n $(document)\n .off(Event.FOCUSIN) // guard against infinite focus loop\n .on(Event.FOCUSIN, (event) => {\n if (document !== event.target &&\n this._element !== event.target &&\n !$(this._element).has(event.target).length) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown && this._config.keyboard) {\n $(this._element).on(Event.KEYDOWN_DISMISS, (event) => {\n if (event.which === ESCAPE_KEYCODE) {\n this.hide()\n }\n })\n\n } else if (!this._isShown) {\n $(this._element).off(Event.KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n $(window).on(Event.RESIZE, (event) => this._handleUpdate(event))\n } else {\n $(window).off(Event.RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._showBackdrop(() => {\n $(document.body).removeClass(ClassName.OPEN)\n this._resetAdjustments()\n this._resetScrollbar()\n $(this._element).trigger(Event.HIDDEN)\n })\n }\n\n _removeBackdrop() {\n if (this._backdrop) {\n $(this._backdrop).remove()\n this._backdrop = null\n }\n }\n\n _showBackdrop(callback) {\n const animate = $(this._element).hasClass(ClassName.FADE) ?\n ClassName.FADE : ''\n\n if (this._isShown && this._config.backdrop) {\n const doAnimate = Util.supportsTransitionEnd() && animate\n\n this._backdrop = document.createElement('div')\n this._backdrop.className = ClassName.BACKDROP\n\n if (animate) {\n $(this._backdrop).addClass(animate)\n }\n\n $(this._backdrop).appendTo(document.body)\n\n $(this._element).on(Event.CLICK_DISMISS, (event) => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n if (event.target !== event.currentTarget) {\n return\n }\n if (this._config.backdrop === 'static') {\n this._element.focus()\n } else {\n this.hide()\n }\n })\n\n if (doAnimate) {\n Util.reflow(this._backdrop)\n }\n\n $(this._backdrop).addClass(ClassName.ACTIVE)\n\n if (!callback) {\n return\n }\n\n if (!doAnimate) {\n callback()\n return\n }\n\n $(this._backdrop)\n .one(Util.TRANSITION_END, callback)\n .emulateTransitionEnd(BACKDROP_TRANSITION_DURATION)\n\n } else if (!this._isShown && this._backdrop) {\n $(this._backdrop).removeClass(ClassName.ACTIVE)\n\n const callbackRemove = () => {\n this._removeBackdrop()\n if (callback) {\n callback()\n }\n }\n\n if (Util.supportsTransitionEnd() &&\n $(this._element).hasClass(ClassName.FADE)) {\n $(this._backdrop)\n .one(Util.TRANSITION_END, callbackRemove)\n .emulateTransitionEnd(BACKDROP_TRANSITION_DURATION)\n } else {\n callbackRemove()\n }\n\n } else if (callback) {\n callback()\n }\n }\n\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // todo (fat): these should probably be refactored out of modal.js\n // ----------------------------------------------------------------------\n\n _handleUpdate() {\n this._adjustDialog()\n }\n\n _adjustDialog() {\n const isModalOverflowing =\n this._element.scrollHeight > document.documentElement.clientHeight\n\n if (!this._isBodyOverflowing && isModalOverflowing) {\n this._element.style.paddingLeft = `${this._scrollbarWidth}px`\n }\n\n if (this._isBodyOverflowing && !isModalOverflowing) {\n this._element.style.paddingRight = `${this._scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n _checkScrollbar() {\n this._isBodyOverflowing = document.body.clientWidth < window.innerWidth\n this._scrollbarWidth = this._getScrollbarWidth()\n }\n\n _setScrollbar() {\n const bodyPadding = parseInt(\n $(Selector.FIXED_CONTENT).css('padding-right') || 0,\n 10\n )\n\n this._originalBodyPadding = document.body.style.paddingRight || ''\n\n if (this._isBodyOverflowing) {\n document.body.style.paddingRight =\n `${bodyPadding + this._scrollbarWidth}px`\n }\n }\n\n _resetScrollbar() {\n document.body.style.paddingRight = this._originalBodyPadding\n }\n\n _getScrollbarWidth() { // thx d.walsh\n const scrollDiv = document.createElement('div')\n scrollDiv.className = ClassName.SCROLLBAR_MEASURER\n document.body.appendChild(scrollDiv)\n const scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth\n document.body.removeChild(scrollDiv)\n return scrollbarWidth\n }\n\n\n // static\n\n static _jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = $.extend(\n {},\n Modal.Default,\n $(this).data(),\n typeof config === 'object' && config\n )\n\n if (!data) {\n data = new Modal(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (data[config] === undefined) {\n throw new Error(`No method named \"${config}\"`)\n }\n data[config](relatedTarget)\n } else if (_config.show) {\n data.show(relatedTarget)\n }\n })\n }\n\n }\n\n\n /**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n let target\n const selector = Util.getSelectorFromElement(this)\n\n if (selector) {\n target = $(selector)[0]\n }\n\n const config = $(target).data(DATA_KEY) ?\n 'toggle' : $.extend({}, $(target).data(), $(this).data())\n\n if (this.tagName === 'A' || this.tagName === 'AREA') {\n event.preventDefault()\n }\n\n const $target = $(target).one(Event.SHOW, (showEvent) => {\n if (showEvent.isDefaultPrevented()) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n $target.one(Event.HIDDEN, () => {\n if ($(this).is(':visible')) {\n this.focus()\n }\n })\n })\n\n Modal._jQueryInterface.call($(target), config, this)\n })\n\n\n /**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n $.fn[NAME] = Modal._jQueryInterface\n $.fn[NAME].Constructor = Modal\n $.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Modal._jQueryInterface\n }\n\n return Modal\n\n})(jQuery)\n\nexport default Modal\n"]}
\ No newline at end of file |