New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@progress/kendo-angular-treeview

Package Overview
Dependencies
Maintainers
1
Versions
909
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@progress/kendo-angular-treeview - npm Package Compare versions

Comparing version 0.2.0-dev.201801031208 to 0.2.0-dev.201801051556

dist/es/disable.directive.d.ts

4

dist/cdn/js/kendo-angular-treeview.js

@@ -1,2 +0,2 @@

!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("tslib"),require("@angular/core"),require("rxjs/Subject"),require("rxjs/Subscription"),require("rxjs/BehaviorSubject"),require("rxjs/Observable"),require("@angular/animations"),require("rxjs/add/operator/do"),require("rxjs/add/operator/catch"),require("rxjs/add/observable/of"),require("rxjs/add/observable/empty"),require("@angular/common"),require("rxjs/add/observable/merge"),require("rxjs/add/operator/map"),require("rxjs/add/operator/filter"),require("rxjs/add/operator/delay"),require("rxjs/add/operator/takeUntil"),require("rxjs/add/operator/switchMap")):"function"==typeof define&&define.amd?define(["tslib","@angular/core","rxjs/Subject","rxjs/Subscription","rxjs/BehaviorSubject","rxjs/Observable","@angular/animations","rxjs/add/operator/do","rxjs/add/operator/catch","rxjs/add/observable/of","rxjs/add/observable/empty","@angular/common","rxjs/add/observable/merge","rxjs/add/operator/map","rxjs/add/operator/filter","rxjs/add/operator/delay","rxjs/add/operator/takeUntil","rxjs/add/operator/switchMap"],t):"object"==typeof exports?exports.KendoAngularTreeview=t(require("tslib"),require("@angular/core"),require("rxjs/Subject"),require("rxjs/Subscription"),require("rxjs/BehaviorSubject"),require("rxjs/Observable"),require("@angular/animations"),require("rxjs/add/operator/do"),require("rxjs/add/operator/catch"),require("rxjs/add/observable/of"),require("rxjs/add/observable/empty"),require("@angular/common"),require("rxjs/add/observable/merge"),require("rxjs/add/operator/map"),require("rxjs/add/operator/filter"),require("rxjs/add/operator/delay"),require("rxjs/add/operator/takeUntil"),require("rxjs/add/operator/switchMap")):e.KendoAngularTreeview=t(e.tslib,e["@angular/core"],e["rxjs/Subject"],e["rxjs/Subscription"],e["rxjs/BehaviorSubject"],e["rxjs/Observable"],e["@angular/animations"],e["rxjs/add/operator/do"],e["rxjs/add/operator/catch"],e["rxjs/add/observable/of"],e["rxjs/add/observable/empty"],e["@angular/common"],e["rxjs/add/observable/merge"],e["rxjs/add/operator/map"],e["rxjs/add/operator/filter"],e["rxjs/add/operator/delay"],e["rxjs/add/operator/takeUntil"],e["rxjs/add/operator/switchMap"])}(this,function(e,t,n,i,r,o,a,s,d,c,p,u,l,h,f,v,y,m){return function(e){function t(i){if(n[i])return n[i].exports;var r=n[i]={exports:{},id:i,loaded:!1};return e[i].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(1);t.TreeViewComponent=i.TreeViewComponent;var r=n(19);t.TreeViewModule=r.TreeViewModule;var o=n(4);t.NodeTemplateDirective=o.NodeTemplateDirective;var a=n(29);t.CheckDirective=a.CheckDirective;var s=n(32);t.ExpandDirective=s.ExpandDirective;var d=n(33);t.SelectDirective=d.SelectDirective;var c=n(34);t.HierarchyBindingDirective=c.HierarchyBindingDirective;var p=n(40);t.FlatDataBindingDirective=p.FlatDataBindingDirective},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(4),a=n(5),s=n(7),d=n(8),c=n(9),p=n(13),u=n(14),l=n(11),h=n(15),f=n(16),v=n(17),y=n(18),m=[a.ExpandStateService,s.IndexBuilderService,u.TreeViewLookupService,d.LoadingNotificationService,c.NavigationService,p.SelectionService],_=function(){function e(e,t,n,i,o){this.expandService=e,this.navigationService=t,this.selectionService=n,this.treeViewLookupService=i,this.element=o,this.classNames=!0,this.onBlur=new r.EventEmitter,this.onFocus=new r.EventEmitter,this.expand=new r.EventEmitter,this.collapse=new r.EventEmitter,this.checkedChange=new r.EventEmitter,this.selectionChange=new r.EventEmitter,this.navigable=!0,this.checkboxes=!1,this.data=new v.BehaviorSubject([]),this.subscriptions=new f.Subscription(function(){}),this._animate=!0,this.resolvedPromise=Promise.resolve(null),this.children=function(){return y.Observable.of([])}}return Object.defineProperty(e.prototype,"role",{get:function(){return"tree"},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"animate",{get:function(){return!this._animate},set:function(e){this._animate=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"nodes",{set:function(e){this.data.next(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasChildren",{get:function(){return this._hasChildren||h.hasChildren},set:function(e){this._hasChildren=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isChecked",{get:function(){return this._isChecked||h.isChecked},set:function(e){this._isChecked=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isExpanded",{get:function(){return this._isExpanded||h.isExpanded},set:function(e){this._isExpanded=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isSelected",{get:function(){return this._isSelected||h.isSelected},set:function(e){this._isSelected=e},enumerable:!0,configurable:!0}),e.prototype.handleKeydown=function(e){this.isActive&&l.hasActiveNode(e.target)&&this.navigationService.move(e)},e.prototype.handleFocusin=function(e){var t=e.target,n=l.closestNode(t);l.hasActiveNode(t,n)&&this.activateAndEmit(l.nodeId(n))},e.prototype.handleClick=function(e){var t=e.target,n=l.closestNode(t),i=l.nodeId(n);l.hasActiveNode(t,n)&&i&&(this.activateAndEmit(i),this.navigationService.selectIndex(i))},e.prototype.handleFocusout=function(e){var t=this,n=e.target,i=n.getAttribute("data-treeindex");this.resolvedPromise.then(function(){t.navigationService.isActive(i)&&(t.navigationService.deactivate(),t.isActive=!1,t.onBlur.emit())})},e.prototype.ngOnChanges=function(e){this.checkboxes=Boolean(this._isChecked),this.expandIcons=Boolean(this._isExpanded&&this._hasChildren),this.navigationService.navigable=Boolean(this.navigable)},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.ngOnInit=function(){var e=this;this.subscriptions.add(this.expandService.changes.subscribe(function(t){var n=t.index,i=t.dataItem,r=t.expand;return r?e.expand.emit({index:n,dataItem:i}):e.collapse.emit({index:n,dataItem:i})})),this.subscriptions.add(this.navigationService.checks.subscribe(function(t){return e.checkedChange.emit(e.treeViewLookupService.itemLookup(t))})),this.subscriptions.add(this.selectionService.changes.subscribe(function(t){return e.selectionChange.emit(t)}))},e.prototype.blur=function(){if(l.isDocumentAvailable()){var e=l.focusableNode(this.element);document.activeElement===e&&e.blur()}},e.prototype.focus=function(e){this.navigationService.activateIndex(e);var t=l.focusableNode(this.element);t&&t.focus()},e.prototype.activateAndEmit=function(e){var t=this;e&&(this.navigationService.activateIndex(e),this.resolvedPromise.then(function(){t.navigationService.isActive(e)&&(t.isActive=!0,t.onFocus.emit())}))},i.__decorate([r.HostBinding("class.k-widget"),r.HostBinding("class.k-treeview"),i.__metadata("design:type",Boolean)],e.prototype,"classNames",void 0),i.__decorate([r.HostBinding("attr.role"),i.__metadata("design:type",String),i.__metadata("design:paramtypes",[])],e.prototype,"role",null),i.__decorate([r.Input(),r.HostBinding("@.disabled"),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[Boolean])],e.prototype,"animate",null),i.__decorate([r.Output("blur"),i.__metadata("design:type",r.EventEmitter)],e.prototype,"onBlur",void 0),i.__decorate([r.Output("focus"),i.__metadata("design:type",r.EventEmitter)],e.prototype,"onFocus",void 0),i.__decorate([r.Output(),i.__metadata("design:type",r.EventEmitter)],e.prototype,"expand",void 0),i.__decorate([r.Output(),i.__metadata("design:type",r.EventEmitter)],e.prototype,"collapse",void 0),i.__decorate([r.Output(),i.__metadata("design:type",r.EventEmitter)],e.prototype,"checkedChange",void 0),i.__decorate([r.Output(),i.__metadata("design:type",r.EventEmitter)],e.prototype,"selectionChange",void 0),i.__decorate([r.ContentChild(o.NodeTemplateDirective),i.__metadata("design:type",o.NodeTemplateDirective)],e.prototype,"nodeTemplate",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Array),i.__metadata("design:paramtypes",[Array])],e.prototype,"nodes",null),i.__decorate([r.Input(),i.__metadata("design:type",Object)],e.prototype,"textField",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"hasChildren",null),i.__decorate([r.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isChecked",null),i.__decorate([r.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isExpanded",null),i.__decorate([r.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isSelected",null),i.__decorate([r.Input(),i.__metadata("design:type",Boolean)],e.prototype,"navigable",void 0),i.__decorate([r.HostListener("keydown",["$event"]),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Object]),i.__metadata("design:returntype",void 0)],e.prototype,"handleKeydown",null),i.__decorate([r.HostListener("focusin",["$event"]),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Object]),i.__metadata("design:returntype",void 0)],e.prototype,"handleFocusin",null),i.__decorate([r.HostListener("click",["$event"]),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Object]),i.__metadata("design:returntype",void 0)],e.prototype,"handleClick",null),i.__decorate([r.HostListener("focusout",["$event"]),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Object]),i.__metadata("design:returntype",void 0)],e.prototype,"handleFocusout",null),i.__decorate([r.Input(),i.__metadata("design:type",Function)],e.prototype,"children",void 0),e=i.__decorate([r.Component({changeDetection:r.ChangeDetectionStrategy.OnPush,exportAs:"kendoTreeView",providers:m,selector:"kendo-treeview",template:'\n <ul class="k-treeview-lines"\n kendoTreeViewGroup\n role="group"\n [checkboxes]="checkboxes"\n [expandIcons]="expandIcons"\n [children]="children"\n [hasChildren]="hasChildren"\n [isChecked]="isChecked"\n [isExpanded]="isExpanded"\n [isSelected]="isSelected"\n [nodeTemplateRef]="nodeTemplate?.templateRef"\n [nodes]="data"\n [textField]="textField"\n >\n </ul>\n '}),i.__metadata("design:paramtypes",[a.ExpandStateService,c.NavigationService,p.SelectionService,u.TreeViewLookupService,r.ElementRef])],e)}();t.TreeViewComponent=_},function(t,n){t.exports=e},function(e,n){e.exports=t},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=function(){function e(e){this.templateRef=e}return e=i.__decorate([r.Directive({selector:"[kendoTreeViewNodeTemplate]"}),i.__param(0,r.Optional()),i.__metadata("design:paramtypes",[r.TemplateRef])],e)}();t.NodeTemplateDirective=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(6),a=function(){function e(){this.changes=new o.Subject}return e.prototype.expand=function(e,t){this.changes.next({dataItem:t,index:e,expand:!0})},e.prototype.collapse=function(e,t){this.changes.next({dataItem:t,index:e,expand:!1})},e=i.__decorate([r.Injectable()],e)}();t.ExpandStateService=a},function(e,t){e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=function(){function e(){this.INDEX_SEPARATOR="_"}return e.prototype.nodeIndex=function(e,t){return void 0===e&&(e=""),void 0===t&&(t=""),""+t+(t?this.INDEX_SEPARATOR:"")+e},e.prototype.indexForLevel=function(e,t){return e.split(this.INDEX_SEPARATOR).slice(0,t).join(this.INDEX_SEPARATOR)},e.prototype.level=function(e){return e.split(this.INDEX_SEPARATOR).length},e=i.__decorate([r.Injectable()],e)}();t.IndexBuilderService=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(6),a=function(){function e(){this.changes=new o.Subject}return e.prototype.notifyLoaded=function(e){this.changes.next(e)},e=i.__decorate([r.Injectable()],e)}();t.LoadingNotificationService=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(10),a=n(11),s=n(12),d=n(6),c=function(e,t){return e[t]||e},p=function(){function e(){var e=this;this.expands=new d.Subject,this.moves=new d.Subject,this.checks=new d.Subject,this.selects=new d.Subject,this.navigable=!0,this.actions=(t={},t[s.Keys.up]=function(){return e.activate(c(e.focusableItem,"prev"))},t[s.Keys.down]=function(){return e.activate(c(e.focusableItem,"next"))},t[s.Keys.left]=function(){return e.expand({expand:!1,intercept:e.moveToParent.bind(e)})},t[s.Keys.right]=function(){return e.expand({expand:!0,intercept:e.moveToChild.bind(e)})},t[s.Keys.home]=function(){return e.activate(e.model.firstNode())},t[s.Keys.end]=function(){return e.activate(e.model.lastNode())},t[s.Keys.enter]=function(){return e.navigable&&e.selectIndex(a.nodeIndex(e.activeItem))},t[s.Keys.space]=function(){return e.navigable&&e.checkIndex(a.nodeIndex(e.activeItem))},t),this.isFocused=!1,this._model=new o.NavigationModel;var t}return Object.defineProperty(e.prototype,"model",{get:function(){return this._model},set:function(e){this._model=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"activeIndex",{get:function(){return a.nodeIndex(this.activeItem)||null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"focusableItem",{get:function(){return this.activeItem||this.model.firstNode()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isActiveExpanded",{get:function(){return this.activeItem&&this.activeItem.children.length>0},enumerable:!0,configurable:!0}),e.prototype.activate=function(e){this.navigable&&e&&!this.isActive(a.nodeIndex(e))&&(this.isFocused=!0,this.activeItem=e||this.activeItem,this.notifyMove())},e.prototype.activateParent=function(e){this.activate(this.model.findParent(e))},e.prototype.activateIndex=function(e){e&&this.activate(this.model.findNode(e))},e.prototype.deactivate=function(){this.navigable&&this.isFocused&&(this.isFocused=!1,this.notifyMove())},e.prototype.checkIndex=function(e){this.checks.next(e)},e.prototype.selectIndex=function(e){this.selects.next(e)},e.prototype.isActive=function(e){return!!e&&(this.isFocused&&this.activeIndex===e)},e.prototype.isFocusable=function(e){return a.nodeIndex(this.focusableItem)===e},e.prototype.registerItem=function(e){this.model.registerItem(e)},e.prototype.unregisterItem=function(e){this.isActive(e)&&this.activateParent(e),this.model.unregisterItem(e)},e.prototype.move=function(e){if(this.navigable){var t=this.actions[e.keyCode];t&&(t(),e.preventDefault())}},e.prototype.expand=function(e){var t=e.expand,n=e.intercept,i=a.nodeIndex(this.activeItem);i&&!n(i)&&this.notifyExpand(t)},e.prototype.moveToParent=function(){return!this.isActiveExpanded&&(this.activate(this.model.findParent(a.nodeIndex(this.activeItem))),!0)},e.prototype.moveToChild=function(){return!!this.isActiveExpanded&&(this.activate(this.model.findChild(a.nodeIndex(this.activeItem))),!0)},e.prototype.notifyExpand=function(e){this.expands.next(this.navigationState(e))},e.prototype.notifyMove=function(){this.moves.next(this.navigationState())},e.prototype.navigationState=function(e){return void 0===e&&(e=!1),{expand:e,index:a.nodeIndex(this.activeItem),isFocused:this.isFocused}},e=i.__decorate([r.Injectable()],e)}();t.NavigationService=p},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(7),r=function(e){return e[e.length-1]},o=function(e){return e||{}},a=function(e){return o(e).children||[]},s=function(e){for(var t=e,n=[].concat(a(e));n.length;)n=n.concat(a(r(n))),t=n.shift();return t},d=function(e){var t=e.prev,n=e.next;t&&(t.next=e),n&&(n.prev=e)},c=function(e){var t=e.prev,n=e.next;t&&(t.next=n),n&&(n.prev=t)},p=function(){function e(){this.ib=new i.IndexBuilderService,this.nodes=[]}return e.prototype.firstNode=function(){return this.nodes[0]||null},e.prototype.lastNode=function(){var e=this.nodes[this.nodes.length-1];return e?s(r(this.container(e)))||e:null},e.prototype.findNode=function(e){return this.find(e,this.nodes)},e.prototype.findParent=function(e){var t=this.ib.level(e)-1;return this.findNode(this.ib.indexForLevel(e,t))},e.prototype.findChild=function(e){return a(this.findNode(e))[0]||null},e.prototype.registerItem=function(e){var t=[],n=this.ib.level(e),i=this.findParent(e);if(i||1===n){var r=this.prevNode(i),o=this.nextNode(i),a={children:t,index:e,parent:i,prev:r,next:o};this.container(i).push(a),d(a)}},e.prototype.unregisterItem=function(e){var t=this.find(e,this.nodes);if(t){c(t);var n=this.container(t.parent);n.splice(n.indexOf(t),1)}},e.prototype.childLevel=function(e){return e&&e.length?this.ib.level(e[0].index):1},e.prototype.find=function(e,t){var n=this.childLevel(t),i=this.ib.indexForLevel(e,n),r=n===this.ib.level(e),o=t.find(function(e){return e.index===i});return o?r?o:this.find(e,o.children):null},e.prototype.container=function(e){return e?e.children:this.nodes},e.prototype.prevNode=function(e){return s(r(this.container(e)))||e||null},e.prototype.nextNode=function(e){if(!e)return null;var t=this.container(this.findParent(e.index));return t[t.indexOf(e)+1]||null},e}();t.NavigationModel=p},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.noop=function(){},t.isPresent=function(e){return null!==e&&void 0!==e},t.isBlank=function(e){return null===e||void 0===e},t.isArray=function(e){return Array.isArray(e)},t.isNullOrEmptyString=function(e){return t.isBlank(e)||0===e.trim().length},t.isDocumentAvailable=function(){return"undefined"!=typeof document},t.isChanged=function(e,t,n){return void 0===n&&(n=!0),t[e]&&(!t[e].isFirstChange()||!n)&&t[e].previousValue!==t[e].currentValue},t.anyChanged=function(e,n,i){return void 0===i&&(i=!0),e.some(function(e){return t.isChanged(e,n,i)})},t.closestNode=function(e){return e.closest("li.k-item")},t.focusableNode=function(e){return e.nativeElement.querySelector('li[tabindex="0"]')},t.hasActiveNode=function(e,n){var i=n||t.closestNode(e);return i&&(i===e||e.tabIndex<0)},t.nodeId=function(e){return void 0===e&&(e={getAttribute:t.noop}),e.getAttribute("data-treeindex")},t.nodeIndex=function(e){return(e||{}).index},t.guid=function(){for(var e,t="",n=0;n<32;n++)e=16*Math.random()|0,8!==n&&12!==n&&16!==n&&20!==n||(t+="-"),t+=(12===n?4:16===n?3&e|8:e).toString(16);return t}},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n;!function(e){e[e.enter=13]="enter",e[e.shift=16]="shift",e[e.space=32]="space",e[e.end=35]="end",e[e.home=36]="home",e[e.left=37]="left",e[e.up=38]="up",e[e.right=39]="right",e[e.down=40]="down"}(n=t.Keys||(t.Keys={}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(6),a=function(){function e(){this.changes=new o.Subject}return e.prototype.isFirstSelected=function(e){return this.firstIndex===e},e.prototype.setFirstSelected=function(e,t){this.firstIndex===e&&t===!1?this.firstIndex=null:!this.firstIndex&&t&&(this.firstIndex=e)},e.prototype.select=function(e,t){this.changes.next({dataItem:t,index:e})},e=i.__decorate([r.Injectable()],e)}();t.SelectionService=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(11),a=function(){function e(){this.map=new Map}return e.prototype.registerItem=function(e,t){var n={children:[],item:e,parent:this.item(o.nodeIndex(t))};this.map.set(e.index,n)},e.prototype.registerChildren=function(e,t){var n=this.item(e);n&&(n.children=t)},e.prototype.unregisterItem=function(e){this.map.delete(e)},e.prototype.replaceItem=function(e,t,n){var i=this.item(e);i&&t&&(this.unregisterItem(e),this.registerItem(t,n),e===t.index&&this.registerChildren(t.index,i.children.slice()))},e.prototype.itemLookup=function(e){var t=this.item(e);return t?{children:this.mapChildren(t.children),item:t.item,parent:t.parent}:null},e.prototype.hasItem=function(e){return this.map.has(e)},e.prototype.item=function(e){return this.map.get(e)||null},e.prototype.mapChildren=function(e){var t=this;return e.map(function(e){var n=t.item(e.index),i=n.item,r=n.parent,o=n.children;return{children:t.mapChildren(o),item:i,parent:r}})},e=i.__decorate([r.Injectable()],e)}();t.TreeViewLookupService=a},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hasChildren=function(){return!1},t.isChecked=function(){return"none"},t.isExpanded=function(){return!0},t.isSelected=function(){return!1}},function(e,t){e.exports=i},function(e,t){e.exports=r},function(e,t){e.exports=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(1),a=n(20),s=n(4),d=n(29),c=n(32),p=n(33),u=n(34),l=n(40),h=[o.TreeViewComponent,s.NodeTemplateDirective,d.CheckDirective,c.ExpandDirective,p.SelectDirective,u.HierarchyBindingDirective,l.FlatDataBindingDirective],f=function(){function e(){}return e=i.__decorate([r.NgModule({exports:[h],imports:[a.SharedModule]})],e)}();t.TreeViewModule=f},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(1),a=n(21),s=n(28),d=n(4),c=n(29),p=n(32),u=n(33),l=n(34),h=n(35),f=n(40),v=n(42),y=n(43),m=n(44),_=[o.TreeViewComponent,a.TreeViewGroupComponent,v.TreeViewItemDirective,y.TreeViewItemContentDirective,d.NodeTemplateDirective,c.CheckDirective,p.ExpandDirective,u.SelectDirective,l.HierarchyBindingDirective,h.LoadingIndicatorDirective,f.FlatDataBindingDirective],g=function(){function e(){}return e=i.__decorate([r.NgModule({declarations:[_],exports:[_],imports:[s.CommonModule,m.CheckBoxModule]})],e)}();t.SharedModule=g},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(22),a=n(5),s=n(7),d=n(14),c=n(9),p=n(11),u=n(23),l=n(8),h=n(18);n(24),n(25),n(26),n(27);var f=function(){function e(e,t,n,i,r,o){this.expandService=e,this.loadingService=t,this.indexBuilder=n,this.treeViewLookupService=i,this.navigationService=r,this.cd=o,this.kGroupClass=!0,this.textField="",this._data=[],this.isChecked=function(){return"none"},this.isExpanded=function(){return!1},this.isSelected=function(){return!1},this.children=function(){return h.Observable.of([])},this.hasChildren=function(){return!1}}return Object.defineProperty(e.prototype,"role",{get:function(){return"group"},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"data",{get:function(){return this._data},set:function(e){this._data=e,this.updateParentChildren()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasTemplate",{get:function(){return p.isPresent(this.nodeTemplateRef)},enumerable:!0,configurable:!0}),e.prototype.expandNode=function(e,t,n){n?this.expandService.expand(e,t):this.expandService.collapse(e,t)},e.prototype.checkNode=function(e){this.navigationService.checkIndex(e),this.navigationService.activateIndex(e)},e.prototype.nodeIndex=function(e){return this.indexBuilder.nodeIndex(e.toString(),this.parentIndex)},e.prototype.nodeText=function(e){var t=p.isArray(this.textField)?this.textField[0]:this.textField;return u.getter(t,!0)(e)},e.prototype.ngOnDestroy=function(){this.subscription&&this.subscription.unsubscribe()},e.prototype.ngOnInit=function(){var e=this;this.subscription=this.nodes.subscribe(function(t){e.data=t,e.cd.markForCheck()})},e.prototype.ngOnChanges=function(e){e.parentIndex&&this.updateParentChildren()},e.prototype.fetchChildren=function(e,t){var n=this;return this.children(e).catch(function(){return n.loadingService.notifyLoaded(t),h.Observable.empty()}).do(function(){return n.loadingService.notifyLoaded(t)})},Object.defineProperty(e.prototype,"nextFields",{get:function(){return p.isArray(this.textField)?this.textField.length>1?this.textField.slice(1):this.textField:[this.textField]},enumerable:!0,configurable:!0}),e.prototype.updateParentChildren=function(){var e=this.parentIndex?this.mapToTreeItem(this.data):[];this.treeViewLookupService.registerChildren(this.parentIndex,e)},e.prototype.mapToTreeItem=function(e){var t=this;return e.map(function(e,n){return{dataItem:e,index:t.nodeIndex(n)}})},i.__decorate([r.HostBinding("class.k-group"),i.__metadata("design:type",Boolean)],e.prototype,"kGroupClass",void 0),i.__decorate([r.HostBinding("attr.role"),i.__metadata("design:type",String),i.__metadata("design:paramtypes",[])],e.prototype,"role",null),i.__decorate([r.Input(),i.__metadata("design:type",Boolean)],e.prototype,"checkboxes",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Boolean)],e.prototype,"expandIcons",void 0),i.__decorate([r.Input(),i.__metadata("design:type",h.Observable)],e.prototype,"nodes",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Object)],e.prototype,"textField",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Object)],e.prototype,"parentDataItem",void 0),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"parentIndex",void 0),i.__decorate([r.Input(),i.__metadata("design:type",r.TemplateRef)],e.prototype,"nodeTemplateRef",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Function)],e.prototype,"isChecked",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Function)],e.prototype,"isExpanded",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Function)],e.prototype,"isSelected",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Function)],e.prototype,"children",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Function)],e.prototype,"hasChildren",void 0),e=i.__decorate([r.Component({animations:[o.trigger("toggle",[o.transition("void => *",[o.style({height:0}),o.animate("0.1s ease-in",o.style({height:"*"}))]),o.transition("* => void",[o.style({height:"*"}),o.animate("0.1s ease-in",o.style({height:0}))])])],selector:"[kendoTreeViewGroup]",template:'\n <li\n *ngFor="let node of data; let index = index" class="k-item"\n kendoTreeViewItem\n [dataItem]="node"\n [index]="nodeIndex(index)"\n [parentDataItem]="parentDataItem"\n [parentIndex]="parentIndex"\n [isChecked]="isChecked(node, nodeIndex(index))"\n [isExpanded]="isExpanded(node, nodeIndex(index))"\n [isSelected]="isSelected(node, nodeIndex(index))"\n [attr.data-treeindex]="nodeIndex(index)"\n >\n <div class="k-mid">\n <span\n class="k-icon"\n [class.k-i-collapse]="isExpanded(node, nodeIndex(index))"\n [class.k-i-expand]="!isExpanded(node, nodeIndex(index))"\n [kendoTreeViewLoading]="nodeIndex(index)"\n (click)="expandNode(nodeIndex(index), node, !isExpanded(node, nodeIndex(index)))"\n *ngIf="expandIcons && hasChildren(node)"\n >\n </span>\n <kendo-checkbox\n *ngIf="checkboxes"\n [checkState]="isChecked(node, nodeIndex(index))"\n (checkStateChange)="checkNode(nodeIndex(index))"\n tabindex="-1"\n ></kendo-checkbox>\n <span kendoTreeViewItemContent\n [attr.data-treeindex]="nodeIndex(index)"\n [dataItem]="node"\n [index]="nodeIndex(index)"\n [isSelected]="isSelected"\n class="k-in"\n >\n <ng-container [ngSwitch]="hasTemplate">\n <ng-container *ngSwitchCase="true">\n <ng-template\n [ngTemplateOutlet]="nodeTemplateRef" [ngTemplateOutletContext]="{$implicit: node, index: nodeIndex(index)}"\n >\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{nodeText(node)}}\n </ng-container>\n </ng-container>\n </span>\n </div>\n <ul\n *ngIf="isExpanded(node, nodeIndex(index)) && hasChildren(node)"\n kendoTreeViewGroup\n role="group"\n [nodes]="fetchChildren(node, nodeIndex(index))"\n [checkboxes]="checkboxes"\n [expandIcons]="expandIcons"\n [children]="children"\n [hasChildren]="hasChildren"\n [isChecked]="isChecked"\n [isExpanded]="isExpanded"\n [isSelected]="isSelected"\n [nodeTemplateRef]="nodeTemplateRef"\n [parentIndex]="nodeIndex(index)"\n [parentDataItem]="node"\n [textField]="nextFields"\n [@toggle]="true"\n >\n </ul>\n </li>\n '}),i.__metadata("design:paramtypes",[a.ExpandStateService,l.LoadingNotificationService,s.IndexBuilderService,d.TreeViewLookupService,c.NavigationService,r.ChangeDetectorRef])],e)}();t.TreeViewGroupComponent=f},function(e,t){e.exports=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(11),r=/\[(?:(\d+)|['"](.*?)['"])\]|((?:(?!\[.*?\]|\.).)+)/g,o={};o.undefined=function(e){return e},t.getter=function(e,t){var n=e+t;if(o[n])return o[n];var a=[];return e.replace(r,function(e,t,n,r){a.push(i.isPresent(t)?t:n||r)}),o[n]=function(e){for(var n=e,r=0;r<a.length;r++)if(n=n[a[r]],!i.isPresent(n)&&t)return n;return n},o[n]}},function(e,t){e.exports=s},function(e,t){e.exports=d},function(e,t){e.exports=c},function(e,t){e.exports=p},function(e,t){e.exports=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(1),a=n(11),s=n(16);n(30),n(31);var d=function(e,t){return e.filter(function(e){return e===t}).length>0},c=function(){function e(e){var t=this;this.treeView=e,this.checkedKeys=[],this.checkedKeysChange=new r.EventEmitter,this.subscriptions=new s.Subscription(function(){}),this.checkActions={multiple:function(e){return t.checkMultiple(e)},single:function(e){return t.checkSingle(e)}}}return Object.defineProperty(e.prototype,"isChecked",{set:function(e){this.treeView.isChecked=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"options",{get:function(){var e={checkChildren:!0,checkParents:!0,enabled:!0,mode:"multiple"};if(!a.isPresent(this.checkable))return e;var t="boolean"==typeof this.checkable,n=t?{enabled:this.checkable}:this.checkable;return Object.assign(e,n)},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.subscriptions.add(this.treeView.checkedChange.subscribe(function(t){return e.check(t)})),this.treeView.checkboxes=!0,this.treeView.isChecked=this.isItemChecked.bind(this)},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.isItemChecked=function(e,t){if(!this.checkKey)return this.isIndexChecked(t);var n=this.checkedKeys.indexOf(this.itemKey({dataItem:e,index:t}));return n>-1?"checked":"none"},e.prototype.isIndexChecked=function(e){var t=this.checkedKeys.filter(function(t){return 0===t.indexOf(e)});if(d(t,e))return"checked";var n=this.options,i=n.mode,r=n.checkParents;return"multiple"===i&&r&&t.length?"indeterminate":"none"},e.prototype.itemKey=function(e){return this.checkKey?"string"==typeof this.checkKey?e.dataItem[this.checkKey]:"function"==typeof this.checkKey?this.checkKey(e):void 0:e.index},e.prototype.check=function(e){var t=this.options,n=t.enabled,i=t.mode,r=this.checkActions[i]||a.noop;n&&r(e)},e.prototype.checkSingle=function(e){var t=this.itemKey(e.item);this.checkedKeys=this.checkedKeys[0]!==t?[t]:[],this.notify()},e.prototype.checkMultiple=function(e){this.checkNode(e),this.options.checkParents&&this.checkParents(e.parent),
this.notify()},e.prototype.checkNode=function(e,t){var n=this,i=this.itemKey(e.item),r=this.checkedKeys.indexOf(i),o=r>-1,s=void 0===t?!o:t;!a.isPresent(i)||o&&t||(o?this.checkedKeys.splice(r,1):this.checkedKeys.push(i),this.options.checkChildren&&e.children.map(function(e){return n.checkNode(e,s)}))},e.prototype.checkParents=function(e){for(var t=e;t;){var n=this.itemKey(t.item),i=this.checkedKeys.indexOf(n);this.allChildrenSelected(t.children)?i===-1&&this.checkedKeys.push(n):i>-1&&this.checkedKeys.splice(i,1),t=t.parent}},e.prototype.allChildrenSelected=function(e){var t=this,n=function(e,n){return e&&"checked"===t.isItemChecked(n.dataItem,n.index)};return e.reduce(n,!0)},e.prototype.notify=function(){this.checkedKeysChange.emit(this.checkedKeys.slice())},i.__decorate([r.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isChecked",null),i.__decorate([r.Input("checkBy"),i.__metadata("design:type",Object)],e.prototype,"checkKey",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Array)],e.prototype,"checkedKeys",void 0),i.__decorate([r.Input("kendoTreeViewCheckable"),i.__metadata("design:type",Object)],e.prototype,"checkable",void 0),i.__decorate([r.Output(),i.__metadata("design:type",r.EventEmitter)],e.prototype,"checkedKeysChange",void 0),e=i.__decorate([r.Directive({selector:"[kendoTreeViewCheckable]"}),i.__metadata("design:paramtypes",[o.TreeViewComponent])],e)}();t.CheckDirective=c},function(e,t){e.exports=l},function(e,t){e.exports=h},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(1),a=n(16),s=n(18);n(30),n(31);var d=function(){function e(e){this.treeView=e,this.expandedKeysChange=new r.EventEmitter,this.expandedKeys=[],this.subscriptions=new a.Subscription(function(){})}return Object.defineProperty(e.prototype,"isExpanded",{set:function(e){this.treeView.isExpanded=e},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.subscriptions.add(s.Observable.merge(this.treeView.expand.map(function(e){return i.__assign({expand:!0},e)}),this.treeView.collapse.map(function(e){return i.__assign({expand:!1},e)})).subscribe(this.toggleExpand.bind(this))),this.treeView.expandIcons=!0,this.treeView.isExpanded=function(t,n){return e.expandedKeys.indexOf(e.itemKey({dataItem:t,index:n}))>-1}},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.itemKey=function(e){if(this.expandKey){if("string"==typeof this.expandKey)return e.dataItem[this.expandKey];if("function"==typeof this.expandKey)return this.expandKey(e)}return e.index},e.prototype.toggleExpand=function(e){var t=e.index,n=e.dataItem,i=e.expand,r=this.itemKey({index:t,dataItem:n}),o=this.expandedKeys.indexOf(r),a=!1;o>-1&&!i?(this.expandedKeys.splice(o,1),a=!0):o===-1&&i&&(this.expandedKeys.push(r),a=!0),a&&this.expandedKeysChange.emit(this.expandedKeys)},i.__decorate([r.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isExpanded",null),i.__decorate([r.Input("expandBy"),i.__metadata("design:type",Object)],e.prototype,"expandKey",void 0),i.__decorate([r.Output(),i.__metadata("design:type",r.EventEmitter)],e.prototype,"expandedKeysChange",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Array)],e.prototype,"expandedKeys",void 0),e=i.__decorate([r.Directive({selector:"[kendoTreeViewExpandable]"}),i.__metadata("design:paramtypes",[o.TreeViewComponent])],e)}();t.ExpandDirective=d},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(1),a=n(11),s=n(16);n(30),n(31);var d=function(){function e(e){var t=this;this.treeView=e,this.selectedKeys=[],this.selectedKeysChange=new r.EventEmitter,this.subscriptions=new s.Subscription(function(){}),this.selectActions={multiple:function(e){return t.selectMultiple(e)},single:function(e){return t.selectSingle(e)}}}return Object.defineProperty(e.prototype,"isSelected",{set:function(e){this.treeView.isSelected=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"getAriaMultiselectable",{get:function(){return"multiple"===this.options.mode},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"options",{get:function(){var e={enabled:!0,mode:"single"};if(!a.isPresent(this.selection))return e;var t="boolean"==typeof this.selection,n=t?{enabled:this.selection}:this.selection;return Object.assign(e,n)},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.subscriptions.add(this.treeView.selectionChange.subscribe(this.select.bind(this))),this.treeView.isSelected=function(t,n){return e.selectedKeys.indexOf(e.itemKey({dataItem:t,index:n}))>-1}},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.itemKey=function(e){return this.selectKey?"string"==typeof this.selectKey?e.dataItem[this.selectKey]:"function"==typeof this.selectKey?this.selectKey(e):void 0:e.index},e.prototype.select=function(e){var t=this.options,n=t.enabled,i=t.mode,r=this.selectActions[i]||a.noop;n&&r(e)},e.prototype.selectSingle=function(e){var t=this.itemKey(e);this.selectedKeys[0]!==t&&(this.selectedKeys=[t],this.notify())},e.prototype.selectMultiple=function(e){var t=this.itemKey(e),n=this.selectedKeys.indexOf(t),i=n>-1;a.isPresent(t)&&(i?this.selectedKeys.splice(n,1):this.selectedKeys.push(t),this.notify())},e.prototype.notify=function(){this.selectedKeysChange.emit(this.selectedKeys.slice())},i.__decorate([r.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isSelected",null),i.__decorate([r.Input("selectBy"),i.__metadata("design:type",Object)],e.prototype,"selectKey",void 0),i.__decorate([r.Input("kendoTreeViewSelectable"),i.__metadata("design:type",Object)],e.prototype,"selection",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Array)],e.prototype,"selectedKeys",void 0),i.__decorate([r.Output(),i.__metadata("design:type",r.EventEmitter)],e.prototype,"selectedKeysChange",void 0),i.__decorate([r.HostBinding("attr.aria-multiselectable"),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[])],e.prototype,"getAriaMultiselectable",null),e=i.__decorate([r.Directive({selector:"[kendoTreeViewSelectable]"}),i.__metadata("design:paramtypes",[o.TreeViewComponent])],e)}();t.SelectDirective=d},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(1),a=n(23),s=n(11),d=n(15),c=n(18);n(26);var p=function(){function e(e){this.treeView=e}return Object.defineProperty(e.prototype,"childrenField",{get:function(){return this._childrenField},set:function(e){if(!e)throw new Error("'childrenField' cannot be empty");this._childrenField=e},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;s.isPresent(this.childrenField)&&(this.treeView.children=function(t){return c.Observable.of(a.getter(e.childrenField,!0)(t))},this.treeView.hasChildren=function(t){return e.childrenField in t},this.treeView.isExpanded!==d.isExpanded&&(this.treeView.expandIcons=!0))},i.__decorate([r.Input(),i.__metadata("design:type",String),i.__metadata("design:paramtypes",[String])],e.prototype,"childrenField",null),e=i.__decorate([r.Directive({selector:"[kendoTreeViewHierarchyBinding]"}),i.__metadata("design:paramtypes",[o.TreeViewComponent])],e)}();t.HierarchyBindingDirective=p},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(5),a=n(8),s=n(18);n(36),n(37),n(38),n(39),n(26);var d=function(){function e(e,t,n){this.expandService=e,this.loadingService=t,this.cd=n,this._loading=!1}return Object.defineProperty(e.prototype,"loading",{get:function(){return this._loading},set:function(e){this._loading=e,this.cd.markForCheck()},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this,t=this.loadingService.changes.filter(function(t){return t===e.index});this.subscription=this.expandService.changes.filter(function(t){var n=t.index;return n===e.index}).do(function(t){var n=t.expand;!n&&e.loading&&(e.loading=!1)}).filter(function(e){var t=e.expand;return t}).switchMap(function(e){return s.Observable.of(e).delay(100).takeUntil(t)}).subscribe(function(){return e.loading=!0}),this.subscription.add(t.subscribe(function(){return e.loading=!1}))},e.prototype.ngOnDestroy=function(){this.subscription&&this.subscription.unsubscribe()},i.__decorate([r.HostBinding("class.k-i-loading"),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[Boolean])],e.prototype,"loading",null),i.__decorate([r.Input("kendoTreeViewLoading"),i.__metadata("design:type",String)],e.prototype,"index",void 0),e=i.__decorate([r.Directive({selector:"[kendoTreeViewLoading]"}),i.__metadata("design:paramtypes",[o.ExpandStateService,a.LoadingNotificationService,r.ChangeDetectorRef])],e)}();t.LoadingIndicatorDirective=d},function(e,t){e.exports=f},function(e,t){e.exports=v},function(e,t){e.exports=y},function(e,t){e.exports=m},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(1),a=n(23),s=n(11),d=n(41),c=n(18),p=function(e,t,n){return t.filter(function(t){return e(t)===n})},u=function(){function e(e){this.treeView=e,this.originalData=[]}return Object.defineProperty(e.prototype,"nodes",{set:function(e){if(this.originalData=e||[],s.isNullOrEmptyString(this.parentIdField))this.treeView.nodes=this.originalData.slice(0);else{var t=a.getter(this.parentIdField,!0);this.treeView.nodes=this.originalData.filter(d.compose(s.isBlank,t))}},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;if(s.isPresent(this.parentIdField)&&s.isPresent(this.idField)){var t=function(t){return p(a.getter(e.parentIdField,!0),e.originalData||[],a.getter(e.idField,!0)(t))};this.treeView.hasChildren=function(e){return t(e).length>0},this.treeView.children=function(e){return c.Observable.of(t(e))}}},e.prototype.ngOnChanges=function(e){s.isChanged("parentIdField",e,!1)&&(this.nodes=this.originalData)},i.__decorate([r.Input(),i.__metadata("design:type",Array),i.__metadata("design:paramtypes",[Array])],e.prototype,"nodes",null),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"parentIdField",void 0),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"idField",void 0),e=i.__decorate([r.Directive({selector:"[kendoTreeViewFlatDataBinding]"}),i.__metadata("design:paramtypes",[o.TreeViewComponent])],e)}();t.FlatDataBindingDirective=u},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.compose=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(t){return e.reduceRight(function(e,t){return t(e)},t)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(9),a=n(13),s=n(5),d=n(7),c=n(14),p=n(11);n(36);var u=function(e,t){return{dataItem:t,index:e}},l=function(){function e(e,t,n,i,r,o,a){this.element=e,this.expandService=t,this.navigationService=n,this.selectionService=i,this.lookupService=r,this.renderer=o,this.ib=a,this.ariaChecked="false",this.isInitialized=!1,this.subscriptions=[],this.subscribe()}return Object.defineProperty(e.prototype,"isChecked",{set:function(e){"checked"===e?this.ariaChecked="true":"indeterminate"===e?this.ariaChecked="mixed":this.ariaChecked="false"},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isExpanded",{get:function(){return this._isExpanded||!1},set:function(e){this._isExpanded=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isSelected",{get:function(){return this._isSelected||!1},set:function(e){this._isSelected=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"treeItem",{get:function(){return u(this.index,this.dataItem)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"parentTreeItem",{get:function(){return this.parentDataItem?u(this.parentIndex,this.parentDataItem):null},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){this.navigationService.registerItem(this.index),this.lookupService.registerItem(this.treeItem,this.parentTreeItem),this.activateItem(),this.isInitialized=!0,this.setAttribute("role","treeitem"),this.setAriaAttributes(),this.updateTabIndex()},e.prototype.ngOnChanges=function(e){var t=e.index;(t||e.isChecked||e.isExpanded||e.isSelected)&&this.setAriaAttributes(),this.moveLookupItem(e),this.moveNavigationItem(t)},e.prototype.ngOnDestroy=function(){this.navigationService.unregisterItem(this.index),this.subscriptions.map(function(e){return e.unsubscribe()}),this.subscriptions=[]},e.prototype.subscribe=function(){var e=this;this.subscriptions=[this.navigationService.moves.subscribe(function(){e.updateTabIndex(),e.focusItem()}),this.navigationService.expands.filter(function(t){var n=t.index;return n===e.index}).subscribe(function(t){var n=t.expand;return e.expand(n)})]},e.prototype.activateItem=function(){var e=this.navigationService,t=this.selectionService,n=this.index;t.setFirstSelected(n,this.isSelected),!e.isActive(n)&&t.isFirstSelected(n)&&e.activateIndex(n)},e.prototype.expand=function(e){this.expandService[e?"expand":"collapse"](this.index,this.dataItem)},e.prototype.isFocusable=function(){return this.navigationService.isFocusable(this.index)},e.prototype.focusItem=function(){this.isInitialized&&this.navigationService.isActive(this.index)&&this.element.nativeElement.focus()},e.prototype.moveLookupItem=function(e){void 0===e&&(e={});var t=e.dataItem,n=e.index,i=e.parentDataItem,r=e.parentIndex;if((!n||!n.firstChange||this.lookupService.hasItem(this.index))&&(t||n||i||r)){var o=(n||{}).previousValue||this.index;this.lookupService.replaceItem(o,this.treeItem,this.parentTreeItem)}},e.prototype.moveNavigationItem=function(e){void 0===e&&(e={});var t=e.currentValue,n=e.firstChange,i=e.previousValue;!n&&p.isPresent(t)&&p.isPresent(i)&&(this.navigationService.unregisterItem(i),this.navigationService.registerItem(t))},e.prototype.setAriaAttributes=function(){this.setAttribute("aria-level",this.ib.level(this.index).toString()),this.setAttribute("aria-expanded",this.isExpanded.toString()),this.setAttribute("aria-selected",this.isSelected.toString()),this.setAttribute("aria-checked",this.ariaChecked)},e.prototype.updateTabIndex=function(){this.setAttribute("tabIndex",this.isFocusable()?"0":"-1")},e.prototype.setAttribute=function(e,t){this.renderer.setAttribute(this.element.nativeElement,e,t)},i.__decorate([r.Input(),i.__metadata("design:type",Object)],e.prototype,"dataItem",void 0),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"index",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Object)],e.prototype,"parentDataItem",void 0),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"parentIndex",void 0),i.__decorate([r.Input(),i.__metadata("design:type",String),i.__metadata("design:paramtypes",[String])],e.prototype,"isChecked",null),i.__decorate([r.Input(),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[Boolean])],e.prototype,"isExpanded",null),i.__decorate([r.Input(),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[Boolean])],e.prototype,"isSelected",null),e=i.__decorate([r.Directive({selector:"[kendoTreeViewItem]"}),i.__metadata("design:paramtypes",[r.ElementRef,s.ExpandStateService,o.NavigationService,a.SelectionService,c.TreeViewLookupService,r.Renderer2,d.IndexBuilderService])],e)}();t.TreeViewItemDirective=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(9),a=n(13),s=n(16);n(36),n(24);var d=function(){function e(e,t,n,i){var r=this;this.element=e,this.navigationService=t,this.selectionService=n,this.renderer=i,this.subscriptions=new s.Subscription(function(){}),this.subscriptions.add(this.navigationService.moves.subscribe(this.updateItem.bind(this))),this.subscriptions.add(this.navigationService.selects.filter(function(e){return e===r.index}).subscribe(function(e){return r.selectionService.select(e,r.dataItem)})),this.subscriptions.add(this.selectionService.changes.subscribe(this.updateSelection.bind(this)))}return e.prototype.ngOnInit=function(){this.updateSelection()},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.updateItem=function(){this.render(this.navigationService.isActive(this.index),"k-state-focused")},e.prototype.updateSelection=function(){this.render(this.isSelected(this.dataItem,this.index),"k-state-selected")},e.prototype.render=function(e,t){var n=e?"addClass":"removeClass";this.renderer[n](this.element.nativeElement,t)},i.__decorate([r.Input(),i.__metadata("design:type",Object)],e.prototype,"dataItem",void 0),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"index",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Function)],e.prototype,"isSelected",void 0),e=i.__decorate([r.Directive({selector:"[kendoTreeViewItemContent]"}),i.__metadata("design:paramtypes",[r.ElementRef,o.NavigationService,a.SelectionService,r.Renderer2])],e)}();t.TreeViewItemContentDirective=d},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(45),a=[o.CheckBoxComponent],s=function(){function e(){}return e=i.__decorate([r.NgModule({declarations:[a],exports:[a]})],e)}();t.CheckBoxModule=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(11),a=function(){function e(e,t){this.element=e,this.renderer=t,this.id="_"+o.guid(),this.checkState="none",this.tabindex=0,this.checkStateChange=new r.EventEmitter}return Object.defineProperty(e.prototype,"classWrapper",{get:function(){return!0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"indeterminate",{get:function(){return"indeterminate"===this.checkState},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"checked",{get:function(){return"checked"===this.checkState},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){this.renderer.removeAttribute(this.element.nativeElement,"tabindex")},e.prototype.handleChange=function(e){this.checkStateChange.emit(e.target.checked?"checked":"none")},i.__decorate([r.HostBinding("class.k-checkbox-wrapper"),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[])],e.prototype,"classWrapper",null),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"id",void 0),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"checkState",void 0),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"labelText",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Number)],e.prototype,"tabindex",void 0),i.__decorate([r.Output(),i.__metadata("design:type",r.EventEmitter)],e.prototype,"checkStateChange",void 0),e=i.__decorate([r.Component({selector:"kendo-checkbox",template:'\n <input\n class="k-checkbox"\n type="checkbox"\n [id]="id"\n [checked]="checked"\n [indeterminate]="indeterminate"\n [tabindex]="tabindex"\n (change)="handleChange($event)"\n />\n <label\n class="k-checkbox-label"\n tabindex="-1"\n [for]="id"\n >{{labelText}}</label>\n '}),i.__metadata("design:paramtypes",[r.ElementRef,r.Renderer2])],e)}();t.CheckBoxComponent=a}])});
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("tslib"),require("@angular/core"),require("rxjs/Subject"),require("rxjs/Subscription"),require("rxjs/BehaviorSubject"),require("rxjs/Observable"),require("@angular/animations"),require("rxjs/add/operator/do"),require("rxjs/add/operator/catch"),require("rxjs/add/observable/of"),require("rxjs/add/observable/empty"),require("@angular/common"),require("rxjs/add/observable/merge"),require("rxjs/add/operator/map"),require("rxjs/add/operator/filter"),require("rxjs/add/operator/delay"),require("rxjs/add/operator/takeUntil"),require("rxjs/add/operator/switchMap")):"function"==typeof define&&define.amd?define(["tslib","@angular/core","rxjs/Subject","rxjs/Subscription","rxjs/BehaviorSubject","rxjs/Observable","@angular/animations","rxjs/add/operator/do","rxjs/add/operator/catch","rxjs/add/observable/of","rxjs/add/observable/empty","@angular/common","rxjs/add/observable/merge","rxjs/add/operator/map","rxjs/add/operator/filter","rxjs/add/operator/delay","rxjs/add/operator/takeUntil","rxjs/add/operator/switchMap"],t):"object"==typeof exports?exports.KendoAngularTreeview=t(require("tslib"),require("@angular/core"),require("rxjs/Subject"),require("rxjs/Subscription"),require("rxjs/BehaviorSubject"),require("rxjs/Observable"),require("@angular/animations"),require("rxjs/add/operator/do"),require("rxjs/add/operator/catch"),require("rxjs/add/observable/of"),require("rxjs/add/observable/empty"),require("@angular/common"),require("rxjs/add/observable/merge"),require("rxjs/add/operator/map"),require("rxjs/add/operator/filter"),require("rxjs/add/operator/delay"),require("rxjs/add/operator/takeUntil"),require("rxjs/add/operator/switchMap")):e.KendoAngularTreeview=t(e.tslib,e["@angular/core"],e["rxjs/Subject"],e["rxjs/Subscription"],e["rxjs/BehaviorSubject"],e["rxjs/Observable"],e["@angular/animations"],e["rxjs/add/operator/do"],e["rxjs/add/operator/catch"],e["rxjs/add/observable/of"],e["rxjs/add/observable/empty"],e["@angular/common"],e["rxjs/add/observable/merge"],e["rxjs/add/operator/map"],e["rxjs/add/operator/filter"],e["rxjs/add/operator/delay"],e["rxjs/add/operator/takeUntil"],e["rxjs/add/operator/switchMap"])}(this,function(e,t,i,n,r,o,a,s,d,c,p,u,l,h,f,v,y,m){return function(e){function t(n){if(i[n])return i[n].exports;var r=i[n]={exports:{},id:n,loaded:!1};return e[n].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var i={};return t.m=e,t.c=i,t.p="",t(0)}([function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(1);t.TreeViewComponent=n.TreeViewComponent;var r=i(19);t.TreeViewModule=r.TreeViewModule;var o=i(4);t.NodeTemplateDirective=o.NodeTemplateDirective;var a=i(29);t.CheckDirective=a.CheckDirective;var s=i(32);t.DisableDirective=s.DisableDirective;var d=i(33);t.ExpandDirective=d.ExpandDirective;var c=i(34);t.SelectDirective=c.SelectDirective;var p=i(35);t.HierarchyBindingDirective=p.HierarchyBindingDirective;var u=i(41);t.FlatDataBindingDirective=u.FlatDataBindingDirective},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(4),a=i(5),s=i(7),d=i(8),c=i(9),p=i(13),u=i(14),l=i(11),h=i(15),f=i(16),v=i(17),y=i(18),m=function(e){return/k-i-collapse|k-i-expand/.test(e.className)},_=[a.ExpandStateService,s.IndexBuilderService,u.TreeViewLookupService,d.LoadingNotificationService,c.NavigationService,p.SelectionService],g=function(){function e(e,t,i,n,o){this.expandService=e,this.navigationService=t,this.selectionService=i,this.treeViewLookupService=n,this.element=o,this.classNames=!0,this.onBlur=new r.EventEmitter,this.onFocus=new r.EventEmitter,this.expand=new r.EventEmitter,this.collapse=new r.EventEmitter,this.checkedChange=new r.EventEmitter,this.selectionChange=new r.EventEmitter,this.isDisabled=h.isDisabled,this.navigable=!0,this.checkboxes=!1,this.data=new v.BehaviorSubject([]),this.subscriptions=new f.Subscription(function(){}),this._animate=!0,this.resolvedPromise=Promise.resolve(null),this.children=function(){return y.Observable.of([])}}return Object.defineProperty(e.prototype,"role",{get:function(){return"tree"},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"animate",{get:function(){return!this._animate},set:function(e){this._animate=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"nodes",{set:function(e){this.data.next(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasChildren",{get:function(){return this._hasChildren||h.hasChildren},set:function(e){this._hasChildren=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isChecked",{get:function(){return this._isChecked||h.isChecked},set:function(e){this._isChecked=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isExpanded",{get:function(){return this._isExpanded||h.isExpanded},set:function(e){this._isExpanded=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isSelected",{get:function(){return this._isSelected||h.isSelected},set:function(e){this._isSelected=e},enumerable:!0,configurable:!0}),e.prototype.handleKeydown=function(e){this.isActive&&l.hasActiveNode(e.target)&&this.navigationService.move(e)},e.prototype.handleFocusin=function(e){var t=e.target,i=l.closestNode(t);l.hasActiveNode(t,i)&&this.activateAndEmit(l.nodeId(i))},e.prototype.handleClick=function(e){var t=e.target,i=l.closestNode(t),n=l.nodeId(i);l.hasActiveNode(t,i)&&n&&(this.activateAndEmit(n),m(t)||this.navigationService.selectIndex(n))},e.prototype.handleFocusout=function(e){var t=this,i=e.target,n=i.getAttribute("data-treeindex");this.resolvedPromise.then(function(){t.navigationService.isActive(n)&&(t.navigationService.deactivate(),t.isActive=!1,t.onBlur.emit())})},e.prototype.ngOnChanges=function(e){this.checkboxes=Boolean(this._isChecked),this.expandIcons=Boolean(this._isExpanded&&this._hasChildren),this.navigationService.navigable=Boolean(this.navigable)},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.ngOnInit=function(){var e=this;this.subscriptions.add(this.expandService.changes.subscribe(function(t){var i=t.index,n=t.dataItem,r=t.expand;return r?e.expand.emit({index:i,dataItem:n}):e.collapse.emit({index:i,dataItem:n})})),this.subscriptions.add(this.navigationService.checks.subscribe(function(t){return e.checkedChange.emit(e.treeViewLookupService.itemLookup(t))})),this.subscriptions.add(this.selectionService.changes.subscribe(function(t){return e.selectionChange.emit(t)}))},e.prototype.blur=function(){if(l.isDocumentAvailable()){var e=l.focusableNode(this.element);document.activeElement===e&&e.blur()}},e.prototype.focus=function(e){this.navigationService.activateIndex(e);var t=l.focusableNode(this.element);t&&t.focus()},e.prototype.activateAndEmit=function(e){var t=this;e&&(this.navigationService.activateIndex(e),this.resolvedPromise.then(function(){t.navigationService.isActive(e)&&(t.isActive=!0,t.onFocus.emit())}))},n.__decorate([r.HostBinding("class.k-widget"),r.HostBinding("class.k-treeview"),n.__metadata("design:type",Boolean)],e.prototype,"classNames",void 0),n.__decorate([r.HostBinding("attr.role"),n.__metadata("design:type",String),n.__metadata("design:paramtypes",[])],e.prototype,"role",null),n.__decorate([r.Input(),r.HostBinding("@.disabled"),n.__metadata("design:type",Boolean),n.__metadata("design:paramtypes",[Boolean])],e.prototype,"animate",null),n.__decorate([r.Output("blur"),n.__metadata("design:type",r.EventEmitter)],e.prototype,"onBlur",void 0),n.__decorate([r.Output("focus"),n.__metadata("design:type",r.EventEmitter)],e.prototype,"onFocus",void 0),n.__decorate([r.Output(),n.__metadata("design:type",r.EventEmitter)],e.prototype,"expand",void 0),n.__decorate([r.Output(),n.__metadata("design:type",r.EventEmitter)],e.prototype,"collapse",void 0),n.__decorate([r.Output(),n.__metadata("design:type",r.EventEmitter)],e.prototype,"checkedChange",void 0),n.__decorate([r.Output(),n.__metadata("design:type",r.EventEmitter)],e.prototype,"selectionChange",void 0),n.__decorate([r.ContentChild(o.NodeTemplateDirective),n.__metadata("design:type",o.NodeTemplateDirective)],e.prototype,"nodeTemplate",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Array),n.__metadata("design:paramtypes",[Array])],e.prototype,"nodes",null),n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"textField",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[Function])],e.prototype,"hasChildren",null),n.__decorate([r.Input(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[Function])],e.prototype,"isChecked",null),n.__decorate([r.Input(),n.__metadata("design:type",Function)],e.prototype,"isDisabled",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[Function])],e.prototype,"isExpanded",null),n.__decorate([r.Input(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[Function])],e.prototype,"isSelected",null),n.__decorate([r.Input(),n.__metadata("design:type",Boolean)],e.prototype,"navigable",void 0),n.__decorate([r.HostListener("keydown",["$event"]),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[Object]),n.__metadata("design:returntype",void 0)],e.prototype,"handleKeydown",null),n.__decorate([r.HostListener("focusin",["$event"]),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[Object]),n.__metadata("design:returntype",void 0)],e.prototype,"handleFocusin",null),n.__decorate([r.HostListener("click",["$event"]),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[Object]),n.__metadata("design:returntype",void 0)],e.prototype,"handleClick",null),n.__decorate([r.HostListener("focusout",["$event"]),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[Object]),n.__metadata("design:returntype",void 0)],e.prototype,"handleFocusout",null),n.__decorate([r.Input(),n.__metadata("design:type",Function)],e.prototype,"children",void 0),e=n.__decorate([r.Component({changeDetection:r.ChangeDetectionStrategy.OnPush,exportAs:"kendoTreeView",providers:_,selector:"kendo-treeview",template:'\n <ul class="k-treeview-lines"\n kendoTreeViewGroup\n role="group"\n [checkboxes]="checkboxes"\n [expandIcons]="expandIcons"\n [children]="children"\n [hasChildren]="hasChildren"\n [isChecked]="isChecked"\n [isDisabled]="isDisabled"\n [isExpanded]="isExpanded"\n [isSelected]="isSelected"\n [nodeTemplateRef]="nodeTemplate?.templateRef"\n [nodes]="data"\n [textField]="textField"\n >\n </ul>\n '}),n.__metadata("design:paramtypes",[a.ExpandStateService,c.NavigationService,p.SelectionService,u.TreeViewLookupService,r.ElementRef])],e)}();t.TreeViewComponent=g},function(t,i){t.exports=e},function(e,i){e.exports=t},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=function(){function e(e){this.templateRef=e}return e=n.__decorate([r.Directive({selector:"[kendoTreeViewNodeTemplate]"}),n.__param(0,r.Optional()),n.__metadata("design:paramtypes",[r.TemplateRef])],e)}();t.NodeTemplateDirective=o},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(6),a=function(){function e(){this.changes=new o.Subject}return e.prototype.expand=function(e,t){this.changes.next({dataItem:t,index:e,expand:!0})},e.prototype.collapse=function(e,t){this.changes.next({dataItem:t,index:e,expand:!1})},e=n.__decorate([r.Injectable()],e)}();t.ExpandStateService=a},function(e,t){e.exports=i},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=function(){function e(){this.INDEX_SEPARATOR="_"}return e.prototype.nodeIndex=function(e,t){return void 0===e&&(e=""),void 0===t&&(t=""),""+t+(t?this.INDEX_SEPARATOR:"")+e},e.prototype.indexForLevel=function(e,t){return e.split(this.INDEX_SEPARATOR).slice(0,t).join(this.INDEX_SEPARATOR)},e.prototype.lastLevelIndex=function(e){void 0===e&&(e="");var t=e.split(this.INDEX_SEPARATOR);return t.length?parseInt(t[t.length-1],10):NaN},e.prototype.level=function(e){return e.split(this.INDEX_SEPARATOR).length},e=n.__decorate([r.Injectable()],e)}();t.IndexBuilderService=o},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(6),a=function(){function e(){this.changes=new o.Subject}return e.prototype.notifyLoaded=function(e){this.changes.next(e)},e=n.__decorate([r.Injectable()],e)}();t.LoadingNotificationService=a},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(10),a=i(11),s=i(12),d=i(6),c=function(e,t){return e[t]||e},p=function(){function e(){var e=this;this.expands=new d.Subject,this.moves=new d.Subject,this.checks=new d.Subject,this.selects=new d.Subject,this.navigable=!0,this.actions=(t={},t[s.Keys.up]=function(){return e.activate(c(e.focusableItem,"prev"))},t[s.Keys.down]=function(){return e.activate(c(e.focusableItem,"next"))},t[s.Keys.left]=function(){return e.expand({expand:!1,intercept:e.moveToParent.bind(e)})},t[s.Keys.right]=function(){return e.expand({expand:!0,intercept:e.moveToChild.bind(e)})},t[s.Keys.home]=function(){return e.activate(e.model.firstNode())},t[s.Keys.end]=function(){return e.activate(e.model.lastNode())},t[s.Keys.enter]=function(){return e.navigable&&e.selectIndex(a.nodeIndex(e.activeItem))},t[s.Keys.space]=function(){return e.navigable&&e.checkIndex(a.nodeIndex(e.activeItem))},t),this.isFocused=!1,this._model=new o.NavigationModel;var t}return Object.defineProperty(e.prototype,"model",{get:function(){return this._model},set:function(e){this._model=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"activeIndex",{get:function(){return a.nodeIndex(this.activeItem)||null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"focusableItem",{get:function(){return this.activeItem||this.model.firstNode()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isActiveExpanded",{get:function(){return this.activeItem&&this.activeItem.children.length>0},enumerable:!0,configurable:!0}),e.prototype.activate=function(e){this.navigable&&e&&!this.isActive(a.nodeIndex(e))&&(this.isFocused=!0,this.activeItem=e||this.activeItem,this.notifyMove())},e.prototype.activateParent=function(e){this.activate(this.model.findParent(e))},e.prototype.activateIndex=function(e){e&&this.activate(this.model.findNode(e))},e.prototype.activateClosest=function(e){e&&a.nodeIndex(this.focusableItem)===e&&(this.activeItem=this.model.closestNode(e),this.notifyMove())},e.prototype.activateFocusable=function(){this.activeItem||(this.activeItem=this.model.firstNode(),this.notifyMove())},e.prototype.deactivate=function(){this.navigable&&this.isFocused&&(this.isFocused=!1,this.notifyMove())},e.prototype.checkIndex=function(e){this.checks.next(e)},e.prototype.selectIndex=function(e){this.selects.next(e)},e.prototype.isActive=function(e){return!!e&&(this.isFocused&&this.activeIndex===e)},e.prototype.isFocusable=function(e){return a.nodeIndex(this.focusableItem)===e},e.prototype.registerItem=function(e){this.model.registerItem(e)},e.prototype.unregisterItem=function(e){this.isActive(e)&&this.activateParent(e),this.model.unregisterItem(e)},e.prototype.move=function(e){if(this.navigable){var t=this.actions[e.keyCode];t&&(t(),e.preventDefault())}},e.prototype.expand=function(e){var t=e.expand,i=e.intercept,n=a.nodeIndex(this.activeItem);n&&!i(n)&&this.notifyExpand(t)},e.prototype.moveToParent=function(){return!this.isActiveExpanded&&(this.activate(this.model.findParent(a.nodeIndex(this.activeItem))),!0)},e.prototype.moveToChild=function(){return!!this.isActiveExpanded&&(this.activate(this.model.findChild(a.nodeIndex(this.activeItem))),!0)},e.prototype.notifyExpand=function(e){this.expands.next(this.navigationState(e))},e.prototype.notifyMove=function(){this.moves.next(this.navigationState())},e.prototype.navigationState=function(e){return void 0===e&&(e=!1),{expand:e,index:a.nodeIndex(this.activeItem),isFocused:this.isFocused}},e=n.__decorate([r.Injectable()],e)}();t.NavigationService=p},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(7),r=function(e){return e[e.length-1]},o=function(e){return e||{}},a=function(e){return o(e).children||[]},s=function(e){for(var t=e,i=[].concat(a(e));i.length;)i=i.concat(a(r(i))),t=i.shift();return t},d=function(e){var t=e.prev,i=e.next;t&&(t.next=e),i&&(i.prev=e)},c=function(e,t){e&&(e.next=t),t&&(t.prev=e)},p=function(){function e(){this.ib=new n.IndexBuilderService,this.nodes=[]}return e.prototype.firstNode=function(){return this.nodes[0]||null},e.prototype.lastNode=function(){var e=this.nodes[this.nodes.length-1];return e?s(r(this.container(e)))||e:null},e.prototype.closestNode=function(e){var t=o(this.findNode(e)).prev,i=t||this.firstNode();return o(i).index===e?this.sibling(i,1):i},e.prototype.findNode=function(e){return this.find(e,this.nodes)},e.prototype.findParent=function(e){var t=this.ib.level(e)-1;return this.findNode(this.ib.indexForLevel(e,t))},e.prototype.findChild=function(e){return a(this.findNode(e))[0]||null},e.prototype.registerItem=function(e){var t=[],i=this.ib.level(e),n=this.findParent(e);if(n||1===i){var r=this.prevNode(n,e),o=this.nextNode(n,e),a={children:t,index:e,parent:n,prev:r,next:o};d(a),this.insert(a,n)}},e.prototype.unregisterItem=function(e){var t=this.find(e,this.nodes);if(t){c(t.prev,this.nextNode(t.parent,t.index));var i=this.container(t.parent);i.splice(i.indexOf(t),1)}},e.prototype.childLevel=function(e){return e&&e.length?this.ib.level(e[0].index):1},e.prototype.container=function(e){return e?e.children:this.nodes},e.prototype.find=function(e,t){var i=this.childLevel(t),n=this.ib.indexForLevel(e,i),r=i===this.ib.level(e),o=t.find(function(e){return e.index===n});return o?r?o:this.find(e,o.children):null},e.prototype.closestIndexPosition=function(e,t){for(var i=this.ib.lastLevelIndex(t),n=0;n<e.length;){if(this.ib.lastLevelIndex(e[n].index)>i)return n;n+=1}return n},e.prototype.insert=function(e,t){var i=this.container(t);i.splice(this.closestIndexPosition(i,e.index),0,e)},e.prototype.prevNode=function(e,t){var i=this.container(e),n=i.slice(0,this.closestIndexPosition(i,t));return s(r(n))||e||null},e.prototype.nextNode=function(e,t){var i=this.container(e),n=this.findNode(t);if(!e&&n)return this.sibling(n,1);var o=this.closestIndexPosition(i,t),a=r(i.slice(o));return a?a:this.sibling(e,1)},e.prototype.sibling=function(e,t){if(!e)return null;var i=this.findParent(e.index),n=this.container(i);return n[n.indexOf(e)+t]||this.sibling(i,t)||null},e}();t.NavigationModel=p},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.noop=function(){},t.isPresent=function(e){return null!==e&&void 0!==e},t.isBlank=function(e){return null===e||void 0===e},t.isArray=function(e){return Array.isArray(e)},t.isNullOrEmptyString=function(e){return t.isBlank(e)||0===e.trim().length},t.isDocumentAvailable=function(){return"undefined"!=typeof document},t.isChanged=function(e,t,i){return void 0===i&&(i=!0),t[e]&&(!t[e].isFirstChange()||!i)&&t[e].previousValue!==t[e].currentValue},t.anyChanged=function(e,i,n){return void 0===n&&(n=!0),e.some(function(e){return t.isChanged(e,i,n)})},t.closestNode=function(e){return e.closest("li.k-item")},t.focusableNode=function(e){return e.nativeElement.querySelector('li[tabindex="0"]')},t.hasActiveNode=function(e,i){var n=i||t.closestNode(e);return n&&(n===e||e.tabIndex<0)},t.nodeId=function(e){return e?e.getAttribute("data-treeindex"):""},t.nodeIndex=function(e){return(e||{}).index},t.guid=function(){for(var e,t="",i=0;i<32;i++)e=16*Math.random()|0,8!==i&&12!==i&&16!==i&&20!==i||(t+="-"),t+=(12===i?4:16===i?3&e|8:e).toString(16);return t}},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i;!function(e){e[e.enter=13]="enter",e[e.shift=16]="shift",e[e.space=32]="space",e[e.end=35]="end",e[e.home=36]="home",e[e.left=37]="left",e[e.up=38]="up",e[e.right=39]="right",e[e.down=40]="down"}(i=t.Keys||(t.Keys={}))},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(6),a=function(){function e(){this.changes=new o.Subject}return e.prototype.isFirstSelected=function(e){return this.firstIndex===e},e.prototype.setFirstSelected=function(e,t){this.firstIndex===e&&t===!1?this.firstIndex=null:!this.firstIndex&&t&&(this.firstIndex=e)},e.prototype.select=function(e,t){this.changes.next({dataItem:t,index:e})},e=n.__decorate([r.Injectable()],e)}();t.SelectionService=a},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(11),a=function(){function e(){this.map=new Map}return e.prototype.registerItem=function(e,t){var i={children:[],item:e,parent:this.item(o.nodeIndex(t))};this.map.set(e.index,i)},e.prototype.registerChildren=function(e,t){var i=this.item(e);i&&(i.children=t)},e.prototype.unregisterItem=function(e){this.map.delete(e)},e.prototype.replaceItem=function(e,t,i){var n=this.item(e);n&&t&&(this.unregisterItem(e),this.registerItem(t,i),e===t.index&&this.registerChildren(t.index,n.children.slice()))},e.prototype.itemLookup=function(e){var t=this.item(e);return t?{children:this.mapChildren(t.children),item:t.item,parent:t.parent}:null},e.prototype.hasItem=function(e){return this.map.has(e)},e.prototype.item=function(e){return this.map.get(e)||null},e.prototype.mapChildren=function(e){var t=this;return e.map(function(e){var i=t.item(e.index),n=i.item,r=i.parent,o=i.children;return{children:t.mapChildren(o),item:n,parent:r}})},e=n.__decorate([r.Injectable()],e)}();t.TreeViewLookupService=a},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hasChildren=function(){return!1},t.isChecked=function(){return"none"},t.isDisabled=function(){return!1},t.isExpanded=function(){return!0},t.isSelected=function(){return!1}},function(e,t){e.exports=n},function(e,t){e.exports=r},function(e,t){e.exports=o},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(1),a=i(20),s=i(4),d=i(29),c=i(32),p=i(33),u=i(34),l=i(35),h=i(41),f=[o.TreeViewComponent,s.NodeTemplateDirective,d.CheckDirective,c.DisableDirective,p.ExpandDirective,u.SelectDirective,l.HierarchyBindingDirective,h.FlatDataBindingDirective],v=function(){function e(){}return e=n.__decorate([r.NgModule({exports:[f],imports:[a.SharedModule]})],e)}();t.TreeViewModule=v},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(1),a=i(21),s=i(28),d=i(4),c=i(29),p=i(32),u=i(33),l=i(34),h=i(35),f=i(36),v=i(41),y=i(43),m=i(44),_=i(45),g=[o.TreeViewComponent,a.TreeViewGroupComponent,y.TreeViewItemDirective,m.TreeViewItemContentDirective,d.NodeTemplateDirective,c.CheckDirective,p.DisableDirective,u.ExpandDirective,l.SelectDirective,h.HierarchyBindingDirective,f.LoadingIndicatorDirective,v.FlatDataBindingDirective],b=function(){function e(){}return e=n.__decorate([r.NgModule({declarations:[g],exports:[g],imports:[s.CommonModule,_.CheckBoxModule]})],e)}();t.SharedModule=b},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(22),a=i(5),s=i(7),d=i(14),c=i(9),p=i(11),u=i(23),l=i(8),h=i(18);i(24),i(25),i(26),i(27);var f=function(){function e(e,t,i,n,r,o){this.expandService=e,this.loadingService=t,this.indexBuilder=i,this.treeViewLookupService=n,this.navigationService=r,this.cd=o,this.kGroupClass=!0,this.textField="",this._data=[],this.isChecked=function(){return"none"},this.isDisabled=function(){return!1},this.isExpanded=function(){return!1},this.isSelected=function(){return!1},this.children=function(){return h.Observable.of([])},this.hasChildren=function(){return!1}}return Object.defineProperty(e.prototype,"role",{get:function(){return"group"},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"data",{get:function(){return this._data},set:function(e){this._data=e,this.updateParentChildren()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasTemplate",{get:function(){return p.isPresent(this.nodeTemplateRef)},enumerable:!0,configurable:!0}),e.prototype.expandNode=function(e,t,i){i?this.expandService.expand(e,t):this.expandService.collapse(e,t)},e.prototype.checkNode=function(e){this.navigationService.checkIndex(e),this.navigationService.activateIndex(e)},e.prototype.nodeIndex=function(e){return this.indexBuilder.nodeIndex(e.toString(),this.parentIndex)},e.prototype.nodeText=function(e){var t=p.isArray(this.textField)?this.textField[0]:this.textField;return u.getter(t,!0)(e)},e.prototype.ngOnDestroy=function(){this.subscription&&this.subscription.unsubscribe()},e.prototype.ngOnInit=function(){var e=this;this.subscription=this.nodes.subscribe(function(t){e.data=t,e.cd.markForCheck()})},e.prototype.ngOnChanges=function(e){e.parentIndex&&this.updateParentChildren()},e.prototype.fetchChildren=function(e,t){var i=this;return this.children(e).catch(function(){return i.loadingService.notifyLoaded(t),h.Observable.empty()}).do(function(){return i.loadingService.notifyLoaded(t)})},Object.defineProperty(e.prototype,"nextFields",{get:function(){return p.isArray(this.textField)?this.textField.length>1?this.textField.slice(1):this.textField:[this.textField]},enumerable:!0,configurable:!0}),e.prototype.updateParentChildren=function(){var e=this.parentIndex?this.mapToTreeItem(this.data):[];this.treeViewLookupService.registerChildren(this.parentIndex,e)},e.prototype.mapToTreeItem=function(e){var t=this;return e.map(function(e,i){return{dataItem:e,index:t.nodeIndex(i)}})},n.__decorate([r.HostBinding("class.k-group"),n.__metadata("design:type",Boolean)],e.prototype,"kGroupClass",void 0),n.__decorate([r.HostBinding("attr.role"),n.__metadata("design:type",String),n.__metadata("design:paramtypes",[])],e.prototype,"role",null),n.__decorate([r.Input(),n.__metadata("design:type",Boolean)],e.prototype,"checkboxes",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Boolean)],e.prototype,"expandIcons",void 0),n.__decorate([r.Input(),n.__metadata("design:type",h.Observable)],e.prototype,"nodes",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"textField",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"parentDataItem",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"parentIndex",void 0),n.__decorate([r.Input(),n.__metadata("design:type",r.TemplateRef)],e.prototype,"nodeTemplateRef",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Function)],e.prototype,"isChecked",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Function)],e.prototype,"isDisabled",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Function)],e.prototype,"isExpanded",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Function)],e.prototype,"isSelected",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Function)],e.prototype,"children",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Function)],e.prototype,"hasChildren",void 0),e=n.__decorate([r.Component({animations:[o.trigger("toggle",[o.transition("void => *",[o.style({height:0}),o.animate("0.1s ease-in",o.style({height:"*"}))]),o.transition("* => void",[o.style({height:"*"}),o.animate("0.1s ease-in",o.style({height:0}))])])],selector:"[kendoTreeViewGroup]",template:'\n <li\n *ngFor="let node of data; let index = index" class="k-item"\n kendoTreeViewItem\n [dataItem]="node"\n [index]="nodeIndex(index)"\n [parentDataItem]="parentDataItem"\n [parentIndex]="parentIndex"\n [isChecked]="isChecked(node, nodeIndex(index))"\n [isDisabled]="isDisabled(node, nodeIndex(index))"\n [isExpanded]="isExpanded(node, nodeIndex(index))"\n [isSelected]="isSelected(node, nodeIndex(index))"\n [attr.data-treeindex]="nodeIndex(index)"\n >\n <div class="k-mid">\n <span\n class="k-icon"\n [class.k-i-collapse]="isExpanded(node, nodeIndex(index))"\n [class.k-i-expand]="!isExpanded(node, nodeIndex(index))"\n [kendoTreeViewLoading]="nodeIndex(index)"\n (click)="expandNode(nodeIndex(index), node, !isExpanded(node, nodeIndex(index)))"\n *ngIf="expandIcons && hasChildren(node)"\n >\n </span>\n <kendo-checkbox\n *ngIf="checkboxes"\n [checkState]="isChecked(node, nodeIndex(index))"\n (checkStateChange)="checkNode(nodeIndex(index))"\n tabindex="-1"\n ></kendo-checkbox>\n <span kendoTreeViewItemContent\n [attr.data-treeindex]="nodeIndex(index)"\n [dataItem]="node"\n [index]="nodeIndex(index)"\n [isSelected]="isSelected"\n class="k-in"\n >\n <ng-container [ngSwitch]="hasTemplate">\n <ng-container *ngSwitchCase="true">\n <ng-template\n [ngTemplateOutlet]="nodeTemplateRef" [ngTemplateOutletContext]="{$implicit: node, index: nodeIndex(index)}"\n >\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{nodeText(node)}}\n </ng-container>\n </ng-container>\n </span>\n </div>\n <ul\n *ngIf="isExpanded(node, nodeIndex(index)) && hasChildren(node)"\n kendoTreeViewGroup\n role="group"\n [nodes]="fetchChildren(node, nodeIndex(index))"\n [checkboxes]="checkboxes"\n [expandIcons]="expandIcons"\n [children]="children"\n [hasChildren]="hasChildren"\n [isChecked]="isChecked"\n [isDisabled]="isDisabled"\n [isExpanded]="isExpanded"\n [isSelected]="isSelected"\n [nodeTemplateRef]="nodeTemplateRef"\n [parentIndex]="nodeIndex(index)"\n [parentDataItem]="node"\n [textField]="nextFields"\n [@toggle]="true"\n >\n </ul>\n </li>\n '}),n.__metadata("design:paramtypes",[a.ExpandStateService,l.LoadingNotificationService,s.IndexBuilderService,d.TreeViewLookupService,c.NavigationService,r.ChangeDetectorRef])],e)}();t.TreeViewGroupComponent=f},function(e,t){e.exports=a},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(11),r=/\[(?:(\d+)|['"](.*?)['"])\]|((?:(?!\[.*?\]|\.).)+)/g,o={};o.undefined=function(e){return e},t.getter=function(e,t){var i=e+t;if(o[i])return o[i];var a=[];return e.replace(r,function(e,t,i,r){a.push(n.isPresent(t)?t:i||r)}),o[i]=function(e){for(var i=e,r=0;r<a.length;r++)if(i=i[a[r]],!n.isPresent(i)&&t)return i;return i},o[i]}},function(e,t){e.exports=s},function(e,t){e.exports=d},function(e,t){e.exports=c},function(e,t){e.exports=p},function(e,t){e.exports=u},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(1),a=i(11),s=i(16);i(30),i(31);var d=function(e,t){return e.filter(function(e){return e===t}).length>0},c=function(){function e(e){var t=this;this.treeView=e,this.checkedKeys=[],this.checkedKeysChange=new r.EventEmitter,this.subscriptions=new s.Subscription(function(){}),this.checkActions={multiple:function(e){return t.checkMultiple(e)},single:function(e){
return t.checkSingle(e)}}}return Object.defineProperty(e.prototype,"isChecked",{set:function(e){this.treeView.isChecked=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"options",{get:function(){var e={checkChildren:!0,checkParents:!0,enabled:!0,mode:"multiple"};if(!a.isPresent(this.checkable))return e;var t="boolean"==typeof this.checkable,i=t?{enabled:this.checkable}:this.checkable;return Object.assign(e,i)},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.subscriptions.add(this.treeView.checkedChange.subscribe(function(t){return e.check(t)})),this.treeView.checkboxes=!0,this.treeView.isChecked=this.isItemChecked.bind(this)},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.isItemChecked=function(e,t){if(!this.checkKey)return this.isIndexChecked(t);var i=this.checkedKeys.indexOf(this.itemKey({dataItem:e,index:t}));return i>-1?"checked":"none"},e.prototype.isIndexChecked=function(e){var t=this.checkedKeys.filter(function(t){return 0===t.indexOf(e)});if(d(t,e))return"checked";var i=this.options,n=i.mode,r=i.checkParents;return"multiple"===n&&r&&t.length?"indeterminate":"none"},e.prototype.itemKey=function(e){return this.checkKey?"string"==typeof this.checkKey?e.dataItem[this.checkKey]:"function"==typeof this.checkKey?this.checkKey(e):void 0:e.index},e.prototype.check=function(e){var t=this.options,i=t.enabled,n=t.mode,r=this.checkActions[n]||a.noop;i&&r(e)},e.prototype.checkSingle=function(e){var t=this.itemKey(e.item);this.checkedKeys=this.checkedKeys[0]!==t?[t]:[],this.notify()},e.prototype.checkMultiple=function(e){this.checkNode(e),this.options.checkParents&&this.checkParents(e.parent),this.notify()},e.prototype.checkNode=function(e,t){var i=this,n=this.itemKey(e.item),r=this.checkedKeys.indexOf(n),o=r>-1,s=void 0===t?!o:t;!a.isPresent(n)||o&&t||(o?this.checkedKeys.splice(r,1):this.checkedKeys.push(n),this.options.checkChildren&&e.children.map(function(e){return i.checkNode(e,s)}))},e.prototype.checkParents=function(e){for(var t=e;t;){var i=this.itemKey(t.item),n=this.checkedKeys.indexOf(i);this.allChildrenSelected(t.children)?n===-1&&this.checkedKeys.push(i):n>-1&&this.checkedKeys.splice(n,1),t=t.parent}},e.prototype.allChildrenSelected=function(e){var t=this,i=function(e,i){return e&&"checked"===t.isItemChecked(i.dataItem,i.index)};return e.reduce(i,!0)},e.prototype.notify=function(){this.checkedKeysChange.emit(this.checkedKeys.slice())},n.__decorate([r.Input(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[Function])],e.prototype,"isChecked",null),n.__decorate([r.Input("checkBy"),n.__metadata("design:type",Object)],e.prototype,"checkKey",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Array)],e.prototype,"checkedKeys",void 0),n.__decorate([r.Input("kendoTreeViewCheckable"),n.__metadata("design:type",Object)],e.prototype,"checkable",void 0),n.__decorate([r.Output(),n.__metadata("design:type",r.EventEmitter)],e.prototype,"checkedKeysChange",void 0),e=n.__decorate([r.Directive({selector:"[kendoTreeViewCheckable]"}),n.__metadata("design:paramtypes",[o.TreeViewComponent])],e)}();t.CheckDirective=c},function(e,t){e.exports=l},function(e,t){e.exports=h},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(1),a=function(){function e(e,t){this.treeView=e,this.cdr=t,this.disabledKeys=[]}return Object.defineProperty(e.prototype,"isDisabled",{set:function(e){this.treeView.isDisabled=e},enumerable:!0,configurable:!0}),e.prototype.ngOnChanges=function(e){void 0===e&&(e={});var t=e.disabledKeys;t&&!t.firstChange&&this.detectChanges()},e.prototype.ngOnInit=function(){var e=this;this.treeView.isDisabled=function(t,i){return e.disabledKeys.indexOf(e.itemKey({dataItem:t,index:i}))>-1}},e.prototype.itemKey=function(e){return this.disableKey?"string"==typeof this.disableKey?e.dataItem[this.disableKey]:"function"==typeof this.disableKey?this.disableKey(e):void 0:e.index},e.prototype.detectChanges=function(){this.cdr.markForCheck()},n.__decorate([r.Input(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[Function])],e.prototype,"isDisabled",null),n.__decorate([r.Input("kendoTreeViewDisable"),n.__metadata("design:type",Object)],e.prototype,"disableKey",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Array)],e.prototype,"disabledKeys",void 0),e=n.__decorate([r.Directive({selector:"[kendoTreeViewDisable]"}),n.__metadata("design:paramtypes",[o.TreeViewComponent,r.ChangeDetectorRef])],e)}();t.DisableDirective=a},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(1),a=i(16),s=i(18);i(30),i(31);var d=function(){function e(e){this.treeView=e,this.expandedKeysChange=new r.EventEmitter,this.expandedKeys=[],this.subscriptions=new a.Subscription(function(){})}return Object.defineProperty(e.prototype,"isExpanded",{set:function(e){this.treeView.isExpanded=e},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.subscriptions.add(s.Observable.merge(this.treeView.expand.map(function(e){return n.__assign({expand:!0},e)}),this.treeView.collapse.map(function(e){return n.__assign({expand:!1},e)})).subscribe(this.toggleExpand.bind(this))),this.treeView.expandIcons=!0,this.treeView.isExpanded=function(t,i){return e.expandedKeys.indexOf(e.itemKey({dataItem:t,index:i}))>-1}},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.itemKey=function(e){if(this.expandKey){if("string"==typeof this.expandKey)return e.dataItem[this.expandKey];if("function"==typeof this.expandKey)return this.expandKey(e)}return e.index},e.prototype.toggleExpand=function(e){var t=e.index,i=e.dataItem,n=e.expand,r=this.itemKey({index:t,dataItem:i}),o=this.expandedKeys.indexOf(r),a=!1;o>-1&&!n?(this.expandedKeys.splice(o,1),a=!0):o===-1&&n&&(this.expandedKeys.push(r),a=!0),a&&this.expandedKeysChange.emit(this.expandedKeys)},n.__decorate([r.Input(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[Function])],e.prototype,"isExpanded",null),n.__decorate([r.Input("expandBy"),n.__metadata("design:type",Object)],e.prototype,"expandKey",void 0),n.__decorate([r.Output(),n.__metadata("design:type",r.EventEmitter)],e.prototype,"expandedKeysChange",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Array)],e.prototype,"expandedKeys",void 0),e=n.__decorate([r.Directive({selector:"[kendoTreeViewExpandable]"}),n.__metadata("design:paramtypes",[o.TreeViewComponent])],e)}();t.ExpandDirective=d},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(1),a=i(11),s=i(16);i(30),i(31);var d=function(){function e(e){var t=this;this.treeView=e,this.selectedKeys=[],this.selectedKeysChange=new r.EventEmitter,this.subscriptions=new s.Subscription(function(){}),this.selectActions={multiple:function(e){return t.selectMultiple(e)},single:function(e){return t.selectSingle(e)}}}return Object.defineProperty(e.prototype,"isSelected",{set:function(e){this.treeView.isSelected=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"getAriaMultiselectable",{get:function(){return"multiple"===this.options.mode},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"options",{get:function(){var e={enabled:!0,mode:"single"};if(!a.isPresent(this.selection))return e;var t="boolean"==typeof this.selection,i=t?{enabled:this.selection}:this.selection;return Object.assign(e,i)},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.subscriptions.add(this.treeView.selectionChange.subscribe(this.select.bind(this))),this.treeView.isSelected=function(t,i){return e.selectedKeys.indexOf(e.itemKey({dataItem:t,index:i}))>-1}},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.itemKey=function(e){return this.selectKey?"string"==typeof this.selectKey?e.dataItem[this.selectKey]:"function"==typeof this.selectKey?this.selectKey(e):void 0:e.index},e.prototype.select=function(e){var t=this.options,i=t.enabled,n=t.mode,r=this.selectActions[n]||a.noop;i&&r(e)},e.prototype.selectSingle=function(e){var t=this.itemKey(e);this.selectedKeys[0]!==t&&(this.selectedKeys=[t],this.notify())},e.prototype.selectMultiple=function(e){var t=this.itemKey(e),i=this.selectedKeys.indexOf(t),n=i>-1;a.isPresent(t)&&(n?this.selectedKeys.splice(i,1):this.selectedKeys.push(t),this.notify())},e.prototype.notify=function(){this.selectedKeysChange.emit(this.selectedKeys.slice())},n.__decorate([r.Input(),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[Function])],e.prototype,"isSelected",null),n.__decorate([r.Input("selectBy"),n.__metadata("design:type",Object)],e.prototype,"selectKey",void 0),n.__decorate([r.Input("kendoTreeViewSelectable"),n.__metadata("design:type",Object)],e.prototype,"selection",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Array)],e.prototype,"selectedKeys",void 0),n.__decorate([r.Output(),n.__metadata("design:type",r.EventEmitter)],e.prototype,"selectedKeysChange",void 0),n.__decorate([r.HostBinding("attr.aria-multiselectable"),n.__metadata("design:type",Boolean),n.__metadata("design:paramtypes",[])],e.prototype,"getAriaMultiselectable",null),e=n.__decorate([r.Directive({selector:"[kendoTreeViewSelectable]"}),n.__metadata("design:paramtypes",[o.TreeViewComponent])],e)}();t.SelectDirective=d},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(1),a=i(23),s=i(11),d=i(15),c=i(18);i(26);var p=function(){function e(e){this.treeView=e}return Object.defineProperty(e.prototype,"childrenField",{get:function(){return this._childrenField},set:function(e){if(!e)throw new Error("'childrenField' cannot be empty");this._childrenField=e},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;s.isPresent(this.childrenField)&&(this.treeView.children=function(t){return c.Observable.of(a.getter(e.childrenField,!0)(t))},this.treeView.hasChildren=function(t){return e.childrenField in t},this.treeView.isExpanded!==d.isExpanded&&(this.treeView.expandIcons=!0))},n.__decorate([r.Input(),n.__metadata("design:type",String),n.__metadata("design:paramtypes",[String])],e.prototype,"childrenField",null),e=n.__decorate([r.Directive({selector:"[kendoTreeViewHierarchyBinding]"}),n.__metadata("design:paramtypes",[o.TreeViewComponent])],e)}();t.HierarchyBindingDirective=p},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(5),a=i(8),s=i(18);i(37),i(38),i(39),i(40),i(26);var d=function(){function e(e,t,i){this.expandService=e,this.loadingService=t,this.cd=i,this._loading=!1}return Object.defineProperty(e.prototype,"loading",{get:function(){return this._loading},set:function(e){this._loading=e,this.cd.markForCheck()},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this,t=this.loadingService.changes.filter(function(t){return t===e.index});this.subscription=this.expandService.changes.filter(function(t){var i=t.index;return i===e.index}).do(function(t){var i=t.expand;!i&&e.loading&&(e.loading=!1)}).filter(function(e){var t=e.expand;return t}).switchMap(function(e){return s.Observable.of(e).delay(100).takeUntil(t)}).subscribe(function(){return e.loading=!0}),this.subscription.add(t.subscribe(function(){return e.loading=!1}))},e.prototype.ngOnDestroy=function(){this.subscription&&this.subscription.unsubscribe()},n.__decorate([r.HostBinding("class.k-i-loading"),n.__metadata("design:type",Boolean),n.__metadata("design:paramtypes",[Boolean])],e.prototype,"loading",null),n.__decorate([r.Input("kendoTreeViewLoading"),n.__metadata("design:type",String)],e.prototype,"index",void 0),e=n.__decorate([r.Directive({selector:"[kendoTreeViewLoading]"}),n.__metadata("design:paramtypes",[o.ExpandStateService,a.LoadingNotificationService,r.ChangeDetectorRef])],e)}();t.LoadingIndicatorDirective=d},function(e,t){e.exports=f},function(e,t){e.exports=v},function(e,t){e.exports=y},function(e,t){e.exports=m},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(1),a=i(23),s=i(11),d=i(42),c=i(18),p=function(e,t,i){return t.filter(function(t){return e(t)===i})},u=function(){function e(e){this.treeView=e,this.originalData=[]}return Object.defineProperty(e.prototype,"nodes",{set:function(e){if(this.originalData=e||[],s.isNullOrEmptyString(this.parentIdField))this.treeView.nodes=this.originalData.slice(0);else{var t=a.getter(this.parentIdField,!0);this.treeView.nodes=this.originalData.filter(d.compose(s.isBlank,t))}},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;if(s.isPresent(this.parentIdField)&&s.isPresent(this.idField)){var t=function(t){return p(a.getter(e.parentIdField,!0),e.originalData||[],a.getter(e.idField,!0)(t))};this.treeView.hasChildren=function(e){return t(e).length>0},this.treeView.children=function(e){return c.Observable.of(t(e))}}},e.prototype.ngOnChanges=function(e){s.isChanged("parentIdField",e,!1)&&(this.nodes=this.originalData)},n.__decorate([r.Input(),n.__metadata("design:type",Array),n.__metadata("design:paramtypes",[Array])],e.prototype,"nodes",null),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"parentIdField",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"idField",void 0),e=n.__decorate([r.Directive({selector:"[kendoTreeViewFlatDataBinding]"}),n.__metadata("design:paramtypes",[o.TreeViewComponent])],e)}();t.FlatDataBindingDirective=u},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.compose=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(t){return e.reduceRight(function(e,t){return t(e)},t)}}},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(9),a=i(13),s=i(5),d=i(7),c=i(14),p=i(11);i(37);var u=function(e,t){return{dataItem:t,index:e}},l=function(){function e(e,t,i,n,r,o,a){this.element=e,this.expandService=t,this.navigationService=i,this.selectionService=n,this.lookupService=r,this.renderer=o,this.ib=a,this.isDisabled=!1,this.ariaChecked="false",this.isInitialized=!1,this.subscriptions=[],this.subscribe()}return Object.defineProperty(e.prototype,"isChecked",{set:function(e){"checked"===e?this.ariaChecked="true":"indeterminate"===e?this.ariaChecked="mixed":this.ariaChecked="false"},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isExpanded",{get:function(){return this._isExpanded||!1},set:function(e){this._isExpanded=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isSelected",{get:function(){return this._isSelected||!1},set:function(e){this._isSelected=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"treeItem",{get:function(){return u(this.index,this.dataItem)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"parentTreeItem",{get:function(){return this.parentDataItem?u(this.parentIndex,this.parentDataItem):null},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){this.lookupService.registerItem(this.treeItem,this.parentTreeItem),this.registerNavigationItem(),this.isInitialized=!0,this.setAttribute("role","treeitem"),this.setAriaAttributes(),this.setDisabledClass(),this.updateTabIndex()},e.prototype.ngOnChanges=function(e){var t=e.index,i=e.isDisabled;(t||e.isChecked||e.isExpanded||e.isSelected)&&this.setAriaAttributes(),i&&this.setDisabledClass(),this.moveLookupItem(e),this.moveNavigationItem(t),this.disableNavigationItem(i)},e.prototype.ngOnDestroy=function(){this.navigationService.unregisterItem(this.index),this.subscriptions.map(function(e){return e.unsubscribe()}),this.subscriptions=[]},e.prototype.subscribe=function(){var e=this;this.subscriptions=[this.navigationService.moves.subscribe(function(){e.updateTabIndex(),e.focusItem()}),this.navigationService.expands.filter(function(t){var i=t.index;return i===e.index&&!e.isDisabled}).subscribe(function(t){var i=t.expand;return e.expand(i)})]},e.prototype.registerNavigationItem=function(){this.isDisabled||(this.navigationService.registerItem(this.index),this.activateItem())},e.prototype.activateItem=function(){var e=this.navigationService,t=this.selectionService,i=this.index;t.setFirstSelected(i,this.isSelected),!e.isActive(i)&&t.isFirstSelected(i)&&e.activateIndex(i)},e.prototype.expand=function(e){this.expandService[e?"expand":"collapse"](this.index,this.dataItem)},e.prototype.isFocusable=function(){return!this.isDisabled&&this.navigationService.isFocusable(this.index)},e.prototype.focusItem=function(){this.isInitialized&&!this.isDisabled&&this.navigationService.isActive(this.index)&&this.element.nativeElement.focus()},e.prototype.moveLookupItem=function(e){void 0===e&&(e={});var t=e.dataItem,i=e.index,n=e.parentDataItem,r=e.parentIndex;if((!i||!i.firstChange||this.lookupService.hasItem(this.index))&&(t||i||n||r)){var o=(i||{}).previousValue||this.index;this.lookupService.replaceItem(o,this.treeItem,this.parentTreeItem)}},e.prototype.moveNavigationItem=function(e){void 0===e&&(e={});var t=e.currentValue,i=e.firstChange,n=e.previousValue;!i&&p.isPresent(t)&&p.isPresent(n)&&(this.navigationService.unregisterItem(n),this.navigationService.registerItem(t))},e.prototype.disableNavigationItem=function(e){if(e&&!e.firstChange){var t=this.navigationService;this.isDisabled?(t.activateClosest(this.index),t.unregisterItem(this.index)):(t.registerItem(this.index),t.activateFocusable())}},e.prototype.setAriaAttributes=function(){this.setAttribute("aria-level",this.ib.level(this.index).toString()),this.setAttribute("aria-expanded",this.isExpanded.toString()),this.setAttribute("aria-selected",this.isSelected.toString()),this.setAttribute("aria-checked",this.ariaChecked)},e.prototype.setDisabledClass=function(){this.setClass("k-state-disabled",this.isDisabled)},e.prototype.setClass=function(e,t){var i=t?"addClass":"removeClass";this.renderer[i](this.element.nativeElement,e)},e.prototype.updateTabIndex=function(){this.setAttribute("tabIndex",this.isFocusable()?"0":"-1")},e.prototype.setAttribute=function(e,t){this.renderer.setAttribute(this.element.nativeElement,e,t)},n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"dataItem",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"index",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"parentDataItem",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"parentIndex",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String),n.__metadata("design:paramtypes",[String])],e.prototype,"isChecked",null),n.__decorate([r.Input(),n.__metadata("design:type",Boolean)],e.prototype,"isDisabled",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Boolean),n.__metadata("design:paramtypes",[Boolean])],e.prototype,"isExpanded",null),n.__decorate([r.Input(),n.__metadata("design:type",Boolean),n.__metadata("design:paramtypes",[Boolean])],e.prototype,"isSelected",null),e=n.__decorate([r.Directive({selector:"[kendoTreeViewItem]"}),n.__metadata("design:paramtypes",[r.ElementRef,s.ExpandStateService,o.NavigationService,a.SelectionService,c.TreeViewLookupService,r.Renderer2,d.IndexBuilderService])],e)}();t.TreeViewItemDirective=l},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(9),a=i(13),s=i(16);i(37),i(24);var d=function(){function e(e,t,i,n){var r=this;this.element=e,this.navigationService=t,this.selectionService=i,this.renderer=n,this.subscriptions=new s.Subscription(function(){}),this.subscriptions.add(this.navigationService.moves.subscribe(this.updateItem.bind(this))),this.subscriptions.add(this.navigationService.selects.filter(function(e){return e===r.index}).subscribe(function(e){return r.selectionService.select(e,r.dataItem)})),this.subscriptions.add(this.selectionService.changes.subscribe(this.updateSelection.bind(this)))}return e.prototype.ngOnInit=function(){this.updateSelection()},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.updateItem=function(){this.render(this.navigationService.isActive(this.index),"k-state-focused")},e.prototype.updateSelection=function(){this.render(this.isSelected(this.dataItem,this.index),"k-state-selected")},e.prototype.render=function(e,t){var i=e?"addClass":"removeClass";this.renderer[i](this.element.nativeElement,t)},n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"dataItem",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"index",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Function)],e.prototype,"isSelected",void 0),e=n.__decorate([r.Directive({selector:"[kendoTreeViewItemContent]"}),n.__metadata("design:paramtypes",[r.ElementRef,o.NavigationService,a.SelectionService,r.Renderer2])],e)}();t.TreeViewItemContentDirective=d},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(46),a=[o.CheckBoxComponent],s=function(){function e(){}return e=n.__decorate([r.NgModule({declarations:[a],exports:[a]})],e)}();t.CheckBoxModule=s},function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=i(2),r=i(3),o=i(11),a=function(){function e(e,t){this.element=e,this.renderer=t,this.id="_"+o.guid(),this.checkState="none",this.tabindex=0,this.checkStateChange=new r.EventEmitter}return Object.defineProperty(e.prototype,"classWrapper",{get:function(){return!0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"indeterminate",{get:function(){return"indeterminate"===this.checkState},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"checked",{get:function(){return"checked"===this.checkState},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){this.renderer.removeAttribute(this.element.nativeElement,"tabindex")},e.prototype.handleChange=function(e){this.checkStateChange.emit(e.target.checked?"checked":"none")},n.__decorate([r.HostBinding("class.k-checkbox-wrapper"),n.__metadata("design:type",Boolean),n.__metadata("design:paramtypes",[])],e.prototype,"classWrapper",null),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"id",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"checkState",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"labelText",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Number)],e.prototype,"tabindex",void 0),n.__decorate([r.Output(),n.__metadata("design:type",r.EventEmitter)],e.prototype,"checkStateChange",void 0),e=n.__decorate([r.Component({selector:"kendo-checkbox",template:'\n <input\n class="k-checkbox"\n type="checkbox"\n [id]="id"\n [checked]="checked"\n [indeterminate]="indeterminate"\n [tabindex]="tabindex"\n (change)="handleChange($event)"\n />\n <label\n class="k-checkbox-label"\n tabindex="-1"\n [for]="id"\n >{{labelText}}</label>\n '}),n.__metadata("design:paramtypes",[r.ElementRef,r.Renderer2])],e)}();t.CheckBoxComponent=a}])});

