@progress/kendo-angular-menu 4.0.0 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,4 +2,4 @@
2
2
  * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@progress/kendo-angular-l10n"),require("@progress/kendo-licensing"),require("@progress/kendo-angular-common"),require("@progress/kendo-angular-popup"),require("@angular/common")):"function"==typeof define&&define.amd?define("KendoAngularMenu",["exports","@angular/core","@progress/kendo-angular-l10n","@progress/kendo-licensing","@progress/kendo-angular-common","@progress/kendo-angular-popup","@angular/common"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoAngularMenu={},e.ng.core,e.KendoAngularL10N,e.KendoLicensing,e.KendoAngularCommon,e.KendoAngularPopup,e.ng.common)}(this,function(e,l,t,R,a,n,j){"use strict";function N(n){if(n&&n.__esModule)return n;var i=Object.create(null);return n&&Object.keys(n).forEach(function(e){var t;"default"!==e&&(t=Object.getOwnPropertyDescriptor(n,e),Object.defineProperty(i,e,t.get?t:{enumerable:!0,get:function(){return n[e]}}))}),i.default=n,Object.freeze(i)}var i=N(l),z=N(t),B=N(n),H=N(j),_=function(e,t){return(_=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};function r(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}_(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}Object.create;function Z(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var i,r,o=n.call(e),s=[];try{for(;(void 0===t||0<t--)&&!(i=o.next()).done;)s.push(i.value)}catch(e){r={error:e}}finally{try{i&&!i.done&&(n=o.return)&&n.call(o)}finally{if(r)throw r.error}}return s}function K(e,t,n){if(n||2===arguments.length)for(var i,r=0,o=t.length;r<o;r++)!i&&r in t||((i=i||Array.prototype.slice.call(t,0,r))[r]=t[r]);return e.concat(i||Array.prototype.slice.call(t))}Object.create;function q(e,t){return e.siblingIndex-t.siblingIndex}function U(e,t,n){for(var i=t[e+n];!i;)e<0?e=t.length-1:e>=t.length?e=0:e+=n,i=t[e];return i}var X={name:"@progress/kendo-angular-menu",productName:"Kendo UI for Angular",productCodes:["KENDOUIANGULAR","KENDOUICOMPLETE"],publishDate:1650441247,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning"},Q=/_?\d+$/,W=0,o=(Object.defineProperty(s.prototype,"hasItems",{get:function(){return 0<Object.keys(this.items).length},enumerable:!1,configurable:!0}),s.prototype.childId=function(e){return this.idPrefix+"-child"+e},s.prototype.itemIndex=function(e,t){return(e?e+"_":"")+t},s.prototype.get=function(e){return this.items[e]},s.prototype.add=function(e){this.items[e.index]=e},s.prototype.remove=function(e){this.items[e.index]===e&&delete this.items[e.index]},s.prototype.addList=function(e){this.lists.push(e)},s.prototype.removeList=function(e){e=this.lists.indexOf(e);0<=e&&this.lists.splice(e,1)},s.prototype.containsList=function(t){return Boolean(this.lists.find(function(e){return e.element.nativeElement===t}))},s.prototype.siblings=function(e){var t=this,n=this.parentIndex(e.index);return this.filter(function(e){return t.parentIndex(e)===n})},s.prototype.otherSiblings=function(t){var n=this,i=this.parentIndex(t.index);return this.filter(function(e){return n.parentIndex(e)===i&&e!==t.index})},s.prototype.children=function(t){var n=this;return this.filter(function(e){return n.parentIndex(e)===t.index})},s.prototype.parent=function(e){return this.items[this.parentIndex(e.index)]},s.prototype.root=function(e){return this.items[this.indices(e.index)[0]]},s.prototype.indices=function(e){return e.split("_")},s.prototype.filter=function(e){var t,n=[],i=this.items;for(t in i)e(t,i[t])&&n.push(i[t]);return n.sort(q)},s.prototype.previous=function(e){var t=this.siblings(e),e=t.indexOf(e);return U(e,t,-1)},s.prototype.next=function(e){var t=this.siblings(e),e=t.indexOf(e);return U(e,t,1)},s.prototype.hasParent=function(e,t){return e.index.startsWith(t.index)},s.prototype.areSiblings=function(e,t){return e!==t&&this.parent(e)===this.parent(t)},s.prototype.forEach=function(e){var t,n=this.items;for(t in n)n.hasOwnProperty(t)&&e(n[t])},s.prototype.parentIndex=function(e){return e.replace(Q,"")},s);function s(){this.items={},this.lists=[],this.idPrefix="k-menu"+W++}o.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:o,deps:[],target:i.ɵɵFactoryTarget.Injectable}),o.ɵprov=i.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:o}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:o,decorators:[{type:l.Injectable}]});r(Y,$=a.PreventableEvent);var $,G=Y;function Y(e){var t=$.call(this)||this;return Object.assign(t,e),t}c.prototype.open=function(e,t){e.disabled||(e.hasContent&&!e.opened?this.actions.push({name:"open",requiresZone:e.hasContentTemplates(),item:e,finished:t}):t&&t())},c.prototype.close=function(e){this.closeChildren(e),this.closeItem(e)},c.prototype.closeItem=function(e){e.opened&&this.actions.push({name:"close",item:e})},c.prototype.closeToRoot=function(e){this.closeChildren(e);for(var t=e;this.closeItem(t),t=this.items.parent(t););},c.prototype.closeOthers=function(e){this.closeChildren(e);for(var t=e;t;){var n=this.items.otherSiblings(t);this.closeItems(n),t=this.items.parent(t)}},c.prototype.closeAll=function(){var t=this;this.items.forEach(function(e){e.opened&&0===e.level&&t.close(e)})},c.prototype.select=function(e,t,n,i){this.actions.push({name:"select",item:e,prevented:n,finished:i,domEvent:t})},c.prototype.emit=function(e,t,n){var i=this.owner,n=new G({sender:i,item:t.item,index:t.index,originalEvent:n,hasContent:t.hasContent});return i[e].emit(n),i.contextService&&i.contextService.emit(e,n),n.isDefaultPrevented()},Object.defineProperty(c.prototype,"hasPending",{get:function(){return 0<this.actions.length},enumerable:!1,configurable:!0}),c.prototype.execute=function(e){var t,n=this;(this.hasPending||e)&&(t=e||this.clear(),!l.NgZone.isInAngularZone()&&this.requiresZone(t)?this.ngZone.run(function(){n.executeActions(t)}):this.executeActions(t))},c.prototype.clear=function(){var e=this.actions;return this.actions=[],e},c.prototype.executeActions=function(e){for(var t,n,i=0;i<e.length;i++){var r=e[i],o=r.item,s=r.name,a=r.prevented,p=r.finished,r=r.domEvent;t=o,"open"===(n=s)&&t.opened||"close"===n&&!t.opened||(this.emit(s,o,r)?a&&a():(o[s]&&o[s](),p&&p()))}},c.prototype.requiresZone=function(e){for(var t=e||this.actions,n=this.owner,i=n.contextService,r=0;r<t.length;r++){var o=t[r],s=o.name;if(o.requiresZone||s&&(a.hasObservers(n[s])||i&&i.hasObservers(s)))return!0}return!1},c.prototype.closeChildren=function(e){e.opened&&(e=this.items.children(e),this.closeItems(e))},c.prototype.closeItems=function(e){for(var t=0;t<e.length;t++)this.close(e[t])};var p=c;function c(e,t){this.ngZone=e,this.items=t,this.actions=[]}p.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:p,deps:[{token:i.NgZone},{token:o}],target:i.ɵɵFactoryTarget.Injectable}),p.ɵprov=i.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:p}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:p,decorators:[{type:l.Injectable}],ctorParameters:function(){return[{type:i.NgZone},{type:o}]}});var J=/\S/,ee={37:"left",39:"right",38:"up",40:"down",36:"home",35:"end",32:"enter",13:"enter",27:"esc",9:"tab"},te=Object.assign({},ee,{37:"right",39:"left"});var ne=Promise.resolve(null),u=(Object.defineProperty(m.prototype,"focusedItem",{get:function(){return this.items.get(this.focusedIdx)},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"activeItem",{get:function(){return this.items.get(this.activeIndex)},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"handlers",{get:function(){return this.localization.rtl?te:ee},enumerable:!1,configurable:!0}),m.prototype.focus=function(e){e.index!==this.focusedIdx&&(this.activeItem&&this.items.hasParent(e,this.activeItem)||this.setActive(e),this.setFocus(e))},m.prototype.setFocus=function(e){this.focusedIdx=e.index,e.focus()},m.prototype.focusLeave=function(){var e=this.focusedItem;e&&(this.actions.closeToRoot(e),this.actions.execute()),this.focusedIdx=null},m.prototype.updateActive=function(){var e=this;!this.activeItem&&this.items.hasItems&&(this.items.get("0").toggleActive(!0),this.ngZone.runOutsideAngular(function(){ne.then(function(){e.activeIndex="0"})}))},m.prototype.keydown=function(e){var t=this.focusedItem||this.activeItem,n=this.handlers[e.keyCode];t&&(n?("tab"!==n&&e.preventDefault(),this[n](t,e)):1===(n=e.key).length&&J.test(n)&&this.search(t,e.key),this.actions.execute())},m.prototype.focusIndex=function(e){!e&&this.activeItem?this.setFocus(this.activeItem):"first"===e?this.focusFirst():"last"===e?this.focusLast():(e=this.items.get(e))&&this.focus(e)},m.prototype.focusFirst=function(){var e=this.items.siblings(this.items.get("0"));this.focus(e[0])},m.prototype.focusLast=function(){var e=this.items.siblings(this.items.get("0"));this.focus(e[e.length-1])},m.prototype.search=function(e,t){for(var n=this.items.siblings(e),e=n.indexOf(e),i=n.slice(e+1).concat(n.slice(0,e)),r=0;r<i.length;r++){var o=i[r];if((o.item.text||"").toLowerCase().startsWith(t.toLowerCase())){this.focus(o);break}}},m.prototype.down=function(e){0!==e.level||this.vertical?this.focus(this.items.next(e)):e.hasContent&&this.actions.open(e,this.focusChild(e,0))},m.prototype.up=function(e){0!==e.level||this.vertical?this.focus(this.items.previous(e)):e.hasContent&&this.actions.open(e,this.focusChild(e,e.children.length-1))},m.prototype.left=function(e){var t;this.vertical&&0===e.level&&e.disabled||(1<e.level||this.vertical&&0<e.level?(t=this.items.parent(e),this.focus(t),this.actions.close(t)):this.vertical&&0===e.level&&!e.disabled?e.hasContent&&this.actions.open(e,this.focusChild(e,e.children.length-1)):this.focus(this.items.previous(this.activeItem)))},m.prototype.right=function(e){this.vertical&&0===e.level&&e.disabled||(e.horizontal&&!e.disabled?e.hasContent?this.actions.open(e,this.focusChild(e,0)):(!this.vertical||0<e.level)&&this.focus(this.items.next(this.activeItem)):this.focus(this.items.next(this.activeItem)))},m.prototype.home=function(e){e=this.items.siblings(e);this.focus(e[0])},m.prototype.end=function(e){e=this.items.siblings(e);this.focus(e[e.length-1])},m.prototype.enter=function(e,t){var n=this.actions;e.disabled||(e.hasContent?(n.select(e,t),n.open(e,this.focusChild(e,0))):(n.select(e,t,null,function(){e.navigate()}),this.focus(this.items.root(e)),n.closeToRoot(e)))},m.prototype.esc=function(e){0<e.level&&(e=this.items.parent(e),this.actions.close(e),this.focus(e))},m.prototype.tab=function(e){0<e.level&&this.activeItem.focus()},m.prototype.focusChild=function(t,n){var i=this;return function(){var e=i.items.children(t)[n];i.setFocus(e)}},m.prototype.setActive=function(e){var t=this.focusedItem,e=this.items.root(e);this.activeItem&&this.activeItem.toggleActive(!1),this.activeIndex=e.index,e.toggleActive(!0),t&&(this.actions.closeToRoot(t),0<t.level&&this.actions.open(e))},m);function m(e,t,n,i){this.items=e,this.actions=t,this.localization=n,this.ngZone=i,this.vertical=!1,this.activeIndex="0"}u.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:u,deps:[{token:o},{token:p},{token:z.LocalizationService},{token:i.NgZone}],target:i.ɵɵFactoryTarget.Injectable}),u.ɵprov=i.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:u}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:u,decorators:[{type:l.Injectable}],ctorParameters:function(){return[{type:o},{type:p},{type:z.LocalizationService},{type:i.NgZone}]}});Object.defineProperty(h.prototype,"openOnOver",{get:function(){return this._openOnOver},set:function(e){this.cancelActions(),this._openOnOver=e},enumerable:!1,configurable:!0}),Object.defineProperty(h.prototype,"hovered",{get:function(){return this.items.get(this.hoveredIdx)},set:function(e){this.hoveredIdx=e?e.index:null},enumerable:!1,configurable:!0}),h.prototype.ngOnDestroy=function(){this.cancelActions()},h.prototype.over=function(t){var n=this;this.cancelActions(function(e){return"openOnOver"===e.name}),this.hovered&&this.hovered===t||(this.actions.closeOthers(t),(0<(this.hovered=t).level||this.openOnOver)&&!t.disabled&&(this.actions.open(t),this.cancelActions(function(e){return"close"===e.name&&(t===e.item||n.items.hasParent(t,e.item))||"open"===e.name&&!n.items.hasParent(t,e.item)})),this.scheduleActions())},h.prototype.leave=function(e){var t=this.hovered;t&&(this.actions.closeToRoot(t),this.cancelActions(function(e){return"open"===e.name}),this.scheduleActions()),e&&this._openOnOver&&this.scheduleDisableOpenOnOver(),this.hovered=null},h.prototype.closeCurrent=function(){var e=this.hovered;e&&(this.actions.closeToRoot(e),this.hovered=null)},h.prototype.scheduleActions=function(){var e,t=this;this.actions.hasPending&&((e={}).actions=this.actions.clear(),e.id=setTimeout(function(){t.actions.execute(e.actions),t.removeScheduled(e)},this.delay),this.scheduled.push(e))},h.prototype.scheduleDisableOpenOnOver=function(){var e=this,t={actions:[{name:"openOnOver"}]};t.id=setTimeout(function(){e._openOnOver=!1,e.removeScheduled(t)},Math.max(this.delay,500)),this.scheduled.push(t)},h.prototype.removeScheduled=function(e){for(var t=this.scheduled,n=0;n<t.length;n++)if(t[n]===e)return void t.splice(n,1)},h.prototype.cancelActions=function(e){for(var t=this.scheduled,n=t.length-1;0<=n;n--){var i=t[n],r=i.actions;if(e)for(var o=r.length-1;0<=o;o--)e(r[o])&&r.splice(o,1);e&&0!==r.length||(clearTimeout(i.id),t.splice(n,1))}};var d=h;function h(e,t){this.actions=e,this.items=t,this.delay=100,this._openOnOver=!0,this.scheduled=[]}d.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:d,deps:[{token:p},{token:o}],target:i.ɵɵFactoryTarget.Injectable}),d.ɵprov=i.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:d}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:d,decorators:[{type:l.Injectable}],ctorParameters:function(){return[{type:p},{type:o}]}});function ie(e,t,n){for(;e&&e!==n&&!t(e);)e=e.parentNode;if(e!==n)return e}function re(e){var t,n,i;return!!e.tagName&&(t=e.tagName.toLowerCase(),n="-1"===(i=e.getAttribute("tabIndex")),i=null!==i&&!n,ce.test(t)?!e.disabled&&!n:i)}function oe(e){return String(e).trim().split(" ")}function se(e){return e.getAttribute(pe)}function ae(e,t){return e!==t.lists[0].element.nativeElement&&((e=function(e){e=ue(e,de("k-menu-popup k-menu k-menu-group"));return e=e&&me(e,"k-menu-popup")?e.querySelector(".k-menu-group"):e}(e))&&t.containsList(e))}var pe="data-kendo-menu-index",le="kendo-matches-container",ce=/^(?:a|input|select|option|textarea|button|object)$/i,ue=function(e,t){for(;e&&!t(e);)e=e.parentNode;return e},me=function(e,t){return 0<=oe(e.className).indexOf(t)},de=function(e){var n=oe(e);return function(e){var t=oe(e.className);return Boolean(n.find(function(e){return 0<=t.indexOf(e)}))}},g=function(e){this.templateRef=e},f=(g.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:g,deps:[{token:i.TemplateRef,optional:!0}],target:i.ɵɵFactoryTarget.Directive}),g.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:g,selector:"[kendoMenuItemTemplate]",ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:g,decorators:[{type:l.Directive,args:[{selector:"[kendoMenuItemTemplate]"}]}],ctorParameters:function(){return[{type:i.TemplateRef,decorators:[{type:l.Optional}]}]}}),function(e){this.templateRef=e}),v=(f.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:f,deps:[{token:i.TemplateRef,optional:!0}],target:i.ɵɵFactoryTarget.Directive}),f.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:f,selector:"[kendoMenuItemLinkTemplate]",ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:f,decorators:[{type:l.Directive,args:[{selector:"[kendoMenuItemLinkTemplate]"}]}],ctorParameters:function(){return[{type:i.TemplateRef,decorators:[{type:l.Optional}]}]}}),function(e){this.templateRef=e}),y=(v.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:v,deps:[{token:i.TemplateRef,optional:!0}],target:i.ɵɵFactoryTarget.Directive}),v.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:v,selector:"[kendoMenuItemContentTemplate]",ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:v,decorators:[{type:l.Directive,args:[{selector:"[kendoMenuItemContentTemplate]"}]}],ctorParameters:function(){return[{type:i.TemplateRef,decorators:[{type:l.Optional}]}]}}),Object.defineProperty(he.prototype,"template",{get:function(){if(this.itemTemplate&&this.itemTemplate.length)return this.itemTemplate.first.templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(he.prototype,"linkTemplate",{get:function(){if(this.itemLinkTemplate&&this.itemLinkTemplate.length)return this.itemLinkTemplate.first.templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(he.prototype,"contentTemplate",{get:function(){if(this.itemContentTemplate&&this.itemContentTemplate.length)return this.itemContentTemplate.first.templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(he.prototype,"items",{get:function(){var t=this;if(this.children.length)return this.children.toArray().filter(function(e){return e!==t})},enumerable:!1,configurable:!0}),he);function he(){}y.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:y,deps:[],target:i.ɵɵFactoryTarget.Component}),y.ɵcmp=i.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:y,selector:"kendo-menu-item",inputs:{text:"text",url:"url",disabled:"disabled",cssClass:"cssClass",cssStyle:"cssStyle",icon:"icon",data:"data",separator:"separator"},queries:[{propertyName:"itemTemplate",predicate:g},{propertyName:"itemLinkTemplate",predicate:f},{propertyName:"itemContentTemplate",predicate:v},{propertyName:"children",predicate:y}],ngImport:i,template:"",isInline:!0}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:y,decorators:[{type:l.Component,args:[{selector:"kendo-menu-item",template:""}]}],propDecorators:{text:[{type:l.Input}],url:[{type:l.Input}],disabled:[{type:l.Input}],cssClass:[{type:l.Input}],cssStyle:[{type:l.Input}],icon:[{type:l.Input}],data:[{type:l.Input}],separator:[{type:l.Input}],itemTemplate:[{type:l.ContentChildren,args:[g]}],itemLinkTemplate:[{type:l.ContentChildren,args:[f]}],itemContentTemplate:[{type:l.ContentChildren,args:[v]}],children:[{type:l.ContentChildren,args:[y]}]}});Object.defineProperty(ge.prototype,"rootItems",{get:function(){return this.items||(this.children?this.children.toArray():[])},enumerable:!1,configurable:!0});var k=ge;function ge(){this.vertical=!1,this.openOnClick=!1,this.hoverDelay=100,this.animate=!0}k.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:k,deps:[],target:i.ɵɵFactoryTarget.Component}),k.ɵcmp=i.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:k,selector:"kendo-menu-base",inputs:{items:"items",vertical:"vertical",openOnClick:"openOnClick",hoverDelay:"hoverDelay",animate:"animate"},queries:[{propertyName:"itemTemplate",predicate:g},{propertyName:"itemLinkTemplate",predicate:f},{propertyName:"children",predicate:y}],ngImport:i,template:"",isInline:!0}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:k,decorators:[{type:l.Component,args:[{selector:"kendo-menu-base",template:""}]}],propDecorators:{items:[{type:l.Input}],vertical:[{type:l.Input}],openOnClick:[{type:l.Input}],hoverDelay:[{type:l.Input}],animate:[{type:l.Input}],itemTemplate:[{type:l.ContentChildren,args:[g]}],itemLinkTemplate:[{type:l.ContentChildren,args:[f]}],children:[{type:l.ContentChildren,args:[y]}]}});fe.prototype.emit=function(e,t){this.owner.emitMenuEvent(e,t)},fe.prototype.hasObservers=function(e){return this.owner&&a.hasObservers(this.owner[e])},fe.prototype.leaveMenu=function(e){return!this.items||!ae(e.target,this.items)};var I=fe;function fe(){this.keydown=new l.EventEmitter}I.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:I,deps:[],target:i.ɵɵFactoryTarget.Injectable}),I.ɵprov=i.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:I}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:I,decorators:[{type:l.Injectable}]});function ve(e){return void 0!==e}function ye(){if(a.isDocumentAvailable())return new l.ElementRef(document.body)}var b={vertical:"top",horizontal:"left"},C={vertical:"top",horizontal:"right"},x={vertical:"flip",horizontal:"fit"},T={vertical:"fit",horizontal:"flip"},ke={vertical:{anchor:{vertical:"bottom",horizontal:"right"},popup:C,collision:x,animate:"down"},horizontal:{anchor:{vertical:"top",horizontal:"left"},popup:C,collision:T,animate:"left"}},Ie={vertical:{anchor:{vertical:"bottom",horizontal:"left"},popup:b,collision:x,animate:"down"},horizontal:{anchor:{vertical:"top",horizontal:"right"},popup:b,collision:T,animate:"right"}},C=(O.prototype.hierarchyIndex=function(e){return this.itemsService.itemIndex(this.index,e)},O.prototype.ngOnInit=function(){this.itemsService.addList(this),this.initDomEvents()},O.prototype.ngOnDestroy=function(){this.itemsService.removeList(this),this.domSubscriptions&&this.domSubscriptions()},O.prototype.initDomEvents=function(){var p=this;a.isDocumentAvailable()&&this.element&&this.ngZone.runOutsideAngular(function(){var t=p.element.nativeElement,e=0<p.level?ue(t,function(e){return me(e,"k-popup")}):t,n=p.renderer.listen(t,"mouseover",function(e){e.target===t&&0===p.level?p.onLeave():!(e=p.nodeItem(e.target)||p.itemsService.get(p.index))||p.openOnClick&&"click"===p.openOnClick.toggle&&0===e.level&&!e.hasContent||p.hover.over(e)}),i=p.renderer.listen(e,"mouseleave",function(e){p.leavesMenu(e)&&p.onLeave()}),r=p.renderer.listen(t,"keydown",function(e){me(e.target,"k-menu-item")&&p.navigation.keydown(e)}),o=p.renderer.listen(t,"focusout",function(e){p.leavesMenu(e)&&p.navigation.focusLeave()}),s=p.renderer.listen(document,"touchstart",function(e){ae(e.target,p.itemsService)?(e=p.nodeItem(e.target),p.navigation.focus(e),e.opened||p.hover.over(e)):p.navigation.focusedIdx&&(e=p.itemsService.get(p.navigation.activeIndex),p.onLeave(),e.blur())}),a=p.renderer.listen(t,"click",p.clickHandler.bind(p));p.domSubscriptions=function(){n(),i(),r(),o(),a(),s()}})},O.prototype.leavesMenu=function(e){return!e.relatedTarget||!ae(e.relatedTarget,this.itemsService)},O.prototype.onLeave=function(){var e=this.openOnClick;e&&"click"===e.toggle||this.hover.leave(e&&"leave"===e.toggle)},O.prototype.nodeItem=function(e){t=this.element.nativeElement;var t,e=ie(e,se,t);if(e)return t=se(e),this.itemsService.get(t)},O.prototype.clickHandler=function(e){var t,n;re(e.target)&&!me(e.target,"k-menu-item")||(!(t=this.nodeItem(e.target))||t.isContent||t.navigating||(t.disabled?e.preventDefault():(this.actions.select(t,e,function(){e.preventDefault()}),this.navigation.focus(t),0<t.level&&!t.hasContent&&this.actions.closeToRoot(t),this.openOnClick&&(n=this.hover,t.opened?0===t.level&&(n.openOnOver=!1,this.actions.close(t)):t.hasContent?(n.openOnOver=!0,this.actions.closeOthers(t),this.actions.open(t)):(n.openOnOver=!1,0===t.level&&"click"===this.openOnClick.toggle&&this.hover.closeCurrent())),this.actions.execute())))},O);function O(e,t,n,i,r,o,s){this.itemsService=e,this.hover=t,this.actions=n,this.navigation=i,this.renderer=r,this.ngZone=o,this.element=s,this.animate=!0}C.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:C,deps:[{token:o},{token:d},{token:p},{token:u},{token:i.Renderer2},{token:i.NgZone},{token:i.ElementRef}],target:i.ɵɵFactoryTarget.Component}),C.ɵcmp=i.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:C,selector:"[kendoMenuList]",inputs:{items:"items",level:"level",index:"index",animate:"animate",vertical:"vertical",rtl:"rtl",openOnClick:"openOnClick",itemTemplate:"itemTemplate",itemLinkTemplate:"itemLinkTemplate"},ngImport:i,template:'\n <ng-container *ngFor="let item of items; let idx = index">\n <li *ngIf="!item.separator" kendoMenuItem\n [item]="item" [level]="level" [vertical]="vertical" [animate]="animate" [rtl]="rtl"\n [itemTemplate]="itemTemplate" [itemLinkTemplate]="itemLinkTemplate" [openOnClick]="openOnClick"\n [index]="hierarchyIndex(idx)" [siblingIndex]="idx" [attr.data-kendo-menu-index]="hierarchyIndex(idx)"\n [ngClass]="item.cssClass" [ngStyle]="item.cssStyle"\n role="menuitem"\n class="k-item k-menu-item"\n [class.k-first]="idx === 0" [class.k-last]="idx === items.length - 1"\n [class.k-state-disabled]="item.disabled"></li>\n <li *ngIf="item.separator" class="k-separator k-item"\n role="separator" [ngClass]="item.cssClass" [ngStyle]="item.cssStyle">\n &nbsp;\n </li>\n </ng-container>\n ',isInline:!0,components:[{type:i.forwardRef(function(){return be}),selector:"[kendoMenuItem]",inputs:["item","level","index","siblingIndex","animate","vertical","rtl","openOnClick","itemTemplate","itemLinkTemplate"]}],directives:[{type:i.forwardRef(function(){return H.NgForOf}),selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:i.forwardRef(function(){return H.NgIf}),selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:i.forwardRef(function(){return H.NgClass}),selector:"[ngClass]",inputs:["class","ngClass"]},{type:i.forwardRef(function(){return H.NgStyle}),selector:"[ngStyle]",inputs:["ngStyle"]}]}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:C,decorators:[{type:l.Component,args:[{selector:"[kendoMenuList]",template:'\n <ng-container *ngFor="let item of items; let idx = index">\n <li *ngIf="!item.separator" kendoMenuItem\n [item]="item" [level]="level" [vertical]="vertical" [animate]="animate" [rtl]="rtl"\n [itemTemplate]="itemTemplate" [itemLinkTemplate]="itemLinkTemplate" [openOnClick]="openOnClick"\n [index]="hierarchyIndex(idx)" [siblingIndex]="idx" [attr.'+pe+']="hierarchyIndex(idx)"\n [ngClass]="item.cssClass" [ngStyle]="item.cssStyle"\n role="menuitem"\n class="k-item k-menu-item"\n [class.k-first]="idx === 0" [class.k-last]="idx === items.length - 1"\n [class.k-state-disabled]="item.disabled"></li>\n <li *ngIf="item.separator" class="k-separator k-item"\n role="separator" [ngClass]="item.cssClass" [ngStyle]="item.cssStyle">\n &nbsp;\n </li>\n </ng-container>\n '}]}],ctorParameters:function(){return[{type:o},{type:d},{type:p},{type:u},{type:i.Renderer2},{type:i.NgZone},{type:i.ElementRef}]},propDecorators:{items:[{type:l.Input}],level:[{type:l.Input}],index:[{type:l.Input}],animate:[{type:l.Input}],vertical:[{type:l.Input}],rtl:[{type:l.Input}],openOnClick:[{type:l.Input}],itemTemplate:[{type:l.Input}],itemLinkTemplate:[{type:l.Input}]}});Object.defineProperty(D.prototype,"index",{get:function(){return this._index},set:function(e){this._index&&this._index!==e?(this.itemsService.remove(this),this._index=e,this.itemsService.add(this)):this._index=e,this.childId=this.itemsService.childId(e)},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"disabled",{get:function(){return this.item.disabled},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"hasPopup",{get:function(){return!!this.hasContent||null},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"expanded",{get:function(){return this.hasContent?this.opened:null},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"label",{get:function(){return this.item.text||null},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"activeId",{get:function(){return this.index===this.navigation.activeIndex?"0":"-1"},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"popupSettings",{get:function(){var e=this.rtl?ke:Ie;return this.horizontal?e.horizontal:e.vertical},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"horizontal",{get:function(){return this.vertical||0<this.level},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"hasLink",{get:function(){return Boolean(this.item.url)},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"linkTemplate",{get:function(){return this.item.linkTemplate||this.itemLinkTemplate},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"hasContent",{get:function(){var e=this.item.items;return e&&e.length||this.item.contentTemplate},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"isContent",{get:function(){return Boolean(this.item.content)},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"iconClass",{get:function(){return"k-i-"+this.item.icon},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"children",{get:function(){var e=this.item;return e.contentTemplate?(this.contentItems||(this.contentItems=[{content:e.contentTemplate,owner:e,ownerIndex:this.index}]),this.contentItems):e.items},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"template",{get:function(){return this.item.template||this.itemTemplate},enumerable:!1,configurable:!0}),D.prototype.hasContentTemplates=function(){var e=this.item;return this.itemTemplate||e.contentTemplate||this.itemLinkTemplate||e.items&&e.items.find(function(e){return e.template||e.linkTemplate})},D.prototype.ngOnInit=function(){this.itemsService.add(this)},D.prototype.ngOnDestroy=function(){this.itemsService.remove(this),this.destroyed=!0,this.popupRef&&(this.popupRef.close(),this.popupRef=null)},D.prototype.focus=function(){this.element.nativeElement.focus()},D.prototype.blur=function(){this.element.nativeElement.blur()},D.prototype.toggleActive=function(e){e?this.setAttribute("tabindex","0"):this.setAttribute("tabindex","-1")},D.prototype.open=function(){var e,t;this.destroyed||!this.hasContent||this.opened||(e=this.popupSettings,t=!!this.animate&&Object.assign({},this.animate,{direction:e.animate}),this.opened=!0,this.popupRef=this.popupService.open({popupAlign:e.popup,anchorAlign:e.anchor,collision:e.collision,anchor:this.element,positionMode:"absolute",content:this.popupTemplate,popupClass:{"k-rtl":this.rtl,"k-menu-popup":!0},animate:t}),this.setAttribute("aria-expanded","true"),this.setAttribute("aria-owns",this.childId),this.changeDetector.detectChanges())},D.prototype.close=function(){!this.destroyed&&this.opened&&(this.opened=!1,this.popupRef&&(this.popupRef.close(),this.popupRef=null),this.changeDetector.detectChanges(),this.setAttribute("aria-expanded","false"),this.renderer.removeAttribute(this.element.nativeElement,"aria-owns"))},D.prototype.navigate=function(){var e;this.linkTemplate?e=this.element.nativeElement.querySelector("a.k-menu-link"):this.hasLink&&(e=this.link.nativeElement),e&&(this.navigating=!0,e.click(),this.navigating=!1)},D.prototype.setAttribute=function(e,t){this.renderer.setAttribute(this.element.nativeElement,e,t)};var be=D;function D(e,t,n,i,r,o){this.itemsService=e,this.navigation=t,this.changeDetector=n,this.renderer=i,this.popupService=r,this.element=o,this.animate=!0,this.openOnClick=!1,this.opened=!1,this.navigating=!1,this.destroyed=!1}be.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:be,deps:[{token:o},{token:u},{token:i.ChangeDetectorRef},{token:i.Renderer2},{token:B.PopupService},{token:i.ElementRef}],target:i.ɵɵFactoryTarget.Component}),be.ɵcmp=i.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:be,selector:"[kendoMenuItem]",inputs:{item:"item",level:"level",index:"index",siblingIndex:"siblingIndex",animate:"animate",vertical:"vertical",rtl:"rtl",openOnClick:"openOnClick",itemTemplate:"itemTemplate",itemLinkTemplate:"itemLinkTemplate"},host:{properties:{"attr.aria-disabled":"this.disabled","attr.aria-haspopup":"this.hasPopup","attr.aria-expanded":"this.expanded","attr.aria-label":"this.label","attr.tabindex":"this.activeId"}},providers:[n.PopupService,{provide:n.POPUP_CONTAINER,useFactory:ye}],viewQueries:[{propertyName:"link",first:!0,predicate:["link"],descendants:!0},{propertyName:"popupTemplate",first:!0,predicate:["popupTemplate"],descendants:!0,static:!0}],ngImport:i,template:'\n <span *ngIf="!hasLink && !item.content && !linkTemplate" class="k-link k-menu-link" #link\n [class.k-state-active]="opened" role="presentation">\n <ng-template [ngTemplateOutlet]="itemcontent">\n </ng-template>\n </span>\n <a *ngIf="item.url && !linkTemplate" class="k-link k-menu-link" #link [attr.href]="item.url"\n [class.k-state-active]="opened" tabindex="-1" role="presentation">\n <ng-template [ngTemplateOutlet]="itemcontent">\n </ng-template>\n </a>\n <ng-template *ngIf="linkTemplate && !item.content" [ngTemplateOutlet]="linkTemplate"\n [ngTemplateOutletContext]="{ item: item, index: index }">\n </ng-template>\n\n <div class="k-content" *ngIf="item.content" role="presentation">\n <ng-template [ngTemplateOutlet]="item.content" [ngTemplateOutletContext]="{ item: item.owner, index: item.ownerIndex }">\n </ng-template>\n </div>\n\n <ng-template #popupTemplate>\n <ul kendoMenuList\n [attr.id]="childId"\n [animate]="animate"\n [rtl]="rtl"\n [vertical]="vertical"\n [openOnClick]="openOnClick"\n [items]="children"\n [level]="level + 1"\n [index]="index"\n [itemTemplate]="itemTemplate"\n [itemLinkTemplate]="itemLinkTemplate"\n role="menu"\n class="k-group k-menu-group k-reset">\n </ul>\n </ng-template>\n\n <ng-template #itemcontent>\n <span *ngIf="item.icon" class="k-icon" [ngClass]="iconClass" role="presentation"></span>\n <ng-container *ngIf="!template">\n <span class="k-menu-link-text">{{ item.text }}</span>\n </ng-container>\n <ng-template *ngIf="template" [ngTemplateOutlet]="template" [ngTemplateOutletContext]="{ item: item, index: index }">\n </ng-template>\n <span class="k-icon k-menu-expand-arrow" *ngIf="hasContent"\n role="presentation"\n [class.k-i-arrow-60-down]="!horizontal"\n [class.k-i-arrow-60-right]="horizontal && !rtl"\n [class.k-i-arrow-60-left]="horizontal && rtl">\n </span>\n </ng-template>\n ',isInline:!0,components:[{type:C,selector:"[kendoMenuList]",inputs:["items","level","index","animate","vertical","rtl","openOnClick","itemTemplate","itemLinkTemplate"]}],directives:[{type:H.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:H.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]},{type:H.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]}]}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:be,decorators:[{type:l.Component,args:[{providers:[n.PopupService,{provide:n.POPUP_CONTAINER,useFactory:ye}],selector:"[kendoMenuItem]",template:'\n <span *ngIf="!hasLink && !item.content && !linkTemplate" class="k-link k-menu-link" #link\n [class.k-state-active]="opened" role="presentation">\n <ng-template [ngTemplateOutlet]="itemcontent">\n </ng-template>\n </span>\n <a *ngIf="item.url && !linkTemplate" class="k-link k-menu-link" #link [attr.href]="item.url"\n [class.k-state-active]="opened" tabindex="-1" role="presentation">\n <ng-template [ngTemplateOutlet]="itemcontent">\n </ng-template>\n </a>\n <ng-template *ngIf="linkTemplate && !item.content" [ngTemplateOutlet]="linkTemplate"\n [ngTemplateOutletContext]="{ item: item, index: index }">\n </ng-template>\n\n <div class="k-content" *ngIf="item.content" role="presentation">\n <ng-template [ngTemplateOutlet]="item.content" [ngTemplateOutletContext]="{ item: item.owner, index: item.ownerIndex }">\n </ng-template>\n </div>\n\n <ng-template #popupTemplate>\n <ul kendoMenuList\n [attr.id]="childId"\n [animate]="animate"\n [rtl]="rtl"\n [vertical]="vertical"\n [openOnClick]="openOnClick"\n [items]="children"\n [level]="level + 1"\n [index]="index"\n [itemTemplate]="itemTemplate"\n [itemLinkTemplate]="itemLinkTemplate"\n role="menu"\n class="k-group k-menu-group k-reset">\n </ul>\n </ng-template>\n\n <ng-template #itemcontent>\n <span *ngIf="item.icon" class="k-icon" [ngClass]="iconClass" role="presentation"></span>\n <ng-container *ngIf="!template">\n <span class="k-menu-link-text">{{ item.text }}</span>\n </ng-container>\n <ng-template *ngIf="template" [ngTemplateOutlet]="template" [ngTemplateOutletContext]="{ item: item, index: index }">\n </ng-template>\n <span class="k-icon k-menu-expand-arrow" *ngIf="hasContent"\n role="presentation"\n [class.k-i-arrow-60-down]="!horizontal"\n [class.k-i-arrow-60-right]="horizontal && !rtl"\n [class.k-i-arrow-60-left]="horizontal && rtl">\n </span>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:o},{type:u},{type:i.ChangeDetectorRef},{type:i.Renderer2},{type:B.PopupService},{type:i.ElementRef}]},propDecorators:{item:[{type:l.Input}],level:[{type:l.Input}],index:[{type:l.Input}],siblingIndex:[{type:l.Input}],animate:[{type:l.Input}],vertical:[{type:l.Input}],rtl:[{type:l.Input}],openOnClick:[{type:l.Input}],itemTemplate:[{type:l.Input}],itemLinkTemplate:[{type:l.Input}],link:[{type:l.ViewChild,args:["link",{static:!1}]}],popupTemplate:[{type:l.ViewChild,args:["popupTemplate",{static:!0}]}],disabled:[{type:l.HostBinding,args:["attr.aria-disabled"]}],hasPopup:[{type:l.HostBinding,args:["attr.aria-haspopup"]}],expanded:[{type:l.HostBinding,args:["attr.aria-expanded"]}],label:[{type:l.HostBinding,args:["attr.aria-label"]}],activeId:[{type:l.HostBinding,args:["attr.tabindex"]}]}});r(w,Ce=k),Object.defineProperty(w.prototype,"ariaOrientation",{get:function(){if(this.vertical)return"vertical"},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"contextMenuClass",{get:function(){return Boolean(this.contextService)},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"direction",{get:function(){return this.rtl},enumerable:!1,configurable:!0}),Object.defineProperty(w.prototype,"rtl",{get:function(){return this.localization.rtl},enumerable:!1,configurable:!0}),w.prototype.toggle=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];for(var i=0;i<t.length;i++){var r=this.itemsService.get(t[i]);r&&!r.disabled&&(e?r.open():r.close())}},w.prototype.focus=function(e){this.navigation.focusIndex(e)},w.prototype.ngOnChanges=function(e){this.navigation.vertical=this.vertical,this.hover.delay=this.hoverDelay,e.openOnClick&&(e=this.openOnClick=(e=this.openOnClick)&&Object.assign({toggle:"select"},e),this.hover.openOnOver=!e,e&&"click"===e.toggle?this.attachCloseClick():this.unsubscribeClick())},w.prototype.ngAfterViewChecked=function(){this.navigation.updateActive()},w.prototype.ngOnDestroy=function(){this.unsubscribeClick(),this.contextService&&(this.contextService.items=null,this.contextKeyDownSubscription.unsubscribe())},w.prototype.attachCloseClick=function(){var t=this;!this.closeClickSubscription&&a.isDocumentAvailable()&&this.ngZone.runOutsideAngular(function(){t.closeClickSubscription=t.renderer.listen("document","click",function(e){ae(e.target,t.itemsService)||(t.hover.openOnOver=!1,t.actions.closeAll(),t.actions.execute())})})},w.prototype.unsubscribeClick=function(){this.closeClickSubscription&&this.closeClickSubscription()},w.prototype.contextKeyDown=function(e){var t,n,i,r;this.itemsService.hasItems&&(i=e.keyCode,t=this.localization.rtl,n=i===a.Keys.ArrowDown||i===a.Keys.ArrowRight,i=i===a.Keys.ArrowUp||i===a.Keys.ArrowLeft,n&&!t||i&&t?r="first":(n&&t||i&&!t)&&(r="last"),r&&(e.preventDefault(),this.focus(r)))};var Ce,F=w;function w(e,t,n,i,r,o,s,a){var p=Ce.call(this)||this;return p.itemsService=e,p.hover=t,p.actions=n,p.navigation=i,p.localization=r,p.ngZone=o,p.renderer=s,p.contextService=a,p.select=new l.EventEmitter,p.open=new l.EventEmitter,p.close=new l.EventEmitter,R.validatePackage(X),p.actions.owner=p,a&&(a.items=p.itemsService,p.contextKeyDownSubscription=a.keydown.subscribe(p.contextKeyDown.bind(p))),p}F.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:F,deps:[{token:o},{token:d},{token:p},{token:u},{token:z.LocalizationService},{token:i.NgZone},{token:i.Renderer2},{token:I,optional:!0}],target:i.ɵɵFactoryTarget.Component}),F.ɵcmp=i.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:F,selector:"kendo-menu",inputs:{menuItemTemplate:"menuItemTemplate",menuItemLinkTemplate:"menuItemLinkTemplate"},outputs:{select:"select",open:"open",close:"close"},host:{properties:{"class.k-rtl":"this.direction"}},providers:[o,p,u,d,t.LocalizationService,{provide:t.L10N_PREFIX,useValue:"kendo.menu"},{provide:k,useExisting:l.forwardRef(function(){return F})}],exportAs:["kendoMenu"],usesInheritance:!0,usesOnChanges:!0,ngImport:i,template:'\n <ul role="menubar"\n [attr.aria-orientation]="ariaOrientation"\n kendoMenuList [items]="rootItems" [level]="0" class="k-widget k-reset k-header k-menu"\n [vertical]="vertical" [rtl]="rtl" [animate]="animate" [openOnClick]="openOnClick"\n [itemTemplate]="itemTemplate.first?.templateRef || menuItemTemplate"\n [itemLinkTemplate]="itemLinkTemplate.first?.templateRef || menuItemLinkTemplate"\n [class.k-menu-horizontal]="!vertical"\n [class.k-menu-vertical]="vertical"\n [class.k-context-menu]="contextMenuClass">\n </ul>\n ',isInline:!0,components:[{type:C,selector:"[kendoMenuList]",inputs:["items","level","index","animate","vertical","rtl","openOnClick","itemTemplate","itemLinkTemplate"]}]}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:F,decorators:[{type:l.Component,args:[{exportAs:"kendoMenu",providers:[o,p,u,d,t.LocalizationService,{provide:t.L10N_PREFIX,useValue:"kendo.menu"},{provide:k,useExisting:l.forwardRef(function(){return F})}],selector:"kendo-menu",template:'\n <ul role="menubar"\n [attr.aria-orientation]="ariaOrientation"\n kendoMenuList [items]="rootItems" [level]="0" class="k-widget k-reset k-header k-menu"\n [vertical]="vertical" [rtl]="rtl" [animate]="animate" [openOnClick]="openOnClick"\n [itemTemplate]="itemTemplate.first?.templateRef || menuItemTemplate"\n [itemLinkTemplate]="itemLinkTemplate.first?.templateRef || menuItemLinkTemplate"\n [class.k-menu-horizontal]="!vertical"\n [class.k-menu-vertical]="vertical"\n [class.k-context-menu]="contextMenuClass">\n </ul>\n '}]}],ctorParameters:function(){return[{type:o},{type:d},{type:p},{type:u},{type:z.LocalizationService},{type:i.NgZone},{type:i.Renderer2},{type:I,decorators:[{type:l.Optional}]}]},propDecorators:{menuItemTemplate:[{type:l.Input}],menuItemLinkTemplate:[{type:l.Input}],select:[{type:l.Output}],open:[{type:l.Output}],close:[{type:l.Output}],direction:[{type:l.HostBinding,args:["class.k-rtl"]}]}});Object.defineProperty(xe.prototype,"activeClass",{get:function(){return this.item.opened},enumerable:!1,configurable:!0}),xe.prototype.ngOnInit=function(){if(l.isDevMode()&&!this.index)throw new Error("The kendoMenuItemLink directive requires the item index to be set.");this.item=this.itemsService.get(this.index)||{}};x=xe;function xe(e){this.itemsService=e,this.hostClasses=!0,this.role="presentation",this.tabindex="-1"}x.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:x,deps:[{token:o}],target:i.ɵɵFactoryTarget.Directive}),x.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:x,selector:"[kendoMenuItemLink]",inputs:{index:["kendoMenuItemLink","index"]},host:{properties:{"class.k-link":"this.hostClasses","class.k-menu-link":"this.hostClasses","attr.role":"this.role","attr.tabindex":"this.tabindex","class.k-state-active":"this.activeClass"}},ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:x,decorators:[{type:l.Directive,args:[{selector:"[kendoMenuItemLink]"}]}],ctorParameters:function(){return[{type:o}]},propDecorators:{index:[{type:l.Input,args:["kendoMenuItemLink"]}],hostClasses:[{type:l.HostBinding,args:["class.k-link"]},{type:l.HostBinding,args:["class.k-menu-link"]}],role:[{type:l.HostBinding,args:["attr.role"]}],tabindex:[{type:l.HostBinding,args:["attr.tabindex"]}],activeClass:[{type:l.HostBinding,args:["class.k-state-active"]}]}});Object.defineProperty(Te.prototype,"arrowDown",{get:function(){return!this.item.horizontal},enumerable:!1,configurable:!0}),Object.defineProperty(Te.prototype,"arrowRight",{get:function(){return this.item.horizontal&&!this.item.rtl},enumerable:!1,configurable:!0}),Object.defineProperty(Te.prototype,"arrowLeft",{get:function(){return this.item.horizontal&&this.item.rtl},enumerable:!1,configurable:!0}),Te.prototype.ngOnInit=function(){if(l.isDevMode()&&!this.index)throw new Error("The kendoMenuExpandArrow directive requires the item index to be set.");this.item=this.itemsService.get(this.index)||{}};b=Te;function Te(e){this.itemsService=e,this.hostClasses=!0,this.role="presentation"}b.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:b,deps:[{token:o}],target:i.ɵɵFactoryTarget.Directive}),b.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:b,selector:"[kendoMenuExpandArrow]",inputs:{index:["kendoMenuExpandArrow","index"]},host:{properties:{"class.k-icon":"this.hostClasses","class.k-menu-expand-arrow":"this.hostClasses","attr.role":"this.role","class.k-i-arrow-60-down":"this.arrowDown","class.k-i-arrow-60-right":"this.arrowRight","class.k-i-arrow-60-left":"this.arrowLeft"}},ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:b,decorators:[{type:l.Directive,args:[{selector:"[kendoMenuExpandArrow]"}]}],ctorParameters:function(){return[{type:o}]},propDecorators:{index:[{type:l.Input,args:["kendoMenuExpandArrow"]}],hostClasses:[{type:l.HostBinding,args:["class.k-icon"]},{type:l.HostBinding,args:["class.k-menu-expand-arrow"]}],role:[{type:l.HostBinding,args:["attr.role"]}],arrowDown:[{type:l.HostBinding,args:["class.k-i-arrow-60-down"]}],arrowRight:[{type:l.HostBinding,args:["class.k-i-arrow-60-right"]}],arrowLeft:[{type:l.HostBinding,args:["class.k-i-arrow-60-left"]}]}});Oe.prototype.preventDefault=function(){this.prevented=!0},Oe.prototype.isDefaultPrevented=function(){return this.prevented};T=Oe;function Oe(e){this.prevented=!1,Object.assign(this,e)}r(we,De=T);var De,Fe=we;function we(){return null!==De&&De.apply(this,arguments)||this}r(Se,Me=Fe);var Me,Pe=Se;function Se(){return null!==Me&&Me.apply(this,arguments)||this}var Ae=["textField","urlField","iconField","disabledField","cssClassField","cssStyleField","separatorField"],M=(Le.prototype.ngOnChanges=function(){this.rebind()},Le.prototype.rebind=function(){for(var e=this.fields=[],t=0;t<Ae.length;t++){var n=Ae[t],i=this[n];i&&e.push({target:n.replace("Field",""),source:i})}this.menu.items=this.data?this.mapItems(this.data):[]},Le);function Le(e){this.menu=e}M.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:M,deps:[{token:k}],target:i.ɵɵFactoryTarget.Directive}),M.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:M,selector:"kendoBindingBase",usesOnChanges:!0,ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:M,decorators:[{type:l.Directive,args:[{selector:"kendoBindingBase"}]}],ctorParameters:function(){return[{type:k}]}});function Ee(e){if(Ne[e])return Ne[e];var r=[];return e.replace(je,function(e,t,n,i){r.push(void 0!==t?t:n||i)}),Ne[e]=function(e){for(var t=e,n=0;n<r.length&&t;n++)t=t[r[n]];return t},Ne[e]}function Ve(e,t){return Array.isArray(e)?e[t]||e[e.length-1]:e}var Re,je=/\[(?:(\d+)|['"](.*?)['"])\]|((?:(?!\[.*?\]|\.).)+)/g,Ne={undefined:function(e){return e}},ze=(r(Be,Re=M),Be.prototype.mapItems=function(e,n){var i=this;return void 0===n&&(n=0),e.map(function(e){var t=i.createItem(e,n),e=i.getChildren(e,n);return e&&(t.items=i.mapItems(e,n+1)),t})},Be.prototype.createItem=function(e,t){for(var n={data:e},i=this.fields,r=0;r<i.length;r++){var o=i[r],s=o.target,o=o.source;n[s]=Ee(Ve(o,t))(e)}return n},Be.prototype.getChildren=function(e,t){if(this.childrenField)return e[Ve(this.childrenField,t)]},Be);function Be(e){return Re.call(this,e)||this}ze.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:ze,deps:[{token:k}],target:i.ɵɵFactoryTarget.Directive}),ze.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:ze,selector:"[kendoMenuHierarchyBinding]",inputs:{data:["kendoMenuHierarchyBinding","data"],textField:"textField",urlField:"urlField",iconField:"iconField",disabledField:"disabledField",cssClassField:"cssClassField",cssStyleField:"cssStyleField",separatorField:"separatorField",childrenField:"childrenField"},exportAs:["kendoMenuHierarchyBinding"],usesInheritance:!0,ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:ze,decorators:[{type:l.Directive,args:[{exportAs:"kendoMenuHierarchyBinding",selector:"[kendoMenuHierarchyBinding]"}]}],ctorParameters:function(){return[{type:k}]},propDecorators:{data:[{type:l.Input,args:["kendoMenuHierarchyBinding"]}],textField:[{type:l.Input}],urlField:[{type:l.Input}],iconField:[{type:l.Input}],disabledField:[{type:l.Input}],cssClassField:[{type:l.Input}],cssStyleField:[{type:l.Input}],separatorField:[{type:l.Input}],childrenField:[{type:l.Input}]}});r(_e,He=M),_e.prototype.mapItems=function(e){var t=this;if(!this.idField||!this.parentIdField)return e.map(function(e){return t.createItem(e)});for(var n=[],i={},r=0;r<e.length;r++){var o=e[r],s=this.createItem(o),a=Ee(this.idField)(o),o=Ee(this.parentIdField)(o);null==o?n.push(s):((o=i[o]=i[o]||{}).items=o.items||[],o.items.push(s)),i[a]&&(s.items=i[a].items),i[a]=s}return n},_e.prototype.createItem=function(e){for(var t={data:e},n=this.fields,i=0;i<n.length;i++){var r=n[i],o=r.source;t[r.target]=Ee(o)(e)}return t};var He,M=_e;function _e(e){return He.call(this,e)||this}M.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:M,deps:[{token:k}],target:i.ɵɵFactoryTarget.Directive}),M.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:M,selector:"[kendoMenuFlatBinding]",inputs:{data:["kendoMenuFlatBinding","data"],textField:"textField",urlField:"urlField",iconField:"iconField",disabledField:"disabledField",cssClassField:"cssClassField",cssStyleField:"cssStyleField",separatorField:"separatorField",idField:"idField",parentIdField:"parentIdField"},exportAs:["kendoMenuFlatBinding"],usesInheritance:!0,ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:M,decorators:[{type:l.Directive,args:[{exportAs:"kendoMenuFlatBinding",selector:"[kendoMenuFlatBinding]"}]}],ctorParameters:function(){return[{type:k}]},propDecorators:{data:[{type:l.Input,args:["kendoMenuFlatBinding"]}],textField:[{type:l.Input}],urlField:[{type:l.Input}],iconField:[{type:l.Input}],disabledField:[{type:l.Input}],cssClassField:[{type:l.Input}],cssStyleField:[{type:l.Input}],separatorField:[{type:l.Input}],idField:[{type:l.Input}],parentIdField:[{type:l.Input}]}});function Ze(){}var Ke,P=[F,y,g,f,v,ze,M,x,b],qe=K(K([],Z(P)),[C,be]),S=function(){},qe=(S.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:S,deps:[],target:i.ɵɵFactoryTarget.NgModule}),S.ɵmod=i.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:S,declarations:[F,y,g,f,v,ze,M,x,b,C,be],imports:[n.PopupModule,j.CommonModule],exports:[F,y,g,f,v,ze,M,x,b]}),S.ɵinj=i.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:S,imports:[[n.PopupModule,j.CommonModule]]}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:S,decorators:[{type:l.NgModule,args:[{declarations:[qe],exports:[P],imports:[n.PopupModule,j.CommonModule]}]}]}),r(Ue,Ke=Ze),Ue);function Ue(){return null!==Ke&&Ke.apply(this,arguments)||this}r(We,Xe=T);var Xe,Qe=We;function We(){return null!==Xe&&Xe.apply(this,arguments)||this}P=function(e){this.templateRef=e},P.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:P,deps:[{token:i.TemplateRef,optional:!0}],target:i.ɵɵFactoryTarget.Directive}),P.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:P,selector:"[kendoContextMenuTemplate]",ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:P,decorators:[{type:l.Directive,args:[{selector:"[kendoContextMenuTemplate]"}]}],ctorParameters:function(){return[{type:i.TemplateRef,decorators:[{type:l.Optional}]}]}}),$e.prototype.get=function(e){if(this.contextService.items)return this.contextService.items.get(e)},T=$e;function $e(e){this.contextService=e}T.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:T,deps:[{token:I}],target:i.ɵɵFactoryTarget.Injectable}),T.ɵprov=i.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:T}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:T,decorators:[{type:l.Injectable}],ctorParameters:function(){return[{type:I}]}});Ge.prototype.add=function(e){this.targets.push(e)},Ge.prototype.remove=function(e){e=this.targets.indexOf(e);this.targets.splice(e,1)},Ge.prototype.find=function(t){return this.targets.find(function(e){return e.element===t})};var A=Ge;function Ge(){this.targets=[]}A.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:A,deps:[],target:i.ɵɵFactoryTarget.Injectable}),A.ɵprov=i.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:A}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:A,decorators:[{type:l.Injectable}]});var L=function(e,t){this.targetService=t,e&&(this.element=e.nativeElement)},Ye=(L.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:L,deps:[{token:i.ElementRef},{token:A}],target:i.ɵɵFactoryTarget.Directive}),L.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:L,selector:"[kendoContextMenuTargetContainer]",providers:[A],exportAs:["kendoContextMenuTargetContainer"],ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:L,decorators:[{type:l.Directive,args:[{selector:"[kendoContextMenuTargetContainer]",exportAs:"kendoContextMenuTargetContainer",providers:[A]}]}],ctorParameters:function(){return[{type:i.ElementRef},{type:A}]}}),"k-contextmenu-target"),Je=(et.prototype.ngOnDestroy=function(){this.targetService.remove(this)},et);function et(e,t){this.targetService=t,this.hostClass=!0,e&&(this.element=e.nativeElement),t.add(this)}Je.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:Je,deps:[{token:i.ElementRef},{token:A}],target:i.ɵɵFactoryTarget.Directive}),Je.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:Je,selector:"[kendoContextMenuTarget]",inputs:{data:["kendoContextMenuTarget","data"]},host:{properties:{"class.k-contextmenu-target":"this.hostClass"}},exportAs:["kendoContextMenuTarget"],ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:Je,decorators:[{type:l.Directive,args:[{selector:"[kendoContextMenuTarget]",exportAs:"kendoContextMenuTarget"}]}],ctorParameters:function(){return[{type:i.ElementRef},{type:A}]},propDecorators:{data:[{type:l.Input,args:["kendoContextMenuTarget"]}],hostClass:[{type:l.HostBinding,args:["class."+Ye]}]}});function tt(e){return e.preventDefault()}var nt,it="contextmenu",rt={horizontal:"left",vertical:"bottom"},ot={horizontal:"left",vertical:"top"},st={horizontal:"fit",vertical:"flip"},E=(r(V,nt=k),V.prototype.hide=function(){this.removePopup()},V.prototype.show=function(e){e&&(e=e,this.removePopup(),ve(e.left)&&ve(e.top)?this.createPopup({offset:e}):(this.currentTarget=e.nativeElement||e,this.createPopup({anchor:this.currentTarget})))},V.prototype.ngOnChanges=function(e){(e.target||e.showOn)&&this.bindShowHandler()},V.prototype.ngOnInit=function(){var n=this;this.ngZone.runOutsideAngular(function(){var e=n.renderer.listen("document","mousedown",function(e){n.popupRef&&!ue(e.target,function(e){return e===n.popupRef.popupElement})&&n.service.leaveMenu(e)&&n.closePopup(e)}),t=n.renderer.listen("window","blur",function(e){n.popupRef&&n.closePopup(e)});n.closeSubscription=function(){e(),t()}})},V.prototype.ngOnDestroy=function(){this.closeSubscription&&(this.closeSubscription(),this.closeSubscription=null),this.unbindShowHandler(),this.removePopup()},V.prototype.emitMenuEvent=function(e,t){t.target=this.currentTarget,(t.sender=this)[e].emit(t),"select"!==e||t.hasContent||this.closeAndFocus(t.originalEvent)},V.prototype.bindShowHandler=function(){var n=this;this.unbindShowHandler(),this.ngZone.runOutsideAngular(function(){var e,t=n.targetElement();t&&(e=n.showOn||it,n.showSubscription=n.renderer.listen(t,n.showOn||it,function(e){n.showContextMenu(e,t)}),e===it&&(n.keydownSubscription=n.renderer.listen(t,"keydown",function(e){e.shiftKey&&e.keyCode===a.Keys.F10&&n.showContextMenu(e,t)})))})},V.prototype.showContextMenu=function(e,t){var n,i,r,o=this,s=this.targetFilter(),a=t;if(s){if(n=e.target,s=s,(i=(t=t).getAttribute("id"))||t.setAttribute("id",le),r="#"+(i||le)+" "+s,s=ie(n,function(e){return((e=e).matches||e.msMatchesSelector).call(e,r)},t),i||t.removeAttribute("id"),(a=s)&&a!==e.target&&re(e.target))return;a&&this.directiveTarget&&(a=this.target.targetService.find(a))}a?this.ngZone.run(function(){o.closePopup(e)||(o.currentTarget=a,o.openPopup(e))}):this.closePopup(e)},V.prototype.unbindShowHandler=function(){this.showSubscription&&(this.showSubscription(),this.showSubscription=null),this.keydownSubscription&&(this.keydownSubscription(),this.keydownSubscription=null)},V.prototype.targetElement=function(){var e;if(a.isDocumentAvailable())return this.directiveTarget=!1,e=this.target,"string"==typeof e?e=document.querySelector(e):e&&e.nativeElement?e=e.nativeElement:e instanceof L&&(e=e.element,this.directiveTarget=!0),e},V.prototype.targetFilter=function(){return this.directiveTarget?"."+Ye:this.filter},V.prototype.closePopup=function(e){var t=this;if(this.popupRef)return this.popupAction("popupClose",e,function(){t.removePopup()})},V.prototype.removePopup=function(){this.popupRef&&(this.popupRef.close(),this.popupRef=null,this.currentTarget=null),this.popupSubscriptions&&(this.popupSubscriptions(),this.popupSubscriptions=null)},V.prototype.openPopup=function(n){var i=this;this.popupAction("popupOpen",n,function(){var e,t;n.preventDefault(),i.alignToAnchor||"keydown"===n.type?e=i.currentTargetElement:t={left:n.pageX,top:n.pageY},i.createPopup({anchor:e,offset:t})})},V.prototype.createPopup=function(e){var n=this,i=(this.popupRef=this.popupService.open(Object.assign({animate:!ve(this.popupAnimate)||this.popupAnimate,appendTo:this.appendTo,collision:this.collision||st,popupAlign:this.popupAlign||ot,anchorAlign:this.anchorAlign||rt,content:this.contentTemplate?this.contentTemplate.templateRef:this.defaultContentTemplate,popupClass:"k-menu-popup"},e)),this.popupRef.popupElement);this.renderer.addClass(i,"k-context-menu-popup"),this.renderer.setAttribute(i,"tabindex","-1"),this.renderer.setStyle(i,"outline","0"),this.ariaLabel&&this.renderer.setAttribute(i,"aria-label",this.ariaLabel),this.activeTarget=this.currentTargetElement===document.activeElement,this.ngZone.runOutsideAngular(function(){var e=n.renderer.listen(i,"keydown",n.popupKeyDownHandler),t=n.renderer.listen(i,"contextmenu",tt);n.popupSubscriptions=function(){e(),t()}}),i.focus()},V.prototype.closeAndFocus=function(e){var t=this.currentTargetElement;!this.closePopup(e)&&this.activeTarget&&t.focus()},V.prototype.popupKeyDownHandler=function(e){var t=this.popupRef.popupElement;e.keyCode!==a.Keys.Escape||!me(e.target,"k-menu-item")&&e.target!==t?e.target===t&&this.service.keydown.emit(e):this.closeAndFocus(e)},V.prototype.popupAction=function(e,t,n){var i=this,r=this[e],o=!1;return a.hasObservers(r)?this.ngZone.run(function(){var e=new Qe({originalEvent:t,sender:i,target:i.currentTarget});r.emit(e),e.isDefaultPrevented()||n(),o=e.isDefaultPrevented()}):n(),o},Object.defineProperty(V.prototype,"currentTargetElement",{get:function(){return this.directiveTarget&&this.currentTarget?this.currentTarget.element:this.currentTarget},enumerable:!1,configurable:!0}),V);function V(e,t,n,i){var r=nt.call(this)||this;return r.popupService=e,r.service=t,r.ngZone=n,r.renderer=i,r.showOn=it,r.alignToAnchor=!1,r.vertical=!0,r.popupOpen=new l.EventEmitter,r.popupClose=new l.EventEmitter,r.select=new l.EventEmitter,r.open=new l.EventEmitter,r.close=new l.EventEmitter,(r.service.owner=r).popupKeyDownHandler=r.popupKeyDownHandler.bind(r),r}E.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:E,deps:[{token:B.PopupService},{token:I},{token:i.NgZone},{token:i.Renderer2}],target:i.ɵɵFactoryTarget.Component}),E.ɵcmp=i.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:E,selector:"kendo-contextmenu",inputs:{showOn:"showOn",target:"target",filter:"filter",alignToAnchor:"alignToAnchor",vertical:"vertical",popupAnimate:"popupAnimate",popupAlign:"popupAlign",anchorAlign:"anchorAlign",collision:"collision",appendTo:"appendTo",ariaLabel:"ariaLabel"},outputs:{popupOpen:"popupOpen",popupClose:"popupClose",select:"select",open:"open",close:"close"},providers:[I,t.LocalizationService,{provide:t.L10N_PREFIX,useValue:"kendo.contextmenu"},{provide:o,useClass:T},{provide:k,useExisting:l.forwardRef(function(){return E})},n.PopupService,{provide:n.POPUP_CONTAINER,useFactory:ye}],queries:[{propertyName:"contentTemplate",first:!0,predicate:P,descendants:!0}],viewQueries:[{propertyName:"defaultContentTemplate",first:!0,predicate:["default"],descendants:!0}],exportAs:["kendoContextMenu"],usesInheritance:!0,usesOnChanges:!0,ngImport:i,template:'\n <ng-template #default>\n <kendo-menu [items]="rootItems"\n [vertical]="vertical"\n [openOnClick]="openOnClick"\n [hoverDelay]="hoverDelay"\n [animate]="animate"\n [menuItemTemplate]="itemTemplate.first?.templateRef"\n [menuItemLinkTemplate]="itemLinkTemplate.first?.templateRef"\n ></kendo-menu>\n </ng-template>\n ',isInline:!0,components:[{type:F,selector:"kendo-menu",inputs:["menuItemTemplate","menuItemLinkTemplate"],outputs:["select","open","close"],exportAs:["kendoMenu"]}]}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:E,decorators:[{type:l.Component,args:[{exportAs:"kendoContextMenu",providers:[I,t.LocalizationService,{provide:t.L10N_PREFIX,useValue:"kendo.contextmenu"},{provide:o,useClass:T},{provide:k,useExisting:l.forwardRef(function(){return E})},n.PopupService,{provide:n.POPUP_CONTAINER,useFactory:ye}],selector:"kendo-contextmenu",template:'\n <ng-template #default>\n <kendo-menu [items]="rootItems"\n [vertical]="vertical"\n [openOnClick]="openOnClick"\n [hoverDelay]="hoverDelay"\n [animate]="animate"\n [menuItemTemplate]="itemTemplate.first?.templateRef"\n [menuItemLinkTemplate]="itemLinkTemplate.first?.templateRef"\n ></kendo-menu>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:B.PopupService},{type:I},{type:i.NgZone},{type:i.Renderer2}]},propDecorators:{showOn:[{type:l.Input}],target:[{type:l.Input}],filter:[{type:l.Input}],alignToAnchor:[{type:l.Input}],vertical:[{type:l.Input}],popupAnimate:[{type:l.Input}],popupAlign:[{type:l.Input}],anchorAlign:[{type:l.Input}],collision:[{type:l.Input}],appendTo:[{type:l.Input}],ariaLabel:[{type:l.Input}],popupOpen:[{type:l.Output}],popupClose:[{type:l.Output}],select:[{type:l.Output}],open:[{type:l.Output}],close:[{type:l.Output}],contentTemplate:[{type:l.ContentChild,args:[P,{static:!1}]}],defaultContentTemplate:[{type:l.ViewChild,args:["default",{static:!1}]}]}});t=[E,P,Je,L],T=function(){},T.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:T,deps:[],target:i.ɵɵFactoryTarget.NgModule}),T.ɵmod=i.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:T,declarations:[E,P,Je,L],imports:[n.PopupModule,j.CommonModule,S],exports:[E,P,Je,L,S]}),T.ɵinj=i.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:T,imports:[[n.PopupModule,j.CommonModule,S],S]}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:T,decorators:[{type:l.NgModule,args:[{declarations:[t],exports:[t,S],imports:[n.PopupModule,j.CommonModule,S]}]}]}),t=function(){};t.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:t,deps:[],target:i.ɵɵFactoryTarget.NgModule}),t.ɵmod=i.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:t,exports:[S,T]}),t.ɵinj=i.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:t,imports:[S,T]}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:t,decorators:[{type:l.NgModule,args:[{exports:[S,T]}]}]}),e.ContextMenuComponent=E,e.ContextMenuEvent=Ze,e.ContextMenuModule=T,e.ContextMenuPopupEvent=Qe,e.ContextMenuSelectEvent=qe,e.ContextMenuService=I,e.ContextMenuTargetContainerDirective=L,e.ContextMenuTargetDirective=Je,e.ContextMenuTemplateDirective=P,e.ExpandArrowDirective=b,e.FlatBindingDirective=M,e.HierarchyBindingDirective=ze,e.ItemComponent=be,e.ItemContentTemplateDirective=v,e.ItemLinkTemplateDirective=f,e.ItemTemplateDirective=g,e.LinkDirective=x,e.ListComponent=C,e.MenuComponent=F,e.MenuEvent=Fe,e.MenuItemComponent=y,e.MenuModule=S,e.MenuSelectEvent=Pe,e.MenusModule=t,Object.defineProperty(e,"__esModule",{value:!0})});
5
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@progress/kendo-angular-l10n"),require("@progress/kendo-licensing"),require("@progress/kendo-angular-common"),require("@progress/kendo-angular-popup"),require("@angular/common")):"function"==typeof define&&define.amd?define("KendoAngularMenu",["exports","@angular/core","@progress/kendo-angular-l10n","@progress/kendo-licensing","@progress/kendo-angular-common","@progress/kendo-angular-popup","@angular/common"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoAngularMenu={},e.ng.core,e.KendoAngularL10N,e.KendoLicensing,e.KendoAngularCommon,e.KendoAngularPopup,e.ng.common)}(this,function(e,l,t,R,a,n,j){"use strict";function N(n){if(n&&n.__esModule)return n;var i=Object.create(null);return n&&Object.keys(n).forEach(function(e){var t;"default"!==e&&(t=Object.getOwnPropertyDescriptor(n,e),Object.defineProperty(i,e,t.get?t:{enumerable:!0,get:function(){return n[e]}}))}),i.default=n,Object.freeze(i)}var i=N(l),z=N(t),B=N(n),_=N(j),H=function(e,t){return(H=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};function r(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}H(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}Object.create;function Z(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var i,r,o=n.call(e),s=[];try{for(;(void 0===t||0<t--)&&!(i=o.next()).done;)s.push(i.value)}catch(e){r={error:e}}finally{try{i&&!i.done&&(n=o.return)&&n.call(o)}finally{if(r)throw r.error}}return s}function K(e,t,n){if(n||2===arguments.length)for(var i,r=0,o=t.length;r<o;r++)!i&&r in t||((i=i||Array.prototype.slice.call(t,0,r))[r]=t[r]);return e.concat(i||Array.prototype.slice.call(t))}Object.create;function q(e,t){return e.siblingIndex-t.siblingIndex}function U(e,t,n){for(var i=t[e+n];!i;)e<0?e=t.length-1:e>=t.length?e=0:e+=n,i=t[e];return i}var X={name:"@progress/kendo-angular-menu",productName:"Kendo UI for Angular",productCodes:["KENDOUIANGULAR","KENDOUICOMPLETE"],publishDate:1659509554,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning"},Q=/_?\d+$/,W=0,o=(Object.defineProperty(s.prototype,"hasItems",{get:function(){return 0<Object.keys(this.items).length},enumerable:!1,configurable:!0}),s.prototype.childId=function(e){return this.idPrefix+"-child"+e},s.prototype.itemIndex=function(e,t){return(e?e+"_":"")+t},s.prototype.get=function(e){return this.items[e]},s.prototype.add=function(e){this.items[e.index]=e},s.prototype.remove=function(e){this.items[e.index]===e&&delete this.items[e.index]},s.prototype.addList=function(e){this.lists.push(e)},s.prototype.removeList=function(e){e=this.lists.indexOf(e);0<=e&&this.lists.splice(e,1)},s.prototype.containsList=function(t){return Boolean(this.lists.find(function(e){return e.element.nativeElement===t}))},s.prototype.siblings=function(e){var t=this,n=this.parentIndex(e.index);return this.filter(function(e){return t.parentIndex(e)===n})},s.prototype.otherSiblings=function(t){var n=this,i=this.parentIndex(t.index);return this.filter(function(e){return n.parentIndex(e)===i&&e!==t.index})},s.prototype.children=function(t){var n=this;return this.filter(function(e){return n.parentIndex(e)===t.index})},s.prototype.parent=function(e){return this.items[this.parentIndex(e.index)]},s.prototype.root=function(e){return this.items[this.indices(e.index)[0]]},s.prototype.indices=function(e){return e.split("_")},s.prototype.filter=function(e){var t,n=[],i=this.items;for(t in i)e(t,i[t])&&n.push(i[t]);return n.sort(q)},s.prototype.previous=function(e){var t=this.siblings(e),e=t.indexOf(e);return U(e,t,-1)},s.prototype.next=function(e){var t=this.siblings(e),e=t.indexOf(e);return U(e,t,1)},s.prototype.hasParent=function(e,t){return e.index.startsWith(t.index)},s.prototype.areSiblings=function(e,t){return e!==t&&this.parent(e)===this.parent(t)},s.prototype.forEach=function(e){var t,n=this.items;for(t in n)n.hasOwnProperty(t)&&e(n[t])},s.prototype.parentIndex=function(e){return e.replace(Q,"")},s);function s(){this.items={},this.lists=[],this.idPrefix="k-menu"+W++}o.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:o,deps:[],target:i.ɵɵFactoryTarget.Injectable}),o.ɵprov=i.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:o}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:o,decorators:[{type:l.Injectable}]});r(Y,$=a.PreventableEvent);var $,G=Y;function Y(e){var t=$.call(this)||this;return Object.assign(t,e),t}c.prototype.open=function(e,t){e.disabled||(e.hasContent&&!e.opened?this.actions.push({name:"open",requiresZone:e.hasContentTemplates(),item:e,finished:t}):t&&t())},c.prototype.close=function(e){this.closeChildren(e),this.closeItem(e)},c.prototype.closeItem=function(e){e.opened&&this.actions.push({name:"close",item:e})},c.prototype.closeToRoot=function(e){this.closeChildren(e);for(var t=e;this.closeItem(t),t=this.items.parent(t););},c.prototype.closeOthers=function(e){this.closeChildren(e);for(var t=e;t;){var n=this.items.otherSiblings(t);this.closeItems(n),t=this.items.parent(t)}},c.prototype.closeAll=function(){var t=this;this.items.forEach(function(e){e.opened&&0===e.level&&t.close(e)})},c.prototype.select=function(e,t,n,i){this.actions.push({name:"select",item:e,prevented:n,finished:i,domEvent:t})},c.prototype.emit=function(e,t,n){var i=this.owner,n=new G({sender:i,item:t.item,index:t.index,originalEvent:n,hasContent:t.hasContent});return i[e].emit(n),i.contextService&&i.contextService.emit(e,n),n.isDefaultPrevented()},Object.defineProperty(c.prototype,"hasPending",{get:function(){return 0<this.actions.length},enumerable:!1,configurable:!0}),c.prototype.execute=function(e){var t,n=this;(this.hasPending||e)&&(t=e||this.clear(),!l.NgZone.isInAngularZone()&&this.requiresZone(t)?this.ngZone.run(function(){n.executeActions(t)}):this.executeActions(t))},c.prototype.clear=function(){var e=this.actions;return this.actions=[],e},c.prototype.executeActions=function(e){for(var t,n,i=0;i<e.length;i++){var r=e[i],o=r.item,s=r.name,a=r.prevented,p=r.finished,r=r.domEvent;t=o,"open"===(n=s)&&t.opened||"close"===n&&!t.opened||(this.emit(s,o,r)?a&&a():(o[s]&&o[s](),p&&p()))}},c.prototype.requiresZone=function(e){for(var t=e||this.actions,n=this.owner,i=n.contextService,r=0;r<t.length;r++){var o=t[r],s=o.name;if(o.requiresZone||s&&(a.hasObservers(n[s])||i&&i.hasObservers(s)))return!0}return!1},c.prototype.closeChildren=function(e){e.opened&&(e=this.items.children(e),this.closeItems(e))},c.prototype.closeItems=function(e){for(var t=0;t<e.length;t++)this.close(e[t])};var p=c;function c(e,t){this.ngZone=e,this.items=t,this.actions=[]}p.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:p,deps:[{token:i.NgZone},{token:o}],target:i.ɵɵFactoryTarget.Injectable}),p.ɵprov=i.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:p}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:p,decorators:[{type:l.Injectable}],ctorParameters:function(){return[{type:i.NgZone},{type:o}]}});var J=/\S/,ee={37:"left",39:"right",38:"up",40:"down",36:"home",35:"end",32:"enter",13:"enter",27:"esc",9:"tab"},te=Object.assign({},ee,{37:"right",39:"left"});var ne=Promise.resolve(null),u=(Object.defineProperty(m.prototype,"focusedItem",{get:function(){return this.items.get(this.focusedIdx)},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"activeItem",{get:function(){return this.items.get(this.activeIndex)},enumerable:!1,configurable:!0}),Object.defineProperty(m.prototype,"handlers",{get:function(){return this.localization.rtl?te:ee},enumerable:!1,configurable:!0}),m.prototype.focus=function(e){e.index!==this.focusedIdx&&(this.activeItem&&this.items.hasParent(e,this.activeItem)||this.setActive(e),this.setFocus(e))},m.prototype.setFocus=function(e){this.focusedIdx=e.index,e.focus()},m.prototype.focusLeave=function(){var e=this.focusedItem;e&&(this.actions.closeToRoot(e),this.actions.execute()),this.focusedIdx=null},m.prototype.updateActive=function(){var e=this;!this.activeItem&&this.items.hasItems&&(this.items.get("0").toggleActive(!0),this.ngZone.runOutsideAngular(function(){ne.then(function(){e.activeIndex="0"})}))},m.prototype.keydown=function(e){var t=this.focusedItem||this.activeItem,n=this.handlers[e.keyCode];t&&(n?("tab"!==n&&e.preventDefault(),this[n](t,e)):1===(n=e.key).length&&J.test(n)&&this.search(t,e.key),this.actions.execute())},m.prototype.focusIndex=function(e){!e&&this.activeItem?this.setFocus(this.activeItem):"first"===e?this.focusFirst():"last"===e?this.focusLast():(e=this.items.get(e))&&this.focus(e)},m.prototype.focusFirst=function(){var e=this.items.siblings(this.items.get("0"));this.focus(e[0])},m.prototype.focusLast=function(){var e=this.items.siblings(this.items.get("0"));this.focus(e[e.length-1])},m.prototype.search=function(e,t){for(var n=this.items.siblings(e),e=n.indexOf(e),i=n.slice(e+1).concat(n.slice(0,e)),r=0;r<i.length;r++){var o=i[r];if((o.item.text||"").toLowerCase().startsWith(t.toLowerCase())){this.focus(o);break}}},m.prototype.down=function(e){0!==e.level||this.vertical?this.focus(this.items.next(e)):e.hasContent&&this.actions.open(e,this.focusChild(e,0))},m.prototype.up=function(e){0!==e.level||this.vertical?this.focus(this.items.previous(e)):e.hasContent&&this.actions.open(e,this.focusChild(e,e.children.length-1))},m.prototype.left=function(e){var t;this.vertical&&0===e.level&&e.disabled||(1<e.level||this.vertical&&0<e.level?(t=this.items.parent(e),this.focus(t),this.actions.close(t)):this.vertical&&0===e.level&&!e.disabled?e.hasContent&&this.actions.open(e,this.focusChild(e,e.children.length-1)):this.focus(this.items.previous(this.activeItem)))},m.prototype.right=function(e){this.vertical&&0===e.level&&e.disabled||(e.horizontal&&!e.disabled?e.hasContent?this.actions.open(e,this.focusChild(e,0)):(!this.vertical||0<e.level)&&this.focus(this.items.next(this.activeItem)):this.focus(this.items.next(this.activeItem)))},m.prototype.home=function(e){e=this.items.siblings(e);this.focus(e[0])},m.prototype.end=function(e){e=this.items.siblings(e);this.focus(e[e.length-1])},m.prototype.enter=function(e,t){var n=this.actions;e.disabled||(e.hasContent?(n.select(e,t),n.open(e,this.focusChild(e,0))):(n.select(e,t,null,function(){e.navigate()}),this.focus(this.items.root(e)),n.closeToRoot(e)))},m.prototype.esc=function(e){0<e.level&&(e=this.items.parent(e),this.actions.close(e),this.focus(e))},m.prototype.tab=function(e){0<e.level&&this.activeItem.focus()},m.prototype.focusChild=function(t,n){var i=this;return function(){var e=i.items.children(t)[n];i.setFocus(e)}},m.prototype.setActive=function(e){var t=this.focusedItem,e=this.items.root(e);this.activeItem&&this.activeItem.toggleActive(!1),this.activeIndex=e.index,e.toggleActive(!0),t&&(this.actions.closeToRoot(t),0<t.level&&this.actions.open(e))},m);function m(e,t,n,i){this.items=e,this.actions=t,this.localization=n,this.ngZone=i,this.vertical=!1,this.activeIndex="0"}u.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:u,deps:[{token:o},{token:p},{token:z.LocalizationService},{token:i.NgZone}],target:i.ɵɵFactoryTarget.Injectable}),u.ɵprov=i.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:u}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:u,decorators:[{type:l.Injectable}],ctorParameters:function(){return[{type:o},{type:p},{type:z.LocalizationService},{type:i.NgZone}]}});Object.defineProperty(h.prototype,"openOnOver",{get:function(){return this._openOnOver},set:function(e){this.cancelActions(),this._openOnOver=e},enumerable:!1,configurable:!0}),Object.defineProperty(h.prototype,"hovered",{get:function(){return this.items.get(this.hoveredIdx)},set:function(e){this.hoveredIdx=e?e.index:null},enumerable:!1,configurable:!0}),h.prototype.ngOnDestroy=function(){this.cancelActions()},h.prototype.over=function(t){var n=this;this.cancelActions(function(e){return"openOnOver"===e.name}),this.hovered&&this.hovered===t||(this.actions.closeOthers(t),(0<(this.hovered=t).level||this.openOnOver)&&!t.disabled&&(this.actions.open(t),this.cancelActions(function(e){return"close"===e.name&&(t===e.item||n.items.hasParent(t,e.item))||"open"===e.name&&!n.items.hasParent(t,e.item)})),this.scheduleActions())},h.prototype.leave=function(e){var t=this.hovered;t&&(this.actions.closeToRoot(t),this.cancelActions(function(e){return"open"===e.name}),this.scheduleActions()),e&&this._openOnOver&&this.scheduleDisableOpenOnOver(),this.hovered=null},h.prototype.closeCurrent=function(){var e=this.hovered;e&&(this.actions.closeToRoot(e),this.hovered=null)},h.prototype.scheduleActions=function(){var e,t=this;this.actions.hasPending&&((e={}).actions=this.actions.clear(),e.id=setTimeout(function(){t.actions.execute(e.actions),t.removeScheduled(e)},this.delay),this.scheduled.push(e))},h.prototype.scheduleDisableOpenOnOver=function(){var e=this,t={actions:[{name:"openOnOver"}]};t.id=setTimeout(function(){e._openOnOver=!1,e.removeScheduled(t)},Math.max(this.delay,500)),this.scheduled.push(t)},h.prototype.removeScheduled=function(e){for(var t=this.scheduled,n=0;n<t.length;n++)if(t[n]===e)return void t.splice(n,1)},h.prototype.cancelActions=function(e){for(var t=this.scheduled,n=t.length-1;0<=n;n--){var i=t[n],r=i.actions;if(e)for(var o=r.length-1;0<=o;o--)e(r[o])&&r.splice(o,1);e&&0!==r.length||(clearTimeout(i.id),t.splice(n,1))}};var d=h;function h(e,t){this.actions=e,this.items=t,this.delay=100,this._openOnOver=!0,this.scheduled=[]}d.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:d,deps:[{token:p},{token:o}],target:i.ɵɵFactoryTarget.Injectable}),d.ɵprov=i.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:d}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:d,decorators:[{type:l.Injectable}],ctorParameters:function(){return[{type:p},{type:o}]}});function ie(e,t,n){for(;e&&e!==n&&!t(e);)e=e.parentNode;if(e!==n)return e}function re(e){var t,n,i;return!!e.tagName&&(t=e.tagName.toLowerCase(),n="-1"===(i=e.getAttribute("tabIndex")),i=null!==i&&!n,ce.test(t)?!e.disabled&&!n:i)}function oe(e){return String(e).trim().split(" ")}function se(e){return e.getAttribute(pe)}function ae(e,t){return e!==t.lists[0].element.nativeElement&&((e=function(e){e=ue(e,de("k-menu-popup k-menu k-menu-group"));return e=e&&me(e,"k-menu-popup")?e.querySelector(".k-menu-group"):e}(e))&&t.containsList(e))}var pe="data-kendo-menu-index",le="kendo-matches-container",ce=/^(?:a|input|select|option|textarea|button|object)$/i,ue=function(e,t){for(;e&&!t(e);)e=e.parentNode;return e},me=function(e,t){return 0<=oe(e.className).indexOf(t)},de=function(e){var n=oe(e);return function(e){var t=oe(e.className);return Boolean(n.find(function(e){return 0<=t.indexOf(e)}))}},g=function(e){this.templateRef=e},f=(g.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:g,deps:[{token:i.TemplateRef,optional:!0}],target:i.ɵɵFactoryTarget.Directive}),g.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:g,selector:"[kendoMenuItemTemplate]",ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:g,decorators:[{type:l.Directive,args:[{selector:"[kendoMenuItemTemplate]"}]}],ctorParameters:function(){return[{type:i.TemplateRef,decorators:[{type:l.Optional}]}]}}),function(e){this.templateRef=e}),v=(f.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:f,deps:[{token:i.TemplateRef,optional:!0}],target:i.ɵɵFactoryTarget.Directive}),f.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:f,selector:"[kendoMenuItemLinkTemplate]",ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:f,decorators:[{type:l.Directive,args:[{selector:"[kendoMenuItemLinkTemplate]"}]}],ctorParameters:function(){return[{type:i.TemplateRef,decorators:[{type:l.Optional}]}]}}),function(e){this.templateRef=e}),y=(v.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:v,deps:[{token:i.TemplateRef,optional:!0}],target:i.ɵɵFactoryTarget.Directive}),v.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:v,selector:"[kendoMenuItemContentTemplate]",ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:v,decorators:[{type:l.Directive,args:[{selector:"[kendoMenuItemContentTemplate]"}]}],ctorParameters:function(){return[{type:i.TemplateRef,decorators:[{type:l.Optional}]}]}}),Object.defineProperty(he.prototype,"template",{get:function(){if(this.itemTemplate&&this.itemTemplate.length)return this.itemTemplate.first.templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(he.prototype,"linkTemplate",{get:function(){if(this.itemLinkTemplate&&this.itemLinkTemplate.length)return this.itemLinkTemplate.first.templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(he.prototype,"contentTemplate",{get:function(){if(this.itemContentTemplate&&this.itemContentTemplate.length)return this.itemContentTemplate.first.templateRef},enumerable:!1,configurable:!0}),Object.defineProperty(he.prototype,"items",{get:function(){var t=this;if(this.children.length)return this.children.toArray().filter(function(e){return e!==t})},enumerable:!1,configurable:!0}),he);function he(){}y.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:y,deps:[],target:i.ɵɵFactoryTarget.Component}),y.ɵcmp=i.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:y,selector:"kendo-menu-item",inputs:{text:"text",url:"url",disabled:"disabled",cssClass:"cssClass",cssStyle:"cssStyle",icon:"icon",data:"data",separator:"separator"},queries:[{propertyName:"itemTemplate",predicate:g},{propertyName:"itemLinkTemplate",predicate:f},{propertyName:"itemContentTemplate",predicate:v},{propertyName:"children",predicate:y}],ngImport:i,template:"",isInline:!0}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:y,decorators:[{type:l.Component,args:[{selector:"kendo-menu-item",template:""}]}],propDecorators:{text:[{type:l.Input}],url:[{type:l.Input}],disabled:[{type:l.Input}],cssClass:[{type:l.Input}],cssStyle:[{type:l.Input}],icon:[{type:l.Input}],data:[{type:l.Input}],separator:[{type:l.Input}],itemTemplate:[{type:l.ContentChildren,args:[g]}],itemLinkTemplate:[{type:l.ContentChildren,args:[f]}],itemContentTemplate:[{type:l.ContentChildren,args:[v]}],children:[{type:l.ContentChildren,args:[y]}]}});Object.defineProperty(ge.prototype,"rootItems",{get:function(){return this.items||(this.children?this.children.toArray():[])},enumerable:!1,configurable:!0});var k=ge;function ge(){this.vertical=!1,this.openOnClick=!1,this.hoverDelay=100,this.animate=!0}k.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:k,deps:[],target:i.ɵɵFactoryTarget.Component}),k.ɵcmp=i.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:k,selector:"kendo-menu-base",inputs:{items:"items",vertical:"vertical",openOnClick:"openOnClick",hoverDelay:"hoverDelay",animate:"animate"},queries:[{propertyName:"itemTemplate",predicate:g},{propertyName:"itemLinkTemplate",predicate:f},{propertyName:"children",predicate:y}],ngImport:i,template:"",isInline:!0}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:k,decorators:[{type:l.Component,args:[{selector:"kendo-menu-base",template:""}]}],propDecorators:{items:[{type:l.Input}],vertical:[{type:l.Input}],openOnClick:[{type:l.Input}],hoverDelay:[{type:l.Input}],animate:[{type:l.Input}],itemTemplate:[{type:l.ContentChildren,args:[g]}],itemLinkTemplate:[{type:l.ContentChildren,args:[f]}],children:[{type:l.ContentChildren,args:[y]}]}});fe.prototype.emit=function(e,t){this.owner.emitMenuEvent(e,t)},fe.prototype.hasObservers=function(e){return this.owner&&a.hasObservers(this.owner[e])},fe.prototype.leaveMenu=function(e){return!this.items||!ae(e.target,this.items)};var I=fe;function fe(){this.keydown=new l.EventEmitter}I.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:I,deps:[],target:i.ɵɵFactoryTarget.Injectable}),I.ɵprov=i.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:I}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:I,decorators:[{type:l.Injectable}]});function ve(e){return void 0!==e}function ye(){if(a.isDocumentAvailable())return new l.ElementRef(document.body)}var b={vertical:"top",horizontal:"left"},C={vertical:"top",horizontal:"right"},x={vertical:"flip",horizontal:"fit"},T={vertical:"fit",horizontal:"flip"},ke={vertical:{anchor:{vertical:"bottom",horizontal:"right"},popup:C,collision:x,animate:"down"},horizontal:{anchor:{vertical:"top",horizontal:"left"},popup:C,collision:T,animate:"left"}},Ie={vertical:{anchor:{vertical:"bottom",horizontal:"left"},popup:b,collision:x,animate:"down"},horizontal:{anchor:{vertical:"top",horizontal:"right"},popup:b,collision:T,animate:"right"}},C=(O.prototype.hierarchyIndex=function(e){return this.itemsService.itemIndex(this.index,e)},O.prototype.ngOnInit=function(){this.itemsService.addList(this),this.initDomEvents()},O.prototype.ngOnDestroy=function(){this.itemsService.removeList(this),this.domSubscriptions&&this.domSubscriptions()},O.prototype.initDomEvents=function(){var p=this;a.isDocumentAvailable()&&this.element&&this.ngZone.runOutsideAngular(function(){var t=p.element.nativeElement,e=0<p.level?ue(t,function(e){return me(e,"k-popup")}):t,n=p.renderer.listen(t,"mouseover",function(e){e.target===t&&0===p.level?p.onLeave():!(e=p.nodeItem(e.target)||p.itemsService.get(p.index))||p.openOnClick&&"click"===p.openOnClick.toggle&&0===e.level&&!e.hasContent||p.hover.over(e)}),i=p.renderer.listen(e,"mouseleave",function(e){p.leavesMenu(e)&&p.onLeave()}),r=p.renderer.listen(t,"keydown",function(e){me(e.target,"k-menu-item")&&p.navigation.keydown(e)}),o=p.renderer.listen(t,"focusout",function(e){p.leavesMenu(e)&&p.navigation.focusLeave()}),s=p.renderer.listen(document,"touchstart",function(e){ae(e.target,p.itemsService)?(e=p.nodeItem(e.target),p.navigation.focus(e),e.opened||p.hover.over(e)):p.navigation.focusedIdx&&(e=p.itemsService.get(p.navigation.activeIndex),p.onLeave(),e.blur())}),a=p.renderer.listen(t,"click",p.clickHandler.bind(p));p.domSubscriptions=function(){n(),i(),r(),o(),a(),s()}})},O.prototype.leavesMenu=function(e){return!e.relatedTarget||!ae(e.relatedTarget,this.itemsService)},O.prototype.onLeave=function(){var e=this.openOnClick;e&&"click"===e.toggle||this.hover.leave(e&&"leave"===e.toggle)},O.prototype.nodeItem=function(e){t=this.element.nativeElement;var t,e=ie(e,se,t);if(e)return t=se(e),this.itemsService.get(t)},O.prototype.clickHandler=function(e){var t,n;re(e.target)&&!me(e.target,"k-menu-item")||(!(t=this.nodeItem(e.target))||t.isContent||t.navigating||(t.disabled?e.preventDefault():(this.actions.select(t,e,function(){e.preventDefault()}),this.navigation.focus(t),0<t.level&&!t.hasContent&&this.actions.closeToRoot(t),this.openOnClick&&(n=this.hover,t.opened?0===t.level&&(n.openOnOver=!1,this.actions.close(t)):t.hasContent?(n.openOnOver=!0,this.actions.closeOthers(t),this.actions.open(t)):(n.openOnOver=!1,0===t.level&&"click"===this.openOnClick.toggle&&this.hover.closeCurrent())),this.actions.execute())))},O);function O(e,t,n,i,r,o,s){this.itemsService=e,this.hover=t,this.actions=n,this.navigation=i,this.renderer=r,this.ngZone=o,this.element=s,this.animate=!0}C.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:C,deps:[{token:o},{token:d},{token:p},{token:u},{token:i.Renderer2},{token:i.NgZone},{token:i.ElementRef}],target:i.ɵɵFactoryTarget.Component}),C.ɵcmp=i.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:C,selector:"[kendoMenuList]",inputs:{items:"items",level:"level",index:"index",animate:"animate",vertical:"vertical",rtl:"rtl",openOnClick:"openOnClick",itemTemplate:"itemTemplate",itemLinkTemplate:"itemLinkTemplate"},ngImport:i,template:'\n <ng-container *ngFor="let item of items; let idx = index">\n <li *ngIf="!item.separator" kendoMenuItem\n [item]="item" [level]="level" [vertical]="vertical" [animate]="animate" [rtl]="rtl"\n [itemTemplate]="itemTemplate" [itemLinkTemplate]="itemLinkTemplate" [openOnClick]="openOnClick"\n [index]="hierarchyIndex(idx)" [siblingIndex]="idx" [attr.data-kendo-menu-index]="hierarchyIndex(idx)"\n [ngClass]="item.cssClass" [ngStyle]="item.cssStyle"\n role="menuitem"\n class="k-item k-menu-item"\n [class.k-first]="idx === 0" [class.k-last]="idx === items.length - 1"\n [class.k-disabled]="item.disabled"></li>\n <li *ngIf="item.separator" class="k-separator k-item"\n role="separator" [ngClass]="item.cssClass" [ngStyle]="item.cssStyle">\n &nbsp;\n </li>\n </ng-container>\n ',isInline:!0,components:[{type:i.forwardRef(function(){return be}),selector:"[kendoMenuItem]",inputs:["item","level","index","siblingIndex","animate","vertical","rtl","openOnClick","itemTemplate","itemLinkTemplate"]}],directives:[{type:i.forwardRef(function(){return _.NgForOf}),selector:"[ngFor][ngForOf]",inputs:["ngForOf","ngForTrackBy","ngForTemplate"]},{type:i.forwardRef(function(){return _.NgIf}),selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:i.forwardRef(function(){return _.NgClass}),selector:"[ngClass]",inputs:["class","ngClass"]},{type:i.forwardRef(function(){return _.NgStyle}),selector:"[ngStyle]",inputs:["ngStyle"]}]}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:C,decorators:[{type:l.Component,args:[{selector:"[kendoMenuList]",template:'\n <ng-container *ngFor="let item of items; let idx = index">\n <li *ngIf="!item.separator" kendoMenuItem\n [item]="item" [level]="level" [vertical]="vertical" [animate]="animate" [rtl]="rtl"\n [itemTemplate]="itemTemplate" [itemLinkTemplate]="itemLinkTemplate" [openOnClick]="openOnClick"\n [index]="hierarchyIndex(idx)" [siblingIndex]="idx" [attr.'+pe+']="hierarchyIndex(idx)"\n [ngClass]="item.cssClass" [ngStyle]="item.cssStyle"\n role="menuitem"\n class="k-item k-menu-item"\n [class.k-first]="idx === 0" [class.k-last]="idx === items.length - 1"\n [class.k-disabled]="item.disabled"></li>\n <li *ngIf="item.separator" class="k-separator k-item"\n role="separator" [ngClass]="item.cssClass" [ngStyle]="item.cssStyle">\n &nbsp;\n </li>\n </ng-container>\n '}]}],ctorParameters:function(){return[{type:o},{type:d},{type:p},{type:u},{type:i.Renderer2},{type:i.NgZone},{type:i.ElementRef}]},propDecorators:{items:[{type:l.Input}],level:[{type:l.Input}],index:[{type:l.Input}],animate:[{type:l.Input}],vertical:[{type:l.Input}],rtl:[{type:l.Input}],openOnClick:[{type:l.Input}],itemTemplate:[{type:l.Input}],itemLinkTemplate:[{type:l.Input}]}});Object.defineProperty(D.prototype,"index",{get:function(){return this._index},set:function(e){this._index&&this._index!==e?(this.itemsService.remove(this),this._index=e,this.itemsService.add(this)):this._index=e,this.childId=this.itemsService.childId(e)},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"disabled",{get:function(){return this.item.disabled},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"hasPopup",{get:function(){return!!this.hasContent||null},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"expanded",{get:function(){return this.hasContent?this.opened:null},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"label",{get:function(){return this.item.text||null},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"activeId",{get:function(){return this.index===this.navigation.activeIndex?"0":"-1"},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"popupSettings",{get:function(){var e=this.rtl?ke:Ie;return this.horizontal?e.horizontal:e.vertical},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"horizontal",{get:function(){return this.vertical||0<this.level},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"hasLink",{get:function(){return Boolean(this.item.url)},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"linkTemplate",{get:function(){return this.item.linkTemplate||this.itemLinkTemplate},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"hasContent",{get:function(){var e=this.item.items;return e&&e.length||this.item.contentTemplate},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"isContent",{get:function(){return Boolean(this.item.content)},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"iconClass",{get:function(){return"k-i-"+this.item.icon},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"children",{get:function(){var e=this.item;return e.contentTemplate?(this.contentItems||(this.contentItems=[{content:e.contentTemplate,owner:e,ownerIndex:this.index}]),this.contentItems):e.items},enumerable:!1,configurable:!0}),Object.defineProperty(D.prototype,"template",{get:function(){return this.item.template||this.itemTemplate},enumerable:!1,configurable:!0}),D.prototype.hasContentTemplates=function(){var e=this.item;return this.itemTemplate||e.contentTemplate||this.itemLinkTemplate||e.items&&e.items.find(function(e){return e.template||e.linkTemplate})},D.prototype.ngOnInit=function(){this.itemsService.add(this)},D.prototype.ngOnDestroy=function(){this.itemsService.remove(this),this.destroyed=!0,this.popupRef&&(this.popupRef.close(),this.popupRef=null)},D.prototype.focus=function(){this.element.nativeElement.focus()},D.prototype.blur=function(){this.element.nativeElement.blur()},D.prototype.toggleActive=function(e){e?this.setAttribute("tabindex","0"):this.setAttribute("tabindex","-1")},D.prototype.open=function(){var e,t;this.destroyed||!this.hasContent||this.opened||(e=this.popupSettings,t=!!this.animate&&Object.assign({},this.animate,{direction:e.animate}),this.opened=!0,this.popupRef=this.popupService.open({popupAlign:e.popup,anchorAlign:e.anchor,collision:e.collision,anchor:this.element,positionMode:"absolute",content:this.popupTemplate,popupClass:{"k-rtl":this.rtl,"k-menu-popup":!0},animate:t}),this.setAttribute("aria-expanded","true"),this.setAttribute("aria-owns",this.childId),this.changeDetector.detectChanges())},D.prototype.close=function(){!this.destroyed&&this.opened&&(this.opened=!1,this.popupRef&&(this.popupRef.close(),this.popupRef=null),this.changeDetector.detectChanges(),this.setAttribute("aria-expanded","false"),this.renderer.removeAttribute(this.element.nativeElement,"aria-owns"))},D.prototype.navigate=function(){var e;this.linkTemplate?e=this.element.nativeElement.querySelector("a.k-menu-link"):this.hasLink&&(e=this.link.nativeElement),e&&(this.navigating=!0,e.click(),this.navigating=!1)},D.prototype.setAttribute=function(e,t){this.renderer.setAttribute(this.element.nativeElement,e,t)};var be=D;function D(e,t,n,i,r,o){this.itemsService=e,this.navigation=t,this.changeDetector=n,this.renderer=i,this.popupService=r,this.element=o,this.animate=!0,this.openOnClick=!1,this.opened=!1,this.navigating=!1,this.destroyed=!1}be.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:be,deps:[{token:o},{token:u},{token:i.ChangeDetectorRef},{token:i.Renderer2},{token:B.PopupService},{token:i.ElementRef}],target:i.ɵɵFactoryTarget.Component}),be.ɵcmp=i.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:be,selector:"[kendoMenuItem]",inputs:{item:"item",level:"level",index:"index",siblingIndex:"siblingIndex",animate:"animate",vertical:"vertical",rtl:"rtl",openOnClick:"openOnClick",itemTemplate:"itemTemplate",itemLinkTemplate:"itemLinkTemplate"},host:{properties:{"attr.aria-disabled":"this.disabled","attr.aria-haspopup":"this.hasPopup","attr.aria-expanded":"this.expanded","attr.aria-label":"this.label","attr.tabindex":"this.activeId"}},providers:[n.PopupService,{provide:n.POPUP_CONTAINER,useFactory:ye}],viewQueries:[{propertyName:"link",first:!0,predicate:["link"],descendants:!0},{propertyName:"popupTemplate",first:!0,predicate:["popupTemplate"],descendants:!0,static:!0}],ngImport:i,template:'\n <span *ngIf="!hasLink && !item.content && !linkTemplate" class="k-link k-menu-link" #link\n [class.k-active]="opened" role="presentation">\n <ng-template [ngTemplateOutlet]="itemcontent">\n </ng-template>\n </span>\n <a *ngIf="item.url && !linkTemplate" class="k-link k-menu-link" #link [attr.href]="item.url"\n [class.k-active]="opened" tabindex="-1" role="presentation">\n <ng-template [ngTemplateOutlet]="itemcontent">\n </ng-template>\n </a>\n <ng-template *ngIf="linkTemplate && !item.content" [ngTemplateOutlet]="linkTemplate"\n [ngTemplateOutletContext]="{ item: item, index: index }">\n </ng-template>\n\n <div class="k-content" *ngIf="item.content" role="presentation">\n <ng-template [ngTemplateOutlet]="item.content" [ngTemplateOutletContext]="{ item: item.owner, index: item.ownerIndex }">\n </ng-template>\n </div>\n\n <ng-template #popupTemplate>\n <ul kendoMenuList\n [attr.id]="childId"\n [animate]="animate"\n [rtl]="rtl"\n [vertical]="vertical"\n [openOnClick]="openOnClick"\n [items]="children"\n [level]="level + 1"\n [index]="index"\n [itemTemplate]="itemTemplate"\n [itemLinkTemplate]="itemLinkTemplate"\n role="menu"\n class="k-group k-menu-group k-reset">\n </ul>\n </ng-template>\n\n <ng-template #itemcontent>\n <span *ngIf="item.icon" class="k-icon" [ngClass]="iconClass" role="presentation"></span>\n <ng-container *ngIf="!template">\n <span class="k-menu-link-text">{{ item.text }}</span>\n </ng-container>\n <ng-template *ngIf="template" [ngTemplateOutlet]="template" [ngTemplateOutletContext]="{ item: item, index: index }">\n </ng-template>\n <span *ngIf="hasContent" class="k-menu-expand-arrow" role="presentation">\n <span class="k-icon"\n [class.k-i-arrow-60-down]="!horizontal"\n [class.k-i-arrow-60-right]="horizontal && !rtl"\n [class.k-i-arrow-60-left]="horizontal && rtl"\n >\n </span>\n </span>\n </ng-template>\n ',isInline:!0,components:[{type:C,selector:"[kendoMenuList]",inputs:["items","level","index","animate","vertical","rtl","openOnClick","itemTemplate","itemLinkTemplate"]}],directives:[{type:_.NgIf,selector:"[ngIf]",inputs:["ngIf","ngIfThen","ngIfElse"]},{type:_.NgTemplateOutlet,selector:"[ngTemplateOutlet]",inputs:["ngTemplateOutletContext","ngTemplateOutlet"]},{type:_.NgClass,selector:"[ngClass]",inputs:["class","ngClass"]}]}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:be,decorators:[{type:l.Component,args:[{providers:[n.PopupService,{provide:n.POPUP_CONTAINER,useFactory:ye}],selector:"[kendoMenuItem]",template:'\n <span *ngIf="!hasLink && !item.content && !linkTemplate" class="k-link k-menu-link" #link\n [class.k-active]="opened" role="presentation">\n <ng-template [ngTemplateOutlet]="itemcontent">\n </ng-template>\n </span>\n <a *ngIf="item.url && !linkTemplate" class="k-link k-menu-link" #link [attr.href]="item.url"\n [class.k-active]="opened" tabindex="-1" role="presentation">\n <ng-template [ngTemplateOutlet]="itemcontent">\n </ng-template>\n </a>\n <ng-template *ngIf="linkTemplate && !item.content" [ngTemplateOutlet]="linkTemplate"\n [ngTemplateOutletContext]="{ item: item, index: index }">\n </ng-template>\n\n <div class="k-content" *ngIf="item.content" role="presentation">\n <ng-template [ngTemplateOutlet]="item.content" [ngTemplateOutletContext]="{ item: item.owner, index: item.ownerIndex }">\n </ng-template>\n </div>\n\n <ng-template #popupTemplate>\n <ul kendoMenuList\n [attr.id]="childId"\n [animate]="animate"\n [rtl]="rtl"\n [vertical]="vertical"\n [openOnClick]="openOnClick"\n [items]="children"\n [level]="level + 1"\n [index]="index"\n [itemTemplate]="itemTemplate"\n [itemLinkTemplate]="itemLinkTemplate"\n role="menu"\n class="k-group k-menu-group k-reset">\n </ul>\n </ng-template>\n\n <ng-template #itemcontent>\n <span *ngIf="item.icon" class="k-icon" [ngClass]="iconClass" role="presentation"></span>\n <ng-container *ngIf="!template">\n <span class="k-menu-link-text">{{ item.text }}</span>\n </ng-container>\n <ng-template *ngIf="template" [ngTemplateOutlet]="template" [ngTemplateOutletContext]="{ item: item, index: index }">\n </ng-template>\n <span *ngIf="hasContent" class="k-menu-expand-arrow" role="presentation">\n <span class="k-icon"\n [class.k-i-arrow-60-down]="!horizontal"\n [class.k-i-arrow-60-right]="horizontal && !rtl"\n [class.k-i-arrow-60-left]="horizontal && rtl"\n >\n </span>\n </span>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:o},{type:u},{type:i.ChangeDetectorRef},{type:i.Renderer2},{type:B.PopupService},{type:i.ElementRef}]},propDecorators:{item:[{type:l.Input}],level:[{type:l.Input}],index:[{type:l.Input}],siblingIndex:[{type:l.Input}],animate:[{type:l.Input}],vertical:[{type:l.Input}],rtl:[{type:l.Input}],openOnClick:[{type:l.Input}],itemTemplate:[{type:l.Input}],itemLinkTemplate:[{type:l.Input}],link:[{type:l.ViewChild,args:["link",{static:!1}]}],popupTemplate:[{type:l.ViewChild,args:["popupTemplate",{static:!0}]}],disabled:[{type:l.HostBinding,args:["attr.aria-disabled"]}],hasPopup:[{type:l.HostBinding,args:["attr.aria-haspopup"]}],expanded:[{type:l.HostBinding,args:["attr.aria-expanded"]}],label:[{type:l.HostBinding,args:["attr.aria-label"]}],activeId:[{type:l.HostBinding,args:["attr.tabindex"]}]}});r(M,Ce=k),Object.defineProperty(M.prototype,"ariaOrientation",{get:function(){if(this.vertical)return"vertical"},enumerable:!1,configurable:!0}),Object.defineProperty(M.prototype,"contextMenuClass",{get:function(){return Boolean(this.contextService)},enumerable:!1,configurable:!0}),Object.defineProperty(M.prototype,"direction",{get:function(){return this.rtl},enumerable:!1,configurable:!0}),Object.defineProperty(M.prototype,"rtl",{get:function(){return this.localization.rtl},enumerable:!1,configurable:!0}),M.prototype.toggle=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];for(var i=0;i<t.length;i++){var r=this.itemsService.get(t[i]);r&&!r.disabled&&(e?r.open():r.close())}},M.prototype.focus=function(e){this.navigation.focusIndex(e)},M.prototype.ngOnChanges=function(e){this.navigation.vertical=this.vertical,this.hover.delay=this.hoverDelay,e.openOnClick&&(e=this.openOnClick=(e=this.openOnClick)&&Object.assign({toggle:"select"},e),this.hover.openOnOver=!e,e&&"click"===e.toggle?this.attachCloseClick():this.unsubscribeClick())},M.prototype.ngAfterViewChecked=function(){this.navigation.updateActive()},M.prototype.ngOnDestroy=function(){this.unsubscribeClick(),this.contextService&&(this.contextService.items=null,this.contextKeyDownSubscription.unsubscribe())},M.prototype.attachCloseClick=function(){var t=this;!this.closeClickSubscription&&a.isDocumentAvailable()&&this.ngZone.runOutsideAngular(function(){t.closeClickSubscription=t.renderer.listen("document","click",function(e){ae(e.target,t.itemsService)||(t.hover.openOnOver=!1,t.actions.closeAll(),t.actions.execute())})})},M.prototype.unsubscribeClick=function(){this.closeClickSubscription&&this.closeClickSubscription()},M.prototype.contextKeyDown=function(e){var t,n,i,r;this.itemsService.hasItems&&(i=e.keyCode,t=this.localization.rtl,n=i===a.Keys.ArrowDown||i===a.Keys.ArrowRight,i=i===a.Keys.ArrowUp||i===a.Keys.ArrowLeft,n&&!t||i&&t?r="first":(n&&t||i&&!t)&&(r="last"),r&&(e.preventDefault(),this.focus(r)))};var Ce,F=M;function M(e,t,n,i,r,o,s,a){var p=Ce.call(this)||this;return p.itemsService=e,p.hover=t,p.actions=n,p.navigation=i,p.localization=r,p.ngZone=o,p.renderer=s,p.contextService=a,p.select=new l.EventEmitter,p.open=new l.EventEmitter,p.close=new l.EventEmitter,R.validatePackage(X),p.actions.owner=p,a&&(a.items=p.itemsService,p.contextKeyDownSubscription=a.keydown.subscribe(p.contextKeyDown.bind(p))),p}F.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:F,deps:[{token:o},{token:d},{token:p},{token:u},{token:z.LocalizationService},{token:i.NgZone},{token:i.Renderer2},{token:I,optional:!0}],target:i.ɵɵFactoryTarget.Component}),F.ɵcmp=i.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:F,selector:"kendo-menu",inputs:{menuItemTemplate:"menuItemTemplate",menuItemLinkTemplate:"menuItemLinkTemplate"},outputs:{select:"select",open:"open",close:"close"},host:{properties:{"class.k-rtl":"this.direction"}},providers:[o,p,u,d,t.LocalizationService,{provide:t.L10N_PREFIX,useValue:"kendo.menu"},{provide:k,useExisting:l.forwardRef(function(){return F})}],exportAs:["kendoMenu"],usesInheritance:!0,usesOnChanges:!0,ngImport:i,template:'\n <ul role="menubar"\n [attr.aria-orientation]="ariaOrientation"\n kendoMenuList [items]="rootItems" [level]="0" class="k-widget k-reset k-header k-menu"\n [vertical]="vertical" [rtl]="rtl" [animate]="animate" [openOnClick]="openOnClick"\n [itemTemplate]="itemTemplate.first?.templateRef || menuItemTemplate"\n [itemLinkTemplate]="itemLinkTemplate.first?.templateRef || menuItemLinkTemplate"\n [class.k-menu-horizontal]="!vertical"\n [class.k-menu-vertical]="vertical"\n [class.k-context-menu]="contextMenuClass">\n </ul>\n ',isInline:!0,components:[{type:C,selector:"[kendoMenuList]",inputs:["items","level","index","animate","vertical","rtl","openOnClick","itemTemplate","itemLinkTemplate"]}]}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:F,decorators:[{type:l.Component,args:[{exportAs:"kendoMenu",providers:[o,p,u,d,t.LocalizationService,{provide:t.L10N_PREFIX,useValue:"kendo.menu"},{provide:k,useExisting:l.forwardRef(function(){return F})}],selector:"kendo-menu",template:'\n <ul role="menubar"\n [attr.aria-orientation]="ariaOrientation"\n kendoMenuList [items]="rootItems" [level]="0" class="k-widget k-reset k-header k-menu"\n [vertical]="vertical" [rtl]="rtl" [animate]="animate" [openOnClick]="openOnClick"\n [itemTemplate]="itemTemplate.first?.templateRef || menuItemTemplate"\n [itemLinkTemplate]="itemLinkTemplate.first?.templateRef || menuItemLinkTemplate"\n [class.k-menu-horizontal]="!vertical"\n [class.k-menu-vertical]="vertical"\n [class.k-context-menu]="contextMenuClass">\n </ul>\n '}]}],ctorParameters:function(){return[{type:o},{type:d},{type:p},{type:u},{type:z.LocalizationService},{type:i.NgZone},{type:i.Renderer2},{type:I,decorators:[{type:l.Optional}]}]},propDecorators:{menuItemTemplate:[{type:l.Input}],menuItemLinkTemplate:[{type:l.Input}],select:[{type:l.Output}],open:[{type:l.Output}],close:[{type:l.Output}],direction:[{type:l.HostBinding,args:["class.k-rtl"]}]}});Object.defineProperty(xe.prototype,"activeClass",{get:function(){return this.item.opened},enumerable:!1,configurable:!0}),xe.prototype.ngOnInit=function(){if(l.isDevMode()&&!this.index)throw new Error("The kendoMenuItemLink directive requires the item index to be set.");this.item=this.itemsService.get(this.index)||{}};x=xe;function xe(e){this.itemsService=e,this.hostClasses=!0,this.role="presentation",this.tabindex="-1"}x.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:x,deps:[{token:o}],target:i.ɵɵFactoryTarget.Directive}),x.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:x,selector:"[kendoMenuItemLink]",inputs:{index:["kendoMenuItemLink","index"]},host:{properties:{"class.k-link":"this.hostClasses","class.k-menu-link":"this.hostClasses","attr.role":"this.role","attr.tabindex":"this.tabindex","class.k-active":"this.activeClass"}},ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:x,decorators:[{type:l.Directive,args:[{selector:"[kendoMenuItemLink]"}]}],ctorParameters:function(){return[{type:o}]},propDecorators:{index:[{type:l.Input,args:["kendoMenuItemLink"]}],hostClasses:[{type:l.HostBinding,args:["class.k-link"]},{type:l.HostBinding,args:["class.k-menu-link"]}],role:[{type:l.HostBinding,args:["attr.role"]}],tabindex:[{type:l.HostBinding,args:["attr.tabindex"]}],activeClass:[{type:l.HostBinding,args:["class.k-active"]}]}});Te.prototype.ngOnInit=function(){if(l.isDevMode()&&!this.index)throw new Error("The kendoMenuExpandArrow directive requires the item index to be set.");this.item=this.itemsService.get(this.index)||{},this.createIconElement()},Te.prototype.createIconElement=function(){var e=this.item.horizontal?this.item.rtl?"k-i-arrow-60-left":"k-i-arrow-60-right":"k-i-arrow-60-down",t=this.renderer.createElement("span");this.renderer.addClass(t,"k-icon"),this.renderer.addClass(t,e),this.renderer.appendChild(this.element.nativeElement,t)};b=Te;function Te(e,t,n){this.itemsService=e,this.element=t,this.renderer=n,this.hostClasses=!0,this.role="presentation"}b.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:b,deps:[{token:o},{token:i.ElementRef},{token:i.Renderer2}],target:i.ɵɵFactoryTarget.Directive}),b.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:b,selector:"[kendoMenuExpandArrow]",inputs:{index:["kendoMenuExpandArrow","index"]},host:{properties:{"class.k-menu-expand-arrow":"this.hostClasses","attr.role":"this.role"}},ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:b,decorators:[{type:l.Directive,args:[{selector:"[kendoMenuExpandArrow]"}]}],ctorParameters:function(){return[{type:o},{type:i.ElementRef},{type:i.Renderer2}]},propDecorators:{index:[{type:l.Input,args:["kendoMenuExpandArrow"]}],hostClasses:[{type:l.HostBinding,args:["class.k-menu-expand-arrow"]}],role:[{type:l.HostBinding,args:["attr.role"]}]}});Oe.prototype.preventDefault=function(){this.prevented=!0},Oe.prototype.isDefaultPrevented=function(){return this.prevented};T=Oe;function Oe(e){this.prevented=!1,Object.assign(this,e)}r(Me,De=T);var De,Fe=Me;function Me(){return null!==De&&De.apply(this,arguments)||this}r(Pe,we=Fe);var we,Se=Pe;function Pe(){return null!==we&&we.apply(this,arguments)||this}var Ae=["textField","urlField","iconField","disabledField","cssClassField","cssStyleField","separatorField"],w=(Ee.prototype.ngOnChanges=function(){this.rebind()},Ee.prototype.rebind=function(){for(var e=this.fields=[],t=0;t<Ae.length;t++){var n=Ae[t],i=this[n];i&&e.push({target:n.replace("Field",""),source:i})}this.menu.items=this.data?this.mapItems(this.data):[]},Ee);function Ee(e){this.menu=e}w.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:w,deps:[{token:k}],target:i.ɵɵFactoryTarget.Directive}),w.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:w,selector:"kendoBindingBase",usesOnChanges:!0,ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:w,decorators:[{type:l.Directive,args:[{selector:"kendoBindingBase"}]}],ctorParameters:function(){return[{type:k}]}});function Le(e){var r;return Ne[e]||(r=[],e.replace(je,function(e,t,n,i){r.push(void 0!==t?t:n||i)}),Ne[e]=function(e){for(var t=e,n=0;n<r.length&&t;n++)t=t[r[n]];return t}),Ne[e]}function Ve(e,t){return Array.isArray(e)?e[t]||e[e.length-1]:e}var Re,je=/\[(?:(\d+)|['"](.*?)['"])\]|((?:(?!\[.*?\]|\.).)+)/g,Ne={undefined:function(e){return e}},ze=(r(Be,Re=w),Be.prototype.mapItems=function(e,n){var i=this;return void 0===n&&(n=0),e.map(function(e){var t=i.createItem(e,n),e=i.getChildren(e,n);return e&&(t.items=i.mapItems(e,n+1)),t})},Be.prototype.createItem=function(e,t){for(var n={data:e},i=this.fields,r=0;r<i.length;r++){var o=i[r],s=o.target,o=o.source;n[s]=Le(Ve(o,t))(e)}return n},Be.prototype.getChildren=function(e,t){if(this.childrenField)return e[Ve(this.childrenField,t)]},Be);function Be(e){return Re.call(this,e)||this}ze.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:ze,deps:[{token:k}],target:i.ɵɵFactoryTarget.Directive}),ze.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:ze,selector:"[kendoMenuHierarchyBinding]",inputs:{data:["kendoMenuHierarchyBinding","data"],textField:"textField",urlField:"urlField",iconField:"iconField",disabledField:"disabledField",cssClassField:"cssClassField",cssStyleField:"cssStyleField",separatorField:"separatorField",childrenField:"childrenField"},exportAs:["kendoMenuHierarchyBinding"],usesInheritance:!0,ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:ze,decorators:[{type:l.Directive,args:[{exportAs:"kendoMenuHierarchyBinding",selector:"[kendoMenuHierarchyBinding]"}]}],ctorParameters:function(){return[{type:k}]},propDecorators:{data:[{type:l.Input,args:["kendoMenuHierarchyBinding"]}],textField:[{type:l.Input}],urlField:[{type:l.Input}],iconField:[{type:l.Input}],disabledField:[{type:l.Input}],cssClassField:[{type:l.Input}],cssStyleField:[{type:l.Input}],separatorField:[{type:l.Input}],childrenField:[{type:l.Input}]}});r(He,_e=w),He.prototype.mapItems=function(e){var t=this;if(!this.idField||!this.parentIdField)return e.map(function(e){return t.createItem(e)});for(var n=[],i={},r=0;r<e.length;r++){var o=e[r],s=this.createItem(o),a=Le(this.idField)(o),o=Le(this.parentIdField)(o);null==o?n.push(s):((o=i[o]=i[o]||{}).items=o.items||[],o.items.push(s)),i[a]&&(s.items=i[a].items),i[a]=s}return n},He.prototype.createItem=function(e){for(var t={data:e},n=this.fields,i=0;i<n.length;i++){var r=n[i],o=r.source;t[r.target]=Le(o)(e)}return t};var _e,w=He;function He(e){return _e.call(this,e)||this}w.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:w,deps:[{token:k}],target:i.ɵɵFactoryTarget.Directive}),w.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:w,selector:"[kendoMenuFlatBinding]",inputs:{data:["kendoMenuFlatBinding","data"],textField:"textField",urlField:"urlField",iconField:"iconField",disabledField:"disabledField",cssClassField:"cssClassField",cssStyleField:"cssStyleField",separatorField:"separatorField",idField:"idField",parentIdField:"parentIdField"},exportAs:["kendoMenuFlatBinding"],usesInheritance:!0,ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:w,decorators:[{type:l.Directive,args:[{exportAs:"kendoMenuFlatBinding",selector:"[kendoMenuFlatBinding]"}]}],ctorParameters:function(){return[{type:k}]},propDecorators:{data:[{type:l.Input,args:["kendoMenuFlatBinding"]}],textField:[{type:l.Input}],urlField:[{type:l.Input}],iconField:[{type:l.Input}],disabledField:[{type:l.Input}],cssClassField:[{type:l.Input}],cssStyleField:[{type:l.Input}],separatorField:[{type:l.Input}],idField:[{type:l.Input}],parentIdField:[{type:l.Input}]}});function Ze(){}var Ke,S=[F,y,g,f,v,ze,w,x,b],qe=K(K([],Z(S)),[C,be]),P=function(){},qe=(P.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:P,deps:[],target:i.ɵɵFactoryTarget.NgModule}),P.ɵmod=i.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:P,declarations:[F,y,g,f,v,ze,w,x,b,C,be],imports:[n.PopupModule,j.CommonModule],exports:[F,y,g,f,v,ze,w,x,b]}),P.ɵinj=i.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:P,imports:[[n.PopupModule,j.CommonModule]]}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:P,decorators:[{type:l.NgModule,args:[{declarations:[qe],exports:[S],imports:[n.PopupModule,j.CommonModule]}]}]}),r(Ue,Ke=Ze),Ue);function Ue(){return null!==Ke&&Ke.apply(this,arguments)||this}r(We,Xe=T);var Xe,Qe=We;function We(){return null!==Xe&&Xe.apply(this,arguments)||this}S=function(e){this.templateRef=e},S.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:S,deps:[{token:i.TemplateRef,optional:!0}],target:i.ɵɵFactoryTarget.Directive}),S.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:S,selector:"[kendoContextMenuTemplate]",ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:S,decorators:[{type:l.Directive,args:[{selector:"[kendoContextMenuTemplate]"}]}],ctorParameters:function(){return[{type:i.TemplateRef,decorators:[{type:l.Optional}]}]}}),$e.prototype.get=function(e){if(this.contextService.items)return this.contextService.items.get(e)},T=$e;function $e(e){this.contextService=e}T.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:T,deps:[{token:I}],target:i.ɵɵFactoryTarget.Injectable}),T.ɵprov=i.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:T}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:T,decorators:[{type:l.Injectable}],ctorParameters:function(){return[{type:I}]}});Ge.prototype.add=function(e){this.targets.push(e)},Ge.prototype.remove=function(e){e=this.targets.indexOf(e);this.targets.splice(e,1)},Ge.prototype.find=function(t){return this.targets.find(function(e){return e.element===t})};var A=Ge;function Ge(){this.targets=[]}A.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:A,deps:[],target:i.ɵɵFactoryTarget.Injectable}),A.ɵprov=i.ɵɵngDeclareInjectable({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:A}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:A,decorators:[{type:l.Injectable}]});var E=function(e,t){this.targetService=t,e&&(this.element=e.nativeElement)},Ye=(E.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:E,deps:[{token:i.ElementRef},{token:A}],target:i.ɵɵFactoryTarget.Directive}),E.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:E,selector:"[kendoContextMenuTargetContainer]",providers:[A],exportAs:["kendoContextMenuTargetContainer"],ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:E,decorators:[{type:l.Directive,args:[{selector:"[kendoContextMenuTargetContainer]",exportAs:"kendoContextMenuTargetContainer",providers:[A]}]}],ctorParameters:function(){return[{type:i.ElementRef},{type:A}]}}),"k-contextmenu-target"),Je=(et.prototype.ngOnDestroy=function(){this.targetService.remove(this)},et);function et(e,t){this.targetService=t,this.hostClass=!0,e&&(this.element=e.nativeElement),t.add(this)}Je.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:Je,deps:[{token:i.ElementRef},{token:A}],target:i.ɵɵFactoryTarget.Directive}),Je.ɵdir=i.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"12.2.16",type:Je,selector:"[kendoContextMenuTarget]",inputs:{data:["kendoContextMenuTarget","data"]},host:{properties:{"class.k-contextmenu-target":"this.hostClass"}},exportAs:["kendoContextMenuTarget"],ngImport:i}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:Je,decorators:[{type:l.Directive,args:[{selector:"[kendoContextMenuTarget]",exportAs:"kendoContextMenuTarget"}]}],ctorParameters:function(){return[{type:i.ElementRef},{type:A}]},propDecorators:{data:[{type:l.Input,args:["kendoContextMenuTarget"]}],hostClass:[{type:l.HostBinding,args:["class."+Ye]}]}});function tt(e){return e.preventDefault()}var nt,it="contextmenu",rt={horizontal:"left",vertical:"bottom"},ot={horizontal:"left",vertical:"top"},st={horizontal:"fit",vertical:"flip"},L=(r(V,nt=k),V.prototype.hide=function(){this.removePopup()},V.prototype.show=function(e){e&&(e=e,this.removePopup(),ve(e.left)&&ve(e.top)?this.createPopup({offset:e}):(this.currentTarget=e.nativeElement||e,this.createPopup({anchor:this.currentTarget})))},V.prototype.ngOnChanges=function(e){(e.target||e.showOn)&&this.bindShowHandler()},V.prototype.ngOnInit=function(){var n=this;this.ngZone.runOutsideAngular(function(){var e=n.renderer.listen("document","mousedown",function(e){n.popupRef&&!ue(e.target,function(e){return e===n.popupRef.popupElement})&&n.service.leaveMenu(e)&&n.closePopup(e)}),t=n.renderer.listen("window","blur",function(e){n.popupRef&&n.closePopup(e)});n.closeSubscription=function(){e(),t()}})},V.prototype.ngOnDestroy=function(){this.closeSubscription&&(this.closeSubscription(),this.closeSubscription=null),this.unbindShowHandler(),this.removePopup()},V.prototype.emitMenuEvent=function(e,t){t.target=this.currentTarget,(t.sender=this)[e].emit(t),"select"!==e||t.hasContent||this.closeAndFocus(t.originalEvent)},V.prototype.bindShowHandler=function(){var n=this;this.unbindShowHandler(),this.ngZone.runOutsideAngular(function(){var e,t=n.targetElement();t&&(e=n.showOn||it,n.showSubscription=n.renderer.listen(t,n.showOn||it,function(e){n.showContextMenu(e,t)}),e===it&&(n.keydownSubscription=n.renderer.listen(t,"keydown",function(e){e.shiftKey&&e.keyCode===a.Keys.F10&&n.showContextMenu(e,t)})))})},V.prototype.showContextMenu=function(e,t){var n,i,r,o=this,s=this.targetFilter(),a=t;if(s){if(n=e.target,s=s,(i=(t=t).getAttribute("id"))||t.setAttribute("id",le),r="#"+(i||le)+" "+s,s=ie(n,function(e){return((e=e).matches||e.msMatchesSelector).call(e,r)},t),i||t.removeAttribute("id"),(a=s)&&a!==e.target&&re(e.target))return;a&&this.directiveTarget&&(a=this.target.targetService.find(a))}a?this.ngZone.run(function(){o.closePopup(e)||(o.currentTarget=a,o.openPopup(e))}):this.closePopup(e)},V.prototype.unbindShowHandler=function(){this.showSubscription&&(this.showSubscription(),this.showSubscription=null),this.keydownSubscription&&(this.keydownSubscription(),this.keydownSubscription=null)},V.prototype.targetElement=function(){var e;if(a.isDocumentAvailable())return this.directiveTarget=!1,e=this.target,"string"==typeof e?e=document.querySelector(e):e&&e.nativeElement?e=e.nativeElement:e instanceof E&&(e=e.element,this.directiveTarget=!0),e},V.prototype.targetFilter=function(){return this.directiveTarget?"."+Ye:this.filter},V.prototype.closePopup=function(e){var t=this;if(this.popupRef)return this.popupAction("popupClose",e,function(){t.removePopup()})},V.prototype.removePopup=function(){this.popupRef&&(this.popupRef.close(),this.popupRef=null,this.currentTarget=null),this.popupSubscriptions&&(this.popupSubscriptions(),this.popupSubscriptions=null)},V.prototype.openPopup=function(n){var i=this;this.popupAction("popupOpen",n,function(){var e,t;n.preventDefault(),i.alignToAnchor||"keydown"===n.type?e=i.currentTargetElement:t={left:n.pageX,top:n.pageY},i.createPopup({anchor:e,offset:t})})},V.prototype.createPopup=function(e){var n=this,i=(this.popupRef=this.popupService.open(Object.assign({animate:!ve(this.popupAnimate)||this.popupAnimate,appendTo:this.appendTo,collision:this.collision||st,popupAlign:this.popupAlign||ot,anchorAlign:this.anchorAlign||rt,content:this.contentTemplate?this.contentTemplate.templateRef:this.defaultContentTemplate,popupClass:"k-menu-popup"},e)),this.popupRef.popupElement);this.renderer.addClass(i,"k-context-menu-popup"),this.renderer.setAttribute(i,"tabindex","-1"),this.renderer.setStyle(i,"outline","0"),this.ariaLabel&&this.renderer.setAttribute(i,"aria-label",this.ariaLabel),this.activeTarget=this.currentTargetElement===document.activeElement,this.ngZone.runOutsideAngular(function(){var e=n.renderer.listen(i,"keydown",n.popupKeyDownHandler),t=n.renderer.listen(i,"contextmenu",tt);n.popupSubscriptions=function(){e(),t()}}),i.focus()},V.prototype.closeAndFocus=function(e){var t=this.currentTargetElement;!this.closePopup(e)&&this.activeTarget&&t.focus()},V.prototype.popupKeyDownHandler=function(e){var t=this.popupRef.popupElement;e.keyCode!==a.Keys.Escape||!me(e.target,"k-menu-item")&&e.target!==t?e.target===t&&this.service.keydown.emit(e):this.closeAndFocus(e)},V.prototype.popupAction=function(e,t,n){var i=this,r=this[e],o=!1;return a.hasObservers(r)?this.ngZone.run(function(){var e=new Qe({originalEvent:t,sender:i,target:i.currentTarget});r.emit(e),e.isDefaultPrevented()||n(),o=e.isDefaultPrevented()}):n(),o},Object.defineProperty(V.prototype,"currentTargetElement",{get:function(){return this.directiveTarget&&this.currentTarget?this.currentTarget.element:this.currentTarget},enumerable:!1,configurable:!0}),V);function V(e,t,n,i){var r=nt.call(this)||this;return r.popupService=e,r.service=t,r.ngZone=n,r.renderer=i,r.showOn=it,r.alignToAnchor=!1,r.vertical=!0,r.popupOpen=new l.EventEmitter,r.popupClose=new l.EventEmitter,r.select=new l.EventEmitter,r.open=new l.EventEmitter,r.close=new l.EventEmitter,(r.service.owner=r).popupKeyDownHandler=r.popupKeyDownHandler.bind(r),r}L.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:L,deps:[{token:B.PopupService},{token:I},{token:i.NgZone},{token:i.Renderer2}],target:i.ɵɵFactoryTarget.Component}),L.ɵcmp=i.ɵɵngDeclareComponent({minVersion:"12.0.0",version:"12.2.16",type:L,selector:"kendo-contextmenu",inputs:{showOn:"showOn",target:"target",filter:"filter",alignToAnchor:"alignToAnchor",vertical:"vertical",popupAnimate:"popupAnimate",popupAlign:"popupAlign",anchorAlign:"anchorAlign",collision:"collision",appendTo:"appendTo",ariaLabel:"ariaLabel"},outputs:{popupOpen:"popupOpen",popupClose:"popupClose",select:"select",open:"open",close:"close"},providers:[I,t.LocalizationService,{provide:t.L10N_PREFIX,useValue:"kendo.contextmenu"},{provide:o,useClass:T},{provide:k,useExisting:l.forwardRef(function(){return L})},n.PopupService,{provide:n.POPUP_CONTAINER,useFactory:ye}],queries:[{propertyName:"contentTemplate",first:!0,predicate:S,descendants:!0}],viewQueries:[{propertyName:"defaultContentTemplate",first:!0,predicate:["default"],descendants:!0}],exportAs:["kendoContextMenu"],usesInheritance:!0,usesOnChanges:!0,ngImport:i,template:'\n <ng-template #default>\n <kendo-menu [items]="rootItems"\n [vertical]="vertical"\n [openOnClick]="openOnClick"\n [hoverDelay]="hoverDelay"\n [animate]="animate"\n [menuItemTemplate]="itemTemplate.first?.templateRef"\n [menuItemLinkTemplate]="itemLinkTemplate.first?.templateRef"\n ></kendo-menu>\n </ng-template>\n ',isInline:!0,components:[{type:F,selector:"kendo-menu",inputs:["menuItemTemplate","menuItemLinkTemplate"],outputs:["select","open","close"],exportAs:["kendoMenu"]}]}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:L,decorators:[{type:l.Component,args:[{exportAs:"kendoContextMenu",providers:[I,t.LocalizationService,{provide:t.L10N_PREFIX,useValue:"kendo.contextmenu"},{provide:o,useClass:T},{provide:k,useExisting:l.forwardRef(function(){return L})},n.PopupService,{provide:n.POPUP_CONTAINER,useFactory:ye}],selector:"kendo-contextmenu",template:'\n <ng-template #default>\n <kendo-menu [items]="rootItems"\n [vertical]="vertical"\n [openOnClick]="openOnClick"\n [hoverDelay]="hoverDelay"\n [animate]="animate"\n [menuItemTemplate]="itemTemplate.first?.templateRef"\n [menuItemLinkTemplate]="itemLinkTemplate.first?.templateRef"\n ></kendo-menu>\n </ng-template>\n '}]}],ctorParameters:function(){return[{type:B.PopupService},{type:I},{type:i.NgZone},{type:i.Renderer2}]},propDecorators:{showOn:[{type:l.Input}],target:[{type:l.Input}],filter:[{type:l.Input}],alignToAnchor:[{type:l.Input}],vertical:[{type:l.Input}],popupAnimate:[{type:l.Input}],popupAlign:[{type:l.Input}],anchorAlign:[{type:l.Input}],collision:[{type:l.Input}],appendTo:[{type:l.Input}],ariaLabel:[{type:l.Input}],popupOpen:[{type:l.Output}],popupClose:[{type:l.Output}],select:[{type:l.Output}],open:[{type:l.Output}],close:[{type:l.Output}],contentTemplate:[{type:l.ContentChild,args:[S,{static:!1}]}],defaultContentTemplate:[{type:l.ViewChild,args:["default",{static:!1}]}]}});t=[L,S,Je,E],T=function(){},T.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:T,deps:[],target:i.ɵɵFactoryTarget.NgModule}),T.ɵmod=i.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:T,declarations:[L,S,Je,E],imports:[n.PopupModule,j.CommonModule,P],exports:[L,S,Je,E,P]}),T.ɵinj=i.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:T,imports:[[n.PopupModule,j.CommonModule,P],P]}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:T,decorators:[{type:l.NgModule,args:[{declarations:[t],exports:[t,P],imports:[n.PopupModule,j.CommonModule,P]}]}]}),t=function(){};t.ɵfac=i.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:t,deps:[],target:i.ɵɵFactoryTarget.NgModule}),t.ɵmod=i.ɵɵngDeclareNgModule({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:t,exports:[P,T]}),t.ɵinj=i.ɵɵngDeclareInjector({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:t,imports:[P,T]}),i.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"12.2.16",ngImport:i,type:t,decorators:[{type:l.NgModule,args:[{exports:[P,T]}]}]}),e.ContextMenuComponent=L,e.ContextMenuEvent=Ze,e.ContextMenuModule=T,e.ContextMenuPopupEvent=Qe,e.ContextMenuSelectEvent=qe,e.ContextMenuService=I,e.ContextMenuTargetContainerDirective=E,e.ContextMenuTargetDirective=Je,e.ContextMenuTemplateDirective=S,e.ExpandArrowDirective=b,e.FlatBindingDirective=w,e.HierarchyBindingDirective=ze,e.ItemComponent=be,e.ItemContentTemplateDirective=v,e.ItemLinkTemplateDirective=f,e.ItemTemplateDirective=g,e.LinkDirective=x,e.ListComponent=C,e.MenuComponent=F,e.MenuEvent=Fe,e.MenuItemComponent=y,e.MenuModule=P,e.MenuSelectEvent=Se,e.MenusModule=t,Object.defineProperty(e,"__esModule",{value:!0})});
@@ -9,7 +9,7 @@ export const packageMetadata = {
9
9
  name: '@progress/kendo-angular-menu',
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
12
- publishDate: 1650441247,
12
+ publishDate: 1659509554,
13
13
  version: '',
14
14
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
15
15
  };
