{"version":3,"sources":["plugins/mask.js"],"names":["Mask","$","NAME","DATA_KEY","JQUERY_NO_CONFLICT","fn","Default","pattern","persistent","Selector","CLASS_NAME","element","config","_config","_element","removeData","each","$this","data","extend","formatter","resetPattern","_jQueryInterface","call","document","ajaxStop","Constructor","noConflict","jQuery"],"mappings":";;;;;;AAAA,IAAMA,OAAQ,UAACC,CAAD,EAAO;;AAEjB,QAAMC,OAAO,MAAb;AACA,QAAMC,mBAAiBD,IAAvB;AACA,QAAME,qBAAqBH,EAAEI,EAAF,CAAKH,IAAL,CAA3B;;AAEA,QAAMI,UAAU;AACZC,iBAAS,OADG;AAEZC,oBAAY;AAFA,KAAhB;AAIA,QAAMC,WAAW;AACbC,6BAAmBR;AADN,KAAjB;;AAViB,QAcXF,IAdW;AAeb,sBAAYW,OAAZ,EAAqBC,MAArB,EAA6B;AAAA;;AACzB,iBAAKC,OAAL,GAAeD,MAAf;AACA,iBAAKE,QAAL,GAAgBH,OAAhB;AACH;;AAlBY;AAAA;AAAA,sCAoBH;AACNV,kBAAEc,UAAF,CAAa,KAAKD,QAAlB,EAA4BX,QAA5B;AACA,qBAAKU,OAAL,GAAe,IAAf;AACA,qBAAKC,QAAL,GAAgB,IAAhB;AACH;AAxBY;AAAA;AAAA,+CA2Ba;AACtB,uBAAO,KAAKE,IAAL,CAAU,YAAY;AACzB,wBAAMC,QAAQhB,EAAE,IAAF,CAAd;AACA,wBAAIiB,OAAOD,MAAMC,IAAN,CAAWf,QAAX,CAAX;AACA,wBAAMS,SAASX,EAAEkB,MAAF,CAAS,EAAT,EAAab,OAAb,EAAsBW,MAAMC,IAAN,EAAtB,CAAf;AACA,wBAAI,CAACA,IAAL,EAAW;AACPA,+BAAO,IAAIlB,IAAJ,CAAS,IAAT,EAAeY,MAAf,CAAP;AACAK,8BAAMC,IAAN,CAAWf,QAAX,EAAqBe,IAArB,EAA2BE,SAA3B,CAAqCR,MAArC,EAA6CS,YAA7C;AACH;AACJ,iBARM,CAAP;AASH;AArCY;;AAAA;AAAA;;AAwCjBpB,MAAE;AAAA,eAAMD,KAAKsB,gBAAL,CAAsBC,IAAtB,CAA2BtB,EAAEQ,SAASC,UAAX,CAA3B,CAAN;AAAA,KAAF;AACAT,MAAEuB,QAAF,EAAYC,QAAZ,CAAqB;AAAA,eAAMzB,KAAKsB,gBAAL,CAAsBC,IAAtB,CAA2BtB,EAAEQ,SAASC,UAAX,CAA3B,CAAN;AAAA,KAArB;;AAEAT,MAAEI,EAAF,CAAKH,IAAL,IAAaF,KAAKsB,gBAAlB;AACArB,MAAEI,EAAF,CAAKH,IAAL,EAAWwB,WAAX,GAAyB1B,IAAzB;AACAC,MAAEI,EAAF,CAAKH,IAAL,EAAWyB,UAAX,GAAwB,YAAY;AAChC1B,UAAEI,EAAF,CAAKH,IAAL,IAAaE,kBAAb;AACA,eAAOJ,KAAKsB,gBAAZ;AACH,KAHD;;AAKA,WAAOtB,IAAP;AACH,CAnDY,CAmDV4B,MAnDU,CAAb","file":"mask.js","sourcesContent":["const Mask = (($) => {\r\n\r\n const NAME = 'mask';\r\n const DATA_KEY = `bs.${NAME}`;\r\n const JQUERY_NO_CONFLICT = $.fn[NAME];\r\n\r\n const Default = {\r\n pattern: '{{*}}',\r\n persistent: false\r\n };\r\n const Selector = {\r\n CLASS_NAME: `.js-${NAME}`\r\n }\r\n\r\n class Mask {\r\n constructor(element, config) {\r\n this._config = config;\r\n this._element = element;\r\n }\r\n\r\n dispose() {\r\n $.removeData(this._element, DATA_KEY);\r\n this._config = null;\r\n this._element = null;\r\n }\r\n\r\n\r\n static _jQueryInterface() {\r\n return this.each(function () {\r\n const $this = $(this);\r\n let data = $this.data(DATA_KEY);\r\n const config = $.extend({}, Default, $this.data());\r\n if (!data) {\r\n data = new Mask(this, config);\r\n $this.data(DATA_KEY, data).formatter(config).resetPattern();\r\n }\r\n });\r\n }\r\n }\r\n\r\n $(() => Mask._jQueryInterface.call($(Selector.CLASS_NAME)));\r\n $(document).ajaxStop(() => Mask._jQueryInterface.call($(Selector.CLASS_NAME)));\r\n\r\n $.fn[NAME] = Mask._jQueryInterface;\r\n $.fn[NAME].Constructor = Mask;\r\n $.fn[NAME].noConflict = function () {\r\n $.fn[NAME] = JQUERY_NO_CONFLICT;\r\n return Mask._jQueryInterface;\r\n }\r\n\r\n return Mask;\r\n})(jQuery);"]}