@@ -13,2 +13,6 @@ import { CheckedState } from './checkbox/checked-state';

*/
export declare const isDisabled: <T>(item: T, index: string) => boolean;
/**
* @hidden
*/
export declare const isExpanded: <T>(item: T, index: string) => boolean;

@@ -15,0 +19,0 @@ /**

@@ -12,2 +12,6 @@ /**

*/
export var isDisabled = function () { return false; };
/**
* @hidden
*/
export var isExpanded = function () { return true; };

@@ -14,0 +18,0 @@ /**

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"hasChildren":{"__symbolic":"error","message":"Function call not supported","line":5,"character":52},"isChecked":{"__symbolic":"error","message":"Function call not supported","line":10,"character":70},"isExpanded":{"__symbolic":"error","message":"Function call not supported","line":15,"character":66},"isSelected":{"__symbolic":"error","message":"Function call not supported","line":20,"character":66}}},{"__symbolic":"module","version":1,"metadata":{"hasChildren":{"__symbolic":"error","message":"Function call not supported","line":5,"character":52},"isChecked":{"__symbolic":"error","message":"Function call not supported","line":10,"character":70},"isExpanded":{"__symbolic":"error","message":"Function call not supported","line":15,"character":66},"isSelected":{"__symbolic":"error","message":"Function call not supported","line":20,"character":66}}}]
[{"__symbolic":"module","version":3,"metadata":{"hasChildren":{"__symbolic":"error","message":"Function call not supported","line":5,"character":52},"isChecked":{"__symbolic":"error","message":"Function call not supported","line":10,"character":70},"isDisabled":{"__symbolic":"error","message":"Function call not supported","line":15,"character":66},"isExpanded":{"__symbolic":"error","message":"Function call not supported","line":20,"character":66},"isSelected":{"__symbolic":"error","message":"Function call not supported","line":25,"character":66}}},{"__symbolic":"module","version":1,"metadata":{"hasChildren":{"__symbolic":"error","message":"Function call not supported","line":5,"character":52},"isChecked":{"__symbolic":"error","message":"Function call not supported","line":10,"character":70},"isDisabled":{"__symbolic":"error","message":"Function call not supported","line":15,"character":66},"isExpanded":{"__symbolic":"error","message":"Function call not supported","line":20,"character":66},"isSelected":{"__symbolic":"error","message":"Function call not supported","line":25,"character":66}}}]

@@ -7,3 +7,3 @@ import { OnDestroy, OnInit, EventEmitter } from '@angular/core';

/**
* A directive which manages the expand state of the TreeView.
* A directive which manages the expanded state of the TreeView.
*/