@@ -10,53 +10,46 @@ import * as i1 from "../services/items.service";
10
10
  * of the items to render the default expand arrow.
11
11
  */
12
12
  export class ExpandArrowDirective {
13
- constructor(itemsService) {
13
+ constructor(itemsService, element, renderer) {
14
14
  this.itemsService = itemsService;
15
+ this.element = element;
16
+ this.renderer = renderer;
15
17
  this.hostClasses = true;
16
18
  this.role = 'presentation';
17
19
  }
18
- get arrowDown() {
19
- return !this.item.horizontal;
20
- }
21
- get arrowRight() {
22
- return this.item.horizontal && !this.item.rtl;
23
- }
24
- get arrowLeft() {
25
- return this.item.horizontal && this.item.rtl;
26
- }
27
20
  ngOnInit() {
28
21
  if (isDevMode() && !this.index) {
29
22
  throw new Error('The kendoMenuExpandArrow directive requires the item index to be set.');
30
23
  }
31
24
  this.item = this.itemsService.get(this.index) || {};
25
+ this.createIconElement();
26
+ }
27
+ createIconElement() {
28
+ const iconClass = this.item.horizontal ?
29
+ this.item.rtl ?
30
+ 'k-i-arrow-60-left' :
31
+ 'k-i-arrow-60-right' :
32
+ 'k-i-arrow-60-down';
33
+ const iconElement = this.renderer.createElement('span');
34
+ this.renderer.addClass(iconElement, 'k-icon');
35
+ this.renderer.addClass(iconElement, iconClass);
36
+ this.renderer.appendChild(this.element.nativeElement, iconElement);
32
37
  }
33
38
  }
34
- ExpandArrowDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ExpandArrowDirective, deps: [{ token: i1.ItemsService }], target: i0.ɵɵFactoryTarget.Directive });
35
- ExpandArrowDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: ExpandArrowDirective, selector: "[kendoMenuExpandArrow]", inputs: { index: ["kendoMenuExpandArrow", "index"] }, host: { properties: { "class.k-icon": "this.hostClasses", "class.k-menu-expand-arrow": "this.hostClasses", "attr.role": "this.role", "class.k-i-arrow-60-down": "this.arrowDown", "class.k-i-arrow-60-right": "this.arrowRight", "class.k-i-arrow-60-left": "this.arrowLeft" } }, ngImport: i0 });
39
+ ExpandArrowDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ExpandArrowDirective, deps: [{ token: i1.ItemsService }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
40
+ ExpandArrowDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: ExpandArrowDirective, selector: "[kendoMenuExpandArrow]", inputs: { index: ["kendoMenuExpandArrow", "index"] }, host: { properties: { "class.k-menu-expand-arrow": "this.hostClasses", "attr.role": "this.role" } }, ngImport: i0 });
36
41
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ExpandArrowDirective, decorators: [{
37
42
  type: Directive,
38
43
  args: [{
39
44
  selector: '[kendoMenuExpandArrow]'
40
45
  }]
41
- }], ctorParameters: function () { return [{ type: i1.ItemsService }]; }, propDecorators: { index: [{
46
+ }], ctorParameters: function () { return [{ type: i1.ItemsService }, { type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { index: [{
42
47
  type: Input,
43
48
  args: ['kendoMenuExpandArrow']
44
49
  }], hostClasses: [{
45
- type: HostBinding,
46
- args: ['class.k-icon']
47
- }, {
48
50
  type: HostBinding,
49
51
  args: ['class.k-menu-expand-arrow']
50
52
  }], role: [{
51
53
  type: HostBinding,
52
54
  args: ['attr.role']
53
- }], arrowDown: [{
54
- type: HostBinding,
55
- args: ['class.k-i-arrow-60-down']
56
- }], arrowRight: [{
57
- type: HostBinding,
58
- args: ['class.k-i-arrow-60-right']
59
- }], arrowLeft: [{
60
- type: HostBinding,
61
- args: ['class.k-i-arrow-60-left']
62
55
  }] } });
@@ -27,7 +27,7 @@ export class LinkDirective {
27
27
  }
28
28
  }
29
29
  LinkDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LinkDirective, deps: [{ token: i1.ItemsService }], target: i0.ɵɵFactoryTarget.Directive });
