Huge News!Announcing our $40M Series B led by Abstract Ventures.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 4.1.0 to 4.1.1-dev.202002201511

75

dist/es/drag-and-drop/drag-and-drop-utils.js

@@ -5,7 +5,56 @@ /**-----------------------------------------------------------------------------------------

*-------------------------------------------------------------------------------------------*/
import { isPresent, closestNode, closestWithMatch, hasParent, elementCoords, isContent, nodeId } from '../utils';
import { isDocumentAvailable } from '@progress/kendo-angular-common';
import { isPresent, closestNode, closestWithMatch, hasParent, isContent, nodeId } from '../utils';
import { DropPosition, DropAction } from './models';
/**
* Checks if the browser supports relative stacking context.
* https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Positioning/Understanding_z_index/The_stacking_context
*/
var hasRelativeStackingContext = function () {
if (!isDocumentAvailable()) {
return false;
}
var top = 10;
var parent = document.createElement("div");
parent.style.transform = "matrix(10, 0, 0, 10, 0, 0)";
parent.innerHTML = "<div style=\"position: fixed; top: " + top + "px;\">child</div>";
document.body.appendChild(parent);
var isDifferent = parent.children[0].getBoundingClientRect().top !== top;
document.body.removeChild(parent);
return isDifferent;
};
var ɵ0 = hasRelativeStackingContext;
var HAS_RELATIVE_STACKING_CONTEXT = hasRelativeStackingContext();
/**
* @hidden
*
* Gets the offset of the parent element if the latter has the `transform` CSS prop applied.
* Transformed parents create new stacking context and the `fixed` children must be position based on the transformed parent.
* https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Positioning/Understanding_z_index/The_stacking_context
*
* If no parent container is `transform`-ed the function will return `{ left: 0, top: 0 }`;
*/
export var getContainerOffset = function (element) {
if (!(element && HAS_RELATIVE_STACKING_CONTEXT)) {
return { left: 0, top: 0 };
}
var offsetParent = element.parentElement;
while (offsetParent) {
if (window.getComputedStyle(offsetParent).transform !== 'none') {
break;
}
offsetParent = offsetParent.parentElement;
}
if (offsetParent) {
var rect = offsetParent.getBoundingClientRect();
return {
left: rect.left - offsetParent.scrollLeft,
top: rect.top - offsetParent.scrollTop
};
}
return { left: 0, top: 0 };
};
/**
* @hidden
*/
export var getDropAction = function (dropPosition, dropTarget) {

@@ -29,4 +78,4 @@ if (!(isPresent(dropPosition) && isPresent(dropTarget))) {

*/
export var getDropPosition = function (draggedItem, target, pageY, targetTreeView) {
if (!(isPresent(target) && targetTreeView)) {
export var getDropPosition = function (draggedItem, target, clientY, targetTreeView, containerOffset) {
if (!(isPresent(draggedItem) && isPresent(target) && isPresent(targetTreeView) && isPresent(containerOffset))) {
return;

@@ -45,17 +94,20 @@ }

}
var itemCoords = elementCoords(content);
var itemViewPortCoords = content.getBoundingClientRect();
/*
if the user is hovering a treeview item, split the item height into four parts:
dropping into the top quarter should insert the dragged item before the drop target
dropping into the bottom quarter should insert the dragged item after the drop target
dropping into the second or third quarter should add the item as child node of the drop target
- dropping into the top quarter should insert the dragged item before the drop target
- dropping into the bottom quarter should insert the dragged item after the drop target
- dropping into the second or third quarter should add the item as child node of the drop target
if the user is NOT hovering a treeview item (he's dragging somewhere in the right), split the item height to just parts:
dropping should insert before or after
- dropping should insert before or after
*/
var itemDivisionHeight = itemCoords.height / (isContent(target) ? 4 : 2);
if (pageY < itemCoords.top + itemDivisionHeight) {
var itemDivisionHeight = itemViewPortCoords.height / (isContent(target) ? 4 : 2);
// clear any possible container offset created by parent elements with `transform` css property set
var pointerPosition = clientY - containerOffset.top;
var itemTop = itemViewPortCoords.top - containerOffset.top;
if (pointerPosition < itemTop + itemDivisionHeight) {
return DropPosition.Before;
}
if (pageY >= itemCoords.top + itemCoords.height - itemDivisionHeight) {
if (pointerPosition >= itemTop + itemViewPortCoords.height - itemDivisionHeight) {
return DropPosition.After;

@@ -96,1 +148,2 @@ }

};
export { ɵ0 };

37

dist/es/drag-and-drop/drag-and-drop.directive.js

@@ -12,4 +12,4 @@ /**-----------------------------------------------------------------------------------------

import { DropHintTemplateDirective } from './drop-hint/drop-hint-template.directive';
import { getDropAction, getDropPosition, treeItemFromEventTarget } from './drag-and-drop-utils';
import { closestWithMatch, isPresent, isContent, elementCoords } from '../utils';
import { getDropAction, getDropPosition, treeItemFromEventTarget, getContainerOffset } from './drag-and-drop-utils';
import { closestWithMatch, isPresent, isContent } from '../utils';
import { TreeViewComponent } from '../treeview.component';

@@ -51,2 +51,8 @@ import { TreeItemDropEvent, DropPosition, TreeItemDragStartEvent } from './models';

this.userSelectStyle = 'none';
/**
* Describes the offset of the parent element if the latter has the `transform` CSS prop applied.
* Transformed parents create new stacking context and the fixed children must be position based on the transformed parent.
* https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Positioning/Understanding_z_index/The_stacking_context
*/
this.containerOffset = { top: 0, left: 0 };
}

@@ -80,2 +86,3 @@ DragAndDropDirective.prototype.ngAfterContentInit = function () {

this.dragClueService.updateText(this.draggedItem.innerText);
this.containerOffset = getContainerOffset(this.draggedItem);
};

@@ -87,3 +94,3 @@ /**

var _this = this;
var originalEvent = _a.originalEvent, pageX = _a.pageX, pageY = _a.pageY;
var originalEvent = _a.originalEvent, clientX = _a.clientX, clientY = _a.clientY;
if (!isPresent(this.draggedItem)) {

@@ -96,9 +103,9 @@ return;

var targetTreeView = this.getTargetTreeView(originalEvent.target);
var dropPosition = getDropPosition(this.draggedItem, originalEvent.target, pageY, targetTreeView);
var clueAnchor = closestWithMatch(originalEvent.target, '.k-mid');
this.updateDropHintState(dropPosition, clueAnchor);
var dropPosition = getDropPosition(this.draggedItem, originalEvent.target, clientY, targetTreeView, this.containerOffset);
var dropHintAnchor = closestWithMatch(originalEvent.target, '.k-mid');
this.updateDropHintState(dropPosition, dropHintAnchor);
var dropAction = getDropAction(dropPosition, originalEvent.target);
var sourceItem = treeItemFromEventTarget(this.treeview, this.draggedItem);
var destinationItem = treeItemFromEventTarget(targetTreeView, originalEvent.target);
this.updateDragClueState(dropAction, pageX, pageY, sourceItem, destinationItem);
this.updateDragClueState(dropAction, clientX, clientY, sourceItem, destinationItem);
};

@@ -110,3 +117,3 @@ /**

var _this = this;
var originalEvent = _a.originalEvent, pageY = _a.pageY;
var originalEvent = _a.originalEvent, clientY = _a.clientY;
if (!isPresent(this.draggedItem)) {

@@ -117,3 +124,3 @@ return;

var destinationTree = this.getTargetTreeView(originalEvent.target);
var dropPosition = getDropPosition(this.draggedItem, originalEvent.target, pageY, this.getTargetTreeView(originalEvent.target));
var dropPosition = getDropPosition(this.draggedItem, originalEvent.target, clientY, this.getTargetTreeView(originalEvent.target), this.containerOffset);
var sourceItem = treeItemFromEventTarget(sourceTree, this.draggedItem);

@@ -138,11 +145,13 @@ var destinationItem = treeItemFromEventTarget(destinationTree, originalEvent.target);

}
var anchorCoords = elementCoords(dropHintAnchor);
var anchorViewPortCoords = dropHintAnchor.getBoundingClientRect();
var insertBefore = dropPosition === DropPosition.Before;
var top = insertBefore ? anchorCoords.top : (anchorCoords.top + anchorCoords.height);
this.dropHintService.move(anchorCoords.left, top);
var top = insertBefore ? anchorViewPortCoords.top : (anchorViewPortCoords.top + anchorViewPortCoords.height);
// clear any possible container offset created by parent elements with `transform` css property set
this.dropHintService.move(anchorViewPortCoords.left - this.containerOffset.left, top - this.containerOffset.top);
this.dropHintService.show();
};
DragAndDropDirective.prototype.updateDragClueState = function (dropAction, pageX, pageY, sourceItem, destinationItem) {
DragAndDropDirective.prototype.updateDragClueState = function (dropAction, clientX, clientY, sourceItem, destinationItem) {
// clear any possible container offset created by parent elements with `transform` css property set
this.dragClueService.move(clientX - this.containerOffset.left, clientY - this.containerOffset.top);
this.dragClueService.updateDragClueData(dropAction, sourceItem, destinationItem);
this.dragClueService.move(pageX, pageY);
this.dragClueService.show();

@@ -149,0 +158,0 @@ };

@@ -14,2 +14,3 @@ /**-----------------------------------------------------------------------------------------

this.hostClasses = true;
this.posistionStyle = 'fixed';
}

@@ -46,3 +47,4 @@ Object.defineProperty(DragClueComponent.prototype, "statusIconClass", {

DragClueComponent.propDecorators = {
hostClasses: [{ type: HostBinding, args: ['class.k-header',] }, { type: HostBinding, args: ['class.k-drag-clue',] }]
hostClasses: [{ type: HostBinding, args: ['class.k-header',] }, { type: HostBinding, args: ['class.k-drag-clue',] }],
posistionStyle: [{ type: HostBinding, args: ['style.position',] }]
};

@@ -49,0 +51,0 @@ return DragClueComponent;

@@ -6,15 +6,23 @@ /**-----------------------------------------------------------------------------------------

import * as tslib_1 from "tslib";
import { Injectable } from '@angular/core';
import { Injectable, ComponentFactoryResolver } from '@angular/core';
import { DragClueComponent } from './drag-clue.component';
import { isPresent } from '../../utils';
import { DragAndDropAssetService } from '../editing-services/drag-and-drop-asset.service';
var HINT_OFFSET = 10;
var RETURN_ANIMATION_DURATION = 200;
/**
* @hidden
*/
export var CLUE_OFFSET = 10;
/**
* @hidden
*/
export var RETURN_ANIMATION_DURATION = 200;
/**
* @hidden
*/
var DragClueService = /** @class */ (function (_super) {
tslib_1.__extends(DragClueService, _super);
function DragClueService() {
return _super !== null && _super.apply(this, arguments) || this;
function DragClueService(componentFactoryResolver) {
var _this = _super.call(this) || this;
_this.componentFactoryResolver = componentFactoryResolver;
return _this;
}

@@ -25,4 +33,4 @@ DragClueService.prototype.initialize = function (container, template) {

}
var hintComponentFactory = this.componetFactoryResolver.resolveComponentFactory(DragClueComponent);
this.componentRef = container.createComponent(hintComponentFactory);
var clueComponentFactory = this.componentFactoryResolver.resolveComponentFactory(DragClueComponent);
this.componentRef = container.createComponent(clueComponentFactory);
this.hide();

@@ -37,3 +45,3 @@ this.componentRef.instance.template = template;

DragClueService.prototype.move = function (left, top) {
_super.prototype.move.call(this, left, top, HINT_OFFSET);
_super.prototype.move.call(this, left, top, CLUE_OFFSET);
};

@@ -46,7 +54,7 @@ DragClueService.prototype.animateDragClueToElementPosition = function (target) {

}
var targetElementCoords = target.getBoundingClientRect();
var hintElementCoords = this.element.getBoundingClientRect();
var targetElementViewPortCoords = target.getBoundingClientRect();
var clueElementViewPortCoords = this.element.getBoundingClientRect();
this.returnAnimation = this.element.animate([
{ transform: 'translate(0, 0)' },
{ transform: "translate(" + (targetElementCoords.left - hintElementCoords.left) + "px, " + (targetElementCoords.top - hintElementCoords.top) + "px)" }
{ transform: "translate(" + (targetElementViewPortCoords.left - clueElementViewPortCoords.left) + "px, " + (targetElementViewPortCoords.top - clueElementViewPortCoords.top) + "px)" }
], RETURN_ANIMATION_DURATION);

@@ -81,4 +89,8 @@ this.returnAnimation.onfinish = function () { return _this.hide(); };

];
/** @nocollapse */
DragClueService.ctorParameters = function () { return [
{ type: ComponentFactoryResolver }
]; };
return DragClueService;
}(DragAndDropAssetService));
export { DragClueService };

@@ -12,7 +12,4 @@ /**-----------------------------------------------------------------------------------------

this.hostClass = true;
/** TODO: remove once added to the themes */
this.position = 'absolute';
this.zIndex = 2;
this.position = 'fixed';
this.pointerEvents = 'none';
/** ... */
}

@@ -29,3 +26,2 @@ DropHintComponent.decorators = [

position: [{ type: HostBinding, args: ['style.position',] }],
zIndex: [{ type: HostBinding, args: ['style.z-index',] }],
pointerEvents: [{ type: HostBinding, args: ['style.pointer-events',] }]

@@ -32,0 +28,0 @@ };

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

import * as tslib_1 from "tslib";
import { Injectable } from '@angular/core';
import { Injectable, ComponentFactoryResolver } from '@angular/core';
import { isPresent } from '../../utils';

@@ -16,4 +16,6 @@ import { DropHintComponent } from './drop-hint.component';

tslib_1.__extends(DropHintService, _super);
function DropHintService() {
return _super !== null && _super.apply(this, arguments) || this;
function DropHintService(componentFactoryResolver) {
var _this = _super.call(this) || this;
_this.componentFactoryResolver = componentFactoryResolver;
return _this;
}

@@ -24,3 +26,3 @@ DropHintService.prototype.initialize = function (container, template) {

}
var hintComponentFactory = this.componetFactoryResolver.resolveComponentFactory(DropHintComponent);
var hintComponentFactory = this.componentFactoryResolver.resolveComponentFactory(DropHintComponent);
this.componentRef = container.createComponent(hintComponentFactory);

@@ -34,4 +36,8 @@ this.hide();

];
/** @nocollapse */
DropHintService.ctorParameters = function () { return [
{ type: ComponentFactoryResolver }
]; };
return DropHintService;
}(DragAndDropAssetService));
export { DropHintService };

@@ -5,3 +5,2 @@ /**-----------------------------------------------------------------------------------------

*-------------------------------------------------------------------------------------------*/
import { ComponentFactoryResolver, Injectable } from '@angular/core';
import { isPresent } from '../../utils';

@@ -12,4 +11,3 @@ /**

var DragAndDropAssetService = /** @class */ (function () {
function DragAndDropAssetService(componetFactoryResolver) {
this.componetFactoryResolver = componetFactoryResolver;
function DragAndDropAssetService() {
}

@@ -52,14 +50,7 @@ Object.defineProperty(DragAndDropAssetService.prototype, "componentRef", {

if (offset === void 0) { offset = 0; }
this.element.style.left = left + offset + 'px';
this.element.style.top = top + offset + 'px';
this.element.style.left = left + offset + "px";
this.element.style.top = top + offset + "px";
};
DragAndDropAssetService.decorators = [
{ type: Injectable },
];
/** @nocollapse */
DragAndDropAssetService.ctorParameters = function () { return [
{ type: ComponentFactoryResolver }
]; };
return DragAndDropAssetService;
}());
export { DragAndDropAssetService };

@@ -134,18 +134,1 @@ /**-----------------------------------------------------------------------------------------

export var nodeIndex = function (item) { return (item || {}).index; };
/**
* @hidden
*
* Retrieves the left, top, width and height of the element, relative to the document left and top.
*/
export var elementCoords = function (element) {
if (!isPresent(element) || typeof window === 'undefined') {
return;
}
var viewPortCoords = element.getBoundingClientRect();
return {
left: viewPortCoords.left + window.pageXOffset,
top: viewPortCoords.top + window.pageYOffset,
width: viewPortCoords.width,
height: viewPortCoords.height
};
};

@@ -10,3 +10,16 @@ /**-----------------------------------------------------------------------------------------

* @hidden
*
* Gets the offset of the parent element if the latter has the `transform` CSS prop applied.
* Transformed parents create new stacking context and the `fixed` children must be position based on the transformed parent.
* https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Positioning/Understanding_z_index/The_stacking_context
*
* If no parent container is `transform`-ed the function will return `{ left: 0, top: 0 }`;
*/
export declare const getContainerOffset: (element: HTMLElement) => {
top: number;
left: number;
};
/**
* @hidden
*/
export declare const getDropAction: (dropPosition: DropPosition, dropTarget: HTMLElement) => DropAction;

@@ -16,3 +29,6 @@ /**

*/
export declare const getDropPosition: (draggedItem: HTMLElement, target: HTMLElement, pageY: number, targetTreeView: any) => DropPosition;
export declare const getDropPosition: (draggedItem: HTMLElement, target: HTMLElement, clientY: number, targetTreeView: any, containerOffset: {
top: number;
left: number;
}) => DropPosition;
/**

@@ -19,0 +35,0 @@ * @hidden

@@ -5,7 +5,56 @@ /**-----------------------------------------------------------------------------------------

*-------------------------------------------------------------------------------------------*/
import { isPresent, closestNode, closestWithMatch, hasParent, elementCoords, isContent, nodeId } from '../utils';
import { isDocumentAvailable } from '@progress/kendo-angular-common';
import { isPresent, closestNode, closestWithMatch, hasParent, isContent, nodeId } from '../utils';
import { DropPosition, DropAction } from './models';
/**
* Checks if the browser supports relative stacking context.
* https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Positioning/Understanding_z_index/The_stacking_context
*/
const hasRelativeStackingContext = () => {
if (!isDocumentAvailable()) {
return false;
}
const top = 10;
const parent = document.createElement("div");
parent.style.transform = "matrix(10, 0, 0, 10, 0, 0)";
parent.innerHTML = `<div style="position: fixed; top: ${top}px;">child</div>`;
document.body.appendChild(parent);
const isDifferent = parent.children[0].getBoundingClientRect().top !== top;
document.body.removeChild(parent);
return isDifferent;
};
const ɵ0 = hasRelativeStackingContext;
const HAS_RELATIVE_STACKING_CONTEXT = hasRelativeStackingContext();
/**
* @hidden
*
* Gets the offset of the parent element if the latter has the `transform` CSS prop applied.
* Transformed parents create new stacking context and the `fixed` children must be position based on the transformed parent.
* https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Positioning/Understanding_z_index/The_stacking_context
*
* If no parent container is `transform`-ed the function will return `{ left: 0, top: 0 }`;
*/
export const getContainerOffset = (element) => {
if (!(element && HAS_RELATIVE_STACKING_CONTEXT)) {
return { left: 0, top: 0 };
}
let offsetParent = element.parentElement;
while (offsetParent) {
if (window.getComputedStyle(offsetParent).transform !== 'none') {
break;
}
offsetParent = offsetParent.parentElement;
}
if (offsetParent) {
const rect = offsetParent.getBoundingClientRect();
return {
left: rect.left - offsetParent.scrollLeft,
top: rect.top - offsetParent.scrollTop
};
}
return { left: 0, top: 0 };
};
/**
* @hidden
*/
export const getDropAction = (dropPosition, dropTarget) => {

@@ -29,4 +78,4 @@ if (!(isPresent(dropPosition) && isPresent(dropTarget))) {

*/
export const getDropPosition = (draggedItem, target, pageY, targetTreeView) => {
if (!(isPresent(target) && targetTreeView)) {
export const getDropPosition = (draggedItem, target, clientY, targetTreeView, containerOffset) => {
if (!(isPresent(draggedItem) && isPresent(target) && isPresent(targetTreeView) && isPresent(containerOffset))) {
return;

@@ -45,17 +94,20 @@ }

}
const itemCoords = elementCoords(content);
const itemViewPortCoords = content.getBoundingClientRect();
/*
if the user is hovering a treeview item, split the item height into four parts:
dropping into the top quarter should insert the dragged item before the drop target
dropping into the bottom quarter should insert the dragged item after the drop target
dropping into the second or third quarter should add the item as child node of the drop target
- dropping into the top quarter should insert the dragged item before the drop target
- dropping into the bottom quarter should insert the dragged item after the drop target
- dropping into the second or third quarter should add the item as child node of the drop target
if the user is NOT hovering a treeview item (he's dragging somewhere in the right), split the item height to just parts:
dropping should insert before or after
- dropping should insert before or after
*/
const itemDivisionHeight = itemCoords.height / (isContent(target) ? 4 : 2);
if (pageY < itemCoords.top + itemDivisionHeight) {
const itemDivisionHeight = itemViewPortCoords.height / (isContent(target) ? 4 : 2);
// clear any possible container offset created by parent elements with `transform` css property set
const pointerPosition = clientY - containerOffset.top;
const itemTop = itemViewPortCoords.top - containerOffset.top;
if (pointerPosition < itemTop + itemDivisionHeight) {
return DropPosition.Before;
}
if (pageY >= itemCoords.top + itemCoords.height - itemDivisionHeight) {
if (pointerPosition >= itemTop + itemViewPortCoords.height - itemDivisionHeight) {
return DropPosition.After;

@@ -96,1 +148,2 @@ }

};
export { ɵ0 };

@@ -55,2 +55,8 @@ /**-----------------------------------------------------------------------------------------

protected draggedItem: HTMLElement;
/**
* Describes the offset of the parent element if the latter has the `transform` CSS prop applied.
* Transformed parents create new stacking context and the fixed children must be position based on the transformed parent.
* https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Positioning/Understanding_z_index/The_stacking_context
*/
private containerOffset;
constructor(element: ElementRef<HTMLElement>, zone: NgZone, treeview: TreeViewComponent, dragClueService: DragClueService, dropHintService: DropHintService);

@@ -66,7 +72,7 @@ ngAfterContentInit(): void;

*/
handleDrag({ originalEvent, pageX, pageY }: any): void;
handleDrag({ originalEvent, clientX, clientY }: any): void;
/**
* @hidden
*/
handleRelease({ originalEvent, pageY }: any): void;
handleRelease({ originalEvent, clientY }: any): void;
private updateDropHintState;

@@ -73,0 +79,0 @@ private updateDragClueState;

@@ -12,4 +12,4 @@ /**-----------------------------------------------------------------------------------------

import { DropHintTemplateDirective } from './drop-hint/drop-hint-template.directive';
import { getDropAction, getDropPosition, treeItemFromEventTarget } from './drag-and-drop-utils';
import { closestWithMatch, isPresent, isContent, elementCoords } from '../utils';
import { getDropAction, getDropPosition, treeItemFromEventTarget, getContainerOffset } from './drag-and-drop-utils';
import { closestWithMatch, isPresent, isContent } from '../utils';
import { TreeViewComponent } from '../treeview.component';

@@ -51,2 +51,8 @@ import { TreeItemDropEvent, DropPosition, TreeItemDragStartEvent } from './models';

this.userSelectStyle = 'none';
/**
* Describes the offset of the parent element if the latter has the `transform` CSS prop applied.
* Transformed parents create new stacking context and the fixed children must be position based on the transformed parent.
* https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Positioning/Understanding_z_index/The_stacking_context
*/
this.containerOffset = { top: 0, left: 0 };
}

@@ -78,2 +84,3 @@ ngAfterContentInit() {

this.dragClueService.updateText(this.draggedItem.innerText);
this.containerOffset = getContainerOffset(this.draggedItem);
}

@@ -83,3 +90,3 @@ /**

*/
handleDrag({ originalEvent, pageX, pageY }) {
handleDrag({ originalEvent, clientX, clientY }) {
if (!isPresent(this.draggedItem)) {

@@ -92,9 +99,9 @@ return;

const targetTreeView = this.getTargetTreeView(originalEvent.target);
const dropPosition = getDropPosition(this.draggedItem, originalEvent.target, pageY, targetTreeView);
const clueAnchor = closestWithMatch(originalEvent.target, '.k-mid');
this.updateDropHintState(dropPosition, clueAnchor);
const dropPosition = getDropPosition(this.draggedItem, originalEvent.target, clientY, targetTreeView, this.containerOffset);
const dropHintAnchor = closestWithMatch(originalEvent.target, '.k-mid');
this.updateDropHintState(dropPosition, dropHintAnchor);
const dropAction = getDropAction(dropPosition, originalEvent.target);
const sourceItem = treeItemFromEventTarget(this.treeview, this.draggedItem);
const destinationItem = treeItemFromEventTarget(targetTreeView, originalEvent.target);
this.updateDragClueState(dropAction, pageX, pageY, sourceItem, destinationItem);
this.updateDragClueState(dropAction, clientX, clientY, sourceItem, destinationItem);
}

@@ -104,3 +111,3 @@ /**

*/
handleRelease({ originalEvent, pageY }) {
handleRelease({ originalEvent, clientY }) {
if (!isPresent(this.draggedItem)) {

@@ -111,3 +118,3 @@ return;

const destinationTree = this.getTargetTreeView(originalEvent.target);
const dropPosition = getDropPosition(this.draggedItem, originalEvent.target, pageY, this.getTargetTreeView(originalEvent.target));
const dropPosition = getDropPosition(this.draggedItem, originalEvent.target, clientY, this.getTargetTreeView(originalEvent.target), this.containerOffset);
const sourceItem = treeItemFromEventTarget(sourceTree, this.draggedItem);

@@ -132,11 +139,13 @@ const destinationItem = treeItemFromEventTarget(destinationTree, originalEvent.target);

}
const anchorCoords = elementCoords(dropHintAnchor);
const anchorViewPortCoords = dropHintAnchor.getBoundingClientRect();
const insertBefore = dropPosition === DropPosition.Before;
const top = insertBefore ? anchorCoords.top : (anchorCoords.top + anchorCoords.height);
this.dropHintService.move(anchorCoords.left, top);
const top = insertBefore ? anchorViewPortCoords.top : (anchorViewPortCoords.top + anchorViewPortCoords.height);
// clear any possible container offset created by parent elements with `transform` css property set
this.dropHintService.move(anchorViewPortCoords.left - this.containerOffset.left, top - this.containerOffset.top);
this.dropHintService.show();
}
updateDragClueState(dropAction, pageX, pageY, sourceItem, destinationItem) {
updateDragClueState(dropAction, clientX, clientY, sourceItem, destinationItem) {
// clear any possible container offset created by parent elements with `transform` css property set
this.dragClueService.move(clientX - this.containerOffset.left, clientY - this.containerOffset.top);
this.dragClueService.updateDragClueData(dropAction, sourceItem, destinationItem);
this.dragClueService.move(pageX, pageY);
this.dragClueService.show();

@@ -143,0 +152,0 @@ }

@@ -31,5 +31,6 @@ /**-----------------------------------------------------------------------------------------

/**
* Defines the drag hint content template.
* Defines the drag clue content template.
*/
template: TemplateRef<any>;
posistionStyle: string;
readonly statusIconClass: string;

@@ -36,0 +37,0 @@ constructor(cdr: ChangeDetectorRef);

@@ -14,2 +14,3 @@ /**-----------------------------------------------------------------------------------------

this.hostClasses = true;
this.posistionStyle = 'fixed';
}

@@ -60,3 +61,4 @@ get statusIconClass() {

DragClueComponent.propDecorators = {
hostClasses: [{ type: HostBinding, args: ['class.k-header',] }, { type: HostBinding, args: ['class.k-drag-clue',] }]
hostClasses: [{ type: HostBinding, args: ['class.k-header',] }, { type: HostBinding, args: ['class.k-drag-clue',] }],
posistionStyle: [{ type: HostBinding, args: ['style.position',] }]
};

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

*-------------------------------------------------------------------------------------------*/
import { ViewContainerRef, TemplateRef } from '@angular/core';
import { ViewContainerRef, TemplateRef, ComponentFactoryResolver } from '@angular/core';
import { DragClueComponent } from './drag-clue.component';

@@ -14,4 +14,14 @@ import { DropAction } from '../models';

*/
export declare const CLUE_OFFSET: number;
/**
* @hidden
*/
export declare const RETURN_ANIMATION_DURATION: number;
/**
* @hidden
*/
export declare class DragClueService extends DragAndDropAssetService<DragClueComponent> {
private componentFactoryResolver;
private returnAnimation;
constructor(componentFactoryResolver: ComponentFactoryResolver);
initialize(container: ViewContainerRef, template?: TemplateRef<any>): void;

@@ -18,0 +28,0 @@ ngOnDestroy(): void;

@@ -5,12 +5,22 @@ /**-----------------------------------------------------------------------------------------

*-------------------------------------------------------------------------------------------*/
import { Injectable } from '@angular/core';
import { Injectable, ComponentFactoryResolver } from '@angular/core';
import { DragClueComponent } from './drag-clue.component';
import { isPresent } from '../../utils';
import { DragAndDropAssetService } from '../editing-services/drag-and-drop-asset.service';
const HINT_OFFSET = 10;
const RETURN_ANIMATION_DURATION = 200;
/**
* @hidden
*/
export const CLUE_OFFSET = 10;
/**
* @hidden
*/
export const RETURN_ANIMATION_DURATION = 200;
/**
* @hidden
*/
export class DragClueService extends DragAndDropAssetService {
constructor(componentFactoryResolver) {
super();
this.componentFactoryResolver = componentFactoryResolver;
}
initialize(container, template) {

@@ -20,4 +30,4 @@ if (isPresent(this._componentRef)) {

}
const hintComponentFactory = this.componetFactoryResolver.resolveComponentFactory(DragClueComponent);
this.componentRef = container.createComponent(hintComponentFactory);
const clueComponentFactory = this.componentFactoryResolver.resolveComponentFactory(DragClueComponent);
this.componentRef = container.createComponent(clueComponentFactory);
this.hide();

@@ -32,3 +42,3 @@ this.componentRef.instance.template = template;

move(left, top) {
super.move(left, top, HINT_OFFSET);
super.move(left, top, CLUE_OFFSET);
}

@@ -40,7 +50,7 @@ animateDragClueToElementPosition(target) {

}
const targetElementCoords = target.getBoundingClientRect();
const hintElementCoords = this.element.getBoundingClientRect();
const targetElementViewPortCoords = target.getBoundingClientRect();
const clueElementViewPortCoords = this.element.getBoundingClientRect();
this.returnAnimation = this.element.animate([
{ transform: 'translate(0, 0)' },
{ transform: `translate(${targetElementCoords.left - hintElementCoords.left}px, ${targetElementCoords.top - hintElementCoords.top}px)` }
{ transform: `translate(${targetElementViewPortCoords.left - clueElementViewPortCoords.left}px, ${targetElementViewPortCoords.top - clueElementViewPortCoords.top}px)` }
], RETURN_ANIMATION_DURATION);

@@ -76,1 +86,5 @@ this.returnAnimation.onfinish = () => this.hide();

];
/** @nocollapse */
DragClueService.ctorParameters = () => [
{ type: ComponentFactoryResolver }
];

@@ -15,6 +15,4 @@ /**-----------------------------------------------------------------------------------------

template: TemplateRef<any>;
/** TODO: remove once added to the themes */
position: string;
zIndex: number;
pointerEvents: string;
}

@@ -12,7 +12,4 @@ /**-----------------------------------------------------------------------------------------

this.hostClass = true;
/** TODO: remove once added to the themes */
this.position = 'absolute';
this.zIndex = 2;
this.position = 'fixed';
this.pointerEvents = 'none';
/** ... */
}

@@ -42,4 +39,3 @@ }

position: [{ type: HostBinding, args: ['style.position',] }],
zIndex: [{ type: HostBinding, args: ['style.z-index',] }],
pointerEvents: [{ type: HostBinding, args: ['style.pointer-events',] }]
};

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

*-------------------------------------------------------------------------------------------*/
import { ViewContainerRef, TemplateRef } from '@angular/core';
import { ViewContainerRef, TemplateRef, ComponentFactoryResolver } from '@angular/core';
import { DropHintComponent } from './drop-hint.component';

@@ -13,3 +13,5 @@ import { DragAndDropAssetService } from '../editing-services/drag-and-drop-asset.service';

export declare class DropHintService extends DragAndDropAssetService<DropHintComponent> {
private componentFactoryResolver;
constructor(componentFactoryResolver: ComponentFactoryResolver);
initialize(container: ViewContainerRef, template?: TemplateRef<any>): void;
}

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

*-------------------------------------------------------------------------------------------*/
import { Injectable } from '@angular/core';
import { Injectable, ComponentFactoryResolver } from '@angular/core';
import { isPresent } from '../../utils';

@@ -14,2 +14,6 @@ import { DropHintComponent } from './drop-hint.component';

export class DropHintService extends DragAndDropAssetService {
constructor(componentFactoryResolver) {
super();
this.componentFactoryResolver = componentFactoryResolver;
}
initialize(container, template) {

@@ -19,3 +23,3 @@ if (isPresent(this._componentRef)) {

}
const hintComponentFactory = this.componetFactoryResolver.resolveComponentFactory(DropHintComponent);
const hintComponentFactory = this.componentFactoryResolver.resolveComponentFactory(DropHintComponent);
this.componentRef = container.createComponent(hintComponentFactory);

@@ -30,1 +34,5 @@ this.hide();

];
/** @nocollapse */
DropHintService.ctorParameters = () => [
{ type: ComponentFactoryResolver }
];

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

*-------------------------------------------------------------------------------------------*/
import { ComponentRef, ViewContainerRef, TemplateRef, ComponentFactoryResolver, OnDestroy } from '@angular/core';
import { ComponentRef, ViewContainerRef, TemplateRef, OnDestroy } from '@angular/core';
/**

@@ -11,7 +11,5 @@ * @hidden

export declare abstract class DragAndDropAssetService<T> implements OnDestroy {
protected componetFactoryResolver: ComponentFactoryResolver;
protected componentRef: ComponentRef<T>;
protected readonly element: HTMLElement;
protected _componentRef: ComponentRef<T>;
constructor(componetFactoryResolver: ComponentFactoryResolver);
abstract initialize(container: ViewContainerRef, template?: TemplateRef<any>): void;

@@ -18,0 +16,0 @@ ngOnDestroy(): void;

@@ -5,3 +5,2 @@ /**-----------------------------------------------------------------------------------------

*-------------------------------------------------------------------------------------------*/
import { ComponentFactoryResolver, Injectable } from '@angular/core';
import { isPresent } from '../../utils';

@@ -12,5 +11,2 @@ /**

export class DragAndDropAssetService {
constructor(componetFactoryResolver) {
this.componetFactoryResolver = componetFactoryResolver;
}
get componentRef() {

@@ -43,12 +39,5 @@ if (!isPresent(this._componentRef)) {

move(left, top, offset = 0) {
this.element.style.left = left + offset + 'px';
this.element.style.top = top + offset + 'px';
this.element.style.left = `${left + offset}px`;
this.element.style.top = `${top + offset}px`;
}
}
DragAndDropAssetService.decorators = [
{ type: Injectable },
];
/** @nocollapse */
DragAndDropAssetService.ctorParameters = () => [
{ type: ComponentFactoryResolver }
];

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

{"__symbolic":"module","version":4,"metadata":{"TreeViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":107,"character":1},"arguments":[{"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":108,"character":21},"member":"Default"},"exportAs":"kendoTreeView","providers":[{"__symbolic":"reference","name":"ExpandStateService"},{"__symbolic":"reference","name":"IndexBuilderService"},{"__symbolic":"reference","name":"TreeViewLookupService"},{"__symbolic":"reference","name":"LoadingNotificationService"},{"__symbolic":"reference","name":"NodeChildrenService"},{"__symbolic":"reference","name":"NavigationService"},{"__symbolic":"reference","name":"SelectionService"},{"__symbolic":"reference","name":"DataChangeNotificationService"},{"__symbolic":"reference","module":"@progress/kendo-angular-l10n","name":"LocalizationService","line":54,"character":4},{"provide":{"__symbolic":"reference","module":"@progress/kendo-angular-l10n","name":"L10N_PREFIX","line":56,"character":17},"useValue":"kendo.treeview"}],"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 [textField]=\"textField\"\n [nodes]=\"fetchNodes\"\n >\n </ul>\n <ng-container #assetsContainer></ng-container>\n "}]}],"members":{"classNames":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":133,"character":5},"arguments":["class.k-widget"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":134,"character":5},"arguments":["class.k-treeview"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":137,"character":5},"arguments":["attr.role"]}]}],"direction":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":141,"character":5},"arguments":["attr.dir"]}]}],"assetsContainer":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":149,"character":5},"arguments":["assetsContainer",{"read":{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":149,"character":42},"static":true}]}]}],"animate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":155,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":156,"character":5},"arguments":["@.disabled"]}]}],"childrenLoaded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":171,"character":5}}]}],"onBlur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":176,"character":5},"arguments":["blur"]}]}],"onFocus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":181,"character":5},"arguments":["focus"]}]}],"expand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":186,"character":5}}]}],"collapse":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":191,"character":5}}]}],"nodeDragStart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":197,"character":5}}]}],"nodeDrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":202,"character":5}}]}],"nodeDrop":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":213,"character":5}}]}],"nodeDragEnd":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":218,"character":5}}]}],"addItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":224,"character":5}}]}],"removeItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":230,"character":5}}]}],"checkedChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":236,"character":5}}]}],"selectionChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":242,"character":5}}]}],"nodeClick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":247,"character":5}}]}],"nodeDblClick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":252,"character":5}}]}],"nodeTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":257,"character":5},"arguments":[{"__symbolic":"reference","name":"NodeTemplateDirective"}]}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":263,"character":5}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":277,"character":5}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":283,"character":5}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":296,"character":5}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":308,"character":5}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":313,"character":5}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":326,"character":5}}]}],"navigable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":337,"character":5}}]}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":343,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":365,"character":35,"context":{"typeName":"HTMLElement"},"module":"./treeview.component"}]},{"__symbolic":"reference","name":"ExpandStateService"},{"__symbolic":"reference","name":"NavigationService"},{"__symbolic":"reference","name":"NodeChildrenService"},{"__symbolic":"reference","name":"SelectionService"},{"__symbolic":"reference","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":371,"character":24},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":372,"character":26},{"__symbolic":"reference","name":"DataChangeNotificationService"},{"__symbolic":"reference","module":"@progress/kendo-angular-l10n","name":"LocalizationService","line":374,"character":30}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"blur":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"itemLookup":[{"__symbolic":"method"}],"isDisabledNode":[{"__symbolic":"method"}],"expandNode":[{"__symbolic":"method"}],"collapseNode":[{"__symbolic":"method"}],"attachDomHandlers":[{"__symbolic":"method"}],"focusHandler":[{"__symbolic":"method"}],"blurHandler":[{"__symbolic":"method"}],"clickHandler":[{"__symbolic":"method"}],"keydownHandler":[{"__symbolic":"method"}]}},"TreeViewModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":33,"character":1},"arguments":[{"exports":[[{"__symbolic":"reference","name":"TreeViewComponent"},{"__symbolic":"reference","name":"NodeTemplateDirective"},{"__symbolic":"reference","name":"CheckDirective"},{"__symbolic":"reference","name":"DisableDirective"},{"__symbolic":"reference","name":"ExpandDirective"},{"__symbolic":"reference","name":"SelectDirective"},{"__symbolic":"reference","name":"HierarchyBindingDirective"},{"__symbolic":"reference","name":"FlatDataBindingDirective"},{"__symbolic":"reference","name":"DragAndDropDirective"},{"__symbolic":"reference","name":"DragClueTemplateDirective"},{"__symbolic":"reference","name":"DropHintTemplateDirective"},{"__symbolic":"reference","name":"DragAndDropEditingDirective"}]],"imports":[{"__symbolic":"reference","name":"SharedModule"}]}]}],"members":{}},"NodeTemplateDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":50,"character":1},"arguments":[{"selector":"[kendoTreeViewNodeTemplate]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":54,"character":15}}]],"parameters":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]}]}]}},"CheckDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":46,"character":1},"arguments":[{"selector":"[kendoTreeViewCheckable]"}]}],"members":{"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":51,"character":5}}]}],"checkKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":58,"character":5},"arguments":["checkBy"]}]}],"checkedKeys":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":65,"character":5}}]}],"checkable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":76,"character":5},"arguments":["kendoTreeViewCheckable"]}]}],"checkedKeysChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":81,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TreeViewComponent"},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":115,"character":22}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"isItemChecked":[{"__symbolic":"method"}],"isIndexChecked":[{"__symbolic":"method"}],"itemKey":[{"__symbolic":"method"}],"check":[{"__symbolic":"method"}],"checkSingle":[{"__symbolic":"method"}],"checkMultiple":[{"__symbolic":"method"}],"toggleCheckOnClick":[{"__symbolic":"method"}],"unsubscribeClick":[{"__symbolic":"method"}],"checkNode":[{"__symbolic":"method"}],"checkParents":[{"__symbolic":"method"}],"allChildrenSelected":[{"__symbolic":"method"}],"notify":[{"__symbolic":"method"}],"addChildrenKeys":[{"__symbolic":"method"}]}},"DisableDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":7,"character":1},"arguments":[{"selector":"[kendoTreeViewDisable]"}]}],"members":{"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":5}}]}],"disableKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":5},"arguments":["kendoTreeViewDisable"]}]}],"disabledKeys":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TreeViewComponent"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":29,"character":23}]}],"ngOnChanges":[{"__symbolic":"method"}],"itemKey":[{"__symbolic":"method"}]}},"ExpandDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":16,"character":1},"arguments":[{"selector":"[kendoTreeViewExpandable]"}]}],"members":{"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":5}}]}],"expandKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":5},"arguments":["expandBy"]}]}],"expandedKeysChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":35,"character":5}}]}],"expandedKeys":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":40,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TreeViewComponent"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"itemKey":[{"__symbolic":"method"}],"toggleExpand":[{"__symbolic":"method"}]}},"SelectDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":18,"character":1},"arguments":[{"selector":"[kendoTreeViewSelectable]"}]}],"members":{"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":5}}]}],"selectKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":5},"arguments":["selectBy"]}]}],"selection":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":37,"character":5},"arguments":["kendoTreeViewSelectable"]}]}],"selectedKeys":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":43,"character":5}}]}],"selectedKeysChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":54,"character":5}}]}],"getAriaMultiselectable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":56,"character":5},"arguments":["attr.aria-multiselectable"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TreeViewComponent"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"itemKey":[{"__symbolic":"method"}],"select":[{"__symbolic":"method"}],"selectSingle":[{"__symbolic":"method"}],"selectMultiple":[{"__symbolic":"method"}],"notify":[{"__symbolic":"method"}]}},"SelectableSettings":{"__symbolic":"interface"},"CheckableSettings":{"__symbolic":"interface"},"CheckMode":{"__symbolic":"interface"},"CheckedState":{"__symbolic":"interface"},"HierarchyBindingDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":10,"character":1},"arguments":[{"selector":"[kendoTreeViewHierarchyBinding]"}]}],"members":{"childrenField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TreeViewComponent"}]}],"ngOnInit":[{"__symbolic":"method"}]}},"FlatDataBindingDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":14,"character":1},"arguments":[{"selector":"[kendoTreeViewFlatDataBinding]"}]}],"members":{"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":5}}]}],"parentIdField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":5}}]}],"idField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":40,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TreeViewComponent"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ItemLookup":{"__symbolic":"interface"},"TreeItemLookup":{"__symbolic":"interface"},"TreeItem":{"__symbolic":"interface"},"NodeClickEvent":{"__symbolic":"interface"},"DragAndDropDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":27,"character":1},"arguments":[{"selector":"[kendoTreeViewDragAndDrop]","providers":[{"__symbolic":"reference","name":"DragClueService"},{"__symbolic":"reference","name":"DropHintService"}]}]}],"members":{"allowCopy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":43,"character":5}}]}],"dropZoneTreeViews":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":49,"character":5}}]}],"dragClueTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":54,"character":5},"arguments":[{"__symbolic":"reference","name":"DragClueTemplateDirective"}]}]}],"dropHintTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":59,"character":5},"arguments":[{"__symbolic":"reference","name":"DropHintTemplateDirective"}]}]}],"userSelectStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":64,"character":5},"arguments":["style.user-select"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":65,"character":5},"arguments":["style.-ms-user-select"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":72,"character":36,"context":{"typeName":"HTMLElement"},"module":"./drag-and-drop/drag-and-drop.directive"}]},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":73,"character":22},{"__symbolic":"reference","name":"TreeViewComponent"},{"__symbolic":"reference","name":"DragClueService"},{"__symbolic":"reference","name":"DropHintService"}]}],"ngAfterContentInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"handlePress":[{"__symbolic":"method"}],"handleDrag":[{"__symbolic":"method"}],"handleRelease":[{"__symbolic":"method"}],"updateDropHintState":[{"__symbolic":"method"}],"updateDragClueState":[{"__symbolic":"method"}],"initalizeDraggable":[{"__symbolic":"method"}],"notifyDragStart":[{"__symbolic":"method"}],"notifyDrag":[{"__symbolic":"method"}],"notifyDrop":[{"__symbolic":"method"}],"notifyDragEnd":[{"__symbolic":"method"}],"getTargetTreeView":[{"__symbolic":"method"}],"disableAnimationsForNextTick":[{"__symbolic":"method"}]}},"DragAndDropEditingDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":16,"character":1},"arguments":[{"selector":"[kendoTreeViewDragAndDropEditing]"}]}],"members":{"editService":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TreeViewComponent"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"handleAdd":[{"__symbolic":"method"}],"handleRemove":[{"__symbolic":"method"}]}},"DropHintTemplateDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":7,"character":1},"arguments":[{"selector":"[kendoTreeViewDropHintTemplate]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":11,"character":17}}]],"parameters":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]}]}]}},"DragClueTemplateDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":14,"character":1},"arguments":[{"selector":"[kendoTreeViewDragClueTemplate]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":18,"character":17}}]],"parameters":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]}]}]}},"DropAction":{"Add":0,"InsertTop":1,"InsertBottom":2,"InsertMiddle":3,"Invalid":4},"DropPosition":{"Over":0,"Before":1,"After":2},"TreeItemAddRemoveArgs":{"__symbolic":"interface"},"TreeItemDropEvent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PreventableEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TreeItemAddRemoveArgs"},{"__symbolic":"error","message":"Could not resolve type","line":48,"character":67,"context":{"typeName":"PointerEvent"},"module":"./drag-and-drop/models/treeitem-drop-event"}]}],"setValid":[{"__symbolic":"method"}]}},"TreeItemDragStartEvent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PreventableEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":20,"character":29,"module":"./drag-and-drop/models/treeitem-drag-start-event"}]}]}},"TreeItemDragEvent":{"__symbolic":"class","members":{}},"EditService":{"__symbolic":"interface"},"ExpandStateService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1}}],"members":{"expand":[{"__symbolic":"method"}],"collapse":[{"__symbolic":"method"}]}},"IndexBuilderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1}}],"members":{"nodeIndex":[{"__symbolic":"method"}],"indexForLevel":[{"__symbolic":"method"}],"lastLevelIndex":[{"__symbolic":"method"}],"level":[{"__symbolic":"method"}]}},"TreeViewLookupService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":9,"character":1}}],"members":{"registerItem":[{"__symbolic":"method"}],"registerChildren":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"replaceItem":[{"__symbolic":"method"}],"itemLookup":[{"__symbolic":"method"}],"hasItem":[{"__symbolic":"method"}],"item":[{"__symbolic":"method"}],"addToParent":[{"__symbolic":"method"}],"mapChildren":[{"__symbolic":"method"}]}},"LoadingNotificationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1}}],"members":{"notifyLoaded":[{"__symbolic":"method"}]}},"NodeChildrenService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":8,"character":1}}],"members":{"childrenLoaded":[{"__symbolic":"method"}]}},"NavigationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":12,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@progress/kendo-angular-l10n","name":"LocalizationService","line":66,"character":45}]}],"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"}],"isDisabled":[{"__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"}]}},"SelectionService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1}}],"members":{"isFirstSelected":[{"__symbolic":"method"}],"setFirstSelected":[{"__symbolic":"method"}],"select":[{"__symbolic":"method"}]}},"DataChangeNotificationService":{"__symbolic":"class","members":{"notify":[{"__symbolic":"method"}]}},"DragClueService":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"DragAndDropAssetService"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":14,"character":1}}],"members":{"initialize":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"move":[{"__symbolic":"method"}],"animateDragClueToElementPosition":[{"__symbolic":"method"}],"cancelReturnAnimation":[{"__symbolic":"method"}],"updateDragClueData":[{"__symbolic":"method"}],"updateText":[{"__symbolic":"method"}]}},"DragAndDropAssetService":{"__symbolic":"class","arity":1,"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":27,"character":51}]}],"initialize":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"show":[{"__symbolic":"method"}],"hide":[{"__symbolic":"method"}],"move":[{"__symbolic":"method"}]}},"DropHintService":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"DragAndDropAssetService"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":9,"character":1}}],"members":{"initialize":[{"__symbolic":"method"}]}},"SharedModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":46,"character":1},"arguments":[{"declarations":[[{"__symbolic":"reference","name":"TreeViewComponent"},{"__symbolic":"reference","name":"TreeViewGroupComponent"},{"__symbolic":"reference","name":"TreeViewItemDirective"},{"__symbolic":"reference","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","name":"NodeTemplateDirective"},{"__symbolic":"reference","name":"CheckDirective"},{"__symbolic":"reference","name":"DisableDirective"},{"__symbolic":"reference","name":"ExpandDirective"},{"__symbolic":"reference","name":"SelectDirective"},{"__symbolic":"reference","name":"HierarchyBindingDirective"},{"__symbolic":"reference","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","name":"FlatDataBindingDirective"},{"__symbolic":"reference","name":"DragAndDropDirective"},{"__symbolic":"reference","name":"DragClueTemplateDirective"},{"__symbolic":"reference","name":"DragClueComponent"},{"__symbolic":"reference","name":"DropHintTemplateDirective"},{"__symbolic":"reference","name":"DropHintComponent"},{"__symbolic":"reference","name":"DragAndDropEditingDirective"}]],"exports":[[{"__symbolic":"reference","name":"TreeViewComponent"},{"__symbolic":"reference","name":"TreeViewGroupComponent"},{"__symbolic":"reference","name":"TreeViewItemDirective"},{"__symbolic":"reference","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","name":"NodeTemplateDirective"},{"__symbolic":"reference","name":"CheckDirective"},{"__symbolic":"reference","name":"DisableDirective"},{"__symbolic":"reference","name":"ExpandDirective"},{"__symbolic":"reference","name":"SelectDirective"},{"__symbolic":"reference","name":"HierarchyBindingDirective"},{"__symbolic":"reference","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","name":"FlatDataBindingDirective"},{"__symbolic":"reference","name":"DragAndDropDirective"},{"__symbolic":"reference","name":"DragClueTemplateDirective"},{"__symbolic":"reference","name":"DragClueComponent"},{"__symbolic":"reference","name":"DropHintTemplateDirective"},{"__symbolic":"reference","name":"DropHintComponent"},{"__symbolic":"reference","name":"DragAndDropEditingDirective"}]],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":49,"character":14},{"__symbolic":"reference","name":"CheckBoxModule"}],"entryComponents":[{"__symbolic":"reference","name":"DragClueComponent"},{"__symbolic":"reference","name":"DropHintComponent"}]}]}],"members":{}},"TreeViewGroupComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":20,"character":1},"arguments":[{"animations":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger","line":22,"character":8},"arguments":["toggle",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":23,"character":12},"arguments":["void => *",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":24,"character":16},"arguments":[{"height":0}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":25,"character":16},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":25,"character":40},"arguments":[{"height":"*"}]}]}]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":27,"character":12},"arguments":["* => void",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":28,"character":16},"arguments":[{"height":"*"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":29,"character":16},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":29,"character":40},"arguments":[{"height":0}]}]}]]}]]}],"selector":"[kendoTreeViewGroup]","template":"\n <li\n *ngFor=\"let node of data; let index = index\" class=\"k-item k-treeview-item\"\n kendoTreeViewItem\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [parentDataItem]=\"parentDataItem\"\n [parentIndex]=\"parentIndex\"\n [isChecked]=\"isChecked(node, nodeIndex(index))\"\n [isDisabled]=\"disabled || 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 [node]=\"node\"\n [index]=\"nodeIndex(index)\"\n [isChecked]=\"isChecked\"\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 [initialSelection]=\"isSelected(node, 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\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isDisabled]=\"isDisabled\"\n [disabled]=\"disabled || isDisabled(node, nodeIndex(index))\"\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","line":112,"character":5},"arguments":["class.k-group"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":115,"character":5},"arguments":["attr.role"]}]}],"checkboxes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":118,"character":5}}]}],"expandIcons":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":119,"character":5}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":120,"character":5}}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":122,"character":5}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":123,"character":5}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":124,"character":5}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":125,"character":5}}]}],"nodeTemplateRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":126,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ExpandStateService"},{"__symbolic":"reference","name":"LoadingNotificationService"},{"__symbolic":"reference","name":"IndexBuilderService"},{"__symbolic":"reference","name":"TreeViewLookupService"},{"__symbolic":"reference","name":"NavigationService"},{"__symbolic":"reference","name":"NodeChildrenService"},{"__symbolic":"reference","name":"DataChangeNotificationService"}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":154,"character":5}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":155,"character":5}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":156,"character":5}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":157,"character":5}}]}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":159,"character":5}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":160,"character":5}}]}],"expandNode":[{"__symbolic":"method"}],"checkNode":[{"__symbolic":"method"}],"nodeIndex":[{"__symbolic":"method"}],"nodeText":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"fetchChildren":[{"__symbolic":"method"}],"setNodeChildren":[{"__symbolic":"method"}],"mapToTreeItem":[{"__symbolic":"method"}],"emitChildrenLoaded":[{"__symbolic":"method"}],"subscribeToNodesChange":[{"__symbolic":"method"}]}},"TreeViewItemDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":28,"character":1},"arguments":[{"selector":"[kendoTreeViewItem]"}]}],"members":{"dataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":5}}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":5}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":5}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":34,"character":5}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":5}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":47,"character":5}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":49,"character":5}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":57,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":82,"character":25},{"__symbolic":"reference","name":"ExpandStateService"},{"__symbolic":"reference","name":"NavigationService"},{"__symbolic":"reference","name":"SelectionService"},{"__symbolic":"reference","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":87,"character":26},{"__symbolic":"reference","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"}]}},"TreeViewItemContentDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":12,"character":1},"arguments":[{"selector":"[kendoTreeViewItemContent]"}]}],"members":{"dataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":5}}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":5}}]}],"initialSelection":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":5}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":22,"character":25},{"__symbolic":"reference","name":"NavigationService"},{"__symbolic":"reference","name":"SelectionService"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":25,"character":26}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"updateItem":[{"__symbolic":"method"}],"updateSelection":[{"__symbolic":"method"}],"render":[{"__symbolic":"method"}]}},"LoadingIndicatorDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":10,"character":1},"arguments":[{"selector":"[kendoTreeViewLoading]"}]}],"members":{"loading":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":13,"character":5},"arguments":["class.k-i-loading"]}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":5},"arguments":["kendoTreeViewLoading"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ExpandStateService"},{"__symbolic":"reference","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":32,"character":22}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"DragClueComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":8,"character":21},"member":"OnPush"},"selector":"kendo-treeview-drag-clue","template":"\n <ng-container *ngIf=\"!template\">\n <span class=\"k-icon {{statusIconClass}} k-drag-status\"></span>\n <span>{{text}}</span>\n </ng-container>\n\n <ng-template\n *ngIf=\"template\"\n [ngTemplateOutlet]=\"template\"\n [ngTemplateOutletContext]=\"{\n text: text,\n action: action,\n sourceItem: sourceItem,\n destinationItem: destinationItem\n }\"\n >\n </ng-template>\n "}]}],"members":{"hostClasses":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":31,"character":5},"arguments":["class.k-header"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":32,"character":5},"arguments":["class.k-drag-clue"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":71,"character":29}]}],"detectChanges":[{"__symbolic":"method"}]}},"DropHintComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":6,"character":21},"member":"OnPush"},"selector":"kendo-treeview-drop-hint","template":"\n <span\n *ngIf=\"!template\"\n class=\"k-icon k-i-drag-and-drop\"\n >\n </span>\n\n <ng-template\n *ngIf=\"template\"\n [ngTemplateOutlet]=\"template\"\n >\n <ng-template>\n "}]}],"members":{"hostClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":24,"character":5},"arguments":["class.k-drop-hint-container"]}]}],"position":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":33,"character":5},"arguments":["style.position"]}]}],"zIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":36,"character":5},"arguments":["style.z-index"]}]}],"pointerEvents":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":39,"character":5},"arguments":["style.pointer-events"]}]}]}},"CheckBoxModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":12,"character":1},"arguments":[{"declarations":[[{"__symbolic":"reference","name":"CheckBoxComponent"}]],"exports":[[{"__symbolic":"reference","name":"CheckBoxComponent"}]]}]}],"members":{}},"CheckBoxComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":21,"character":1},"arguments":[{"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 "}]}],"members":{"classWrapper":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":44,"character":5},"arguments":["class.k-checkbox-wrapper"]}]}],"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":50,"character":5}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":55,"character":5}}]}],"node":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":60,"character":5}}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":65,"character":5}}]}],"labelText":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":70,"character":5}}]}],"tabindex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":75,"character":5}}]}],"checkStateChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":80,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":92,"character":33},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":93,"character":34},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":94,"character":40}]}],"ngOnInit":[{"__symbolic":"method"}],"ngDoCheck":[{"__symbolic":"method"}],"handleChange":[{"__symbolic":"method"}]}},"PreventableEvent":{"__symbolic":"class","members":{"preventDefault":[{"__symbolic":"method"}],"isDefaultPrevented":[{"__symbolic":"method"}]}}},"origins":{"TreeViewComponent":"./treeview.component","TreeViewModule":"./treeview.module","NodeTemplateDirective":"./node-template.directive","CheckDirective":"./check.directive","DisableDirective":"./disable.directive","ExpandDirective":"./expand.directive","SelectDirective":"./selection/select.directive","SelectableSettings":"./selection/selectable-settings","CheckableSettings":"./checkable-settings","CheckMode":"./check-mode","CheckedState":"./checkbox/checked-state","HierarchyBindingDirective":"./hierarchy-binding.directive","FlatDataBindingDirective":"./flat-binding.directive","ItemLookup":"./treeitem-lookup.interface","TreeItemLookup":"./treeitem-lookup.interface","TreeItem":"./treeitem.interface","NodeClickEvent":"./node-click-event.interface","DragAndDropDirective":"./drag-and-drop/drag-and-drop.directive","DragAndDropEditingDirective":"./drag-and-drop/drag-and-drop-editing.directive","DropHintTemplateDirective":"./drag-and-drop/drop-hint/drop-hint-template.directive","DragClueTemplateDirective":"./drag-and-drop/drag-clue/drag-clue-template.directive","DropAction":"./drag-and-drop/models/drop-action","DropPosition":"./drag-and-drop/models/drop-position","TreeItemAddRemoveArgs":"./drag-and-drop/models/treeitem-add-remove-args","TreeItemDropEvent":"./drag-and-drop/models/treeitem-drop-event","TreeItemDragStartEvent":"./drag-and-drop/models/treeitem-drag-start-event","TreeItemDragEvent":"./drag-and-drop/models/treeitem-drag-event","EditService":"./drag-and-drop/models/editing-service","ExpandStateService":"./expand-state.service","IndexBuilderService":"./index-builder.service","TreeViewLookupService":"./treeview-lookup.service","LoadingNotificationService":"./loading-notification.service","NodeChildrenService":"./node-children.service","NavigationService":"./navigation/navigation.service","SelectionService":"./selection/selection.service","DataChangeNotificationService":"./data-change-notification.service","DragClueService":"./drag-and-drop/drag-clue/drag-clue.service","DragAndDropAssetService":"./drag-and-drop/editing-services/drag-and-drop-asset.service","DropHintService":"./drag-and-drop/drop-hint/drop-hint.service","SharedModule":"./shared.module","TreeViewGroupComponent":"./treeview-group.component","TreeViewItemDirective":"./treeview-item.directive","TreeViewItemContentDirective":"./treeview-item-content.directive","LoadingIndicatorDirective":"./loading-indicator.directive","DragClueComponent":"./drag-and-drop/drag-clue/drag-clue.component","DropHintComponent":"./drag-and-drop/drop-hint/drop-hint.component","CheckBoxModule":"./checkbox/checkbox.module","CheckBoxComponent":"./checkbox/checkbox.component","PreventableEvent":"./drag-and-drop/models/preventable-event"},"importAs":"@progress/kendo-angular-treeview"}
{"__symbolic":"module","version":4,"metadata":{"TreeViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":107,"character":1},"arguments":[{"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":108,"character":21},"member":"Default"},"exportAs":"kendoTreeView","providers":[{"__symbolic":"reference","name":"ExpandStateService"},{"__symbolic":"reference","name":"IndexBuilderService"},{"__symbolic":"reference","name":"TreeViewLookupService"},{"__symbolic":"reference","name":"LoadingNotificationService"},{"__symbolic":"reference","name":"NodeChildrenService"},{"__symbolic":"reference","name":"NavigationService"},{"__symbolic":"reference","name":"SelectionService"},{"__symbolic":"reference","name":"DataChangeNotificationService"},{"__symbolic":"reference","module":"@progress/kendo-angular-l10n","name":"LocalizationService","line":54,"character":4},{"provide":{"__symbolic":"reference","module":"@progress/kendo-angular-l10n","name":"L10N_PREFIX","line":56,"character":17},"useValue":"kendo.treeview"}],"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 [textField]=\"textField\"\n [nodes]=\"fetchNodes\"\n >\n </ul>\n <ng-container #assetsContainer></ng-container>\n "}]}],"members":{"classNames":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":133,"character":5},"arguments":["class.k-widget"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":134,"character":5},"arguments":["class.k-treeview"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":137,"character":5},"arguments":["attr.role"]}]}],"direction":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":141,"character":5},"arguments":["attr.dir"]}]}],"assetsContainer":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":149,"character":5},"arguments":["assetsContainer",{"read":{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":149,"character":42},"static":true}]}]}],"animate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":155,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":156,"character":5},"arguments":["@.disabled"]}]}],"childrenLoaded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":171,"character":5}}]}],"onBlur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":176,"character":5},"arguments":["blur"]}]}],"onFocus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":181,"character":5},"arguments":["focus"]}]}],"expand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":186,"character":5}}]}],"collapse":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":191,"character":5}}]}],"nodeDragStart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":197,"character":5}}]}],"nodeDrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":202,"character":5}}]}],"nodeDrop":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":213,"character":5}}]}],"nodeDragEnd":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":218,"character":5}}]}],"addItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":224,"character":5}}]}],"removeItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":230,"character":5}}]}],"checkedChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":236,"character":5}}]}],"selectionChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":242,"character":5}}]}],"nodeClick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":247,"character":5}}]}],"nodeDblClick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":252,"character":5}}]}],"nodeTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":257,"character":5},"arguments":[{"__symbolic":"reference","name":"NodeTemplateDirective"}]}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":263,"character":5}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":277,"character":5}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":283,"character":5}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":296,"character":5}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":308,"character":5}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":313,"character":5}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":326,"character":5}}]}],"navigable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":337,"character":5}}]}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":343,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":365,"character":35,"context":{"typeName":"HTMLElement"},"module":"./treeview.component"}]},{"__symbolic":"reference","name":"ExpandStateService"},{"__symbolic":"reference","name":"NavigationService"},{"__symbolic":"reference","name":"NodeChildrenService"},{"__symbolic":"reference","name":"SelectionService"},{"__symbolic":"reference","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":371,"character":24},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":372,"character":26},{"__symbolic":"reference","name":"DataChangeNotificationService"},{"__symbolic":"reference","module":"@progress/kendo-angular-l10n","name":"LocalizationService","line":374,"character":30}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"blur":[{"__symbolic":"method"}],"focus":[{"__symbolic":"method"}],"itemLookup":[{"__symbolic":"method"}],"isDisabledNode":[{"__symbolic":"method"}],"expandNode":[{"__symbolic":"method"}],"collapseNode":[{"__symbolic":"method"}],"attachDomHandlers":[{"__symbolic":"method"}],"focusHandler":[{"__symbolic":"method"}],"blurHandler":[{"__symbolic":"method"}],"clickHandler":[{"__symbolic":"method"}],"keydownHandler":[{"__symbolic":"method"}]}},"TreeViewModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":33,"character":1},"arguments":[{"exports":[[{"__symbolic":"reference","name":"TreeViewComponent"},{"__symbolic":"reference","name":"NodeTemplateDirective"},{"__symbolic":"reference","name":"CheckDirective"},{"__symbolic":"reference","name":"DisableDirective"},{"__symbolic":"reference","name":"ExpandDirective"},{"__symbolic":"reference","name":"SelectDirective"},{"__symbolic":"reference","name":"HierarchyBindingDirective"},{"__symbolic":"reference","name":"FlatDataBindingDirective"},{"__symbolic":"reference","name":"DragAndDropDirective"},{"__symbolic":"reference","name":"DragClueTemplateDirective"},{"__symbolic":"reference","name":"DropHintTemplateDirective"},{"__symbolic":"reference","name":"DragAndDropEditingDirective"}]],"imports":[{"__symbolic":"reference","name":"SharedModule"}]}]}],"members":{}},"NodeTemplateDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":50,"character":1},"arguments":[{"selector":"[kendoTreeViewNodeTemplate]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":54,"character":15}}]],"parameters":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]}]}]}},"CheckDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":46,"character":1},"arguments":[{"selector":"[kendoTreeViewCheckable]"}]}],"members":{"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":51,"character":5}}]}],"checkKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":58,"character":5},"arguments":["checkBy"]}]}],"checkedKeys":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":65,"character":5}}]}],"checkable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":76,"character":5},"arguments":["kendoTreeViewCheckable"]}]}],"checkedKeysChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":81,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TreeViewComponent"},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":115,"character":22}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"isItemChecked":[{"__symbolic":"method"}],"isIndexChecked":[{"__symbolic":"method"}],"itemKey":[{"__symbolic":"method"}],"check":[{"__symbolic":"method"}],"checkSingle":[{"__symbolic":"method"}],"checkMultiple":[{"__symbolic":"method"}],"toggleCheckOnClick":[{"__symbolic":"method"}],"unsubscribeClick":[{"__symbolic":"method"}],"checkNode":[{"__symbolic":"method"}],"checkParents":[{"__symbolic":"method"}],"allChildrenSelected":[{"__symbolic":"method"}],"notify":[{"__symbolic":"method"}],"addChildrenKeys":[{"__symbolic":"method"}]}},"DisableDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":7,"character":1},"arguments":[{"selector":"[kendoTreeViewDisable]"}]}],"members":{"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":5}}]}],"disableKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":5},"arguments":["kendoTreeViewDisable"]}]}],"disabledKeys":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TreeViewComponent"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":29,"character":23}]}],"ngOnChanges":[{"__symbolic":"method"}],"itemKey":[{"__symbolic":"method"}]}},"ExpandDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":16,"character":1},"arguments":[{"selector":"[kendoTreeViewExpandable]"}]}],"members":{"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":5}}]}],"expandKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":5},"arguments":["expandBy"]}]}],"expandedKeysChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":35,"character":5}}]}],"expandedKeys":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":40,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TreeViewComponent"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"itemKey":[{"__symbolic":"method"}],"toggleExpand":[{"__symbolic":"method"}]}},"SelectDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":18,"character":1},"arguments":[{"selector":"[kendoTreeViewSelectable]"}]}],"members":{"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":5}}]}],"selectKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":5},"arguments":["selectBy"]}]}],"selection":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":37,"character":5},"arguments":["kendoTreeViewSelectable"]}]}],"selectedKeys":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":43,"character":5}}]}],"selectedKeysChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":54,"character":5}}]}],"getAriaMultiselectable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":56,"character":5},"arguments":["attr.aria-multiselectable"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TreeViewComponent"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"itemKey":[{"__symbolic":"method"}],"select":[{"__symbolic":"method"}],"selectSingle":[{"__symbolic":"method"}],"selectMultiple":[{"__symbolic":"method"}],"notify":[{"__symbolic":"method"}]}},"SelectableSettings":{"__symbolic":"interface"},"CheckableSettings":{"__symbolic":"interface"},"CheckMode":{"__symbolic":"interface"},"CheckedState":{"__symbolic":"interface"},"HierarchyBindingDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":10,"character":1},"arguments":[{"selector":"[kendoTreeViewHierarchyBinding]"}]}],"members":{"childrenField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TreeViewComponent"}]}],"ngOnInit":[{"__symbolic":"method"}]}},"FlatDataBindingDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":14,"character":1},"arguments":[{"selector":"[kendoTreeViewFlatDataBinding]"}]}],"members":{"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":5}}]}],"parentIdField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":5}}]}],"idField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":40,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TreeViewComponent"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ItemLookup":{"__symbolic":"interface"},"TreeItemLookup":{"__symbolic":"interface"},"TreeItem":{"__symbolic":"interface"},"NodeClickEvent":{"__symbolic":"interface"},"DragAndDropDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":27,"character":1},"arguments":[{"selector":"[kendoTreeViewDragAndDrop]","providers":[{"__symbolic":"reference","name":"DragClueService"},{"__symbolic":"reference","name":"DropHintService"}]}]}],"members":{"allowCopy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":43,"character":5}}]}],"dropZoneTreeViews":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":49,"character":5}}]}],"dragClueTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":54,"character":5},"arguments":[{"__symbolic":"reference","name":"DragClueTemplateDirective"}]}]}],"dropHintTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":59,"character":5},"arguments":[{"__symbolic":"reference","name":"DropHintTemplateDirective"}]}]}],"userSelectStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":64,"character":5},"arguments":["style.user-select"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":65,"character":5},"arguments":["style.-ms-user-select"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":79,"character":36,"context":{"typeName":"HTMLElement"},"module":"./drag-and-drop/drag-and-drop.directive"}]},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":80,"character":22},{"__symbolic":"reference","name":"TreeViewComponent"},{"__symbolic":"reference","name":"DragClueService"},{"__symbolic":"reference","name":"DropHintService"}]}],"ngAfterContentInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"handlePress":[{"__symbolic":"method"}],"handleDrag":[{"__symbolic":"method"}],"handleRelease":[{"__symbolic":"method"}],"updateDropHintState":[{"__symbolic":"method"}],"updateDragClueState":[{"__symbolic":"method"}],"initalizeDraggable":[{"__symbolic":"method"}],"notifyDragStart":[{"__symbolic":"method"}],"notifyDrag":[{"__symbolic":"method"}],"notifyDrop":[{"__symbolic":"method"}],"notifyDragEnd":[{"__symbolic":"method"}],"getTargetTreeView":[{"__symbolic":"method"}],"disableAnimationsForNextTick":[{"__symbolic":"method"}]}},"DragAndDropEditingDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":16,"character":1},"arguments":[{"selector":"[kendoTreeViewDragAndDropEditing]"}]}],"members":{"editService":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TreeViewComponent"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"handleAdd":[{"__symbolic":"method"}],"handleRemove":[{"__symbolic":"method"}]}},"DropHintTemplateDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":7,"character":1},"arguments":[{"selector":"[kendoTreeViewDropHintTemplate]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":11,"character":17}}]],"parameters":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]}]}]}},"DragClueTemplateDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":14,"character":1},"arguments":[{"selector":"[kendoTreeViewDragClueTemplate]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":18,"character":17}}]],"parameters":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]}]}]}},"DropAction":{"Add":0,"InsertTop":1,"InsertBottom":2,"InsertMiddle":3,"Invalid":4},"DropPosition":{"Over":0,"Before":1,"After":2},"TreeItemAddRemoveArgs":{"__symbolic":"interface"},"TreeItemDropEvent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PreventableEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TreeItemAddRemoveArgs"},{"__symbolic":"error","message":"Could not resolve type","line":48,"character":67,"context":{"typeName":"PointerEvent"},"module":"./drag-and-drop/models/treeitem-drop-event"}]}],"setValid":[{"__symbolic":"method"}]}},"TreeItemDragStartEvent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PreventableEvent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":20,"character":29,"module":"./drag-and-drop/models/treeitem-drag-start-event"}]}]}},"TreeItemDragEvent":{"__symbolic":"class","members":{}},"EditService":{"__symbolic":"interface"},"ExpandStateService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1}}],"members":{"expand":[{"__symbolic":"method"}],"collapse":[{"__symbolic":"method"}]}},"IndexBuilderService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1}}],"members":{"nodeIndex":[{"__symbolic":"method"}],"indexForLevel":[{"__symbolic":"method"}],"lastLevelIndex":[{"__symbolic":"method"}],"level":[{"__symbolic":"method"}]}},"TreeViewLookupService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":9,"character":1}}],"members":{"registerItem":[{"__symbolic":"method"}],"registerChildren":[{"__symbolic":"method"}],"unregisterItem":[{"__symbolic":"method"}],"replaceItem":[{"__symbolic":"method"}],"itemLookup":[{"__symbolic":"method"}],"hasItem":[{"__symbolic":"method"}],"item":[{"__symbolic":"method"}],"addToParent":[{"__symbolic":"method"}],"mapChildren":[{"__symbolic":"method"}]}},"LoadingNotificationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1}}],"members":{"notifyLoaded":[{"__symbolic":"method"}]}},"NodeChildrenService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":8,"character":1}}],"members":{"childrenLoaded":[{"__symbolic":"method"}]}},"NavigationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":12,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@progress/kendo-angular-l10n","name":"LocalizationService","line":66,"character":45}]}],"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"}],"isDisabled":[{"__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"}]}},"SelectionService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1}}],"members":{"isFirstSelected":[{"__symbolic":"method"}],"setFirstSelected":[{"__symbolic":"method"}],"select":[{"__symbolic":"method"}]}},"DataChangeNotificationService":{"__symbolic":"class","members":{"notify":[{"__symbolic":"method"}]}},"DragClueService":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"DragAndDropAssetService"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":21,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":26,"character":50}]}],"initialize":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"move":[{"__symbolic":"method"}],"animateDragClueToElementPosition":[{"__symbolic":"method"}],"cancelReturnAnimation":[{"__symbolic":"method"}],"updateDragClueData":[{"__symbolic":"method"}],"updateText":[{"__symbolic":"method"}]}},"DragAndDropAssetService":{"__symbolic":"class","arity":1,"members":{"initialize":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"show":[{"__symbolic":"method"}],"hide":[{"__symbolic":"method"}],"move":[{"__symbolic":"method"}]}},"DropHintService":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"DragAndDropAssetService"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":9,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":12,"character":50}]}],"initialize":[{"__symbolic":"method"}]}},"SharedModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":46,"character":1},"arguments":[{"declarations":[[{"__symbolic":"reference","name":"TreeViewComponent"},{"__symbolic":"reference","name":"TreeViewGroupComponent"},{"__symbolic":"reference","name":"TreeViewItemDirective"},{"__symbolic":"reference","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","name":"NodeTemplateDirective"},{"__symbolic":"reference","name":"CheckDirective"},{"__symbolic":"reference","name":"DisableDirective"},{"__symbolic":"reference","name":"ExpandDirective"},{"__symbolic":"reference","name":"SelectDirective"},{"__symbolic":"reference","name":"HierarchyBindingDirective"},{"__symbolic":"reference","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","name":"FlatDataBindingDirective"},{"__symbolic":"reference","name":"DragAndDropDirective"},{"__symbolic":"reference","name":"DragClueTemplateDirective"},{"__symbolic":"reference","name":"DragClueComponent"},{"__symbolic":"reference","name":"DropHintTemplateDirective"},{"__symbolic":"reference","name":"DropHintComponent"},{"__symbolic":"reference","name":"DragAndDropEditingDirective"}]],"exports":[[{"__symbolic":"reference","name":"TreeViewComponent"},{"__symbolic":"reference","name":"TreeViewGroupComponent"},{"__symbolic":"reference","name":"TreeViewItemDirective"},{"__symbolic":"reference","name":"TreeViewItemContentDirective"},{"__symbolic":"reference","name":"NodeTemplateDirective"},{"__symbolic":"reference","name":"CheckDirective"},{"__symbolic":"reference","name":"DisableDirective"},{"__symbolic":"reference","name":"ExpandDirective"},{"__symbolic":"reference","name":"SelectDirective"},{"__symbolic":"reference","name":"HierarchyBindingDirective"},{"__symbolic":"reference","name":"LoadingIndicatorDirective"},{"__symbolic":"reference","name":"FlatDataBindingDirective"},{"__symbolic":"reference","name":"DragAndDropDirective"},{"__symbolic":"reference","name":"DragClueTemplateDirective"},{"__symbolic":"reference","name":"DragClueComponent"},{"__symbolic":"reference","name":"DropHintTemplateDirective"},{"__symbolic":"reference","name":"DropHintComponent"},{"__symbolic":"reference","name":"DragAndDropEditingDirective"}]],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":49,"character":14},{"__symbolic":"reference","name":"CheckBoxModule"}],"entryComponents":[{"__symbolic":"reference","name":"DragClueComponent"},{"__symbolic":"reference","name":"DropHintComponent"}]}]}],"members":{}},"TreeViewGroupComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":20,"character":1},"arguments":[{"animations":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"trigger","line":22,"character":8},"arguments":["toggle",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":23,"character":12},"arguments":["void => *",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":24,"character":16},"arguments":[{"height":0}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":25,"character":16},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":25,"character":40},"arguments":[{"height":"*"}]}]}]]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"transition","line":27,"character":12},"arguments":["* => void",[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":28,"character":16},"arguments":[{"height":"*"}]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"animate","line":29,"character":16},"arguments":["0.1s ease-in",{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/animations","name":"style","line":29,"character":40},"arguments":[{"height":0}]}]}]]}]]}],"selector":"[kendoTreeViewGroup]","template":"\n <li\n *ngFor=\"let node of data; let index = index\" class=\"k-item k-treeview-item\"\n kendoTreeViewItem\n [dataItem]=\"node\"\n [index]=\"nodeIndex(index)\"\n [parentDataItem]=\"parentDataItem\"\n [parentIndex]=\"parentIndex\"\n [isChecked]=\"isChecked(node, nodeIndex(index))\"\n [isDisabled]=\"disabled || 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 [node]=\"node\"\n [index]=\"nodeIndex(index)\"\n [isChecked]=\"isChecked\"\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 [initialSelection]=\"isSelected(node, 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\"\n [checkboxes]=\"checkboxes\"\n [expandIcons]=\"expandIcons\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isChecked]=\"isChecked\"\n [isDisabled]=\"isDisabled\"\n [disabled]=\"disabled || isDisabled(node, nodeIndex(index))\"\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","line":112,"character":5},"arguments":["class.k-group"]}]}],"role":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":115,"character":5},"arguments":["attr.role"]}]}],"checkboxes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":118,"character":5}}]}],"expandIcons":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":119,"character":5}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":120,"character":5}}]}],"nodes":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":122,"character":5}}]}],"textField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":123,"character":5}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":124,"character":5}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":125,"character":5}}]}],"nodeTemplateRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":126,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ExpandStateService"},{"__symbolic":"reference","name":"LoadingNotificationService"},{"__symbolic":"reference","name":"IndexBuilderService"},{"__symbolic":"reference","name":"TreeViewLookupService"},{"__symbolic":"reference","name":"NavigationService"},{"__symbolic":"reference","name":"NodeChildrenService"},{"__symbolic":"reference","name":"DataChangeNotificationService"}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":154,"character":5}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":155,"character":5}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":156,"character":5}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":157,"character":5}}]}],"children":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":159,"character":5}}]}],"hasChildren":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":160,"character":5}}]}],"expandNode":[{"__symbolic":"method"}],"checkNode":[{"__symbolic":"method"}],"nodeIndex":[{"__symbolic":"method"}],"nodeText":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"fetchChildren":[{"__symbolic":"method"}],"setNodeChildren":[{"__symbolic":"method"}],"mapToTreeItem":[{"__symbolic":"method"}],"emitChildrenLoaded":[{"__symbolic":"method"}],"subscribeToNodesChange":[{"__symbolic":"method"}]}},"TreeViewItemDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":28,"character":1},"arguments":[{"selector":"[kendoTreeViewItem]"}]}],"members":{"dataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":5}}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":5}}]}],"parentDataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":5}}]}],"parentIndex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":34,"character":5}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":5}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":47,"character":5}}]}],"isExpanded":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":49,"character":5}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":57,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":82,"character":25},{"__symbolic":"reference","name":"ExpandStateService"},{"__symbolic":"reference","name":"NavigationService"},{"__symbolic":"reference","name":"SelectionService"},{"__symbolic":"reference","name":"TreeViewLookupService"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":87,"character":26},{"__symbolic":"reference","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"}]}},"TreeViewItemContentDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":12,"character":1},"arguments":[{"selector":"[kendoTreeViewItemContent]"}]}],"members":{"dataItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":5}}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":5}}]}],"initialSelection":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":5}}]}],"isSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":22,"character":25},{"__symbolic":"reference","name":"NavigationService"},{"__symbolic":"reference","name":"SelectionService"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":25,"character":26}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"updateItem":[{"__symbolic":"method"}],"updateSelection":[{"__symbolic":"method"}],"render":[{"__symbolic":"method"}]}},"LoadingIndicatorDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":10,"character":1},"arguments":[{"selector":"[kendoTreeViewLoading]"}]}],"members":{"loading":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":13,"character":5},"arguments":["class.k-i-loading"]}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":5},"arguments":["kendoTreeViewLoading"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ExpandStateService"},{"__symbolic":"reference","name":"LoadingNotificationService"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":32,"character":22}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"DragClueComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":8,"character":21},"member":"OnPush"},"selector":"kendo-treeview-drag-clue","template":"\n <ng-container *ngIf=\"!template\">\n <span class=\"k-icon {{statusIconClass}} k-drag-status\"></span>\n <span>{{text}}</span>\n </ng-container>\n\n <ng-template\n *ngIf=\"template\"\n [ngTemplateOutlet]=\"template\"\n [ngTemplateOutletContext]=\"{\n text: text,\n action: action,\n sourceItem: sourceItem,\n destinationItem: destinationItem\n }\"\n >\n </ng-template>\n "}]}],"members":{"hostClasses":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":31,"character":5},"arguments":["class.k-header"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":32,"character":5},"arguments":["class.k-drag-clue"]}]}],"posistionStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":60,"character":5},"arguments":["style.position"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":74,"character":29}]}],"detectChanges":[{"__symbolic":"method"}]}},"DropHintComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":6,"character":21},"member":"OnPush"},"selector":"kendo-treeview-drop-hint","template":"\n <span\n *ngIf=\"!template\"\n class=\"k-icon k-i-drag-and-drop\"\n >\n </span>\n\n <ng-template\n *ngIf=\"template\"\n [ngTemplateOutlet]=\"template\"\n >\n <ng-template>\n "}]}],"members":{"hostClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":24,"character":5},"arguments":["class.k-drop-hint-container"]}]}],"position":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":32,"character":5},"arguments":["style.position"]}]}],"pointerEvents":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":35,"character":5},"arguments":["style.pointer-events"]}]}]}},"CheckBoxModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":12,"character":1},"arguments":[{"declarations":[[{"__symbolic":"reference","name":"CheckBoxComponent"}]],"exports":[[{"__symbolic":"reference","name":"CheckBoxComponent"}]]}]}],"members":{}},"CheckBoxComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":21,"character":1},"arguments":[{"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 "}]}],"members":{"classWrapper":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":44,"character":5},"arguments":["class.k-checkbox-wrapper"]}]}],"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":50,"character":5}}]}],"isChecked":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":55,"character":5}}]}],"node":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":60,"character":5}}]}],"index":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":65,"character":5}}]}],"labelText":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":70,"character":5}}]}],"tabindex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":75,"character":5}}]}],"checkStateChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":80,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":92,"character":33},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":93,"character":34},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":94,"character":40}]}],"ngOnInit":[{"__symbolic":"method"}],"ngDoCheck":[{"__symbolic":"method"}],"handleChange":[{"__symbolic":"method"}]}},"PreventableEvent":{"__symbolic":"class","members":{"preventDefault":[{"__symbolic":"method"}],"isDefaultPrevented":[{"__symbolic":"method"}]}}},"origins":{"TreeViewComponent":"./treeview.component","TreeViewModule":"./treeview.module","NodeTemplateDirective":"./node-template.directive","CheckDirective":"./check.directive","DisableDirective":"./disable.directive","ExpandDirective":"./expand.directive","SelectDirective":"./selection/select.directive","SelectableSettings":"./selection/selectable-settings","CheckableSettings":"./checkable-settings","CheckMode":"./check-mode","CheckedState":"./checkbox/checked-state","HierarchyBindingDirective":"./hierarchy-binding.directive","FlatDataBindingDirective":"./flat-binding.directive","ItemLookup":"./treeitem-lookup.interface","TreeItemLookup":"./treeitem-lookup.interface","TreeItem":"./treeitem.interface","NodeClickEvent":"./node-click-event.interface","DragAndDropDirective":"./drag-and-drop/drag-and-drop.directive","DragAndDropEditingDirective":"./drag-and-drop/drag-and-drop-editing.directive","DropHintTemplateDirective":"./drag-and-drop/drop-hint/drop-hint-template.directive","DragClueTemplateDirective":"./drag-and-drop/drag-clue/drag-clue-template.directive","DropAction":"./drag-and-drop/models/drop-action","DropPosition":"./drag-and-drop/models/drop-position","TreeItemAddRemoveArgs":"./drag-and-drop/models/treeitem-add-remove-args","TreeItemDropEvent":"./drag-and-drop/models/treeitem-drop-event","TreeItemDragStartEvent":"./drag-and-drop/models/treeitem-drag-start-event","TreeItemDragEvent":"./drag-and-drop/models/treeitem-drag-event","EditService":"./drag-and-drop/models/editing-service","ExpandStateService":"./expand-state.service","IndexBuilderService":"./index-builder.service","TreeViewLookupService":"./treeview-lookup.service","LoadingNotificationService":"./loading-notification.service","NodeChildrenService":"./node-children.service","NavigationService":"./navigation/navigation.service","SelectionService":"./selection/selection.service","DataChangeNotificationService":"./data-change-notification.service","DragClueService":"./drag-and-drop/drag-clue/drag-clue.service","DragAndDropAssetService":"./drag-and-drop/editing-services/drag-and-drop-asset.service","DropHintService":"./drag-and-drop/drop-hint/drop-hint.service","SharedModule":"./shared.module","TreeViewGroupComponent":"./treeview-group.component","TreeViewItemDirective":"./treeview-item.directive","TreeViewItemContentDirective":"./treeview-item-content.directive","LoadingIndicatorDirective":"./loading-indicator.directive","DragClueComponent":"./drag-and-drop/drag-clue/drag-clue.component","DropHintComponent":"./drag-and-drop/drop-hint/drop-hint.component","CheckBoxModule":"./checkbox/checkbox.module","CheckBoxComponent":"./checkbox/checkbox.component","PreventableEvent":"./drag-and-drop/models/preventable-event"},"importAs":"@progress/kendo-angular-treeview"}