@@ -10,0 +10,0 @@ export declare class ExpandDirective implements OnInit, OnDestroy {

@@ -9,3 +9,3 @@ import * as tslib_1 from "tslib";

/**
* A directive which manages the expand state of the TreeView.
* A directive which manages the expanded state of the TreeView.
*/

@@ -12,0 +12,0 @@ var ExpandDirective = (function () {

@@ -8,3 +8,4 @@ /**

indexForLevel(index: string, level: number): string;
lastLevelIndex(index?: string): number;
level(index: string): number;
}

@@ -17,2 +17,10 @@ import { Injectable } from '@angular/core';

};
IndexBuilderService.prototype.lastLevelIndex = function (index) {
if (index === void 0) { index = ''; }
var parts = index.split(this.INDEX_SEPARATOR);
if (!parts.length) {
return NaN;
}
return parseInt(parts[parts.length - 1], 10);
};
IndexBuilderService.prototype.level = function (index) {

@@ -19,0 +27,0 @@ return index.split(this.INDEX_SEPARATOR).length;

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"IndexBuilderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"nodeIndex":[{"__symbolic":"method"}],"indexForLevel":[{"__symbolic":"method"}],"level":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"IndexBuilderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"nodeIndex":[{"__symbolic":"method"}],"indexForLevel":[{"__symbolic":"method"}],"level":[{"__symbolic":"method"}]}}}}]
[{"__symbolic":"module","version":3,"metadata":{"IndexBuilderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"nodeIndex":[{"__symbolic":"method"}],"indexForLevel":[{"__symbolic":"method"}],"lastLevelIndex":[{"__symbolic":"method"}],"level":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"IndexBuilderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"nodeIndex":[{"__symbolic":"method"}],"indexForLevel":[{"__symbolic":"method"}],"lastLevelIndex":[{"__symbolic":"method"}],"level":[{"__symbolic":"method"}]}}}}]

@@ -5,2 +5,3 @@ export { TreeViewComponent } from './treeview.component';

export { CheckDirective } from './check.directive';
export { DisableDirective } from './disable.directive';
export { ExpandDirective } from './expand.directive';

@@ -7,0 +8,0 @@ export { SelectDirective } from './selection/select.directive';

@@ -5,2 +5,3 @@ export { TreeViewComponent } from './treeview.component';

export { CheckDirective } from './check.directive';
export { DisableDirective } from './disable.directive';
export { ExpandDirective } from './expand.directive';

@@ -7,0 +8,0 @@ export { SelectDirective } from './selection/select.directive';

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{},"exports":[{"from":"./treeview.component","export":["TreeViewComponent"]},{"from":"./treeview.module","export":["TreeViewModule"]},{"from":"./node-template.directive","export":["NodeTemplateDirective"]},{"from":"./check.directive","export":["CheckDirective"]},{"from":"./expand.directive","export":["ExpandDirective"]},{"from":"./selection/select.directive","export":["SelectDirective"]},{"from":"./selection/selectable-settings","export":["SelectableSettings"]},{"from":"./checkable-settings","export":["CheckableSettings"]},{"from":"./checkbox/checked-state","export":["CheckedState"]},{"from":"./hierarchy-binding.directive","export":["HierarchyBindingDirective"]},{"from":"./flat-binding.directive","export":["FlatDataBindingDirective"]}]},{"__symbolic":"module","version":1,"metadata":{},"exports":[{"from":"./treeview.component","export":["TreeViewComponent"]},{"from":"./treeview.module","export":["TreeViewModule"]},{"from":"./node-template.directive","export":["NodeTemplateDirective"]},{"from":"./check.directive","export":["CheckDirective"]},{"from":"./expand.directive","export":["ExpandDirective"]},{"from":"./selection/select.directive","export":["SelectDirective"]},{"from":"./selection/selectable-settings","export":["SelectableSettings"]},{"from":"./checkable-settings","export":["CheckableSettings"]},{"from":"./checkbox/checked-state","export":["CheckedState"]},{"from":"./hierarchy-binding.directive","export":["HierarchyBindingDirective"]},{"from":"./flat-binding.directive","export":["FlatDataBindingDirective"]}]}]
[{"__symbolic":"module","version":3,"metadata":{},"exports":[{"from":"./treeview.component","export":["TreeViewComponent"]},{"from":"./treeview.module","export":["TreeViewModule"]},{"from":"./node-template.directive","export":["NodeTemplateDirective"]},{"from":"./check.directive","export":["CheckDirective"]},{"from":"./disable.directive","export":["DisableDirective"]},{"from":"./expand.directive","export":["ExpandDirective"]},{"from":"./selection/select.directive","export":["SelectDirective"]},{"from":"./selection/selectable-settings","export":["SelectableSettings"]},{"from":"./checkable-settings","export":["CheckableSettings"]},{"from":"./checkbox/checked-state","export":["CheckedState"]},{"from":"./hierarchy-binding.directive","export":["HierarchyBindingDirective"]},{"from":"./flat-binding.directive","export":["FlatDataBindingDirective"]}]},{"__symbolic":"module","version":1,"metadata":{},"exports":[{"from":"./treeview.component","export":["TreeViewComponent"]},{"from":"./treeview.module","export":["TreeViewModule"]},{"from":"./node-template.directive","export":["NodeTemplateDirective"]},{"from":"./check.directive","export":["CheckDirective"]},{"from":"./disable.directive","export":["DisableDirective"]},{"from":"./expand.directive","export":["ExpandDirective"]},{"from":"./selection/select.directive","export":["SelectDirective"]},{"from":"./selection/selectable-settings","export":["SelectableSettings"]},{"from":"./checkable-settings","export":["CheckableSettings"]},{"from":"./checkbox/checked-state","export":["CheckedState"]},{"from":"./hierarchy-binding.directive","export":["HierarchyBindingDirective"]},{"from":"./flat-binding.directive","export":["FlatDataBindingDirective"]}]}]

@@ -10,2 +10,3 @@ import { NavigationItem } from './navigation-item.interface';

lastNode(): NavigationItem;
closestNode(index: string): NavigationItem;
findNode(index: string): NavigationItem;

@@ -17,6 +18,9 @@ findParent(index: string): NavigationItem;

private childLevel(nodes);
private container(node?);
private find(index, nodes);
private container(node);
private prevNode(node);
private nextNode(node);
private closestIndexPosition(nodes, index);
private insert(node, parent?);
private prevNode(parent, index);
private nextNode(parent, index);
private sibling(node?, offset?);
}

@@ -23,4 +23,3 @@ import { IndexBuilderService } from '../index-builder.service';

};
var unlink = function (node) {
var prev = node.prev, next = node.next;
var unlink = function (prev, next) {
if (prev) {

@@ -51,2 +50,7 @@ prev.next = next;

};
NavigationModel.prototype.closestNode = function (index) {
var prev = safe(this.findNode(index)).prev;
var sibling = prev || this.firstNode();
return safe(sibling).index === index ? this.sibling(sibling, 1) : sibling;
};
NavigationModel.prototype.findNode = function (index) {

@@ -67,7 +71,7 @@ return this.find(index, this.nodes);

if (parent || level === 1) {
var prev = this.prevNode(parent);
var next = this.nextNode(parent);
var item = { children: children, index: index, parent: parent, prev: prev, next: next };
this.container(parent).push(item);
link(item);
var prev = this.prevNode(parent, index);
var next = this.nextNode(parent, index);
var node = { children: children, index: index, parent: parent, prev: prev, next: next };
link(node);
this.insert(node, parent);
}

@@ -80,3 +84,3 @@ };

}
unlink(node);
unlink(node.prev, this.nextNode(node.parent, node.index));
var children = this.container(node.parent);

@@ -91,2 +95,5 @@ children.splice(children.indexOf(node), 1);

};
NavigationModel.prototype.container = function (node) {
return node ? node.children : this.nodes;
};
NavigationModel.prototype.find = function (index, nodes) {

@@ -102,14 +109,39 @@ var childLevel = this.childLevel(nodes);

};
NavigationModel.prototype.container = function (node) {
return node ? node.children : this.nodes;
NavigationModel.prototype.closestIndexPosition = function (nodes, index) {
var indexPosition = this.ib.lastLevelIndex(index);
var idx = 0;
while (idx < nodes.length) {
if (this.ib.lastLevelIndex(nodes[idx].index) > indexPosition) {
return idx;
}
idx += 1;
}
return idx;
};
NavigationModel.prototype.prevNode = function (node) {
return findLast(last(this.container(node))) || node || null;
NavigationModel.prototype.insert = function (node, parent) {
var nodes = this.container(parent);
nodes.splice(this.closestIndexPosition(nodes, node.index), 0, node);
};
NavigationModel.prototype.nextNode = function (node) {
NavigationModel.prototype.prevNode = function (parent, index) {
var nodes = this.container(parent);
var partialList = nodes.slice(0, this.closestIndexPosition(nodes, index));
return findLast(last(partialList)) || parent || null;
};
NavigationModel.prototype.nextNode = function (parent, index) {
var children = this.container(parent);
var currentNode = this.findNode(index);
if (!parent && currentNode) {
return this.sibling(currentNode, 1);
}
var nodeIndex = this.closestIndexPosition(children, index);
var lastChild = last(children.slice(nodeIndex));
return lastChild ? lastChild : this.sibling(parent, 1);
};
NavigationModel.prototype.sibling = function (node, offset) {
if (!node) {
return null;
}
var container = this.container(this.findParent(node.index));
return container[container.indexOf(node) + 1] || null;
var parent = this.findParent(node.index);
var container = this.container(parent);
return container[container.indexOf(node) + offset] || this.sibling(parent, offset) || null;
};

@@ -116,0 +148,0 @@ return NavigationModel;

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"NavigationModel":{"__symbolic":"class","members":{"firstNode":[{"__symbolic":"method"}],"lastNode":[{"__symbolic":"method"}],"findNode":[{"__symbolic":"method"}],"findParent":[{"__symbolic":"method"}],"findChild":[{"__symbolic":"method"}],"registerItem":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"childLevel":[{"__symbolic":"method"}],"find":[{"__symbolic":"method"}],"container":[{"__symbolic":"method"}],"prevNode":[{"__symbolic":"method"}],"nextNode":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"NavigationModel":{"__symbolic":"class","members":{"firstNode":[{"__symbolic":"method"}],"lastNode":[{"__symbolic":"method"}],"findNode":[{"__symbolic":"method"}],"findParent":[{"__symbolic":"method"}],"findChild":[{"__symbolic":"method"}],"registerItem":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"childLevel":[{"__symbolic":"method"}],"find":[{"__symbolic":"method"}],"container":[{"__symbolic":"method"}],"prevNode":[{"__symbolic":"method"}],"nextNode":[{"__symbolic":"method"}]}}}}]
[{"__symbolic":"module","version":3,"metadata":{"NavigationModel":{"__symbolic":"class","members":{"firstNode":[{"__symbolic":"method"}],"lastNode":[{"__symbolic":"method"}],"closestNode":[{"__symbolic":"method"}],"findNode":[{"__symbolic":"method"}],"findParent":[{"__symbolic":"method"}],"findChild":[{"__symbolic":"method"}],"registerItem":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"childLevel":[{"__symbolic":"method"}],"container":[{"__symbolic":"method"}],"find":[{"__symbolic":"method"}],"closestIndexPosition":[{"__symbolic":"method"}],"insert":[{"__symbolic":"method"}],"prevNode":[{"__symbolic":"method"}],"nextNode":[{"__symbolic":"method"}],"sibling":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"NavigationModel":{"__symbolic":"class","members":{"firstNode":[{"__symbolic":"method"}],"lastNode":[{"__symbolic":"method"}],"closestNode":[{"__symbolic":"method"}],"findNode":[{"__symbolic":"method"}],"findParent":[{"__symbolic":"method"}],"findChild":[{"__symbolic":"method"}],"registerItem":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"childLevel":[{"__symbolic":"method"}],"container":[{"__symbolic":"method"}],"find":[{"__symbolic":"method"}],"closestIndexPosition":[{"__symbolic":"method"}],"insert":[{"__symbolic":"method"}],"prevNode":[{"__symbolic":"method"}],"nextNode":[{"__symbolic":"method"}],"sibling":[{"__symbolic":"method"}]}}}}]

@@ -27,2 +27,4 @@ import { NavigationItem } from './navigation-item.interface';

activateIndex(index: string): void;
activateClosest(index: string): void;
activateFocusable(): void;
deactivate(): void;

@@ -29,0 +31,0 @@ checkIndex(index: string): void;

@@ -80,2 +80,16 @@ import { Injectable } from '@angular/core';

};
NavigationService.prototype.activateClosest = function (index) {
if (!index || nodeIndex(this.focusableItem) !== index) {
return;
}
this.activeItem = this.model.closestNode(index);
this.notifyMove();
};
NavigationService.prototype.activateFocusable = function () {
if (this.activeItem) {
return;
}
this.activeItem = this.model.firstNode();
this.notifyMove();
};
NavigationService.prototype.deactivate = function () {

@@ -82,0 +96,0 @@ if (!this.navigable || !this.isFocused) {

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"NavigationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"activate":[{"__symbolic":"method"}],"activateParent":[{"__symbolic":"method"}],"activateIndex":[{"__symbolic":"method"}],"deactivate":[{"__symbolic":"method"}],"checkIndex":[{"__symbolic":"method"}],"selectIndex":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"registerItem":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"move":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"moveToParent":[{"__symbolic":"method"}],"moveToChild":[{"__symbolic":"method"}],"notifyExpand":[{"__symbolic":"method"}],"notifyMove":[{"__symbolic":"method"}],"navigationState":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"NavigationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"activate":[{"__symbolic":"method"}],"activateParent":[{"__symbolic":"method"}],"activateIndex":[{"__symbolic":"method"}],"deactivate":[{"__symbolic":"method"}],"checkIndex":[{"__symbolic":"method"}],"selectIndex":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"registerItem":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"move":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"moveToParent":[{"__symbolic":"method"}],"moveToChild":[{"__symbolic":"method"}],"notifyExpand":[{"__symbolic":"method"}],"notifyMove":[{"__symbolic":"method"}],"navigationState":[{"__symbolic":"method"}]}}}}]
[{"__symbolic":"module","version":3,"metadata":{"NavigationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"activate":[{"__symbolic":"method"}],"activateParent":[{"__symbolic":"method"}],"activateIndex":[{"__symbolic":"method"}],"activateClosest":[{"__symbolic":"method"}],"activateFocusable":[{"__symbolic":"method"}],"deactivate":[{"__symbolic":"method"}],"checkIndex":[{"__symbolic":"method"}],"selectIndex":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"registerItem":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"move":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"moveToParent":[{"__symbolic":"method"}],"moveToChild":[{"__symbolic":"method"}],"notifyExpand":[{"__symbolic":"method"}],"notifyMove":[{"__symbolic":"method"}],"navigationState":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"NavigationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"activate":[{"__symbolic":"method"}],"activateParent":[{"__symbolic":"method"}],"activateIndex":[{"__symbolic":"method"}],"activateClosest":[{"__symbolic":"method"}],"activateFocusable":[{"__symbolic":"method"}],"deactivate":[{"__symbolic":"method"}],"checkIndex":[{"__symbolic":"method"}],"selectIndex":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"registerItem":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"move":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"moveToParent":[{"__symbolic":"method"}],"moveToChild":[{"__symbolic":"method"}],"notifyExpand":[{"__symbolic":"method"}],"notifyMove":[{"__symbolic":"method"}],"navigationState":[{"__symbolic":"method"}]}}}}]

@@ -7,2 +7,3 @@ import { NgModule } from '@angular/core';

import { CheckDirective } from './check.directive';
import { DisableDirective } from './disable.directive';
import { ExpandDirective } from './expand.directive';

@@ -23,2 +24,3 @@ import { SelectDirective } from './selection/select.directive';

CheckDirective,
DisableDirective,
ExpandDirective,

@@ -25,0 +27,0 @@ SelectDirective,

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"SharedModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"declarations":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./treeview-group.component","name":"TreeViewGroupComponent"},{"__symbolic":"reference","module":"./treeview-item.directive","name":"TreeViewItemDirective"},{"__symbolic":"reference","module":"./treeview-item-content.directive","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./loading-indicator.directive","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"exports":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./treeview-group.component","name":"TreeViewGroupComponent"},{"__symbolic":"reference","module":"./treeview-item.directive","name":"TreeViewItemDirective"},{"__symbolic":"reference","module":"./treeview-item-content.directive","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./loading-indicator.directive","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule"},{"__symbolic":"reference","module":"./checkbox/checkbox.module","name":"CheckBoxModule"}]}]}]}}},{"__symbolic":"module","version":1,"metadata":{"SharedModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"declarations":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./treeview-group.component","name":"TreeViewGroupComponent"},{"__symbolic":"reference","module":"./treeview-item.directive","name":"TreeViewItemDirective"},{"__symbolic":"reference","module":"./treeview-item-content.directive","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./loading-indicator.directive","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"exports":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./treeview-group.component","name":"TreeViewGroupComponent"},{"__symbolic":"reference","module":"./treeview-item.directive","name":"TreeViewItemDirective"},{"__symbolic":"reference","module":"./treeview-item-content.directive","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./loading-indicator.directive","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule"},{"__symbolic":"reference","module":"./checkbox/checkbox.module","name":"CheckBoxModule"}]}]}]}}}]
[{"__symbolic":"module","version":3,"metadata":{"SharedModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"declarations":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./treeview-group.component","name":"TreeViewGroupComponent"},{"__symbolic":"reference","module":"./treeview-item.directive","name":"TreeViewItemDirective"},{"__symbolic":"reference","module":"./treeview-item-content.directive","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./disable.directive","name":"DisableDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./loading-indicator.directive","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"exports":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./treeview-group.component","name":"TreeViewGroupComponent"},{"__symbolic":"reference","module":"./treeview-item.directive","name":"TreeViewItemDirective"},{"__symbolic":"reference","module":"./treeview-item-content.directive","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./disable.directive","name":"DisableDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./loading-indicator.directive","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule"},{"__symbolic":"reference","module":"./checkbox/checkbox.module","name":"CheckBoxModule"}]}]}]}}},{"__symbolic":"module","version":1,"metadata":{"SharedModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"declarations":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./treeview-group.component","name":"TreeViewGroupComponent"},{"__symbolic":"reference","module":"./treeview-item.directive","name":"TreeViewItemDirective"},{"__symbolic":"reference","module":"./treeview-item-content.directive","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./disable.directive","name":"DisableDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./loading-indicator.directive","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"exports":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./treeview-group.component","name":"TreeViewGroupComponent"},{"__symbolic":"reference","module":"./treeview-item.directive","name":"TreeViewItemDirective"},{"__symbolic":"reference","module":"./treeview-item-content.directive","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./disable.directive","name":"DisableDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./loading-indicator.directive","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule"},{"__symbolic":"reference","module":"./checkbox/checkbox.module","name":"CheckBoxModule"}]}]}]}}}]

@@ -37,2 +37,3 @@ import { ChangeDetectorRef, TemplateRef, OnChanges, OnInit, OnDestroy } from '@angular/core';

isChecked: <T>(item: T, index: string) => CheckedState;
isDisabled: <T>(item: T, index: string) => boolean;
isExpanded: <T>(item: T, index: string) => boolean;

@@ -39,0 +40,0 @@ isSelected: <T>(item: T, index: string) => boolean;

@@ -30,2 +30,3 @@ import { Component, ChangeDetectorRef, HostBinding, Input } from '@angular/core';

this.isChecked = function () { return 'none'; };
this.isDisabled = function () { return false; };
this.isExpanded = function () { return false; };

@@ -134,3 +135,3 @@ this.isSelected = function () { return false; };

selector: '[kendoTreeViewGroup]',
template: "\n <li\n *ngFor=\"let node of data; let index = index\" class=\"k-item\"\n kendoTreeViewItem\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [parentDataItem]=\"parentDataItem\"\n [parentIndex]=\"parentIndex\"\n [isChecked]=\"isChecked(node, nodeIndex(index))\"\n [isExpanded]=\"isExpanded(node, nodeIndex(index))\"\n [isSelected]=\"isSelected(node, nodeIndex(index))\"\n [attr.data-treeindex]=\"nodeIndex(index)\"\n >\n <div class=\"k-mid\">\n <span\n class=\"k-icon\"\n [class.k-i-collapse]=\"isExpanded(node, nodeIndex(index))\"\n [class.k-i-expand]=\"!isExpanded(node, nodeIndex(index))\"\n [kendoTreeViewLoading]=\"nodeIndex(index)\"\n (click)=\"expandNode(nodeIndex(index), node, !isExpanded(node, nodeIndex(index)))\"\n *ngIf=\"expandIcons && hasChildren(node)\"\n >\n </span>\n <kendo-checkbox\n *ngIf=\"checkboxes\"\n [checkState]=\"isChecked(node, nodeIndex(index))\"\n (checkStateChange)=\"checkNode(nodeIndex(index))\"\n tabindex=\"-1\"\n ></kendo-checkbox>\n <span kendoTreeViewItemContent\n [attr.data-treeindex]=\"nodeIndex(index)\"\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [isSelected]=\"isSelected\"\n class=\"k-in\"\n >\n <ng-container [ngSwitch]=\"hasTemplate\">\n <ng-container *ngSwitchCase=\"true\">\n <ng-template\n [ngTemplateOutlet]=\"nodeTemplateRef\" [ngTemplateOutletContext]=\"{$implicit: node, index: nodeIndex(index)}\"\n >\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{nodeText(node)}}\n </ng-container>\n </ng-container>\n </span>\n </div>\n <ul\n *ngIf=\"isExpanded(node, nodeIndex(index)) && hasChildren(node)\"\n kendoTreeViewGroup\n role=\"group\"\n [nodes]=\"fetchChildren(node, nodeIndex(index))\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplateRef\"\n [parentIndex]=\"nodeIndex(index)\"\n [parentDataItem]=\"node\"\n [textField]=\"nextFields\"\n [@toggle]=\"true\"\n >\n </ul>\n </li>\n "
template: "\n <li\n *ngFor=\"let node of data; let index = index\" class=\"k-item\"\n kendoTreeViewItem\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [parentDataItem]=\"parentDataItem\"\n [parentIndex]=\"parentIndex\"\n [isChecked]=\"isChecked(node, nodeIndex(index))\"\n [isDisabled]=\"isDisabled(node, nodeIndex(index))\"\n [isExpanded]=\"isExpanded(node, nodeIndex(index))\"\n [isSelected]=\"isSelected(node, nodeIndex(index))\"\n [attr.data-treeindex]=\"nodeIndex(index)\"\n >\n <div class=\"k-mid\">\n <span\n class=\"k-icon\"\n [class.k-i-collapse]=\"isExpanded(node, nodeIndex(index))\"\n [class.k-i-expand]=\"!isExpanded(node, nodeIndex(index))\"\n [kendoTreeViewLoading]=\"nodeIndex(index)\"\n (click)=\"expandNode(nodeIndex(index), node, !isExpanded(node, nodeIndex(index)))\"\n *ngIf=\"expandIcons && hasChildren(node)\"\n >\n </span>\n <kendo-checkbox\n *ngIf=\"checkboxes\"\n [checkState]=\"isChecked(node, nodeIndex(index))\"\n (checkStateChange)=\"checkNode(nodeIndex(index))\"\n tabindex=\"-1\"\n ></kendo-checkbox>\n <span kendoTreeViewItemContent\n [attr.data-treeindex]=\"nodeIndex(index)\"\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [isSelected]=\"isSelected\"\n class=\"k-in\"\n >\n <ng-container [ngSwitch]=\"hasTemplate\">\n <ng-container *ngSwitchCase=\"true\">\n <ng-template\n [ngTemplateOutlet]=\"nodeTemplateRef\" [ngTemplateOutletContext]=\"{$implicit: node, index: nodeIndex(index)}\"\n >\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{nodeText(node)}}\n </ng-container>\n </ng-container>\n </span>\n </div>\n <ul\n *ngIf=\"isExpanded(node, nodeIndex(index)) && hasChildren(node)\"\n kendoTreeViewGroup\n role=\"group\"\n [nodes]=\"fetchChildren(node, nodeIndex(index))\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isDisabled]=\"isDisabled\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplateRef\"\n [parentIndex]=\"nodeIndex(index)\"\n [parentDataItem]=\"node\"\n [textField]=\"nextFields\"\n [@toggle]=\"true\"\n >\n </ul>\n </li>\n "
},] },

@@ -158,2 +159,3 @@ ];

'isChecked': [{ type: Input },],
'isDisabled': [{ type: Input },],
'isExpanded': [{ type: Input },],

@@ -160,0 +162,0 @@ 'isSelected': [{ type: Input },],

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"TreeViewGroupComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"animations":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger"},"arguments":["toggle",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition"},"arguments":["void => *",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":0}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate"},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":"*"}]}]}]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition"},"arguments":["* => void",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":"*"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate"},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":0}]}]}]]}]]}],"selector":"[kendoTreeViewGroup]","template":"\n <li\n *ngFor=\"let node of data; let index = index\" class=\"k-item\"\n kendoTreeViewItem\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [parentDataItem]=\"parentDataItem\"\n [parentIndex]=\"parentIndex\"\n [isChecked]=\"isChecked(node, nodeIndex(index))\"\n [isExpanded]=\"isExpanded(node, nodeIndex(index))\"\n [isSelected]=\"isSelected(node, nodeIndex(index))\"\n [attr.data-treeindex]=\"nodeIndex(index)\"\n >\n <div class=\"k-mid\">\n <span\n class=\"k-icon\"\n [class.k-i-collapse]=\"isExpanded(node, nodeIndex(index))\"\n [class.k-i-expand]=\"!isExpanded(node, nodeIndex(index))\"\n [kendoTreeViewLoading]=\"nodeIndex(index)\"\n (click)=\"expandNode(nodeIndex(index), node, !isExpanded(node, nodeIndex(index)))\"\n *ngIf=\"expandIcons && hasChildren(node)\"\n >\n </span>\n <kendo-checkbox\n *ngIf=\"checkboxes\"\n [checkState]=\"isChecked(node, nodeIndex(index))\"\n (checkStateChange)=\"checkNode(nodeIndex(index))\"\n tabindex=\"-1\"\n ></kendo-checkbox>\n <span kendoTreeViewItemContent\n [attr.data-treeindex]=\"nodeIndex(index)\"\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [isSelected]=\"isSelected\"\n class=\"k-in\"\n >\n <ng-container [ngSwitch]=\"hasTemplate\">\n <ng-container *ngSwitchCase=\"true\">\n <ng-template\n [ngTemplateOutlet]=\"nodeTemplateRef\" [ngTemplateOutletContext]=\"{$implicit: node, index: nodeIndex(index)}\"\n >\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{nodeText(node)}}\n </ng-container>\n </ng-container>\n </span>\n </div>\n <ul\n *ngIf=\"isExpanded(node, nodeIndex(index)) && hasChildren(node)\"\n kendoTreeViewGroup\n role=\"group\"\n [nodes]=\"fetchChildren(node, nodeIndex(index))\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplateRef\"\n [parentIndex]=\"nodeIndex(index)\"\n [parentDataItem]=\"node\"\n [textField]=\"nextFields\"\n [@toggle]=\"true\"\n >\n </ul>\n </li>\n "}]}],"members":{"kGroupClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-group"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["attr.role"]}]}],"checkboxes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"expandIcons":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"nodeTemplateRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./loading-notification.service","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef"}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"expandNode":[{"__symbolic":"method"}],"checkNode":[{"__symbolic":"method"}],"nodeIndex":[{"__symbolic":"method"}],"nodeText":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"fetchChildren":[{"__symbolic":"method"}],"updateParentChildren":[{"__symbolic":"method"}],"mapToTreeItem":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"TreeViewGroupComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"animations":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger"},"arguments":["toggle",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition"},"arguments":["void => *",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":0}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate"},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":"*"}]}]}]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition"},"arguments":["* => void",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":"*"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate"},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":0}]}]}]]}]]}],"selector":"[kendoTreeViewGroup]","template":"\n <li\n *ngFor=\"let node of data; let index = index\" class=\"k-item\"\n kendoTreeViewItem\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [parentDataItem]=\"parentDataItem\"\n [parentIndex]=\"parentIndex\"\n [isChecked]=\"isChecked(node, nodeIndex(index))\"\n [isExpanded]=\"isExpanded(node, nodeIndex(index))\"\n [isSelected]=\"isSelected(node, nodeIndex(index))\"\n [attr.data-treeindex]=\"nodeIndex(index)\"\n >\n <div class=\"k-mid\">\n <span\n class=\"k-icon\"\n [class.k-i-collapse]=\"isExpanded(node, nodeIndex(index))\"\n [class.k-i-expand]=\"!isExpanded(node, nodeIndex(index))\"\n [kendoTreeViewLoading]=\"nodeIndex(index)\"\n (click)=\"expandNode(nodeIndex(index), node, !isExpanded(node, nodeIndex(index)))\"\n *ngIf=\"expandIcons && hasChildren(node)\"\n >\n </span>\n <kendo-checkbox\n *ngIf=\"checkboxes\"\n [checkState]=\"isChecked(node, nodeIndex(index))\"\n (checkStateChange)=\"checkNode(nodeIndex(index))\"\n tabindex=\"-1\"\n ></kendo-checkbox>\n <span kendoTreeViewItemContent\n [attr.data-treeindex]=\"nodeIndex(index)\"\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [isSelected]=\"isSelected\"\n class=\"k-in\"\n >\n <ng-container [ngSwitch]=\"hasTemplate\">\n <ng-container *ngSwitchCase=\"true\">\n <ng-template\n [ngTemplateOutlet]=\"nodeTemplateRef\" [ngTemplateOutletContext]=\"{$implicit: node, index: nodeIndex(index)}\"\n >\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{nodeText(node)}}\n </ng-container>\n </ng-container>\n </span>\n </div>\n <ul\n *ngIf=\"isExpanded(node, nodeIndex(index)) && hasChildren(node)\"\n kendoTreeViewGroup\n role=\"group\"\n [nodes]=\"fetchChildren(node, nodeIndex(index))\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplateRef\"\n [parentIndex]=\"nodeIndex(index)\"\n [parentDataItem]=\"node\"\n [textField]=\"nextFields\"\n [@toggle]=\"true\"\n >\n </ul>\n </li>\n "}]}],"members":{"kGroupClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-group"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["attr.role"]}]}],"checkboxes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"expandIcons":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"nodeTemplateRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./loading-notification.service","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef"}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"expandNode":[{"__symbolic":"method"}],"checkNode":[{"__symbolic":"method"}],"nodeIndex":[{"__symbolic":"method"}],"nodeText":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"fetchChildren":[{"__symbolic":"method"}],"updateParentChildren":[{"__symbolic":"method"}],"mapToTreeItem":[{"__symbolic":"method"}]}}}}]
[{"__symbolic":"module","version":3,"metadata":{"TreeViewGroupComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"animations":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger"},"arguments":["toggle",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition"},"arguments":["void => *",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":0}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate"},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":"*"}]}]}]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition"},"arguments":["* => void",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":"*"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate"},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":0}]}]}]]}]]}],"selector":"[kendoTreeViewGroup]","template":"\n <li\n *ngFor=\"let node of data; let index = index\" class=\"k-item\"\n kendoTreeViewItem\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [parentDataItem]=\"parentDataItem\"\n [parentIndex]=\"parentIndex\"\n [isChecked]=\"isChecked(node, nodeIndex(index))\"\n [isDisabled]=\"isDisabled(node, nodeIndex(index))\"\n [isExpanded]=\"isExpanded(node, nodeIndex(index))\"\n [isSelected]=\"isSelected(node, nodeIndex(index))\"\n [attr.data-treeindex]=\"nodeIndex(index)\"\n >\n <div class=\"k-mid\">\n <span\n class=\"k-icon\"\n [class.k-i-collapse]=\"isExpanded(node, nodeIndex(index))\"\n [class.k-i-expand]=\"!isExpanded(node, nodeIndex(index))\"\n [kendoTreeViewLoading]=\"nodeIndex(index)\"\n (click)=\"expandNode(nodeIndex(index), node, !isExpanded(node, nodeIndex(index)))\"\n *ngIf=\"expandIcons && hasChildren(node)\"\n >\n </span>\n <kendo-checkbox\n *ngIf=\"checkboxes\"\n [checkState]=\"isChecked(node, nodeIndex(index))\"\n (checkStateChange)=\"checkNode(nodeIndex(index))\"\n tabindex=\"-1\"\n ></kendo-checkbox>\n <span kendoTreeViewItemContent\n [attr.data-treeindex]=\"nodeIndex(index)\"\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [isSelected]=\"isSelected\"\n class=\"k-in\"\n >\n <ng-container [ngSwitch]=\"hasTemplate\">\n <ng-container *ngSwitchCase=\"true\">\n <ng-template\n [ngTemplateOutlet]=\"nodeTemplateRef\" [ngTemplateOutletContext]=\"{$implicit: node, index: nodeIndex(index)}\"\n >\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{nodeText(node)}}\n </ng-container>\n </ng-container>\n </span>\n </div>\n <ul\n *ngIf=\"isExpanded(node, nodeIndex(index)) && hasChildren(node)\"\n kendoTreeViewGroup\n role=\"group\"\n [nodes]=\"fetchChildren(node, nodeIndex(index))\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isDisabled]=\"isDisabled\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplateRef\"\n [parentIndex]=\"nodeIndex(index)\"\n [parentDataItem]=\"node\"\n [textField]=\"nextFields\"\n [@toggle]=\"true\"\n >\n </ul>\n </li>\n "}]}],"members":{"kGroupClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-group"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["attr.role"]}]}],"checkboxes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"expandIcons":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"nodeTemplateRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./loading-notification.service","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef"}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"expandNode":[{"__symbolic":"method"}],"checkNode":[{"__symbolic":"method"}],"nodeIndex":[{"__symbolic":"method"}],"nodeText":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"fetchChildren":[{"__symbolic":"method"}],"updateParentChildren":[{"__symbolic":"method"}],"mapToTreeItem":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"TreeViewGroupComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"animations":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger"},"arguments":["toggle",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition"},"arguments":["void => *",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":0}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate"},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":"*"}]}]}]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition"},"arguments":["* => void",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":"*"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate"},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":0}]}]}]]}]]}],"selector":"[kendoTreeViewGroup]","template":"\n <li\n *ngFor=\"let node of data; let index = index\" class=\"k-item\"\n kendoTreeViewItem\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [parentDataItem]=\"parentDataItem\"\n [parentIndex]=\"parentIndex\"\n [isChecked]=\"isChecked(node, nodeIndex(index))\"\n [isDisabled]=\"isDisabled(node, nodeIndex(index))\"\n [isExpanded]=\"isExpanded(node, nodeIndex(index))\"\n [isSelected]=\"isSelected(node, nodeIndex(index))\"\n [attr.data-treeindex]=\"nodeIndex(index)\"\n >\n <div class=\"k-mid\">\n <span\n class=\"k-icon\"\n [class.k-i-collapse]=\"isExpanded(node, nodeIndex(index))\"\n [class.k-i-expand]=\"!isExpanded(node, nodeIndex(index))\"\n [kendoTreeViewLoading]=\"nodeIndex(index)\"\n (click)=\"expandNode(nodeIndex(index), node, !isExpanded(node, nodeIndex(index)))\"\n *ngIf=\"expandIcons && hasChildren(node)\"\n >\n </span>\n <kendo-checkbox\n *ngIf=\"checkboxes\"\n [checkState]=\"isChecked(node, nodeIndex(index))\"\n (checkStateChange)=\"checkNode(nodeIndex(index))\"\n tabindex=\"-1\"\n ></kendo-checkbox>\n <span kendoTreeViewItemContent\n [attr.data-treeindex]=\"nodeIndex(index)\"\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [isSelected]=\"isSelected\"\n class=\"k-in\"\n >\n <ng-container [ngSwitch]=\"hasTemplate\">\n <ng-container *ngSwitchCase=\"true\">\n <ng-template\n [ngTemplateOutlet]=\"nodeTemplateRef\" [ngTemplateOutletContext]=\"{$implicit: node, index: nodeIndex(index)}\"\n >\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{nodeText(node)}}\n </ng-container>\n </ng-container>\n </span>\n </div>\n <ul\n *ngIf=\"isExpanded(node, nodeIndex(index)) && hasChildren(node)\"\n kendoTreeViewGroup\n role=\"group\"\n [nodes]=\"fetchChildren(node, nodeIndex(index))\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isDisabled]=\"isDisabled\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplateRef\"\n [parentIndex]=\"nodeIndex(index)\"\n [parentDataItem]=\"node\"\n [textField]=\"nextFields\"\n [@toggle]=\"true\"\n >\n </ul>\n </li>\n "}]}],"members":{"kGroupClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-group"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["attr.role"]}]}],"checkboxes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"expandIcons":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"nodeTemplateRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./loading-notification.service","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef"}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"expandNode":[{"__symbolic":"method"}],"checkNode":[{"__symbolic":"method"}],"nodeIndex":[{"__symbolic":"method"}],"nodeText":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"fetchChildren":[{"__symbolic":"method"}],"updateParentChildren":[{"__symbolic":"method"}],"mapToTreeItem":[{"__symbolic":"method"}]}}}}]

@@ -28,2 +28,3 @@ import { ElementRef, OnChanges, OnDestroy, OnInit, Renderer2 } from '@angular/core';

isChecked: CheckedState;
isDisabled: boolean;
isExpanded: boolean;

@@ -43,2 +44,3 @@ isSelected: boolean;

subscribe(): void;
private registerNavigationItem();
private activateItem();

@@ -49,6 +51,9 @@ private expand(shouldExpand);

private moveLookupItem(changes?);
private moveNavigationItem(change?);
private moveNavigationItem(indexChange?);
private disableNavigationItem(disableChange);
private setAriaAttributes();
private setDisabledClass();
private setClass(className, toggle);
private updateTabIndex();
private setAttribute(attr, value);
}

@@ -24,2 +24,3 @@ import { Directive, ElementRef, Input, Renderer2 } from '@angular/core';

this.ib = ib;
this.isDisabled = false;
this.ariaChecked = 'false';

@@ -80,17 +81,21 @@ this.isInitialized = false;

TreeViewItemDirective.prototype.ngOnInit = function () {
this.navigationService.registerItem(this.index);
this.lookupService.registerItem(this.treeItem, this.parentTreeItem);
this.activateItem();
this.registerNavigationItem();
this.isInitialized = true;
this.setAttribute('role', 'treeitem');
this.setAriaAttributes();
this.setDisabledClass();
this.updateTabIndex();
};
TreeViewItemDirective.prototype.ngOnChanges = function (changes) {
var indexChange = changes.index;
if (indexChange || changes.isChecked || changes.isExpanded || changes.isSelected) {
var index = changes.index, isDisabled = changes.isDisabled;
if (index || changes.isChecked || changes.isExpanded || changes.isSelected) {
this.setAriaAttributes();
}
if (isDisabled) {
this.setDisabledClass();
}
this.moveLookupItem(changes);
this.moveNavigationItem(indexChange);
this.moveNavigationItem(index);
this.disableNavigationItem(isDisabled);
};

@@ -113,3 +118,3 @@ TreeViewItemDirective.prototype.ngOnDestroy = function () {

var index = _a.index;
return index === _this.index;
return index === _this.index && !_this.isDisabled;
})

@@ -122,2 +127,9 @@ .subscribe(function (_a) {

};
TreeViewItemDirective.prototype.registerNavigationItem = function () {
if (this.isDisabled) {
return;
}
this.navigationService.registerItem(this.index);
this.activateItem();
};
TreeViewItemDirective.prototype.activateItem = function () {

@@ -136,6 +148,6 @@ var navigationService = this.navigationService;

TreeViewItemDirective.prototype.isFocusable = function () {
return this.navigationService.isFocusable(this.index);
return !this.isDisabled && this.navigationService.isFocusable(this.index);
};
TreeViewItemDirective.prototype.focusItem = function () {
if (this.isInitialized && this.navigationService.isActive(this.index)) {
if (this.isInitialized && !this.isDisabled && this.navigationService.isActive(this.index)) {
this.element.nativeElement.focus();

@@ -156,10 +168,23 @@ }

};
TreeViewItemDirective.prototype.moveNavigationItem = function (change) {
if (change === void 0) { change = {}; }
var currentValue = change.currentValue, firstChange = change.firstChange, previousValue = change.previousValue;
if (firstChange || !isPresent(currentValue) || !isPresent(previousValue)) {
TreeViewItemDirective.prototype.moveNavigationItem = function (indexChange) {
if (indexChange === void 0) { indexChange = {}; }
var currentValue = indexChange.currentValue, firstChange = indexChange.firstChange, previousValue = indexChange.previousValue;
if (!firstChange && isPresent(currentValue) && isPresent(previousValue)) {
this.navigationService.unregisterItem(previousValue);
this.navigationService.registerItem(currentValue);
}
};
TreeViewItemDirective.prototype.disableNavigationItem = function (disableChange) {
if (!disableChange || disableChange.firstChange) {
return;
}
this.navigationService.unregisterItem(previousValue);
this.navigationService.registerItem(currentValue);
var service = this.navigationService;
if (this.isDisabled) {
service.activateClosest(this.index); //activate before unregister the item
service.unregisterItem(this.index);
}
else {
service.registerItem(this.index);
service.activateFocusable();
}
};

@@ -172,2 +197,9 @@ TreeViewItemDirective.prototype.setAriaAttributes = function () {

};
TreeViewItemDirective.prototype.setDisabledClass = function () {
this.setClass('k-state-disabled', this.isDisabled);
};
TreeViewItemDirective.prototype.setClass = function (className, toggle) {
var action = toggle ? 'addClass' : 'removeClass';
this.renderer[action](this.element.nativeElement, className);
};
TreeViewItemDirective.prototype.updateTabIndex = function () {

@@ -198,2 +230,3 @@ this.setAttribute('tabIndex', this.isFocusable() ? '0' : '-1');

'isChecked': [{ type: Input },],
'isDisabled': [{ type: Input },],
'isExpanded': [{ type: Input },],

@@ -200,0 +233,0 @@ 'isSelected': [{ type: Input },],

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"TreeViewItemDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive"},"arguments":[{"selector":"[kendoTreeViewItem]"}]}],"members":{"dataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"},{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"subscribe":[{"__symbolic":"method"}],"activateItem":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"focusItem":[{"__symbolic":"method"}],"moveLookupItem":[{"__symbolic":"method"}],"moveNavigationItem":[{"__symbolic":"method"}],"setAriaAttributes":[{"__symbolic":"method"}],"updateTabIndex":[{"__symbolic":"method"}],"setAttribute":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"TreeViewItemDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive"},"arguments":[{"selector":"[kendoTreeViewItem]"}]}],"members":{"dataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"},{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"subscribe":[{"__symbolic":"method"}],"activateItem":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"focusItem":[{"__symbolic":"method"}],"moveLookupItem":[{"__symbolic":"method"}],"moveNavigationItem":[{"__symbolic":"method"}],"setAriaAttributes":[{"__symbolic":"method"}],"updateTabIndex":[{"__symbolic":"method"}],"setAttribute":[{"__symbolic":"method"}]}}}}]
[{"__symbolic":"module","version":3,"metadata":{"TreeViewItemDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive"},"arguments":[{"selector":"[kendoTreeViewItem]"}]}],"members":{"dataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"},{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"subscribe":[{"__symbolic":"method"}],"registerNavigationItem":[{"__symbolic":"method"}],"activateItem":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"focusItem":[{"__symbolic":"method"}],"moveLookupItem":[{"__symbolic":"method"}],"moveNavigationItem":[{"__symbolic":"method"}],"disableNavigationItem":[{"__symbolic":"method"}],"setAriaAttributes":[{"__symbolic":"method"}],"setDisabledClass":[{"__symbolic":"method"}],"setClass":[{"__symbolic":"method"}],"updateTabIndex":[{"__symbolic":"method"}],"setAttribute":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"TreeViewItemDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive"},"arguments":[{"selector":"[kendoTreeViewItem]"}]}],"members":{"dataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"},{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"subscribe":[{"__symbolic":"method"}],"registerNavigationItem":[{"__symbolic":"method"}],"activateItem":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"focusItem":[{"__symbolic":"method"}],"moveLookupItem":[{"__symbolic":"method"}],"moveNavigationItem":[{"__symbolic":"method"}],"disableNavigationItem":[{"__symbolic":"method"}],"setAriaAttributes":[{"__symbolic":"method"}],"setDisabledClass":[{"__symbolic":"method"}],"setClass":[{"__symbolic":"method"}],"updateTabIndex":[{"__symbolic":"method"}],"setAttribute":[{"__symbolic":"method"}]}}}}]

@@ -117,2 +117,6 @@ import { ElementRef, EventEmitter, OnChanges, OnInit, OnDestroy } from '@angular/core';

/**
* A function which determines if a specific node is disabled.
*/
isDisabled: <T>(item: T, index: string) => boolean;
/**
* A function which determines if a specific node is expanded.

@@ -119,0 +123,0 @@ */

@@ -10,6 +10,7 @@ import { ChangeDetectionStrategy, Component, ElementRef, HostBinding, HostListener, Input, ContentChild, Output, EventEmitter } from '@angular/core';

import { closestNode, focusableNode, isDocumentAvailable, hasActiveNode, nodeId } from './utils';
import { hasChildren, isChecked, isExpanded, isSelected } from './default-callbacks';
import { hasChildren, isChecked, isDisabled, isExpanded, isSelected } from './default-callbacks';
import { Subscription } from 'rxjs/Subscription';
import { BehaviorSubject } from 'rxjs/BehaviorSubject';
import { Observable } from 'rxjs/Observable';
var isExpandIcon = function (target) { return (/k-i-collapse|k-i-expand/.test(target.className)); };
var providers = [

@@ -100,2 +101,6 @@ ExpandStateService,

/**
* A function which determines if a specific node is disabled.
*/
this.isDisabled = isDisabled;
/**
* Determines whether the TreeView keyboard navigable is enabled.

@@ -229,3 +234,5 @@ */

this.activateAndEmit(index);
this.navigationService.selectIndex(index);
if (!isExpandIcon(target)) {
this.navigationService.selectIndex(index);
}
};

@@ -336,3 +343,3 @@ /**

selector: 'kendo-treeview',
template: "\n <ul class=\"k-treeview-lines\"\n kendoTreeViewGroup\n role=\"group\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplate?.templateRef\"\n [nodes]=\"data\"\n [textField]=\"textField\"\n >\n </ul>\n "
template: "\n <ul class=\"k-treeview-lines\"\n kendoTreeViewGroup\n role=\"group\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isDisabled]=\"isDisabled\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplate?.templateRef\"\n [nodes]=\"data\"\n [textField]=\"textField\"\n >\n </ul>\n "
},] },

@@ -363,2 +370,3 @@ ];

'isChecked': [{ type: Input },],
'isDisabled': [{ type: Input },],
'isExpanded': [{ type: Input },],

@@ -365,0 +373,0 @@ 'isSelected': [{ type: Input },],

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"TreeViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy"},"member":"OnPush"},"exportAs":"kendoTreeView","providers":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"./loading-notification.service","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"}],"selector":"kendo-treeview","template":"\n <ul class=\"k-treeview-lines\"\n kendoTreeViewGroup\n role=\"group\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplate?.templateRef\"\n [nodes]=\"data\"\n [textField]=\"textField\"\n >\n </ul>\n "}]}],"members":{"classNames":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-widget"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-treeview"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["attr.role"]}]}],"animate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["@.disabled"]}]}],"onBlur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"},"arguments":["blur"]}]}],"onFocus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"},"arguments":["focus"]}]}],"expand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"collapse":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"checkedChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"selectionChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"nodeTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild"},"arguments":[{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"}]}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"navigable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"handleKeydown":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["keydown",["$event"]]}]}],"handleFocusin":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["focusin",["$event"]]}]}],"handleClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["click",["$event"]]}]}],"handleFocusout":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["focusout",["$event"]]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"blur":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"activateAndEmit":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"TreeViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy"},"member":"OnPush"},"exportAs":"kendoTreeView","providers":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"./loading-notification.service","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"}],"selector":"kendo-treeview","template":"\n <ul class=\"k-treeview-lines\"\n kendoTreeViewGroup\n role=\"group\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplate?.templateRef\"\n [nodes]=\"data\"\n [textField]=\"textField\"\n >\n </ul>\n "}]}],"members":{"classNames":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-widget"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-treeview"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["attr.role"]}]}],"animate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["@.disabled"]}]}],"onBlur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"},"arguments":["blur"]}]}],"onFocus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"},"arguments":["focus"]}]}],"expand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"collapse":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"checkedChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"selectionChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"nodeTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild"},"arguments":[{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"}]}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"navigable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"handleKeydown":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["keydown",["$event"]]}]}],"handleFocusin":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["focusin",["$event"]]}]}],"handleClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["click",["$event"]]}]}],"handleFocusout":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["focusout",["$event"]]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"blur":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"activateAndEmit":[{"__symbolic":"method"}]}}}}]
[{"__symbolic":"module","version":3,"metadata":{"TreeViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy"},"member":"OnPush"},"exportAs":"kendoTreeView","providers":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"./loading-notification.service","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"}],"selector":"kendo-treeview","template":"\n <ul class=\"k-treeview-lines\"\n kendoTreeViewGroup\n role=\"group\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isDisabled]=\"isDisabled\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplate?.templateRef\"\n [nodes]=\"data\"\n [textField]=\"textField\"\n >\n </ul>\n "}]}],"members":{"classNames":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-widget"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-treeview"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["attr.role"]}]}],"animate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["@.disabled"]}]}],"onBlur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"},"arguments":["blur"]}]}],"onFocus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"},"arguments":["focus"]}]}],"expand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"collapse":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"checkedChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"selectionChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"nodeTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild"},"arguments":[{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"}]}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"navigable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"handleKeydown":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["keydown",["$event"]]}]}],"handleFocusin":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["focusin",["$event"]]}]}],"handleClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["click",["$event"]]}]}],"handleFocusout":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["focusout",["$event"]]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"blur":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"activateAndEmit":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"TreeViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy"},"member":"OnPush"},"exportAs":"kendoTreeView","providers":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"./loading-notification.service","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"}],"selector":"kendo-treeview","template":"\n <ul class=\"k-treeview-lines\"\n kendoTreeViewGroup\n role=\"group\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isDisabled]=\"isDisabled\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplate?.templateRef\"\n [nodes]=\"data\"\n [textField]=\"textField\"\n >\n </ul>\n "}]}],"members":{"classNames":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-widget"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-treeview"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["attr.role"]}]}],"animate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["@.disabled"]}]}],"onBlur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"},"arguments":["blur"]}]}],"onFocus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"},"arguments":["focus"]}]}],"expand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"collapse":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"checkedChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"selectionChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"nodeTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild"},"arguments":[{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"}]}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"navigable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"handleKeydown":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["keydown",["$event"]]}]}],"handleFocusin":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["focusin",["$event"]]}]}],"handleClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["click",["$event"]]}]}],"handleFocusout":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["focusout",["$event"]]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"blur":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"activateAndEmit":[{"__symbolic":"method"}]}}}}]

@@ -6,2 +6,3 @@ import { NgModule } from '@angular/core';

import { CheckDirective } from './check.directive';
import { DisableDirective } from './disable.directive';
import { ExpandDirective } from './expand.directive';

@@ -15,2 +16,3 @@ import { SelectDirective } from './selection/select.directive';

CheckDirective,
DisableDirective,
ExpandDirective,

@@ -17,0 +19,0 @@ SelectDirective,

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"TreeViewModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"exports":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"imports":[{"__symbolic":"reference","module":"./shared.module","name":"SharedModule"}]}]}]}}},{"__symbolic":"module","version":1,"metadata":{"TreeViewModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"exports":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"imports":[{"__symbolic":"reference","module":"./shared.module","name":"SharedModule"}]}]}]}}}]
[{"__symbolic":"module","version":3,"metadata":{"TreeViewModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"exports":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./disable.directive","name":"DisableDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"imports":[{"__symbolic":"reference","module":"./shared.module","name":"SharedModule"}]}]}]}}},{"__symbolic":"module","version":1,"metadata":{"TreeViewModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"exports":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./disable.directive","name":"DisableDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"imports":[{"__symbolic":"reference","module":"./shared.module","name":"SharedModule"}]}]}]}}}]

@@ -51,3 +51,3 @@ import { ElementRef } from '@angular/core';

*/
export declare const nodeId: (node?: HTMLElement) => string;
export declare const nodeId: (node: HTMLElement) => string;
/**

@@ -54,0 +54,0 @@ * @hidden

@@ -58,6 +58,3 @@ /**

*/
export var nodeId = function (node) {
if (node === void 0) { node = { getAttribute: noop }; }
return node.getAttribute('data-treeindex');
};
export var nodeId = function (node) { return node ? node.getAttribute('data-treeindex') : ''; };
/**

@@ -64,0 +61,0 @@ * @hidden

@@ -13,2 +13,6 @@ import { CheckedState } from './checkbox/checked-state';

*/
export declare const isDisabled: <T>(item: T, index: string) => boolean;
/**
* @hidden
*/
export declare const isExpanded: <T>(item: T, index: string) => boolean;

@@ -15,0 +19,0 @@ /**

@@ -14,2 +14,6 @@ "use strict";

*/
exports.isDisabled = function () { return false; };
/**
* @hidden
*/
exports.isExpanded = function () { return true; };

@@ -16,0 +20,0 @@ /**

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"hasChildren":{"__symbolic":"error","message":"Function call not supported","line":5,"character":52},"isChecked":{"__symbolic":"error","message":"Function call not supported","line":10,"character":70},"isExpanded":{"__symbolic":"error","message":"Function call not supported","line":15,"character":66},"isSelected":{"__symbolic":"error","message":"Function call not supported","line":20,"character":66}}},{"__symbolic":"module","version":1,"metadata":{"hasChildren":{"__symbolic":"error","message":"Function call not supported","line":5,"character":52},"isChecked":{"__symbolic":"error","message":"Function call not supported","line":10,"character":70},"isExpanded":{"__symbolic":"error","message":"Function call not supported","line":15,"character":66},"isSelected":{"__symbolic":"error","message":"Function call not supported","line":20,"character":66}}}]
[{"__symbolic":"module","version":3,"metadata":{"hasChildren":{"__symbolic":"error","message":"Function call not supported","line":5,"character":52},"isChecked":{"__symbolic":"error","message":"Function call not supported","line":10,"character":70},"isDisabled":{"__symbolic":"error","message":"Function call not supported","line":15,"character":66},"isExpanded":{"__symbolic":"error","message":"Function call not supported","line":20,"character":66},"isSelected":{"__symbolic":"error","message":"Function call not supported","line":25,"character":66}}},{"__symbolic":"module","version":1,"metadata":{"hasChildren":{"__symbolic":"error","message":"Function call not supported","line":5,"character":52},"isChecked":{"__symbolic":"error","message":"Function call not supported","line":10,"character":70},"isDisabled":{"__symbolic":"error","message":"Function call not supported","line":15,"character":66},"isExpanded":{"__symbolic":"error","message":"Function call not supported","line":20,"character":66},"isSelected":{"__symbolic":"error","message":"Function call not supported","line":25,"character":66}}}]

@@ -7,3 +7,3 @@ import { OnDestroy, OnInit, EventEmitter } from '@angular/core';

/**
* A directive which manages the expand state of the TreeView.
* A directive which manages the expanded state of the TreeView.
*/

@@ -10,0 +10,0 @@ export declare class ExpandDirective implements OnInit, OnDestroy {

@@ -11,3 +11,3 @@ "use strict";

/**
* A directive which manages the expand state of the TreeView.
* A directive which manages the expanded state of the TreeView.
*/

@@ -14,0 +14,0 @@ var ExpandDirective = (function () {

@@ -8,3 +8,4 @@ /**

indexForLevel(index: string, level: number): string;
lastLevelIndex(index?: string): number;
level(index: string): number;
}

@@ -19,2 +19,10 @@ "use strict";

};
IndexBuilderService.prototype.lastLevelIndex = function (index) {
if (index === void 0) { index = ''; }
var parts = index.split(this.INDEX_SEPARATOR);
if (!parts.length) {
return NaN;
}
return parseInt(parts[parts.length - 1], 10);
};
IndexBuilderService.prototype.level = function (index) {

@@ -21,0 +29,0 @@ return index.split(this.INDEX_SEPARATOR).length;

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"IndexBuilderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"nodeIndex":[{"__symbolic":"method"}],"indexForLevel":[{"__symbolic":"method"}],"level":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"IndexBuilderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"nodeIndex":[{"__symbolic":"method"}],"indexForLevel":[{"__symbolic":"method"}],"level":[{"__symbolic":"method"}]}}}}]
[{"__symbolic":"module","version":3,"metadata":{"IndexBuilderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"nodeIndex":[{"__symbolic":"method"}],"indexForLevel":[{"__symbolic":"method"}],"lastLevelIndex":[{"__symbolic":"method"}],"level":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"IndexBuilderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"nodeIndex":[{"__symbolic":"method"}],"indexForLevel":[{"__symbolic":"method"}],"lastLevelIndex":[{"__symbolic":"method"}],"level":[{"__symbolic":"method"}]}}}}]

@@ -5,2 +5,3 @@ export { TreeViewComponent } from './treeview.component';

export { CheckDirective } from './check.directive';
export { DisableDirective } from './disable.directive';
export { ExpandDirective } from './expand.directive';

@@ -7,0 +8,0 @@ export { SelectDirective } from './selection/select.directive';

@@ -11,2 +11,4 @@ "use strict";

exports.CheckDirective = check_directive_1.CheckDirective;
var disable_directive_1 = require("./disable.directive");
exports.DisableDirective = disable_directive_1.DisableDirective;
var expand_directive_1 = require("./expand.directive");

@@ -13,0 +15,0 @@ exports.ExpandDirective = expand_directive_1.ExpandDirective;

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{},"exports":[{"from":"./treeview.component","export":["TreeViewComponent"]},{"from":"./treeview.module","export":["TreeViewModule"]},{"from":"./node-template.directive","export":["NodeTemplateDirective"]},{"from":"./check.directive","export":["CheckDirective"]},{"from":"./expand.directive","export":["ExpandDirective"]},{"from":"./selection/select.directive","export":["SelectDirective"]},{"from":"./selection/selectable-settings","export":["SelectableSettings"]},{"from":"./checkable-settings","export":["CheckableSettings"]},{"from":"./checkbox/checked-state","export":["CheckedState"]},{"from":"./hierarchy-binding.directive","export":["HierarchyBindingDirective"]},{"from":"./flat-binding.directive","export":["FlatDataBindingDirective"]}]},{"__symbolic":"module","version":1,"metadata":{},"exports":[{"from":"./treeview.component","export":["TreeViewComponent"]},{"from":"./treeview.module","export":["TreeViewModule"]},{"from":"./node-template.directive","export":["NodeTemplateDirective"]},{"from":"./check.directive","export":["CheckDirective"]},{"from":"./expand.directive","export":["ExpandDirective"]},{"from":"./selection/select.directive","export":["SelectDirective"]},{"from":"./selection/selectable-settings","export":["SelectableSettings"]},{"from":"./checkable-settings","export":["CheckableSettings"]},{"from":"./checkbox/checked-state","export":["CheckedState"]},{"from":"./hierarchy-binding.directive","export":["HierarchyBindingDirective"]},{"from":"./flat-binding.directive","export":["FlatDataBindingDirective"]}]}]
[{"__symbolic":"module","version":3,"metadata":{},"exports":[{"from":"./treeview.component","export":["TreeViewComponent"]},{"from":"./treeview.module","export":["TreeViewModule"]},{"from":"./node-template.directive","export":["NodeTemplateDirective"]},{"from":"./check.directive","export":["CheckDirective"]},{"from":"./disable.directive","export":["DisableDirective"]},{"from":"./expand.directive","export":["ExpandDirective"]},{"from":"./selection/select.directive","export":["SelectDirective"]},{"from":"./selection/selectable-settings","export":["SelectableSettings"]},{"from":"./checkable-settings","export":["CheckableSettings"]},{"from":"./checkbox/checked-state","export":["CheckedState"]},{"from":"./hierarchy-binding.directive","export":["HierarchyBindingDirective"]},{"from":"./flat-binding.directive","export":["FlatDataBindingDirective"]}]},{"__symbolic":"module","version":1,"metadata":{},"exports":[{"from":"./treeview.component","export":["TreeViewComponent"]},{"from":"./treeview.module","export":["TreeViewModule"]},{"from":"./node-template.directive","export":["NodeTemplateDirective"]},{"from":"./check.directive","export":["CheckDirective"]},{"from":"./disable.directive","export":["DisableDirective"]},{"from":"./expand.directive","export":["ExpandDirective"]},{"from":"./selection/select.directive","export":["SelectDirective"]},{"from":"./selection/selectable-settings","export":["SelectableSettings"]},{"from":"./checkable-settings","export":["CheckableSettings"]},{"from":"./checkbox/checked-state","export":["CheckedState"]},{"from":"./hierarchy-binding.directive","export":["HierarchyBindingDirective"]},{"from":"./flat-binding.directive","export":["FlatDataBindingDirective"]}]}]

@@ -10,2 +10,3 @@ import { NavigationItem } from './navigation-item.interface';

lastNode(): NavigationItem;
closestNode(index: string): NavigationItem;
findNode(index: string): NavigationItem;

@@ -17,6 +18,9 @@ findParent(index: string): NavigationItem;

private childLevel(nodes);
private container(node?);
private find(index, nodes);
private container(node);
private prevNode(node);
private nextNode(node);
private closestIndexPosition(nodes, index);
private insert(node, parent?);
private prevNode(parent, index);
private nextNode(parent, index);
private sibling(node?, offset?);
}

@@ -25,4 +25,3 @@ "use strict";

};
var unlink = function (node) {
var prev = node.prev, next = node.next;
var unlink = function (prev, next) {
if (prev) {

@@ -53,2 +52,7 @@ prev.next = next;

};
NavigationModel.prototype.closestNode = function (index) {
var prev = safe(this.findNode(index)).prev;
var sibling = prev || this.firstNode();
return safe(sibling).index === index ? this.sibling(sibling, 1) : sibling;
};
NavigationModel.prototype.findNode = function (index) {

@@ -69,7 +73,7 @@ return this.find(index, this.nodes);

if (parent || level === 1) {
var prev = this.prevNode(parent);
var next = this.nextNode(parent);
var item = { children: children, index: index, parent: parent, prev: prev, next: next };
this.container(parent).push(item);
link(item);
var prev = this.prevNode(parent, index);
var next = this.nextNode(parent, index);
var node = { children: children, index: index, parent: parent, prev: prev, next: next };
link(node);
this.insert(node, parent);
}

@@ -82,3 +86,3 @@ };

}
unlink(node);
unlink(node.prev, this.nextNode(node.parent, node.index));
var children = this.container(node.parent);

@@ -93,2 +97,5 @@ children.splice(children.indexOf(node), 1);

};
NavigationModel.prototype.container = function (node) {
return node ? node.children : this.nodes;
};
NavigationModel.prototype.find = function (index, nodes) {

@@ -104,14 +111,39 @@ var childLevel = this.childLevel(nodes);

};
NavigationModel.prototype.container = function (node) {
return node ? node.children : this.nodes;
NavigationModel.prototype.closestIndexPosition = function (nodes, index) {
var indexPosition = this.ib.lastLevelIndex(index);
var idx = 0;
while (idx < nodes.length) {
if (this.ib.lastLevelIndex(nodes[idx].index) > indexPosition) {
return idx;
}
idx += 1;
}
return idx;
};
NavigationModel.prototype.prevNode = function (node) {
return findLast(last(this.container(node))) || node || null;
NavigationModel.prototype.insert = function (node, parent) {
var nodes = this.container(parent);
nodes.splice(this.closestIndexPosition(nodes, node.index), 0, node);
};
NavigationModel.prototype.nextNode = function (node) {
NavigationModel.prototype.prevNode = function (parent, index) {
var nodes = this.container(parent);
var partialList = nodes.slice(0, this.closestIndexPosition(nodes, index));
return findLast(last(partialList)) || parent || null;
};
NavigationModel.prototype.nextNode = function (parent, index) {
var children = this.container(parent);
var currentNode = this.findNode(index);
if (!parent && currentNode) {
return this.sibling(currentNode, 1);
}
var nodeIndex = this.closestIndexPosition(children, index);
var lastChild = last(children.slice(nodeIndex));
return lastChild ? lastChild : this.sibling(parent, 1);
};
NavigationModel.prototype.sibling = function (node, offset) {
if (!node) {
return null;
}
var container = this.container(this.findParent(node.index));
return container[container.indexOf(node) + 1] || null;
var parent = this.findParent(node.index);
var container = this.container(parent);
return container[container.indexOf(node) + offset] || this.sibling(parent, offset) || null;
};

@@ -118,0 +150,0 @@ return NavigationModel;

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"NavigationModel":{"__symbolic":"class","members":{"firstNode":[{"__symbolic":"method"}],"lastNode":[{"__symbolic":"method"}],"findNode":[{"__symbolic":"method"}],"findParent":[{"__symbolic":"method"}],"findChild":[{"__symbolic":"method"}],"registerItem":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"childLevel":[{"__symbolic":"method"}],"find":[{"__symbolic":"method"}],"container":[{"__symbolic":"method"}],"prevNode":[{"__symbolic":"method"}],"nextNode":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"NavigationModel":{"__symbolic":"class","members":{"firstNode":[{"__symbolic":"method"}],"lastNode":[{"__symbolic":"method"}],"findNode":[{"__symbolic":"method"}],"findParent":[{"__symbolic":"method"}],"findChild":[{"__symbolic":"method"}],"registerItem":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"childLevel":[{"__symbolic":"method"}],"find":[{"__symbolic":"method"}],"container":[{"__symbolic":"method"}],"prevNode":[{"__symbolic":"method"}],"nextNode":[{"__symbolic":"method"}]}}}}]
[{"__symbolic":"module","version":3,"metadata":{"NavigationModel":{"__symbolic":"class","members":{"firstNode":[{"__symbolic":"method"}],"lastNode":[{"__symbolic":"method"}],"closestNode":[{"__symbolic":"method"}],"findNode":[{"__symbolic":"method"}],"findParent":[{"__symbolic":"method"}],"findChild":[{"__symbolic":"method"}],"registerItem":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"childLevel":[{"__symbolic":"method"}],"container":[{"__symbolic":"method"}],"find":[{"__symbolic":"method"}],"closestIndexPosition":[{"__symbolic":"method"}],"insert":[{"__symbolic":"method"}],"prevNode":[{"__symbolic":"method"}],"nextNode":[{"__symbolic":"method"}],"sibling":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"NavigationModel":{"__symbolic":"class","members":{"firstNode":[{"__symbolic":"method"}],"lastNode":[{"__symbolic":"method"}],"closestNode":[{"__symbolic":"method"}],"findNode":[{"__symbolic":"method"}],"findParent":[{"__symbolic":"method"}],"findChild":[{"__symbolic":"method"}],"registerItem":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"childLevel":[{"__symbolic":"method"}],"container":[{"__symbolic":"method"}],"find":[{"__symbolic":"method"}],"closestIndexPosition":[{"__symbolic":"method"}],"insert":[{"__symbolic":"method"}],"prevNode":[{"__symbolic":"method"}],"nextNode":[{"__symbolic":"method"}],"sibling":[{"__symbolic":"method"}]}}}}]

@@ -27,2 +27,4 @@ import { NavigationItem } from './navigation-item.interface';

activateIndex(index: string): void;
activateClosest(index: string): void;
activateFocusable(): void;
deactivate(): void;

@@ -29,0 +31,0 @@ checkIndex(index: string): void;

@@ -82,2 +82,16 @@ "use strict";

};
NavigationService.prototype.activateClosest = function (index) {
if (!index || utils_1.nodeIndex(this.focusableItem) !== index) {
return;
}
this.activeItem = this.model.closestNode(index);
this.notifyMove();
};
NavigationService.prototype.activateFocusable = function () {
if (this.activeItem) {
return;
}
this.activeItem = this.model.firstNode();
this.notifyMove();
};
NavigationService.prototype.deactivate = function () {

@@ -84,0 +98,0 @@ if (!this.navigable || !this.isFocused) {

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"NavigationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"activate":[{"__symbolic":"method"}],"activateParent":[{"__symbolic":"method"}],"activateIndex":[{"__symbolic":"method"}],"deactivate":[{"__symbolic":"method"}],"checkIndex":[{"__symbolic":"method"}],"selectIndex":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"registerItem":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"move":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"moveToParent":[{"__symbolic":"method"}],"moveToChild":[{"__symbolic":"method"}],"notifyExpand":[{"__symbolic":"method"}],"notifyMove":[{"__symbolic":"method"}],"navigationState":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"NavigationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"activate":[{"__symbolic":"method"}],"activateParent":[{"__symbolic":"method"}],"activateIndex":[{"__symbolic":"method"}],"deactivate":[{"__symbolic":"method"}],"checkIndex":[{"__symbolic":"method"}],"selectIndex":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"registerItem":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"move":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"moveToParent":[{"__symbolic":"method"}],"moveToChild":[{"__symbolic":"method"}],"notifyExpand":[{"__symbolic":"method"}],"notifyMove":[{"__symbolic":"method"}],"navigationState":[{"__symbolic":"method"}]}}}}]
[{"__symbolic":"module","version":3,"metadata":{"NavigationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"activate":[{"__symbolic":"method"}],"activateParent":[{"__symbolic":"method"}],"activateIndex":[{"__symbolic":"method"}],"activateClosest":[{"__symbolic":"method"}],"activateFocusable":[{"__symbolic":"method"}],"deactivate":[{"__symbolic":"method"}],"checkIndex":[{"__symbolic":"method"}],"selectIndex":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"registerItem":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"move":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"moveToParent":[{"__symbolic":"method"}],"moveToChild":[{"__symbolic":"method"}],"notifyExpand":[{"__symbolic":"method"}],"notifyMove":[{"__symbolic":"method"}],"navigationState":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"NavigationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"activate":[{"__symbolic":"method"}],"activateParent":[{"__symbolic":"method"}],"activateIndex":[{"__symbolic":"method"}],"activateClosest":[{"__symbolic":"method"}],"activateFocusable":[{"__symbolic":"method"}],"deactivate":[{"__symbolic":"method"}],"checkIndex":[{"__symbolic":"method"}],"selectIndex":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"registerItem":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"move":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"moveToParent":[{"__symbolic":"method"}],"moveToChild":[{"__symbolic":"method"}],"notifyExpand":[{"__symbolic":"method"}],"notifyMove":[{"__symbolic":"method"}],"navigationState":[{"__symbolic":"method"}]}}}}]

@@ -9,2 +9,3 @@ "use strict";

var check_directive_1 = require("./check.directive");
var disable_directive_1 = require("./disable.directive");
var expand_directive_1 = require("./expand.directive");

@@ -25,2 +26,3 @@ var select_directive_1 = require("./selection/select.directive");

check_directive_1.CheckDirective,
disable_directive_1.DisableDirective,
expand_directive_1.ExpandDirective,

@@ -27,0 +29,0 @@ select_directive_1.SelectDirective,

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"SharedModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"declarations":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./treeview-group.component","name":"TreeViewGroupComponent"},{"__symbolic":"reference","module":"./treeview-item.directive","name":"TreeViewItemDirective"},{"__symbolic":"reference","module":"./treeview-item-content.directive","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./loading-indicator.directive","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"exports":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./treeview-group.component","name":"TreeViewGroupComponent"},{"__symbolic":"reference","module":"./treeview-item.directive","name":"TreeViewItemDirective"},{"__symbolic":"reference","module":"./treeview-item-content.directive","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./loading-indicator.directive","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule"},{"__symbolic":"reference","module":"./checkbox/checkbox.module","name":"CheckBoxModule"}]}]}]}}},{"__symbolic":"module","version":1,"metadata":{"SharedModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"declarations":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./treeview-group.component","name":"TreeViewGroupComponent"},{"__symbolic":"reference","module":"./treeview-item.directive","name":"TreeViewItemDirective"},{"__symbolic":"reference","module":"./treeview-item-content.directive","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./loading-indicator.directive","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"exports":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./treeview-group.component","name":"TreeViewGroupComponent"},{"__symbolic":"reference","module":"./treeview-item.directive","name":"TreeViewItemDirective"},{"__symbolic":"reference","module":"./treeview-item-content.directive","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./loading-indicator.directive","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule"},{"__symbolic":"reference","module":"./checkbox/checkbox.module","name":"CheckBoxModule"}]}]}]}}}]
[{"__symbolic":"module","version":3,"metadata":{"SharedModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"declarations":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./treeview-group.component","name":"TreeViewGroupComponent"},{"__symbolic":"reference","module":"./treeview-item.directive","name":"TreeViewItemDirective"},{"__symbolic":"reference","module":"./treeview-item-content.directive","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./disable.directive","name":"DisableDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./loading-indicator.directive","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"exports":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./treeview-group.component","name":"TreeViewGroupComponent"},{"__symbolic":"reference","module":"./treeview-item.directive","name":"TreeViewItemDirective"},{"__symbolic":"reference","module":"./treeview-item-content.directive","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./disable.directive","name":"DisableDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./loading-indicator.directive","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule"},{"__symbolic":"reference","module":"./checkbox/checkbox.module","name":"CheckBoxModule"}]}]}]}}},{"__symbolic":"module","version":1,"metadata":{"SharedModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"declarations":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./treeview-group.component","name":"TreeViewGroupComponent"},{"__symbolic":"reference","module":"./treeview-item.directive","name":"TreeViewItemDirective"},{"__symbolic":"reference","module":"./treeview-item-content.directive","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./disable.directive","name":"DisableDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./loading-indicator.directive","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"exports":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./treeview-group.component","name":"TreeViewGroupComponent"},{"__symbolic":"reference","module":"./treeview-item.directive","name":"TreeViewItemDirective"},{"__symbolic":"reference","module":"./treeview-item-content.directive","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./disable.directive","name":"DisableDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./loading-indicator.directive","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule"},{"__symbolic":"reference","module":"./checkbox/checkbox.module","name":"CheckBoxModule"}]}]}]}}}]

@@ -37,2 +37,3 @@ import { ChangeDetectorRef, TemplateRef, OnChanges, OnInit, OnDestroy } from '@angular/core';

isChecked: <T>(item: T, index: string) => CheckedState;
isDisabled: <T>(item: T, index: string) => boolean;
isExpanded: <T>(item: T, index: string) => boolean;

@@ -39,0 +40,0 @@ isSelected: <T>(item: T, index: string) => boolean;

@@ -32,2 +32,3 @@ "use strict";

this.isChecked = function () { return 'none'; };
this.isDisabled = function () { return false; };
this.isExpanded = function () { return false; };

@@ -136,3 +137,3 @@ this.isSelected = function () { return false; };

selector: '[kendoTreeViewGroup]',
template: "\n <li\n *ngFor=\"let node of data; let index = index\" class=\"k-item\"\n kendoTreeViewItem\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [parentDataItem]=\"parentDataItem\"\n [parentIndex]=\"parentIndex\"\n [isChecked]=\"isChecked(node, nodeIndex(index))\"\n [isExpanded]=\"isExpanded(node, nodeIndex(index))\"\n [isSelected]=\"isSelected(node, nodeIndex(index))\"\n [attr.data-treeindex]=\"nodeIndex(index)\"\n >\n <div class=\"k-mid\">\n <span\n class=\"k-icon\"\n [class.k-i-collapse]=\"isExpanded(node, nodeIndex(index))\"\n [class.k-i-expand]=\"!isExpanded(node, nodeIndex(index))\"\n [kendoTreeViewLoading]=\"nodeIndex(index)\"\n (click)=\"expandNode(nodeIndex(index), node, !isExpanded(node, nodeIndex(index)))\"\n *ngIf=\"expandIcons && hasChildren(node)\"\n >\n </span>\n <kendo-checkbox\n *ngIf=\"checkboxes\"\n [checkState]=\"isChecked(node, nodeIndex(index))\"\n (checkStateChange)=\"checkNode(nodeIndex(index))\"\n tabindex=\"-1\"\n ></kendo-checkbox>\n <span kendoTreeViewItemContent\n [attr.data-treeindex]=\"nodeIndex(index)\"\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [isSelected]=\"isSelected\"\n class=\"k-in\"\n >\n <ng-container [ngSwitch]=\"hasTemplate\">\n <ng-container *ngSwitchCase=\"true\">\n <ng-template\n [ngTemplateOutlet]=\"nodeTemplateRef\" [ngTemplateOutletContext]=\"{$implicit: node, index: nodeIndex(index)}\"\n >\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{nodeText(node)}}\n </ng-container>\n </ng-container>\n </span>\n </div>\n <ul\n *ngIf=\"isExpanded(node, nodeIndex(index)) && hasChildren(node)\"\n kendoTreeViewGroup\n role=\"group\"\n [nodes]=\"fetchChildren(node, nodeIndex(index))\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplateRef\"\n [parentIndex]=\"nodeIndex(index)\"\n [parentDataItem]=\"node\"\n [textField]=\"nextFields\"\n [@toggle]=\"true\"\n >\n </ul>\n </li>\n "
template: "\n <li\n *ngFor=\"let node of data; let index = index\" class=\"k-item\"\n kendoTreeViewItem\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [parentDataItem]=\"parentDataItem\"\n [parentIndex]=\"parentIndex\"\n [isChecked]=\"isChecked(node, nodeIndex(index))\"\n [isDisabled]=\"isDisabled(node, nodeIndex(index))\"\n [isExpanded]=\"isExpanded(node, nodeIndex(index))\"\n [isSelected]=\"isSelected(node, nodeIndex(index))\"\n [attr.data-treeindex]=\"nodeIndex(index)\"\n >\n <div class=\"k-mid\">\n <span\n class=\"k-icon\"\n [class.k-i-collapse]=\"isExpanded(node, nodeIndex(index))\"\n [class.k-i-expand]=\"!isExpanded(node, nodeIndex(index))\"\n [kendoTreeViewLoading]=\"nodeIndex(index)\"\n (click)=\"expandNode(nodeIndex(index), node, !isExpanded(node, nodeIndex(index)))\"\n *ngIf=\"expandIcons && hasChildren(node)\"\n >\n </span>\n <kendo-checkbox\n *ngIf=\"checkboxes\"\n [checkState]=\"isChecked(node, nodeIndex(index))\"\n (checkStateChange)=\"checkNode(nodeIndex(index))\"\n tabindex=\"-1\"\n ></kendo-checkbox>\n <span kendoTreeViewItemContent\n [attr.data-treeindex]=\"nodeIndex(index)\"\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [isSelected]=\"isSelected\"\n class=\"k-in\"\n >\n <ng-container [ngSwitch]=\"hasTemplate\">\n <ng-container *ngSwitchCase=\"true\">\n <ng-template\n [ngTemplateOutlet]=\"nodeTemplateRef\" [ngTemplateOutletContext]=\"{$implicit: node, index: nodeIndex(index)}\"\n >\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{nodeText(node)}}\n </ng-container>\n </ng-container>\n </span>\n </div>\n <ul\n *ngIf=\"isExpanded(node, nodeIndex(index)) && hasChildren(node)\"\n kendoTreeViewGroup\n role=\"group\"\n [nodes]=\"fetchChildren(node, nodeIndex(index))\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isDisabled]=\"isDisabled\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplateRef\"\n [parentIndex]=\"nodeIndex(index)\"\n [parentDataItem]=\"node\"\n [textField]=\"nextFields\"\n [@toggle]=\"true\"\n >\n </ul>\n </li>\n "
},] },

@@ -160,2 +161,3 @@ ];

'isChecked': [{ type: core_1.Input },],
'isDisabled': [{ type: core_1.Input },],
'isExpanded': [{ type: core_1.Input },],

@@ -162,0 +164,0 @@ 'isSelected': [{ type: core_1.Input },],

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"TreeViewGroupComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"animations":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger"},"arguments":["toggle",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition"},"arguments":["void => *",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":0}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate"},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":"*"}]}]}]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition"},"arguments":["* => void",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":"*"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate"},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":0}]}]}]]}]]}],"selector":"[kendoTreeViewGroup]","template":"\n <li\n *ngFor=\"let node of data; let index = index\" class=\"k-item\"\n kendoTreeViewItem\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [parentDataItem]=\"parentDataItem\"\n [parentIndex]=\"parentIndex\"\n [isChecked]=\"isChecked(node, nodeIndex(index))\"\n [isExpanded]=\"isExpanded(node, nodeIndex(index))\"\n [isSelected]=\"isSelected(node, nodeIndex(index))\"\n [attr.data-treeindex]=\"nodeIndex(index)\"\n >\n <div class=\"k-mid\">\n <span\n class=\"k-icon\"\n [class.k-i-collapse]=\"isExpanded(node, nodeIndex(index))\"\n [class.k-i-expand]=\"!isExpanded(node, nodeIndex(index))\"\n [kendoTreeViewLoading]=\"nodeIndex(index)\"\n (click)=\"expandNode(nodeIndex(index), node, !isExpanded(node, nodeIndex(index)))\"\n *ngIf=\"expandIcons && hasChildren(node)\"\n >\n </span>\n <kendo-checkbox\n *ngIf=\"checkboxes\"\n [checkState]=\"isChecked(node, nodeIndex(index))\"\n (checkStateChange)=\"checkNode(nodeIndex(index))\"\n tabindex=\"-1\"\n ></kendo-checkbox>\n <span kendoTreeViewItemContent\n [attr.data-treeindex]=\"nodeIndex(index)\"\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [isSelected]=\"isSelected\"\n class=\"k-in\"\n >\n <ng-container [ngSwitch]=\"hasTemplate\">\n <ng-container *ngSwitchCase=\"true\">\n <ng-template\n [ngTemplateOutlet]=\"nodeTemplateRef\" [ngTemplateOutletContext]=\"{$implicit: node, index: nodeIndex(index)}\"\n >\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{nodeText(node)}}\n </ng-container>\n </ng-container>\n </span>\n </div>\n <ul\n *ngIf=\"isExpanded(node, nodeIndex(index)) && hasChildren(node)\"\n kendoTreeViewGroup\n role=\"group\"\n [nodes]=\"fetchChildren(node, nodeIndex(index))\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplateRef\"\n [parentIndex]=\"nodeIndex(index)\"\n [parentDataItem]=\"node\"\n [textField]=\"nextFields\"\n [@toggle]=\"true\"\n >\n </ul>\n </li>\n "}]}],"members":{"kGroupClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-group"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["attr.role"]}]}],"checkboxes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"expandIcons":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"nodeTemplateRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./loading-notification.service","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef"}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"expandNode":[{"__symbolic":"method"}],"checkNode":[{"__symbolic":"method"}],"nodeIndex":[{"__symbolic":"method"}],"nodeText":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"fetchChildren":[{"__symbolic":"method"}],"updateParentChildren":[{"__symbolic":"method"}],"mapToTreeItem":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"TreeViewGroupComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"animations":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger"},"arguments":["toggle",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition"},"arguments":["void => *",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":0}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate"},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":"*"}]}]}]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition"},"arguments":["* => void",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":"*"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate"},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":0}]}]}]]}]]}],"selector":"[kendoTreeViewGroup]","template":"\n <li\n *ngFor=\"let node of data; let index = index\" class=\"k-item\"\n kendoTreeViewItem\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [parentDataItem]=\"parentDataItem\"\n [parentIndex]=\"parentIndex\"\n [isChecked]=\"isChecked(node, nodeIndex(index))\"\n [isExpanded]=\"isExpanded(node, nodeIndex(index))\"\n [isSelected]=\"isSelected(node, nodeIndex(index))\"\n [attr.data-treeindex]=\"nodeIndex(index)\"\n >\n <div class=\"k-mid\">\n <span\n class=\"k-icon\"\n [class.k-i-collapse]=\"isExpanded(node, nodeIndex(index))\"\n [class.k-i-expand]=\"!isExpanded(node, nodeIndex(index))\"\n [kendoTreeViewLoading]=\"nodeIndex(index)\"\n (click)=\"expandNode(nodeIndex(index), node, !isExpanded(node, nodeIndex(index)))\"\n *ngIf=\"expandIcons && hasChildren(node)\"\n >\n </span>\n <kendo-checkbox\n *ngIf=\"checkboxes\"\n [checkState]=\"isChecked(node, nodeIndex(index))\"\n (checkStateChange)=\"checkNode(nodeIndex(index))\"\n tabindex=\"-1\"\n ></kendo-checkbox>\n <span kendoTreeViewItemContent\n [attr.data-treeindex]=\"nodeIndex(index)\"\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [isSelected]=\"isSelected\"\n class=\"k-in\"\n >\n <ng-container [ngSwitch]=\"hasTemplate\">\n <ng-container *ngSwitchCase=\"true\">\n <ng-template\n [ngTemplateOutlet]=\"nodeTemplateRef\" [ngTemplateOutletContext]=\"{$implicit: node, index: nodeIndex(index)}\"\n >\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{nodeText(node)}}\n </ng-container>\n </ng-container>\n </span>\n </div>\n <ul\n *ngIf=\"isExpanded(node, nodeIndex(index)) && hasChildren(node)\"\n kendoTreeViewGroup\n role=\"group\"\n [nodes]=\"fetchChildren(node, nodeIndex(index))\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplateRef\"\n [parentIndex]=\"nodeIndex(index)\"\n [parentDataItem]=\"node\"\n [textField]=\"nextFields\"\n [@toggle]=\"true\"\n >\n </ul>\n </li>\n "}]}],"members":{"kGroupClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-group"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["attr.role"]}]}],"checkboxes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"expandIcons":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"nodeTemplateRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./loading-notification.service","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef"}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"expandNode":[{"__symbolic":"method"}],"checkNode":[{"__symbolic":"method"}],"nodeIndex":[{"__symbolic":"method"}],"nodeText":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"fetchChildren":[{"__symbolic":"method"}],"updateParentChildren":[{"__symbolic":"method"}],"mapToTreeItem":[{"__symbolic":"method"}]}}}}]
[{"__symbolic":"module","version":3,"metadata":{"TreeViewGroupComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"animations":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger"},"arguments":["toggle",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition"},"arguments":["void => *",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":0}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate"},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":"*"}]}]}]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition"},"arguments":["* => void",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":"*"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate"},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":0}]}]}]]}]]}],"selector":"[kendoTreeViewGroup]","template":"\n <li\n *ngFor=\"let node of data; let index = index\" class=\"k-item\"\n kendoTreeViewItem\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [parentDataItem]=\"parentDataItem\"\n [parentIndex]=\"parentIndex\"\n [isChecked]=\"isChecked(node, nodeIndex(index))\"\n [isDisabled]=\"isDisabled(node, nodeIndex(index))\"\n [isExpanded]=\"isExpanded(node, nodeIndex(index))\"\n [isSelected]=\"isSelected(node, nodeIndex(index))\"\n [attr.data-treeindex]=\"nodeIndex(index)\"\n >\n <div class=\"k-mid\">\n <span\n class=\"k-icon\"\n [class.k-i-collapse]=\"isExpanded(node, nodeIndex(index))\"\n [class.k-i-expand]=\"!isExpanded(node, nodeIndex(index))\"\n [kendoTreeViewLoading]=\"nodeIndex(index)\"\n (click)=\"expandNode(nodeIndex(index), node, !isExpanded(node, nodeIndex(index)))\"\n *ngIf=\"expandIcons && hasChildren(node)\"\n >\n </span>\n <kendo-checkbox\n *ngIf=\"checkboxes\"\n [checkState]=\"isChecked(node, nodeIndex(index))\"\n (checkStateChange)=\"checkNode(nodeIndex(index))\"\n tabindex=\"-1\"\n ></kendo-checkbox>\n <span kendoTreeViewItemContent\n [attr.data-treeindex]=\"nodeIndex(index)\"\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [isSelected]=\"isSelected\"\n class=\"k-in\"\n >\n <ng-container [ngSwitch]=\"hasTemplate\">\n <ng-container *ngSwitchCase=\"true\">\n <ng-template\n [ngTemplateOutlet]=\"nodeTemplateRef\" [ngTemplateOutletContext]=\"{$implicit: node, index: nodeIndex(index)}\"\n >\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{nodeText(node)}}\n </ng-container>\n </ng-container>\n </span>\n </div>\n <ul\n *ngIf=\"isExpanded(node, nodeIndex(index)) && hasChildren(node)\"\n kendoTreeViewGroup\n role=\"group\"\n [nodes]=\"fetchChildren(node, nodeIndex(index))\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isDisabled]=\"isDisabled\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplateRef\"\n [parentIndex]=\"nodeIndex(index)\"\n [parentDataItem]=\"node\"\n [textField]=\"nextFields\"\n [@toggle]=\"true\"\n >\n </ul>\n </li>\n "}]}],"members":{"kGroupClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-group"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["attr.role"]}]}],"checkboxes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"expandIcons":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"nodeTemplateRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./loading-notification.service","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef"}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"expandNode":[{"__symbolic":"method"}],"checkNode":[{"__symbolic":"method"}],"nodeIndex":[{"__symbolic":"method"}],"nodeText":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"fetchChildren":[{"__symbolic":"method"}],"updateParentChildren":[{"__symbolic":"method"}],"mapToTreeItem":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"TreeViewGroupComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"animations":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger"},"arguments":["toggle",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition"},"arguments":["void => *",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":0}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate"},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":"*"}]}]}]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition"},"arguments":["* => void",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":"*"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate"},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style"},"arguments":[{"height":0}]}]}]]}]]}],"selector":"[kendoTreeViewGroup]","template":"\n <li\n *ngFor=\"let node of data; let index = index\" class=\"k-item\"\n kendoTreeViewItem\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [parentDataItem]=\"parentDataItem\"\n [parentIndex]=\"parentIndex\"\n [isChecked]=\"isChecked(node, nodeIndex(index))\"\n [isDisabled]=\"isDisabled(node, nodeIndex(index))\"\n [isExpanded]=\"isExpanded(node, nodeIndex(index))\"\n [isSelected]=\"isSelected(node, nodeIndex(index))\"\n [attr.data-treeindex]=\"nodeIndex(index)\"\n >\n <div class=\"k-mid\">\n <span\n class=\"k-icon\"\n [class.k-i-collapse]=\"isExpanded(node, nodeIndex(index))\"\n [class.k-i-expand]=\"!isExpanded(node, nodeIndex(index))\"\n [kendoTreeViewLoading]=\"nodeIndex(index)\"\n (click)=\"expandNode(nodeIndex(index), node, !isExpanded(node, nodeIndex(index)))\"\n *ngIf=\"expandIcons && hasChildren(node)\"\n >\n </span>\n <kendo-checkbox\n *ngIf=\"checkboxes\"\n [checkState]=\"isChecked(node, nodeIndex(index))\"\n (checkStateChange)=\"checkNode(nodeIndex(index))\"\n tabindex=\"-1\"\n ></kendo-checkbox>\n <span kendoTreeViewItemContent\n [attr.data-treeindex]=\"nodeIndex(index)\"\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [isSelected]=\"isSelected\"\n class=\"k-in\"\n >\n <ng-container [ngSwitch]=\"hasTemplate\">\n <ng-container *ngSwitchCase=\"true\">\n <ng-template\n [ngTemplateOutlet]=\"nodeTemplateRef\" [ngTemplateOutletContext]=\"{$implicit: node, index: nodeIndex(index)}\"\n >\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{nodeText(node)}}\n </ng-container>\n </ng-container>\n </span>\n </div>\n <ul\n *ngIf=\"isExpanded(node, nodeIndex(index)) && hasChildren(node)\"\n kendoTreeViewGroup\n role=\"group\"\n [nodes]=\"fetchChildren(node, nodeIndex(index))\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isDisabled]=\"isDisabled\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplateRef\"\n [parentIndex]=\"nodeIndex(index)\"\n [parentDataItem]=\"node\"\n [textField]=\"nextFields\"\n [@toggle]=\"true\"\n >\n </ul>\n </li>\n "}]}],"members":{"kGroupClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-group"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["attr.role"]}]}],"checkboxes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"expandIcons":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"nodeTemplateRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./loading-notification.service","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef"}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"expandNode":[{"__symbolic":"method"}],"checkNode":[{"__symbolic":"method"}],"nodeIndex":[{"__symbolic":"method"}],"nodeText":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"fetchChildren":[{"__symbolic":"method"}],"updateParentChildren":[{"__symbolic":"method"}],"mapToTreeItem":[{"__symbolic":"method"}]}}}}]

@@ -28,2 +28,3 @@ import { ElementRef, OnChanges, OnDestroy, OnInit, Renderer2 } from '@angular/core';

isChecked: CheckedState;
isDisabled: boolean;
isExpanded: boolean;

@@ -43,2 +44,3 @@ isSelected: boolean;

subscribe(): void;
private registerNavigationItem();
private activateItem();

@@ -49,6 +51,9 @@ private expand(shouldExpand);

private moveLookupItem(changes?);
private moveNavigationItem(change?);
private moveNavigationItem(indexChange?);
private disableNavigationItem(disableChange);
private setAriaAttributes();
private setDisabledClass();
private setClass(className, toggle);
private updateTabIndex();
private setAttribute(attr, value);
}

@@ -26,2 +26,3 @@ "use strict";

this.ib = ib;
this.isDisabled = false;
this.ariaChecked = 'false';

@@ -82,17 +83,21 @@ this.isInitialized = false;

TreeViewItemDirective.prototype.ngOnInit = function () {
this.navigationService.registerItem(this.index);
this.lookupService.registerItem(this.treeItem, this.parentTreeItem);
this.activateItem();
this.registerNavigationItem();
this.isInitialized = true;
this.setAttribute('role', 'treeitem');
this.setAriaAttributes();
this.setDisabledClass();
this.updateTabIndex();
};
TreeViewItemDirective.prototype.ngOnChanges = function (changes) {
var indexChange = changes.index;
if (indexChange || changes.isChecked || changes.isExpanded || changes.isSelected) {
var index = changes.index, isDisabled = changes.isDisabled;
if (index || changes.isChecked || changes.isExpanded || changes.isSelected) {
this.setAriaAttributes();
}
if (isDisabled) {
this.setDisabledClass();
}
this.moveLookupItem(changes);
this.moveNavigationItem(indexChange);
this.moveNavigationItem(index);
this.disableNavigationItem(isDisabled);
};

@@ -115,3 +120,3 @@ TreeViewItemDirective.prototype.ngOnDestroy = function () {

var index = _a.index;
return index === _this.index;
return index === _this.index && !_this.isDisabled;
})

@@ -124,2 +129,9 @@ .subscribe(function (_a) {

};
TreeViewItemDirective.prototype.registerNavigationItem = function () {
if (this.isDisabled) {
return;
}
this.navigationService.registerItem(this.index);
this.activateItem();
};
TreeViewItemDirective.prototype.activateItem = function () {

@@ -138,6 +150,6 @@ var navigationService = this.navigationService;

TreeViewItemDirective.prototype.isFocusable = function () {
return this.navigationService.isFocusable(this.index);
return !this.isDisabled && this.navigationService.isFocusable(this.index);
};
TreeViewItemDirective.prototype.focusItem = function () {
if (this.isInitialized && this.navigationService.isActive(this.index)) {
if (this.isInitialized && !this.isDisabled && this.navigationService.isActive(this.index)) {
this.element.nativeElement.focus();

@@ -158,10 +170,23 @@ }

};
TreeViewItemDirective.prototype.moveNavigationItem = function (change) {
if (change === void 0) { change = {}; }
var currentValue = change.currentValue, firstChange = change.firstChange, previousValue = change.previousValue;
if (firstChange || !utils_1.isPresent(currentValue) || !utils_1.isPresent(previousValue)) {
TreeViewItemDirective.prototype.moveNavigationItem = function (indexChange) {
if (indexChange === void 0) { indexChange = {}; }
var currentValue = indexChange.currentValue, firstChange = indexChange.firstChange, previousValue = indexChange.previousValue;
if (!firstChange && utils_1.isPresent(currentValue) && utils_1.isPresent(previousValue)) {
this.navigationService.unregisterItem(previousValue);
this.navigationService.registerItem(currentValue);
}
};
TreeViewItemDirective.prototype.disableNavigationItem = function (disableChange) {
if (!disableChange || disableChange.firstChange) {
return;
}
this.navigationService.unregisterItem(previousValue);
this.navigationService.registerItem(currentValue);
var service = this.navigationService;
if (this.isDisabled) {
service.activateClosest(this.index); //activate before unregister the item
service.unregisterItem(this.index);
}
else {
service.registerItem(this.index);
service.activateFocusable();
}
};

@@ -174,2 +199,9 @@ TreeViewItemDirective.prototype.setAriaAttributes = function () {

};
TreeViewItemDirective.prototype.setDisabledClass = function () {
this.setClass('k-state-disabled', this.isDisabled);
};
TreeViewItemDirective.prototype.setClass = function (className, toggle) {
var action = toggle ? 'addClass' : 'removeClass';
this.renderer[action](this.element.nativeElement, className);
};
TreeViewItemDirective.prototype.updateTabIndex = function () {

@@ -200,2 +232,3 @@ this.setAttribute('tabIndex', this.isFocusable() ? '0' : '-1');

'isChecked': [{ type: core_1.Input },],
'isDisabled': [{ type: core_1.Input },],
'isExpanded': [{ type: core_1.Input },],

@@ -202,0 +235,0 @@ 'isSelected': [{ type: core_1.Input },],

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"TreeViewItemDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive"},"arguments":[{"selector":"[kendoTreeViewItem]"}]}],"members":{"dataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"},{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"subscribe":[{"__symbolic":"method"}],"activateItem":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"focusItem":[{"__symbolic":"method"}],"moveLookupItem":[{"__symbolic":"method"}],"moveNavigationItem":[{"__symbolic":"method"}],"setAriaAttributes":[{"__symbolic":"method"}],"updateTabIndex":[{"__symbolic":"method"}],"setAttribute":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"TreeViewItemDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive"},"arguments":[{"selector":"[kendoTreeViewItem]"}]}],"members":{"dataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"},{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"subscribe":[{"__symbolic":"method"}],"activateItem":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"focusItem":[{"__symbolic":"method"}],"moveLookupItem":[{"__symbolic":"method"}],"moveNavigationItem":[{"__symbolic":"method"}],"setAriaAttributes":[{"__symbolic":"method"}],"updateTabIndex":[{"__symbolic":"method"}],"setAttribute":[{"__symbolic":"method"}]}}}}]
[{"__symbolic":"module","version":3,"metadata":{"TreeViewItemDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive"},"arguments":[{"selector":"[kendoTreeViewItem]"}]}],"members":{"dataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"},{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"subscribe":[{"__symbolic":"method"}],"registerNavigationItem":[{"__symbolic":"method"}],"activateItem":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"focusItem":[{"__symbolic":"method"}],"moveLookupItem":[{"__symbolic":"method"}],"moveNavigationItem":[{"__symbolic":"method"}],"disableNavigationItem":[{"__symbolic":"method"}],"setAriaAttributes":[{"__symbolic":"method"}],"setDisabledClass":[{"__symbolic":"method"}],"setClass":[{"__symbolic":"method"}],"updateTabIndex":[{"__symbolic":"method"}],"setAttribute":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"TreeViewItemDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive"},"arguments":[{"selector":"[kendoTreeViewItem]"}]}],"members":{"dataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"},{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"subscribe":[{"__symbolic":"method"}],"registerNavigationItem":[{"__symbolic":"method"}],"activateItem":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"focusItem":[{"__symbolic":"method"}],"moveLookupItem":[{"__symbolic":"method"}],"moveNavigationItem":[{"__symbolic":"method"}],"disableNavigationItem":[{"__symbolic":"method"}],"setAriaAttributes":[{"__symbolic":"method"}],"setDisabledClass":[{"__symbolic":"method"}],"setClass":[{"__symbolic":"method"}],"updateTabIndex":[{"__symbolic":"method"}],"setAttribute":[{"__symbolic":"method"}]}}}}]

@@ -117,2 +117,6 @@ import { ElementRef, EventEmitter, OnChanges, OnInit, OnDestroy } from '@angular/core';

/**
* A function which determines if a specific node is disabled.
*/
isDisabled: <T>(item: T, index: string) => boolean;
/**
* A function which determines if a specific node is expanded.

@@ -119,0 +123,0 @@ */

@@ -16,2 +16,3 @@ "use strict";

var Observable_1 = require("rxjs/Observable");
var isExpandIcon = function (target) { return (/k-i-collapse|k-i-expand/.test(target.className)); };
var providers = [

@@ -102,2 +103,6 @@ expand_state_service_1.ExpandStateService,

/**
* A function which determines if a specific node is disabled.
*/
this.isDisabled = default_callbacks_1.isDisabled;
/**
* Determines whether the TreeView keyboard navigable is enabled.

@@ -231,3 +236,5 @@ */

this.activateAndEmit(index);
this.navigationService.selectIndex(index);
if (!isExpandIcon(target)) {
this.navigationService.selectIndex(index);
}
};

@@ -338,3 +345,3 @@ /**

selector: 'kendo-treeview',
template: "\n <ul class=\"k-treeview-lines\"\n kendoTreeViewGroup\n role=\"group\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplate?.templateRef\"\n [nodes]=\"data\"\n [textField]=\"textField\"\n >\n </ul>\n "
template: "\n <ul class=\"k-treeview-lines\"\n kendoTreeViewGroup\n role=\"group\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isDisabled]=\"isDisabled\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplate?.templateRef\"\n [nodes]=\"data\"\n [textField]=\"textField\"\n >\n </ul>\n "
},] },

@@ -365,2 +372,3 @@ ];

'isChecked': [{ type: core_1.Input },],
'isDisabled': [{ type: core_1.Input },],
'isExpanded': [{ type: core_1.Input },],

@@ -367,0 +375,0 @@ 'isSelected': [{ type: core_1.Input },],

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"TreeViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy"},"member":"OnPush"},"exportAs":"kendoTreeView","providers":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"./loading-notification.service","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"}],"selector":"kendo-treeview","template":"\n <ul class=\"k-treeview-lines\"\n kendoTreeViewGroup\n role=\"group\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplate?.templateRef\"\n [nodes]=\"data\"\n [textField]=\"textField\"\n >\n </ul>\n "}]}],"members":{"classNames":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-widget"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-treeview"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["attr.role"]}]}],"animate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["@.disabled"]}]}],"onBlur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"},"arguments":["blur"]}]}],"onFocus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"},"arguments":["focus"]}]}],"expand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"collapse":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"checkedChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"selectionChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"nodeTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild"},"arguments":[{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"}]}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"navigable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"handleKeydown":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["keydown",["$event"]]}]}],"handleFocusin":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["focusin",["$event"]]}]}],"handleClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["click",["$event"]]}]}],"handleFocusout":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["focusout",["$event"]]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"blur":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"activateAndEmit":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"TreeViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy"},"member":"OnPush"},"exportAs":"kendoTreeView","providers":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"./loading-notification.service","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"}],"selector":"kendo-treeview","template":"\n <ul class=\"k-treeview-lines\"\n kendoTreeViewGroup\n role=\"group\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplate?.templateRef\"\n [nodes]=\"data\"\n [textField]=\"textField\"\n >\n </ul>\n "}]}],"members":{"classNames":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-widget"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-treeview"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["attr.role"]}]}],"animate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["@.disabled"]}]}],"onBlur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"},"arguments":["blur"]}]}],"onFocus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"},"arguments":["focus"]}]}],"expand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"collapse":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"checkedChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"selectionChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"nodeTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild"},"arguments":[{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"}]}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"navigable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"handleKeydown":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["keydown",["$event"]]}]}],"handleFocusin":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["focusin",["$event"]]}]}],"handleClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["click",["$event"]]}]}],"handleFocusout":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["focusout",["$event"]]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"blur":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"activateAndEmit":[{"__symbolic":"method"}]}}}}]
[{"__symbolic":"module","version":3,"metadata":{"TreeViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy"},"member":"OnPush"},"exportAs":"kendoTreeView","providers":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"./loading-notification.service","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"}],"selector":"kendo-treeview","template":"\n <ul class=\"k-treeview-lines\"\n kendoTreeViewGroup\n role=\"group\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isDisabled]=\"isDisabled\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplate?.templateRef\"\n [nodes]=\"data\"\n [textField]=\"textField\"\n >\n </ul>\n "}]}],"members":{"classNames":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-widget"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-treeview"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["attr.role"]}]}],"animate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["@.disabled"]}]}],"onBlur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"},"arguments":["blur"]}]}],"onFocus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"},"arguments":["focus"]}]}],"expand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"collapse":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"checkedChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"selectionChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"nodeTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild"},"arguments":[{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"}]}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"navigable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"handleKeydown":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["keydown",["$event"]]}]}],"handleFocusin":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["focusin",["$event"]]}]}],"handleClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["click",["$event"]]}]}],"handleFocusout":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["focusout",["$event"]]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"blur":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"activateAndEmit":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"TreeViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy"},"member":"OnPush"},"exportAs":"kendoTreeView","providers":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./index-builder.service","name":"IndexBuilderService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"./loading-notification.service","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"}],"selector":"kendo-treeview","template":"\n <ul class=\"k-treeview-lines\"\n kendoTreeViewGroup\n role=\"group\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isDisabled]=\"isDisabled\"\n [isExpanded]=\"isExpanded\"\n [isSelected]=\"isSelected\"\n [nodeTemplateRef]=\"nodeTemplate?.templateRef\"\n [nodes]=\"data\"\n [textField]=\"textField\"\n >\n </ul>\n "}]}],"members":{"classNames":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-widget"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["class.k-treeview"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["attr.role"]}]}],"animate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding"},"arguments":["@.disabled"]}]}],"onBlur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"},"arguments":["blur"]}]}],"onFocus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"},"arguments":["focus"]}]}],"expand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"collapse":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"checkedChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"selectionChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"nodeTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild"},"arguments":[{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"}]}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"navigable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"handleKeydown":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["keydown",["$event"]]}]}],"handleFocusin":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["focusin",["$event"]]}]}],"handleClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["click",["$event"]]}]}],"handleFocusout":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener"},"arguments":["focusout",["$event"]]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./expand-state.service","name":"ExpandStateService"},{"__symbolic":"reference","module":"./navigation/navigation.service","name":"NavigationService"},{"__symbolic":"reference","module":"./selection/selection.service","name":"SelectionService"},{"__symbolic":"reference","module":"./treeview-lookup.service","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"blur":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"activateAndEmit":[{"__symbolic":"method"}]}}}}]

@@ -8,2 +8,3 @@ "use strict";

var check_directive_1 = require("./check.directive");
var disable_directive_1 = require("./disable.directive");
var expand_directive_1 = require("./expand.directive");

@@ -17,2 +18,3 @@ var select_directive_1 = require("./selection/select.directive");

check_directive_1.CheckDirective,
disable_directive_1.DisableDirective,
expand_directive_1.ExpandDirective,

@@ -19,0 +21,0 @@ select_directive_1.SelectDirective,

@@ -1,1 +0,1 @@

[{"__symbolic":"module","version":3,"metadata":{"TreeViewModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"exports":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"imports":[{"__symbolic":"reference","module":"./shared.module","name":"SharedModule"}]}]}]}}},{"__symbolic":"module","version":1,"metadata":{"TreeViewModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"exports":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"imports":[{"__symbolic":"reference","module":"./shared.module","name":"SharedModule"}]}]}]}}}]
[{"__symbolic":"module","version":3,"metadata":{"TreeViewModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"exports":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./disable.directive","name":"DisableDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"imports":[{"__symbolic":"reference","module":"./shared.module","name":"SharedModule"}]}]}]}}},{"__symbolic":"module","version":1,"metadata":{"TreeViewModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"exports":[[{"__symbolic":"reference","module":"./treeview.component","name":"TreeViewComponent"},{"__symbolic":"reference","module":"./node-template.directive","name":"NodeTemplateDirective"},{"__symbolic":"reference","module":"./check.directive","name":"CheckDirective"},{"__symbolic":"reference","module":"./disable.directive","name":"DisableDirective"},{"__symbolic":"reference","module":"./expand.directive","name":"ExpandDirective"},{"__symbolic":"reference","module":"./selection/select.directive","name":"SelectDirective"},{"__symbolic":"reference","module":"./hierarchy-binding.directive","name":"HierarchyBindingDirective"},{"__symbolic":"reference","module":"./flat-binding.directive","name":"FlatDataBindingDirective"}]],"imports":[{"__symbolic":"reference","module":"./shared.module","name":"SharedModule"}]}]}]}}}]

@@ -51,3 +51,3 @@ import { ElementRef } from '@angular/core';

*/
export declare const nodeId: (node?: HTMLElement) => string;
export declare const nodeId: (node: HTMLElement) => string;
/**

@@ -54,0 +54,0 @@ * @hidden

@@ -60,6 +60,3 @@ "use strict";

*/
exports.nodeId = function (node) {
if (node === void 0) { node = { getAttribute: exports.noop }; }
return node.getAttribute('data-treeindex');
};
exports.nodeId = function (node) { return node ? node.getAttribute('data-treeindex') : ''; };
/**

@@ -66,0 +63,0 @@ * @hidden

@@ -1,1 +0,1 @@

System.register("@progress/kendo-angular-treeview",["tslib","@angular/core","rxjs/Subscription","rxjs/BehaviorSubject","rxjs/Observable","rxjs/add/observable/merge","rxjs/add/operator/map","rxjs/add/observable/of","rxjs/Subject","@angular/common","rxjs/add/operator/catch","@angular/animations","rxjs/add/operator/do","rxjs/add/operator/filter","rxjs/add/observable/empty","rxjs/add/operator/takeUntil","rxjs/add/operator/switchMap","rxjs/add/operator/delay"],function(e){var t,n,i,r,o,a,s,d,c,p,u,l,h,f,v,y,m,_;function g(e){return e.__useDefault?e.default:e}return{setters:[function(e){t=g(e)},function(e){n=g(e)},function(e){i=g(e)},function(e){r=g(e)},function(e){o=g(e)},function(e){a=g(e)},function(e){s=g(e)},function(e){d=g(e)},function(e){c=g(e)},function(e){p=g(e)},function(e){u=g(e)},function(e){l=g(e)},function(e){h=g(e)},function(e){f=g(e)},function(e){v=g(e)},function(e){y=g(e)},function(e){m=g(e)},function(e){_=g(e)}],execute:function(){!function(e){var t={};function n(i){if(t[i])return t[i].exports;var r=t[i]={exports:{},id:i,loaded:!1};return e[i].call(r.exports,r,r.exports,n),r.loaded=!0,r.exports}n.m=e,n.c=t,n.p="",n(0)}([function(t,n,i){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var r=i(1);n.TreeViewComponent=r.TreeViewComponent;var o=i(19);n.TreeViewModule=o.TreeViewModule;var a=i(4);n.NodeTemplateDirective=a.NodeTemplateDirective;var s=i(29);n.CheckDirective=s.CheckDirective;var d=i(32);n.ExpandDirective=d.ExpandDirective;var c=i(33);n.SelectDirective=c.SelectDirective;var p=i(34);n.HierarchyBindingDirective=p.HierarchyBindingDirective;var u=i(40);n.FlatDataBindingDirective=u.FlatDataBindingDirective,function(t){for(var n in t)e(n,t[n])}(n)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(4),a=n(5),s=n(7),d=n(8),c=n(9),p=n(13),u=n(14),l=n(11),h=n(15),f=n(16),v=n(17),y=n(18),m=[a.ExpandStateService,s.IndexBuilderService,u.TreeViewLookupService,d.LoadingNotificationService,c.NavigationService,p.SelectionService],_=function(){function e(e,t,n,i,o){this.expandService=e,this.navigationService=t,this.selectionService=n,this.treeViewLookupService=i,this.element=o,this.classNames=!0,this.onBlur=new r.EventEmitter,this.onFocus=new r.EventEmitter,this.expand=new r.EventEmitter,this.collapse=new r.EventEmitter,this.checkedChange=new r.EventEmitter,this.selectionChange=new r.EventEmitter,this.navigable=!0,this.checkboxes=!1,this.data=new v.BehaviorSubject([]),this.subscriptions=new f.Subscription(function(){}),this._animate=!0,this.resolvedPromise=Promise.resolve(null),this.children=function(){return y.Observable.of([])}}return Object.defineProperty(e.prototype,"role",{get:function(){return"tree"},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"animate",{get:function(){return!this._animate},set:function(e){this._animate=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"nodes",{set:function(e){this.data.next(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasChildren",{get:function(){return this._hasChildren||h.hasChildren},set:function(e){this._hasChildren=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isChecked",{get:function(){return this._isChecked||h.isChecked},set:function(e){this._isChecked=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isExpanded",{get:function(){return this._isExpanded||h.isExpanded},set:function(e){this._isExpanded=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isSelected",{get:function(){return this._isSelected||h.isSelected},set:function(e){this._isSelected=e},enumerable:!0,configurable:!0}),e.prototype.handleKeydown=function(e){this.isActive&&l.hasActiveNode(e.target)&&this.navigationService.move(e)},e.prototype.handleFocusin=function(e){var t=e.target,n=l.closestNode(t);l.hasActiveNode(t,n)&&this.activateAndEmit(l.nodeId(n))},e.prototype.handleClick=function(e){var t=e.target,n=l.closestNode(t),i=l.nodeId(n);l.hasActiveNode(t,n)&&i&&(this.activateAndEmit(i),this.navigationService.selectIndex(i))},e.prototype.handleFocusout=function(e){var t=this,n=e.target.getAttribute("data-treeindex");this.resolvedPromise.then(function(){t.navigationService.isActive(n)&&(t.navigationService.deactivate(),t.isActive=!1,t.onBlur.emit())})},e.prototype.ngOnChanges=function(e){this.checkboxes=Boolean(this._isChecked),this.expandIcons=Boolean(this._isExpanded&&this._hasChildren),this.navigationService.navigable=Boolean(this.navigable)},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.ngOnInit=function(){var e=this;this.subscriptions.add(this.expandService.changes.subscribe(function(t){var n=t.index,i=t.dataItem;return t.expand?e.expand.emit({index:n,dataItem:i}):e.collapse.emit({index:n,dataItem:i})})),this.subscriptions.add(this.navigationService.checks.subscribe(function(t){return e.checkedChange.emit(e.treeViewLookupService.itemLookup(t))})),this.subscriptions.add(this.selectionService.changes.subscribe(function(t){return e.selectionChange.emit(t)}))},e.prototype.blur=function(){if(l.isDocumentAvailable()){var e=l.focusableNode(this.element);document.activeElement===e&&e.blur()}},e.prototype.focus=function(e){this.navigationService.activateIndex(e);var t=l.focusableNode(this.element);t&&t.focus()},e.prototype.activateAndEmit=function(e){var t=this;e&&(this.navigationService.activateIndex(e),this.resolvedPromise.then(function(){t.navigationService.isActive(e)&&(t.isActive=!0,t.onFocus.emit())}))},i.__decorate([r.HostBinding("class.k-widget"),r.HostBinding("class.k-treeview"),i.__metadata("design:type",Boolean)],e.prototype,"classNames",void 0),i.__decorate([r.HostBinding("attr.role"),i.__metadata("design:type",String),i.__metadata("design:paramtypes",[])],e.prototype,"role",null),i.__decorate([r.Input(),r.HostBinding("@.disabled"),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[Boolean])],e.prototype,"animate",null),i.__decorate([r.Output("blur"),i.__metadata("design:type",r.EventEmitter)],e.prototype,"onBlur",void 0),i.__decorate([r.Output("focus"),i.__metadata("design:type",r.EventEmitter)],e.prototype,"onFocus",void 0),i.__decorate([r.Output(),i.__metadata("design:type",r.EventEmitter)],e.prototype,"expand",void 0),i.__decorate([r.Output(),i.__metadata("design:type",r.EventEmitter)],e.prototype,"collapse",void 0),i.__decorate([r.Output(),i.__metadata("design:type",r.EventEmitter)],e.prototype,"checkedChange",void 0),i.__decorate([r.Output(),i.__metadata("design:type",r.EventEmitter)],e.prototype,"selectionChange",void 0),i.__decorate([r.ContentChild(o.NodeTemplateDirective),i.__metadata("design:type",o.NodeTemplateDirective)],e.prototype,"nodeTemplate",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Array),i.__metadata("design:paramtypes",[Array])],e.prototype,"nodes",null),i.__decorate([r.Input(),i.__metadata("design:type",Object)],e.prototype,"textField",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"hasChildren",null),i.__decorate([r.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isChecked",null),i.__decorate([r.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isExpanded",null),i.__decorate([r.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isSelected",null),i.__decorate([r.Input(),i.__metadata("design:type",Boolean)],e.prototype,"navigable",void 0),i.__decorate([r.HostListener("keydown",["$event"]),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Object]),i.__metadata("design:returntype",void 0)],e.prototype,"handleKeydown",null),i.__decorate([r.HostListener("focusin",["$event"]),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Object]),i.__metadata("design:returntype",void 0)],e.prototype,"handleFocusin",null),i.__decorate([r.HostListener("click",["$event"]),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Object]),i.__metadata("design:returntype",void 0)],e.prototype,"handleClick",null),i.__decorate([r.HostListener("focusout",["$event"]),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Object]),i.__metadata("design:returntype",void 0)],e.prototype,"handleFocusout",null),i.__decorate([r.Input(),i.__metadata("design:type",Function)],e.prototype,"children",void 0),e=i.__decorate([r.Component({changeDetection:r.ChangeDetectionStrategy.OnPush,exportAs:"kendoTreeView",providers:m,selector:"kendo-treeview",template:'\n <ul class="k-treeview-lines"\n kendoTreeViewGroup\n role="group"\n [checkboxes]="checkboxes"\n [expandIcons]="expandIcons"\n [children]="children"\n [hasChildren]="hasChildren"\n [isChecked]="isChecked"\n [isExpanded]="isExpanded"\n [isSelected]="isSelected"\n [nodeTemplateRef]="nodeTemplate?.templateRef"\n [nodes]="data"\n [textField]="textField"\n >\n </ul>\n '}),i.__metadata("design:paramtypes",[a.ExpandStateService,c.NavigationService,p.SelectionService,u.TreeViewLookupService,r.ElementRef])],e)}();t.TreeViewComponent=_},function(e,n){e.exports=t},function(e,t){e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=function(){function e(e){this.templateRef=e}return e=i.__decorate([r.Directive({selector:"[kendoTreeViewNodeTemplate]"}),i.__param(0,r.Optional()),i.__metadata("design:paramtypes",[r.TemplateRef])],e)}();t.NodeTemplateDirective=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(6),a=function(){function e(){this.changes=new o.Subject}return e.prototype.expand=function(e,t){this.changes.next({dataItem:t,index:e,expand:!0})},e.prototype.collapse=function(e,t){this.changes.next({dataItem:t,index:e,expand:!1})},e=i.__decorate([r.Injectable()],e)}();t.ExpandStateService=a},function(e,t){e.exports=c},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=function(){function e(){this.INDEX_SEPARATOR="_"}return e.prototype.nodeIndex=function(e,t){return void 0===e&&(e=""),void 0===t&&(t=""),""+t+(t?this.INDEX_SEPARATOR:"")+e},e.prototype.indexForLevel=function(e,t){return e.split(this.INDEX_SEPARATOR).slice(0,t).join(this.INDEX_SEPARATOR)},e.prototype.level=function(e){return e.split(this.INDEX_SEPARATOR).length},e=i.__decorate([r.Injectable()],e)}();t.IndexBuilderService=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(6),a=function(){function e(){this.changes=new o.Subject}return e.prototype.notifyLoaded=function(e){this.changes.next(e)},e=i.__decorate([r.Injectable()],e)}();t.LoadingNotificationService=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(10),a=n(11),s=n(12),d=n(6),c=function(e,t){return e[t]||e},p=function(){function e(){var e=this;this.expands=new d.Subject,this.moves=new d.Subject,this.checks=new d.Subject,this.selects=new d.Subject,this.navigable=!0,this.actions=(t={},t[s.Keys.up]=function(){return e.activate(c(e.focusableItem,"prev"))},t[s.Keys.down]=function(){return e.activate(c(e.focusableItem,"next"))},t[s.Keys.left]=function(){return e.expand({expand:!1,intercept:e.moveToParent.bind(e)})},t[s.Keys.right]=function(){return e.expand({expand:!0,intercept:e.moveToChild.bind(e)})},t[s.Keys.home]=function(){return e.activate(e.model.firstNode())},t[s.Keys.end]=function(){return e.activate(e.model.lastNode())},t[s.Keys.enter]=function(){return e.navigable&&e.selectIndex(a.nodeIndex(e.activeItem))},t[s.Keys.space]=function(){return e.navigable&&e.checkIndex(a.nodeIndex(e.activeItem))},t),this.isFocused=!1,this._model=new o.NavigationModel;var t}return Object.defineProperty(e.prototype,"model",{get:function(){return this._model},set:function(e){this._model=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"activeIndex",{get:function(){return a.nodeIndex(this.activeItem)||null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"focusableItem",{get:function(){return this.activeItem||this.model.firstNode()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isActiveExpanded",{get:function(){return this.activeItem&&this.activeItem.children.length>0},enumerable:!0,configurable:!0}),e.prototype.activate=function(e){this.navigable&&e&&!this.isActive(a.nodeIndex(e))&&(this.isFocused=!0,this.activeItem=e||this.activeItem,this.notifyMove())},e.prototype.activateParent=function(e){this.activate(this.model.findParent(e))},e.prototype.activateIndex=function(e){e&&this.activate(this.model.findNode(e))},e.prototype.deactivate=function(){this.navigable&&this.isFocused&&(this.isFocused=!1,this.notifyMove())},e.prototype.checkIndex=function(e){this.checks.next(e)},e.prototype.selectIndex=function(e){this.selects.next(e)},e.prototype.isActive=function(e){return!!e&&(this.isFocused&&this.activeIndex===e)},e.prototype.isFocusable=function(e){return a.nodeIndex(this.focusableItem)===e},e.prototype.registerItem=function(e){this.model.registerItem(e)},e.prototype.unregisterItem=function(e){this.isActive(e)&&this.activateParent(e),this.model.unregisterItem(e)},e.prototype.move=function(e){if(this.navigable){var t=this.actions[e.keyCode];t&&(t(),e.preventDefault())}},e.prototype.expand=function(e){var t=e.expand,n=e.intercept,i=a.nodeIndex(this.activeItem);i&&!n(i)&&this.notifyExpand(t)},e.prototype.moveToParent=function(){return!this.isActiveExpanded&&(this.activate(this.model.findParent(a.nodeIndex(this.activeItem))),!0)},e.prototype.moveToChild=function(){return!!this.isActiveExpanded&&(this.activate(this.model.findChild(a.nodeIndex(this.activeItem))),!0)},e.prototype.notifyExpand=function(e){this.expands.next(this.navigationState(e))},e.prototype.notifyMove=function(){this.moves.next(this.navigationState())},e.prototype.navigationState=function(e){return void 0===e&&(e=!1),{expand:e,index:a.nodeIndex(this.activeItem),isFocused:this.isFocused}},e=i.__decorate([r.Injectable()],e)}();t.NavigationService=p},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(7),r=function(e){return e[e.length-1]},o=function(e){return(t=e,t||{}).children||[];var t},a=function(e){for(var t=e,n=[].concat(o(e));n.length;)t=(n=n.concat(o(r(n)))).shift();return t},s=function(){function e(){this.ib=new i.IndexBuilderService,this.nodes=[]}return e.prototype.firstNode=function(){return this.nodes[0]||null},e.prototype.lastNode=function(){var e=this.nodes[this.nodes.length-1];return e?a(r(this.container(e)))||e:null},e.prototype.findNode=function(e){return this.find(e,this.nodes)},e.prototype.findParent=function(e){var t=this.ib.level(e)-1;return this.findNode(this.ib.indexForLevel(e,t))},e.prototype.findChild=function(e){return o(this.findNode(e))[0]||null},e.prototype.registerItem=function(e){var t=this.ib.level(e),n=this.findParent(e);if(n||1===t){var i={children:[],index:e,parent:n,prev:this.prevNode(n),next:this.nextNode(n)};this.container(n).push(i),function(e){var t=e.prev,n=e.next;t&&(t.next=e),n&&(n.prev=e)}(i)}},e.prototype.unregisterItem=function(e){var t=this.find(e,this.nodes);if(t){!function(e){var t=e.prev,n=e.next;t&&(t.next=n),n&&(n.prev=t)}(t);var n=this.container(t.parent);n.splice(n.indexOf(t),1)}},e.prototype.childLevel=function(e){return e&&e.length?this.ib.level(e[0].index):1},e.prototype.find=function(e,t){var n=this.childLevel(t),i=this.ib.indexForLevel(e,n),r=n===this.ib.level(e),o=t.find(function(e){return e.index===i});return o?r?o:this.find(e,o.children):null},e.prototype.container=function(e){return e?e.children:this.nodes},e.prototype.prevNode=function(e){return a(r(this.container(e)))||e||null},e.prototype.nextNode=function(e){if(!e)return null;var t=this.container(this.findParent(e.index));return t[t.indexOf(e)+1]||null},e}();t.NavigationModel=s},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.noop=function(){},t.isPresent=function(e){return null!==e&&void 0!==e},t.isBlank=function(e){return null===e||void 0===e},t.isArray=function(e){return Array.isArray(e)},t.isNullOrEmptyString=function(e){return t.isBlank(e)||0===e.trim().length},t.isDocumentAvailable=function(){return"undefined"!=typeof document},t.isChanged=function(e,t,n){return void 0===n&&(n=!0),t[e]&&(!t[e].isFirstChange()||!n)&&t[e].previousValue!==t[e].currentValue},t.anyChanged=function(e,n,i){return void 0===i&&(i=!0),e.some(function(e){return t.isChanged(e,n,i)})},t.closestNode=function(e){return e.closest("li.k-item")},t.focusableNode=function(e){return e.nativeElement.querySelector('li[tabindex="0"]')},t.hasActiveNode=function(e,n){var i=n||t.closestNode(e);return i&&(i===e||e.tabIndex<0)},t.nodeId=function(e){return void 0===e&&(e={getAttribute:t.noop}),e.getAttribute("data-treeindex")},t.nodeIndex=function(e){return(e||{}).index},t.guid=function(){for(var e,t="",n=0;n<32;n++)e=16*Math.random()|0,8!==n&&12!==n&&16!==n&&20!==n||(t+="-"),t+=(12===n?4:16===n?3&e|8:e).toString(16);return t}},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});(n=t.Keys||(t.Keys={}))[n.enter=13]="enter",n[n.shift=16]="shift",n[n.space=32]="space",n[n.end=35]="end",n[n.home=36]="home",n[n.left=37]="left",n[n.up=38]="up",n[n.right=39]="right",n[n.down=40]="down";var n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(6),a=function(){function e(){this.changes=new o.Subject}return e.prototype.isFirstSelected=function(e){return this.firstIndex===e},e.prototype.setFirstSelected=function(e,t){this.firstIndex===e&&!1===t?this.firstIndex=null:!this.firstIndex&&t&&(this.firstIndex=e)},e.prototype.select=function(e,t){this.changes.next({dataItem:t,index:e})},e=i.__decorate([r.Injectable()],e)}();t.SelectionService=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(11),a=function(){function e(){this.map=new Map}return e.prototype.registerItem=function(e,t){var n={children:[],item:e,parent:this.item(o.nodeIndex(t))};this.map.set(e.index,n)},e.prototype.registerChildren=function(e,t){var n=this.item(e);n&&(n.children=t)},e.prototype.unregisterItem=function(e){this.map.delete(e)},e.prototype.replaceItem=function(e,t,n){var i=this.item(e);i&&t&&(this.unregisterItem(e),this.registerItem(t,n),e===t.index&&this.registerChildren(t.index,i.children.slice()))},e.prototype.itemLookup=function(e){var t=this.item(e);return t?{children:this.mapChildren(t.children),item:t.item,parent:t.parent}:null},e.prototype.hasItem=function(e){return this.map.has(e)},e.prototype.item=function(e){return this.map.get(e)||null},e.prototype.mapChildren=function(e){var t=this;return e.map(function(e){var n=t.item(e.index),i=n.item,r=n.parent,o=n.children;return{children:t.mapChildren(o),item:i,parent:r}})},e=i.__decorate([r.Injectable()],e)}();t.TreeViewLookupService=a},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hasChildren=function(){return!1},t.isChecked=function(){return"none"},t.isExpanded=function(){return!0},t.isSelected=function(){return!1}},function(e,t){e.exports=i},function(e,t){e.exports=r},function(e,t){e.exports=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(1),a=n(20),s=n(4),d=n(29),c=n(32),p=n(33),u=n(34),l=n(40),h=[o.TreeViewComponent,s.NodeTemplateDirective,d.CheckDirective,c.ExpandDirective,p.SelectDirective,u.HierarchyBindingDirective,l.FlatDataBindingDirective],f=function(){function e(){}return e=i.__decorate([r.NgModule({exports:[h],imports:[a.SharedModule]})],e)}();t.TreeViewModule=f},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(1),a=n(21),s=n(28),d=n(4),c=n(29),p=n(32),u=n(33),l=n(34),h=n(35),f=n(40),v=n(42),y=n(43),m=n(44),_=[o.TreeViewComponent,a.TreeViewGroupComponent,v.TreeViewItemDirective,y.TreeViewItemContentDirective,d.NodeTemplateDirective,c.CheckDirective,p.ExpandDirective,u.SelectDirective,l.HierarchyBindingDirective,h.LoadingIndicatorDirective,f.FlatDataBindingDirective],g=function(){function e(){}return e=i.__decorate([r.NgModule({declarations:[_],exports:[_],imports:[s.CommonModule,m.CheckBoxModule]})],e)}();t.SharedModule=g},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(22),a=n(5),s=n(7),d=n(14),c=n(9),p=n(11),u=n(23),l=n(8),h=n(18);n(24),n(25),n(26),n(27);var f=function(){function e(e,t,n,i,r,o){this.expandService=e,this.loadingService=t,this.indexBuilder=n,this.treeViewLookupService=i,this.navigationService=r,this.cd=o,this.kGroupClass=!0,this.textField="",this._data=[],this.isChecked=function(){return"none"},this.isExpanded=function(){return!1},this.isSelected=function(){return!1},this.children=function(){return h.Observable.of([])},this.hasChildren=function(){return!1}}return Object.defineProperty(e.prototype,"role",{get:function(){return"group"},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"data",{get:function(){return this._data},set:function(e){this._data=e,this.updateParentChildren()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasTemplate",{get:function(){return p.isPresent(this.nodeTemplateRef)},enumerable:!0,configurable:!0}),e.prototype.expandNode=function(e,t,n){n?this.expandService.expand(e,t):this.expandService.collapse(e,t)},e.prototype.checkNode=function(e){this.navigationService.checkIndex(e),this.navigationService.activateIndex(e)},e.prototype.nodeIndex=function(e){return this.indexBuilder.nodeIndex(e.toString(),this.parentIndex)},e.prototype.nodeText=function(e){var t=p.isArray(this.textField)?this.textField[0]:this.textField;return u.getter(t,!0)(e)},e.prototype.ngOnDestroy=function(){this.subscription&&this.subscription.unsubscribe()},e.prototype.ngOnInit=function(){var e=this;this.subscription=this.nodes.subscribe(function(t){e.data=t,e.cd.markForCheck()})},e.prototype.ngOnChanges=function(e){e.parentIndex&&this.updateParentChildren()},e.prototype.fetchChildren=function(e,t){var n=this;return this.children(e).catch(function(){return n.loadingService.notifyLoaded(t),h.Observable.empty()}).do(function(){return n.loadingService.notifyLoaded(t)})},Object.defineProperty(e.prototype,"nextFields",{get:function(){return p.isArray(this.textField)?this.textField.length>1?this.textField.slice(1):this.textField:[this.textField]},enumerable:!0,configurable:!0}),e.prototype.updateParentChildren=function(){var e=this.parentIndex?this.mapToTreeItem(this.data):[];this.treeViewLookupService.registerChildren(this.parentIndex,e)},e.prototype.mapToTreeItem=function(e){var t=this;return e.map(function(e,n){return{dataItem:e,index:t.nodeIndex(n)}})},i.__decorate([r.HostBinding("class.k-group"),i.__metadata("design:type",Boolean)],e.prototype,"kGroupClass",void 0),i.__decorate([r.HostBinding("attr.role"),i.__metadata("design:type",String),i.__metadata("design:paramtypes",[])],e.prototype,"role",null),i.__decorate([r.Input(),i.__metadata("design:type",Boolean)],e.prototype,"checkboxes",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Boolean)],e.prototype,"expandIcons",void 0),i.__decorate([r.Input(),i.__metadata("design:type",h.Observable)],e.prototype,"nodes",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Object)],e.prototype,"textField",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Object)],e.prototype,"parentDataItem",void 0),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"parentIndex",void 0),i.__decorate([r.Input(),i.__metadata("design:type",r.TemplateRef)],e.prototype,"nodeTemplateRef",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Function)],e.prototype,"isChecked",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Function)],e.prototype,"isExpanded",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Function)],e.prototype,"isSelected",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Function)],e.prototype,"children",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Function)],e.prototype,"hasChildren",void 0),e=i.__decorate([r.Component({animations:[o.trigger("toggle",[o.transition("void => *",[o.style({height:0}),o.animate("0.1s ease-in",o.style({height:"*"}))]),o.transition("* => void",[o.style({height:"*"}),o.animate("0.1s ease-in",o.style({height:0}))])])],selector:"[kendoTreeViewGroup]",template:'\n <li\n *ngFor="let node of data; let index = index" class="k-item"\n kendoTreeViewItem\n [dataItem]="node"\n [index]="nodeIndex(index)"\n [parentDataItem]="parentDataItem"\n [parentIndex]="parentIndex"\n [isChecked]="isChecked(node, nodeIndex(index))"\n [isExpanded]="isExpanded(node, nodeIndex(index))"\n [isSelected]="isSelected(node, nodeIndex(index))"\n [attr.data-treeindex]="nodeIndex(index)"\n >\n <div class="k-mid">\n <span\n class="k-icon"\n [class.k-i-collapse]="isExpanded(node, nodeIndex(index))"\n [class.k-i-expand]="!isExpanded(node, nodeIndex(index))"\n [kendoTreeViewLoading]="nodeIndex(index)"\n (click)="expandNode(nodeIndex(index), node, !isExpanded(node, nodeIndex(index)))"\n *ngIf="expandIcons && hasChildren(node)"\n >\n </span>\n <kendo-checkbox\n *ngIf="checkboxes"\n [checkState]="isChecked(node, nodeIndex(index))"\n (checkStateChange)="checkNode(nodeIndex(index))"\n tabindex="-1"\n ></kendo-checkbox>\n <span kendoTreeViewItemContent\n [attr.data-treeindex]="nodeIndex(index)"\n [dataItem]="node"\n [index]="nodeIndex(index)"\n [isSelected]="isSelected"\n class="k-in"\n >\n <ng-container [ngSwitch]="hasTemplate">\n <ng-container *ngSwitchCase="true">\n <ng-template\n [ngTemplateOutlet]="nodeTemplateRef" [ngTemplateOutletContext]="{$implicit: node, index: nodeIndex(index)}"\n >\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{nodeText(node)}}\n </ng-container>\n </ng-container>\n </span>\n </div>\n <ul\n *ngIf="isExpanded(node, nodeIndex(index)) && hasChildren(node)"\n kendoTreeViewGroup\n role="group"\n [nodes]="fetchChildren(node, nodeIndex(index))"\n [checkboxes]="checkboxes"\n [expandIcons]="expandIcons"\n [children]="children"\n [hasChildren]="hasChildren"\n [isChecked]="isChecked"\n [isExpanded]="isExpanded"\n [isSelected]="isSelected"\n [nodeTemplateRef]="nodeTemplateRef"\n [parentIndex]="nodeIndex(index)"\n [parentDataItem]="node"\n [textField]="nextFields"\n [@toggle]="true"\n >\n </ul>\n </li>\n '}),i.__metadata("design:paramtypes",[a.ExpandStateService,l.LoadingNotificationService,s.IndexBuilderService,d.TreeViewLookupService,c.NavigationService,r.ChangeDetectorRef])],e)}();t.TreeViewGroupComponent=f},function(e,t){e.exports=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(11),r=/\[(?:(\d+)|['"](.*?)['"])\]|((?:(?!\[.*?\]|\.).)+)/g,o={};o[void 0]=function(e){return e},t.getter=function(e,t){var n=e+t;if(o[n])return o[n];var a=[];return e.replace(r,function(e,t,n,r){a.push(i.isPresent(t)?t:n||r)}),o[n]=function(e){for(var n=e,r=0;r<a.length;r++)if(n=n[a[r]],!i.isPresent(n)&&t)return n;return n},o[n]}},function(e,t){e.exports=h},function(e,t){e.exports=u},function(e,t){e.exports=d},function(e,t){e.exports=v},function(e,t){e.exports=p},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(1),a=n(11),s=n(16);n(30),n(31);var d=function(){function e(e){var t=this;this.treeView=e,this.checkedKeys=[],this.checkedKeysChange=new r.EventEmitter,this.subscriptions=new s.Subscription(function(){}),this.checkActions={multiple:function(e){return t.checkMultiple(e)},single:function(e){return t.checkSingle(e)}}}return Object.defineProperty(e.prototype,"isChecked",{set:function(e){this.treeView.isChecked=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"options",{get:function(){var e={checkChildren:!0,checkParents:!0,enabled:!0,mode:"multiple"};if(!a.isPresent(this.checkable))return e;var t="boolean"==typeof this.checkable?{enabled:this.checkable}:this.checkable;return Object.assign(e,t)},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.subscriptions.add(this.treeView.checkedChange.subscribe(function(t){return e.check(t)})),this.treeView.checkboxes=!0,this.treeView.isChecked=this.isItemChecked.bind(this)},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.isItemChecked=function(e,t){if(!this.checkKey)return this.isIndexChecked(t);return this.checkedKeys.indexOf(this.itemKey({dataItem:e,index:t}))>-1?"checked":"none"},e.prototype.isIndexChecked=function(e){var t=this.checkedKeys.filter(function(t){return 0===t.indexOf(e)});if(n=e,t.filter(function(e){return e===n}).length>0)return"checked";var n,i=this.options,r=i.mode,o=i.checkParents;return"multiple"===r&&o&&t.length?"indeterminate":"none"},e.prototype.itemKey=function(e){return this.checkKey?"string"==typeof this.checkKey?e.dataItem[this.checkKey]:"function"==typeof this.checkKey?this.checkKey(e):void 0:e.index},e.prototype.check=function(e){var t=this.options,n=t.enabled,i=t.mode,r=this.checkActions[i]||a.noop;n&&r(e)},e.prototype.checkSingle=function(e){var t=this.itemKey(e.item);this.checkedKeys=this.checkedKeys[0]!==t?[t]:[],this.notify()},e.prototype.checkMultiple=function(e){this.checkNode(e),this.options.checkParents&&this.checkParents(e.parent),this.notify()},e.prototype.checkNode=function(e,t){var n=this,i=this.itemKey(e.item),r=this.checkedKeys.indexOf(i),o=r>-1,s=void 0===t?!o:t;!a.isPresent(i)||o&&t||(o?this.checkedKeys.splice(r,1):this.checkedKeys.push(i),this.options.checkChildren&&e.children.map(function(e){return n.checkNode(e,s)}))},e.prototype.checkParents=function(e){for(var t=e;t;){var n=this.itemKey(t.item),i=this.checkedKeys.indexOf(n);this.allChildrenSelected(t.children)?-1===i&&this.checkedKeys.push(n):i>-1&&this.checkedKeys.splice(i,1),t=t.parent}},e.prototype.allChildrenSelected=function(e){var t=this;return e.reduce(function(e,n){return e&&"checked"===t.isItemChecked(n.dataItem,n.index)},!0)},e.prototype.notify=function(){this.checkedKeysChange.emit(this.checkedKeys.slice())},i.__decorate([r.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isChecked",null),i.__decorate([r.Input("checkBy"),i.__metadata("design:type",Object)],e.prototype,"checkKey",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Array)],e.prototype,"checkedKeys",void 0),i.__decorate([r.Input("kendoTreeViewCheckable"),i.__metadata("design:type",Object)],e.prototype,"checkable",void 0),i.__decorate([r.Output(),i.__metadata("design:type",r.EventEmitter)],e.prototype,"checkedKeysChange",void 0),e=i.__decorate([r.Directive({selector:"[kendoTreeViewCheckable]"}),i.__metadata("design:paramtypes",[o.TreeViewComponent])],e)}();t.CheckDirective=d},function(e,t){e.exports=a},function(e,t){e.exports=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(1),a=n(16),s=n(18);n(30),n(31);var d=function(){function e(e){this.treeView=e,this.expandedKeysChange=new r.EventEmitter,this.expandedKeys=[],this.subscriptions=new a.Subscription(function(){})}return Object.defineProperty(e.prototype,"isExpanded",{set:function(e){this.treeView.isExpanded=e},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.subscriptions.add(s.Observable.merge(this.treeView.expand.map(function(e){return i.__assign({expand:!0},e)}),this.treeView.collapse.map(function(e){return i.__assign({expand:!1},e)})).subscribe(this.toggleExpand.bind(this))),this.treeView.expandIcons=!0,this.treeView.isExpanded=function(t,n){return e.expandedKeys.indexOf(e.itemKey({dataItem:t,index:n}))>-1}},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.itemKey=function(e){if(this.expandKey){if("string"==typeof this.expandKey)return e.dataItem[this.expandKey];if("function"==typeof this.expandKey)return this.expandKey(e)}return e.index},e.prototype.toggleExpand=function(e){var t=e.index,n=e.dataItem,i=e.expand,r=this.itemKey({index:t,dataItem:n}),o=this.expandedKeys.indexOf(r),a=!1;o>-1&&!i?(this.expandedKeys.splice(o,1),a=!0):-1===o&&i&&(this.expandedKeys.push(r),a=!0),a&&this.expandedKeysChange.emit(this.expandedKeys)},i.__decorate([r.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isExpanded",null),i.__decorate([r.Input("expandBy"),i.__metadata("design:type",Object)],e.prototype,"expandKey",void 0),i.__decorate([r.Output(),i.__metadata("design:type",r.EventEmitter)],e.prototype,"expandedKeysChange",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Array)],e.prototype,"expandedKeys",void 0),e=i.__decorate([r.Directive({selector:"[kendoTreeViewExpandable]"}),i.__metadata("design:paramtypes",[o.TreeViewComponent])],e)}();t.ExpandDirective=d},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(1),a=n(11),s=n(16);n(30),n(31);var d=function(){function e(e){var t=this;this.treeView=e,this.selectedKeys=[],this.selectedKeysChange=new r.EventEmitter,this.subscriptions=new s.Subscription(function(){}),this.selectActions={multiple:function(e){return t.selectMultiple(e)},single:function(e){return t.selectSingle(e)}}}return Object.defineProperty(e.prototype,"isSelected",{set:function(e){this.treeView.isSelected=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"getAriaMultiselectable",{get:function(){return"multiple"===this.options.mode},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"options",{get:function(){var e={enabled:!0,mode:"single"};if(!a.isPresent(this.selection))return e;var t="boolean"==typeof this.selection?{enabled:this.selection}:this.selection;return Object.assign(e,t)},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.subscriptions.add(this.treeView.selectionChange.subscribe(this.select.bind(this))),this.treeView.isSelected=function(t,n){return e.selectedKeys.indexOf(e.itemKey({dataItem:t,index:n}))>-1}},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.itemKey=function(e){return this.selectKey?"string"==typeof this.selectKey?e.dataItem[this.selectKey]:"function"==typeof this.selectKey?this.selectKey(e):void 0:e.index},e.prototype.select=function(e){var t=this.options,n=t.enabled,i=t.mode,r=this.selectActions[i]||a.noop;n&&r(e)},e.prototype.selectSingle=function(e){var t=this.itemKey(e);this.selectedKeys[0]!==t&&(this.selectedKeys=[t],this.notify())},e.prototype.selectMultiple=function(e){var t=this.itemKey(e),n=this.selectedKeys.indexOf(t),i=n>-1;a.isPresent(t)&&(i?this.selectedKeys.splice(n,1):this.selectedKeys.push(t),this.notify())},e.prototype.notify=function(){this.selectedKeysChange.emit(this.selectedKeys.slice())},i.__decorate([r.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isSelected",null),i.__decorate([r.Input("selectBy"),i.__metadata("design:type",Object)],e.prototype,"selectKey",void 0),i.__decorate([r.Input("kendoTreeViewSelectable"),i.__metadata("design:type",Object)],e.prototype,"selection",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Array)],e.prototype,"selectedKeys",void 0),i.__decorate([r.Output(),i.__metadata("design:type",r.EventEmitter)],e.prototype,"selectedKeysChange",void 0),i.__decorate([r.HostBinding("attr.aria-multiselectable"),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[])],e.prototype,"getAriaMultiselectable",null),e=i.__decorate([r.Directive({selector:"[kendoTreeViewSelectable]"}),i.__metadata("design:paramtypes",[o.TreeViewComponent])],e)}();t.SelectDirective=d},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(1),a=n(23),s=n(11),d=n(15),c=n(18);n(26);var p=function(){function e(e){this.treeView=e}return Object.defineProperty(e.prototype,"childrenField",{get:function(){return this._childrenField},set:function(e){if(!e)throw new Error("'childrenField' cannot be empty");this._childrenField=e},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;s.isPresent(this.childrenField)&&(this.treeView.children=function(t){return c.Observable.of(a.getter(e.childrenField,!0)(t))},this.treeView.hasChildren=function(t){return e.childrenField in t},this.treeView.isExpanded!==d.isExpanded&&(this.treeView.expandIcons=!0))},i.__decorate([r.Input(),i.__metadata("design:type",String),i.__metadata("design:paramtypes",[String])],e.prototype,"childrenField",null),e=i.__decorate([r.Directive({selector:"[kendoTreeViewHierarchyBinding]"}),i.__metadata("design:paramtypes",[o.TreeViewComponent])],e)}();t.HierarchyBindingDirective=p},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(5),a=n(8),s=n(18);n(36),n(37),n(38),n(39),n(26);var d=function(){function e(e,t,n){this.expandService=e,this.loadingService=t,this.cd=n,this._loading=!1}return Object.defineProperty(e.prototype,"loading",{get:function(){return this._loading},set:function(e){this._loading=e,this.cd.markForCheck()},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this,t=this.loadingService.changes.filter(function(t){return t===e.index});this.subscription=this.expandService.changes.filter(function(t){return t.index===e.index}).do(function(t){!t.expand&&e.loading&&(e.loading=!1)}).filter(function(e){return e.expand}).switchMap(function(e){return s.Observable.of(e).delay(100).takeUntil(t)}).subscribe(function(){return e.loading=!0}),this.subscription.add(t.subscribe(function(){return e.loading=!1}))},e.prototype.ngOnDestroy=function(){this.subscription&&this.subscription.unsubscribe()},i.__decorate([r.HostBinding("class.k-i-loading"),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[Boolean])],e.prototype,"loading",null),i.__decorate([r.Input("kendoTreeViewLoading"),i.__metadata("design:type",String)],e.prototype,"index",void 0),e=i.__decorate([r.Directive({selector:"[kendoTreeViewLoading]"}),i.__metadata("design:paramtypes",[o.ExpandStateService,a.LoadingNotificationService,r.ChangeDetectorRef])],e)}();t.LoadingIndicatorDirective=d},function(e,t){e.exports=f},function(e,t){e.exports=_},function(e,t){e.exports=y},function(e,t){e.exports=m},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(1),a=n(23),s=n(11),d=n(41),c=n(18),p=function(){function e(e){this.treeView=e,this.originalData=[]}return Object.defineProperty(e.prototype,"nodes",{set:function(e){if(this.originalData=e||[],s.isNullOrEmptyString(this.parentIdField))this.treeView.nodes=this.originalData.slice(0);else{var t=a.getter(this.parentIdField,!0);this.treeView.nodes=this.originalData.filter(d.compose(s.isBlank,t))}},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;if(s.isPresent(this.parentIdField)&&s.isPresent(this.idField)){var t=function(t){return n=a.getter(e.parentIdField,!0),i=e.originalData||[],r=a.getter(e.idField,!0)(t),i.filter(function(e){return n(e)===r});var n,i,r};this.treeView.hasChildren=function(e){return t(e).length>0},this.treeView.children=function(e){return c.Observable.of(t(e))}}},e.prototype.ngOnChanges=function(e){s.isChanged("parentIdField",e,!1)&&(this.nodes=this.originalData)},i.__decorate([r.Input(),i.__metadata("design:type",Array),i.__metadata("design:paramtypes",[Array])],e.prototype,"nodes",null),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"parentIdField",void 0),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"idField",void 0),e=i.__decorate([r.Directive({selector:"[kendoTreeViewFlatDataBinding]"}),i.__metadata("design:paramtypes",[o.TreeViewComponent])],e)}();t.FlatDataBindingDirective=p},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.compose=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(t){return e.reduceRight(function(e,t){return t(e)},t)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(9),a=n(13),s=n(5),d=n(7),c=n(14),p=n(11);n(36);var u=function(e,t){return{dataItem:t,index:e}},l=function(){function e(e,t,n,i,r,o,a){this.element=e,this.expandService=t,this.navigationService=n,this.selectionService=i,this.lookupService=r,this.renderer=o,this.ib=a,this.ariaChecked="false",this.isInitialized=!1,this.subscriptions=[],this.subscribe()}return Object.defineProperty(e.prototype,"isChecked",{set:function(e){this.ariaChecked="checked"===e?"true":"indeterminate"===e?"mixed":"false"},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isExpanded",{get:function(){return this._isExpanded||!1},set:function(e){this._isExpanded=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isSelected",{get:function(){return this._isSelected||!1},set:function(e){this._isSelected=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"treeItem",{get:function(){return u(this.index,this.dataItem)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"parentTreeItem",{get:function(){return this.parentDataItem?u(this.parentIndex,this.parentDataItem):null},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){this.navigationService.registerItem(this.index),this.lookupService.registerItem(this.treeItem,this.parentTreeItem),this.activateItem(),this.isInitialized=!0,this.setAttribute("role","treeitem"),this.setAriaAttributes(),this.updateTabIndex()},e.prototype.ngOnChanges=function(e){var t=e.index;(t||e.isChecked||e.isExpanded||e.isSelected)&&this.setAriaAttributes(),this.moveLookupItem(e),this.moveNavigationItem(t)},e.prototype.ngOnDestroy=function(){this.navigationService.unregisterItem(this.index),this.subscriptions.map(function(e){return e.unsubscribe()}),this.subscriptions=[]},e.prototype.subscribe=function(){var e=this;this.subscriptions=[this.navigationService.moves.subscribe(function(){e.updateTabIndex(),e.focusItem()}),this.navigationService.expands.filter(function(t){return t.index===e.index}).subscribe(function(t){var n=t.expand;return e.expand(n)})]},e.prototype.activateItem=function(){var e=this.navigationService,t=this.selectionService,n=this.index;t.setFirstSelected(n,this.isSelected),!e.isActive(n)&&t.isFirstSelected(n)&&e.activateIndex(n)},e.prototype.expand=function(e){this.expandService[e?"expand":"collapse"](this.index,this.dataItem)},e.prototype.isFocusable=function(){return this.navigationService.isFocusable(this.index)},e.prototype.focusItem=function(){this.isInitialized&&this.navigationService.isActive(this.index)&&this.element.nativeElement.focus()},e.prototype.moveLookupItem=function(e){void 0===e&&(e={});var t=e.dataItem,n=e.index,i=e.parentDataItem,r=e.parentIndex;if((!n||!n.firstChange||this.lookupService.hasItem(this.index))&&(t||n||i||r)){var o=(n||{}).previousValue||this.index;this.lookupService.replaceItem(o,this.treeItem,this.parentTreeItem)}},e.prototype.moveNavigationItem=function(e){void 0===e&&(e={});var t=e.currentValue,n=e.firstChange,i=e.previousValue;!n&&p.isPresent(t)&&p.isPresent(i)&&(this.navigationService.unregisterItem(i),this.navigationService.registerItem(t))},e.prototype.setAriaAttributes=function(){this.setAttribute("aria-level",this.ib.level(this.index).toString()),this.setAttribute("aria-expanded",this.isExpanded.toString()),this.setAttribute("aria-selected",this.isSelected.toString()),this.setAttribute("aria-checked",this.ariaChecked)},e.prototype.updateTabIndex=function(){this.setAttribute("tabIndex",this.isFocusable()?"0":"-1")},e.prototype.setAttribute=function(e,t){this.renderer.setAttribute(this.element.nativeElement,e,t)},i.__decorate([r.Input(),i.__metadata("design:type",Object)],e.prototype,"dataItem",void 0),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"index",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Object)],e.prototype,"parentDataItem",void 0),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"parentIndex",void 0),i.__decorate([r.Input(),i.__metadata("design:type",String),i.__metadata("design:paramtypes",[String])],e.prototype,"isChecked",null),i.__decorate([r.Input(),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[Boolean])],e.prototype,"isExpanded",null),i.__decorate([r.Input(),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[Boolean])],e.prototype,"isSelected",null),e=i.__decorate([r.Directive({selector:"[kendoTreeViewItem]"}),i.__metadata("design:paramtypes",[r.ElementRef,s.ExpandStateService,o.NavigationService,a.SelectionService,c.TreeViewLookupService,r.Renderer2,d.IndexBuilderService])],e)}();t.TreeViewItemDirective=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(9),a=n(13),s=n(16);n(36),n(24);var d=function(){function e(e,t,n,i){var r=this;this.element=e,this.navigationService=t,this.selectionService=n,this.renderer=i,this.subscriptions=new s.Subscription(function(){}),this.subscriptions.add(this.navigationService.moves.subscribe(this.updateItem.bind(this))),this.subscriptions.add(this.navigationService.selects.filter(function(e){return e===r.index}).subscribe(function(e){return r.selectionService.select(e,r.dataItem)})),this.subscriptions.add(this.selectionService.changes.subscribe(this.updateSelection.bind(this)))}return e.prototype.ngOnInit=function(){this.updateSelection()},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.updateItem=function(){this.render(this.navigationService.isActive(this.index),"k-state-focused")},e.prototype.updateSelection=function(){this.render(this.isSelected(this.dataItem,this.index),"k-state-selected")},e.prototype.render=function(e,t){var n=e?"addClass":"removeClass";this.renderer[n](this.element.nativeElement,t)},i.__decorate([r.Input(),i.__metadata("design:type",Object)],e.prototype,"dataItem",void 0),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"index",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Function)],e.prototype,"isSelected",void 0),e=i.__decorate([r.Directive({selector:"[kendoTreeViewItemContent]"}),i.__metadata("design:paramtypes",[r.ElementRef,o.NavigationService,a.SelectionService,r.Renderer2])],e)}();t.TreeViewItemContentDirective=d},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=[n(45).CheckBoxComponent],a=function(){function e(){}return e=i.__decorate([r.NgModule({declarations:[o],exports:[o]})],e)}();t.CheckBoxModule=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),r=n(3),o=n(11),a=function(){function e(e,t){this.element=e,this.renderer=t,this.id="_"+o.guid(),this.checkState="none",this.tabindex=0,this.checkStateChange=new r.EventEmitter}return Object.defineProperty(e.prototype,"classWrapper",{get:function(){return!0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"indeterminate",{get:function(){return"indeterminate"===this.checkState},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"checked",{get:function(){return"checked"===this.checkState},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){this.renderer.removeAttribute(this.element.nativeElement,"tabindex")},e.prototype.handleChange=function(e){this.checkStateChange.emit(e.target.checked?"checked":"none")},i.__decorate([r.HostBinding("class.k-checkbox-wrapper"),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[])],e.prototype,"classWrapper",null),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"id",void 0),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"checkState",void 0),i.__decorate([r.Input(),i.__metadata("design:type",String)],e.prototype,"labelText",void 0),i.__decorate([r.Input(),i.__metadata("design:type",Number)],e.prototype,"tabindex",void 0),i.__decorate([r.Output(),i.__metadata("design:type",r.EventEmitter)],e.prototype,"checkStateChange",void 0),e=i.__decorate([r.Component({selector:"kendo-checkbox",template:'\n <input\n class="k-checkbox"\n type="checkbox"\n [id]="id"\n [checked]="checked"\n [indeterminate]="indeterminate"\n [tabindex]="tabindex"\n (change)="handleChange($event)"\n />\n <label\n class="k-checkbox-label"\n tabindex="-1"\n [for]="id"\n >{{labelText}}</label>\n '}),i.__metadata("design:paramtypes",[r.ElementRef,r.Renderer2])],e)}();t.CheckBoxComponent=a}])}}});
System.register("@progress/kendo-angular-treeview",["tslib","@angular/core","rxjs/Subscription","rxjs/Observable","rxjs/BehaviorSubject","rxjs/add/observable/merge","rxjs/add/operator/map","rxjs/add/observable/of","rxjs/Subject","@angular/common","rxjs/add/operator/do","@angular/animations","rxjs/add/operator/catch","rxjs/add/observable/empty","rxjs/add/operator/filter","rxjs/add/operator/delay","rxjs/add/operator/takeUntil","rxjs/add/operator/switchMap"],function(e){var t,n,i,o,r,a,s,d,c,p,u,l,h,f,v,y,m,_;function g(e){return e.__useDefault?e.default:e}return{setters:[function(e){t=g(e)},function(e){n=g(e)},function(e){i=g(e)},function(e){o=g(e)},function(e){r=g(e)},function(e){a=g(e)},function(e){s=g(e)},function(e){d=g(e)},function(e){c=g(e)},function(e){p=g(e)},function(e){u=g(e)},function(e){l=g(e)},function(e){h=g(e)},function(e){f=g(e)},function(e){v=g(e)},function(e){y=g(e)},function(e){m=g(e)},function(e){_=g(e)}],execute:function(){!function(e){var t={};function n(i){if(t[i])return t[i].exports;var o=t[i]={exports:{},id:i,loaded:!1};return e[i].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}n.m=e,n.c=t,n.p="",n(0)}([function(t,n,i){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var o=i(1);n.TreeViewComponent=o.TreeViewComponent;var r=i(19);n.TreeViewModule=r.TreeViewModule;var a=i(4);n.NodeTemplateDirective=a.NodeTemplateDirective;var s=i(29);n.CheckDirective=s.CheckDirective;var d=i(32);n.DisableDirective=d.DisableDirective;var c=i(33);n.ExpandDirective=c.ExpandDirective;var p=i(34);n.SelectDirective=p.SelectDirective;var u=i(35);n.HierarchyBindingDirective=u.HierarchyBindingDirective;var l=i(41);n.FlatDataBindingDirective=l.FlatDataBindingDirective,function(t){for(var n in t)e(n,t[n])}(n)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(4),a=n(5),s=n(7),d=n(8),c=n(9),p=n(13),u=n(14),l=n(11),h=n(15),f=n(16),v=n(17),y=n(18),m=[a.ExpandStateService,s.IndexBuilderService,u.TreeViewLookupService,d.LoadingNotificationService,c.NavigationService,p.SelectionService],_=function(){function e(e,t,n,i,r){this.expandService=e,this.navigationService=t,this.selectionService=n,this.treeViewLookupService=i,this.element=r,this.classNames=!0,this.onBlur=new o.EventEmitter,this.onFocus=new o.EventEmitter,this.expand=new o.EventEmitter,this.collapse=new o.EventEmitter,this.checkedChange=new o.EventEmitter,this.selectionChange=new o.EventEmitter,this.isDisabled=h.isDisabled,this.navigable=!0,this.checkboxes=!1,this.data=new v.BehaviorSubject([]),this.subscriptions=new f.Subscription(function(){}),this._animate=!0,this.resolvedPromise=Promise.resolve(null),this.children=function(){return y.Observable.of([])}}return Object.defineProperty(e.prototype,"role",{get:function(){return"tree"},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"animate",{get:function(){return!this._animate},set:function(e){this._animate=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"nodes",{set:function(e){this.data.next(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasChildren",{get:function(){return this._hasChildren||h.hasChildren},set:function(e){this._hasChildren=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isChecked",{get:function(){return this._isChecked||h.isChecked},set:function(e){this._isChecked=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isExpanded",{get:function(){return this._isExpanded||h.isExpanded},set:function(e){this._isExpanded=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isSelected",{get:function(){return this._isSelected||h.isSelected},set:function(e){this._isSelected=e},enumerable:!0,configurable:!0}),e.prototype.handleKeydown=function(e){this.isActive&&l.hasActiveNode(e.target)&&this.navigationService.move(e)},e.prototype.handleFocusin=function(e){var t=e.target,n=l.closestNode(t);l.hasActiveNode(t,n)&&this.activateAndEmit(l.nodeId(n))},e.prototype.handleClick=function(e){var t=e.target,n=l.closestNode(t),i=l.nodeId(n);if(l.hasActiveNode(t,n)&&i){this.activateAndEmit(i),/k-i-collapse|k-i-expand/.test(t.className)||this.navigationService.selectIndex(i)}},e.prototype.handleFocusout=function(e){var t=this,n=e.target.getAttribute("data-treeindex");this.resolvedPromise.then(function(){t.navigationService.isActive(n)&&(t.navigationService.deactivate(),t.isActive=!1,t.onBlur.emit())})},e.prototype.ngOnChanges=function(e){this.checkboxes=Boolean(this._isChecked),this.expandIcons=Boolean(this._isExpanded&&this._hasChildren),this.navigationService.navigable=Boolean(this.navigable)},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.ngOnInit=function(){var e=this;this.subscriptions.add(this.expandService.changes.subscribe(function(t){var n=t.index,i=t.dataItem;return t.expand?e.expand.emit({index:n,dataItem:i}):e.collapse.emit({index:n,dataItem:i})})),this.subscriptions.add(this.navigationService.checks.subscribe(function(t){return e.checkedChange.emit(e.treeViewLookupService.itemLookup(t))})),this.subscriptions.add(this.selectionService.changes.subscribe(function(t){return e.selectionChange.emit(t)}))},e.prototype.blur=function(){if(l.isDocumentAvailable()){var e=l.focusableNode(this.element);document.activeElement===e&&e.blur()}},e.prototype.focus=function(e){this.navigationService.activateIndex(e);var t=l.focusableNode(this.element);t&&t.focus()},e.prototype.activateAndEmit=function(e){var t=this;e&&(this.navigationService.activateIndex(e),this.resolvedPromise.then(function(){t.navigationService.isActive(e)&&(t.isActive=!0,t.onFocus.emit())}))},i.__decorate([o.HostBinding("class.k-widget"),o.HostBinding("class.k-treeview"),i.__metadata("design:type",Boolean)],e.prototype,"classNames",void 0),i.__decorate([o.HostBinding("attr.role"),i.__metadata("design:type",String),i.__metadata("design:paramtypes",[])],e.prototype,"role",null),i.__decorate([o.Input(),o.HostBinding("@.disabled"),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[Boolean])],e.prototype,"animate",null),i.__decorate([o.Output("blur"),i.__metadata("design:type",o.EventEmitter)],e.prototype,"onBlur",void 0),i.__decorate([o.Output("focus"),i.__metadata("design:type",o.EventEmitter)],e.prototype,"onFocus",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],e.prototype,"expand",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],e.prototype,"collapse",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],e.prototype,"checkedChange",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],e.prototype,"selectionChange",void 0),i.__decorate([o.ContentChild(r.NodeTemplateDirective),i.__metadata("design:type",r.NodeTemplateDirective)],e.prototype,"nodeTemplate",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Array),i.__metadata("design:paramtypes",[Array])],e.prototype,"nodes",null),i.__decorate([o.Input(),i.__metadata("design:type",Object)],e.prototype,"textField",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"hasChildren",null),i.__decorate([o.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isChecked",null),i.__decorate([o.Input(),i.__metadata("design:type",Function)],e.prototype,"isDisabled",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isExpanded",null),i.__decorate([o.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isSelected",null),i.__decorate([o.Input(),i.__metadata("design:type",Boolean)],e.prototype,"navigable",void 0),i.__decorate([o.HostListener("keydown",["$event"]),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Object]),i.__metadata("design:returntype",void 0)],e.prototype,"handleKeydown",null),i.__decorate([o.HostListener("focusin",["$event"]),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Object]),i.__metadata("design:returntype",void 0)],e.prototype,"handleFocusin",null),i.__decorate([o.HostListener("click",["$event"]),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Object]),i.__metadata("design:returntype",void 0)],e.prototype,"handleClick",null),i.__decorate([o.HostListener("focusout",["$event"]),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Object]),i.__metadata("design:returntype",void 0)],e.prototype,"handleFocusout",null),i.__decorate([o.Input(),i.__metadata("design:type",Function)],e.prototype,"children",void 0),e=i.__decorate([o.Component({changeDetection:o.ChangeDetectionStrategy.OnPush,exportAs:"kendoTreeView",providers:m,selector:"kendo-treeview",template:'\n <ul class="k-treeview-lines"\n kendoTreeViewGroup\n role="group"\n [checkboxes]="checkboxes"\n [expandIcons]="expandIcons"\n [children]="children"\n [hasChildren]="hasChildren"\n [isChecked]="isChecked"\n [isDisabled]="isDisabled"\n [isExpanded]="isExpanded"\n [isSelected]="isSelected"\n [nodeTemplateRef]="nodeTemplate?.templateRef"\n [nodes]="data"\n [textField]="textField"\n >\n </ul>\n '}),i.__metadata("design:paramtypes",[a.ExpandStateService,c.NavigationService,p.SelectionService,u.TreeViewLookupService,o.ElementRef])],e)}();t.TreeViewComponent=_},function(e,n){e.exports=t},function(e,t){e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=function(){function e(e){this.templateRef=e}return e=i.__decorate([o.Directive({selector:"[kendoTreeViewNodeTemplate]"}),i.__param(0,o.Optional()),i.__metadata("design:paramtypes",[o.TemplateRef])],e)}();t.NodeTemplateDirective=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(6),a=function(){function e(){this.changes=new r.Subject}return e.prototype.expand=function(e,t){this.changes.next({dataItem:t,index:e,expand:!0})},e.prototype.collapse=function(e,t){this.changes.next({dataItem:t,index:e,expand:!1})},e=i.__decorate([o.Injectable()],e)}();t.ExpandStateService=a},function(e,t){e.exports=c},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=function(){function e(){this.INDEX_SEPARATOR="_"}return e.prototype.nodeIndex=function(e,t){return void 0===e&&(e=""),void 0===t&&(t=""),""+t+(t?this.INDEX_SEPARATOR:"")+e},e.prototype.indexForLevel=function(e,t){return e.split(this.INDEX_SEPARATOR).slice(0,t).join(this.INDEX_SEPARATOR)},e.prototype.lastLevelIndex=function(e){void 0===e&&(e="");var t=e.split(this.INDEX_SEPARATOR);return t.length?parseInt(t[t.length-1],10):NaN},e.prototype.level=function(e){return e.split(this.INDEX_SEPARATOR).length},e=i.__decorate([o.Injectable()],e)}();t.IndexBuilderService=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(6),a=function(){function e(){this.changes=new r.Subject}return e.prototype.notifyLoaded=function(e){this.changes.next(e)},e=i.__decorate([o.Injectable()],e)}();t.LoadingNotificationService=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(10),a=n(11),s=n(12),d=n(6),c=function(e,t){return e[t]||e},p=function(){function e(){var e=this;this.expands=new d.Subject,this.moves=new d.Subject,this.checks=new d.Subject,this.selects=new d.Subject,this.navigable=!0,this.actions=(t={},t[s.Keys.up]=function(){return e.activate(c(e.focusableItem,"prev"))},t[s.Keys.down]=function(){return e.activate(c(e.focusableItem,"next"))},t[s.Keys.left]=function(){return e.expand({expand:!1,intercept:e.moveToParent.bind(e)})},t[s.Keys.right]=function(){return e.expand({expand:!0,intercept:e.moveToChild.bind(e)})},t[s.Keys.home]=function(){return e.activate(e.model.firstNode())},t[s.Keys.end]=function(){return e.activate(e.model.lastNode())},t[s.Keys.enter]=function(){return e.navigable&&e.selectIndex(a.nodeIndex(e.activeItem))},t[s.Keys.space]=function(){return e.navigable&&e.checkIndex(a.nodeIndex(e.activeItem))},t),this.isFocused=!1,this._model=new r.NavigationModel;var t}return Object.defineProperty(e.prototype,"model",{get:function(){return this._model},set:function(e){this._model=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"activeIndex",{get:function(){return a.nodeIndex(this.activeItem)||null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"focusableItem",{get:function(){return this.activeItem||this.model.firstNode()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isActiveExpanded",{get:function(){return this.activeItem&&this.activeItem.children.length>0},enumerable:!0,configurable:!0}),e.prototype.activate=function(e){this.navigable&&e&&!this.isActive(a.nodeIndex(e))&&(this.isFocused=!0,this.activeItem=e||this.activeItem,this.notifyMove())},e.prototype.activateParent=function(e){this.activate(this.model.findParent(e))},e.prototype.activateIndex=function(e){e&&this.activate(this.model.findNode(e))},e.prototype.activateClosest=function(e){e&&a.nodeIndex(this.focusableItem)===e&&(this.activeItem=this.model.closestNode(e),this.notifyMove())},e.prototype.activateFocusable=function(){this.activeItem||(this.activeItem=this.model.firstNode(),this.notifyMove())},e.prototype.deactivate=function(){this.navigable&&this.isFocused&&(this.isFocused=!1,this.notifyMove())},e.prototype.checkIndex=function(e){this.checks.next(e)},e.prototype.selectIndex=function(e){this.selects.next(e)},e.prototype.isActive=function(e){return!!e&&(this.isFocused&&this.activeIndex===e)},e.prototype.isFocusable=function(e){return a.nodeIndex(this.focusableItem)===e},e.prototype.registerItem=function(e){this.model.registerItem(e)},e.prototype.unregisterItem=function(e){this.isActive(e)&&this.activateParent(e),this.model.unregisterItem(e)},e.prototype.move=function(e){if(this.navigable){var t=this.actions[e.keyCode];t&&(t(),e.preventDefault())}},e.prototype.expand=function(e){var t=e.expand,n=e.intercept,i=a.nodeIndex(this.activeItem);i&&!n(i)&&this.notifyExpand(t)},e.prototype.moveToParent=function(){return!this.isActiveExpanded&&(this.activate(this.model.findParent(a.nodeIndex(this.activeItem))),!0)},e.prototype.moveToChild=function(){return!!this.isActiveExpanded&&(this.activate(this.model.findChild(a.nodeIndex(this.activeItem))),!0)},e.prototype.notifyExpand=function(e){this.expands.next(this.navigationState(e))},e.prototype.notifyMove=function(){this.moves.next(this.navigationState())},e.prototype.navigationState=function(e){return void 0===e&&(e=!1),{expand:e,index:a.nodeIndex(this.activeItem),isFocused:this.isFocused}},e=i.__decorate([o.Injectable()],e)}();t.NavigationService=p},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(7),o=function(e){return e[e.length-1]},r=function(e){return e||{}},a=function(e){return r(e).children||[]},s=function(e){for(var t=e,n=[].concat(a(e));n.length;)t=(n=n.concat(a(o(n)))).shift();return t},d=function(){function e(){this.ib=new i.IndexBuilderService,this.nodes=[]}return e.prototype.firstNode=function(){return this.nodes[0]||null},e.prototype.lastNode=function(){var e=this.nodes[this.nodes.length-1];return e?s(o(this.container(e)))||e:null},e.prototype.closestNode=function(e){var t=r(this.findNode(e)).prev||this.firstNode();return r(t).index===e?this.sibling(t,1):t},e.prototype.findNode=function(e){return this.find(e,this.nodes)},e.prototype.findParent=function(e){var t=this.ib.level(e)-1;return this.findNode(this.ib.indexForLevel(e,t))},e.prototype.findChild=function(e){return a(this.findNode(e))[0]||null},e.prototype.registerItem=function(e){var t=this.ib.level(e),n=this.findParent(e);if(n||1===t){var i={children:[],index:e,parent:n,prev:this.prevNode(n,e),next:this.nextNode(n,e)};!function(e){var t=e.prev,n=e.next;t&&(t.next=e),n&&(n.prev=e)}(i),this.insert(i,n)}},e.prototype.unregisterItem=function(e){var t=this.find(e,this.nodes);if(t){n=t.prev,i=this.nextNode(t.parent,t.index),n&&(n.next=i),i&&(i.prev=n);var n,i,o=this.container(t.parent);o.splice(o.indexOf(t),1)}},e.prototype.childLevel=function(e){return e&&e.length?this.ib.level(e[0].index):1},e.prototype.container=function(e){return e?e.children:this.nodes},e.prototype.find=function(e,t){var n=this.childLevel(t),i=this.ib.indexForLevel(e,n),o=n===this.ib.level(e),r=t.find(function(e){return e.index===i});return r?o?r:this.find(e,r.children):null},e.prototype.closestIndexPosition=function(e,t){for(var n=this.ib.lastLevelIndex(t),i=0;i<e.length;){if(this.ib.lastLevelIndex(e[i].index)>n)return i;i+=1}return i},e.prototype.insert=function(e,t){var n=this.container(t);n.splice(this.closestIndexPosition(n,e.index),0,e)},e.prototype.prevNode=function(e,t){var n=this.container(e),i=n.slice(0,this.closestIndexPosition(n,t));return s(o(i))||e||null},e.prototype.nextNode=function(e,t){var n=this.container(e),i=this.findNode(t);if(!e&&i)return this.sibling(i,1);var r=this.closestIndexPosition(n,t),a=o(n.slice(r));return a||this.sibling(e,1)},e.prototype.sibling=function(e,t){if(!e)return null;var n=this.findParent(e.index),i=this.container(n);return i[i.indexOf(e)+t]||this.sibling(n,t)||null},e}();t.NavigationModel=d},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.noop=function(){},t.isPresent=function(e){return null!==e&&void 0!==e},t.isBlank=function(e){return null===e||void 0===e},t.isArray=function(e){return Array.isArray(e)},t.isNullOrEmptyString=function(e){return t.isBlank(e)||0===e.trim().length},t.isDocumentAvailable=function(){return"undefined"!=typeof document},t.isChanged=function(e,t,n){return void 0===n&&(n=!0),t[e]&&(!t[e].isFirstChange()||!n)&&t[e].previousValue!==t[e].currentValue},t.anyChanged=function(e,n,i){return void 0===i&&(i=!0),e.some(function(e){return t.isChanged(e,n,i)})},t.closestNode=function(e){return e.closest("li.k-item")},t.focusableNode=function(e){return e.nativeElement.querySelector('li[tabindex="0"]')},t.hasActiveNode=function(e,n){var i=n||t.closestNode(e);return i&&(i===e||e.tabIndex<0)},t.nodeId=function(e){return e?e.getAttribute("data-treeindex"):""},t.nodeIndex=function(e){return(e||{}).index},t.guid=function(){for(var e,t="",n=0;n<32;n++)e=16*Math.random()|0,8!==n&&12!==n&&16!==n&&20!==n||(t+="-"),t+=(12===n?4:16===n?3&e|8:e).toString(16);return t}},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});(n=t.Keys||(t.Keys={}))[n.enter=13]="enter",n[n.shift=16]="shift",n[n.space=32]="space",n[n.end=35]="end",n[n.home=36]="home",n[n.left=37]="left",n[n.up=38]="up",n[n.right=39]="right",n[n.down=40]="down";var n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(6),a=function(){function e(){this.changes=new r.Subject}return e.prototype.isFirstSelected=function(e){return this.firstIndex===e},e.prototype.setFirstSelected=function(e,t){this.firstIndex===e&&!1===t?this.firstIndex=null:!this.firstIndex&&t&&(this.firstIndex=e)},e.prototype.select=function(e,t){this.changes.next({dataItem:t,index:e})},e=i.__decorate([o.Injectable()],e)}();t.SelectionService=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(11),a=function(){function e(){this.map=new Map}return e.prototype.registerItem=function(e,t){var n={children:[],item:e,parent:this.item(r.nodeIndex(t))};this.map.set(e.index,n)},e.prototype.registerChildren=function(e,t){var n=this.item(e);n&&(n.children=t)},e.prototype.unregisterItem=function(e){this.map.delete(e)},e.prototype.replaceItem=function(e,t,n){var i=this.item(e);i&&t&&(this.unregisterItem(e),this.registerItem(t,n),e===t.index&&this.registerChildren(t.index,i.children.slice()))},e.prototype.itemLookup=function(e){var t=this.item(e);return t?{children:this.mapChildren(t.children),item:t.item,parent:t.parent}:null},e.prototype.hasItem=function(e){return this.map.has(e)},e.prototype.item=function(e){return this.map.get(e)||null},e.prototype.mapChildren=function(e){var t=this;return e.map(function(e){var n=t.item(e.index),i=n.item,o=n.parent,r=n.children;return{children:t.mapChildren(r),item:i,parent:o}})},e=i.__decorate([o.Injectable()],e)}();t.TreeViewLookupService=a},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hasChildren=function(){return!1},t.isChecked=function(){return"none"},t.isDisabled=function(){return!1},t.isExpanded=function(){return!0},t.isSelected=function(){return!1}},function(e,t){e.exports=i},function(e,t){e.exports=r},function(e,t){e.exports=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(1),a=n(20),s=n(4),d=n(29),c=n(32),p=n(33),u=n(34),l=n(35),h=n(41),f=[r.TreeViewComponent,s.NodeTemplateDirective,d.CheckDirective,c.DisableDirective,p.ExpandDirective,u.SelectDirective,l.HierarchyBindingDirective,h.FlatDataBindingDirective],v=function(){function e(){}return e=i.__decorate([o.NgModule({exports:[f],imports:[a.SharedModule]})],e)}();t.TreeViewModule=v},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(1),a=n(21),s=n(28),d=n(4),c=n(29),p=n(32),u=n(33),l=n(34),h=n(35),f=n(36),v=n(41),y=n(43),m=n(44),_=n(45),g=[r.TreeViewComponent,a.TreeViewGroupComponent,y.TreeViewItemDirective,m.TreeViewItemContentDirective,d.NodeTemplateDirective,c.CheckDirective,p.DisableDirective,u.ExpandDirective,l.SelectDirective,h.HierarchyBindingDirective,f.LoadingIndicatorDirective,v.FlatDataBindingDirective],b=function(){function e(){}return e=i.__decorate([o.NgModule({declarations:[g],exports:[g],imports:[s.CommonModule,_.CheckBoxModule]})],e)}();t.SharedModule=b},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(22),a=n(5),s=n(7),d=n(14),c=n(9),p=n(11),u=n(23),l=n(8),h=n(18);n(24),n(25),n(26),n(27);var f=function(){function e(e,t,n,i,o,r){this.expandService=e,this.loadingService=t,this.indexBuilder=n,this.treeViewLookupService=i,this.navigationService=o,this.cd=r,this.kGroupClass=!0,this.textField="",this._data=[],this.isChecked=function(){return"none"},this.isDisabled=function(){return!1},this.isExpanded=function(){return!1},this.isSelected=function(){return!1},this.children=function(){return h.Observable.of([])},this.hasChildren=function(){return!1}}return Object.defineProperty(e.prototype,"role",{get:function(){return"group"},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"data",{get:function(){return this._data},set:function(e){this._data=e,this.updateParentChildren()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasTemplate",{get:function(){return p.isPresent(this.nodeTemplateRef)},enumerable:!0,configurable:!0}),e.prototype.expandNode=function(e,t,n){n?this.expandService.expand(e,t):this.expandService.collapse(e,t)},e.prototype.checkNode=function(e){this.navigationService.checkIndex(e),this.navigationService.activateIndex(e)},e.prototype.nodeIndex=function(e){return this.indexBuilder.nodeIndex(e.toString(),this.parentIndex)},e.prototype.nodeText=function(e){var t=p.isArray(this.textField)?this.textField[0]:this.textField;return u.getter(t,!0)(e)},e.prototype.ngOnDestroy=function(){this.subscription&&this.subscription.unsubscribe()},e.prototype.ngOnInit=function(){var e=this;this.subscription=this.nodes.subscribe(function(t){e.data=t,e.cd.markForCheck()})},e.prototype.ngOnChanges=function(e){e.parentIndex&&this.updateParentChildren()},e.prototype.fetchChildren=function(e,t){var n=this;return this.children(e).catch(function(){return n.loadingService.notifyLoaded(t),h.Observable.empty()}).do(function(){return n.loadingService.notifyLoaded(t)})},Object.defineProperty(e.prototype,"nextFields",{get:function(){return p.isArray(this.textField)?this.textField.length>1?this.textField.slice(1):this.textField:[this.textField]},enumerable:!0,configurable:!0}),e.prototype.updateParentChildren=function(){var e=this.parentIndex?this.mapToTreeItem(this.data):[];this.treeViewLookupService.registerChildren(this.parentIndex,e)},e.prototype.mapToTreeItem=function(e){var t=this;return e.map(function(e,n){return{dataItem:e,index:t.nodeIndex(n)}})},i.__decorate([o.HostBinding("class.k-group"),i.__metadata("design:type",Boolean)],e.prototype,"kGroupClass",void 0),i.__decorate([o.HostBinding("attr.role"),i.__metadata("design:type",String),i.__metadata("design:paramtypes",[])],e.prototype,"role",null),i.__decorate([o.Input(),i.__metadata("design:type",Boolean)],e.prototype,"checkboxes",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Boolean)],e.prototype,"expandIcons",void 0),i.__decorate([o.Input(),i.__metadata("design:type",h.Observable)],e.prototype,"nodes",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Object)],e.prototype,"textField",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Object)],e.prototype,"parentDataItem",void 0),i.__decorate([o.Input(),i.__metadata("design:type",String)],e.prototype,"parentIndex",void 0),i.__decorate([o.Input(),i.__metadata("design:type",o.TemplateRef)],e.prototype,"nodeTemplateRef",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Function)],e.prototype,"isChecked",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Function)],e.prototype,"isDisabled",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Function)],e.prototype,"isExpanded",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Function)],e.prototype,"isSelected",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Function)],e.prototype,"children",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Function)],e.prototype,"hasChildren",void 0),e=i.__decorate([o.Component({animations:[r.trigger("toggle",[r.transition("void => *",[r.style({height:0}),r.animate("0.1s ease-in",r.style({height:"*"}))]),r.transition("* => void",[r.style({height:"*"}),r.animate("0.1s ease-in",r.style({height:0}))])])],selector:"[kendoTreeViewGroup]",template:'\n <li\n *ngFor="let node of data; let index = index" class="k-item"\n kendoTreeViewItem\n [dataItem]="node"\n [index]="nodeIndex(index)"\n [parentDataItem]="parentDataItem"\n [parentIndex]="parentIndex"\n [isChecked]="isChecked(node, nodeIndex(index))"\n [isDisabled]="isDisabled(node, nodeIndex(index))"\n [isExpanded]="isExpanded(node, nodeIndex(index))"\n [isSelected]="isSelected(node, nodeIndex(index))"\n [attr.data-treeindex]="nodeIndex(index)"\n >\n <div class="k-mid">\n <span\n class="k-icon"\n [class.k-i-collapse]="isExpanded(node, nodeIndex(index))"\n [class.k-i-expand]="!isExpanded(node, nodeIndex(index))"\n [kendoTreeViewLoading]="nodeIndex(index)"\n (click)="expandNode(nodeIndex(index), node, !isExpanded(node, nodeIndex(index)))"\n *ngIf="expandIcons && hasChildren(node)"\n >\n </span>\n <kendo-checkbox\n *ngIf="checkboxes"\n [checkState]="isChecked(node, nodeIndex(index))"\n (checkStateChange)="checkNode(nodeIndex(index))"\n tabindex="-1"\n ></kendo-checkbox>\n <span kendoTreeViewItemContent\n [attr.data-treeindex]="nodeIndex(index)"\n [dataItem]="node"\n [index]="nodeIndex(index)"\n [isSelected]="isSelected"\n class="k-in"\n >\n <ng-container [ngSwitch]="hasTemplate">\n <ng-container *ngSwitchCase="true">\n <ng-template\n [ngTemplateOutlet]="nodeTemplateRef" [ngTemplateOutletContext]="{$implicit: node, index: nodeIndex(index)}"\n >\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchDefault>\n {{nodeText(node)}}\n </ng-container>\n </ng-container>\n </span>\n </div>\n <ul\n *ngIf="isExpanded(node, nodeIndex(index)) && hasChildren(node)"\n kendoTreeViewGroup\n role="group"\n [nodes]="fetchChildren(node, nodeIndex(index))"\n [checkboxes]="checkboxes"\n [expandIcons]="expandIcons"\n [children]="children"\n [hasChildren]="hasChildren"\n [isChecked]="isChecked"\n [isDisabled]="isDisabled"\n [isExpanded]="isExpanded"\n [isSelected]="isSelected"\n [nodeTemplateRef]="nodeTemplateRef"\n [parentIndex]="nodeIndex(index)"\n [parentDataItem]="node"\n [textField]="nextFields"\n [@toggle]="true"\n >\n </ul>\n </li>\n '}),i.__metadata("design:paramtypes",[a.ExpandStateService,l.LoadingNotificationService,s.IndexBuilderService,d.TreeViewLookupService,c.NavigationService,o.ChangeDetectorRef])],e)}();t.TreeViewGroupComponent=f},function(e,t){e.exports=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(11),o=/\[(?:(\d+)|['"](.*?)['"])\]|((?:(?!\[.*?\]|\.).)+)/g,r={};r[void 0]=function(e){return e},t.getter=function(e,t){var n=e+t;if(r[n])return r[n];var a=[];return e.replace(o,function(e,t,n,o){a.push(i.isPresent(t)?t:n||o)}),r[n]=function(e){for(var n=e,o=0;o<a.length;o++)if(n=n[a[o]],!i.isPresent(n)&&t)return n;return n},r[n]}},function(e,t){e.exports=u},function(e,t){e.exports=h},function(e,t){e.exports=d},function(e,t){e.exports=f},function(e,t){e.exports=p},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(1),a=n(11),s=n(16);n(30),n(31);var d=function(){function e(e){var t=this;this.treeView=e,this.checkedKeys=[],this.checkedKeysChange=new o.EventEmitter,this.subscriptions=new s.Subscription(function(){}),this.checkActions={multiple:function(e){return t.checkMultiple(e)},single:function(e){return t.checkSingle(e)}}}return Object.defineProperty(e.prototype,"isChecked",{set:function(e){this.treeView.isChecked=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"options",{get:function(){var e={checkChildren:!0,checkParents:!0,enabled:!0,mode:"multiple"};if(!a.isPresent(this.checkable))return e;var t="boolean"==typeof this.checkable?{enabled:this.checkable}:this.checkable;return Object.assign(e,t)},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.subscriptions.add(this.treeView.checkedChange.subscribe(function(t){return e.check(t)})),this.treeView.checkboxes=!0,this.treeView.isChecked=this.isItemChecked.bind(this)},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.isItemChecked=function(e,t){if(!this.checkKey)return this.isIndexChecked(t);return this.checkedKeys.indexOf(this.itemKey({dataItem:e,index:t}))>-1?"checked":"none"},e.prototype.isIndexChecked=function(e){var t=this.checkedKeys.filter(function(t){return 0===t.indexOf(e)});if(n=e,t.filter(function(e){return e===n}).length>0)return"checked";var n,i=this.options,o=i.mode,r=i.checkParents;return"multiple"===o&&r&&t.length?"indeterminate":"none"},e.prototype.itemKey=function(e){return this.checkKey?"string"==typeof this.checkKey?e.dataItem[this.checkKey]:"function"==typeof this.checkKey?this.checkKey(e):void 0:e.index},e.prototype.check=function(e){var t=this.options,n=t.enabled,i=t.mode,o=this.checkActions[i]||a.noop;n&&o(e)},e.prototype.checkSingle=function(e){var t=this.itemKey(e.item);this.checkedKeys=this.checkedKeys[0]!==t?[t]:[],this.notify()},e.prototype.checkMultiple=function(e){this.checkNode(e),this.options.checkParents&&this.checkParents(e.parent),this.notify()},e.prototype.checkNode=function(e,t){var n=this,i=this.itemKey(e.item),o=this.checkedKeys.indexOf(i),r=o>-1,s=void 0===t?!r:t;!a.isPresent(i)||r&&t||(r?this.checkedKeys.splice(o,1):this.checkedKeys.push(i),this.options.checkChildren&&e.children.map(function(e){return n.checkNode(e,s)}))},e.prototype.checkParents=function(e){for(var t=e;t;){var n=this.itemKey(t.item),i=this.checkedKeys.indexOf(n);this.allChildrenSelected(t.children)?-1===i&&this.checkedKeys.push(n):i>-1&&this.checkedKeys.splice(i,1),t=t.parent}},e.prototype.allChildrenSelected=function(e){var t=this;return e.reduce(function(e,n){return e&&"checked"===t.isItemChecked(n.dataItem,n.index)},!0)},e.prototype.notify=function(){this.checkedKeysChange.emit(this.checkedKeys.slice())},i.__decorate([o.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isChecked",null),i.__decorate([o.Input("checkBy"),i.__metadata("design:type",Object)],e.prototype,"checkKey",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Array)],e.prototype,"checkedKeys",void 0),i.__decorate([o.Input("kendoTreeViewCheckable"),i.__metadata("design:type",Object)],e.prototype,"checkable",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],e.prototype,"checkedKeysChange",void 0),e=i.__decorate([o.Directive({selector:"[kendoTreeViewCheckable]"}),i.__metadata("design:paramtypes",[r.TreeViewComponent])],e)}();t.CheckDirective=d},function(e,t){e.exports=a},function(e,t){e.exports=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(1),a=function(){function e(e,t){this.treeView=e,this.cdr=t,this.disabledKeys=[]}return Object.defineProperty(e.prototype,"isDisabled",{set:function(e){this.treeView.isDisabled=e},enumerable:!0,configurable:!0}),e.prototype.ngOnChanges=function(e){void 0===e&&(e={});var t=e.disabledKeys;t&&!t.firstChange&&this.detectChanges()},e.prototype.ngOnInit=function(){var e=this;this.treeView.isDisabled=function(t,n){return e.disabledKeys.indexOf(e.itemKey({dataItem:t,index:n}))>-1}},e.prototype.itemKey=function(e){return this.disableKey?"string"==typeof this.disableKey?e.dataItem[this.disableKey]:"function"==typeof this.disableKey?this.disableKey(e):void 0:e.index},e.prototype.detectChanges=function(){this.cdr.markForCheck()},i.__decorate([o.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isDisabled",null),i.__decorate([o.Input("kendoTreeViewDisable"),i.__metadata("design:type",Object)],e.prototype,"disableKey",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Array)],e.prototype,"disabledKeys",void 0),e=i.__decorate([o.Directive({selector:"[kendoTreeViewDisable]"}),i.__metadata("design:paramtypes",[r.TreeViewComponent,o.ChangeDetectorRef])],e)}();t.DisableDirective=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(1),a=n(16),s=n(18);n(30),n(31);var d=function(){function e(e){this.treeView=e,this.expandedKeysChange=new o.EventEmitter,this.expandedKeys=[],this.subscriptions=new a.Subscription(function(){})}return Object.defineProperty(e.prototype,"isExpanded",{set:function(e){this.treeView.isExpanded=e},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.subscriptions.add(s.Observable.merge(this.treeView.expand.map(function(e){return i.__assign({expand:!0},e)}),this.treeView.collapse.map(function(e){return i.__assign({expand:!1},e)})).subscribe(this.toggleExpand.bind(this))),this.treeView.expandIcons=!0,this.treeView.isExpanded=function(t,n){return e.expandedKeys.indexOf(e.itemKey({dataItem:t,index:n}))>-1}},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.itemKey=function(e){if(this.expandKey){if("string"==typeof this.expandKey)return e.dataItem[this.expandKey];if("function"==typeof this.expandKey)return this.expandKey(e)}return e.index},e.prototype.toggleExpand=function(e){var t=e.index,n=e.dataItem,i=e.expand,o=this.itemKey({index:t,dataItem:n}),r=this.expandedKeys.indexOf(o),a=!1;r>-1&&!i?(this.expandedKeys.splice(r,1),a=!0):-1===r&&i&&(this.expandedKeys.push(o),a=!0),a&&this.expandedKeysChange.emit(this.expandedKeys)},i.__decorate([o.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isExpanded",null),i.__decorate([o.Input("expandBy"),i.__metadata("design:type",Object)],e.prototype,"expandKey",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],e.prototype,"expandedKeysChange",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Array)],e.prototype,"expandedKeys",void 0),e=i.__decorate([o.Directive({selector:"[kendoTreeViewExpandable]"}),i.__metadata("design:paramtypes",[r.TreeViewComponent])],e)}();t.ExpandDirective=d},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(1),a=n(11),s=n(16);n(30),n(31);var d=function(){function e(e){var t=this;this.treeView=e,this.selectedKeys=[],this.selectedKeysChange=new o.EventEmitter,this.subscriptions=new s.Subscription(function(){}),this.selectActions={multiple:function(e){return t.selectMultiple(e)},single:function(e){return t.selectSingle(e)}}}return Object.defineProperty(e.prototype,"isSelected",{set:function(e){this.treeView.isSelected=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"getAriaMultiselectable",{get:function(){return"multiple"===this.options.mode},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"options",{get:function(){var e={enabled:!0,mode:"single"};if(!a.isPresent(this.selection))return e;var t="boolean"==typeof this.selection?{enabled:this.selection}:this.selection;return Object.assign(e,t)},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.subscriptions.add(this.treeView.selectionChange.subscribe(this.select.bind(this))),this.treeView.isSelected=function(t,n){return e.selectedKeys.indexOf(e.itemKey({dataItem:t,index:n}))>-1}},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.itemKey=function(e){return this.selectKey?"string"==typeof this.selectKey?e.dataItem[this.selectKey]:"function"==typeof this.selectKey?this.selectKey(e):void 0:e.index},e.prototype.select=function(e){var t=this.options,n=t.enabled,i=t.mode,o=this.selectActions[i]||a.noop;n&&o(e)},e.prototype.selectSingle=function(e){var t=this.itemKey(e);this.selectedKeys[0]!==t&&(this.selectedKeys=[t],this.notify())},e.prototype.selectMultiple=function(e){var t=this.itemKey(e),n=this.selectedKeys.indexOf(t),i=n>-1;a.isPresent(t)&&(i?this.selectedKeys.splice(n,1):this.selectedKeys.push(t),this.notify())},e.prototype.notify=function(){this.selectedKeysChange.emit(this.selectedKeys.slice())},i.__decorate([o.Input(),i.__metadata("design:type",Function),i.__metadata("design:paramtypes",[Function])],e.prototype,"isSelected",null),i.__decorate([o.Input("selectBy"),i.__metadata("design:type",Object)],e.prototype,"selectKey",void 0),i.__decorate([o.Input("kendoTreeViewSelectable"),i.__metadata("design:type",Object)],e.prototype,"selection",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Array)],e.prototype,"selectedKeys",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],e.prototype,"selectedKeysChange",void 0),i.__decorate([o.HostBinding("attr.aria-multiselectable"),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[])],e.prototype,"getAriaMultiselectable",null),e=i.__decorate([o.Directive({selector:"[kendoTreeViewSelectable]"}),i.__metadata("design:paramtypes",[r.TreeViewComponent])],e)}();t.SelectDirective=d},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(1),a=n(23),s=n(11),d=n(15),c=n(18);n(26);var p=function(){function e(e){this.treeView=e}return Object.defineProperty(e.prototype,"childrenField",{get:function(){return this._childrenField},set:function(e){if(!e)throw new Error("'childrenField' cannot be empty");this._childrenField=e},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;s.isPresent(this.childrenField)&&(this.treeView.children=function(t){return c.Observable.of(a.getter(e.childrenField,!0)(t))},this.treeView.hasChildren=function(t){return e.childrenField in t},this.treeView.isExpanded!==d.isExpanded&&(this.treeView.expandIcons=!0))},i.__decorate([o.Input(),i.__metadata("design:type",String),i.__metadata("design:paramtypes",[String])],e.prototype,"childrenField",null),e=i.__decorate([o.Directive({selector:"[kendoTreeViewHierarchyBinding]"}),i.__metadata("design:paramtypes",[r.TreeViewComponent])],e)}();t.HierarchyBindingDirective=p},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(5),a=n(8),s=n(18);n(37),n(38),n(39),n(40),n(26);var d=function(){function e(e,t,n){this.expandService=e,this.loadingService=t,this.cd=n,this._loading=!1}return Object.defineProperty(e.prototype,"loading",{get:function(){return this._loading},set:function(e){this._loading=e,this.cd.markForCheck()},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this,t=this.loadingService.changes.filter(function(t){return t===e.index});this.subscription=this.expandService.changes.filter(function(t){return t.index===e.index}).do(function(t){!t.expand&&e.loading&&(e.loading=!1)}).filter(function(e){return e.expand}).switchMap(function(e){return s.Observable.of(e).delay(100).takeUntil(t)}).subscribe(function(){return e.loading=!0}),this.subscription.add(t.subscribe(function(){return e.loading=!1}))},e.prototype.ngOnDestroy=function(){this.subscription&&this.subscription.unsubscribe()},i.__decorate([o.HostBinding("class.k-i-loading"),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[Boolean])],e.prototype,"loading",null),i.__decorate([o.Input("kendoTreeViewLoading"),i.__metadata("design:type",String)],e.prototype,"index",void 0),e=i.__decorate([o.Directive({selector:"[kendoTreeViewLoading]"}),i.__metadata("design:paramtypes",[r.ExpandStateService,a.LoadingNotificationService,o.ChangeDetectorRef])],e)}();t.LoadingIndicatorDirective=d},function(e,t){e.exports=v},function(e,t){e.exports=y},function(e,t){e.exports=m},function(e,t){e.exports=_},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(1),a=n(23),s=n(11),d=n(42),c=n(18),p=function(){function e(e){this.treeView=e,this.originalData=[]}return Object.defineProperty(e.prototype,"nodes",{set:function(e){if(this.originalData=e||[],s.isNullOrEmptyString(this.parentIdField))this.treeView.nodes=this.originalData.slice(0);else{var t=a.getter(this.parentIdField,!0);this.treeView.nodes=this.originalData.filter(d.compose(s.isBlank,t))}},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;if(s.isPresent(this.parentIdField)&&s.isPresent(this.idField)){var t=function(t){return n=a.getter(e.parentIdField,!0),i=e.originalData||[],o=a.getter(e.idField,!0)(t),i.filter(function(e){return n(e)===o});var n,i,o};this.treeView.hasChildren=function(e){return t(e).length>0},this.treeView.children=function(e){return c.Observable.of(t(e))}}},e.prototype.ngOnChanges=function(e){s.isChanged("parentIdField",e,!1)&&(this.nodes=this.originalData)},i.__decorate([o.Input(),i.__metadata("design:type",Array),i.__metadata("design:paramtypes",[Array])],e.prototype,"nodes",null),i.__decorate([o.Input(),i.__metadata("design:type",String)],e.prototype,"parentIdField",void 0),i.__decorate([o.Input(),i.__metadata("design:type",String)],e.prototype,"idField",void 0),e=i.__decorate([o.Directive({selector:"[kendoTreeViewFlatDataBinding]"}),i.__metadata("design:paramtypes",[r.TreeViewComponent])],e)}();t.FlatDataBindingDirective=p},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.compose=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(t){return e.reduceRight(function(e,t){return t(e)},t)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(9),a=n(13),s=n(5),d=n(7),c=n(14),p=n(11);n(37);var u=function(e,t){return{dataItem:t,index:e}},l=function(){function e(e,t,n,i,o,r,a){this.element=e,this.expandService=t,this.navigationService=n,this.selectionService=i,this.lookupService=o,this.renderer=r,this.ib=a,this.isDisabled=!1,this.ariaChecked="false",this.isInitialized=!1,this.subscriptions=[],this.subscribe()}return Object.defineProperty(e.prototype,"isChecked",{set:function(e){this.ariaChecked="checked"===e?"true":"indeterminate"===e?"mixed":"false"},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isExpanded",{get:function(){return this._isExpanded||!1},set:function(e){this._isExpanded=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isSelected",{get:function(){return this._isSelected||!1},set:function(e){this._isSelected=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"treeItem",{get:function(){return u(this.index,this.dataItem)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"parentTreeItem",{get:function(){return this.parentDataItem?u(this.parentIndex,this.parentDataItem):null},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){this.lookupService.registerItem(this.treeItem,this.parentTreeItem),this.registerNavigationItem(),this.isInitialized=!0,this.setAttribute("role","treeitem"),this.setAriaAttributes(),this.setDisabledClass(),this.updateTabIndex()},e.prototype.ngOnChanges=function(e){var t=e.index,n=e.isDisabled;(t||e.isChecked||e.isExpanded||e.isSelected)&&this.setAriaAttributes(),n&&this.setDisabledClass(),this.moveLookupItem(e),this.moveNavigationItem(t),this.disableNavigationItem(n)},e.prototype.ngOnDestroy=function(){this.navigationService.unregisterItem(this.index),this.subscriptions.map(function(e){return e.unsubscribe()}),this.subscriptions=[]},e.prototype.subscribe=function(){var e=this;this.subscriptions=[this.navigationService.moves.subscribe(function(){e.updateTabIndex(),e.focusItem()}),this.navigationService.expands.filter(function(t){return t.index===e.index&&!e.isDisabled}).subscribe(function(t){var n=t.expand;return e.expand(n)})]},e.prototype.registerNavigationItem=function(){this.isDisabled||(this.navigationService.registerItem(this.index),this.activateItem())},e.prototype.activateItem=function(){var e=this.navigationService,t=this.selectionService,n=this.index;t.setFirstSelected(n,this.isSelected),!e.isActive(n)&&t.isFirstSelected(n)&&e.activateIndex(n)},e.prototype.expand=function(e){this.expandService[e?"expand":"collapse"](this.index,this.dataItem)},e.prototype.isFocusable=function(){return!this.isDisabled&&this.navigationService.isFocusable(this.index)},e.prototype.focusItem=function(){this.isInitialized&&!this.isDisabled&&this.navigationService.isActive(this.index)&&this.element.nativeElement.focus()},e.prototype.moveLookupItem=function(e){void 0===e&&(e={});var t=e.dataItem,n=e.index,i=e.parentDataItem,o=e.parentIndex;if((!n||!n.firstChange||this.lookupService.hasItem(this.index))&&(t||n||i||o)){var r=(n||{}).previousValue||this.index;this.lookupService.replaceItem(r,this.treeItem,this.parentTreeItem)}},e.prototype.moveNavigationItem=function(e){void 0===e&&(e={});var t=e.currentValue,n=e.firstChange,i=e.previousValue;!n&&p.isPresent(t)&&p.isPresent(i)&&(this.navigationService.unregisterItem(i),this.navigationService.registerItem(t))},e.prototype.disableNavigationItem=function(e){if(e&&!e.firstChange){var t=this.navigationService;this.isDisabled?(t.activateClosest(this.index),t.unregisterItem(this.index)):(t.registerItem(this.index),t.activateFocusable())}},e.prototype.setAriaAttributes=function(){this.setAttribute("aria-level",this.ib.level(this.index).toString()),this.setAttribute("aria-expanded",this.isExpanded.toString()),this.setAttribute("aria-selected",this.isSelected.toString()),this.setAttribute("aria-checked",this.ariaChecked)},e.prototype.setDisabledClass=function(){this.setClass("k-state-disabled",this.isDisabled)},e.prototype.setClass=function(e,t){var n=t?"addClass":"removeClass";this.renderer[n](this.element.nativeElement,e)},e.prototype.updateTabIndex=function(){this.setAttribute("tabIndex",this.isFocusable()?"0":"-1")},e.prototype.setAttribute=function(e,t){this.renderer.setAttribute(this.element.nativeElement,e,t)},i.__decorate([o.Input(),i.__metadata("design:type",Object)],e.prototype,"dataItem",void 0),i.__decorate([o.Input(),i.__metadata("design:type",String)],e.prototype,"index",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Object)],e.prototype,"parentDataItem",void 0),i.__decorate([o.Input(),i.__metadata("design:type",String)],e.prototype,"parentIndex",void 0),i.__decorate([o.Input(),i.__metadata("design:type",String),i.__metadata("design:paramtypes",[String])],e.prototype,"isChecked",null),i.__decorate([o.Input(),i.__metadata("design:type",Boolean)],e.prototype,"isDisabled",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[Boolean])],e.prototype,"isExpanded",null),i.__decorate([o.Input(),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[Boolean])],e.prototype,"isSelected",null),e=i.__decorate([o.Directive({selector:"[kendoTreeViewItem]"}),i.__metadata("design:paramtypes",[o.ElementRef,s.ExpandStateService,r.NavigationService,a.SelectionService,c.TreeViewLookupService,o.Renderer2,d.IndexBuilderService])],e)}();t.TreeViewItemDirective=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(9),a=n(13),s=n(16);n(37),n(24);var d=function(){function e(e,t,n,i){var o=this;this.element=e,this.navigationService=t,this.selectionService=n,this.renderer=i,this.subscriptions=new s.Subscription(function(){}),this.subscriptions.add(this.navigationService.moves.subscribe(this.updateItem.bind(this))),this.subscriptions.add(this.navigationService.selects.filter(function(e){return e===o.index}).subscribe(function(e){return o.selectionService.select(e,o.dataItem)})),this.subscriptions.add(this.selectionService.changes.subscribe(this.updateSelection.bind(this)))}return e.prototype.ngOnInit=function(){this.updateSelection()},e.prototype.ngOnDestroy=function(){this.subscriptions.unsubscribe()},e.prototype.updateItem=function(){this.render(this.navigationService.isActive(this.index),"k-state-focused")},e.prototype.updateSelection=function(){this.render(this.isSelected(this.dataItem,this.index),"k-state-selected")},e.prototype.render=function(e,t){var n=e?"addClass":"removeClass";this.renderer[n](this.element.nativeElement,t)},i.__decorate([o.Input(),i.__metadata("design:type",Object)],e.prototype,"dataItem",void 0),i.__decorate([o.Input(),i.__metadata("design:type",String)],e.prototype,"index",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Function)],e.prototype,"isSelected",void 0),e=i.__decorate([o.Directive({selector:"[kendoTreeViewItemContent]"}),i.__metadata("design:paramtypes",[o.ElementRef,r.NavigationService,a.SelectionService,o.Renderer2])],e)}();t.TreeViewItemContentDirective=d},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=[n(46).CheckBoxComponent],a=function(){function e(){}return e=i.__decorate([o.NgModule({declarations:[r],exports:[r]})],e)}();t.CheckBoxModule=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=n(3),r=n(11),a=function(){function e(e,t){this.element=e,this.renderer=t,this.id="_"+r.guid(),this.checkState="none",this.tabindex=0,this.checkStateChange=new o.EventEmitter}return Object.defineProperty(e.prototype,"classWrapper",{get:function(){return!0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"indeterminate",{get:function(){return"indeterminate"===this.checkState},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"checked",{get:function(){return"checked"===this.checkState},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){this.renderer.removeAttribute(this.element.nativeElement,"tabindex")},e.prototype.handleChange=function(e){this.checkStateChange.emit(e.target.checked?"checked":"none")},i.__decorate([o.HostBinding("class.k-checkbox-wrapper"),i.__metadata("design:type",Boolean),i.__metadata("design:paramtypes",[])],e.prototype,"classWrapper",null),i.__decorate([o.Input(),i.__metadata("design:type",String)],e.prototype,"id",void 0),i.__decorate([o.Input(),i.__metadata("design:type",String)],e.prototype,"checkState",void 0),i.__decorate([o.Input(),i.__metadata("design:type",String)],e.prototype,"labelText",void 0),i.__decorate([o.Input(),i.__metadata("design:type",Number)],e.prototype,"tabindex",void 0),i.__decorate([o.Output(),i.__metadata("design:type",o.EventEmitter)],e.prototype,"checkStateChange",void 0),e=i.__decorate([o.Component({selector:"kendo-checkbox",template:'\n <input\n class="k-checkbox"\n type="checkbox"\n [id]="id"\n [checked]="checked"\n [indeterminate]="indeterminate"\n [tabindex]="tabindex"\n (change)="handleChange($event)"\n />\n <label\n class="k-checkbox-label"\n tabindex="-1"\n [for]="id"\n >{{labelText}}</label>\n '}),i.__metadata("design:paramtypes",[o.ElementRef,o.Renderer2])],e)}();t.CheckBoxComponent=a}])}}});

@@ -6,3 +6,3 @@ {

"license": "SEE LICENSE IN LICENSE.md",
"version": "0.2.0-dev.201801031208",
"version": "0.2.0-dev.201801051556",
"main": "dist/npm/main.js",

@@ -9,0 +9,0 @@ "module": "dist/es/main.js",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc