UNPKG

kendo-ui-core

Version:
3 lines (2 loc) 4.11 kB
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n(require("kendo.core.js"),require("kendo.floatinglabel.js"),require("kendo.icons.js")):"function"==typeof define&&define.amd?define(["kendo.core.min","kendo.floatinglabel.min","kendo.icons.min"],n):((e="undefined"!=typeof globalThis?globalThis:e||self).kendotextbox=e.kendotextbox||{},e.kendotextbox.js=n())}(this,(function(){return function(e,n){var t=window.kendo,l=t.ui.Widget,i=t.ui,a=e.isPlainObject,o=".kendoTextBox",s="change",r="disabled",d="readonly",u="k-input-inner",p="input",f="k-focus",c="k-disabled",b="k-no-click",h="aria-disabled",g=l.extend({init:function(i,a){var o=this;l.fn.init.call(o,i,a),a=e.extend(!0,{},a),o.options.value=a.value||o.element.val(),o.options.readonly=a.readonly!==n?a.readonly:Boolean(o.element.attr("readonly")),o.options.enable=a.enable!==n?a.enable:!Boolean(o.element.attr("disabled")),o.options.placeholder=a.placeholder||o.element.attr("placeholder"),o.value(o.options.value),o._wrapper(),o._label(),o._editable({readonly:o.options.readonly,disable:!o.options.enable}),o.element.addClass(u).attr("placeholder",o.options.placeholder).attr("autocomplete","off"),a.icon&&o._icon(),t.notify(o),o._applyCssClasses()},events:[s,p],options:{name:"TextBox",value:"",readonly:!1,enable:!0,placeholder:"",label:null,rounded:"medium",size:"medium",fillMode:"solid",icon:null},value:function(e){var t=this;if(e===n)return t._value;t._value=e,t.element.val(e),t.floatingLabel&&t.floatingLabel.refresh()},readonly:function(e){this._editable({readonly:e===n||e,disable:!1}),this.floatingLabel&&this.floatingLabel.readonly(e===n||e)},enable:function(e){this._editable({readonly:!1,disable:!(e=e===n||e)}),this.floatingLabel&&this.floatingLabel.enable(e=e===n||e)},focus:function(){this.element[0].focus()},destroy:function(){var e=this;e.floatingLabel&&e.floatingLabel.destroy(),e.element.off(o),e.element[0].style.width="",e.element.removeClass(u),l.fn.destroy.call(e)},setOptions:function(e){this.destroy(),this._inputLabel&&(this._inputLabel.remove(),this._inputLabel=null),this._floatingLabelContainer?(this.floatingLabel.destroy(),this.floatingLabel=null,this.element.unwrap(),this.element.unwrap(),this._floatingLabelContainer=null):this.element.unwrap(),t.deepExtend(this.options,e),this.init(this.element,this.options)},_editable:function(e){var n=this,t=n.element,l=n.wrapper,i=e.disable,a=e.readonly;t.off(o),a||i?(t.attr(r,i).attr(d,a).attr(h,i),l.toggleClass(c,i).toggleClass(b,a)):(t.prop(r,!1).prop(d,!1).attr(h,!1),l.removeClass(c).removeClass(b),t.on("focusin"+o,n._focusin.bind(n)),t.on("focusout"+o,n._focusout.bind(n)),t.on("change"+o,n._change.bind(n)),t.on(p+o,n._input.bind(n)))},_icon:function(){this.wrapper.prepend(t.ui.icon({icon:this.options.icon,iconClass:"k-input-icon"}))},_input:function(e){var n=this.element.val();this.trigger(p,{value:n,originalEvent:e})},_label:function(){var n,l,i=this,o=i.element,s=i.options,r=o.attr("id");null!==s.label&&(n=!!a(s.label)&&s.label.floating,l=a(s.label)?s.label.content:s.label,n&&(i._floatingLabelContainer=i.wrapper.wrap("<span></span>").parent(),i.floatingLabel=new t.ui.FloatingLabel(i._floatingLabelContainer,{widget:i})),t.isFunction(l)&&(l=l.call(i)),l||(l=""),r||(r=s.name+"_"+t.guid(),o.attr("id",r)),i._inputLabel=e("<label class='k-label k-input-label' for='"+r+"'>"+l+"</label>'").insertBefore(i.wrapper))},_focusin:function(){this.wrapper.addClass(f)},_focusout:function(){this.wrapper.removeClass(f)},_change:function(e){var n=this,t=n.element.val();n._value=t,n.trigger(s,{value:t,originalEvent:e})},_wrapper:function(){var e,n=this.element,t=n[0];(e=n.wrap("<span class='k-input k-textbox'></span>").parent())[0].style.cssText=t.style.cssText,t.style.width="100%",this.wrapper=e.addClass(t.className).removeClass("input-validation-error")}});t.cssProperties.registerPrefix("TextBox","k-input-"),t.cssProperties.registerValues("TextBox",[{prop:"rounded",values:t.cssProperties.roundedValues.concat([["full","full"]])}]),i.plugin(g)}(window.kendo.jQuery),kendo})); //# sourceMappingURL=kendo.textbox.min.js.map