@progress/kendo-ui
Version:
This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.
3 lines • 24.1 kB
JavaScript
/* @license */
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require(`kendo.data.min.js`),require(`kendo.icons.min.js`)):typeof define==`function`&&define.amd?define([`exports`,`kendo.data.min`,`kendo.icons.min`],t):(e=typeof globalThis<`u`?globalThis:e||self,t((e.kendo=e.kendo||{},e.kendo._globals=e.kendo._globals||{},e.kendo._globals.Panelbar={}),e.kendo._globals.Data,e.kendo._globals.Icons))})(this,function(e,t,n){Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});let r={id:`panelbar`,name:`PanelBar`,category:`web`,description:`The PanelBar widget displays hierarchical data as a multi-level expandable panel bar.`,depends:[`core`,`data`,`data.odata`,`icons`]};(function(e,t){var n=window.kendo,r=n.ui,i=n.keys,a=e.extend,o=n.htmlEncode,s=e.each,c=Array.isArray,l=n.template,u=r.Widget,d=n.data.HierarchicalDataSource,f=/^(ul|a|div)$/i,p=`.kendoPanelBar`,m=`img`,h=`href`,g=`k-link`,_=`.`+g,v=`error`,y=`.k-panelbar-item`,b=`.k-panelbar-group:visible`,x=`k-image`,S=`change`,C=`expand`,w=`select`,T=`click`,E=`k-panelbar-content`,D=`activate`,O=`collapse`,k=`dataBound`,A=`mouseenter`,j=`mouseleave`,M=`contentLoad`,N=`undefined`,P=`k-expanded`,F=`> .k-panelbar-group`,I=`> .k-panelbar-content`,ee=`string`,L=`k-focus`,R=`k-disabled`,z=`k-selected`,B=`.`+z,V=y+`:not(.k-disabled)`,H=`> `+V+` > `+_+`, .k-panelbar-group > `+V+` > `+_,te=y+`.k-disabled > .k-link`,U=`> li > `+B+`, .k-panelbar-group > li > `+B,W=`aria-disabled`,G=`aria-expanded`,K=`aria-hidden`,q=`aria-selected`,J=`:visible`,ne=`:empty`,Y=`single`,X={text:`dataTextField`,url:`dataUrlField`,spriteCssClass:`dataSpriteCssClassField`,imageUrl:`dataImageUrlField`,icon:`dataIconField`,iconClass:`dataIconClassField`},Z,Q={aria:function(e){var t=``;return(e.items||e.content||e.contentUrl||e.expanded)&&(t+=G+`='`+(e.expanded?`true`:`false`)+`' `),e.enabled===!1&&(t+=W+`='true'`),t},wrapperCssClass:function(e,t){var n=`k-panelbar-item`;return t.index,e.firstLevel&&(n+=` k-panelbar-header`),t.enabled===!1?n+=` `+R:t.expanded===!0&&(n+=` `+P),t.cssClass&&(n+=` `+t.cssClass),t.level&&(n+=` k-level-`+t.level()),n},textClass:function(e){var t=g;return e.selected&&(t+=` `+z),t},textAttributes:function(e){return e?` href='`+e+`'`:``},arrowIconOptions:function(e){return{icon:e.expanded?`chevron-up`:`chevron-down`,iconClass:`k-panelbar-toggle k-panelbar-${e.expanded?`collapse`:`expand`}`}},text:function(e){return e.encoded===!1?e.text:n.htmlEncode(e.text)},groupAttributes:function(e){return e.expanded===!0?``:` ${n.attr(`style-display`)}="none"`},ariaHidden:function(e){return e.expanded!==!0},groupCssClass:function(){return`k-panelbar-group`},contentAttributes:function(e){return e.item.expanded===!0?``:` ${n.attr(`style-display`)}="none"`},content:function(e){return e.content?e.content:e.contentUrl?``:` `},contentUrl:function(e){return e.contentUrl?`href="`+e.contentUrl+`"`:``}};function $(t){t=e(t),t.addClass(`k-level-`+t.parentsUntil(`.k-panelbar`,`ul`).length)}function re(t){var n=t,r=t.children(`ul`),i=n.children(`.k-link`).children(`.k-panelbar-toggle`);t.hasClass(`k-panelbar`)||(!i.length&&r.length?i=e(`<span class='k-panelbar-toggle' />`).appendTo(n):(!r.length||!r.children().length)&&(i.remove(),r.remove()))}Z=function(e){return e.children(`span`).children(`.k-panelbar-toggle`)};var ie=n.ui.DataBoundWidget.extend({init:function(e,t){var r=this,i,a;c(t)&&(t={dataSource:t}),a=t&&!!t.dataSource,u.fn.init.call(r,e,t),e=r.wrapper=r.element.addClass(`k-panelbar`),t=r.options,e[0].id&&(r._itemId=e[0].id+`_pb_active`),r._tabindex(),r._accessors(),r._dataSource(),r._templates(),r._initData(a),r._updateClasses(),r._animations(t),e.on(T+p,H,r._click.bind(r)).on(A+p+` `+j+p,H,r._toggleHover).on(T+p,te,!1).on(T+p,`.k-request-retry`,r._retryRequest.bind(r)).on(`keydown`+p,r._keydown.bind(r)).on(`focus`+p,function(){var e=r.select();r._current(e[0]?e:r._first())}).on(`blur`+p,function(){r._current(null)}).attr(`role`,`tree`),i=e.find(`li.`+P+` > .`+E),i[0]&&r.expand(i.parent(),!1),n.notify(r),r._showWatermarkOverlay&&r._showWatermarkOverlay(r.wrapper[0])},events:[C,O,w,D,S,v,k,M],options:{name:`PanelBar`,dataSource:{},animation:{expand:{effects:`expand:vertical`,duration:200},collapse:{duration:200}},messages:{loading:`Loading...`,requestFailed:`Request failed.`,retry:`Retry`},autoBind:!0,loadOnDemand:!0,expandMode:`multiple`,template:null,dataTextField:null,selectable:!0},destroy:function(){u.fn.destroy.call(this),this.element.off(p),n.destroy(this.element)},_initData:function(e){var t=this;e&&(t.element.empty(),t.options.autoBind&&(t._progress(!0),t.dataSource.fetch()))},_templates:function(){var t=this,r=t.options,i=t._fieldAccessor.bind(t);r.template&&typeof r.template==ee?r.template=l(r.template):r.template||=l(e=>{var t=i(`text`)(e.item);return e.item.encoded!==!1&&(t=o(t)),`<span class='k-panelbar-item-text'>${t}</span>`}),t.templates={content:l(({data:e,item:t,contentAttributes:n,content:r})=>`<div class='k-panelbar-content'${n({data:e,item:t,contentAttributes:n,content:r})}>${r(t)}</div>`),group:l(({data:e,items:t,group:n,renderItems:r,panelBar:i,ariaHidden:a,groupCssClass:o,groupAttributes:s})=>`<ul role='group' aria-hidden='${a(n)}' class='${o(n)}' ${s(n)}>`+r({data:e,items:t,group:n,renderItems:r,panelBar:i,ariaHidden:a,groupCssClass:o,groupAttributes:s})+`</ul>`),itemWrapper:l(({panelBar:t,item:r,arrow:a,textClass:o,arrowIconOptions:s,textAttributes:c,contentUrl:l})=>{var u=i(`url`)(r),d=i(`imageUrl`)(r),f=i(`spriteCssClass`)(r),p=i(`icon`)(r),m=i(`iconClass`)(r);m=m?` `+m:``;var l=l(r),h=u||l?`a`:`span`;return`<${h} class='${o(r)}' ${l}${c(u)}>`+(d?`<img class='k-panelbar-item-icon k-image' alt='' src='${d}' />`:``)+(f?`<span class='k-sprite ${f}'></span>`:``)+(p?n.ui.icon(e(`<span></span>`),{icon:p,iconClass:`k-panelbar-item-icon`+m}):``)+t.options.template({panelBar:t,item:r,arrow:a,textClass:o,textAttributes:c,contentUrl:l})+a({panelBar:t,item:r,arrow:a,textClass:o,arrowIconOptions:s,textAttributes:c,contentUrl:l})+`</${h}>`}),item:l(({data:e,group:t,item:r,panelBar:i,itemWrapper:a,renderContent:o,arrow:s,arrowIconOptions:c,subGroup:l,aria:u,wrapperCssClass:d,contentUrl:f,textClass:p,textAttributes:m})=>`<li aria-selected='false' role='treeitem' ${u(r)}class='${d(t,r)}' `+n.attr(`uid`)+`='${r.uid}'>`+a({data:e,group:t,item:r,panelBar:i,itemWrapper:a,renderContent:o,arrow:s,arrowIconOptions:c,subGroup:l,aria:u,wrapperCssClass:d,contentUrl:f,textClass:p,textAttributes:m})+(r.items&&r.items.length>0?l({items:r.items,panelBar:i,group:{expanded:r.expanded}}):r.content||r.contentUrl?o({data:e,group:t,item:r,panelBar:i,itemWrapper:a,renderContent:o,arrow:s,arrowIconOptions:c,subGroup:l,aria:u,wrapperCssClass:d,contentUrl:f,textClass:p,textAttributes:m}):``)+`</li>`),loading:l(({messages:e})=>`<li class='k-panelbar-item'><span class='k-icon k-i-loading'></span> ${o(e.loading)}</li>`),retry:l(({messages:e})=>`<li class='k-panelbar-item'>${o(e.requestFailed)} <button class='k-button k-request-retry'><span class='k-button-text'>${o(e.retry)}</span></button></li>`),arrow:l(({item:e,arrowIconOptions:t})=>n.ui.icon(t(e))),empty:l(()=>``)}},setOptions:function(e){var t=this.options.animation;this._animations(e),e.animation=a(!0,t,e.animation),`dataSource`in e&&this.setDataSource(e.dataSource),u.fn.setOptions.call(this,e)},expand:function(t,n){var r=this,i={};if(t=this.element.find(t),r._animating&&t.find(`ul`).is(`:visible`)){r.one(`complete`,function(){setTimeout(function(){r.expand(t)})});return}return r._animating=!0,n=n!==!1,t.each(function(a,o){o=e(o);var s=t.children(`.k-panelbar-group,.k-panelbar-content`);s.length||(s=r._addGroupElement(t));var c=s.add(o.find(I));if(!o.hasClass(R)&&c.length>0){if(r.options.expandMode==Y&&r._collapseAllExpanded(o))return r;n||(i=r.options.animation,r.options.animation={expand:{effects:{}},collapse:{hide:!0,effects:{}}}),r._triggerEvent(C,o)||r._toggleItem(o,!1,!1),n||(r.options.animation=i)}}),r},collapse:function(t,n){var r=this,i={};return r._animating=!0,n=n!==!1,t=r.element.find(t),t.each(function(t,a){a=e(a);var o=a.find(F).add(a.find(I));!a.hasClass(R)&&o.is(J)&&(n||(i=r.options.animation,r.options.animation={expand:{effects:{}},collapse:{hide:!0,effects:{}}}),r._triggerEvent(O,a)||r._toggleItem(a,!0),n||(r.options.animation=i))}),r},updateArrow:function(t){var r=this;t=e(t),t.children(_).children(`.k-panelbar-collapse, .k-panelbar-expand`).remove(),t.filter(function(){var t=r.dataItem(this);return t?t.hasChildren||t.content||t.contentUrl:e(this).find(`.k-panelbar-group`).length>0||e(this).find(`.k-panelbar-content`).length>0}).children(`.k-link:not(:has([class*=-i-chevron]))`).each(function(){var t=e(this),r=t.parent();let i=n.ui.icon({icon:r.hasClass(P)?`chevron-up`:`chevron-down`,iconClass:`k-panelbar-toggle k-panelbar-${r.hasClass(P)?`collapse`:`expand`}`});t.append(i)})},_accessors:function(){var e=this,t=e.options,r,i,a,o=e.element;for(r in X)i=t[X[r]],a=o.attr(n.attr(r+`-field`)),!i&&a&&(i=a),i||=r,c(i)||(i=[i]),t[X[r]]=i},_progress:function(e,t){var n=this.element,r=this.templates.loading({messages:this.options.messages});arguments.length==1?(t=e,t?n.html(r):n.empty()):Z(e).empty().removeClass(`k-i-arrow-rotate-cw k-svg-i-arrow-rotate-cw`).toggleClass(`k-i-loading`,t)},_refreshRoot:function(t){var i=this,o={firstLevel:!0,expanded:!0,length:i.element.children().length};this.element.empty();var s=e.map(t,function(t,r){if(typeof t==`string`)return e(t);{t.items=[];let s=e(i.renderItem({group:o,item:a(t,{index:r})}));return n.applyStylesFromKendoAttributes(s,[`display`]),s}});this.element.append(s);for(var c=this.element.children(`.k-panelbar-item`),l=0;l<t.length;l++)this.trigger(`itemChange`,{item:c.eq(l).find(`.k-link`).first(),data:t[l],ns:r})},_refreshChildren:function(e,t){var n,i,a;if(t.children(`.k-panelbar-group`).empty(),!e.children.data().length)re(t),i=t.children(`.k-panelbar-group`).children(`li`);else for(this.append(e.children,t),this.options.loadOnDemand&&this._toggleGroup(t.children(`.k-panelbar-group`),!1),i=t.children(`.k-panelbar-group`).children(`li`),n=0;n<i.length;n++)a=i.eq(n),this.trigger(`itemChange`,{item:a.find(`.k-link`).first(),data:this.dataItem(a),ns:r})},findByUid:function(t){for(var r=this.element.find(`.k-panelbar-item`),i=n.attr(`uid`),a,o=0;o<r.length;o++)if(r[o].getAttribute(i)==t){a=r[o];break}return e(a)},refresh:function(e){var n=this.options,r=e.node,i=e.action,a=e.items,o=this.wrapper,s=n.loadOnDemand;if(e.field)return!a[0]||!a[0].level?void 0:this._updateItems(a,e.field);if(r&&(o=this.findByUid(r.uid),this._progress(o,!1)),i==`add`?this._appendItems(e.index,a,o):i==`remove`?this.remove(this.findByUid(a[0].uid)):i==`itemchange`?this._updateItems(a):i==`itemloaded`?this._refreshChildren(r,o):this._refreshRoot(a),i!=`remove`){for(var c=0;c<a.length;c++)if(!s||a[c].expanded){var l=a[c];this._hasChildItems(l)&&l.load()}}this.trigger(k,{node:r?o:t})},_error:function(e){var t=e.node&&this.findByUid(e.node.uid),r=this.templates.retry({messages:this.options.messages});t?(this._progress(t,!1),n.ui.icon(Z(t),{icon:`arrow-rotate-cw`}),e.node.loaded(!1)):(this._progress(!1),this.element.html(r))},_retryRequest:function(e){e.preventDefault(),this.dataSource.fetch()},items:function(){return this.element.find(`.k-panelbar-item > span:first-child`)},setDataSource:function(e){var t=this.options;t.dataSource=e,this._dataSource(),this.options.autoBind&&(this._progress(!0),this.dataSource.fetch())},_bindDataSource:function(){this._refreshHandler=this.refresh.bind(this),this._errorHandler=this._error.bind(this),this.dataSource.bind(S,this._refreshHandler),this.dataSource.bind(v,this._errorHandler)},_unbindDataSource:function(){var e=this.dataSource;e&&(e.unbind(S,this._refreshHandler),e.unbind(v,this._errorHandler))},_fieldAccessor:function(t){var r=this.options[X[t]]||[],i=r.length;return i===0?(function(e){return e[t]}):(function(t){var a=e.map(r,n.getter);return t.level?a[Math.min(t.level(),i-1)](t):a[i-1](t)})},_dataSource:function(){var e=this,t=e.options.dataSource;t&&(t=c(t)?{data:t}:t,e._unbindDataSource(),t.fields||=[{field:`text`},{field:`url`},{field:`spriteCssClass`},{field:`imageUrl`},{field:`icon`},{field:`iconClass`}],e.dataSource=d.create(t),e._bindDataSource())},_appendItems:function(t,r,i){var o=this,s,c;i.hasClass(`k-panelbar`)?(s=i.children(`li`),c=i):(c=i.children(`.k-panelbar-group`),c.length||(c=o._addGroupElement(i)),s=c.children(`li`));var l={firstLevel:i.hasClass(`k-panelbar`),expanded:!0,length:s.length},u=e.map(r,function(t,r){if(typeof t==`string`)return e(t);{let i=e(o.renderItem({group:l,item:a(t,{index:r})}));return n.applyStylesFromKendoAttributes(i,[`display`]),i}});typeof t==N&&(t=s.length);for(var d=0;d<u.length;d++)s.length===0||t===0?c.append(u[d]):u[d].insertAfter(s[t-1]);o.dataItem(i)&&(o.dataItem(i).hasChildren=!0,o.updateArrow(i))},_updateItems:function(t,n){var i=this,o,s,c,l,u={panelBar:i.options,item:l,group:{}},d=n!=`expanded`;if(n==`selected`)if(t[0][n]){var f=i.findByUid(t[0].uid);f.hasClass(R)||i.select(f,!0)}else i.clearSelection();else{var p=e.map(t,function(e){return i.findByUid(e.uid)});for(o=0;o<t.length;o++)u.item=l=t[o],u.panelBar=i,c=p[o],s=c.parent(),d&&(u.group={firstLevel:s.hasClass(`k-panelbar`),expanded:c.parent().hasClass(P),length:c.children().length},c.children(`.k-link`).remove(),c.prepend(i.templates.itemWrapper(a(u,{arrow:l.hasChildren||l.content||l.contentUrl?i.templates.arrow:i.templates.empty},Q)))),n==`expanded`?i._toggleItem(c,!l[n],l[n]?`true`:!0):n==`enabled`&&(i.enable(c,l[n]),l[n]||l.selected&&l.set(`selected`,!1)),c.length&&this.trigger(`itemChange`,{item:c.find(`.k-link`).first(),data:l,ns:r})}},_toggleDisabled:function(e,t){e=this.element.find(e),e.toggleClass(R,!t).attr(W,!t)},dataItem:function(t){var r=e(t).closest(y).attr(n.attr(`uid`)),i=this.dataSource;return i&&i.getByUid(r)},select:function(n,r){var i=this;return n===t?i.element.find(U).parent():(n=i.element.find(n),n.length?n.each(function(){var t=e(this),n=t.children(_);if(t.hasClass(R))return i;i._updateSelected(n,r)}):this._updateSelected(n),i)},clearSelection:function(){this.select(e())},enable:function(e,t){return this._toggleDisabled(e,t!==!1),this},disable:function(e){return this._toggleDisabled(e,!1),this},append:function(e,t){t=this.element.find(t);var n=this._insert(e,t,t.length?t.find(F):null);return s(n.items,function(){n.group.append(this),$(this)}),this.updateArrow(t),n.group.height(`auto`),this},insertBefore:function(e,t){t=this.element.find(t);var n=this._insert(e,t,t.parent());return s(n.items,function(){t.before(this),$(this)}),n.group.height(`auto`),this},insertAfter:function(e,t){t=this.element.find(t);var n=this._insert(e,t,t.parent());return s(n.items,function(){t.after(this),$(this)}),n.group.height(`auto`),this},remove:function(e){e=this.element.find(e);var t=this,n=e.parentsUntil(t.element,y),r=e.parent(`ul`);return e.remove(),r&&!r.hasClass(`k-panelbar`)&&!r.children(y).length&&r.remove(),n.length&&(n=n.eq(0),t.updateArrow(n)),t},reload:function(t){var n=this;t=n.element.find(t),t.each(function(){var t=e(this);n._ajaxRequest(t,t.children(`.`+E),!t.is(J))})},_first:function(){return this.element.children(V).first()},_last:function(){var e=this.element.children(V).last(),t=e.children(b);return t[0]?t.children(V).last():e},_current:function(n){var r=this,i=r._focused,a=r._itemId;if(n===t)return i;r.element.removeAttr(`aria-activedescendant`),i&&i.length&&(i[0].id===a&&i.removeAttr(`id`),i.children(_).removeClass(L)),e(n).length&&(a=n[0].id||a,n.attr(`id`,a).children(_).addClass(L),r.element.attr(`aria-activedescendant`,a)),r._focused=n},_keydown:function(e){var t=this,n=e.keyCode,r=t._current();e.target==e.currentTarget&&(n==i.DOWN||n==i.RIGHT?(t._current(t._nextItem(r)),e.preventDefault()):n==i.UP||n==i.LEFT?(t._current(t._prevItem(r)),e.preventDefault()):n==i.ENTER||n==i.SPACEBAR?(t._click(e),e.preventDefault()):n==i.HOME?(t._current(t._first()),e.preventDefault()):n==i.END&&(t._current(t._last()),e.preventDefault()))},_nextItem:function(e){if(!e)return this._first();var t=e.children(b),n=e.nextAll(`:visible`).first();return t[0]&&(n=t.children().first()),n[0]||(n=e.parent(b).parent(y).next()),n[0]||(n=this._first()),n},_prevItem:function(e){if(!e)return this._last();var t=e.prevAll(`:visible`).first(),n;if(!t[0])t=e.parent(b).parent(y),t[0]||(t=this._last());else for(n=t;n[0];)n=n.children(b).children().last(),n[0]&&(t=n);return t},_insert:function(t,r,i){var o=this,s,c=e.isPlainObject(t),l=r&&r[0],u;if(l||(i=o.element),u={firstLevel:i.hasClass(`k-panelbar`),expanded:e(r).hasClass(P),length:i.children().length},l&&!i.length&&(i=e(o.renderGroup({group:u,options:o.options})),n.applyStylesFromKendoAttributes(i,[`display`]),i.appendTo(r)),c||Array.isArray(t)||t instanceof d){if(t instanceof d&&(t=t.data()),s=e.map(c?[t]:t,function(t,r){if(typeof t==`string`)return e(t);{let i=e(o.renderItem({group:u,item:a(t,{index:r})}));return n.applyStylesFromKendoAttributes(i,[`display`]),i}}),l){var f=o.dataItem(r);f?(f.hasChildren=!0,r.attr(G,f.expanded).not(`.`+P).children(`ul`).attr(K,!f.expanded)):r.attr(G,!1)}}else s=typeof t==`string`&&t.charAt(0)!=`<`?o.element.find(t):e(t),o._updateItemsClasses(s);return t.length||(t=[t]),{items:s,group:i}},_toggleHover:function(t){var n=e(t.currentTarget);n.parents(`li.`+R).length||n.toggleClass(`k-hover`,t.type==A)},_updateClasses:function(){var t=this,n=t.element.find(`li > ul`).not(function(){return e(this).parentsUntil(`.k-panelbar`,`div`).length}).addClass(`k-panelbar-group`).attr(`role`,`group`),r,i,a=n.parent(),o=t.dataItem(a);i=o&&o.expanded||!1,n.parent().not(`[`+G+`]`).attr(G,i).not(`.`+P).children(`ul`).attr(K,!i).hide(),r=t.element.add(n).children(),t._updateItemsClasses(r),t.updateArrow(r)},_updateItemsClasses:function(e){for(var t=e.length,n=0;n<t;n++)this._updateItemClasses(e[n],n)},_updateItemClasses:function(t,r){var i=this._selected,a=this.options.contentUrls,o=a&&a[r],s=this.element[0],c,l;t=e(t).addClass(`k-panelbar-item`).attr({role:`treeitem`,"aria-selected":!1}),n.support.browser.msie&&t.css(`list-style-position`,`inside`).css(`list-style-position`,``),t.children(m).addClass(x),l=t.children(`a`).addClass(g),l[0]&&(l.attr(`href`,o),l.children(m).addClass(x)),t.filter(`li[disabled]`).addClass(`k-disabled`).attr(W,!0).prop(`disabled`,!1),t.children(`div`).addClass(E+` k-panelbar-content`).attr(K,!0).hide().parent().attr(G,!1),l=t.children(B),l[0]&&(i&&i.attr(q,!1).children(B).removeClass(z),l.addClass(z),this._selected=t.attr(q,!0)),t.children(_)[0]||(c=`<span class='`+g+`'><span class='k-panelbar-item-text'></span></span>`,a&&a[r]&&t[0].parentNode==s&&(c=`<a class="k-link" href="`+a[r]+`"></a>`),t.contents().filter(function(){return!this.nodeName.match(f)&&!(this.nodeType==3&&!n.trim(this.nodeValue.trim))}).wrapAll(c)),t.parent(`.k-panelbar`)[0]?t.addClass(`k-panelbar-header`):t.addClass(`k-panelbar-item`),/k\-level\-\d+/i.test(t.attr(`class`))||t.addClass(`k-level-`+t.parentsUntil(this.element,`ul`).length)},_click:function(t){var n=this,r=t.type==T?e(t.target):n._current().children(_),i=n.element,a,o,s,c;if(!r.parents(`li.`+R).length&&r.closest(`.k-panelbar`)[0]==i[0]&&!(r.is(`:kendoFocusable`)&&!r.hasClass(g))){var l=r.closest(_),u=l.closest(y);n._updateSelected(l);var d=u.children(`.k-panelbar-group,.k-panelbar-content`),f=this.dataItem(u);if(!d.length&&(n.options.loadOnDemand&&f&&f.hasChildren||this._hasChildItems(u)||u.content||u.contentUrl)&&(d=n._addGroupElement(u)),o=u.find(F).add(u.find(I)),s=l.attr(h),c=s&&(s.charAt(s.length-1)==`#`||s.indexOf(`#`+n.element[0].id+`-`)!=-1),a=!!(c||o.length),o.data(`animating`)&&a){t.preventDefault();return}if(n._triggerEvent(w,u)&&(a=!0),a!==!1){if(n.options.expandMode==Y&&n._collapseAllExpanded(u)&&a){t.preventDefault();return}if(o.length){var p=o.is(J);n._triggerEvent(p?O:C,u)||(a=n._toggleItem(u,p))}a&&t.preventDefault()}}},_hasChildItems:function(e){return e.items&&e.items.length>0||e.hasChildren},_toggleItem:function(e,n,r){var i=this,a=e.find(F),o=e.find(_).attr(h),s,c,l=i.dataItem(e),u=!n,d=l&&l.loaded();return l&&!r&&l.expanded!==u?(l.set(`expanded`,u),s=l.hasChildren||!!l.content||!!l.contentUrl,s):(l&&(!r||r===`true`)&&!d&&!l.content&&!l.contentUrl?(i.options.loadOnDemand&&this._progress(e,!0),e.children(`.k-panelbar-group,.k-panelbar-content`).remove(),s=l.hasChildren,l.load()):a.length?(this._toggleGroup(a,n),s=!0):(c=e.children(`.`+E),c.length&&(s=!0,!c.is(ne)||o===t?i._toggleGroup(c,n):i._ajaxRequest(e,c,n))),s)},_toggleGroup:function(t,r){var i=this,o=i.options.animation,s=o.expand,c=o.collapse&&`effects`in o.collapse,l=a({},o.expand,o.collapse);if(t.hasClass(`k-hidden`)&&t.removeClass(`k-hidden`),c||(l=a(l,{reverse:!0})),t.is(J)!=r){i._animating=!1;return}t.attr(K,!!r),t.parent().attr(G,!r).toggleClass(P,!r).find(`> .k-link > .k-panelbar-collapse,> .k-link > .k-panelbar-expand`).each(function(t,i){let a=e(i);a.removeClass(`k-panelbar-expand k-panelbar-collapse`),n.ui.icon(a,{icon:r?`chevron-down`:`chevron-up`,iconClass:r?`k-panelbar-expand`:`k-panelbar-collapse`})}),r?(s=a(l,{hide:!0}),s.complete=function(){i._animationCallback()}):s=a({complete:function(e){i._triggerEvent(D,e.closest(y)),i._animationCallback()}},s),t.toggle(0).kendoStop(!0,!0).kendoAnimate(s)},_animationCallback:function(){var e=this;e.trigger(`complete`),e._animating=!1},_addGroupElement:function(t){var n=e(`<ul role="group" aria-hidden="true" class="k-panelbar-group"></ul>`).hide();return t.append(n),n},_collapseAllExpanded:function(t){var n=this,r,i=!1,a=t.find(F).add(t.find(I));return a.is(J)&&(i=!0),a.is(J)||a.length===0||(r=t.siblings(),r.find(F).add(r.find(I)).filter(function(){return e(this).is(J)}).each(function(t,r){r=e(r),i=n._triggerEvent(O,r.closest(y)),i||n._toggleGroup(r,!0)}),n.one(`complete`,function(){setTimeout(function(){for(let e=0;e<r.length;e++){let t=n.dataItem(r.eq(e));t&&t.set(`expanded`,!1)}})})),i},_ajaxRequest:function(t,r,i){var a=this,o=t.find(`.k-panelbar-collapse, .k-panelbar-expand`),s=t.find(_),c=setTimeout(function(){o.empty().removeClass(`k-i-chevron-up k-i-chevron-down k-svg-i-chevron-up k-svg-i-chevron-down`).addClass(`k-i-loading`)},100),l={},u=s.attr(h);e.ajax({type:`GET`,cache:!1,url:u,dataType:`html`,data:l,error:function(e,t){o.removeClass(`k-i-loading`),n.ui.icon(o,{icon:o.hasClass(`k-panelbar-expand`)?`chevron-down`:`chevron-up`}),a.trigger(v,{xhr:e,status:t})&&this.complete()},complete:function(){clearTimeout(c),n.ui.icon(o,{icon:o.hasClass(`k-panelbar-expand`)?`chevron-down`:`chevron-up`}),o.removeClass(`k-i-loading`)},success:function(e){try{r.html(e)}catch(e){var n=window.console;n&&n.error&&n.error(e.name+`: `+e.message+` in `+u),this.error(this.xhr,`error`)}a._toggleGroup(r,i),a.trigger(M,{item:t[0],contentElement:r[0]})}})},_triggerEvent:function(e,t){return this.trigger(e,{item:t[0]})},_updateSelected:function(e,t){var n=this,r=n.element,i=e.parent(y),a=n._selected,o=n.dataItem(i);if(n.options.selectable==0){n._current(i[0]?i:null);return}a&&a.attr(q,!1),n._selected=i.attr(q,!0),r.find(U).removeClass(z),e.addClass(z),n._current(i[0]?i:null),o&&o.set(`selected`,!0),t||n.trigger(S)},_animations:function(e){e&&`animation`in e&&!e.animation&&(e.animation={expand:{effects:{}},collapse:{hide:!0,effects:{}}})},renderItem:function(e){var t=this;e=a({panelBar:t,group:{}},e);var n=t.templates.empty,r=e.item;return t.templates.item(a(e,{itemWrapper:t.templates.itemWrapper,renderContent:t.renderContent,arrow:t._hasChildItems(r)||r.content||r.contentUrl?t.templates.arrow:n,subGroup:!e.loadOnDemand||r.expanded?t.renderGroup:n},Q))},renderGroup:function(e){let t=this;return(t&&t.templates||e.panelBar.templates).group(a({renderItems:function(e){let t=``,n=0,r=e.items,i=r?r.length:0,o=a({length:i},e.group);for(;n<i;n++)t+=e.panelBar.renderItem(a(e,{group:o,item:a({index:n},r[n])}));return t}},e,Q))},renderContent:function(e){return e.panelBar.templates.content(a(e,Q))}});n.ui.plugin(ie)})(window.kendo.jQuery);var i=kendo;e.__meta__=r,e.default=i});
//# sourceMappingURL=kendo.panelbar.min.js.map