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