UNPKG

@progress/kendo-ui

Version:

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

3 lines (2 loc) 4.46 kB
!function(e){"function"==typeof define&&define.amd?define(["kendo.core.min","kendo.icons.min"],e):e()}((function(){var e,t,n,i,s,o,a,l,r,d,m,c,f,u,h,v,p;e=window.kendo.jQuery,t=window.kendo,n=t.ui,i=n.Widget,s=e.extend,o=t.template,a=t.keys,l=e.isPlainObject,r=e.isEmptyObject,d=".kendoBottomNavigation",m="k-bottom-nav-",c=".",f="select",u=function(e){return"string"==typeof e},h={widget:"k-bottom-nav",item:"k-bottom-nav-item",navIcon:"k-bottom-nav-item-icon",icon:"k-icon",text:"k-bottom-nav-item-text",itemFlow:{vertical:"k-bottom-nav-item-flow-vertical",horizontal:"k-bottom-nav-item-flow-horizontal"},selected:"k-selected",disabled:"k-disabled",border:"k-bottom-nav-border",shadow:"k-bottom-nav-shadow",focus:"k-focus"},v={item:o((function(){return'<span class="'+h.item+'"></span>'})),anchor:o((function(e){var n=e.url;return'<a class="'+h.item+'" href="'+t.htmlEncode(n)+'"></a>'})),text:o((function(e){var t=e.text;return'<span class="'+h.text+'" >'+t+"</span>"})),icon:o((function(n){var i=n.icon;return t.ui.icon(e('<span class="'+h.navIcon+'"></span>'),{icon:i})}))},p=i.extend({init:function(t,n){var s=this;n=n||{},i.fn.init.call(s,t,n),s.element=e(t),s._updateCssClasses(),s._items(),s._bindEvents()},options:{name:"BottomNavigation",positionMode:"fixed",items:[],themeColor:"primary",itemFlow:"vertical",fill:"flat",shadow:!1,border:!0,template:null},events:[f],destroy:function(){this.element.off(d),i.fn.destroy.call(this)},_tabindex:function(e){var n=this.element,i="tabindex",s=n.attr("data-"+t.ns+i),o=e.attr(i)||n.attr(i)||s;s||(n.removeAttr(i),n.attr("data-"+t.ns+i,o)),e.attr(i,isNaN(o)?0:o)},_updateCssClasses:function(){var e=this,n=e.options,i=h;e.element.removeClass((function(t,n){0===n.indexOf("k-")&&e.element.removeClass(n)})),e.element.addClass(i.widget),e.element.addClass(t.getValidCssClass(m,"themeColor",n.themeColor)),e.element.addClass(t.getValidCssClass(m,"fill",n.fill)),e.element.addClass(t.getValidCssClass("k-pos-","positionMode",n.positionMode)),e.element.toggleClass(i.border,n.border),e.element.toggleClass(i.shadow,n.shadow),e._itemFlow(n.itemFlow)},_itemFlow:function(e){var t=h.itemFlow;this._toggleClassGroup(this.element,e,t)},_toggleClassGroup:function(e,t,n){if(u(n[t])){for(var i in n)e.removeClass(n[i]);e.addClass(n[t])}},_items:function(){for(var e,t=this,n=t.options.items,i=0;i<n.length;i++)e=t._renderItem(n[i]),t.element.append(e)},_renderItem:function(n){var i,a,l=n.template||this.options.template,r=n.url&&u(n.url);return(i=e(r?o(v.anchor)(n):o(v.item)(n))).toggleClass(h.selected,!0===n.selected).toggleClass(h.disabled,!1===n.enabled).addClass(n.cssClass).attr(s({},n.attributes,{"aria-disabled":!1===n.enabled})).data(n.data),this._tabindex(i),i.attr("role")||r||i.attr("role","link"),l?(i.append(o(l)(n)),i):(n=s({},{icon:""},n),a=e(v.icon(n)).addClass(n.iconClass),i.append(a),n.text&&(n.text=!1===n.encoded?n.text:t.htmlEncode(n.text),i.append(e(v.text(n)))),i)},_bindEvents:function(){var e=this,t=e._click.bind(e),n=e._keydown.bind(e);e.element.on("click"+d,c+h.item,t).on("keydown"+d,c+h.item,n)},_click:function(t){var n=e(t.target).closest(c+h.item);n.is(c+h.disabled)?t.preventDefault():this._triggerSelect(n,t)},_triggerSelect:function(e,t){e.is(c+h.disabled)||this.trigger(f,{originalEvent:t,item:e,data:e.data()})||this.select(e)},_keydown:function(t){var n=e(t.target),i=t.keyCode;i!==a.ENTER&&i!==a.SPACEBAR||this._isItem(n)&&(this._triggerSelect(n,t),i===a.SPACEBAR&&t.preventDefault())},_isItem:function(t){return(t=e(t)).is(c+h.item)&&!!this.element.find(t).length},items:function(){return this.element.children()},select:function(t,n){var i=this.items().filter(c+h.selected);if(!t)return i;n=!1!==n,this._isItem(t)&&(i.removeClass(h.selected),e(t).toggleClass(h.selected,n))},enable:function(t,n){n=!1===n,t&&this._isItem(t)&&(e(t).toggleClass(h.disabled,n),e(t).attr("aria-disabled",n))},item:function(e){return isNaN(e)?null:this.items().eq(e)},itemById:function(e){return this.element.find("#"+e)},add:function(t,n){var i=this,s="append",o=i.element;n&&i._isItem(n)&&(s="before",o=e(n)),t&&l(t)&&!r(t)&&o[s](i._renderItem(t))},remove:function(e){e&&this._isItem(e)&&e.remove()},showText:function(e){e=!1!==e,this.items().find(c+h.text).toggle(e)},setOptions:function(e){var t=this;i.fn.setOptions.call(this,e),t._updateCssClasses(),("items"in e||"template"in e)&&(t.element.empty(),t._items())}}),n.plugin(p)})); //# sourceMappingURL=kendo.bottomnavigation.min.js.map