@progress/kendo-ui
Version:
This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.
1 lines • 4.2 kB
JavaScript
module.exports=function(a){var n={};function l(e){if(n[e])return n[e].exports;var t=n[e]={exports:{},id:e,loaded:!1};return a[e].call(t.exports,t,t.exports,l),t.loaded=!0,t.exports}return l.m=a,l.c=n,l.p="",l(0)}({0:function(e,t,a){e.exports=a(1491)},3:function(e,t){e.exports=function(){throw Error("define cannot be used indirect")}},1051:function(e,t){e.exports=require("./kendo.core")},1330:function(e,t){e.exports=require("./kendo.floatinglabel")},1491:function(e,t,a){var n;a(3),a=[a(1051),a(1330)],void 0===(t="function"==typeof(n=function(){var e={id:"textbox",name:"TextBox",category:"web",description:"The TextBox widget enables you to style and provide a floating label functionality to input elements",depends:["core","floatinglabel"]},i=window.kendo.jQuery,n=void 0,r=window.kendo,l=r.ui.Widget,t=r.ui,s=i.isPlainObject,d=".kendoTextBox",o="change",u="disabled",p="readonly",f="k-input-inner",a="k-focus",c="k-label k-input-label",b="k-disabled",v="k-no-click",h="aria-disabled",g=l.extend({init:function(e,t){var a=this;l.fn.init.call(a,e,t);t=i.extend(true,{},t);a.options.value=t.value||a.element.val();a.options.readonly=t.readonly!==n?t.readonly:Boolean(a.element.attr("readonly"));a.options.enable=t.enable!==n?t.enable:!Boolean(a.element.attr("disabled"));a.options.placeholder=t.placeholder||a.element.attr("placeholder");a.value(a.options.value);a._wrapper();a._label();a._editable({readonly:a.options.readonly,disable:!a.options.enable});a.element.addClass(f).attr("placeholder",a.options.placeholder).attr("autocomplete","off");r.notify(a);a._applyCssClasses()},events:[o],options:{name:"TextBox",value:"",readonly:false,enable:true,placeholder:"",label:null,rounded:"medium",size:"medium",fillMode:"solid"},value:function(e){var t=this;if(e===n)return t._value;t._value=e;t.element.val(e)},readonly:function(e){var t=this;this._editable({readonly:e===n?true:e,disable:false});if(t.floatingLabel)t.floatingLabel.readonly(e===n?true:e)},enable:function(e){var t=this;this._editable({readonly:false,disable:!(e=e===n?true:e)});if(t.floatingLabel)t.floatingLabel.enable(e=e===n?true:e)},focus:function(){var e=this;e.element[0].focus()},destroy:function(){var e=this;if(e.floatingLabel)e.floatingLabel.destroy();e.element.off(d);e.element[0].style.width="";e.element.removeClass(f);l.fn.destroy.call(e)},setOptions:function(e){this.destroy();this.element.unwrap();if(this._floatingLabelContainer){this._inputLabel.remove();this._inputLabel=null;this.element.unwrap();this._floatingLabelContainer=null}r.deepExtend(this.options,e);this.init(this.element,this.options)},_editable:function(e){var t=this;var a=t.element;var n=t.wrapper;var l=e.disable;var o=e.readonly;a.off(d);if(!o&&!l){a.prop(u,false).prop(p,false).attr(h,false);n.removeClass(b).removeClass(v);a.on("focusin"+d,t._focusin.bind(t));a.on("focusout"+d,t._focusout.bind(t));a.on("change"+d,t._change.bind(t))}else{a.attr(u,l).attr(p,o).attr(h,l);n.toggleClass(b,l).toggleClass(v,o)}},_label:function(){var e=this;var t=e.element;var a=e.options;var n=t.attr("id");var l;var o;if(a.label!==null){l=s(a.label)?a.label.floating:false;o=s(a.label)?a.label.content:a.label;if(l){e._floatingLabelContainer=e.wrapper.wrap("<span></span>").parent();e.floatingLabel=new r.ui.FloatingLabel(e._floatingLabelContainer,{widget:e})}if(r.isFunction(o))o=o.call(e);if(!o)o="";if(!n){n=a.name+"_"+r.guid();t.attr("id",n)}e._inputLabel=i("<label class='"+c+"' for='"+n+"'>"+o+"</label>'").insertBefore(e.wrapper)}},_focusin:function(){var e=this;e.wrapper.addClass(a)},_focusout:function(){var e=this;e.wrapper.removeClass(a)},_change:function(e){var t=this;var a=t.element.val();t._value=a;t.trigger(o,{value:a,originalEvent:e})},_wrapper:function(){var e=this;var t=e.element;var a=t[0];var n;n=t.wrap("<span class='k-input k-textbox'></span>").parent();n[0].style.cssText=a.style.cssText;a.style.width="100%";e.wrapper=n.addClass(a.className).removeClass("input-validation-error")}});return r.cssProperties.registerPrefix("TextBox","k-input-"),r.cssProperties.registerValues("TextBox",[{prop:"rounded",values:r.cssProperties.roundedValues.concat([["full","full"]])}]),t.plugin(g),window.kendo})?n.apply(t,a):n)||(e.exports=t)}});