jquery.inputmask.js 24 KB

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