jquery.inputmask.js 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. /*
  2. Input Mask plugin for jquery
  3. http://github.com/RobinHerbots/jquery.inputmask
  4. Copyright (c) 2010 - 2014 Robin Herbots
  5. Licensed under the MIT license (http://www.opensource.org/licenses/mit-license.php)
  6. Version: 2.4.24
  7. */
  8. (function(d){if(void 0===d.fn.inputmask){var w=function(d){var h=document.createElement("input");d="on"+d;var a=d in h;a||(h.setAttribute(d,"return;"),a="function"==typeof h[d]);return a},C=function(e,h,a){return(e=a.aliases[e])?(e.alias&&C(e.alias,void 0,a),d.extend(!0,a,e),d.extend(!0,a,h),!0):!1},Q=function(e){function h(a){e.numericInput&&(a=a.split("").reverse().join(""));var f=!1,h=0,m=e.greedy,p=e.repeat;"*"==p&&(m=!1);1==a.length&&!1==m&&0!=p&&(e.placeholder="");a=d.map(a.split(""),function(a,
  9. d){var l=[];if(a==e.escapeChar)f=!0;else if(a!=e.optionalmarker.start&&a!=e.optionalmarker.end||f){var q=e.definitions[a];if(q&&!f)for(var p=0;p<q.cardinality;p++)l.push(e.placeholder.charAt((h+p)%e.placeholder.length));else l.push(a),f=!1;h+=l.length;return l}});for(var s=a.slice(),q=1;q<p&&m;q++)s=s.concat(a.slice());return{mask:s,repeat:p,greedy:m}}function a(a){e.numericInput&&(a=a.split("").reverse().join(""));var f=!1,p=!1,h=!1;return d.map(a.split(""),function(a,d){var l=[];if(a==e.escapeChar)p=
  10. !0;else{if(a!=e.optionalmarker.start||p){if(a!=e.optionalmarker.end||p){var k=e.definitions[a];if(k&&!p){for(var r=k.prevalidator,F=r?r.length:0,w=1;w<k.cardinality;w++){var A=F>=w?r[w-1]:[],J=A.validator,A=A.cardinality;l.push({fn:J?"string"==typeof J?RegExp(J):new function(){this.test=J}:/./,cardinality:A?A:1,optionality:f,newBlockMarker:!0==f?h:!1,offset:0,casing:k.casing,def:k.definitionSymbol||a});!0==f&&(h=!1)}l.push({fn:k.validator?"string"==typeof k.validator?RegExp(k.validator):new function(){this.test=
  11. k.validator}:/./,cardinality:k.cardinality,optionality:f,newBlockMarker:h,offset:0,casing:k.casing,def:k.definitionSymbol||a})}else l.push({fn:null,cardinality:0,optionality:f,newBlockMarker:h,offset:0,casing:null,def:a}),p=!1;h=!1;return l}f=!1}else f=!0;h=!0}})}function k(a){for(var d=a.length,f=0;f<d&&a.charAt(f)!=e.optionalmarker.start;f++);var h=[a.substring(0,f)];f<d&&h.push(a.substring(f+1,d));return h}function f(l,t,w){for(var m=0,z=0,s=t.length,q=0;q<s&&!(t.charAt(q)==e.optionalmarker.start&&
  12. m++,t.charAt(q)==e.optionalmarker.end&&z++,0<m&&m==z);q++);m=[t.substring(0,q)];q<s&&m.push(t.substring(q+1,s));q=k(m[0]);1<q.length?(t=l+q[0]+(e.optionalmarker.start+q[1]+e.optionalmarker.end)+(1<m.length?m[1]:""),-1==d.inArray(t,p)&&""!=t&&(p.push(t),s=h(t),r.push({mask:t,_buffer:s.mask,buffer:s.mask.slice(),tests:a(t),lastValidPosition:-1,greedy:s.greedy,repeat:s.repeat,metadata:w})),t=l+q[0]+(1<m.length?m[1]:""),-1==d.inArray(t,p)&&""!=t&&(p.push(t),s=h(t),r.push({mask:t,_buffer:s.mask,buffer:s.mask.slice(),
  13. tests:a(t),lastValidPosition:-1,greedy:s.greedy,repeat:s.repeat,metadata:w})),1<k(q[1]).length&&f(l+q[0],q[1]+m[1],w),1<m.length&&1<k(m[1]).length&&(f(l+q[0]+(e.optionalmarker.start+q[1]+e.optionalmarker.end),m[1],w),f(l+q[0],m[1],w))):(t=l+m,-1==d.inArray(t,p)&&""!=t&&(p.push(t),s=h(t),r.push({mask:t,_buffer:s.mask,buffer:s.mask.slice(),tests:a(t),lastValidPosition:-1,greedy:s.greedy,repeat:s.repeat,metadata:w})))}var r=[],p=[];d.isFunction(e.mask)&&(e.mask=e.mask.call(this,e));d.isArray(e.mask)?
  14. d.each(e.mask,function(a,d){void 0!=d.mask?f("",d.mask.toString(),d):f("",d.toString())}):f("",e.mask.toString());return e.greedy?r:r.sort(function(a,d){return a.mask.length-d.mask.length})},fa="function"===typeof ScriptEngineMajorVersion?ScriptEngineMajorVersion():10<=(new Function("/*@cc_on return @_jscript_version; @*/"))(),ga=null!==navigator.userAgent.match(/iphone/i),ha=null!==navigator.userAgent.match(/android.*safari.*/i),S=null!==navigator.userAgent.match(/android.*chrome.*/i),ia=w("paste")?
  15. "paste":w("input")?"input":"propertychange",X=!1,Y=!1,Z=!1;S&&(w=navigator.userAgent.match(/chrome.*/i),w=parseInt(RegExp(/[0-9]+/).exec(w)),X=32==w,Y=18==w,Z=29==w);var D=function(e,h,a,k){function f(){return e[h]}function r(){return f().tests}function p(){return f()._buffer}function l(){return f().buffer}function t(n,c,b){function g(n,b,c,g){for(var d=z(n),f=c?1:0,x="",L=b.buffer,e=b.tests[d].cardinality;e>f;e--)x+=F(L,d-(e-1));c&&(x+=c);return null!=b.tests[d].fn?b.tests[d].fn.test(x,L,n,g,a):
  16. c==F(b._buffer.slice(),n,!0)||c==a.skipOptionalPartCharacter?{refresh:!0,c:F(b._buffer.slice(),n,!0),pos:n}:!1}if(b=!0===b){var x=g(n,f(),c,b);!0===x&&(x={pos:n});return x}var L=[],x=!1,K=h,p=l().slice(),k=f().lastValidPosition;G(n);var t=[];d.each(e,function(a,d){if("object"==typeof d){h=a;var e=n,v=f().lastValidPosition,r;if(v==k){if(1<e-k)for(v=-1==v?0:v;v<e&&(r=g(v,f(),p[v],!0),!1!==r);v++)H(l(),v,p[v],!0),!0===r&&(r={pos:v}),r=r.pos||v,f().lastValidPosition<r&&(f().lastValidPosition=r);if(!m(e)&&
  17. !g(e,f(),c,b)){v=q(e)-e;for(r=0;r<v&&!1===g(++e,f(),c,b);r++);t.push(h)}}(f().lastValidPosition>=k||h==K)&&0<=e&&e<s()&&(x=g(e,f(),c,b),!1!==x&&(!0===x&&(x={pos:e}),r=x.pos||e,f().lastValidPosition<r&&(f().lastValidPosition=r)),L.push({activeMasksetIndex:a,result:x}))}});h=K;return function(a,b){var x=!1;d.each(b,function(n,b){if(x=-1==d.inArray(b.activeMasksetIndex,a)&&!1!==b.result)return!1});if(x)b=d.map(b,function(n,b){if(-1==d.inArray(n.activeMasksetIndex,a))return n;e[n.activeMasksetIndex].lastValidPosition=
  18. k});else{var f=-1,L=-1,l;d.each(b,function(n,b){-1!=d.inArray(b.activeMasksetIndex,a)&&!1!==b.result&(-1==f||f>b.result.pos)&&(f=b.result.pos,L=b.activeMasksetIndex)});b=d.map(b,function(b,x){if(-1!=d.inArray(b.activeMasksetIndex,a)){if(b.result.pos==f)return b;if(!1!==b.result){for(var K=n;K<f;K++)if(l=g(K,e[b.activeMasksetIndex],e[L].buffer[K],!0),!1===l){e[b.activeMasksetIndex].lastValidPosition=f-1;break}else H(e[b.activeMasksetIndex].buffer,K,e[L].buffer[K],!0),e[b.activeMasksetIndex].lastValidPosition=
  19. K;l=g(f,e[b.activeMasksetIndex],c,!0);!1!==l&&(H(e[b.activeMasksetIndex].buffer,f,c,!0),e[b.activeMasksetIndex].lastValidPosition=f);return b}}})}return b}(t,L)}function w(){var a=h,c={activeMasksetIndex:0,lastValidPosition:-1,next:-1};d.each(e,function(a,n){"object"==typeof n&&(h=a,f().lastValidPosition>c.lastValidPosition?(c.activeMasksetIndex=a,c.lastValidPosition=f().lastValidPosition,c.next=q(f().lastValidPosition)):f().lastValidPosition==c.lastValidPosition&&(-1==c.next||c.next>q(f().lastValidPosition))&&
  20. (c.activeMasksetIndex=a,c.lastValidPosition=f().lastValidPosition,c.next=q(f().lastValidPosition)))});h=-1!=c.lastValidPosition&&e[a].lastValidPosition==c.lastValidPosition?a:c.activeMasksetIndex;a!=h&&(J(l(),q(c.lastValidPosition),s()),f().writeOutBuffer=!0);u.data("_inputmask").activeMasksetIndex=h}function m(a){a=z(a);a=r()[a];return void 0!=a?a.fn:!1}function z(a){return a%r().length}function s(){return a.getMaskLength(p(),f().greedy,f().repeat,l(),a)}function q(a){var c=s();if(a>=c)return c;
  21. for(;++a<c&&!m(a););return a}function G(a){if(0>=a)return 0;for(;0<--a&&!m(a););return a}function H(a,c,b,g){g&&(c=D(a,c));g=r()[z(c)];var d=b;if(void 0!=d&&void 0!=g)switch(g.casing){case "upper":d=b.toUpperCase();break;case "lower":d=b.toLowerCase()}a[c]=d}function F(a,c,b){b&&(c=D(a,c));return a[c]}function D(a,c){for(var b;void 0==a[c]&&a.length<s();)for(b=0;void 0!==p()[b];)a.push(p()[b++]);return c}function A(a,c,b){a._valueSet(c.join(""));void 0!=b&&y(a,b)}function J(a,c,b,g){for(var d=s();c<
  22. b&&c<d;c++)!0===g?m(c)||H(a,c,""):H(a,c,F(p().slice(),c,!0))}function C(a,c){var b=z(c);H(a,c,F(p(),b))}function O(n){return a.placeholder.charAt(n%a.placeholder.length)}function I(a,c,b,g,x){g=void 0!=g?g.slice():T(a._valueGet()).split("");d.each(e,function(a,b){"object"==typeof b&&(b.buffer=b._buffer.slice(),b.lastValidPosition=-1,b.p=-1)});!0!==b&&(h=0);c&&a._valueSet("");s();d.each(g,function(g,e){if(!0===x){var l=f().p,l=-1==l?l:G(l),h=-1==l?g:q(l);-1==d.inArray(e,p().slice(l+1,h))&&U.call(a,
  23. void 0,!0,e.charCodeAt(0),c,b,g)}else U.call(a,void 0,!0,e.charCodeAt(0),c,b,g)});!0===b&&-1!=f().p&&(f().lastValidPosition=G(f().p))}function Q(a){return d.inputmask.escapeRegex.call(this,a)}function T(a){return a.replace(RegExp("("+Q(p().join(""))+")*$"),"")}function V(a){var c=l(),b=c.slice(),g,d;for(d=b.length-1;0<=d;d--)if(g=z(d),r()[g].optionality)if(m(d)&&t(d,c[d],!0))break;else b.pop();else break;A(a,b)}function S(n,c){if(!r()||!0!==c&&n.hasClass("hasDatepicker"))return n[0]._valueGet();var b=
  24. d.map(l(),function(a,b){return m(b)&&t(b,a,!0)?a:null}),b=(B?b.reverse():b).join("");return void 0!=a.onUnMask?a.onUnMask.call(this,l().join(""),b):b}function M(d){!B||"number"!=typeof d||a.greedy&&""==a.placeholder||(d=l().length-d);return d}function y(n,c,b){var g=n.jquery&&0<n.length?n[0]:n;if("number"==typeof c)c=M(c),b=M(b),d(n).is(":visible")&&(b="number"==typeof b?b:c,g.scrollLeft=g.scrollWidth,!1==a.insertMode&&c==b&&b++,g.setSelectionRange?(g.selectionStart=c,g.selectionEnd=ha?c:b):g.createTextRange&&
  25. (n=g.createTextRange(),n.collapse(!0),n.moveEnd("character",b),n.moveStart("character",c),n.select()));else{if(!d(n).is(":visible"))return{begin:0,end:0};g.setSelectionRange?(c=g.selectionStart,b=g.selectionEnd):document.selection&&document.selection.createRange&&(n=document.selection.createRange(),c=0-n.duplicate().moveStart("character",-1E5),b=c+n.text.length);c=M(c);b=M(b);return{begin:c,end:b}}}function R(n){if("*"!=a.repeat){var c=!1,b=0,g=h;d.each(e,function(a,d){if("object"==typeof d){h=a;
  26. var g=G(s());if(d.lastValidPosition>=b&&d.lastValidPosition==g){for(var f=!0,e=0;e<=g;e++){var l=m(e),k=z(e);if(l&&(void 0==n[e]||n[e]==O(e))||!l&&n[e]!=p()[k]){f=!1;break}}if(c=c||f)return!1}b=d.lastValidPosition}});h=g;return c}}function ja(a){a=d._data(a).events;d.each(a,function(a,b){d.each(b,function(a,b){if("inputmask"==b.namespace&&"setvalue"!=b.type){var c=b.handler;b.handler=function(a){if(this.readOnly||this.disabled)a.preventDefault;else return c.apply(this,arguments)}}})})}function ka(a){var c;
  27. Object.getOwnPropertyDescriptor&&(c=Object.getOwnPropertyDescriptor(a,"value"));if(c&&c.get){if(!a._valueGet){var b=c.get,g=c.set;a._valueGet=function(){return B?b.call(this).split("").reverse().join(""):b.call(this)};a._valueSet=function(a){g.call(this,B?a.split("").reverse().join(""):a)};Object.defineProperty(a,"value",{get:function(){var a=d(this),c=d(this).data("_inputmask"),g=c.masksets,f=c.activeMasksetIndex;return c&&c.opts.autoUnmask?a.inputmask("unmaskedvalue"):b.call(this)!=g[f]._buffer.join("")?
  28. b.call(this):""},set:function(a){g.call(this,a);d(this).triggerHandler("setvalue.inputmask")}})}}else if(document.__lookupGetter__&&a.__lookupGetter__("value"))a._valueGet||(b=a.__lookupGetter__("value"),g=a.__lookupSetter__("value"),a._valueGet=function(){return B?b.call(this).split("").reverse().join(""):b.call(this)},a._valueSet=function(a){g.call(this,B?a.split("").reverse().join(""):a)},a.__defineGetter__("value",function(){var a=d(this),c=d(this).data("_inputmask"),g=c.masksets,f=c.activeMasksetIndex;
  29. return c&&c.opts.autoUnmask?a.inputmask("unmaskedvalue"):b.call(this)!=g[f]._buffer.join("")?b.call(this):""}),a.__defineSetter__("value",function(a){g.call(this,a);d(this).triggerHandler("setvalue.inputmask")}));else if(a._valueGet||(a._valueGet=function(){return B?this.value.split("").reverse().join(""):this.value},a._valueSet=function(a){this.value=B?a.split("").reverse().join(""):a}),void 0==d.valHooks.text||!0!=d.valHooks.text.inputmaskpatch)b=d.valHooks.text&&d.valHooks.text.get?d.valHooks.text.get:
  30. function(a){return a.value},g=d.valHooks.text&&d.valHooks.text.set?d.valHooks.text.set:function(a,b){a.value=b;return a},jQuery.extend(d.valHooks,{text:{get:function(a){var c=d(a);if(c.data("_inputmask")){if(c.data("_inputmask").opts.autoUnmask)return c.inputmask("unmaskedvalue");a=b(a);c=c.data("_inputmask");return a!=c.masksets[c.activeMasksetIndex]._buffer.join("")?a:""}return b(a)},set:function(a,b){var c=d(a),f=g(a,b);c.data("_inputmask")&&c.triggerHandler("setvalue.inputmask");return f},inputmaskpatch:!0}})}
  31. function $(a,c,b,d){var e=l();if(!1!==d)for(;!m(a)&&0<=a-1;)a--;for(d=a;d<c&&d<s();d++)if(m(d)){C(e,d);var h=q(d),k=F(e,h);if(k!=O(h))if(h<s()&&!1!==t(d,k,!0)&&r()[z(d)].def==r()[z(h)].def)H(e,d,k,!0);else if(m(d))break}else C(e,d);void 0!=b&&H(e,G(c),b);if(!1==f().greedy){c=T(e.join("")).split("");e.length=c.length;d=0;for(b=e.length;d<b;d++)e[d]=c[d];0==e.length&&(f().buffer=p().slice())}return a}function aa(a,c,b){var d=l();if(F(d,a,!0)!=O(a))for(var e=G(c);e>a&&0<=e;e--)if(m(e)){var h=G(e),k=
  32. F(d,h);k!=O(h)&&!1!==t(h,k,!0)&&r()[z(e)].def==r()[z(h)].def&&(H(d,e,k,!0),C(d,h))}else C(d,e);void 0!=b&&F(d,a)==O(a)&&H(d,a,b);a=d.length;if(!1==f().greedy){b=T(d.join("")).split("");d.length=b.length;e=0;for(h=d.length;e<h;e++)d[e]=b[e];0==d.length&&(f().buffer=p().slice())}return c-(a-d.length)}function ba(d,c,b){if(a.numericInput||B){switch(c){case a.keyCode.BACKSPACE:c=a.keyCode.DELETE;break;case a.keyCode.DELETE:c=a.keyCode.BACKSPACE}if(B){var g=b.end;b.end=b.begin;b.begin=g}}g=!0;b.begin==
  33. b.end?(g=c==a.keyCode.BACKSPACE?b.begin-1:b.begin,a.isNumeric&&""!=a.radixPoint&&l()[g]==a.radixPoint&&(b.begin=l().length-1==g?b.begin:c==a.keyCode.BACKSPACE?g:q(g),b.end=b.begin),g=!1,c==a.keyCode.BACKSPACE?b.begin--:c==a.keyCode.DELETE&&b.end++):1!=b.end-b.begin||a.insertMode||(g=!1,c==a.keyCode.BACKSPACE&&b.begin--);J(l(),b.begin,b.end);var h=s();if(!1==a.greedy)$(b.begin,h,void 0,!B&&c==a.keyCode.BACKSPACE&&!g);else{for(var k=b.begin,p=b.begin;p<b.end;p++)if(m(p)||!g)k=$(b.begin,h,void 0,!B&&
  34. c==a.keyCode.BACKSPACE&&!g);g||(b.begin=k)}c=q(-1);J(l(),b.begin,b.end,!0);I(d,!1,void 0==e[1]||c>=b.end,l());f().lastValidPosition<c?(f().lastValidPosition=-1,f().p=c):f().p=b.begin}function ca(e){W=!1;var c=this,b=d(c),g=e.keyCode,h=y(c);g==a.keyCode.BACKSPACE||g==a.keyCode.DELETE||ga&&127==g||e.ctrlKey&&88==g?(e.preventDefault(),88==g&&(N=l().join("")),ba(c,g,h),w(),A(c,l(),f().p),c._valueGet()==p().join("")&&b.trigger("cleared"),a.showTooltip&&b.prop("title",f().mask)):g==a.keyCode.END||g==a.keyCode.PAGE_DOWN?
  35. setTimeout(function(){var b=q(f().lastValidPosition);a.insertMode||b!=s()||e.shiftKey||b--;y(c,e.shiftKey?h.begin:b,b)},0):g==a.keyCode.HOME&&!e.shiftKey||g==a.keyCode.PAGE_UP?y(c,0,e.shiftKey?h.begin:0):g==a.keyCode.ESCAPE||90==g&&e.ctrlKey?(I(c,!0,!1,N.split("")),b.click()):g!=a.keyCode.INSERT||e.shiftKey||e.ctrlKey?!1!=a.insertMode||e.shiftKey||(g==a.keyCode.RIGHT?setTimeout(function(){var a=y(c);y(c,a.begin)},0):g==a.keyCode.LEFT&&setTimeout(function(){var a=y(c);y(c,a.begin-1)},0)):(a.insertMode=
  36. !a.insertMode,y(c,a.insertMode||h.begin!=s()?h.begin:h.begin-1));b=y(c);!0===a.onKeyDown.call(this,e,l(),a)&&y(c,b.begin,b.end);da=-1!=d.inArray(g,a.ignorables)}function U(n,c,b,g,k,p){if(void 0==b&&W)return!1;W=!0;var r=d(this);n=n||window.event;b=c?b:n.which||n.charCode||n.keyCode;if(!(!0===c||n.ctrlKey&&n.altKey)&&(n.ctrlKey||n.metaKey||da))return!0;if(b){!0!==c&&46==b&&!1==n.shiftKey&&","==a.radixPoint&&(b=44);var m,u,z=String.fromCharCode(b);c?(b=k?p:f().lastValidPosition+1,m={begin:b,end:b}):
  37. m=y(this);p=B?1<m.begin-m.end||1==m.begin-m.end&&a.insertMode:1<m.end-m.begin||1==m.end-m.begin&&a.insertMode;var C=h;p&&(h=C,d.each(e,function(a,b){"object"==typeof b&&(h=a,f().undoBuffer=l().join(""))}),ba(this,a.keyCode.DELETE,m),a.insertMode||d.each(e,function(a,b){"object"==typeof b&&(h=a,aa(m.begin,s()),f().lastValidPosition=q(f().lastValidPosition))}),h=C);var D=l().join("").indexOf(a.radixPoint);a.isNumeric&&!0!==c&&-1!=D&&(a.greedy&&m.begin<=D?(m.begin=G(m.begin),m.end=m.begin):z==a.radixPoint&&
  38. (m.begin=D,m.end=m.begin));var E=m.begin;b=t(E,z,k);!0===k&&(b=[{activeMasksetIndex:h,result:b}]);var v=-1;d.each(b,function(b,d){h=d.activeMasksetIndex;f().writeOutBuffer=!0;var c=d.result;if(!1!==c){var e=!1,g=l();!0!==c&&(e=c.refresh,E=void 0!=c.pos?c.pos:E,z=void 0!=c.c?c.c:z);if(!0!==e){if(!0==a.insertMode){c=s();for(g=g.slice();F(g,c,!0)!=O(c)&&c>=E;)c=0==c?-1:G(c);c>=E?(aa(E,s(),z),g=f().lastValidPosition,c=q(g),c!=s()&&g>=E&&F(l().slice(),c,!0)!=O(c)&&(f().lastValidPosition=c)):f().writeOutBuffer=
  39. !1}else H(g,E,z,!0);if(-1==v||v>q(E))v=q(E)}else!k&&(g=E<s()?E+1:E,-1==v||v>g)&&(v=g);v>f().p&&(f().p=v)}});!0!==k&&(h=C,w());if(!1!==g&&(d.each(b,function(a,b){if(b.activeMasksetIndex==h)return u=b,!1}),void 0!=u)){var J=this;setTimeout(function(){a.onKeyValidation.call(J,u.result,a)},0);if(f().writeOutBuffer&&!1!==u.result){var I=l();g=c?void 0:a.numericInput?E>D?G(v):z==a.radixPoint?v-1:G(v-1):v;A(this,I,g);!0!==c&&setTimeout(function(){!0===R(I)&&r.trigger("complete");P=!0;r.trigger("input")},
  40. 0)}else p&&(f().buffer=f().undoBuffer.split(""))}a.showTooltip&&r.prop("title",f().mask);n&&(n.preventDefault?n.preventDefault():n.returnValue=!1)}}function ea(e){var c=d(this),b=e.keyCode,f=l();a.onKeyUp.call(this,e,f,a);b==a.keyCode.TAB&&a.showMaskOnFocus&&(c.hasClass("focus.inputmask")&&0==this._valueGet().length?(f=p().slice(),A(this,f),y(this,0),N=l().join("")):(A(this,f),f.join("")==p().join("")&&-1!=d.inArray(a.radixPoint,f)?(y(this,M(0)),c.click()):y(this,M(0),M(s()))))}function la(a){if(!0===
  41. P)return P=!1,!0;a=d(this);I(this,!1,!1);A(this,l());!0===R(l())&&a.trigger("complete");a.click()}function ma(e){if(!0===P)return P=!1,!0;var c=d(this),b=y(this),f=this._valueGet();f.charAt(b.begin)==l()[b.begin]||f.charAt(b.begin+1)==l()[b.begin]||m(b.begin)?(I(this,!1,!1),A(this,l()),!0===R(l())&&c.trigger("complete"),c.click()):(e.keyCode=a.keyCode.BACKSPACE,ca.call(this,e));e.preventDefault()}function na(k){u=d(k);if(u.is(":input")){u.data("_inputmask",{masksets:e,activeMasksetIndex:h,opts:a,
  42. isRTL:!1});a.showTooltip&&u.prop("title",f().mask);f().greedy=f().greedy?f().greedy:0==f().repeat;if(null!=u.attr("maxLength")){var c=u.prop("maxLength");-1<c&&d.each(e,function(a,b){"object"==typeof b&&"*"==b.repeat&&(b.repeat=c)});s()>=c&&-1<c&&(c<p().length&&(p().length=c),!1==f().greedy&&(f().repeat=Math.round(c/p().length)),u.prop("maxLength",2*s()))}ka(k);a.numericInput&&(a.isNumeric=a.numericInput);("rtl"==k.dir||a.numericInput&&a.rightAlignNumerics||a.isNumeric&&a.rightAlignNumerics)&&u.css("text-align",
  43. "right");if("rtl"==k.dir||a.numericInput){k.dir="ltr";u.removeAttr("dir");var b=u.data("_inputmask");b.isRTL=!0;u.data("_inputmask",b);B=!0}u.unbind(".inputmask");u.removeClass("focus.inputmask");u.closest("form").bind("submit",function(){N!=l().join("")&&u.change()}).bind("reset",function(){setTimeout(function(){u.trigger("setvalue")},0)});u.bind("mouseenter.inputmask",function(){!d(this).hasClass("focus.inputmask")&&a.showMaskOnHover&&this._valueGet()!=l().join("")&&A(this,l())}).bind("blur.inputmask",
  44. function(){var b=d(this),c=this._valueGet(),f=l();b.removeClass("focus.inputmask");N!=l().join("")&&b.change();a.clearMaskOnLostFocus&&""!=c&&(c==p().join("")?this._valueSet(""):V(this));!1===R(f)&&(b.trigger("incomplete"),a.clearIncomplete&&(d.each(e,function(a,b){"object"==typeof b&&(b.buffer=b._buffer.slice(),b.lastValidPosition=-1)}),h=0,a.clearMaskOnLostFocus?this._valueSet(""):(f=p().slice(),A(this,f))))}).bind("focus.inputmask",function(){var b=d(this),c=this._valueGet();a.showMaskOnFocus&&
  45. !b.hasClass("focus.inputmask")&&(!a.showMaskOnHover||a.showMaskOnHover&&""==c)&&this._valueGet()!=l().join("")&&A(this,l(),q(f().lastValidPosition));b.addClass("focus.inputmask");N=l().join("")}).bind("mouseleave.inputmask",function(){var b=d(this);a.clearMaskOnLostFocus&&(b.hasClass("focus.inputmask")||this._valueGet()==b.attr("placeholder")||(this._valueGet()==p().join("")||""==this._valueGet()?this._valueSet(""):V(this)))}).bind("click.inputmask",function(){var b=this;setTimeout(function(){var c=
  46. y(b),e=l();if(c.begin==c.end){var c=B?M(c.begin):c.begin,g=f().lastValidPosition,e=a.isNumeric?!1===a.skipRadixDance&&""!=a.radixPoint&&-1!=d.inArray(a.radixPoint,e)?a.numericInput?q(d.inArray(a.radixPoint,e)):d.inArray(a.radixPoint,e):q(g):q(g);c<e?m(c)?y(b,c):y(b,q(c)):y(b,e)}},0)}).bind("dblclick.inputmask",function(){var a=this;setTimeout(function(){y(a,0,q(f().lastValidPosition))},0)}).bind(ia+".inputmask dragdrop.inputmask drop.inputmask",function(b){if(!0===P)return P=!1,!0;var c=this,e=d(c);
  47. if("propertychange"==b.type&&c._valueGet().length<=s())return!0;setTimeout(function(){var b=void 0!=a.onBeforePaste?a.onBeforePaste.call(this,c._valueGet()):c._valueGet();I(c,!0,!1,b.split(""),!0);!0===R(l())&&e.trigger("complete");e.click()},0)}).bind("setvalue.inputmask",function(){I(this,!0);N=l().join("");this._valueGet()==p().join("")&&this._valueSet("")}).bind("complete.inputmask",a.oncomplete).bind("incomplete.inputmask",a.onincomplete).bind("cleared.inputmask",a.oncleared).bind("keyup.inputmask",
  48. ea);u.bind("keydown.inputmask",ca).bind("keypress.inputmask",U).bind("keyup.inputmask",ea);(X||Y||Z)&&u.bind("input.inputmask",ma);fa&&u.bind("input.inputmask",la);I(k,!0,!1);N=l().join("");var g;try{g=document.activeElement}catch(r){}g===k?(u.addClass("focus.inputmask"),y(k,q(f().lastValidPosition))):a.clearMaskOnLostFocus?l().join("")==p().join("")?k._valueSet(""):V(k):A(k,l());ja(k)}}var B=!1,N=l().join(""),u,W=!1,P=!1,da=!1;if(void 0!=k)switch(k.action){case "isComplete":return R(k.buffer);case "unmaskedvalue":return B=
  49. k.$input.data("_inputmask").isRTL,S(k.$input,k.skipDatepickerCheck);case "mask":na(k.el);break;case "format":return u=d({}),u.data("_inputmask",{masksets:e,activeMasksetIndex:h,opts:a,isRTL:a.numericInput}),a.numericInput&&(a.isNumeric=a.numericInput,B=!0),I(u,!1,!1,k.value.split(""),!0),l().join("")}};d.inputmask={defaults:{placeholder:"_",optionalmarker:{start:"[",end:"]"},quantifiermarker:{start:"{",end:"}"},groupmarker:{start:"(",end:")"},escapeChar:"\\",mask:null,oncomplete:d.noop,onincomplete:d.noop,
  50. oncleared:d.noop,repeat:0,greedy:!0,autoUnmask:!1,clearMaskOnLostFocus:!0,insertMode:!0,clearIncomplete:!1,aliases:{},onKeyUp:d.noop,onKeyDown:d.noop,onBeforePaste:void 0,onUnMask:void 0,showMaskOnFocus:!0,showMaskOnHover:!0,onKeyValidation:d.noop,skipOptionalPartCharacter:" ",showTooltip:!1,numericInput:!1,isNumeric:!1,radixPoint:"",skipRadixDance:!1,rightAlignNumerics:!0,definitions:{9:{validator:"[0-9]",cardinality:1,definitionSymbol:"*"},a:{validator:"[A-Za-z\u0410-\u044f\u0401\u0451]",cardinality:1,
  51. definitionSymbol:"*"},"*":{validator:"[A-Za-z\u0410-\u044f\u0401\u04510-9]",cardinality:1}},keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91},ignorables:[8,9,13,19,27,33,34,
  52. 35,36,37,38,39,40,45,46,93,112,113,114,115,116,117,118,119,120,121,122,123],getMaskLength:function(d,h,a,k,f){f=d.length;h||("*"==a?f=k.length+1:1<a&&(f+=d.length*(a-1)));return f}},escapeRegex:function(d){return d.replace(RegExp("(\\/|\\.|\\*|\\+|\\?|\\||\\(|\\)|\\[|\\]|\\{|\\}|\\\\)","gim"),"\\$1")},format:function(e,h){var a=d.extend(!0,{},d.inputmask.defaults,h);C(a.alias,h,a);return D(Q(a),0,a,{action:"format",value:e})}};d.fn.inputmask=function(e,h){var a=d.extend(!0,{},d.inputmask.defaults,
  53. h),k,f=0;if("string"===typeof e)switch(e){case "mask":return C(a.alias,h,a),k=Q(a),0==k.length?this:this.each(function(){D(d.extend(!0,{},k),0,a,{action:"mask",el:this})});case "unmaskedvalue":var r=d(this);return r.data("_inputmask")?(k=r.data("_inputmask").masksets,f=r.data("_inputmask").activeMasksetIndex,a=r.data("_inputmask").opts,D(k,f,a,{action:"unmaskedvalue",$input:r})):r.val();case "remove":return this.each(function(){var e=d(this);if(e.data("_inputmask")){k=e.data("_inputmask").masksets;
  54. f=e.data("_inputmask").activeMasksetIndex;a=e.data("_inputmask").opts;this._valueSet(D(k,f,a,{action:"unmaskedvalue",$input:e,skipDatepickerCheck:!0}));e.removeData("_inputmask");e.unbind(".inputmask");e.removeClass("focus.inputmask");var l;Object.getOwnPropertyDescriptor&&(l=Object.getOwnPropertyDescriptor(this,"value"));l&&l.get?this._valueGet&&Object.defineProperty(this,"value",{get:this._valueGet,set:this._valueSet}):document.__lookupGetter__&&this.__lookupGetter__("value")&&this._valueGet&&(this.__defineGetter__("value",
  55. this._valueGet),this.__defineSetter__("value",this._valueSet));try{delete this._valueGet,delete this._valueSet}catch(h){this._valueSet=this._valueGet=void 0}}});case "getemptymask":return this.data("_inputmask")?(k=this.data("_inputmask").masksets,f=this.data("_inputmask").activeMasksetIndex,k[f]._buffer.join("")):"";case "hasMaskedValue":return this.data("_inputmask")?!this.data("_inputmask").opts.autoUnmask:!1;case "isComplete":return k=this.data("_inputmask").masksets,f=this.data("_inputmask").activeMasksetIndex,
  56. a=this.data("_inputmask").opts,D(k,f,a,{action:"isComplete",buffer:this[0]._valueGet().split("")});case "getmetadata":if(this.data("_inputmask"))return k=this.data("_inputmask").masksets,f=this.data("_inputmask").activeMasksetIndex,k[f].metadata;break;default:return C(e,h,a)||(a.mask=e),k=Q(a),0==k.length?this:this.each(function(){D(d.extend(!0,{},k),f,a,{action:"mask",el:this})})}else{if("object"==typeof e)return a=d.extend(!0,{},d.inputmask.defaults,e),C(a.alias,e,a),k=Q(a),0==k.length?this:this.each(function(){D(d.extend(!0,
  57. {},k),f,a,{action:"mask",el:this})});if(void 0==e)return this.each(function(){var e=d(this).attr("data-inputmask");if(e&&""!=e)try{var e=e.replace(RegExp("'","g"),'"'),f=d.parseJSON("{"+e+"}");d.extend(!0,f,h);a=d.extend(!0,{},d.inputmask.defaults,f);C(a.alias,f,a);a.alias=void 0;d(this).inputmask(a)}catch(k){}})}}}})(jQuery);