30
- LinkDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: LinkDirective, selector: "[kendoMenuItemLink]", inputs: { index: ["kendoMenuItemLink", "index"] }, host: { properties: { "class.k-link": "this.hostClasses", "class.k-menu-link": "this.hostClasses", "attr.role": "this.role", "attr.tabindex": "this.tabindex", "class.k-state-active": "this.activeClass" } }, ngImport: i0 });
30
+ LinkDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: LinkDirective, selector: "[kendoMenuItemLink]", inputs: { index: ["kendoMenuItemLink", "index"] }, host: { properties: { "class.k-link": "this.hostClasses", "class.k-menu-link": "this.hostClasses", "attr.role": "this.role", "attr.tabindex": "this.tabindex", "class.k-active": "this.activeClass" } }, ngImport: i0 });
31
31
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LinkDirective, decorators: [{
32
32
  type: Directive,
33
33
  args: [{
@@ -50,5 +50,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
50
50
  args: ['attr.tabindex']
51
51
  }], activeClass: [{
52
52
  type: HostBinding,
53
- args: ['class.k-state-active']
53
+ args: ['class.k-active']
54
54
  }] } });
@@ -172,7 +172,7 @@ export class ListComponent {
172
172
  }
173
173
  }
174
174
  ListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListComponent, deps: [{ token: i1.ItemsService }, { token: i2.HoverService }, { token: i3.ActionsService }, { token: i4.NavigationService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
175
- ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ListComponent, selector: "[kendoMenuList]", inputs: { items: "items", level: "level", index: "index", animate: "animate", vertical: "vertical", rtl: "rtl", openOnClick: "openOnClick", itemTemplate: "itemTemplate", itemLinkTemplate: "itemLinkTemplate" }, ngImport: i0, template: "\n <ng-container *ngFor=\"let item of items; let idx = index\">\n <li *ngIf=\"!item.separator\" kendoMenuItem\n [item]=\"item\" [level]=\"level\" [vertical]=\"vertical\" [animate]=\"animate\" [rtl]=\"rtl\"\n [itemTemplate]=\"itemTemplate\" [itemLinkTemplate]=\"itemLinkTemplate\" [openOnClick]=\"openOnClick\"\n [index]=\"hierarchyIndex(idx)\" [siblingIndex]=\"idx\" [attr.data-kendo-menu-index]=\"hierarchyIndex(idx)\"\n [ngClass]=\"item.cssClass\" [ngStyle]=\"item.cssStyle\"\n role=\"menuitem\"\n class=\"k-item k-menu-item\"\n [class.k-first]=\"idx === 0\" [class.k-last]=\"idx === items.length - 1\"\n [class.k-state-disabled]=\"item.disabled\"></li>\n <li *ngIf=\"item.separator\" class=\"k-separator k-item\"\n role=\"separator\" [ngClass]=\"item.cssClass\" [ngStyle]=\"item.cssStyle\">\n &nbsp;\n </li>\n </ng-container>\n ", isInline: true, components: [{ type: i0.forwardRef(function () { return ItemComponent; }), selector: "[kendoMenuItem]", inputs: ["item", "level", "index", "siblingIndex", "animate", "vertical", "rtl", "openOnClick", "itemTemplate", "itemLinkTemplate"] }], directives: [{ type: i0.forwardRef(function () { return i5.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i0.forwardRef(function () { return i5.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i0.forwardRef(function () { return i5.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i0.forwardRef(function () { return i5.NgStyle; }), selector: "[ngStyle]", inputs: ["ngStyle"] }] });
175
+ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ListComponent, selector: "[kendoMenuList]", inputs: { items: "items", level: "level", index: "index", animate: "animate", vertical: "vertical", rtl: "rtl", openOnClick: "openOnClick", itemTemplate: "itemTemplate", itemLinkTemplate: "itemLinkTemplate" }, ngImport: i0, template: "\n <ng-container *ngFor=\"let item of items; let idx = index\">\n <li *ngIf=\"!item.separator\" kendoMenuItem\n [item]=\"item\" [level]=\"level\" [vertical]=\"vertical\" [animate]=\"animate\" [rtl]=\"rtl\"\n [itemTemplate]=\"itemTemplate\" [itemLinkTemplate]=\"itemLinkTemplate\" [openOnClick]=\"openOnClick\"\n [index]=\"hierarchyIndex(idx)\" [siblingIndex]=\"idx\" [attr.data-kendo-menu-index]=\"hierarchyIndex(idx)\"\n [ngClass]=\"item.cssClass\" [ngStyle]=\"item.cssStyle\"\n role=\"menuitem\"\n class=\"k-item k-menu-item\"\n [class.k-first]=\"idx === 0\" [class.k-last]=\"idx === items.length - 1\"\n [class.k-disabled]=\"item.disabled\"></li>\n <li *ngIf=\"item.separator\" class=\"k-separator k-item\"\n role=\"separator\" [ngClass]=\"item.cssClass\" [ngStyle]=\"item.cssStyle\">\n &nbsp;\n </li>\n </ng-container>\n ", isInline: true, components: [{ type: i0.forwardRef(function () { return ItemComponent; }), selector: "[kendoMenuItem]", inputs: ["item", "level", "index", "siblingIndex", "animate", "vertical", "rtl", "openOnClick", "itemTemplate", "itemLinkTemplate"] }], directives: [{ type: i0.forwardRef(function () { return i5.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i0.forwardRef(function () { return i5.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i0.forwardRef(function () { return i5.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i0.forwardRef(function () { return i5.NgStyle; }), selector: "[ngStyle]", inputs: ["ngStyle"] }] });
176
176
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListComponent, decorators: [{
177
177
  type: Component,
178
178
  args: [{
@@ -187,7 +187,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
187
187
  role="menuitem"
188
188
  class="k-item k-menu-item"
189
189
  [class.k-first]="idx === 0" [class.k-last]="idx === items.length - 1"
190
- [class.k-state-disabled]="item.disabled"></li>
190
+ [class.k-disabled]="item.disabled"></li>
191
191
  <li *ngIf="item.separator" class="k-separator k-item"
192
192
  role="separator" [ngClass]="item.cssClass" [ngStyle]="item.cssStyle">
193
193
  &nbsp;
@@ -391,12 +391,12 @@ ItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
391
391
  useFactory: bodyFactory
392
392
  }], viewQueries: [{ propertyName: "link", first: true, predicate: ["link"], descendants: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }], ngImport: i0, template: `
393
393
  <span *ngIf="!hasLink && !item.content && !linkTemplate" class="k-link k-menu-link" #link
394
- [class.k-state-active]="opened" role="presentation">
394
+ [class.k-active]="opened" role="presentation">
395
395
  <ng-template [ngTemplateOutlet]="itemcontent">
396
396
  </ng-template>
397
397
  </span>
398
398
  <a *ngIf="item.url && !linkTemplate" class="k-link k-menu-link" #link [attr.href]="item.url"
399
- [class.k-state-active]="opened" tabindex="-1" role="presentation">
399
+ [class.k-active]="opened" tabindex="-1" role="presentation">
400
400
  <ng-template [ngTemplateOutlet]="itemcontent">
401
401
  </ng-template>
402
402
  </a>
@@ -433,11 +433,13 @@ ItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
433
433
  </ng-container>
434
434
  <ng-template *ngIf="template" [ngTemplateOutlet]="template" [ngTemplateOutletContext]="{ item: item, index: index }">
435
435
  </ng-template>
436
- <span class="k-icon k-menu-expand-arrow" *ngIf="hasContent"
437
- role="presentation"
438
- [class.k-i-arrow-60-down]="!horizontal"
439
- [class.k-i-arrow-60-right]="horizontal && !rtl"
440
- [class.k-i-arrow-60-left]="horizontal && rtl">
436
+ <span *ngIf="hasContent" class="k-menu-expand-arrow" role="presentation">
437
+ <span class="k-icon"
438
+ [class.k-i-arrow-60-down]="!horizontal"
439
+ [class.k-i-arrow-60-right]="horizontal && !rtl"
440
+ [class.k-i-arrow-60-left]="horizontal && rtl"
441
+ >
442
+ </span>
441
443
  </span>
442
444
  </ng-template>
443
445
  `, isInline: true, components: [{ type: ListComponent, selector: "[kendoMenuList]", inputs: ["items", "level", "index", "animate", "vertical", "rtl", "openOnClick", "itemTemplate", "itemLinkTemplate"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
@@ -451,12 +453,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
451
453
  selector: '[kendoMenuItem]',
452
454
  template: `
453
455
  <span *ngIf="!hasLink && !item.content && !linkTemplate" class="k-link k-menu-link" #link
454
- [class.k-state-active]="opened" role="presentation">
456
+ [class.k-active]="opened" role="presentation">
455
457
  <ng-template [ngTemplateOutlet]="itemcontent">
456
458
  </ng-template>
457
459
  </span>
458
460
  <a *ngIf="item.url && !linkTemplate" class="k-link k-menu-link" #link [attr.href]="item.url"
459
- [class.k-state-active]="opened" tabindex="-1" role="presentation">
461
+ [class.k-active]="opened" tabindex="-1" role="presentation">
460
462
  <ng-template [ngTemplateOutlet]="itemcontent">
461
463
  </ng-template>
462
464
  </a>
@@ -493,11 +495,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
493
495
  </ng-container>
494
496
  <ng-template *ngIf="template" [ngTemplateOutlet]="template" [ngTemplateOutletContext]="{ item: item, index: index }">
495
497
  </ng-template>
496
- <span class="k-icon k-menu-expand-arrow" *ngIf="hasContent"
497
- role="presentation"
498
- [class.k-i-arrow-60-down]="!horizontal"
499
- [class.k-i-arrow-60-right]="horizontal && !rtl"
500
- [class.k-i-arrow-60-left]="horizontal && rtl">
498
+ <span *ngIf="hasContent" class="k-menu-expand-arrow" role="presentation">
499
+ <span class="k-icon"
500
+ [class.k-i-arrow-60-down]="!horizontal"
501
+ [class.k-i-arrow-60-right]="horizontal && !rtl"
502
+ [class.k-i-arrow-60-left]="horizontal && rtl"
503
+ >
504
+ </span>
501
505
  </span>
502
506
  </ng-template>
503
507
  `
@@ -20,7 +20,7 @@ const packageMetadata = {
20
20
  name: '@progress/kendo-angular-menu',
21
21
  productName: 'Kendo UI for Angular',
22
22
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
23
- publishDate: 1650441247,
23
+ publishDate: 1659509554,
24
24
  version: '',
25
25
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
26
26
  };
@@ -1367,7 +1367,7 @@ class ListComponent {
1367
1367
  }
1368
1368
  }
1369
1369
  ListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListComponent, deps: [{ token: ItemsService }, { token: HoverService }, { token: ActionsService }, { token: NavigationService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
1370
- ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ListComponent, selector: "[kendoMenuList]", inputs: { items: "items", level: "level", index: "index", animate: "animate", vertical: "vertical", rtl: "rtl", openOnClick: "openOnClick", itemTemplate: "itemTemplate", itemLinkTemplate: "itemLinkTemplate" }, ngImport: i0, template: "\n <ng-container *ngFor=\"let item of items; let idx = index\">\n <li *ngIf=\"!item.separator\" kendoMenuItem\n [item]=\"item\" [level]=\"level\" [vertical]=\"vertical\" [animate]=\"animate\" [rtl]=\"rtl\"\n [itemTemplate]=\"itemTemplate\" [itemLinkTemplate]=\"itemLinkTemplate\" [openOnClick]=\"openOnClick\"\n [index]=\"hierarchyIndex(idx)\" [siblingIndex]=\"idx\" [attr.data-kendo-menu-index]=\"hierarchyIndex(idx)\"\n [ngClass]=\"item.cssClass\" [ngStyle]=\"item.cssStyle\"\n role=\"menuitem\"\n class=\"k-item k-menu-item\"\n [class.k-first]=\"idx === 0\" [class.k-last]=\"idx === items.length - 1\"\n [class.k-state-disabled]=\"item.disabled\"></li>\n <li *ngIf=\"item.separator\" class=\"k-separator k-item\"\n role=\"separator\" [ngClass]=\"item.cssClass\" [ngStyle]=\"item.cssStyle\">\n &nbsp;\n </li>\n </ng-container>\n ", isInline: true, components: [{ type: i0.forwardRef(function () { return ItemComponent; }), selector: "[kendoMenuItem]", inputs: ["item", "level", "index", "siblingIndex", "animate", "vertical", "rtl", "openOnClick", "itemTemplate", "itemLinkTemplate"] }], directives: [{ type: i0.forwardRef(function () { return i5.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i0.forwardRef(function () { return i5.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i0.forwardRef(function () { return i5.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i0.forwardRef(function () { return i5.NgStyle; }), selector: "[ngStyle]", inputs: ["ngStyle"] }] });
1370
+ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ListComponent, selector: "[kendoMenuList]", inputs: { items: "items", level: "level", index: "index", animate: "animate", vertical: "vertical", rtl: "rtl", openOnClick: "openOnClick", itemTemplate: "itemTemplate", itemLinkTemplate: "itemLinkTemplate" }, ngImport: i0, template: "\n <ng-container *ngFor=\"let item of items; let idx = index\">\n <li *ngIf=\"!item.separator\" kendoMenuItem\n [item]=\"item\" [level]=\"level\" [vertical]=\"vertical\" [animate]=\"animate\" [rtl]=\"rtl\"\n [itemTemplate]=\"itemTemplate\" [itemLinkTemplate]=\"itemLinkTemplate\" [openOnClick]=\"openOnClick\"\n [index]=\"hierarchyIndex(idx)\" [siblingIndex]=\"idx\" [attr.data-kendo-menu-index]=\"hierarchyIndex(idx)\"\n [ngClass]=\"item.cssClass\" [ngStyle]=\"item.cssStyle\"\n role=\"menuitem\"\n class=\"k-item k-menu-item\"\n [class.k-first]=\"idx === 0\" [class.k-last]=\"idx === items.length - 1\"\n [class.k-disabled]=\"item.disabled\"></li>\n <li *ngIf=\"item.separator\" class=\"k-separator k-item\"\n role=\"separator\" [ngClass]=\"item.cssClass\" [ngStyle]=\"item.cssStyle\">\n &nbsp;\n </li>\n </ng-container>\n ", isInline: true, components: [{ type: i0.forwardRef(function () { return ItemComponent; }), selector: "[kendoMenuItem]", inputs: ["item", "level", "index", "siblingIndex", "animate", "vertical", "rtl", "openOnClick", "itemTemplate", "itemLinkTemplate"] }], directives: [{ type: i0.forwardRef(function () { return i5.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i0.forwardRef(function () { return i5.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i0.forwardRef(function () { return i5.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i0.forwardRef(function () { return i5.NgStyle; }), selector: "[ngStyle]", inputs: ["ngStyle"] }] });
1371
1371
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListComponent, decorators: [{
1372
1372
  type: Component,
1373
1373
  args: [{
@@ -1382,7 +1382,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
1382
1382
  role="menuitem"
1383
1383
  class="k-item k-menu-item"
1384
1384
  [class.k-first]="idx === 0" [class.k-last]="idx === items.length - 1"
1385
- [class.k-state-disabled]="item.disabled"></li>
1385
+ [class.k-disabled]="item.disabled"></li>
1386
1386
  <li *ngIf="item.separator" class="k-separator k-item"
1387
1387
  role="separator" [ngClass]="item.cssClass" [ngStyle]="item.cssStyle">
1388
1388
  &nbsp;
@@ -1586,12 +1586,12 @@ ItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
1586
1586
  useFactory: bodyFactory
1587
1587
  }], viewQueries: [{ propertyName: "link", first: true, predicate: ["link"], descendants: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }], ngImport: i0, template: `
1588
1588
  <span *ngIf="!hasLink && !item.content && !linkTemplate" class="k-link k-menu-link" #link
1589
- [class.k-state-active]="opened" role="presentation">
1589
+ [class.k-active]="opened" role="presentation">
1590
1590
  <ng-template [ngTemplateOutlet]="itemcontent">
1591
1591
  </ng-template>
1592
1592
  </span>
1593
1593
  <a *ngIf="item.url && !linkTemplate" class="k-link k-menu-link" #link [attr.href]="item.url"
1594
- [class.k-state-active]="opened" tabindex="-1" role="presentation">
1594
+ [class.k-active]="opened" tabindex="-1" role="presentation">
1595
1595
  <ng-template [ngTemplateOutlet]="itemcontent">
1596
1596
  </ng-template>
1597
1597
  </a>
@@ -1628,11 +1628,13 @@ ItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
1628
1628
  </ng-container>
1629
1629
  <ng-template *ngIf="template" [ngTemplateOutlet]="template" [ngTemplateOutletContext]="{ item: item, index: index }">
1630
1630
  </ng-template>
1631
- <span class="k-icon k-menu-expand-arrow" *ngIf="hasContent"
1632
- role="presentation"
1633
- [class.k-i-arrow-60-down]="!horizontal"
1634
- [class.k-i-arrow-60-right]="horizontal && !rtl"
1635
- [class.k-i-arrow-60-left]="horizontal && rtl">
1631
+ <span *ngIf="hasContent" class="k-menu-expand-arrow" role="presentation">
1632
+ <span class="k-icon"
1633
+ [class.k-i-arrow-60-down]="!horizontal"
1634
+ [class.k-i-arrow-60-right]="horizontal && !rtl"
1635
+ [class.k-i-arrow-60-left]="horizontal && rtl"
1636
+ >
1637
+ </span>
1636
1638
  </span>
1637
1639
  </ng-template>
1638
1640
  `, isInline: true, components: [{ type: ListComponent, selector: "[kendoMenuList]", inputs: ["items", "level", "index", "animate", "vertical", "rtl", "openOnClick", "itemTemplate", "itemLinkTemplate"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
@@ -1646,12 +1648,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
1646
1648
  selector: '[kendoMenuItem]',
1647
1649
  template: `
1648
1650
  <span *ngIf="!hasLink && !item.content && !linkTemplate" class="k-link k-menu-link" #link
1649
- [class.k-state-active]="opened" role="presentation">
1651
+ [class.k-active]="opened" role="presentation">
1650
1652
  <ng-template [ngTemplateOutlet]="itemcontent">
1651
1653
  </ng-template>
1652
1654
  </span>
1653
1655
  <a *ngIf="item.url && !linkTemplate" class="k-link k-menu-link" #link [attr.href]="item.url"
1654
- [class.k-state-active]="opened" tabindex="-1" role="presentation">
1656
+ [class.k-active]="opened" tabindex="-1" role="presentation">
1655
1657
  <ng-template [ngTemplateOutlet]="itemcontent">
1656
1658
  </ng-template>
1657
1659
  </a>
@@ -1688,11 +1690,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
1688
1690
  </ng-container>
1689
1691
  <ng-template *ngIf="template" [ngTemplateOutlet]="template" [ngTemplateOutletContext]="{ item: item, index: index }">
1690
1692
  </ng-template>
1691
- <span class="k-icon k-menu-expand-arrow" *ngIf="hasContent"
1692
- role="presentation"
1693
- [class.k-i-arrow-60-down]="!horizontal"
1694
- [class.k-i-arrow-60-right]="horizontal && !rtl"
1695
- [class.k-i-arrow-60-left]="horizontal && rtl">
1693
+ <span *ngIf="hasContent" class="k-menu-expand-arrow" role="presentation">
1694
+ <span class="k-icon"
1695
+ [class.k-i-arrow-60-down]="!horizontal"
1696
+ [class.k-i-arrow-60-right]="horizontal && !rtl"
1697
+ [class.k-i-arrow-60-left]="horizontal && rtl"
1698
+ >
1699
+ </span>
1696
1700
  </span>
1697
1701
  </ng-template>
1698
1702
  `
@@ -1994,7 +1998,7 @@ class LinkDirective {
1994
1998
  }
1995
1999
  }
1996
2000
  LinkDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LinkDirective, deps: [{ token: ItemsService }], target: i0.ɵɵFactoryTarget.Directive });
1997
- LinkDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: LinkDirective, selector: "[kendoMenuItemLink]", inputs: { index: ["kendoMenuItemLink", "index"] }, host: { properties: { "class.k-link": "this.hostClasses", "class.k-menu-link": "this.hostClasses", "attr.role": "this.role", "attr.tabindex": "this.tabindex", "class.k-state-active": "this.activeClass" } }, ngImport: i0 });
2001
+ LinkDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: LinkDirective, selector: "[kendoMenuItemLink]", inputs: { index: ["kendoMenuItemLink", "index"] }, host: { properties: { "class.k-link": "this.hostClasses", "class.k-menu-link": "this.hostClasses", "attr.role": "this.role", "attr.tabindex": "this.tabindex", "class.k-active": "this.activeClass" } }, ngImport: i0 });
1998
2002
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LinkDirective, decorators: [{
1999
2003
  type: Directive,
2000
2004
  args: [{
@@ -2017,7 +2021,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
2017
2021
  args: ['attr.tabindex']
2018
2022
  }], activeClass: [{
2019
2023
  type: HostBinding,
2020
- args: ['class.k-state-active']
2024
+ args: ['class.k-active']
2021
2025
  }] } });
2022
2026
 
2023
2027
  /**
@@ -2025,55 +2029,48 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
2025
2029
  * of the items to render the default expand arrow.
2026
2030
  */
2027
2031
  class ExpandArrowDirective {
2028
- constructor(itemsService) {
2032
+ constructor(itemsService, element, renderer) {
2029
2033
  this.itemsService = itemsService;
2034
+ this.element = element;
2035
+ this.renderer = renderer;
2030
2036
  this.hostClasses = true;
2031
2037
  this.role = 'presentation';
2032
2038
  }
2033
- get arrowDown() {
2034
- return !this.item.horizontal;
2035
- }
2036
- get arrowRight() {
2037
- return this.item.horizontal && !this.item.rtl;
2038
- }
2039
- get arrowLeft() {
2040
- return this.item.horizontal && this.item.rtl;
2041
- }
2042
2039
  ngOnInit() {
2043
2040
  if (isDevMode() && !this.index) {
2044
2041
  throw new Error('The kendoMenuExpandArrow directive requires the item index to be set.');
2045
2042
  }
2046
2043
  this.item = this.itemsService.get(this.index) || {};
2044
+ this.createIconElement();
2045
+ }
2046
+ createIconElement() {
2047
+ const iconClass = this.item.horizontal ?
2048
+ this.item.rtl ?
2049
+ 'k-i-arrow-60-left' :
2050
+ 'k-i-arrow-60-right' :
2051
+ 'k-i-arrow-60-down';
2052
+ const iconElement = this.renderer.createElement('span');
2053
+ this.renderer.addClass(iconElement, 'k-icon');
2054
+ this.renderer.addClass(iconElement, iconClass);
2055
+ this.renderer.appendChild(this.element.nativeElement, iconElement);
2047
2056
  }
2048
2057
  }
2049
- ExpandArrowDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ExpandArrowDirective, deps: [{ token: ItemsService }], target: i0.ɵɵFactoryTarget.Directive });
2050
- ExpandArrowDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: ExpandArrowDirective, selector: "[kendoMenuExpandArrow]", inputs: { index: ["kendoMenuExpandArrow", "index"] }, host: { properties: { "class.k-icon": "this.hostClasses", "class.k-menu-expand-arrow": "this.hostClasses", "attr.role": "this.role", "class.k-i-arrow-60-down": "this.arrowDown", "class.k-i-arrow-60-right": "this.arrowRight", "class.k-i-arrow-60-left": "this.arrowLeft" } }, ngImport: i0 });
2058
+ ExpandArrowDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ExpandArrowDirective, deps: [{ token: ItemsService }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
2059
+ ExpandArrowDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: ExpandArrowDirective, selector: "[kendoMenuExpandArrow]", inputs: { index: ["kendoMenuExpandArrow", "index"] }, host: { properties: { "class.k-menu-expand-arrow": "this.hostClasses", "attr.role": "this.role" } }, ngImport: i0 });
2051
2060
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ExpandArrowDirective, decorators: [{
2052
2061
  type: Directive,
2053
2062
  args: [{
2054
2063
  selector: '[kendoMenuExpandArrow]'
2055
2064
  }]
2056
- }], ctorParameters: function () { return [{ type: ItemsService }]; }, propDecorators: { index: [{
2065
+ }], ctorParameters: function () { return [{ type: ItemsService }, { type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { index: [{
2057
2066
  type: Input,
2058
2067
  args: ['kendoMenuExpandArrow']
2059
2068
  }], hostClasses: [{
2060
- type: HostBinding,
2061
- args: ['class.k-icon']
2062
- }, {
2063
2069
  type: HostBinding,
2064
2070
  args: ['class.k-menu-expand-arrow']
2065
2071
  }], role: [{
2066
2072
  type: HostBinding,
2067
2073
  args: ['attr.role']
2068
- }], arrowDown: [{
2069
- type: HostBinding,
2070
- args: ['class.k-i-arrow-60-down']
2071
- }], arrowRight: [{
2072
- type: HostBinding,
2073
- args: ['class.k-i-arrow-60-right']
2074
- }], arrowLeft: [{
2075
- type: HostBinding,
2076
- args: ['class.k-i-arrow-60-left']
2077
2074
  }] } });
2078
2075
 
2079
2076
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-angular-menu",
3
- "version": "4.0.0",
3
+ "version": "4.0.1",
4
4
  "description": "Kendo UI Angular Menu component",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "author": "Progress",
@@ -66,11 +66,11 @@
66
66
  "fallbackTags": {
67
67
  "dev": "latest"
68
68
  },
69
- "analyzeCommits": "@telerik/semantic-prerelease/analyzeCommits",
69
+ "analyzeCommits": "@progress/semantic-prerelease/analyzeCommits",
70
70
  "generateNotes": "@progress/kendo-angular-tasks/lib/generateNotes",
71
- "getLastRelease": "@telerik/semantic-prerelease/getLastRelease",
72
- "verifyConditions": "@telerik/semantic-prerelease/verifyConditions",
73
- "verifyRelease": "@telerik/semantic-prerelease/verifyRelease"
71
+ "getLastRelease": "@progress/semantic-prerelease/getLastRelease",
72
+ "verifyConditions": "@progress/semantic-prerelease/verifyConditions",
73
+ "verifyRelease": "@progress/semantic-prerelease/verifyRelease"
74
74
  },
75
75
  "main": "bundles/kendo-angular-menu.umd.js",
76
76
  "module": "fesm2015/kendo-angular-menu.js",
@@ -2,7 +2,7 @@
2
2
  * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- import { OnInit } from '@angular/core';
5
+ import { OnInit, ElementRef, Renderer2 } from '@angular/core';
6
6
  import { ItemsService } from '../services/items.service';
7
7
  import * as i0 from "@angular/core";
8
8
  /**
@@ -11,18 +11,18 @@ import * as i0 from "@angular/core";
11
11
  */
12
12
  export declare class ExpandArrowDirective implements OnInit {
13
13
  private itemsService;
14
+ private element;
15
+ private renderer;
14
16
  /**
15
17
  * The index of the Menu item. The input is mandatory.
16
18
  */
17
19
  index: string;
18
20
  hostClasses: boolean;
19
21
  role: string;
20
- get arrowDown(): boolean;
21
- get arrowRight(): boolean;
22
- get arrowLeft(): boolean;
23
22
  private item;
24
- constructor(itemsService: ItemsService);
23
+ constructor(itemsService: ItemsService, element: ElementRef, renderer: Renderer2);
25
24
  ngOnInit(): void;
25
+ private createIconElement;
26
26
  static ɵfac: i0.ɵɵFactoryDeclaration<ExpandArrowDirective, never>;
27
27
  static ɵdir: i0.ɵɵDirectiveDeclaration<ExpandArrowDirective, "[kendoMenuExpandArrow]", never, { "index": "kendoMenuExpandArrow"; }, {}, never>;
28
28
  }