@@ -72,12 +72,1 @@ /**-----------------------------------------------------------------------------------------

export declare const nodeIndex: (item: NavigationItem | TreeItem) => string;
/**
* @hidden
*
* Retrieves the left, top, width and height of the element, relative to the document left and top.
*/
export declare const elementCoords: (element: Element) => {
left: number;
top: number;
width: number;
height: number;
};

@@ -134,18 +134,1 @@ /**-----------------------------------------------------------------------------------------

export const nodeIndex = (item) => (item || {}).index;
/**
* @hidden
*
* Retrieves the left, top, width and height of the element, relative to the document left and top.
*/
export const elementCoords = (element) => {
if (!isPresent(element) || typeof window === 'undefined') {
return;
}
const viewPortCoords = element.getBoundingClientRect();
return {
left: viewPortCoords.left + window.pageXOffset,
top: viewPortCoords.top + window.pageYOffset,
width: viewPortCoords.width,
height: viewPortCoords.height
};
};

@@ -7,7 +7,57 @@ /**-----------------------------------------------------------------------------------------

Object.defineProperty(exports, "__esModule", { value: true });
var kendo_angular_common_1 = require("@progress/kendo-angular-common");
var utils_1 = require("../utils");
var models_1 = require("./models");
/**
* Checks if the browser supports relative stacking context.
* https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Positioning/Understanding_z_index/The_stacking_context
*/
var hasRelativeStackingContext = function () {
if (!kendo_angular_common_1.isDocumentAvailable()) {
return false;
}
var top = 10;
var parent = document.createElement("div");
parent.style.transform = "matrix(10, 0, 0, 10, 0, 0)";
parent.innerHTML = "<div style=\"position: fixed; top: " + top + "px;\">child</div>";
document.body.appendChild(parent);
var isDifferent = parent.children[0].getBoundingClientRect().top !== top;
document.body.removeChild(parent);
return isDifferent;
};
var ɵ0 = hasRelativeStackingContext;
exports.ɵ0 = ɵ0;
var HAS_RELATIVE_STACKING_CONTEXT = hasRelativeStackingContext();
/**
* @hidden
*
* Gets the offset of the parent element if the latter has the `transform` CSS prop applied.
* Transformed parents create new stacking context and the `fixed` children must be position based on the transformed parent.
* https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Positioning/Understanding_z_index/The_stacking_context
*
* If no parent container is `transform`-ed the function will return `{ left: 0, top: 0 }`;
*/
exports.getContainerOffset = function (element) {
if (!(element && HAS_RELATIVE_STACKING_CONTEXT)) {
return { left: 0, top: 0 };
}
var offsetParent = element.parentElement;
while (offsetParent) {
if (window.getComputedStyle(offsetParent).transform !== 'none') {
break;
}
offsetParent = offsetParent.parentElement;
}
if (offsetParent) {
var rect = offsetParent.getBoundingClientRect();
return {
left: rect.left - offsetParent.scrollLeft,
top: rect.top - offsetParent.scrollTop
};
}
return { left: 0, top: 0 };
};
/**
* @hidden
*/
exports.getDropAction = function (dropPosition, dropTarget) {

@@ -31,4 +81,4 @@ if (!(utils_1.isPresent(dropPosition) && utils_1.isPresent(dropTarget))) {

*/
exports.getDropPosition = function (draggedItem, target, pageY, targetTreeView) {
if (!(utils_1.isPresent(target) && targetTreeView)) {
exports.getDropPosition = function (draggedItem, target, clientY, targetTreeView, containerOffset) {
if (!(utils_1.isPresent(draggedItem) && utils_1.isPresent(target) && utils_1.isPresent(targetTreeView) && utils_1.isPresent(containerOffset))) {
return;

@@ -47,17 +97,20 @@ }

}
var itemCoords = utils_1.elementCoords(content);
var itemViewPortCoords = content.getBoundingClientRect();
/*
if the user is hovering a treeview item, split the item height into four parts:
dropping into the top quarter should insert the dragged item before the drop target
dropping into the bottom quarter should insert the dragged item after the drop target
dropping into the second or third quarter should add the item as child node of the drop target
- dropping into the top quarter should insert the dragged item before the drop target
- dropping into the bottom quarter should insert the dragged item after the drop target
- dropping into the second or third quarter should add the item as child node of the drop target
if the user is NOT hovering a treeview item (he's dragging somewhere in the right), split the item height to just parts:
dropping should insert before or after
- dropping should insert before or after
*/
var itemDivisionHeight = itemCoords.height / (utils_1.isContent(target) ? 4 : 2);
if (pageY < itemCoords.top + itemDivisionHeight) {
var itemDivisionHeight = itemViewPortCoords.height / (utils_1.isContent(target) ? 4 : 2);
// clear any possible container offset created by parent elements with `transform` css property set
var pointerPosition = clientY - containerOffset.top;
var itemTop = itemViewPortCoords.top - containerOffset.top;
if (pointerPosition < itemTop + itemDivisionHeight) {
return models_1.DropPosition.Before;
}
if (pageY >= itemCoords.top + itemCoords.height - itemDivisionHeight) {
if (pointerPosition >= itemTop + itemViewPortCoords.height - itemDivisionHeight) {
return models_1.DropPosition.After;

@@ -64,0 +117,0 @@ }

@@ -52,2 +52,8 @@ /**-----------------------------------------------------------------------------------------

this.userSelectStyle = 'none';
/**
* Describes the offset of the parent element if the latter has the `transform` CSS prop applied.
* Transformed parents create new stacking context and the fixed children must be position based on the transformed parent.
* https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Positioning/Understanding_z_index/The_stacking_context
*/
this.containerOffset = { top: 0, left: 0 };
}

@@ -81,2 +87,3 @@ DragAndDropDirective.prototype.ngAfterContentInit = function () {

this.dragClueService.updateText(this.draggedItem.innerText);
this.containerOffset = drag_and_drop_utils_1.getContainerOffset(this.draggedItem);
};

@@ -88,3 +95,3 @@ /**

var _this = this;
var originalEvent = _a.originalEvent, pageX = _a.pageX, pageY = _a.pageY;
var originalEvent = _a.originalEvent, clientX = _a.clientX, clientY = _a.clientY;
if (!utils_1.isPresent(this.draggedItem)) {

@@ -97,9 +104,9 @@ return;

var targetTreeView = this.getTargetTreeView(originalEvent.target);
var dropPosition = drag_and_drop_utils_1.getDropPosition(this.draggedItem, originalEvent.target, pageY, targetTreeView);
var clueAnchor = utils_1.closestWithMatch(originalEvent.target, '.k-mid');
this.updateDropHintState(dropPosition, clueAnchor);
var dropPosition = drag_and_drop_utils_1.getDropPosition(this.draggedItem, originalEvent.target, clientY, targetTreeView, this.containerOffset);
var dropHintAnchor = utils_1.closestWithMatch(originalEvent.target, '.k-mid');
this.updateDropHintState(dropPosition, dropHintAnchor);
var dropAction = drag_and_drop_utils_1.getDropAction(dropPosition, originalEvent.target);
var sourceItem = drag_and_drop_utils_1.treeItemFromEventTarget(this.treeview, this.draggedItem);
var destinationItem = drag_and_drop_utils_1.treeItemFromEventTarget(targetTreeView, originalEvent.target);
this.updateDragClueState(dropAction, pageX, pageY, sourceItem, destinationItem);
this.updateDragClueState(dropAction, clientX, clientY, sourceItem, destinationItem);
};

@@ -111,3 +118,3 @@ /**

var _this = this;
var originalEvent = _a.originalEvent, pageY = _a.pageY;
var originalEvent = _a.originalEvent, clientY = _a.clientY;
if (!utils_1.isPresent(this.draggedItem)) {

@@ -118,3 +125,3 @@ return;

var destinationTree = this.getTargetTreeView(originalEvent.target);
var dropPosition = drag_and_drop_utils_1.getDropPosition(this.draggedItem, originalEvent.target, pageY, this.getTargetTreeView(originalEvent.target));
var dropPosition = drag_and_drop_utils_1.getDropPosition(this.draggedItem, originalEvent.target, clientY, this.getTargetTreeView(originalEvent.target), this.containerOffset);
var sourceItem = drag_and_drop_utils_1.treeItemFromEventTarget(sourceTree, this.draggedItem);

@@ -139,11 +146,13 @@ var destinationItem = drag_and_drop_utils_1.treeItemFromEventTarget(destinationTree, originalEvent.target);

}
var anchorCoords = utils_1.elementCoords(dropHintAnchor);
var anchorViewPortCoords = dropHintAnchor.getBoundingClientRect();
var insertBefore = dropPosition === models_1.DropPosition.Before;
var top = insertBefore ? anchorCoords.top : (anchorCoords.top + anchorCoords.height);
this.dropHintService.move(anchorCoords.left, top);
var top = insertBefore ? anchorViewPortCoords.top : (anchorViewPortCoords.top + anchorViewPortCoords.height);
// clear any possible container offset created by parent elements with `transform` css property set
this.dropHintService.move(anchorViewPortCoords.left - this.containerOffset.left, top - this.containerOffset.top);
this.dropHintService.show();
};
DragAndDropDirective.prototype.updateDragClueState = function (dropAction, pageX, pageY, sourceItem, destinationItem) {
DragAndDropDirective.prototype.updateDragClueState = function (dropAction, clientX, clientY, sourceItem, destinationItem) {
// clear any possible container offset created by parent elements with `transform` css property set
this.dragClueService.move(clientX - this.containerOffset.left, clientY - this.containerOffset.top);
this.dragClueService.updateDragClueData(dropAction, sourceItem, destinationItem);
this.dragClueService.move(pageX, pageY);
this.dragClueService.show();

@@ -150,0 +159,0 @@ };

@@ -16,2 +16,3 @@ /**-----------------------------------------------------------------------------------------

this.hostClasses = true;
this.posistionStyle = 'fixed';
}

@@ -48,3 +49,4 @@ Object.defineProperty(DragClueComponent.prototype, "statusIconClass", {

DragClueComponent.propDecorators = {
hostClasses: [{ type: core_1.HostBinding, args: ['class.k-header',] }, { type: core_1.HostBinding, args: ['class.k-drag-clue',] }]
hostClasses: [{ type: core_1.HostBinding, args: ['class.k-header',] }, { type: core_1.HostBinding, args: ['class.k-drag-clue',] }],
posistionStyle: [{ type: core_1.HostBinding, args: ['style.position',] }]
};

@@ -51,0 +53,0 @@ return DragClueComponent;

@@ -12,11 +12,19 @@ /**-----------------------------------------------------------------------------------------

var drag_and_drop_asset_service_1 = require("../editing-services/drag-and-drop-asset.service");
var HINT_OFFSET = 10;
var RETURN_ANIMATION_DURATION = 200;
/**
* @hidden
*/
exports.CLUE_OFFSET = 10;
/**
* @hidden
*/
exports.RETURN_ANIMATION_DURATION = 200;
/**
* @hidden
*/
var DragClueService = /** @class */ (function (_super) {
tslib_1.__extends(DragClueService, _super);
function DragClueService() {
return _super !== null && _super.apply(this, arguments) || this;
function DragClueService(componentFactoryResolver) {
var _this = _super.call(this) || this;
_this.componentFactoryResolver = componentFactoryResolver;
return _this;
}

@@ -27,4 +35,4 @@ DragClueService.prototype.initialize = function (container, template) {

}
var hintComponentFactory = this.componetFactoryResolver.resolveComponentFactory(drag_clue_component_1.DragClueComponent);
this.componentRef = container.createComponent(hintComponentFactory);
var clueComponentFactory = this.componentFactoryResolver.resolveComponentFactory(drag_clue_component_1.DragClueComponent);
this.componentRef = container.createComponent(clueComponentFactory);
this.hide();

@@ -39,3 +47,3 @@ this.componentRef.instance.template = template;

DragClueService.prototype.move = function (left, top) {
_super.prototype.move.call(this, left, top, HINT_OFFSET);
_super.prototype.move.call(this, left, top, exports.CLUE_OFFSET);
};

@@ -48,8 +56,8 @@ DragClueService.prototype.animateDragClueToElementPosition = function (target) {

}
var targetElementCoords = target.getBoundingClientRect();
var hintElementCoords = this.element.getBoundingClientRect();
var targetElementViewPortCoords = target.getBoundingClientRect();
var clueElementViewPortCoords = this.element.getBoundingClientRect();
this.returnAnimation = this.element.animate([
{ transform: 'translate(0, 0)' },
{ transform: "translate(" + (targetElementCoords.left - hintElementCoords.left) + "px, " + (targetElementCoords.top - hintElementCoords.top) + "px)" }
], RETURN_ANIMATION_DURATION);
{ transform: "translate(" + (targetElementViewPortCoords.left - clueElementViewPortCoords.left) + "px, " + (targetElementViewPortCoords.top - clueElementViewPortCoords.top) + "px)" }
], exports.RETURN_ANIMATION_DURATION);
this.returnAnimation.onfinish = function () { return _this.hide(); };

@@ -83,4 +91,8 @@ };

];
/** @nocollapse */
DragClueService.ctorParameters = function () { return [
{ type: core_1.ComponentFactoryResolver }
]; };
return DragClueService;
}(drag_and_drop_asset_service_1.DragAndDropAssetService));
exports.DragClueService = DragClueService;

@@ -14,7 +14,4 @@ /**-----------------------------------------------------------------------------------------

this.hostClass = true;
/** TODO: remove once added to the themes */
this.position = 'absolute';
this.zIndex = 2;
this.position = 'fixed';
this.pointerEvents = 'none';
/** ... */
}

@@ -31,3 +28,2 @@ DropHintComponent.decorators = [

position: [{ type: core_1.HostBinding, args: ['style.position',] }],
zIndex: [{ type: core_1.HostBinding, args: ['style.z-index',] }],
pointerEvents: [{ type: core_1.HostBinding, args: ['style.pointer-events',] }]

@@ -34,0 +30,0 @@ };

@@ -17,4 +17,6 @@ /**-----------------------------------------------------------------------------------------

tslib_1.__extends(DropHintService, _super);
function DropHintService() {
return _super !== null && _super.apply(this, arguments) || this;
function DropHintService(componentFactoryResolver) {
var _this = _super.call(this) || this;
_this.componentFactoryResolver = componentFactoryResolver;
return _this;
}

@@ -25,3 +27,3 @@ DropHintService.prototype.initialize = function (container, template) {

}
var hintComponentFactory = this.componetFactoryResolver.resolveComponentFactory(drop_hint_component_1.DropHintComponent);
var hintComponentFactory = this.componentFactoryResolver.resolveComponentFactory(drop_hint_component_1.DropHintComponent);
this.componentRef = container.createComponent(hintComponentFactory);

@@ -35,4 +37,8 @@ this.hide();

];
/** @nocollapse */
DropHintService.ctorParameters = function () { return [
{ type: core_1.ComponentFactoryResolver }
]; };
return DropHintService;
}(drag_and_drop_asset_service_1.DragAndDropAssetService));
exports.DropHintService = DropHintService;

