ENDRPrint/web/js/mask/ngMask.min.js

2 lines
6.6 KiB
JavaScript
Raw Normal View History

2024-08-14 10:33:27 +07:00
!function(){"use strict";angular.module("ngMask",[])}(),function(){"use strict";angular.module("ngMask").directive("mask",["$log","$timeout","MaskService",function(a,b,c){return{restrict:"A",require:"ngModel",compile:function(d,e){function f(a){"number"==typeof a&&(b.cancel(g),g=b(function(){var b=a+1,c=d[0];if(c.setSelectionRange)c.focus(),c.setSelectionRange(a,b);else if(c.createTextRange){var e=c.createTextRange();e.collapse(!0),e.moveEnd("character",b),e.moveStart("character",a),e.select()}}))}if(!e.mask||!e.ngModel)return void a.info("Mask and ng-model attributes are required!");var g,h,i=c.create();return{pre:function(a,b,c){h=i.generateRegex({mask:c.mask,repeat:c.repeat||c.maskRepeat,clean:"true"===(c.clean||c.maskClean),limit:"true"===(c.limit||c.maskLimit||"true"),restrict:c.restrict||c.maskRestrict||"select",validate:"true"===(c.validate||c.maskValidate||"true"),model:c.ngModel,value:c.ngValue})},post:function(b,c,d,e){h.then(function(){function d(b){b=b||"";var c=i.getViewValue(b),d=g.maskWithoutOptionals||"",h=c.withDivisors(!0),j=c.withoutDivisors(!0);try{var k=i.getRegex(h.length-1),l=i.getRegex(d.length-1),m=k.test(h)||l.test(h),n=b.length-h.length===1,o=d.length-h.length>0;if("accept"!==g.restrict)if("select"!==g.restrict||m&&!n)"reject"!==g.restrict||m||(c=i.removeWrongPositions(h),h=c.withDivisors(!0),j=c.withoutDivisors(!0));else{var p=b[b.length-1],q=h[h.length-1];p!==q&&o&&(h+=p);var r=i.getFirstWrongPosition(h);angular.isDefined(r)&&f(r)}g.limit||(h=c.withDivisors(!1),j=c.withoutDivisors(!1)),g.validate&&e.$dirty&&(l.test(h)||e.$isEmpty(e.$modelValue)?e.$setValidity("mask",!0):e.$setValidity("mask",!1)),b!==h&&(e.$setViewValue(angular.copy(h),"input"),e.$render())}catch(s){throw a.error("[mask - parseViewValue]"),s}return g.clean?j:h}var g=i.getOptions();e.$parsers.push(d),c.on("click input paste keyup",function(){d(c.val()),b.$apply()});var h=b.$watch(b.ngModel,function(a){angular.isDefined(a)&&(d(a),h())});g.value&&b.$evalAsync(function(){e.$setViewValue(angular.copy(g.value),"input"),e.$render()})})}}}}}])}(),function(){"use strict";angular.module("ngMask").factory("MaskService",["$q","OptionalService","UtilService",function(a,b,c){function d(){function d(a,b){var c;try{var d=t[a],e=C[d],f=h(a);e?c="("+e.source+")":(i(a)||(z.push(a),A[a]=d),c="(\\"+d+")")}catch(g){throw g}return(f||b)&&(c+="?"),new RegExp(c)}function e(a,b){var c,f;try{var g=d(a,b);c=g;var i=h(a),j=g.source;if(i&&u>a+1){var k=e(a+1,!0).elementOptionalRegex();j+=k.source}f=new RegExp(j)}catch(l){throw l}return{elementRegex:function(){return c},elementOptionalRegex:function(){return f}}}function f(c){var d=a.defer();s=c;try{var f=c.mask,g=c.repeat;g&&(f=Array(parseInt(g)+1).join(f)),w=b.getOptionals(f).fromMaskWithoutOptionals(),s.maskWithoutOptionals=t=b.removeOptionals(f),u=t.length;for(var h,i=0;u>i;i++){var l=e(i),m=l.elementRegex(),n=l.elementOptionalRegex(),o=h?h.source+n.source:n.source;o=new RegExp(o),h=h?h.source+m.source:m.source,h=new RegExp(h),B.push(o)}j(),v=k(t).length,d.resolve({options:s,divisors:z,divisorElements:A,optionalIndexes:w,optionalDivisors:x,optionalDivisorsCombinations:y})}catch(p){throw d.reject(p),p}return d.promise}function g(a){var b;try{b=B[a]?B[a].source:""}catch(c){throw c}return new RegExp("^"+b+"$")}function h(a){return c.inArray(a,w)}function i(a){return c.inArray(a,z)}function j(){function a(a,b){return a-b}for(var b=z.sort(a),c=w.sort(a),d=0;d<b.length;d++)for(var e=b[d],f=1;f<=c.length;f++){var g=c[f-1];if(g>=e)break;x[e]=x[e]?x[e].concat(e-f):[e-f],A[e-f]=A[e]}}function k(a){try{if(z.length>0&&a){for(var b=Object.keys(A),d=[],e=b.length-1;e>=0;e--){var f=A[b[e]];f&&d.push(f)}d=c.uniqueArray(d);var g=new RegExp("[\\"+d.join("\\")+"]","g");return a.replace(g,"")}return a}catch(h){throw h}}function l(a,b){function d(a,b){for(var c=b,d=0;d<a.length;d++){var e=a[d];e<c.length&&c.splice(e,0,A[e])}return c}var e=a,f=z.filter(function(a){var d=Object.keys(x).map(function(a){return parseInt(a)});return!c.inArray(a,b)&&!c.inArray(a,d)});return angular.isArray(a)&&angular.isArray(b)?(e=d(f,e),e=d(b,e
//# sourceMappingURL=ngMask.min.map