inputmask.min.js 50 KB

123456789
  1. /*!
  2. * inputmask.min.js
  3. * https://github.com/RobinHerbots/Inputmask
  4. * Copyright (c) 2010 - 2017 Robin Herbots
  5. * Licensed under the MIT license (http://www.opensource.org/licenses/mit-license.php)
  6. * Version: 4.0.1-48
  7. */
  8. !function(e){"function"==typeof define&&define.amd?define(["./dependencyLibs/inputmask.dependencyLib","./global/window","./global/document"],e):"object"==typeof exports?module.exports=e(require("./dependencyLibs/inputmask.dependencyLib"),require("./global/window"),require("./global/document")):window.Inputmask=e(window.dependencyLib||jQuery,window,document)}(function(e,t,n,i){function a(t,n,r){if(!(this instanceof a))return new a(t,n,r);this.el=i,this.events={},this.maskset=i,this.refreshValue=!1,!0!==r&&(e.isPlainObject(t)?n=t:(n=n||{}).alias=t,this.opts=e.extend(!0,{},this.defaults,n),this.noMasksCache=n&&n.definitions!==i,this.userOptions=n||{},this.isRTL=this.opts.numericInput,o(this.opts.alias,n,this.opts))}function o(t,n,r){var s=a.prototype.aliases[t];return s?(s.alias&&o(s.alias,i,r),e.extend(!0,r,s),e.extend(!0,r,n),!0):(null===r.mask&&(r.mask=t),!1)}function r(t,n){function o(t,o,r){var s=!1;if(null!==t&&""!==t||((s=null!==r.regex)?t=(t=r.regex).replace(/^(\^)(.*)(\$)$/,"$2"):(s=!0,t=".*")),1===t.length&&!1===r.greedy&&0!==r.repeat&&(r.placeholder=""),r.repeat>0||"*"===r.repeat||"+"===r.repeat){var l="*"===r.repeat?0:"+"===r.repeat?1:r.repeat;t=r.groupmarker.start+t+r.groupmarker.end+r.quantifiermarker.start+l+","+r.repeat+r.quantifiermarker.end}var c,u=s?"regex_"+r.regex:r.numericInput?t.split("").reverse().join(""):t;return a.prototype.masksCache[u]===i||!0===n?(c={mask:t,maskToken:a.prototype.analyseMask(t,s,r),validPositions:{},_buffer:i,buffer:i,tests:{},metadata:o,maskLength:i},!0!==n&&(a.prototype.masksCache[u]=c,c=e.extend(!0,{},a.prototype.masksCache[u]))):c=e.extend(!0,{},a.prototype.masksCache[u]),c}if(e.isFunction(t.mask)&&(t.mask=t.mask(t)),e.isArray(t.mask)){if(t.mask.length>1){t.keepStatic=null===t.keepStatic||t.keepStatic;var r=t.groupmarker.start;return e.each(t.numericInput?t.mask.reverse():t.mask,function(n,a){r.length>1&&(r+=t.groupmarker.end+t.alternatormarker+t.groupmarker.start),a.mask===i||e.isFunction(a.mask)?r+=a:r+=a.mask}),r+=t.groupmarker.end,o(r,t.mask,t)}t.mask=t.mask.pop()}return t.mask&&t.mask.mask!==i&&!e.isFunction(t.mask.mask)?o(t.mask.mask,t.mask,t):o(t.mask,t.mask,t)}function s(e){var t=n.createElement("input"),i="on"+e,a=i in t;return a||(t.setAttribute(i,"return;"),a="function"==typeof t[i]),t=null,a}function l(o,r,c){function m(e,t,n){t=t||0;var a,o,r,s=[],l=0,u=g();do{!0===e&&d().validPositions[l]?(o=(r=d().validPositions[l]).match,a=r.locator.slice(),s.push(!0===n?r.input:!1===n?o.nativeDef:L(l,o))):(o=(r=y(l,a,l-1)).match,a=r.locator.slice(),(!1===c.jitMasking||l<u||"number"==typeof c.jitMasking&&isFinite(c.jitMasking)&&c.jitMasking>l)&&s.push(!1===n?o.nativeDef:L(l,o))),l++}while((q===i||l<q)&&(null!==o.fn||""!==o.def)||t>l);return""===s[s.length-1]&&s.pop(),d().maskLength=l+1,s}function d(){return r}function v(e){var t=d();t.buffer=i,!0!==e&&(t.validPositions={},t.p=0)}function g(e,t,n){var a=-1,o=-1,r=n||d().validPositions;e===i&&(e=-1);for(var s in r){var l=parseInt(s);r[l]&&(t||!0!==r[l].generatedInput)&&(l<=e&&(a=l),l>=e&&(o=l))}return-1!==a&&e-a>1||o<e?a:o}function k(t,n,a,o){var r,s=t,l=e.extend(!0,{},d().validPositions),u=!1;for(d().p=t,r=n-1;r>=s;r--)d().validPositions[r]!==i&&(!0!==a&&(!d().validPositions[r].match.optionality&&function(e){var t=d().validPositions[e];if(t!==i&&null===t.match.fn){var n=d().validPositions[e-1],a=d().validPositions[e+1];return n!==i&&a!==i}return!1}(r)||!1===c.canClearPosition(d(),r,g(i,!0),o,c))||delete d().validPositions[r]);for(v(!0),r=s+1;r<=g();){for(;d().validPositions[s]!==i;)s++;if(r<s&&(r=s+1),d().validPositions[r]===i&&S(r))r++;else{var f=y(r);!1===u&&l[s]&&l[s].match.def===f.match.def?(d().validPositions[s]=e.extend(!0,{},l[s]),d().validPositions[s].input=f.input,delete d().validPositions[r],r++):E(s,f.match.def)?!1!==O(s,f.input||L(r),!0)&&(delete d().validPositions[r],r++,u=!0):S(r)||(r++,s--),s++}}v(!0)}function b(e,t){for(var n,a=e,o=g(),r=d().validPositions[o]||C(0)[0],s=r.alternation!==i?r.locator[r.alternation].toString().split(","):[],l=0;l<a.length&&(!((n=a[l]).match&&(c.greedy&&!0!==n.match.optionalQuantifier||(!1===n.match.optionality||!1===n.match.newBlockMarker)&&!0!==n.match.optionalQuantifier)&&(r.alternation===i||r.alternation!==n.alternation||n.locator[r.alternation]!==i&&M(n.locator[r.alternation].toString().split(","),s)))||!0===t&&(null!==n.match.fn||/[0-9a-bA-Z]/.test(n.match.def)));l++);return n}function y(e,t,n){return d().validPositions[e]||b(C(e,t?t.slice():t,n))}function P(e){return d().validPositions[e]?d().validPositions[e]:C(e)[0]}function E(e,t){for(var n=!1,i=C(e),a=0;a<i.length;a++)if(i[a].match&&i[a].match.def===t){n=!0;break}return n}function C(t,n,a){function o(n,a,r,l){function f(r,l,v){function g(t,n){var i=0===e.inArray(t,n.matches);return i||e.each(n.matches,function(e,a){if(!0===a.isQuantifier&&(i=g(t,n.matches[e-1])))return!1}),i}function k(t,n,a){var o,r;if(d().validPositions[t-1]&&a&&d().tests[t])for(var s=d().validPositions[t-1].locator,l=d().tests[t][0].locator,c=0;c<a;c++)if(s[c]!==l[c])return s.slice(a+1);return(d().tests[t]||d().validPositions[t])&&e.each(d().tests[t]||[d().validPositions[t]],function(e,t){var s=a!==i?a:t.alternation,l=t.locator[s]!==i?t.locator[s].toString().indexOf(n):-1;(r===i||l<r)&&-1!==l&&(o=t,r=l)}),o?o.locator.slice((a!==i?a:o.alternation)+1):a!==i?k(t,n):i}if(u>1e4)throw"Inputmask: There is probably an error in your mask definition or in the code. Create an issue on github with an example of the mask you are using. "+d().mask;if(u===t&&r.matches===i)return p.push({match:r,locator:l.reverse(),cd:m}),!0;if(r.matches!==i){if(r.isGroup&&v!==r){if(r=f(n.matches[e.inArray(r,n.matches)+1],l))return!0}else if(r.isOptional){var b=r;if(r=o(r,a,l,v)){if(s=p[p.length-1].match,!g(s,b))return!0;h=!0,u=t}}else if(r.isAlternator){var y,P=r,E=[],C=p.slice(),_=l.length,A=a.length>0?a.shift():-1;if(-1===A||"string"==typeof A){var x,w=u,M=a.slice(),O=[];if("string"==typeof A)O=A.split(",");else for(x=0;x<P.matches.length;x++)O.push(x);for(var S=0;S<O.length;S++){if(x=parseInt(O[S]),p=[],a=k(u,x,_)||M.slice(),!0!==(r=f(P.matches[x]||n.matches[x],[x].concat(l),v)||r)&&r!==i&&O[O.length-1]<P.matches.length){var D=e.inArray(r,n.matches)+1;n.matches.length>D&&(r=f(n.matches[D],[D].concat(l.slice(1,l.length)),v))&&(O.push(D.toString()),e.each(p,function(e,t){t.alternation=l.length-1}))}y=p.slice(),u=w,p=[];for(var j=0;j<y.length;j++){var T=y[j],G=!1;T.alternation=T.alternation||_;for(var L=0;L<E.length;L++){var B=E[L];if("string"!=typeof A||-1!==e.inArray(T.locator[T.alternation].toString(),O)){if(function(e,t){return e.match.nativeDef===t.match.nativeDef||e.match.def===t.match.nativeDef||e.match.nativeDef===t.match.def}(T,B)){G=!0,T.alternation===B.alternation&&-1===B.locator[B.alternation].toString().indexOf(T.locator[T.alternation])&&(B.locator[B.alternation]=B.locator[B.alternation]+","+T.locator[T.alternation],B.alternation=T.alternation),T.match.nativeDef===B.match.def&&(T.locator[T.alternation]=B.locator[B.alternation],E.splice(E.indexOf(B),1,T));break}if(T.match.def===B.match.def){G=!1;break}if(function(e,n){return null===e.match.fn&&null!==n.match.fn&&n.match.fn.test(e.match.def,d(),t,!1,c,!1)}(T,B)||function(e,n){return null!==e.match.fn&&null!==n.match.fn&&n.match.fn.test(e.match.def.replace(/[\[\]]/g,""),d(),t,!1,c,!1)}(T,B)){T.alternation===B.alternation&&-1===T.locator[T.alternation].toString().indexOf(B.locator[B.alternation].toString().split("")[0])&&(T.na=T.na||T.locator[T.alternation].toString(),-1===T.na.indexOf(T.locator[T.alternation].toString().split("")[0])&&(T.na=T.na+","+T.locator[B.alternation].toString().split("")[0]),G=!0,T.locator[T.alternation]=B.locator[B.alternation].toString().split("")[0]+","+T.locator[T.alternation],E.splice(E.indexOf(B),0,T));break}}}G||E.push(T)}}"string"==typeof A&&(E=e.map(E,function(t,n){if(isFinite(n)){var a=t.alternation,o=t.locator[a].toString().split(",");t.locator[a]=i,t.alternation=i;for(var r=0;r<o.length;r++)-1!==e.inArray(o[r],O)&&(t.locator[a]!==i?(t.locator[a]+=",",t.locator[a]+=o[r]):t.locator[a]=parseInt(o[r]),t.alternation=a);if(t.locator[a]!==i)return t}})),p=C.concat(E),u=t,h=p.length>0,r=E.length>0,a=M.slice()}else r=f(P.matches[A]||n.matches[A],[A].concat(l),v);if(r)return!0}else if(r.isQuantifier&&v!==n.matches[e.inArray(r,n.matches)-1])for(var I=r,F=a.length>0?a.shift():0;F<(isNaN(I.quantifier.max)?F+1:I.quantifier.max)&&u<=t;F++){var N=n.matches[e.inArray(I,n.matches)-1];if(r=f(N,[F].concat(l),N)){if(s=p[p.length-1].match,s.optionalQuantifier=F>I.quantifier.min-1,g(s,N)){if(F>I.quantifier.min-1){h=!0,u=t;break}return!0}return!0}}else if(r=o(r,a,l,v))return!0}else u++}for(var v=a.length>0?a.shift():0;v<n.matches.length;v++)if(!0!==n.matches[v].isQuantifier){var g=f(n.matches[v],[v].concat(r),l);if(g&&u===t)return g;if(u>t)break}}function r(e){if(c.keepStatic&&t>0&&e.length>1+(""===e[e.length-1].match.def?1:0)&&!0!==e[0].match.optionality&&!0!==e[0].match.optionalQuantifier&&null===e[0].match.fn&&!/[0-9a-bA-Z]/.test(e[0].match.def)){if(d().validPositions[t-1]===i)return[b(e)];if(d().validPositions[t-1].alternation===e[0].alternation)return[b(e)];if(d().validPositions[t-1])return[b(e)]}return e}var s,l=d().maskToken,u=n?a:0,f=n?n.slice():[0],p=[],h=!1,m=n?n.join(""):"";if(t>-1){if(n===i){for(var v,g=t-1;(v=d().validPositions[g]||d().tests[g])===i&&g>-1;)g--;v!==i&&g>-1&&(f=function(t){var n=[];return e.isArray(t)||(t=[t]),t.length>0&&(t[0].alternation===i?0===(n=b(t.slice()).locator.slice()).length&&(n=t[0].locator.slice()):e.each(t,function(e,t){if(""!==t.def)if(0===n.length)n=t.locator.slice();else for(var i=0;i<n.length;i++)t.locator[i]&&-1===n[i].toString().indexOf(t.locator[i])&&(n[i]+=","+t.locator[i])})),n}(v),m=f.join(""),u=g)}if(d().tests[t]&&d().tests[t][0].cd===m)return r(d().tests[t]);for(var k=f.shift();k<l.length&&!(o(l[k],f,[k])&&u===t||u>t);k++);}return(0===p.length||h)&&p.push({match:{fn:null,cardinality:0,optionality:!0,casing:null,def:"",placeholder:""},locator:[],cd:m}),n!==i&&d().tests[t]?r(e.extend(!0,[],p)):(d().tests[t]=e.extend(!0,[],p),r(d().tests[t]))}function _(){return d()._buffer===i&&(d()._buffer=m(!1,1),d().buffer===i&&(d().buffer=d()._buffer.slice())),d()._buffer}function A(e){return d().buffer!==i&&!0!==e||(d().buffer=m(!0,g(),!0)),d().buffer}function x(e,t,n){var a,o;if(!0===e)v(),e=0,t=n.length;else for(a=e;a<t;a++)delete d().validPositions[a];for(o=e,a=e;a<t;a++)if(v(!0),n[a]!==c.skipOptionalPartCharacter){var r=O(o,n[a],!0,!0);!1!==r&&(v(!0),o=r.caret!==i?r.caret:r.pos+1)}}function w(t,n,i){switch(c.casing||n.casing){case"upper":t=t.toUpperCase();break;case"lower":t=t.toLowerCase();break;case"title":var o=d().validPositions[i-1];t=0===i||o&&o.input===String.fromCharCode(a.keyCode.SPACE)?t.toUpperCase():t.toLowerCase();break;default:if(e.isFunction(c.casing)){var r=Array.prototype.slice.call(arguments);r.push(d().validPositions),t=c.casing.apply(this,r)}}return t}function M(t,n,a){for(var o,r=c.greedy?n:n.slice(0,1),s=!1,l=a!==i?a.split(","):[],u=0;u<l.length;u++)-1!==(o=t.indexOf(l[u]))&&t.splice(o,1);for(var f=0;f<t.length;f++)if(-1!==e.inArray(t[f],r)){s=!0;break}return s}function O(t,n,o,r,s,l){function u(e){var t=X?e.begin-e.end>1||e.begin-e.end==1:e.end-e.begin>1||e.end-e.begin==1;return t&&0===e.begin&&e.end===d().maskLength?"full":t}function f(n,a,o){var s=!1;return e.each(C(n),function(l,f){for(var h=f.match,m=a?1:0,b="",y=h.cardinality;y>m;y--)b+=T(n-(y-1));if(a&&(b+=a),A(!0),!1!==(s=null!=h.fn?h.fn.test(b,d(),n,o,c,u(t)):(a===h.def||a===c.skipOptionalPartCharacter)&&""!==h.def&&{c:L(n,h,!0)||h.def,pos:n})){var P=s.c!==i?s.c:a;P=P===c.skipOptionalPartCharacter&&null===h.fn?L(n,h,!0)||h.def:P;var E=n,C=A();if(s.remove!==i&&(e.isArray(s.remove)||(s.remove=[s.remove]),e.each(s.remove.sort(function(e,t){return t-e}),function(e,t){k(t,t+1,!0)})),s.insert!==i&&(e.isArray(s.insert)||(s.insert=[s.insert]),e.each(s.insert.sort(function(e,t){return e-t}),function(e,t){O(t.pos,t.c,!0,r)})),s.refreshFromBuffer){var _=s.refreshFromBuffer;if(x(!0===_?_:_.start,_.end,C),s.pos===i&&s.c===i)return s.pos=g(),!1;if((E=s.pos!==i?s.pos:n)!==n)return s=e.extend(s,O(E,P,!0,r)),!1}else if(!0!==s&&s.pos!==i&&s.pos!==n&&(E=s.pos,x(n,E,A().slice()),E!==n))return s=e.extend(s,O(E,P,!0)),!1;return(!0===s||s.pos!==i||s.c!==i)&&(l>0&&v(!0),p(E,e.extend({},f,{input:w(P,h,E)}),r,u(t))||(s=!1),!1)}}),s}function p(t,n,a,o){if(o||c.insertMode&&d().validPositions[t]!==i&&a===i){var r,s=e.extend(!0,{},d().validPositions),l=g(i,!0);for(r=t;r<=l;r++)delete d().validPositions[r];d().validPositions[t]=e.extend(!0,{},n);var u,f=!0,p=d().validPositions,m=!1,k=d().maskLength;for(r=u=t;r<=l;r++){var b=s[r];if(b!==i)for(var y=u;y<d().maskLength&&(null===b.match.fn&&p[r]&&(!0===p[r].match.optionalQuantifier||!0===p[r].match.optionality)||null!=b.match.fn);){if(y++,!1===m&&s[y]&&s[y].match.def===b.match.def)d().validPositions[y]=e.extend(!0,{},s[y]),d().validPositions[y].input=b.input,h(y),u=y,f=!0;else if(E(y,b.match.def)){var P=O(y,b.input,!0,!0);f=!1!==P,u=P.caret||P.insert?g():y,m=!0}else if(!(f=!0===b.generatedInput)&&y>=d().maskLength-1)break;if(d().maskLength<k&&(d().maskLength=k),f)break}if(!f)break}if(!f)return d().validPositions=e.extend(!0,{},s),v(!0),!1}else d().validPositions[t]=e.extend(!0,{},n);return v(!0),!0}function h(t){for(var n=t-1;n>-1&&!d().validPositions[n];n--);var a,o;for(n++;n<t;n++)d().validPositions[n]===i&&(!1===c.jitMasking||c.jitMasking>n)&&(""===(o=C(n,y(n-1).locator,n-1).slice())[o.length-1].match.def&&o.pop(),(a=b(o))&&(a.match.def===c.radixPointDefinitionSymbol||!S(n,!0)||e.inArray(c.radixPoint,A())<n&&a.match.fn&&a.match.fn.test(L(n),d(),n,!1,c))&&!1!==(P=f(n,L(n,a.match,!0)||(null==a.match.fn?a.match.def:""!==L(n)?L(n):A()[n]),!0))&&(d().validPositions[P.pos||n].generatedInput=!0))}o=!0===o;var m=t;t.begin!==i&&(m=X&&!u(t)?t.end:t.begin);var P=!0,_=e.extend(!0,{},d().validPositions);if(e.isFunction(c.preValidation)&&!o&&!0!==r&&!0!==l&&(P=c.preValidation(A(),m,n,u(t),c)),!0===P){if(h(m),u(t)&&(U(i,a.keyCode.DELETE,t,!0,!0),m=d().p),m<d().maskLength&&(q===i||m<q)&&(P=f(m,n,o),(!o||!0===r)&&!1===P&&!0!==l)){var j=d().validPositions[m];if(!j||null!==j.match.fn||j.match.def!==n&&n!==c.skipOptionalPartCharacter){if((c.insertMode||d().validPositions[D(m)]===i)&&!S(m,!0))for(var G=m+1,B=D(m);G<=B;G++)if(!1!==(P=f(G,n,o))){!function(t,n){var a=d().validPositions[n];if(a)for(var o=a.locator,r=o.length,s=t;s<n;s++)if(d().validPositions[s]===i&&!S(s,!0)){var l=C(s).slice(),c=b(l,!0),u=-1;""===l[l.length-1].match.def&&l.pop(),e.each(l,function(e,t){for(var n=0;n<r;n++){if(t.locator[n]===i||!M(t.locator[n].toString().split(","),o[n].toString().split(","),t.na)){var a=o[n],s=c.locator[n],l=t.locator[n];a-s>Math.abs(a-l)&&(c=t);break}u<n&&(u=n,c=t)}}),(c=e.extend({},c,{input:L(s,c.match,!0)||c.match.def})).generatedInput=!0,p(s,c,!0),d().validPositions[n]=i,f(n,a.input,!0)}}(m,P.pos!==i?P.pos:G),m=G;break}}else P={caret:D(m)}}!1===P&&c.keepStatic&&!o&&!0!==s&&(P=function(t,n,a){var o,s,l,u,f,p,h,m,k=e.extend(!0,{},d().validPositions),b=!1,y=g();for(u=d().validPositions[y];y>=0;y--)if((l=d().validPositions[y])&&l.alternation!==i){if(o=y,s=d().validPositions[o].alternation,u.locator[l.alternation]!==l.locator[l.alternation])break;u=l}if(s!==i){m=parseInt(o);var P=u.locator[u.alternation||s]!==i?u.locator[u.alternation||s]:h[0];P.length>0&&(P=P.split(",")[0]);var E=d().validPositions[m],_=d().validPositions[m-1];e.each(C(m,_?_.locator:i,m-1),function(o,l){h=l.locator[s]?l.locator[s].toString().split(","):[];for(var u=0;u<h.length;u++){var y=[],C=0,_=0,A=!1;if(P<h[u]&&(l.na===i||-1===e.inArray(h[u],l.na.split(","))||-1===e.inArray(P.toString(),h))){d().validPositions[m]=e.extend(!0,{},l);var x=d().validPositions[m].locator;for(d().validPositions[m].locator[s]=parseInt(h[u]),null==l.match.fn?(E.input!==l.match.def&&(A=!0,!0!==E.generatedInput&&y.push(E.input)),_++,d().validPositions[m].generatedInput=!/[0-9a-bA-Z]/.test(l.match.def),d().validPositions[m].input=l.match.def):d().validPositions[m].input=E.input,f=m+1;f<g(i,!0)+1;f++)(p=d().validPositions[f])&&!0!==p.generatedInput&&/[0-9a-bA-Z]/.test(p.input)?y.push(p.input):f<t&&C++,delete d().validPositions[f];for(A&&y[0]===l.match.def&&y.shift(),v(!0),b=!0;y.length>0;){var w=y.shift();if(w!==c.skipOptionalPartCharacter&&!(b=O(g(i,!0)+1,w,!1,r,!0)))break}if(b){d().validPositions[m].locator=x;var M=g(t)+1;for(f=m+1;f<g()+1;f++)((p=d().validPositions[f])===i||null==p.match.fn)&&f<t+(_-C)&&_++;b=O((t+=_-C)>M?M:t,n,a,r,!0)}if(b)return!1;v(),d().validPositions=e.extend(!0,{},k)}}})}return b}(m,n,o)),!0===P&&(P={pos:m})}if(e.isFunction(c.postValidation)&&!1!==P&&!o&&!0!==r&&!0!==l){var I=c.postValidation(A(!0),P,c);if(I!==i){if(I.refreshFromBuffer&&I.buffer){var F=I.refreshFromBuffer;x(!0===F?F:F.start,F.end,I.buffer)}P=!0===I?P:I}}return P&&P.pos===i&&(P.pos=m),!1!==P&&!0!==l||(v(!0),d().validPositions=e.extend(!0,{},_)),P}function S(e,t){var n=y(e).match;if(""===n.def&&(n=P(e).match),null!=n.fn)return n.fn;if(!0!==t&&e>-1){var i=C(e);return i.length>1+(""===i[i.length-1].match.def?1:0)}return!1}function D(e,t){var n=d().maskLength;if(e>=n)return n;var i=e;for(C(n+1).length>1&&(m(!0,n+1,!0),n=d().maskLength);++i<n&&(!0===t&&(!0!==P(i).match.newBlockMarker||!S(i))||!0!==t&&!S(i)););return i}function j(e,t){var n,i=e;if(i<=0)return 0;for(;--i>0&&(!0===t&&!0!==P(i).match.newBlockMarker||!0!==t&&!S(i)&&((n=C(i)).length<2||2===n.length&&""===n[1].match.def)););return i}function T(e){return d().validPositions[e]===i?L(e):d().validPositions[e].input}function G(t,n,a,o,r){if(o&&e.isFunction(c.onBeforeWrite)){var s=c.onBeforeWrite.call($,o,n,a,c);if(s){if(s.refreshFromBuffer){var l=s.refreshFromBuffer;x(!0===l?l:l.start,l.end,s.buffer||n),n=A(!0)}a!==i&&(a=s.caret!==i?s.caret:a)}}t!==i&&(t.inputmask._valueSet(n.join("")),a===i||o!==i&&"blur"===o.type?H(t,a,0===n.length):F(t,a),!0===r&&(Y=!0,e(t).trigger("input")))}function L(t,n,a){if((n=n||P(t).match).placeholder!==i||!0===a)return e.isFunction(n.placeholder)?n.placeholder(c):n.placeholder;if(null===n.fn){if(t>-1&&d().validPositions[t]===i){var o,r=C(t),s=[];if(r.length>1+(""===r[r.length-1].match.def?1:0))for(var l=0;l<r.length;l++)if(!0!==r[l].match.optionality&&!0!==r[l].match.optionalQuantifier&&(null===r[l].match.fn||o===i||!1!==r[l].match.fn.test(o.match.def,d(),t,!0,c))&&(s.push(r[l]),null===r[l].match.fn&&(o=r[l]),s.length>1&&/[0-9a-bA-Z]/.test(s[0].match.def)))return c.placeholder.charAt(t%c.placeholder.length)}return n.def}return c.placeholder.charAt(t%c.placeholder.length)}function B(t,o,r,s,l){function u(e,t){return-1!==_().slice(e,D(e)).join("").indexOf(t)&&!S(e)&&P(e).match.nativeDef===t.charAt(t.length-1)}var f=s.slice(),p="",h=-1,m=i;if(v(),r||!0===c.autoUnmask)h=D(h);else{var k=_().slice(0,D(-1)).join(""),b=f.join("").match(new RegExp("^"+a.escapeRegex(k),"g"));b&&b.length>0&&(f.splice(0,b.length*k.length),h=D(h))}if(-1===h?(d().p=D(h),h=0):d().p=h,e.each(f,function(n,a){if(a!==i)if(d().validPositions[n]===i&&f[n]===L(n)&&S(n,!0)&&!1===O(n,f[n],!0,i,i,!0))d().p++;else{var o=new e.Event("_checkval");o.which=a.charCodeAt(0),p+=a;var s=g(i,!0),l=d().validPositions[s],k=y(s+1,l?l.locator.slice():i,s);if(!u(h,p)||r||c.autoUnmask){var b=r?n:null==k.match.fn&&k.match.optionality&&s+1<d().p?s+1:d().p;m=ae.keypressEvent.call(t,o,!0,!1,r,b),h=b+1,p=""}else m=ae.keypressEvent.call(t,o,!0,!1,!0,s+1);if(!1!==m&&!r&&e.isFunction(c.onBeforeWrite)){var P=m;if(m=c.onBeforeWrite.call($,o,A(),m.forwardPosition,c),(m=e.extend(P,m))&&m.refreshFromBuffer){var E=m.refreshFromBuffer;x(!0===E?E:E.start,E.end,m.buffer),v(!0),m.caret&&(d().p=m.caret,m.forwardPosition=m.caret)}}}}),o){var E=i;n.activeElement===t&&m&&(E=c.numericInput?j(m.forwardPosition):m.forwardPosition),G(t,A(),E,l||new e.Event("checkval"),l&&"input"===l.type)}}function I(t){if(t){if(t.inputmask===i)return t.value;t.inputmask&&t.inputmask.refreshValue&&ae.setValueEvent.call(t)}var n=[],a=d().validPositions;for(var o in a)a[o].match&&null!=a[o].match.fn&&n.push(a[o].input);var r=0===n.length?"":(X?n.reverse():n).join("");if(e.isFunction(c.onUnMask)){var s=(X?A().slice().reverse():A()).join("");r=c.onUnMask.call($,s,r,c)}return r}function F(e,a,o,r){function s(e){return!0===r||!X||"number"!=typeof e||c.greedy&&""===c.placeholder||(e=A().join("").length-e),e}var l;if(a===i)return e.setSelectionRange?(a=e.selectionStart,o=e.selectionEnd):t.getSelection?(l=t.getSelection().getRangeAt(0)).commonAncestorContainer.parentNode!==e&&l.commonAncestorContainer!==e||(a=l.startOffset,o=l.endOffset):n.selection&&n.selection.createRange&&(o=(a=0-(l=n.selection.createRange()).duplicate().moveStart("character",-e.inputmask._valueGet().length))+l.text.length),{begin:s(a),end:s(o)};if(a.begin!==i&&(o=a.end,a=a.begin),"number"==typeof a){a=s(a),o="number"==typeof(o=s(o))?o:a;var u=parseInt(((e.ownerDocument.defaultView||t).getComputedStyle?(e.ownerDocument.defaultView||t).getComputedStyle(e,null):e.currentStyle).fontSize)*o;if(e.scrollLeft=u>e.scrollWidth?u:0,!1===c.insertMode&&a===o&&o++,e.inputmask.caretPos={begin:a,end:o},e.setSelectionRange)e.selectionStart=a,e.selectionEnd=o;else if(t.getSelection){if(l=n.createRange(),e.firstChild===i||null===e.firstChild){var f=n.createTextNode("");e.appendChild(f)}l.setStart(e.firstChild,a<e.inputmask._valueGet().length?a:e.inputmask._valueGet().length),l.setEnd(e.firstChild,o<e.inputmask._valueGet().length?o:e.inputmask._valueGet().length),l.collapse(!0);var p=t.getSelection();p.removeAllRanges(),p.addRange(l)}else e.createTextRange&&((l=e.createTextRange()).collapse(!0),l.moveEnd("character",o),l.moveStart("character",a),l.select());H(e,{begin:a,end:o})}}function N(t){var n,a,o=A(),r=o.length,s=g(),l={},c=d().validPositions[s],u=c!==i?c.locator.slice():i;for(n=s+1;n<o.length;n++)u=(a=y(n,u,n-1)).locator.slice(),l[n]=e.extend(!0,{},a);var f=c&&c.alternation!==i?c.locator[c.alternation]:i;for(n=r-1;n>s&&(((a=l[n]).match.optionality||a.match.optionalQuantifier&&a.match.newBlockMarker||f&&(f!==l[n].locator[c.alternation]&&null!=a.match.fn||null===a.match.fn&&a.locator[c.alternation]&&M(a.locator[c.alternation].toString().split(","),f.toString().split(","))&&""!==C(n)[0].def))&&o[n]===L(n,a.match));n--)r--;return t?{l:r,def:l[r]?l[r].match:i}:r}function R(e){for(var t,n=N(),a=e.length,o=d().validPositions[g()];n<a&&!S(n,!0)&&(t=o!==i?y(n,o.locator.slice(""),o):P(n))&&!0!==t.match.optionality&&(!0!==t.match.optionalQuantifier&&!0!==t.match.newBlockMarker||n+1===a&&""===(o!==i?y(n+1,o.locator.slice(""),o):P(n+1)).match.def);)n++;for(;(t=d().validPositions[n-1])&&t&&t.match.optionality&&t.input===c.skipOptionalPartCharacter;)n--;return e.splice(n),e}function K(t){if(e.isFunction(c.isComplete))return c.isComplete(t,c);if("*"===c.repeat)return i;var n=!1,a=N(!0),o=j(a.l);if(a.def===i||a.def.newBlockMarker||a.def.optionality||a.def.optionalQuantifier){n=!0;for(var r=0;r<=o;r++){var s=y(r).match;if(null!==s.fn&&d().validPositions[r]===i&&!0!==s.optionality&&!0!==s.optionalQuantifier||null===s.fn&&t[r]!==L(r,s)){n=!1;break}}}return n}function U(t,n,o,r,s){if((c.numericInput||X)&&(n===a.keyCode.BACKSPACE?n=a.keyCode.DELETE:n===a.keyCode.DELETE&&(n=a.keyCode.BACKSPACE),X)){var l=o.end;o.end=o.begin,o.begin=l}n===a.keyCode.BACKSPACE&&(o.end-o.begin<1||!1===c.insertMode)?(o.begin=j(o.begin),d().validPositions[o.begin]!==i&&d().validPositions[o.begin].input===c.groupSeparator&&o.begin--):n===a.keyCode.DELETE&&o.begin===o.end&&(o.end=S(o.end,!0)&&d().validPositions[o.end]&&d().validPositions[o.end].input!==c.radixPoint?o.end+1:D(o.end)+1,d().validPositions[o.begin]!==i&&d().validPositions[o.begin].input===c.groupSeparator&&o.end++),k(o.begin,o.end,!1,r),!0!==r&&function(){if(c.keepStatic){for(var n=[],a=g(-1,!0),o=e.extend(!0,{},d().validPositions),r=d().validPositions[a];a>=0;a--){var s=d().validPositions[a];if(s){if(!0!==s.generatedInput&&/[0-9a-bA-Z]/.test(s.input)&&n.push(s.input),delete d().validPositions[a],s.alternation!==i&&s.locator[s.alternation]!==r.locator[s.alternation])break;r=s}}if(a>-1)for(d().p=D(g(-1,!0));n.length>0;){var l=new e.Event("keypress");l.which=n.pop().charCodeAt(0),ae.keypressEvent.call(t,l,!0,!1,!1,d().p)}else d().validPositions=e.extend(!0,{},o)}}();var u=g(o.begin,!0);if(u<o.begin)d().p=D(u);else if(!0!==r&&(d().p=o.begin,!0!==s))for(;d().p<u&&d().validPositions[d().p]===i;)d().p++}function V(i){function a(e){var t,a=n.createElement("span");for(var r in o)isNaN(r)&&-1!==r.indexOf("font")&&(a.style[r]=o[r]);a.style.textTransform=o.textTransform,a.style.letterSpacing=o.letterSpacing,a.style.position="absolute",a.style.height="auto",a.style.width="auto",a.style.visibility="hidden",a.style.whiteSpace="nowrap",n.body.appendChild(a);var s,l=i.inputmask._valueGet(),c=0;for(t=0,s=l.length;t<=s;t++){if(a.innerHTML+=l.charAt(t)||"_",a.offsetWidth>=e){var u=e-c,f=a.offsetWidth-e;a.innerHTML=l.charAt(t),t=(u-=a.offsetWidth/3)<f?t-1:t;break}c=a.offsetWidth}return n.body.removeChild(a),t}var o=(i.ownerDocument.defaultView||t).getComputedStyle(i,null),r=n.createElement("div");r.style.width=o.width,r.style.textAlign=o.textAlign,(Z=n.createElement("div")).className="im-colormask",i.parentNode.insertBefore(Z,i),i.parentNode.removeChild(i),Z.appendChild(r),Z.appendChild(i),i.style.left=r.offsetLeft+"px",e(i).on("click",function(e){return F(i,a(e.clientX)),ae.clickEvent.call(i,[e])}),e(i).on("keydown",function(e){e.shiftKey||!1===c.insertMode||setTimeout(function(){H(i)},0)})}function H(e,t,a){function o(){p||null!==s.fn&&l.input!==i?p&&(null!==s.fn&&l.input!==i||""===s.def)&&(p=!1,f+="</span>"):(p=!0,f+="<span class='im-static'>")}function r(i){!0!==i&&h!==t.begin||n.activeElement!==e||(f+="<span class='im-caret' style='border-right-width: 1px;border-right-style: solid;'></span>")}var s,l,u,f="",p=!1,h=0;if(Z!==i){var m=A();if(t===i?t=F(e):t.begin===i&&(t={begin:t,end:t}),!0!==a){var v=g();do{r(),d().validPositions[h]?(l=d().validPositions[h],s=l.match,u=l.locator.slice(),o(),f+=m[h]):(l=y(h,u,h-1),s=l.match,u=l.locator.slice(),(!1===c.jitMasking||h<v||"number"==typeof c.jitMasking&&isFinite(c.jitMasking)&&c.jitMasking>h)&&(o(),f+=L(h,s))),h++}while((q===i||h<q)&&(null!==s.fn||""!==s.def)||v>h||p);-1===f.indexOf("im-caret")&&r(!0),p&&o()}var k=Z.getElementsByTagName("div")[0];k.innerHTML=f,e.inputmask.positionColorMask(e,k)}}r=r||this.maskset,c=c||this.opts;var Q,W,q,Z,$=this,z=this.el,X=this.isRTL,J=!1,Y=!1,ee=!1,te=!1,ne=!1,ie={on:function(t,n,o){var r=function(t){var n=this;if(n.inputmask===i&&"FORM"!==this.nodeName){var r=e.data(n,"_inputmask_opts");r?new a(r).mask(n):ie.off(n)}else{if("setvalue"===t.type||"FORM"===this.nodeName||!(n.disabled||n.readOnly&&!("keydown"===t.type&&t.ctrlKey&&67===t.keyCode||!1===c.tabThrough&&t.keyCode===a.keyCode.TAB))){switch(t.type){case"input":if(!0===Y)return Y=!1,t.preventDefault();u&&(ne=!0);break;case"keydown":J=!1,Y=!1;break;case"keypress":if(!0===J)return t.preventDefault();J=!0;break;case"click":if(f||p){var s=arguments;return setTimeout(function(){o.apply(n,s)},0),!1}}var l=o.apply(n,arguments);return ne&&(ne=!1,setTimeout(function(){F(n,n.inputmask.caretPos)})),!1===l&&(t.preventDefault(),t.stopPropagation()),l}t.preventDefault()}};t.inputmask.events[n]=t.inputmask.events[n]||[],t.inputmask.events[n].push(r),-1!==e.inArray(n,["submit","reset"])?null!==t.form&&e(t.form).on(n,r):e(t).on(n,r)},off:function(t,n){if(t.inputmask&&t.inputmask.events){var i;n?(i=[])[n]=t.inputmask.events[n]:i=t.inputmask.events,e.each(i,function(n,i){for(;i.length>0;){var a=i.pop();-1!==e.inArray(n,["submit","reset"])?null!==t.form&&e(t.form).off(n,a):e(t).off(n,a)}delete t.inputmask.events[n]})}}},ae={keydownEvent:function(t){var n=this,i=e(n),o=t.keyCode,r=F(n);if(o===a.keyCode.BACKSPACE||o===a.keyCode.DELETE||p&&o===a.keyCode.BACKSPACE_SAFARI||t.ctrlKey&&o===a.keyCode.X&&!s("cut"))t.preventDefault(),U(n,o,r),G(n,A(!0),d().p,t,n.inputmask._valueGet()!==A().join("")),n.inputmask._valueGet()===_().join("")?i.trigger("cleared"):!0===K(A())&&i.trigger("complete");else if(o===a.keyCode.END||o===a.keyCode.PAGE_DOWN){t.preventDefault();var l=D(g());c.insertMode||l!==d().maskLength||t.shiftKey||l--,F(n,t.shiftKey?r.begin:l,l,!0)}else o===a.keyCode.HOME&&!t.shiftKey||o===a.keyCode.PAGE_UP?(t.preventDefault(),F(n,0,t.shiftKey?r.begin:0,!0)):(c.undoOnEscape&&o===a.keyCode.ESCAPE||90===o&&t.ctrlKey)&&!0!==t.altKey?(B(n,!0,!1,Q.split("")),i.trigger("click")):o!==a.keyCode.INSERT||t.shiftKey||t.ctrlKey?!0===c.tabThrough&&o===a.keyCode.TAB?(!0===t.shiftKey?(null===P(r.begin).match.fn&&(r.begin=D(r.begin)),r.end=j(r.begin,!0),r.begin=j(r.end,!0)):(r.begin=D(r.begin,!0),r.end=D(r.begin,!0),r.end<d().maskLength&&r.end--),r.begin<d().maskLength&&(t.preventDefault(),F(n,r.begin,r.end))):t.shiftKey||!1===c.insertMode&&(o===a.keyCode.RIGHT?setTimeout(function(){var e=F(n);F(n,e.begin)},0):o===a.keyCode.LEFT&&setTimeout(function(){var e=F(n);F(n,X?e.begin+1:e.begin-1)},0)):(c.insertMode=!c.insertMode,F(n,c.insertMode||r.begin!==d().maskLength?r.begin:r.begin-1));c.onKeyDown.call(this,t,A(),F(n).begin,c),ee=-1!==e.inArray(o,c.ignorables)},keypressEvent:function(t,n,o,r,s){var l=this,u=e(l),f=t.which||t.charCode||t.keyCode;if(!(!0===n||t.ctrlKey&&t.altKey)&&(t.ctrlKey||t.metaKey||ee))return f===a.keyCode.ENTER&&Q!==A().join("")&&(Q=A().join(""),setTimeout(function(){u.trigger("change")},0)),!0;if(f){46===f&&!1===t.shiftKey&&""!==c.radixPoint&&(f=c.radixPoint.charCodeAt(0));var p,h=n?{begin:s,end:s}:F(l),m=String.fromCharCode(f);d().writeOutBuffer=!0;var g=O(h,m,r);if(!1!==g&&(v(!0),p=g.caret!==i?g.caret:n?g.pos+1:D(g.pos),d().p=p),!1!==o&&(setTimeout(function(){c.onKeyValidation.call(l,f,g,c)},0),d().writeOutBuffer&&!1!==g)){var k=A();G(l,k,c.numericInput&&g.caret===i?j(p):p,t,!0!==n),!0!==n&&setTimeout(function(){!0===K(k)&&u.trigger("complete")},0)}if(t.preventDefault(),n)return!1!==g&&(g.forwardPosition=p),g}},pasteEvent:function(n){var i,a=this,o=n.originalEvent||n,r=e(a),s=a.inputmask._valueGet(!0),l=F(a);X&&(i=l.end,l.end=l.begin,l.begin=i);var u=s.substr(0,l.begin),f=s.substr(l.end,s.length);if(u===(X?_().reverse():_()).slice(0,l.begin).join("")&&(u=""),f===(X?_().reverse():_()).slice(l.end).join("")&&(f=""),X&&(i=u,u=f,f=i),t.clipboardData&&t.clipboardData.getData)s=u+t.clipboardData.getData("Text")+f;else{if(!o.clipboardData||!o.clipboardData.getData)return!0;s=u+o.clipboardData.getData("text/plain")+f}var p=s;if(e.isFunction(c.onBeforePaste)){if(!1===(p=c.onBeforePaste.call($,s,c)))return n.preventDefault();p||(p=s)}return B(a,!1,!1,X?p.split("").reverse():p.toString().split("")),G(a,A(),D(g()),n,Q!==A().join("")),!0===K(A())&&r.trigger("complete"),n.preventDefault()},inputFallBackEvent:function(t){var n=this,i=n.inputmask._valueGet();if(A().join("")!==i){var o=F(n);if(i=function(e,t,n){return"."===t.charAt(n.begin-1)&&""!==c.radixPoint&&((t=t.split(""))[n.begin-1]=c.radixPoint.charAt(0),t=t.join("")),t}(0,i,o),i=function(e,t,n){if(f){var i=t.replace(A().join(""),"");if(1===i.length){var a=t.split("");a.splice(n.begin,0,i),t=a.join("")}}return t}(0,i,o),o.begin>i.length&&(F(n,i.length),o=F(n)),A().join("")!==i){var r=A().join(""),s=i.length>r.length?-1:0,l=i.substr(0,o.begin),u=i.substr(o.begin),p=r.substr(0,o.begin+s),h=r.substr(o.begin+s),m=o,d="",v=!1;if(l!==p){for(var g=(v=l.length>=p.length)?l.length:p.length,k=0;l.charAt(k)===p.charAt(k)&&k<g;k++);v&&(0===s&&(m.begin=k),d+=l.slice(k,m.end))}if(u!==h&&(u.length>h.length?d+=u.slice(0,1):u.length<h.length&&(m.end+=h.length-u.length,v||""===c.radixPoint||""!==u||l.charAt(m.begin+s-1)!==c.radixPoint||(m.begin--,d=c.radixPoint))),G(n,A(),{begin:m.begin+s,end:m.end+s}),d.length>0)e.each(d.split(""),function(t,i){var a=new e.Event("keypress");a.which=i.charCodeAt(0),ee=!1,ae.keypressEvent.call(n,a)});else{m.begin===m.end-1&&(m.begin=j(m.begin+1),m.begin===m.end-1?F(n,m.begin):F(n,m.begin,m.end));var b=new e.Event("keydown");b.keyCode=a.keyCode.DELETE,ae.keydownEvent.call(n,b),!1===c.insertMode&&F(n,F(n).begin-1)}t.preventDefault()}}},setValueEvent:function(t){this.inputmask.refreshValue=!1;var n=this,i=n.inputmask._valueGet(!0);e.isFunction(c.onBeforeMask)&&(i=c.onBeforeMask.call($,i,c)||i),i=i.split(""),B(n,!0,!1,X?i.reverse():i),Q=A().join(""),(c.clearMaskOnLostFocus||c.clearIncomplete)&&n.inputmask._valueGet()===_().join("")&&n.inputmask._valueSet("")},focusEvent:function(e){var t=this,n=t.inputmask._valueGet();c.showMaskOnFocus&&(!c.showMaskOnHover||c.showMaskOnHover&&""===n)&&(t.inputmask._valueGet()!==A().join("")?G(t,A(),D(g())):!1===te&&F(t,D(g()))),!0===c.positionCaretOnTab&&!1===te&&""!==n&&(G(t,A(),F(t)),ae.clickEvent.apply(t,[e,!0])),Q=A().join("")},mouseleaveEvent:function(e){var t=this;if(te=!1,c.clearMaskOnLostFocus&&n.activeElement!==t){var i=A().slice(),a=t.inputmask._valueGet();a!==t.getAttribute("placeholder")&&""!==a&&(-1===g()&&a===_().join("")?i=[]:R(i),G(t,i))}},clickEvent:function(t,a){function o(t){if(""!==c.radixPoint){var n=d().validPositions;if(n[t]===i||n[t].input===L(t)){if(t<D(-1))return!0;var a=e.inArray(c.radixPoint,A());if(-1!==a){for(var o in n)if(a<o&&n[o].input!==L(o))return!1;return!0}}}return!1}var r=this;setTimeout(function(){if(n.activeElement===r){var e=F(r);if(a&&(X?e.end=e.begin:e.begin=e.end),e.begin===e.end)switch(c.positionCaretOnClick){case"none":break;case"radixFocus":if(o(e.begin)){var t=A().join("").indexOf(c.radixPoint);F(r,c.numericInput?D(t):t);break}default:var s=e.begin,l=g(s,!0),u=D(l);if(s<u)F(r,S(s,!0)||S(s-1,!0)?s:D(s));else{var f=d().validPositions[l],p=y(u,f?f.match.locator:i,f),h=L(u,p.match);if(""!==h&&A()[u]!==h&&!0!==p.match.optionalQuantifier&&!0!==p.match.newBlockMarker||!S(u,!0)&&p.match.def===h){var m=D(u);(s>=m||s===u)&&(u=m)}F(r,u)}}}},0)},dblclickEvent:function(e){var t=this;setTimeout(function(){F(t,0,D(g()))},0)},cutEvent:function(i){var o=this,r=e(o),s=F(o),l=i.originalEvent||i,c=t.clipboardData||l.clipboardData,u=X?A().slice(s.end,s.begin):A().slice(s.begin,s.end);c.setData("text",X?u.reverse().join(""):u.join("")),n.execCommand&&n.execCommand("copy"),U(o,a.keyCode.DELETE,s),G(o,A(),d().p,i,Q!==A().join("")),o.inputmask._valueGet()===_().join("")&&r.trigger("cleared")},blurEvent:function(t){var n=e(this),a=this;if(a.inputmask){var o=a.inputmask._valueGet(),r=A().slice();""!==o&&(c.clearMaskOnLostFocus&&(-1===g()&&o===_().join("")?r=[]:R(r)),!1===K(r)&&(setTimeout(function(){n.trigger("incomplete")},0),c.clearIncomplete&&(v(),r=c.clearMaskOnLostFocus?[]:_().slice())),G(a,r,i,t)),Q!==A().join("")&&(Q=r.join(""),n.trigger("change"))}},mouseenterEvent:function(e){var t=this;te=!0,n.activeElement!==t&&c.showMaskOnHover&&t.inputmask._valueGet()!==A().join("")&&G(t,A())},submitEvent:function(e){Q!==A().join("")&&W.trigger("change"),c.clearMaskOnLostFocus&&-1===g()&&z.inputmask._valueGet&&z.inputmask._valueGet()===_().join("")&&z.inputmask._valueSet(""),c.removeMaskOnSubmit&&(z.inputmask._valueSet(z.inputmask.unmaskedvalue(),!0),setTimeout(function(){G(z,A())},0))},resetEvent:function(e){z.inputmask.refreshValue=!0,setTimeout(function(){W.trigger("setvalue")},0)}};a.prototype.positionColorMask=function(e,t){e.style.left=t.offsetLeft+"px"};var oe;if(o!==i)switch(o.action){case"isComplete":return z=o.el,K(A());case"unmaskedvalue":return z!==i&&o.value===i||(oe=o.value,oe=(e.isFunction(c.onBeforeMask)?c.onBeforeMask.call($,oe,c)||oe:oe).split(""),B(i,!1,!1,X?oe.reverse():oe),e.isFunction(c.onBeforeWrite)&&c.onBeforeWrite.call($,i,A(),0,c)),I(z);case"mask":!function(t){ie.off(t);var a=function(t,a){var o=t.getAttribute("type"),r="INPUT"===t.tagName&&-1!==e.inArray(o,a.supportsInputType)||t.isContentEditable||"TEXTAREA"===t.tagName;if(!r)if("INPUT"===t.tagName){var s=n.createElement("input");s.setAttribute("type",o),r="text"===s.type,s=null}else r="partial";return!1!==r?function(t){function o(){return this.inputmask?this.inputmask.opts.autoUnmask?this.inputmask.unmaskedvalue():-1!==g()||!0!==a.nullable?n.activeElement===this&&a.clearMaskOnLostFocus?(X?R(A().slice()).reverse():R(A().slice())).join(""):s.call(this):"":s.call(this)}function r(t){l.call(this,t),this.inputmask&&e(this).trigger("setvalue")}var s,l;if(!t.inputmask.__valueGet){if(!0!==a.noValuePatching){if(Object.getOwnPropertyDescriptor){"function"!=typeof Object.getPrototypeOf&&(Object.getPrototypeOf="object"==typeof"test".__proto__?function(e){return e.__proto__}:function(e){return e.constructor.prototype});var c=Object.getPrototypeOf?Object.getOwnPropertyDescriptor(Object.getPrototypeOf(t),"value"):i;c&&c.get&&c.set?(s=c.get,l=c.set,Object.defineProperty(t,"value",{get:o,set:r,configurable:!0})):"INPUT"!==t.tagName&&(s=function(){return this.textContent},l=function(e){this.textContent=e},Object.defineProperty(t,"value",{get:o,set:r,configurable:!0}))}else n.__lookupGetter__&&t.__lookupGetter__("value")&&(s=t.__lookupGetter__("value"),l=t.__lookupSetter__("value"),t.__defineGetter__("value",o),t.__defineSetter__("value",r));t.inputmask.__valueGet=s,t.inputmask.__valueSet=l}t.inputmask._valueGet=function(e){return X&&!0!==e?s.call(this.el).split("").reverse().join(""):s.call(this.el)},t.inputmask._valueSet=function(e,t){l.call(this.el,null===e||e===i?"":!0!==t&&X?e.split("").reverse().join(""):e)},s===i&&(s=function(){return this.value},l=function(e){this.value=e},function(t){if(e.valHooks&&(e.valHooks[t]===i||!0!==e.valHooks[t].inputmaskpatch)){var n=e.valHooks[t]&&e.valHooks[t].get?e.valHooks[t].get:function(e){return e.value},o=e.valHooks[t]&&e.valHooks[t].set?e.valHooks[t].set:function(e,t){return e.value=t,e};e.valHooks[t]={get:function(e){if(e.inputmask){if(e.inputmask.opts.autoUnmask)return e.inputmask.unmaskedvalue();var t=n(e);return-1!==g(i,i,e.inputmask.maskset.validPositions)||!0!==a.nullable?t:""}return n(e)},set:function(t,n){var i,a=e(t);return i=o(t,n),t.inputmask&&a.trigger("setvalue"),i},inputmaskpatch:!0}}}(t.type),function(t){ie.on(t,"mouseenter",function(t){var n=e(this);this.inputmask._valueGet()!==A().join("")&&n.trigger("setvalue")})}(t))}}(t):t.inputmask=i,r}(t,c);if(!1!==a&&(z=t,W=e(z),-1===(q=z!==i?z.maxLength:i)&&(q=i),!0===c.colorMask&&V(z),u&&(z.hasOwnProperty("inputmode")&&(z.inputmode=c.inputmode,z.setAttribute("inputmode",c.inputmode)),"rtfm"===c.androidHack&&h&&(!0!==c.colorMask&&V(z),z.type="password")),!0===a&&(ie.on(z,"submit",ae.submitEvent),ie.on(z,"reset",ae.resetEvent),ie.on(z,"mouseenter",ae.mouseenterEvent),ie.on(z,"blur",ae.blurEvent),ie.on(z,"focus",ae.focusEvent),ie.on(z,"mouseleave",ae.mouseleaveEvent),!0!==c.colorMask&&ie.on(z,"click",ae.clickEvent),ie.on(z,"dblclick",ae.dblclickEvent),ie.on(z,"paste",ae.pasteEvent),ie.on(z,"dragdrop",ae.pasteEvent),ie.on(z,"drop",ae.pasteEvent),ie.on(z,"cut",ae.cutEvent),ie.on(z,"complete",c.oncomplete),ie.on(z,"incomplete",c.onincomplete),ie.on(z,"cleared",c.oncleared),u||!0===c.inputEventOnly?z.removeAttribute("maxLength"):(ie.on(z,"keydown",ae.keydownEvent),ie.on(z,"keypress",ae.keypressEvent)),ie.on(z,"compositionstart",e.noop),ie.on(z,"compositionupdate",e.noop),ie.on(z,"compositionend",e.noop),ie.on(z,"keyup",e.noop),ie.on(z,"input",ae.inputFallBackEvent),ie.on(z,"beforeinput",e.noop)),ie.on(z,"setvalue",ae.setValueEvent),Q=_().join(""),""!==z.inputmask._valueGet(!0)||!1===c.clearMaskOnLostFocus||n.activeElement===z)){var o=e.isFunction(c.onBeforeMask)?c.onBeforeMask.call($,z.inputmask._valueGet(!0),c)||z.inputmask._valueGet(!0):z.inputmask._valueGet(!0);""!==o&&B(z,!0,!1,X?o.split("").reverse():o.split(""));var r=A().slice();Q=r.join(""),!1===K(r)&&c.clearIncomplete&&v(),c.clearMaskOnLostFocus&&n.activeElement!==z&&(-1===g()?r=[]:R(r)),G(z,r),n.activeElement===z&&F(z,D(g()))}}(z);break;case"format":return oe=(e.isFunction(c.onBeforeMask)?c.onBeforeMask.call($,o.value,c)||o.value:o.value).split(""),B(i,!0,!1,X?oe.reverse():oe),o.metadata?{value:X?A().slice().reverse().join(""):A().join(""),metadata:l.call(this,{action:"getmetadata"},r,c)}:X?A().slice().reverse().join(""):A().join("");case"isValid":o.value?(oe=o.value.split(""),B(i,!0,!0,X?oe.reverse():oe)):o.value=A().join("");for(var re=A(),se=N(),le=re.length-1;le>se&&!S(le);le--);return re.splice(se,le+1-se),K(re)&&o.value===A().join("");case"getemptymask":return _().join("");case"remove":if(z&&z.inputmask){W=e(z),z.inputmask._valueSet(c.autoUnmask?I(z):z.inputmask._valueGet(!0)),ie.off(z);Object.getOwnPropertyDescriptor&&Object.getPrototypeOf?Object.getOwnPropertyDescriptor(Object.getPrototypeOf(z),"value")&&z.inputmask.__valueGet&&Object.defineProperty(z,"value",{get:z.inputmask.__valueGet,set:z.inputmask.__valueSet,configurable:!0}):n.__lookupGetter__&&z.__lookupGetter__("value")&&z.inputmask.__valueGet&&(z.__defineGetter__("value",z.inputmask.__valueGet),z.__defineSetter__("value",z.inputmask.__valueSet)),z.inputmask=i}return z;case"getmetadata":if(e.isArray(r.metadata)){var ce=m(!0,0,!1).join("");return e.each(r.metadata,function(e,t){if(t.mask===ce)return ce=t,!1}),ce}return r.metadata}}var c=navigator.userAgent,u=s("touchstart"),f=/iemobile/i.test(c),p=/iphone/i.test(c)&&!f,h=/android/i.test(c)&&!f;return a.prototype={dataAttribute:"data-inputmask",defaults:{placeholder:"_",optionalmarker:{start:"[",end:"]"},quantifiermarker:{start:"{",end:"}"},groupmarker:{start:"(",end:")"},alternatormarker:"|",escapeChar:"\\",mask:null,regex:null,oncomplete:e.noop,onincomplete:e.noop,oncleared:e.noop,repeat:0,greedy:!0,autoUnmask:!1,removeMaskOnSubmit:!1,clearMaskOnLostFocus:!0,insertMode:!0,clearIncomplete:!1,alias:null,onKeyDown:e.noop,onBeforeMask:null,onBeforePaste:function(t,n){return e.isFunction(n.onBeforeMask)?n.onBeforeMask.call(this,t,n):t},onBeforeWrite:null,onUnMask:null,showMaskOnFocus:!0,showMaskOnHover:!0,onKeyValidation:e.noop,skipOptionalPartCharacter:" ",numericInput:!1,rightAlign:!1,undoOnEscape:!0,radixPoint:"",radixPointDefinitionSymbol:i,groupSeparator:"",keepStatic:null,positionCaretOnTab:!0,tabThrough:!1,supportsInputType:["text","tel","password"],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,0,229],isComplete:null,canClearPosition:e.noop,preValidation:null,postValidation:null,staticDefinitionSymbol:i,jitMasking:!1,nullable:!0,inputEventOnly:!1,noValuePatching:!1,positionCaretOnClick:"lvp",casing:null,inputmode:"verbatim",colorMask:!1,androidHack:!1,importDataAttributes:!0},definitions:{9:{validator:"[0-91-9]",cardinality:1,definitionSymbol:"*"},a:{validator:"[A-Za-zА-яЁёÀ-ÿµ]",cardinality:1,definitionSymbol:"*"},"*":{validator:"[0-91-9A-Za-zА-яЁёÀ-ÿµ]",cardinality:1}},aliases:{},masksCache:{},mask:function(s){function c(n,a,r,s){function l(e,a){null!==(a=a!==i?a:n.getAttribute(s+"-"+e))&&("string"==typeof a&&(0===e.indexOf("on")?a=t[a]:"false"===a?a=!1:"true"===a&&(a=!0)),r[e]=a)}if(!0===a.importDataAttributes){var c,u,f,p,h=n.getAttribute(s);if(h&&""!==h&&(h=h.replace(new RegExp("'","g"),'"'),u=JSON.parse("{"+h+"}")),u){f=i;for(p in u)if("alias"===p.toLowerCase()){f=u[p];break}}l("alias",f),r.alias&&o(r.alias,r,a);for(c in a){if(u){f=i;for(p in u)if(p.toLowerCase()===c.toLowerCase()){f=u[p];break}}l(c,f)}}return e.extend(!0,a,r),("rtl"===n.dir||a.rightAlign)&&(n.style.textAlign="right"),("rtl"===n.dir||a.numericInput)&&(n.dir="ltr",n.removeAttribute("dir"),a.isRTL=!0),a}var u=this;return"string"==typeof s&&(s=n.getElementById(s)||n.querySelectorAll(s)),s=s.nodeName?[s]:s,e.each(s,function(t,n){var o=e.extend(!0,{},u.opts);c(n,o,e.extend(!0,{},u.userOptions),u.dataAttribute);var s=r(o,u.noMasksCache);s!==i&&(n.inputmask!==i&&(n.inputmask.opts.autoUnmask=!0,n.inputmask.remove()),n.inputmask=new a(i,i,!0),n.inputmask.opts=o,n.inputmask.noMasksCache=u.noMasksCache,n.inputmask.userOptions=e.extend(!0,{},u.userOptions),n.inputmask.isRTL=o.isRTL||o.numericInput,n.inputmask.el=n,n.inputmask.maskset=s,e.data(n,"_inputmask_opts",o),l.call(n.inputmask,{action:"mask"}))}),s&&s[0]?s[0].inputmask||this:this},option:function(t,n){return"string"==typeof t?this.opts[t]:"object"==typeof t?(e.extend(this.userOptions,t),this.el&&!0!==n&&this.mask(this.el),this):void 0},unmaskedvalue:function(e){return this.maskset=this.maskset||r(this.opts,this.noMasksCache),l.call(this,{action:"unmaskedvalue",value:e})},remove:function(){return l.call(this,{action:"remove"})},getemptymask:function(){return this.maskset=this.maskset||r(this.opts,this.noMasksCache),l.call(this,{action:"getemptymask"})},hasMaskedValue:function(){return!this.opts.autoUnmask},isComplete:function(){return this.maskset=this.maskset||r(this.opts,this.noMasksCache),l.call(this,{action:"isComplete"})},getmetadata:function(){return this.maskset=this.maskset||r(this.opts,this.noMasksCache),l.call(this,{action:"getmetadata"})},isValid:function(e){return this.maskset=this.maskset||r(this.opts,this.noMasksCache),l.call(this,{action:"isValid",value:e})},format:function(e,t){return this.maskset=this.maskset||r(this.opts,this.noMasksCache),l.call(this,{action:"format",value:e,metadata:t})},analyseMask:function(t,n,o){function r(e,t,n,i){this.matches=[],this.openGroup=e||!1,this.alternatorGroup=!1,this.isGroup=e||!1,this.isOptional=t||!1,this.isQuantifier=n||!1,this.isAlternator=i||!1,this.quantifier={min:1,max:1}}function s(t,r,s){s=s!==i?s:t.matches.length;var l=t.matches[s-1];if(n)0===r.indexOf("[")||y&&/\\d|\\s|\\w]/i.test(r)||"."===r?t.matches.splice(s++,0,{fn:new RegExp(r,o.casing?"i":""),cardinality:1,optionality:t.isOptional,newBlockMarker:l===i||l.def!==r,casing:null,def:r,placeholder:i,nativeDef:r}):(y&&(r=r[r.length-1]),e.each(r.split(""),function(e,n){l=t.matches[s-1],t.matches.splice(s++,0,{fn:null,cardinality:0,optionality:t.isOptional,newBlockMarker:l===i||l.def!==n&&null!==l.fn,casing:null,def:o.staticDefinitionSymbol||n,placeholder:o.staticDefinitionSymbol!==i?n:i,nativeDef:n})})),y=!1;else{var c=(o.definitions?o.definitions[r]:i)||a.prototype.definitions[r];if(c&&!y){for(var u=c.prevalidator,f=u?u.length:0,p=1;p<c.cardinality;p++){var h=f>=p?u[p-1]:[],m=h.validator,d=h.cardinality;t.matches.splice(s++,0,{fn:m?"string"==typeof m?new RegExp(m,o.casing?"i":""):new function(){this.test=m}:new RegExp("."),cardinality:d||1,optionality:t.isOptional,newBlockMarker:l===i||l.def!==(c.definitionSymbol||r),casing:c.casing,def:c.definitionSymbol||r,placeholder:c.placeholder,nativeDef:r}),l=t.matches[s-1]}t.matches.splice(s++,0,{fn:c.validator?"string"==typeof c.validator?new RegExp(c.validator,o.casing?"i":""):new function(){this.test=c.validator}:new RegExp("."),cardinality:c.cardinality,optionality:t.isOptional,newBlockMarker:l===i||l.def!==(c.definitionSymbol||r),casing:c.casing,def:c.definitionSymbol||r,placeholder:c.placeholder,nativeDef:r})}else t.matches.splice(s++,0,{fn:null,cardinality:0,optionality:t.isOptional,newBlockMarker:l===i||l.def!==r&&null!==l.fn,casing:null,def:o.staticDefinitionSymbol||r,placeholder:o.staticDefinitionSymbol!==i?r:i,nativeDef:r}),y=!1}}function l(t){t&&t.matches&&e.each(t.matches,function(e,a){var r=t.matches[e+1];(r===i||r.matches===i||!1===r.isQuantifier)&&a&&a.isGroup&&(a.isGroup=!1,n||(s(a,o.groupmarker.start,0),!0!==a.openGroup&&s(a,o.groupmarker.end))),l(a)})}function c(){if(E.length>0){if(m=E[E.length-1],s(m,p),m.isAlternator){d=E.pop();for(var e=0;e<d.matches.length;e++)d.matches[e].isGroup=!1;E.length>0?(m=E[E.length-1]).matches.push(d):P.matches.push(d)}}else s(P,p)}function u(e){e.matches=e.matches.reverse();for(var t in e.matches)if(e.matches.hasOwnProperty(t)){var n=parseInt(t);if(e.matches[t].isQuantifier&&e.matches[n+1]&&e.matches[n+1].isGroup){var a=e.matches[t];e.matches.splice(t,1),e.matches.splice(n+1,0,a)}e.matches[t].matches!==i?e.matches[t]=u(e.matches[t]):e.matches[t]=function(e){return e===o.optionalmarker.start?e=o.optionalmarker.end:e===o.optionalmarker.end?e=o.optionalmarker.start:e===o.groupmarker.start?e=o.groupmarker.end:e===o.groupmarker.end&&(e=o.groupmarker.start),e}(e.matches[t])}return e}var f,p,h,m,d,v,g,k=/(?:[?*+]|\{[0-9\+\*]+(?:,[0-9\+\*]*)?\})|[^.?*+^${[]()|\\]+|./g,b=/\[\^?]?(?:[^\\\]]+|\\[\S\s]?)*]?|\\(?:0(?:[0-3][0-7]{0,2}|[4-7][0-7]?)?|[1-9][0-9]*|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|c[A-Za-z]|[\S\s]?)|\((?:\?[:=!]?)?|(?:[?*+]|\{[0-9]+(?:,[0-9]*)?\})\??|[^.?*+^${[()|\\]+|./g,y=!1,P=new r,E=[],C=[];for(n&&(o.optionalmarker.start=i,o.optionalmarker.end=i);f=n?b.exec(t):k.exec(t);){if(p=f[0],n)switch(p.charAt(0)){case"?":p="{0,1}";break;case"+":case"*":p="{"+p+"}"}if(y)c();else switch(p.charAt(0)){case o.escapeChar:y=!0,n&&c();break;case o.optionalmarker.end:case o.groupmarker.end:if(h=E.pop(),h.openGroup=!1,h!==i)if(E.length>0){if((m=E[E.length-1]).matches.push(h),m.isAlternator){d=E.pop();for(var _=0;_<d.matches.length;_++)d.matches[_].isGroup=!1,d.matches[_].alternatorGroup=!1;E.length>0?(m=E[E.length-1]).matches.push(d):P.matches.push(d)}}else P.matches.push(h);else c();break;case o.optionalmarker.start:E.push(new r(!1,!0));break;case o.groupmarker.start:E.push(new r(!0));break;case o.quantifiermarker.start:var A=new r(!1,!1,!0),x=(p=p.replace(/[{}]/g,"")).split(","),w=isNaN(x[0])?x[0]:parseInt(x[0]),M=1===x.length?w:isNaN(x[1])?x[1]:parseInt(x[1]);if("*"!==M&&"+"!==M||(w="*"===M?0:1),A.quantifier={min:w,max:M},E.length>0){var O=E[E.length-1].matches;(f=O.pop()).isGroup||((g=new r(!0)).matches.push(f),f=g),O.push(f),O.push(A)}else(f=P.matches.pop()).isGroup||(n&&null===f.fn&&"."===f.def&&(f.fn=new RegExp(f.def,o.casing?"i":"")),(g=new r(!0)).matches.push(f),f=g),P.matches.push(f),P.matches.push(A);break;case o.alternatormarker:if(E.length>0){var S=(m=E[E.length-1]).matches[m.matches.length-1];v=m.openGroup&&(S.matches===i||!1===S.isGroup&&!1===S.isAlternator)?E.pop():m.matches.pop()}else v=P.matches.pop();if(v.isAlternator)E.push(v);else if(v.alternatorGroup?(d=E.pop(),v.alternatorGroup=!1):d=new r(!1,!1,!1,!0),d.matches.push(v),E.push(d),v.openGroup){v.openGroup=!1;var D=new r(!0);D.alternatorGroup=!0,E.push(D)}break;default:c()}}for(;E.length>0;)h=E.pop(),P.matches.push(h);return P.matches.length>0&&(l(P),C.push(P)),(o.numericInput||o.isRTL)&&u(C[0]),C}},a.extendDefaults=function(t){e.extend(!0,a.prototype.defaults,t)},a.extendDefinitions=function(t){e.extend(!0,a.prototype.definitions,t)},a.extendAliases=function(t){e.extend(!0,a.prototype.aliases,t)},a.format=function(e,t,n){return a(t).format(e,n)},a.unmask=function(e,t){return a(t).unmaskedvalue(e)},a.isValid=function(e,t){return a(t).isValid(e)},a.remove=function(t){e.each(t,function(e,t){t.inputmask&&t.inputmask.remove()})},a.escapeRegex=function(e){var t=["/",".","*","+","?","|","(",")","[","]","{","}","\\","$","^"];return e.replace(new RegExp("(\\"+t.join("|\\")+")","gim"),"\\$1")},a.keyCode={ALT:18,BACKSPACE:8,BACKSPACE_SAFARI:127,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,X:88},a});