@@ -7,3 +7,2 @@ /**-----------------------------------------------------------------------------------------

Object.defineProperty(exports, "__esModule", { value: true });
var core_1 = require("@angular/core");
var utils_1 = require("../../utils");

@@ -14,4 +13,3 @@ /**

var DragAndDropAssetService = /** @class */ (function () {
function DragAndDropAssetService(componetFactoryResolver) {
this.componetFactoryResolver = componetFactoryResolver;
function DragAndDropAssetService() {
}

@@ -54,14 +52,7 @@ Object.defineProperty(DragAndDropAssetService.prototype, "componentRef", {

if (offset === void 0) { offset = 0; }
this.element.style.left = left + offset + 'px';
this.element.style.top = top + offset + 'px';
this.element.style.left = left + offset + "px";
this.element.style.top = top + offset + "px";
};
DragAndDropAssetService.decorators = [
{ type: core_1.Injectable },
];
/** @nocollapse */
DragAndDropAssetService.ctorParameters = function () { return [
{ type: core_1.ComponentFactoryResolver }
]; };
return DragAndDropAssetService;
}());
exports.DragAndDropAssetService = DragAndDropAssetService;

@@ -136,18 +136,1 @@ /**-----------------------------------------------------------------------------------------

exports.nodeIndex = function (item) { return (item || {}).index; };
/**
* @hidden
*
* Retrieves the left, top, width and height of the element, relative to the document left and top.
*/
exports.elementCoords = function (element) {
if (!exports.isPresent(element) || typeof window === 'undefined') {
return;
}
var viewPortCoords = element.getBoundingClientRect();
return {
left: viewPortCoords.left + window.pageXOffset,
top: viewPortCoords.top + window.pageYOffset,
width: viewPortCoords.width,
height: viewPortCoords.height
};
};

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

"license": "SEE LICENSE IN LICENSE.md",
"version": "4.1.0",
"version": "4.1.1-dev.202002201511",
"main": "dist/npm/index.js",

@@ -62,7 +62,10 @@ "module": "dist/fesm5/index.js",

"@angular/router": "^6.1.10",
"@progress/kendo-angular-buttons": "^5.2.3",
"@progress/kendo-angular-common": "^1.0.0",
"@progress/kendo-angular-dialog": "^4.1.3",
"@progress/kendo-angular-e2e": "^2.0.0",
"@progress/kendo-angular-jest-preset": "^1.1.0",
"@progress/kendo-angular-l10n": "^2.0.0",
"@progress/kendo-angular-tasks": "^15.5.2",
"@progress/kendo-angular-popup": "^3.0.5",
"@progress/kendo-angular-tasks": "^16.0.0",
"@progress/kendo-theme-default": "latest",

@@ -69,0 +72,0 @@ "@telerik/semantic-prerelease": "^1.0.0",

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

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