jquery.inputmask.js 22 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  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.2.59
  7. */
  8. (function(b){void 0==b.fn.inputmask&&(b.inputmask={defaults:{placeholder:"_",optionalmarker:{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,numericInput:!1,radixPoint:"",skipRadixDance:!1,rightAlignNumerics:!0,
  9. 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,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,
  10. RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91},ignorables:[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,J,H){var t=b.length;!J&&1<H&&(t+=b.length*(H-1));return t}},val:b.fn.val,escapeRegex:function(b){return b.replace(RegExp("(\\/|\\.|\\*|\\+|\\?|\\||\\(|\\)|\\[|\\]|\\{|\\}|\\\\)","gim"),"\\$1")}},b.fn.inputmask=function(C,J){function H(e,f){var a=c.aliases[e];return a?(a.alias&&H(a.alias),b.extend(!0,c,a),b.extend(!0,c,
  11. f),!0):!1}function t(e){var f=!1,a=0,d=c.greedy,j=c.repeat;1==e.length&&!1==d&&(c.placeholder="");for(var e=b.map(e.split(""),function(b){var j=[];if(b==c.escapeChar)f=true;else if(b!=c.optionalmarker.start&&b!=c.optionalmarker.end||f){var k=c.definitions[b];if(k&&!f)for(b=0;b<k.cardinality;b++)j.push(D(a+b));else{j.push(b);f=false}a=a+j.length;return j}}),k=e.slice(),l=1;l<j&&d;l++)k=k.concat(e.slice());return{mask:k,repeat:j,greedy:d}}function L(e){var f=!1,a=!1,d=!1;return b.map(e.split(""),function(b){var k=
  12. [];if(b==c.escapeChar)a=!0;else if(b==c.optionalmarker.start&&!a)d=f=!0;else if(b==c.optionalmarker.end&&!a)f=!1,d=!0;else{var e=c.definitions[b];if(e&&!a){for(var q=e.prevalidator,o=q?q.length:0,r=1;r<e.cardinality;r++){var n=o>=r?q[r-1]:[],p=n.validator,n=n.cardinality;k.push({fn:p?"string"==typeof p?RegExp(p):new function(){this.test=p}:/./,cardinality:n?n:1,optionality:f,newBlockMarker:!0==f?d:!1,offset:0,casing:e.casing,def:e.definitionSymbol|b});!0==f&&(d=!1)}k.push({fn:e.validator?"string"==
  13. typeof e.validator?RegExp(e.validator):new function(){this.test=e.validator}:/./,cardinality:e.cardinality,optionality:f,newBlockMarker:d,offset:0,casing:e.casing,def:e.definitionSymbol|b})}else k.push({fn:null,cardinality:0,optionality:f,newBlockMarker:d,offset:0,casing:null,def:b}),a=!1;d=!1;return k}})}function N(){function e(a){var b=a.length;for(i=0;i<b&&a.charAt(i)!=c.optionalmarker.start;i++);var f=[a.substring(0,i)];i<b&&f.push(a.substring(i+1,b));return f}function f(j,k){var l=0,q=0,o=k.length;
  14. for(i=0;i<o&&!(k.charAt(i)==c.optionalmarker.start&&l++,k.charAt(i)==c.optionalmarker.end&&q++,0<l&&l==q);i++);l=[k.substring(0,i)];i<o&&l.push(k.substring(i+1,o));var r=e(l[0]);if(1<r.length){if(o=j+r[0]+(c.optionalmarker.start+r[1]+c.optionalmarker.end)+(1<l.length?l[1]:""),-1==b.inArray(o,d)&&(d.push(o),q=t(o),a.push({mask:o,_buffer:q.mask,buffer:q.mask.slice(),tests:L(o),lastValidPosition:void 0,greedy:q.greedy,repeat:q.repeat})),o=j+r[0]+(1<l.length?l[1]:""),-1==b.inArray(o,d)&&(d.push(o),q=
  15. t(o),a.push({mask:o,_buffer:q.mask,buffer:q.mask.slice(),tests:L(o),lastValidPosition:void 0,greedy:q.greedy,repeat:q.repeat})),1<e(r[1]).length&&f(j+r[0],r[1]+l[1]),1<l.length&&1<e(l[1]).length)f(j+r[0]+(c.optionalmarker.start+r[1]+c.optionalmarker.end),l[1]),f(j+r[0],l[1])}else o=j+l,-1==b.inArray(o,d)&&(d.push(o),q=t(o),a.push({mask:o,_buffer:q.mask,buffer:q.mask.slice(),tests:L(o),lastValidPosition:void 0,greedy:q.greedy,repeat:q.repeat}))}var a=[],d=[];b.isArray(c.mask)?b.each(c.mask,function(a,
  16. c){f("",c.toString())}):f("",c.mask.toString());return a}function D(b){return c.placeholder.charAt(b%c.placeholder.length)}function E(e,f){function a(){return e[f]}function d(){return a().tests}function j(){return a()._buffer}function k(){return a().buffer}function l(g,M,u,j){function w(a,b){for(var g=r(a),f=M?1:0,e="",j=b.buffer,k=b.tests[g].cardinality;k>f;k--)e+=y(j,g-(k-1));M&&(e+=M);return null!=b.tests[g].fn?b.tests[g].fn.test(e,j,a,u,c):!1}if(u=!0===u){var d=w(g,a());!0===d&&(d={pos:g});return d}var l=
  17. [],d=!1,q=f;b.each(e,function(a){f=a;if(q!=f&&!o(g)){if(M==this._buffer[g]||M==c.skipOptionalPartCharacter)return l.push({activeMasksetIndex:a,result:{refresh:!0,c:this._buffer[g]}}),this.lastValidPosition=g,!1;this.lastValidPosition=j?n()+1:-1}if((void 0==this.lastValidPosition&&g==(j?F(n()):p(-1))||j||c.numericInput?this.lastValidPosition<=c.numericInput?n():p(g):this.lastValidPosition>=F(g))&&0<=g&&g<n()){d=w(g,this);if(!1!==d){!0===d&&(d={pos:g});var b=d.pos||g;if(void 0==this.lastValidPosition||
  18. (j?c.greedy?this.lastValidPosition>b:b==k().length-1:this.lastValidPosition<b))this.lastValidPosition=b}l.push({activeMasksetIndex:a,result:d})}});f=q;return l}function q(g){var M=f,u={activeMasksetIndex:0,lastValidPosition:g?n()+1:-1};b.each(e,function(a){if(void 0!=this.lastValidPosition&&(g||c.numericInput?this.lastValidPosition<u.lastValidPosition:this.lastValidPosition>u.lastValidPosition))u.activeMasksetIndex=a,u.lastValidPosition=this.lastValidPosition});f=u.activeMasksetIndex;M!=f&&(g?H(k(),
  19. 0,F(u.lastValidPosition)):H(k(),p(u.lastValidPosition),n()),a().writeOutBuffer=!0)}function o(a){a=r(a);a=d()[a];return void 0!=a?a.fn:!1}function r(a){return a%d().length}function n(){return c.getMaskLength(j(),a().greedy,a().repeat,k(),c)}function p(a){var b=n();if(a>=b)return b;for(;++a<b&&!o(a););return a}function F(a){if(0>=a)return 0;for(;0<--a&&!o(a););return a}function v(a,b,c,f,e){f&&(b=I(a,b,e));f=d()[r(b)];e=c;if(void 0!=e)switch(f.casing){case "upper":e=c.toUpperCase();break;case "lower":e=
  20. c.toLowerCase()}a[b]=e}function y(a,b,c){c&&(b=I(a,b));return a[b]}function I(a,b,c){if(c)for(;0>b&&a.length<n();){c=j().length-1;for(b=j().length;void 0!==j()[c];)a.unshift(j()[c--])}else for(;void 0==a[b]&&a.length<n();)for(c=0;void 0!==j()[c];)a.push(j()[c++]);return b}function C(a,b,c){a._valueSet(b.join(""));void 0!=c&&B(a,c)}function H(a,b,c){for(var f=n();b<c&&b<f;b++)v(a,b,y(j().slice(),b,!0))}function t(a,b){var c=r(b);v(a,b,y(j(),c))}function J(g,k,u,d){var w=b(g).data("_inputmask").isRTL,
  21. d=void 0!=d?d.slice():L(g._valueGet(),w).split("");b.each(e,function(a,b){b.buffer=b._buffer.slice();b.lastValidPosition=void 0;b.p=w?n():0});!0!==u&&(f=0);k&&g._valueSet("");w&&!c.numericInput&&(d=d.reverse());var l=n();b.each(d,function(f,e){var d=w?c.numericInput?l:l-f:f;(u&&o(w?d-1:d)||e!=y(j(),w?d-1:d,!0)&&-1==b.inArray(e,j().slice(a().lastValidPosition+1,a().p)))&&b(g).trigger("keypress",[!0,e.charCodeAt(0),k,u,d,w])});!0===u&&(a().lastValidPosition=w?p(a().p):F(a().p))}function E(a){return b.inputmask.escapeRegex.call(this,
  22. a)}function L(a,b){return b?a.replace(RegExp("^("+E(j().join(""))+")*"),""):a.replace(RegExp("("+E(j().join(""))+")*$"),"")}function N(a){var c=k(),f=c.slice(),e,j;if(b(a).data("_inputmask").isRTL)for(j=0;j<=f.length-1;j++)if(e=r(j),d()[e].optionality)if(!o(j)||!l(j,c[j],!0))f.splice(0,1);else break;else break;else for(j=f.length-1;0<=j;j--)if(e=r(j),d()[e].optionality)if(!o(j)||!l(j,c[j],!0))f.pop();else break;else break;C(a,f)}function S(a,c){return d()&&(!0===c||!a.hasClass("hasDatepicker"))?b.map(k(),
  23. function(a,b){return o(b)&&l(b,a,!0)?a:null}).join(""):a[0]._valueGet()}function B(a,f,e){var j=a.jquery&&0<a.length?a[0]:a;if("number"==typeof f)b(a).is(":visible")&&(e="number"==typeof e?e:f,!1==c.insertMode&&f==e&&e++,j.setSelectionRange?(j.selectionStart=f,j.selectionEnd=P?f:e):j.createTextRange&&(a=j.createTextRange(),a.collapse(!0),a.moveEnd("character",e),a.moveStart("character",f),a.select()));else{if(!b(a).is(":visible"))return{begin:0,end:0};j.setSelectionRange?(f=j.selectionStart,e=j.selectionEnd):
  24. document.selection&&document.selection.createRange&&(a=document.selection.createRange(),f=0-a.duplicate().moveStart("character",-1E5),e=f+a.text.length);return{begin:f,end:e}}}function Q(a){var c=!1,k=0,d=f;b.each(e,function(b,e){f=b;var d=F(n());if(void 0!=e.lastValidPosition&&e.lastValidPosition>=k&&e.lastValidPosition==d){for(var l=!0,p=0;p<=d;p++){var q=o(p),v=r(p);if(q&&(void 0==a[p]||a[p]==D(p))||!q&&a[p]!=j()[v]){l=!1;break}}if(c=c||l)return!1}k=e.lastValidPosition});f=d;return c}this.unmaskedvalue=
  25. function(a,b){return S(a,b)};this.isComplete=function(a){return Q(a)};this.mask=function(g){function E(a){a=b._data(a).events;b.each(a,function(a,c){b.each(c,function(a,b){if("inputmask"==b.namespace){var c=b.handler;b.handler=function(a){if(this.readOnly||this.disabled)a.preventDefault;else return c.apply(this,arguments)}}})})}function u(a){var c;Object.getOwnPropertyDescriptor&&(c=Object.getOwnPropertyDescriptor(a,"value"));if(c&&c.get)a._valueGet||(a._valueGet=c.get,a._valueSet=c.set,Object.defineProperty(a,
  26. "value",{get:function(){var a=b(this),c=b(this).data("_inputmask"),f=c.masksets,e=c.activeMasksetIndex;return c&&c.opts.autoUnmask?a.inputmask("unmaskedvalue"):this._valueGet()!=f[e]._buffer.join("")?this._valueGet():""},set:function(a){this._valueSet(a);b(this).triggerHandler("setvalue.inputmask")}}));else if(document.__lookupGetter__&&a.__lookupGetter__("value"))a._valueGet||(a._valueGet=a.__lookupGetter__("value"),a._valueSet=a.__lookupSetter__("value"),a.__defineGetter__("value",function(){var a=
  27. b(this),c=b(this).data("_inputmask"),f=c.masksets,e=c.activeMasksetIndex;return c&&c.opts.autoUnmask?a.inputmask("unmaskedvalue"):this._valueGet()!=f[e]._buffer.join("")?this._valueGet():""}),a.__defineSetter__("value",function(a){this._valueSet(a);b(this).triggerHandler("setvalue.inputmask")}));else if(a._valueGet||(a._valueGet=function(){return this.value},a._valueSet=function(a){this.value=a}),!0!=b.fn.val.inputmaskpatch)b.fn.val=function(){if(arguments.length==0){var a=b(this);if(a.data("_inputmask")){if(a.data("_inputmask").opts.autoUnmask)return a.inputmask("unmaskedvalue");
  28. var a=b.inputmask.val.apply(a),c=b(this).data("_inputmask");return a!=c.masksets[c.activeMasksetIndex]._buffer.join("")?a:""}return b.inputmask.val.apply(a)}var f=arguments;return this.each(function(){var a=b(this),c=b.inputmask.val.apply(a,f);a.data("_inputmask")&&a.triggerHandler("setvalue.inputmask");return c})},b.extend(b.fn.val,{inputmaskpatch:!0})}function P(a,b){if(c.numericInput&&""!=c.radixPoint&&!1===c.skipRadixDance){var f=a._valueGet().indexOf(c.radixPoint);m=b.begin<=f||b.end<=f||-1==
  29. f}}function w(c,b,f){for(var e=k();!o(c)&&0<=c-1;)c--;for(var h=c;h<b&&h<n();h++)if(o(h)){t(e,h);var g=p(h),q=y(e,g);if(q!=D(g))if(g<n()&&!1!==l(h,q,!0,m)&&d()[r(h)].def==d()[r(g)].def)v(e,h,y(e,g),!0,m),g<b&&t(e,g);else if(o(h))break}else t(e,h);void 0!=f&&v(e,m?b:F(b),f);if(!1==a().greedy){b=L(e.join(""),m).split("");e.length=b.length;h=0;for(f=e.length;h<f;h++)e[h]=b[h];0==e.length&&(a().buffer=j().slice())}return c}function O(c,b,f,e){for(var h=k();c<=b&&c<n();c++)if(o(c)){var g=y(h,c,!0);v(h,
  30. c,f,!0,m);if(g!=D(c))if(f=p(c),f<n())if(!1!==l(f,g,!0,m)&&d()[r(c)].def==d()[r(f)].def)f=g;else if(o(f))break;else f=g;else break;else if(f=g,!0!==e)break}else t(h,c);e=h.length;if(!1==a().greedy){f=L(h.join(""),m).split("");h.length=f.length;c=0;for(g=h.length;c<g;c++)h[c]=f[c];0==h.length&&(a().buffer=j().slice())}return b-(e-h.length)}function S(d){R=!1;var g=this,G=d.keyCode,s=B(g);P(g,s);if(G==c.keyCode.BACKSPACE||G==c.keyCode.DELETE||Y&&127==G||d.ctrlKey&&88==G){d.preventDefault();var h=s.begin;
  31. if(0==s.begin&&s.end==n())H(k(),s.begin,s.end),b.each(e,function(a,c){c.buffer=c._buffer.slice();c.lastValidPosition=void 0;c.p=m?n():0});else if(1<s.end-s.begin||1==s.end-s.begin&&c.insertMode){H(k(),s.begin,s.end);var l=n();if(!1==c.greedy)m?O(0,s.end-1,D(s.end),!0):w(s.begin,l);else for(var r=s.begin;r<s.end;r++)o(r)&&(m?O(0,s.end-1,D(s.end),!0):w(s.begin,l));J(g,!1,!0,k())}else b.each(e,function(b){f=b;h=V?s.end:s.begin;var b=k(),e=m?F(n()+1):p(-1),g=n();if(G==c.keyCode.DELETE){if(m?h>e:h<e)h=
  32. e;if(h<g&&(c.numericInput&&""!=c.radixPoint&&b[h]==c.radixPoint?(h=b.length-1==h?h:p(h),h=w(h,g)):m?(h=O(0,h,D(h),!0),h=p(h)):h=w(h,g),void 0!=a().lastValidPosition))-1!=a().lastValidPosition&&k()[a().lastValidPosition]==j()[a().lastValidPosition]&&(a().lastValidPosition=m?p(a().lastValidPosition):0==a().lastValidPosition?-1:F(a().lastValidPosition)),(m?a().lastValidPosition>e:a().lastValidPosition<e)?(a().lastValidPosition=void 0,a().p=e):(a().writeOutBuffer=!0,a().p=h)}else if(G==c.keyCode.BACKSPACE)if(m?
  33. h<=e:h>e){if(h-=1,c.numericInput&&""!=c.radixPoint&&b[h]==c.radixPoint?(h=O(0,b.length-1==h?h:h-1,D(h),!0),h++):m?(h=O(0,h,D(h),!0),h=b[h+1]==c.radixPoint?h+1:p(h)):h=w(h,g),void 0!=a().lastValidPosition)-1!=a().lastValidPosition&&k()[a().lastValidPosition]==j()[a().lastValidPosition]&&(a().lastValidPosition=m?p(a().lastValidPosition):0==a().lastValidPosition?-1:F(a().lastValidPosition)),(m?a().lastValidPosition>e:a().lastValidPosition<e)?(a().lastValidPosition=void 0,a().p=e):(a().writeOutBuffer=
  34. !0,a().p=h)}else 0<f&&(a().lastValidPosition=void 0,a().writeOutBuffer=!0,a().p=e,f=0,a().buffer=j().slice(),a().p=m?F(n()+1):p(-1),a().lastValidPosition=void 0)});q(m);C(g,k(),a().p);g._valueGet()==j().join("")&&b(g).trigger("cleared");c.showTooltip&&z.prop("title",a().mask)}else G==c.keyCode.END||G==c.keyCode.PAGE_DOWN?setTimeout(function(){var b=m?a().lastValidPosition:p(a().lastValidPosition);!c.insertMode&&(b==n()&&!d.shiftKey)&&b--;B(g,d.shiftKey?s.begin:b,b)},0):G==c.keyCode.HOME&&!d.shiftKey||
  35. G==c.keyCode.PAGE_UP?B(g,0,d.shiftKey?s.begin:0):G==c.keyCode.ESCAPE?(g._valueSet(a().undoBuffer),J(g,!0,!0)):G==c.keyCode.INSERT&&!d.shiftKey&&!d.ctrlKey?(c.insertMode=!c.insertMode,B(g,!c.insertMode&&s.begin==n()?s.begin-1:s.begin)):!1==c.insertMode&&!d.shiftKey&&(G==c.keyCode.RIGHT?setTimeout(function(){var a=B(g);B(g,a.begin)},0):G==c.keyCode.LEFT&&setTimeout(function(){var a=B(g);B(g,a.begin-1)},0));c.onKeyDown.call(this,d,k(),c);T=-1!=b.inArray(G,c.ignorables)}function X(g,j,d,s,h,r,u){m=void 0==
  36. u?m:u;if(void 0==d&&R)return!1;R=!0;var z=b(this),g=g||window.event,d=d||g.which||g.charCode||g.keyCode,t=String.fromCharCode(d);c.numericInput&&(t==c.radixPoint&&!0!==j)&&(u=this._valueGet().indexOf(c.radixPoint),B(this,p(-1!=u?u:n())));if((g.ctrlKey||g.metaKey||T)&&!0!==j)return!0;if(d){var A,E;j?(d=h?r:c.numericInput?p(a().p):a().p,A={begin:d,end:d}):A=B(this);var K=1<A.end-A.begin||1==A.end-A.begin&&c.insertMode;if(K){var d=f,L=!1;b.each(e,function(b){f=b;a().undoBuffer=k().join("");b=A.end<n()?
  37. A.end:n();H(k(),A.begin,b);var e=n();if(c.greedy==false)m?O(0,b-1,D(b),true):w(A.begin,e);else for(var d=A.begin;d<b;d++)o(d)&&(m?O(0,b-1,D(b-1),true):w(A.begin,e));a().lastValidPosition>A.begin&&a().lastValidPosition<b?a().lastValidPosition=m?b:A.begin:L=true});!0===L&&(f=d,J(this,!1,!0,k()),c.insertMode||b.each(e,function(b){f=b;m?w(0,posend):O(A.begin,ml,D(A.begin),true);a().lastValidPosition=m?F(a().lastValidPosition):p(a().lastValidPosition)}));f=d}if(m){var x=F(A.end),d=l(x,t,h,m);!0===h&&(d=
  38. [{activeMasksetIndex:f,result:d}]);b.each(d,function(b,e){f=e.activeMasksetIndex;a().writeOutBuffer=true;var d=e.result;if(d!==false){var g=false,h=k();if(d!==true){g=d.refresh;x=d.pos!=void 0?d.pos:x;t=d.c!=void 0?d.c:t}if(g!==true){var g=n(),j=p(-1),d=j;if(c.insertMode==true){if(a().greedy==true)for(var s=h.slice();y(s,d,true)!=D(d)&&d<=x;)d=d==g?g+1:p(d);if(d<=x&&(a().greedy||h.length<g||y(h,x)==D(x))){if(h[j]!=D(j)&&h.length<g){h=I(h,-1,m);if((K?A.begin:A.end)!=0)x=x+h}w(d,x,t)}else a().writeOutBuffer=
  39. false}else v(h,x,t,true,m)}a().p=x}})}else x=p(A.begin-1),d=l(x,t,h,m),!0===h&&(d=[{activeMasksetIndex:f,result:d}]),b.each(d,function(b,e){f=e.activeMasksetIndex;a().writeOutBuffer=true;var d=e.result;if(d!==false){var h=false,g=k();if(d!==true){h=d.refresh;x=d.pos!=void 0?d.pos:x;t=d.c!=void 0?d.c:t}if(h!==true)if(c.insertMode==true){d=n();for(h=g.slice();y(h,d,true)!=D(d)&&d>=x;)d=d==0?-1:F(d);d>=x?O(x,g.length,t):a().writeOutBuffer=false}else v(g,x,t,true,m);a().p=p(x)}});!0!==h&&q(m);if(!1!==
  40. s&&(b.each(d,function(a,b){if(b.activeMasksetIndex==f){E=b;return false}}),void 0!=E)){var N=this;setTimeout(function(){c.onKeyValidation.call(N,E.result,c)},0);if(a().writeOutBuffer&&!1!==E.result){var M=k();C(this,M,j?void 0:c.numericInput?p(a().p):a().p);setTimeout(function(){Q(M)&&z.trigger("complete")},0)}else a().buffer=a().undoBuffer.split("")}c.showTooltip&&z.prop("title",a().mask);g.preventDefault()}}function W(e){var f=b(this),d=e.keyCode,g=k();c.onKeyUp.call(this,e,g,c);d==c.keyCode.TAB&&
  41. (f.hasClass("focus.inputmask")&&0==this._valueGet().length&&c.showMaskOnFocus)&&(g=j().slice(),C(this,g),m||B(this,0),a().undoBuffer=this._valueGet())}var z=b(g);if(z.is(":input")){z.data("_inputmask",{masksets:e,activeMasksetIndex:f,opts:c,isRTL:!1});c.showTooltip&&z.prop("title",a().mask);a().greedy=a().greedy?a().greedy:0==a().repeat;var K=z.prop("maxLength");n()>K&&-1<K&&(K<j().length&&(j().length=K),!1==a().greedy&&(a().repeat=Math.round(K/j().length)),z.prop("maxLength",2*n()));u(g);a().undoBuffer=
  42. g._valueGet();var R=!1,T=!1,m=!1;if("rtl"==g.dir||c.numericInput)("rtl"==g.dir||c.numericInput&&c.rightAlignNumerics)&&z.css("text-align","right"),g.dir="ltr",z.removeAttr("dir"),K=z.data("_inputmask"),K.isRTL=!0,z.data("_inputmask",K),m=!0;z.unbind(".inputmask");z.removeClass("focus.inputmask");z.closest("form").bind("submit",function(){z[0]._valueGet()!=a().undoBuffer&&z.change()});z.bind("mouseenter.inputmask",function(){!b(this).hasClass("focus.inputmask")&&c.showMaskOnHover&&this._valueGet()!=
  43. k().join("")&&C(this,k())}).bind("blur.inputmask",function(){var d=b(this),g=this._valueGet(),l=k();d.removeClass("focus.inputmask");g!=a().undoBuffer&&d.change();c.clearMaskOnLostFocus&&g!=""&&(g==j().join("")?this._valueSet(""):N(this));if(!Q(l)){d.trigger("incomplete");if(c.clearIncomplete){b.each(e,function(a,b){b.buffer=b._buffer.slice();b.lastValidPosition=void 0;b.p=m?n():0});f=0;if(c.clearMaskOnLostFocus)this._valueSet("");else{l=j().slice();C(this,l)}}}}).bind("focus.inputmask",function(){var e=
  44. b(this),d=this._valueGet();c.showMaskOnFocus&&!e.hasClass("focus.inputmask")&&(!c.showMaskOnHover||c.showMaskOnHover&&d=="")&&this._valueGet()!=k().join("")&&C(this,k(),a().p);e.addClass("focus.inputmask");a().undoBuffer=this._valueGet()}).bind("mouseleave.inputmask",function(){var a=b(this);c.clearMaskOnLostFocus&&(a.hasClass("focus.inputmask")||(this._valueGet()==j().join("")||this._valueGet()==""?this._valueSet(""):N(this)))}).bind("click.inputmask",function(){var e=this;setTimeout(function(){var d=
  45. B(e),f=k();if(d.begin==d.end){var g=d.begin,h=a().lastValidPosition;P(e,d);if(m){d=c.numericInput?c.skipRadixDance===false&&c.radixPoint!=""&&b.inArray(c.radixPoint,f)!=-1?b.inArray(c.radixPoint,f):n():F((h==void 0?n():h)+1);B(e,g>d&&(l(g,f[g],true,m)!==false||!o(g))?g:d)}else{d=p(h==void 0?-1:h);B(e,g<d&&(l(g,f[g],true,m)!==false||!o(g))?g:d)}}},0)}).bind("dblclick.inputmask",function(){var b=this;a().lastValidPosition!=void 0&&setTimeout(function(){m?B(b,F(a().lastValidPosition),n()):B(b,0,p(a().lastValidPosition))},
  46. 0)}).bind("keydown.inputmask",S).bind("keypress.inputmask",X).bind("keyup.inputmask",W).bind(Z+".inputmask dragdrop.inputmask drop.inputmask",function(){var a=this,c=b(a);setTimeout(function(){J(a,true,false);Q(k())&&c.trigger("complete");c.click()},0)}).bind("setvalue.inputmask",function(){a().undoBuffer=this._valueGet();J(this,true);this._valueGet()==j().join("")&&this._valueSet("")}).bind("complete.inputmask",c.oncomplete).bind("incomplete.inputmask",c.onincomplete).bind("cleared.inputmask",c.oncleared);
  47. J(g,!0,!1);var U;try{U=document.activeElement}catch($){}U===g?(z.addClass("focus.inputmask"),B(g,a().p)):c.clearMaskOnLostFocus&&(k().join("")==j().join("")?g._valueSet(""):N(g));E(g)}};return this}var c=b.extend(!0,{},b.inputmask.defaults,J),y=null!==navigator.userAgent.match(/msie 10/i),Y=null!==navigator.userAgent.match(/iphone/i),P=null!==navigator.userAgent.match(/android.*safari.*/i),Z=function(b){var c=document.createElement("input"),b="on"+b,a=b in c;a||(c.setAttribute(b,"return;"),a="function"==
  48. typeof c[b]);return a}("paste")&&!y?"paste":"input",V,v,I=0;P&&(y=navigator.userAgent.match(/safari.*/i),V=537>=parseInt(RegExp(/[0-9]+/).exec(y)));if("string"===typeof C)switch(C){case "mask":return H(c.alias,J),v=N(),this.each(function(){E(b.extend(true,{},v),0).mask(this)});case "unmaskedvalue":return y=b(this),y.data("_inputmask")?(v=y.data("_inputmask").masksets,I=y.data("_inputmask").activeMasksetIndex,c=y.data("_inputmask").opts,E(v,I).unmaskedvalue(y)):y.val();case "remove":return this.each(function(){var e=
  49. b(this),f=this;setTimeout(function(){if(e.data("_inputmask")){v=e.data("_inputmask").masksets;I=e.data("_inputmask").activeMasksetIndex;c=e.data("_inputmask").opts;f._valueSet(E(v,I).unmaskedvalue(e,true));e.removeData("_inputmask");e.unbind(".inputmask");e.removeClass("focus.inputmask");var a;Object.getOwnPropertyDescriptor&&(a=Object.getOwnPropertyDescriptor(f,"value"));if(a&&a.get)f._valueGet&&Object.defineProperty(f,"value",{get:f._valueGet,set:f._valueSet});else if(document.__lookupGetter__&&
  50. f.__lookupGetter__("value")&&f._valueGet){f.__defineGetter__("value",f._valueGet);f.__defineSetter__("value",f._valueSet)}delete f._valueGet;delete f._valueSet}},0)});case "getemptymask":return this.data("_inputmask")?(v=this.data("_inputmask").masksets,I=this.data("_inputmask").activeMasksetIndex,v[I]._buffer.join("")):"";case "hasMaskedValue":return this.data("_inputmask")?!this.data("_inputmask").opts.autoUnmask:!1;case "isComplete":return v=this.data("_inputmask").masksets,I=this.data("_inputmask").activeMasksetIndex,
  51. c=this.data("_inputmask").opts,E(v,I).isComplete(this[0]._valueGet().split(""));default:return H(C,J)||(c.mask=C),v=N(),this.each(function(){E(b.extend(true,{},v),I).mask(this)})}else{if("object"==typeof C)return c=b.extend(!0,{},b.inputmask.defaults,C),H(c.alias,C),v=N(),this.each(function(){E(b.extend(true,{},v),I).mask(this)});if(void 0==C)return this.each(function(){var e=b(this).attr("data-inputmask");if(e&&e!="")try{var e=e.replace(RegExp("'","g"),'"'),f=b.parseJSON("{"+e+"}");b.extend(true,
  52. f,J);c=b.extend(true,{},b.inputmask.defaults,f);H(c.alias,f);c.alias=void 0;b(this).inputmask(c)}catch(a){}})}return this})})(jQuery);