UNPKG

kendo-ui-core

Version:
3 lines (2 loc) 6.04 kB
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(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"],t):((e="undefined"!=typeof globalThis?globalThis:e||self).kendotextbox=e.kendotextbox||{},e.kendotextbox.js=t())}(this,(function(){let e=kendo.jQuery;function t({widget:t,wrapper:n,options:l,prefixInsertBefore:a,suffixInsertAfter:i}){var o,r,s=l.prefixOptions,p=l.suffixOptions,u=s.template||s.icon,d=p.template||p.icon,c=(i=i||a,l.layoutFlow),f=c?"vertical"==c?"horizontal":"vertical":"horizontal",h=`<span class="k-input-separator k-input-separator-${"vertical"==c?"horizontal":"vertical"}"></span>`;s&&u&&((o=n.children(".k-input-prefix"))[0]||(o=e(`<span class="k-input-prefix k-input-prefix-${f}" />`),a?o.insertBefore(a):o.prependTo(n)),s.icon&&o.html(kendo.html.renderIcon({icon:s.icon})),s.template&&o.html(kendo.template(s.template)({})),s.separator&&e(h).insertAfter(o)),p&&d&&((r=n.children(".k-input-suffix"))[0]||(r=e(`<span class="k-input-suffix k-input-suffix-${f}" />`).appendTo(n),i?r.insertAfter(i):r.appendTo(n)),p.icon&&r.html(kendo.html.renderIcon({icon:p.icon})),p.template&&r.html(kendo.template(p.template)({})),p.separator&&e(h).insertBefore(r)),t._prefixContainer=o,t._suffixContainer=r}return function(e,n){var l=window.kendo,a=l.ui.Widget,i=l.ui,o=e.isPlainObject,r=".kendoTextBox",s="change",p="disabled",u="readonly",d="k-input-inner",c="input",f="k-focus",h="k-disabled",b="k-readonly",m="k-hidden",_="aria-disabled",g=a.extend({init:function(i,o){var s=this;a.fn.init.call(s,i,o),o=e.extend(!0,{},o),s.options.value=o.value||s.element.val(),s.options.readonly=o.readonly!==n?o.readonly:Boolean(s.element.attr("readonly")),s.options.enable=o.enable!==n?o.enable:!Boolean(s.element.attr("disabled")),s.options.placeholder=o.placeholder||s.element.attr("placeholder"),s.value(s.options.value),s._wrapper(),s._label(),s._editable({readonly:s.options.readonly,disable:!s.options.enable}),s.element.addClass(d).attr("placeholder",s.options.placeholder).attr("autocomplete","off"),o.icon&&s._icon(),t({widget:s,wrapper:s.wrapper,options:s.options}),s._clearButton(),s._clear&&s._clear.on("click"+r+" touchend"+r,s._clearValue.bind(s)),l.notify(s),s._applyCssClasses(),s.floatingLabel&&s.floatingLabel.refresh()},events:[s,c],options:{name:"TextBox",value:"",readonly:!1,clearButton:!1,enable:!0,placeholder:"",label:null,rounded:"medium",size:"medium",fillMode:"solid",icon:null,prefixOptions:{separator:!0},suffixOptions:{separator:!0}},value:function(e){var t=this;if(e===n)return t._value;t._value=e,t.element.val(e),e?t._showClear():t._hideClear(),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._clear&&(e._clear.off(r),e._clear=null),e.element.off(r),e.element[0].style.width="",e.element.removeClass(d),a.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(),l.deepExtend(this.options,e),this.init(this.element,this.options)},_clearValue:function(e){this.element.val(""),this.element.focus(),this.trigger(s,{value:"",originalEvent:e}),this._hideClear()},_hideClear:function(){this._clear&&this._clear.addClass(m)},_showClear:function(){this._clear&&this._clear.removeClass(m)},_clearButton:function(){let t=this;t._clear||(t._clear=e(`<span unselectable="on" class="k-clear-value" title="Clear">${l.ui.icon("x")}</span>`).attr({role:"button",tabIndex:-1}),t._clear.appendTo(t.wrapper)),t.options.clearButton||t._clear.remove(),t.element.val()||t._hideClear()},_editable:function(e){var t=this,n=t.element,l=t.wrapper,a=e.disable,i=e.readonly;n.off(r),i||a?(n.attr(p,a).attr(u,i).attr(_,a),l.toggleClass(h,a).toggleClass(b,i)):(n.prop(p,!1).prop(u,!1).attr(_,!1),l.removeClass(h).removeClass(b),n.on("focusin"+r,t._focusin.bind(t)),n.on("focusout"+r,t._focusout.bind(t)),n.on("change"+r,t._change.bind(t)),n.on(c+r,t._input.bind(t)))},_icon:function(){this.wrapper.prepend(l.ui.icon({icon:this.options.icon,iconClass:"k-input-icon"}))},_input:function(e){var t=this.element.val();this.trigger(c,{value:t,originalEvent:e})},_label:function(){var t,n,a=this,i=a.element,r=a.options,s=i.attr("id");null!==r.label&&(t=!!o(r.label)&&r.label.floating,n=o(r.label)?r.label.content:r.label,t&&(a._floatingLabelContainer=a.wrapper.wrap("<span></span>").parent(),a.floatingLabel=new l.ui.FloatingLabel(a._floatingLabelContainer,{widget:a})),l.isFunction(n)&&(n=n.call(a)),n||(n=""),s||(s=r.name+"_"+l.guid(),i.attr("id",s)),a._inputLabel=e("<label class='"+(t?"k-floating-label":"k-label k-input-label")+"' for='"+s+"'>"+n+"</label>'")[t?"insertAfter":"insertBefore"](a.wrapper))},_focusin:function(){this.wrapper.addClass(f)},_focusout:function(){this.wrapper.removeClass(f)},_change:function(e){var t=this,n=t.element.val();t._value=n,t.trigger(s,{value:n,originalEvent:e}),n?t._showClear():t._hideClear()},_wrapper:function(){var e,t=this.element,n=t[0];(e=t.wrap("<span class='k-input k-textbox'></span>").parent())[0].style.cssText=n.style.cssText,n.style.width="100%",this.wrapper=e.addClass(n.className).removeClass("input-validation-error")}});l.cssProperties.registerPrefix("TextBox","k-input-"),l.cssProperties.registerValues("TextBox",[{prop:"rounded",values:l.cssProperties.roundedValues.concat([["full","full"]])}]),i.plugin(g)}(window.kendo.jQuery),kendo})); //# sourceMappingURL=kendo.textbox.min.js.map