UNPKG

@progress/kendo-ui

Version:

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

1 lines 5.18 kB
module.exports=function(e){function t(s){if(n[s])return n[s].exports;var i=n[s]={exports:{},id:s,loaded:!1};return e[s].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}({0:function(e,t,n){e.exports=n(1028)},3:function(e,t){e.exports=function(){throw Error("define cannot be used indirect")}},1006:function(e,t){e.exports=require("./kendo.core")},1028:function(e,t,n){var s,i,a;!function(o,define){i=[n(1006)],s=o,a="function"==typeof s?s.apply(t,i):s,!(void 0!==a&&(e.exports=a))}(function(){return function(e,t){function n(n,i){n!==t&&e('<span class="k-badge">'+s.htmlEncode(n)+"</span>").appendTo(i)}var s=window.kendo,i=s.ui,a=i.Widget,o=s.keys,l=e.proxy,d=s.template,r=".kendoButtonGroup",c="k-widget",u="k-button-group",f="k-button",p="k-button-icontext",m="k-button-icon",h="k-state-active",C="k-state-focused",g="k-state-disabled",b="select",k="click",v="keydown",x="focus",y="blur",_="mousedown",w={item:d('<span #= item.enabled === false ? "disabled" : "" # # if (item.badge) { #'+s.attr("badge")+'="#=item.badge#"# } #>#= icon(iconClass) ##= image(item) ##= text #</span>'),image:d('<img alt="icon" src="#=data.imageUrl#" />'),icon:d('<span class="#=data#" />'),empty:d("")},E=a.extend({init:function(t,n){var s=this;a.fn.init.call(s,t,n),s.wrapper=s.element,s.options.items&&s._renderItems(s.options.items),s.selectedIndices=[],s.element.addClass(c+" "+u).attr("role","group").attr("tabindex",s.element.attr("tabindex")||"0").children().each(function(){var t=e(this);s._updateClasses.bind(s)(t)}),s._enable=!0,s.options.enable||(s._enable=!1,s.element.attr("aria-disabled",!0).addClass(g)),s.select(s.options.index),s.element.on(k+r,"."+f,l(s._click,s)).on(x+r,l(s._focus,s)).on(v+r,l(s._keyDown,s)).on(y+r,function(){s.preventFocus=!1,s.element.find("."+f).removeClass(C)}).on(_+r,function(){s.preventFocus=!0})},events:[b],options:{name:"ButtonGroup",selection:"single",index:-1,enable:!0},current:function(){return this.element.find("."+h)},_renderItems:function(t){var n=this;t.forEach(function(t){var i=e(w.item({image:t.imageUrl?w.image:w.empty,icon:t.imageUrl||!t.iconClass&&!t.icon?w.empty:w.icon,iconClass:t.iconClass||"k-icon k-i-"+t.icon,item:t,text:t.text?t.encoded===!1?t.text:s.htmlEncode(t.text):""}));t.attributes&&i.attr(t.attributes),t.selected&&i.addClass(h),(t.iconClass||t.icon||t.imageUrl)&&i.addClass(t.text?"k-button-icontext":"k-button-icon"),i.appendTo(n.element)})},_focus:function(){var t=e(this.element);this.preventFocus||(t.find("."+h).length?t.find("."+h).first().focus().addClass(C):t.children().first().focus().addClass(C))},_keyDown:function(t){var n,i=this,a=e(i.element),l=a.find("."+f),d=a.find("."+C),r=l.index(d),c=s.support.isRtl(i.element);t.keyCode===o.LEFT&&!c||t.keyCode===o.RIGHT&&c?(d.removeClass(C),n=0===r?l.eq(l.length-1):e(l[r-1]),n.focus().addClass(C),t.preventDefault()):t.keyCode===o.LEFT&&c||t.keyCode===o.RIGHT&&!c?(d.removeClass(C),n=r+1===l.length?l.eq(0):e(l[r+1]),n.focus().addClass(C),t.preventDefault()):t.keyCode!==o.ENTER&&t.keyCode!==o.SPACEBAR||(i._select(d),t.preventDefault())},select:function(n){var s,i=this,a=-1;n!==t&&n!==-1&&(i.element.find("."+f).removeClass(C),"number"==typeof n?(a=n,n=i.element.children().eq(n)):n.nodeType&&(n=e(n),a=n.index()),"multiple"===i.options.selection?(s="true"===n.attr("aria-pressed"),n.attr("aria-pressed",!s).toggleClass(h),i.selectedIndices.indexOf(a)===-1?i.selectedIndices.push(a):i.selectedIndices.splice(i.selectedIndices.indexOf(a),1)):(i.selectedIndices=[],i.current().attr("aria-pressed",!1).removeClass(h),n.attr("aria-pressed",!0).addClass(h),i.selectedIndices.push(a)),i.trigger(b,{indices:i.selectedIndices}))},badge:function(e,i){var a,o=this.element,l=isNaN(e)?o.find(e):o.children().eq(e),d=i||0===i;if(l.length){if(a=l.children(".k-badge").eq(0),!a.length&&d)return n(s.htmlEncode(i),l),s.htmlEncode(i);if(d)a.html(s.htmlEncode(i));else if(i===!1)return a.empty().remove(),t;return a.html()}},enable:function(e){t===e&&(e=!0),this.element.attr("aria-disabled",!e).toggleClass(g,!e),this._enable=this.options.enable=e},destroy:function(){var e=this;e.element.off(r),a.fn.destroy.call(e)},_updateClasses:function(t){var i=s.attrValue(t,"icon"),a=s.attrValue(t,"badge"),o=t.find("img").addClass("k-image"),l=!0;t.attr("aria-pressed",!1).attr("role","button").addClass(f),(t.is("[disabled]")||t.hasClass(g))&&t.addClass(g).attr("aria-disabled",!0).removeAttr("disabled"),t.is("."+h)&&(t.removeClass(h),(!t.hasClass(g)&&"single"===this.options.selection||"multiple"===this.options.selection)&&this.select(t[0])),!o[0]&&i&&t.prepend(e(w.icon("k-icon k-i-"+i))),t.contents().filter(function(){return!e(this).hasClass("k-icon")&&!e(this).hasClass("k-image")}).each(function(){(1==this.nodeType||3==this.nodeType&&e.trim(this.nodeValue).length>0)&&(l=!1)}),(o[0]||i)&&t.addClass(l?m:p),(a||0===a)&&n(a,t)},_click:function(t){var n=e(t.target).closest("."+f);t.isDefaultPrevented()||this._select(n)},_select:function(e){var n=e;return this.element.find("."+f).removeClass(C),!this._enable||n.is("."+g)?(n.addClass(C),t):(this.select(e[0]),n.addClass(C),t)}});i.plugin(E)}(window.kendo.jQuery),window.kendo},n(3))}});