Roo/bootstrap/form/Input.js
authorleon <leon@roojs.com>
Thu, 4 May 2023 04:59:01 +0000 (12:59 +0800)
committerleon <leon@roojs.com>
Thu, 4 May 2023 04:59:01 +0000 (12:59 +0800)
roojs-bootstrap.js
roojs-bootstrap-debug.js

Roo/bootstrap/form/Input.js
roojs-bootstrap-debug.js
roojs-bootstrap.js

index f1e829e..9c42e87 100644 (file)
@@ -287,7 +287,7 @@ Roo.extend(Roo.bootstrap.form.Input, Roo.bootstrap.Component,  {
             id : id,
             type : this.inputType,
             value : this.value,
-            cls : 'form-control',
+            cls : 'form-control' + this.inputType == 'password' ? ' password-hidden' : '',
             placeholder : this.placeholder || '',
             autocomplete : this.autocomplete || 'new-password'
         };
index a6491de..a309b64 100644 (file)
@@ -12560,7 +12560,7 @@ Roo.extend(Roo.bootstrap.form.Input, Roo.bootstrap.Component,  {
             id : id,
             type : this.inputType,
             value : this.value,
-            cls : 'form-control',
+            cls : 'form-control' + this.inputType == 'password' ? ' password-hidden' : '',
             placeholder : this.placeholder || '',
             autocomplete : this.autocomplete || 'new-password'
         };
@@ -12955,13 +12955,15 @@ Roo.extend(Roo.bootstrap.form.Input, Roo.bootstrap.Component,  {
             return;
         }
 
-        input.removeClass(['password-hidden', 'password-hidden']);
+        input.removeClass(['password-visible', 'password-hidden']);
 
         if(input.attr('type') == 'password') {
             input.attr('type', 'text');
+            input.addClass('password-visible');
         }
         else {
             input.attr('type', 'password');
+            input.addClass('password-hidden');
         }
     },
     filterValidation : function(e){
index 5704233..39ceb1c 100644 (file)
@@ -530,7 +530,7 @@ Roo.form.VTypes=function(){var A=/^[a-zA-Z_]+$/;var B=/^[a-zA-Z0-9_]+$/;var C=/^
 },alphaText:'This field should only contain letters and _',alphaMask:/[a-z_]/i,alphanum:function(v){return B.test(v);},alphanumText:'This field should only contain letters, numbers and _',alphanumMask:/[a-z0-9_]/i};}();
 // Roo/bootstrap/form/Input.js
 Roo.bootstrap.form.Input=function(A){Roo.bootstrap.form.Input.superclass.constructor.call(this,A);this.addEvents({focus:true,blur:true,specialkey:true,change:true,invalid:true,valid:true,keyup:true,paste:true});};Roo.extend(Roo.bootstrap.form.Input,Roo.bootstrap.Component,{validationEvent:"keyup",validateOnBlur:true,validationDelay:250,focusClass:"x-form-focus",invalidClass:"has-warning",validClass:"has-success",hasFeedback:true,invalidFeedbackClass:"glyphicon-warning-sign",validFeedbackClass:"glyphicon-ok",selectOnFocus:false,maskRe:null,vtype:null,disableKeyFilter:false,disabled:false,allowBlank:true,blankText:"Please complete this mandatory field",minLength:0,maxLength:Number.MAX_VALUE,minLengthText:"The minimum length for this field is {0}",maxLengthText:"The maximum length for this field is {0}",validator:null,regex:null,regexText:"",invalidText:"",autocomplete:false,fieldLabel:'',inputType:'text',name:false,placeholder:false,before:false,after:false,size:false,hasFocus:false,preventMark:false,isFormField:true,value:'',labelWidth:2,labelAlign:false,readOnly:false,align:false,formatedValue:false,forceFeedback:false,indicatorpos:'left',labellg:0,labelmd:0,labelsm:0,labelxs:0,capture:'',accept:'',parentLabelAlign:function(){var A=this;
-while(A.parent()){A=A.parent();if(typeof(A.labelAlign)!='undefined'){return A.labelAlign;}}return 'left';},getAutoCreate:function(){var id=Roo.id();var A={};if(this.inputType!='hidden'){A.cls='form-group'}var B={tag:'input',id:id,type:this.inputType,value:this.value,cls:'form-control',placeholder:this.placeholder||'',autocomplete:this.autocomplete||'new-password'}
+while(A.parent()){A=A.parent();if(typeof(A.labelAlign)!='undefined'){return A.labelAlign;}}return 'left';},getAutoCreate:function(){var id=Roo.id();var A={};if(this.inputType!='hidden'){A.cls='form-group'}var B={tag:'input',id:id,type:this.inputType,value:this.value,cls:'form-control'+this.inputType=='password'?' password-hidden':'',placeholder:this.placeholder||'',autocomplete:this.autocomplete||'new-password'}
 ;if(this.inputType=='file'){B.style='overflow:hidden';}if(this.capture.length){B.capture=this.capture;}if(this.accept.length){B.accept=this.accept+"/*";}if(this.align){B.style=(typeof(B.style)=='undefined')?('text-align:'+this.align):(B.style+'text-align:'+this.align);
 }if(this.maxLength&&this.maxLength!=Number.MAX_VALUE){B.maxLength=this.maxLength;}if(this.disabled){B.disabled=true;}if(this.readOnly){B.readonly=true;}if(this.name){B.name=this.name;}if(this.size){B.cls+=' input-'+this.size;}var C=this;['xs','sm','md','lg'].map(function(F){if(C[F]){A.cls+=' col-'+F+'-'+C[F];
 }});var D=B;var E={tag:'span',cls:'glyphicon form-control-feedback'};if(this.hasFeedback&&this.inputType!='hidden'){D={cls:'has-feedback',cn:[B,E]};}if(this.before||this.after){D={cls:'input-group',cn:[]};if(this.before&&typeof(this.before)=='string'){D.cn.push({tag:'span',cls:'roo-input-before input-group-addon input-group-prepend input-group-text',html:this.before}
@@ -549,7 +549,7 @@ this.inputEl().relayEvent('paste',this);this.indicator=this.indicatorEl();if(thi
 this.inputEl().on('keyup',this.filterValidation,this);}else if(this.validationEvent!==false){this.inputEl().on(this.validationEvent,this.validate,this,{buffer:this.validationDelay});}if(this.selectOnFocus){this.on("focus",this.preFocus,this);}if(this.maskRe||(this.vtype&&this.disableKeyFilter!==true&&(this.maskRe=Roo.form.VTypes[this.vtype+'Mask']))){this.inputEl().on("keypress",this.filterKeys,this);
 }else{this.inputEl().relayEvent('keypress',this);}if(this.inputEl().is('input[type=password]')&&Roo.isSafari){this.inputEl().on('keydown',this.SafariOnKeyDown,this);}if(typeof(this.before)=='object'){this.before.render(this.el.select('.roo-input-before',true).first());
 }if(typeof(this.after)=='object'){this.after.render(this.el.select('.roo-input-after',true).first());}this.inputEl().on('change',this.onChange,this);if(this.inputType=='password'){this.inputEl().on('click',this.onPasswordClick,this);}},onPasswordClick:function(e){var A=this.inputEl();
-if(e.getPageX()<A.getX()+A.getWidth()-30){return;}A.removeClass(['password-hidden','password-hidden']);if(A.attr('type')=='password'){A.attr('type','text');}else{A.attr('type','password');}},filterValidation:function(e){if(!e.isNavKeyPress()){this.validationTask.delay(this.validationDelay);
+if(e.getPageX()<A.getX()+A.getWidth()-30){return;}A.removeClass(['password-visible','password-hidden']);if(A.attr('type')=='password'){A.attr('type','text');A.addClass('password-visible');}else{A.attr('type','password');A.addClass('password-hidden');}},filterValidation:function(e){if(!e.isNavKeyPress()){this.validationTask.delay(this.validationDelay);
 }},validate:function(){if(this.disabled||this.validateValue(this.getRawValue())){this.markValid();return true;}this.markInvalid();return false;},validateValue:function(A){if(this.getVisibilityEl().hasClass('hidden')){return true;}if(A.length<1){if(this.allowBlank){return true;
 }return false;}if(A.length<this.minLength){return false;}if(A.length>this.maxLength){return false;}if(this.vtype){var vt=Roo.form.VTypes;if(!vt[this.vtype](A,this)){return false;}}if(typeof this.validator=="function"){var B=this.validator(A);if(typeof(B)=='string'){this.invalidText=B;
 }if(B!==true){return false;}}if(this.regex&&!this.regex.test(A)){return false;}return true;},fireKey:function(e){if(e.isNavKeyPress()){this.fireEvent("specialkey",this,e);}},focus:function(A){if(this.rendered){this.inputEl().focus();if(A===true){this.inputEl().dom.select();