UNPKG

@progress/kendo-ui

Version:

This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.

1 lines 7.53 kB
module.exports=function(t){function e(a){if(n[a])return n[a].exports;var i=n[a]={exports:{},id:a,loaded:!1};return t[a].call(i.exports,i,i.exports,e),i.loaded=!0,i.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}({0:function(t,e,n){t.exports=n(1216)},3:function(t,e){t.exports=function(){throw Error("define cannot be used indirect")}},1006:function(t,e){t.exports=require("./kendo.core")},1216:function(t,e,n){var a,i,s;!function(r,define){i=[n(1006)],a=r,s="function"==typeof a?a.apply(e,i):a,!(void 0!==s&&(t.exports=s))}(function(){return function(t,e){function n(t){return t+d}function a(t,e){for(var n=0;n<e.length&&t[n]===e[n];)n++;return n}function i(t){return t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}var s=window,r=s.Math.min,o=s.kendo,l=o.caret,u=o.keys,p=o.ui,_=p.Widget,d=".kendoMaskedTextBox",h=t.proxy,m=window.setTimeout,c="k-state-disabled",f="k-state-invalid",v="disabled",g="readonly",k="change",b="mouseup",y="drop",w="keydown",C="paste",x="input",E=n(o.support.propertyChangeEvent?"propertychange":x),I=_.extend({init:function(e,n){var a,i,s=this;_.fn.init.call(s,e,n),s._rules=t.extend({},s.rules,s.options.rules),e=s.element,a=e[0],s._wrapper(),s._tokenize(),s._form(),s.element.addClass("k-textbox").attr("autocomplete","off").on("focus"+d,function(){var t=a.value;t?s._togglePrompt(!0):a.value=s._old=s._emptyMask,s._oldValue=t,s._timeoutId=m(function(){l(e,0,t?s._maskLength:0)})}).on("focusout"+d,function(){var t=e.val();clearTimeout(s._timeoutId),a.value=s._old="",t!==s._emptyMask&&(a.value=s._old=t),s._change(),s._togglePrompt()}),i=e.is("[disabled]")||t(s.element).parents("fieldset").is(":disabled"),i?s.enable(!1):s.readonly(e.is("[readonly]")),s.value(s.options.value||e.val()),s._validationIcon=t("<span class='k-icon k-i-warning'></span>").insertAfter(e),o.notify(s)},options:{name:"MaskedTextBox",clearPromptChar:!1,unmaskOnPost:!1,promptChar:"_",culture:"",rules:{},value:"",mask:""},events:[k],rules:{0:/\d/,9:/\d|\s/,"#":/\d|\s|\+|\-/,L:/[a-zA-Z]/,"?":/[a-zA-Z]|\s/,"&":/\S/,C:/./,A:/[a-zA-Z0-9]/,a:/[a-zA-Z0-9]|\s/},setOptions:function(e){var n=this;_.fn.setOptions.call(n,e),n._rules=t.extend({},n.rules,n.options.rules),n._tokenize(),this._unbindInput(),this._bindInput(),n.value(n.element.val())},destroy:function(){var t=this;t.element.off(d),t._formElement&&(t._formElement.off("reset",t._resetHandler),t._formElement.off("submit",t._submitHandler)),_.fn.destroy.call(t)},raw:function(){var t=this._unmask(this.element.val(),0);return t.replace(RegExp(i(this.options.promptChar),"g"),"")},value:function(t){var n=this.element,a=this._emptyMask;return t===e?this.element.val():(null===t&&(t=""),a?(t=this._unmask(t+""),n.val(t?a:""),this._mask(0,this._maskLength,t),this._unmaskedValue=null,t=n.val(),this._oldValue=t,o._activeElement()!==n&&(t===a?n.val(""):this._togglePrompt()),e):(this._oldValue=t,n.val(t),e))},_togglePrompt:function(t){var e=this.element[0],n=e.value;this.options.clearPromptChar&&(n=t?this._oldValue:n.replace(RegExp(i(this.options.promptChar),"g")," "),e.value=this._old=n)},readonly:function(t){this._editable({readonly:t===e||t,disable:!1})},enable:function(t){this._editable({readonly:!1,disable:!(t=t===e||t)})},_bindInput:function(){var t,e,a=this;a._maskLength&&(a.options.$angular&&a.element.off(x),a.element.on(n(w),h(a._keydown,a)).on(n(y),h(a._drop,a)).on(n(k),h(a._trackChange,a)).on(E,h(a._inputHandler,a)),o.support.browser.msie&&(t=o.support.browser.version,t>8&&t<11&&(e=[n(b),n(y),n(w),n(C)].join(" "),a.element.on(e,h(a._legacyIEInputHandler,a)))))},_unbindInput:function(){var t=[E,n(w),n(b),n(y),n(C)].join(" ");this.element.off(t)},_editable:function(t){var e=this,n=e.element,a=e.wrapper,i=t.disable,s=t.readonly;e._unbindInput(),s||i?(n.attr(v,i).attr(g,s),a.toggleClass(c,i)):(n.removeAttr(v).removeAttr(g),a.removeClass(c),e._bindInput())},_change:function(){var t=this,e=t.value();e!==t._oldValue?(t._oldValue=e,t.trigger(k),t.element.trigger(k)):""===e&&t.__changing&&t.element.trigger(k)},inputChange:function(t){var e,n,i,s,u,p=this,_=p._old,d=p.element[0],h=d.value,m=l(d),c=m[1],f=h.length-_.length,v=o.support.mobileOS;p.__dropping&&f<0||(f===-1&&v.android&&"chrome"===v.browser&&(t=!0),e=r(c,a(h,_)),n=h.substring(e,c),d.value=h.substring(0,e)+p._emptyMask.substring(e),i=p._mask(e,c,n),s=p._trimStartPromptChars(h.substring(c),r(f,i-e)),u=p._unmask(s,_.length-s.length),p._mask(i,i,u),t&&(i=p._findCaretPosBackwards(e)),l(d,i),p.__dropping=!1)},_trimStartPromptChars:function(t,e){for(var n=this.options.promptChar;e-- >0&&0===t.indexOf(n);)t=t.substring(1);return t},_findCaretPosBackwards:function(t){var e=this._find(t,!0);return e<t&&(e+=1),e},_inputHandler:function(){o._activeElement()===this.element[0]&&this.inputChange(this.__backward)},_legacyIEInputHandler:function(t){var e=this,n=e.element[0],a=n.value,i=t.type;e.__pasting="paste"===i,m(function(){"mouseup"===i&&e.__pasting||n.value&&n.value!==a&&e.inputChange(e.__backward)})},_trackChange:function(){var t=this;t.__changing=!0,m(function(){t.__changing=!1})},_form:function(){var e=this,n=e.element,a=n.attr("form"),i=a?t("#"+a):n.closest("form");i[0]&&(e._resetHandler=function(){m(function(){e.value(n[0].value)})},e._submitHandler=function(){e.element[0].value=e._old=e.raw()},e.options.unmaskOnPost&&i.on("submit",e._submitHandler),e._formElement=i.on("reset",e._resetHandler))},_keydown:function(t){var e=t.keyCode;this.__backward=e===u.BACKSPACE,e===u.ENTER&&this._change()},_drop:function(){this.__dropping=!0},_find:function(t,e){var n=this.element.val()||this._emptyMask,a=1;for(e===!0&&(a=-1);t>-1||t<=this._maskLength;){if(n.charAt(t)!==this.tokens[t])return t;t+=a}return-1},_mask:function(t,n,a,i){var s,r,u,p,_=this.element[0],d=_.value||this._emptyMask,h=this.options.promptChar,m=0;for(t=this._find(t,i),t>n&&(n=t),r=this._unmask(d.substring(n),n),a=this._unmask(a,t),s=a.length,a&&(r=r.replace(RegExp("^_{0,"+s+"}"),"")),a+=r,d=d.split(""),u=a.charAt(m);t<this._maskLength;)d[t]=u||h,u=a.charAt(++m),p===e&&m>s&&(p=t),t=this._find(t+1);return _.value=this._old=d.join(""),o._activeElement()===_&&(p===e&&(p=this._maskLength),l(_,p)),p},_unmask:function(e,n){var a,i,s,r,o,l,u,p;if(!e)return"";if(this._unmaskedValue===e)return this._unmaskedValue;for(e=(e+"").split(""),s=0,r=n||0,o=this.options.promptChar,l=e.length,u=this.tokens.length,p="";r<u&&(a=e[s],i=this.tokens[r],a===i||a===o?(p+=a===o?o:"",s+=1,r+=1):"string"!=typeof i?(i&&i.test&&i.test(a)||t.isFunction(i)&&i(a)?(p+=a,r+=1):1===l&&this._blinkInvalidState(),s+=1):r+=1,!(s>=l)););return this._unmaskedValue=p,p},_wrapper:function(){var t=this,e=t.element,n=e[0],a=e.wrap("<span class='k-widget k-maskedtextbox'></span>").parent();a[0].style.cssText=n.style.cssText,n.style.width="100%",t.wrapper=a.addClass(n.className)},_blinkInvalidState:function(){var t=this;t.wrapper.addClass(f),clearTimeout(t._invalidStateTimeout),t._invalidStateTimeout=m(h(t._removeInvalidState,t),100)},_removeInvalidState:function(){var t=this;t.wrapper.removeClass(f),t._invalidStateTimeout=null},_tokenize:function(){for(var t,e,n,a,i=[],s=0,r=this.options.mask||"",l=r.split(""),u=l.length,p=0,_="",d=this.options.promptChar,h=o.getCulture(this.options.culture).numberFormat,m=this._rules;p<u;p++)if(t=l[p],e=m[t])i[s]=e,_+=d,s+=1;else for("."===t||","===t?t=h[t]:"$"===t?t=h.currency.symbol:"\\"===t&&(p+=1,t=l[p]),t=t.split(""),n=0,a=t.length;n<a;n++)i[s]=t[n],_+=t[n],s+=1;this.tokens=i,this._emptyMask=_,this._maskLength=_.length}});p.plugin(I)}(window.kendo.jQuery),window.kendo},n(3))}});