@ali-hm/angular-tree-component 16.0.1 → 17.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/esm2022/ali-hm-angular-tree-component.mjs +4 -4
  2. package/esm2022/lib/angular-tree-component.module.mjs +99 -99
  3. package/esm2022/lib/components/loading.component.mjs +20 -20
  4. package/esm2022/lib/components/tree-node-checkbox.component.mjs +14 -14
  5. package/esm2022/lib/components/tree-node-collection.component.mjs +119 -119
  6. package/esm2022/lib/components/tree-node-content.component.mjs +22 -22
  7. package/esm2022/lib/components/tree-node-drop-slot.component.mjs +25 -25
  8. package/esm2022/lib/components/tree-node-expander.component.mjs +15 -15
  9. package/esm2022/lib/components/tree-node-wrapper.component.mjs +23 -23
  10. package/esm2022/lib/components/tree-viewport.component.mjs +55 -55
  11. package/esm2022/lib/components/tree.component.mjs +137 -137
  12. package/esm2022/lib/constants/events.mjs +19 -19
  13. package/esm2022/lib/constants/keys.mjs +9 -9
  14. package/esm2022/lib/defs/api.mjs +1 -1
  15. package/esm2022/lib/directives/tree-animate-open.directive.mjs +101 -101
  16. package/esm2022/lib/directives/tree-drag.directive.mjs +65 -65
  17. package/esm2022/lib/directives/tree-drop.directive.mjs +127 -127
  18. package/esm2022/lib/mobx-angular/mobx-proxy.mjs +16 -16
  19. package/esm2022/lib/mobx-angular/tree-mobx-autorun.directive.mjs +40 -40
  20. package/esm2022/lib/models/tree-dragged-element.model.mjs +24 -24
  21. package/esm2022/lib/models/tree-node.model.mjs +389 -389
  22. package/esm2022/lib/models/tree-options.model.mjs +150 -150
  23. package/esm2022/lib/models/tree-virtual-scroll.model.mjs +197 -197
  24. package/esm2022/lib/models/tree.model.mjs +546 -546
  25. package/esm2022/public-api.mjs +4 -4
  26. package/fesm2022/ali-hm-angular-tree-component.mjs +2080 -2080
  27. package/fesm2022/ali-hm-angular-tree-component.mjs.map +1 -1
  28. package/index.d.ts +5 -5
  29. package/lib/angular-tree-component.module.d.ts +43 -43
  30. package/lib/components/loading.component.d.ts +9 -9
  31. package/lib/components/tree-node-checkbox.component.d.ts +7 -7
  32. package/lib/components/tree-node-collection.component.d.ts +34 -34
  33. package/lib/components/tree-node-content.component.d.ts +10 -10
  34. package/lib/components/tree-node-drop-slot.component.d.ts +10 -10
  35. package/lib/components/tree-node-expander.component.d.ts +7 -7
  36. package/lib/components/tree-node-wrapper.component.d.ts +9 -9
  37. package/lib/components/tree-viewport.component.d.ts +17 -17
  38. package/lib/components/tree.component.d.ts +47 -47
  39. package/lib/constants/events.d.ts +19 -19
  40. package/lib/constants/keys.d.ts +9 -9
  41. package/lib/defs/api.d.ts +611 -611
  42. package/lib/directives/tree-animate-open.directive.d.ts +20 -20
  43. package/lib/directives/tree-drag.directive.d.ts +21 -21
  44. package/lib/directives/tree-drop.directive.d.ts +33 -33
  45. package/lib/mobx-angular/mobx-proxy.d.ts +7 -7
  46. package/lib/mobx-angular/tree-mobx-autorun.directive.d.ts +17 -17
  47. package/lib/models/tree-dragged-element.model.d.ts +9 -9
  48. package/lib/models/tree-node.model.d.ts +83 -83
  49. package/lib/models/tree-options.model.d.ts +77 -77
  50. package/lib/models/tree-virtual-scroll.model.d.ts +27 -27
  51. package/lib/models/tree.model.d.ts +91 -91
  52. package/package.json +3 -3
  53. package/public-api.d.ts +1 -1
@@ -1,66 +1,66 @@
1
- import { Component, } from '@angular/core';
2
- import { TreeVirtualScroll } from '../models/tree-virtual-scroll.model';
3
- import { TREE_EVENTS } from '../constants/events';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../models/tree-virtual-scroll.model";
6
- import * as i2 from "../mobx-angular/tree-mobx-autorun.directive";
7
- export class TreeViewportComponent {
8
- constructor(elementRef, virtualScroll) {
9
- this.elementRef = elementRef;
10
- this.virtualScroll = virtualScroll;
11
- this.setViewport = this.throttle(() => {
12
- this.virtualScroll.setViewport(this.elementRef.nativeElement);
13
- }, 17);
14
- this.scrollEventHandler = this.setViewport.bind(this);
15
- }
16
- ngOnInit() {
17
- this.virtualScroll.init();
18
- }
19
- ngAfterViewInit() {
20
- setTimeout(() => {
21
- this.setViewport();
22
- this.virtualScroll.fireEvent({ eventName: TREE_EVENTS.initialized });
23
- });
24
- let el = this.elementRef.nativeElement;
25
- el.addEventListener('scroll', this.scrollEventHandler);
26
- }
27
- ngOnDestroy() {
28
- this.virtualScroll.clear();
29
- let el = this.elementRef.nativeElement;
30
- el.removeEventListener('scroll', this.scrollEventHandler);
31
- }
32
- getTotalHeight() {
33
- return ((this.virtualScroll.isEnabled() &&
34
- this.virtualScroll.totalHeight + 'px') ||
35
- 'auto');
36
- }
37
- throttle(func, timeFrame) {
38
- let lastTime = 0;
39
- return function () {
40
- let now = Date.now();
41
- if (now - lastTime >= timeFrame) {
42
- func();
43
- lastTime = now;
44
- }
45
- };
46
- }
47
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TreeViewportComponent, deps: [{ token: i0.ElementRef }, { token: i1.TreeVirtualScroll }], target: i0.ɵɵFactoryTarget.Component }); }
48
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TreeViewportComponent, selector: "tree-viewport", providers: [TreeVirtualScroll], ngImport: i0, template: `
1
+ import { Component, } from '@angular/core';
2
+ import { TreeVirtualScroll } from '../models/tree-virtual-scroll.model';
3
+ import { TREE_EVENTS } from '../constants/events';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../models/tree-virtual-scroll.model";
6
+ import * as i2 from "../mobx-angular/tree-mobx-autorun.directive";
7
+ export class TreeViewportComponent {
8
+ constructor(elementRef, virtualScroll) {
9
+ this.elementRef = elementRef;
10
+ this.virtualScroll = virtualScroll;
11
+ this.setViewport = this.throttle(() => {
12
+ this.virtualScroll.setViewport(this.elementRef.nativeElement);
13
+ }, 17);
14
+ this.scrollEventHandler = this.setViewport.bind(this);
15
+ }
16
+ ngOnInit() {
17
+ this.virtualScroll.init();
18
+ }
19
+ ngAfterViewInit() {
20
+ setTimeout(() => {
21
+ this.setViewport();
22
+ this.virtualScroll.fireEvent({ eventName: TREE_EVENTS.initialized });
23
+ });
24
+ let el = this.elementRef.nativeElement;
25
+ el.addEventListener('scroll', this.scrollEventHandler);
26
+ }
27
+ ngOnDestroy() {
28
+ this.virtualScroll.clear();
29
+ let el = this.elementRef.nativeElement;
30
+ el.removeEventListener('scroll', this.scrollEventHandler);
31
+ }
32
+ getTotalHeight() {
33
+ return ((this.virtualScroll.isEnabled() &&
34
+ this.virtualScroll.totalHeight + 'px') ||
35
+ 'auto');
36
+ }
37
+ throttle(func, timeFrame) {
38
+ let lastTime = 0;
39
+ return function () {
40
+ let now = Date.now();
41
+ if (now - lastTime >= timeFrame) {
42
+ func();
43
+ lastTime = now;
44
+ }
45
+ };
46
+ }
47
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TreeViewportComponent, deps: [{ token: i0.ElementRef }, { token: i1.TreeVirtualScroll }], target: i0.ɵɵFactoryTarget.Component }); }
48
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TreeViewportComponent, selector: "tree-viewport", providers: [TreeVirtualScroll], ngImport: i0, template: `
49
49
  <ng-container *treeMobxAutorun="{ dontDetach: true }">
50
50
  <div [style.height]="getTotalHeight()">
51
51
  <ng-content></ng-content>
52
52
  </div>
53
53
  </ng-container>
54
- `, isInline: true, dependencies: [{ kind: "directive", type: i2.TreeMobxAutorunDirective, selector: "[treeMobxAutorun]", inputs: ["treeMobxAutorun"] }] }); }
55
- }
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TreeViewportComponent, decorators: [{
57
- type: Component,
54
+ `, isInline: true, dependencies: [{ kind: "directive", type: i2.TreeMobxAutorunDirective, selector: "[treeMobxAutorun]", inputs: ["treeMobxAutorun"] }] }); }
55
+ }
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TreeViewportComponent, decorators: [{
57
+ type: Component,
58
58
  args: [{ selector: 'tree-viewport', providers: [TreeVirtualScroll], template: `
59
59
  <ng-container *treeMobxAutorun="{ dontDetach: true }">
60
60
  <div [style.height]="getTotalHeight()">
61
61
  <ng-content></ng-content>
62
62
  </div>
63
63
  </ng-container>
64
- ` }]
65
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.TreeVirtualScroll }]; } });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS12aWV3cG9ydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRyZWUtY29tcG9uZW50L3NyYy9saWIvY29tcG9uZW50cy90cmVlLXZpZXdwb3J0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxHQUtWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7OztBQWNsRCxNQUFNLE9BQU8scUJBQXFCO0lBT2hDLFlBQ1UsVUFBc0IsRUFDdkIsYUFBZ0M7UUFEL0IsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN2QixrQkFBYSxHQUFiLGFBQWEsQ0FBbUI7UUFSekMsZ0JBQVcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUMvQixJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2hFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQVFMLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELGVBQWU7UUFDYixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEVBQUUsU0FBUyxFQUFFLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZFLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxFQUFFLEdBQWdCLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO1FBQ3BELEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzNCLElBQUksRUFBRSxHQUFnQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztRQUNwRCxFQUFFLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyxDQUNMLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1lBQ3hDLE1BQU0sQ0FDUCxDQUFDO0lBQ0osQ0FBQztJQUVPLFFBQVEsQ0FBQyxJQUFJLEVBQUUsU0FBUztRQUM5QixJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDakIsT0FBTztZQUNMLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNyQixJQUFJLEdBQUcsR0FBRyxRQUFRLElBQUksU0FBUyxFQUFFO2dCQUMvQixJQUFJLEVBQUUsQ0FBQztnQkFDUCxRQUFRLEdBQUcsR0FBRyxDQUFDO2FBQ2hCO1FBQ0gsQ0FBQyxDQUFDO0lBQ0osQ0FBQztrSUFsRFUscUJBQXFCO3NIQUFyQixxQkFBcUIsd0NBVHJCLENBQUMsaUJBQWlCLENBQUMsMEJBQ3BCOzs7Ozs7R0FNVDs7NEZBRVUscUJBQXFCO2tCQVpqQyxTQUFTOytCQUNFLGVBQWUsYUFFZCxDQUFDLGlCQUFpQixDQUFDLFlBQ3BCOzs7Ozs7R0FNVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBPbkluaXQsXHJcbiAgT25EZXN0cm95LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUcmVlVmlydHVhbFNjcm9sbCB9IGZyb20gJy4uL21vZGVscy90cmVlLXZpcnR1YWwtc2Nyb2xsLm1vZGVsJztcclxuaW1wb3J0IHsgVFJFRV9FVkVOVFMgfSBmcm9tICcuLi9jb25zdGFudHMvZXZlbnRzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndHJlZS12aWV3cG9ydCcsXHJcbiAgc3R5bGVzOiBbXSxcclxuICBwcm92aWRlcnM6IFtUcmVlVmlydHVhbFNjcm9sbF0sXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxuZy1jb250YWluZXIgKnRyZWVNb2J4QXV0b3J1bj1cInsgZG9udERldGFjaDogdHJ1ZSB9XCI+XHJcbiAgICAgIDxkaXYgW3N0eWxlLmhlaWdodF09XCJnZXRUb3RhbEhlaWdodCgpXCI+XHJcbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIGBcclxufSlcclxuZXhwb3J0IGNsYXNzIFRyZWVWaWV3cG9ydENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBzZXRWaWV3cG9ydCA9IHRoaXMudGhyb3R0bGUoKCkgPT4ge1xyXG4gICAgdGhpcy52aXJ0dWFsU2Nyb2xsLnNldFZpZXdwb3J0KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcclxuICB9LCAxNyk7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgc2Nyb2xsRXZlbnRIYW5kbGVyOiAoJGV2ZW50OiBFdmVudCkgPT4gdm9pZDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICBwdWJsaWMgdmlydHVhbFNjcm9sbDogVHJlZVZpcnR1YWxTY3JvbGxcclxuICApIHtcclxuICAgIHRoaXMuc2Nyb2xsRXZlbnRIYW5kbGVyID0gdGhpcy5zZXRWaWV3cG9ydC5iaW5kKHRoaXMpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnZpcnR1YWxTY3JvbGwuaW5pdCgpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuc2V0Vmlld3BvcnQoKTtcclxuICAgICAgdGhpcy52aXJ0dWFsU2Nyb2xsLmZpcmVFdmVudCh7IGV2ZW50TmFtZTogVFJFRV9FVkVOVFMuaW5pdGlhbGl6ZWQgfSk7XHJcbiAgICB9KTtcclxuICAgIGxldCBlbDogSFRNTEVsZW1lbnQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcclxuICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIHRoaXMuc2Nyb2xsRXZlbnRIYW5kbGVyKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy52aXJ0dWFsU2Nyb2xsLmNsZWFyKCk7XHJcbiAgICBsZXQgZWw6IEhUTUxFbGVtZW50ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBlbC5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLnNjcm9sbEV2ZW50SGFuZGxlcik7XHJcbiAgfVxyXG5cclxuICBnZXRUb3RhbEhlaWdodCgpIHtcclxuICAgIHJldHVybiAoXHJcbiAgICAgICh0aGlzLnZpcnR1YWxTY3JvbGwuaXNFbmFibGVkKCkgJiZcclxuICAgICAgICB0aGlzLnZpcnR1YWxTY3JvbGwudG90YWxIZWlnaHQgKyAncHgnKSB8fFxyXG4gICAgICAnYXV0bydcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHRocm90dGxlKGZ1bmMsIHRpbWVGcmFtZSkge1xyXG4gICAgbGV0IGxhc3RUaW1lID0gMDtcclxuICAgIHJldHVybiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgIGxldCBub3cgPSBEYXRlLm5vdygpO1xyXG4gICAgICBpZiAobm93IC0gbGFzdFRpbWUgPj0gdGltZUZyYW1lKSB7XHJcbiAgICAgICAgZnVuYygpO1xyXG4gICAgICAgIGxhc3RUaW1lID0gbm93O1xyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=
64
+ ` }]
65
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.TreeVirtualScroll }] });
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS12aWV3cG9ydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRyZWUtY29tcG9uZW50L3NyYy9saWIvY29tcG9uZW50cy90cmVlLXZpZXdwb3J0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxHQUtWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7OztBQWNsRCxNQUFNLE9BQU8scUJBQXFCO0lBT2hDLFlBQ1UsVUFBc0IsRUFDdkIsYUFBZ0M7UUFEL0IsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN2QixrQkFBYSxHQUFiLGFBQWEsQ0FBbUI7UUFSekMsZ0JBQVcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUMvQixJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2hFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQVFMLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELGVBQWU7UUFDYixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEVBQUUsU0FBUyxFQUFFLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZFLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxFQUFFLEdBQWdCLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO1FBQ3BELEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzNCLElBQUksRUFBRSxHQUFnQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztRQUNwRCxFQUFFLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyxDQUNMLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1lBQ3hDLE1BQU0sQ0FDUCxDQUFDO0lBQ0osQ0FBQztJQUVPLFFBQVEsQ0FBQyxJQUFJLEVBQUUsU0FBUztRQUM5QixJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDakIsT0FBTztZQUNMLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNyQixJQUFJLEdBQUcsR0FBRyxRQUFRLElBQUksU0FBUyxFQUFFLENBQUM7Z0JBQ2hDLElBQUksRUFBRSxDQUFDO2dCQUNQLFFBQVEsR0FBRyxHQUFHLENBQUM7WUFDakIsQ0FBQztRQUNILENBQUMsQ0FBQztJQUNKLENBQUM7a0lBbERVLHFCQUFxQjtzSEFBckIscUJBQXFCLHdDQVRyQixDQUFDLGlCQUFpQixDQUFDLDBCQUNwQjs7Ozs7O0dBTVQ7OzRGQUVVLHFCQUFxQjtrQkFaakMsU0FBUzsrQkFDRSxlQUFlLGFBRWQsQ0FBQyxpQkFBaUIsQ0FBQyxZQUNwQjs7Ozs7O0dBTVQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgT25Jbml0LFxyXG4gIE9uRGVzdHJveSxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVHJlZVZpcnR1YWxTY3JvbGwgfSBmcm9tICcuLi9tb2RlbHMvdHJlZS12aXJ0dWFsLXNjcm9sbC5tb2RlbCc7XHJcbmltcG9ydCB7IFRSRUVfRVZFTlRTIH0gZnJvbSAnLi4vY29uc3RhbnRzL2V2ZW50cyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3RyZWUtdmlld3BvcnQnLFxyXG4gIHN0eWxlczogW10sXHJcbiAgcHJvdmlkZXJzOiBbVHJlZVZpcnR1YWxTY3JvbGxdLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8bmctY29udGFpbmVyICp0cmVlTW9ieEF1dG9ydW49XCJ7IGRvbnREZXRhY2g6IHRydWUgfVwiPlxyXG4gICAgICA8ZGl2IFtzdHlsZS5oZWlnaHRdPVwiZ2V0VG90YWxIZWlnaHQoKVwiPlxyXG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICBgXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmVlVmlld3BvcnRDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgc2V0Vmlld3BvcnQgPSB0aGlzLnRocm90dGxlKCgpID0+IHtcclxuICAgIHRoaXMudmlydHVhbFNjcm9sbC5zZXRWaWV3cG9ydCh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XHJcbiAgfSwgMTcpO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IHNjcm9sbEV2ZW50SGFuZGxlcjogKCRldmVudDogRXZlbnQpID0+IHZvaWQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgcHVibGljIHZpcnR1YWxTY3JvbGw6IFRyZWVWaXJ0dWFsU2Nyb2xsXHJcbiAgKSB7XHJcbiAgICB0aGlzLnNjcm9sbEV2ZW50SGFuZGxlciA9IHRoaXMuc2V0Vmlld3BvcnQuYmluZCh0aGlzKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy52aXJ0dWFsU2Nyb2xsLmluaXQoKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLnNldFZpZXdwb3J0KCk7XHJcbiAgICAgIHRoaXMudmlydHVhbFNjcm9sbC5maXJlRXZlbnQoeyBldmVudE5hbWU6IFRSRUVfRVZFTlRTLmluaXRpYWxpemVkIH0pO1xyXG4gICAgfSk7XHJcbiAgICBsZXQgZWw6IEhUTUxFbGVtZW50ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBlbC5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLnNjcm9sbEV2ZW50SGFuZGxlcik7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMudmlydHVhbFNjcm9sbC5jbGVhcigpO1xyXG4gICAgbGV0IGVsOiBIVE1MRWxlbWVudCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xyXG4gICAgZWwucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgdGhpcy5zY3JvbGxFdmVudEhhbmRsZXIpO1xyXG4gIH1cclxuXHJcbiAgZ2V0VG90YWxIZWlnaHQoKSB7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAodGhpcy52aXJ0dWFsU2Nyb2xsLmlzRW5hYmxlZCgpICYmXHJcbiAgICAgICAgdGhpcy52aXJ0dWFsU2Nyb2xsLnRvdGFsSGVpZ2h0ICsgJ3B4JykgfHxcclxuICAgICAgJ2F1dG8nXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB0aHJvdHRsZShmdW5jLCB0aW1lRnJhbWUpIHtcclxuICAgIGxldCBsYXN0VGltZSA9IDA7XHJcbiAgICByZXR1cm4gZnVuY3Rpb24gKCkge1xyXG4gICAgICBsZXQgbm93ID0gRGF0ZS5ub3coKTtcclxuICAgICAgaWYgKG5vdyAtIGxhc3RUaW1lID49IHRpbWVGcmFtZSkge1xyXG4gICAgICAgIGZ1bmMoKTtcclxuICAgICAgICBsYXN0VGltZSA9IG5vdztcclxuICAgICAgfVxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,70 +1,70 @@
1
- import { Component, ContentChild, EventEmitter, HostListener, Input, Output, ViewChild } from '@angular/core';
2
- import { TreeModel } from '../models/tree.model';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../models/tree.model";
5
- import * as i2 from "../models/tree-dragged-element.model";
6
- import * as i3 from "@angular/common";
7
- import * as i4 from "./tree-node-drop-slot.component";
8
- import * as i5 from "./tree-node-collection.component";
9
- import * as i6 from "./tree-viewport.component";
10
- export class TreeComponent {
11
- // Will be handled in ngOnChanges
12
- set nodes(nodes) {
13
- }
14
- ;
15
- set options(options) {
16
- }
17
- ;
18
- set focused(value) {
19
- this.treeModel.setFocus(value);
20
- }
21
- set state(state) {
22
- this.treeModel.setState(state);
23
- }
24
- constructor(treeModel, treeDraggedElement) {
25
- this.treeModel = treeModel;
26
- this.treeDraggedElement = treeDraggedElement;
27
- treeModel.eventNames.forEach((name) => this[name] = new EventEmitter());
28
- treeModel.subscribeToState((state) => this.stateChange.emit(state));
29
- }
30
- onKeydown($event) {
31
- if (!this.treeModel.isFocused)
32
- return;
33
- if (['input', 'textarea'].includes(document.activeElement.tagName.toLowerCase()))
34
- return;
35
- const focusedNode = this.treeModel.getFocusedNode();
36
- this.treeModel.performKeyAction(focusedNode, $event);
37
- }
38
- onMousedown($event) {
39
- function isOutsideClick(startElement, nodeName) {
40
- return !startElement ? true : startElement.localName === nodeName ? false : isOutsideClick(startElement.parentElement, nodeName);
41
- }
42
- if (isOutsideClick($event.target, 'tree-root')) {
43
- this.treeModel.setFocus(false);
44
- }
45
- }
46
- ngOnChanges(changes) {
47
- if (changes.options || changes.nodes) {
48
- this.treeModel.setData({
49
- options: changes.options && changes.options.currentValue,
50
- nodes: changes.nodes && changes.nodes.currentValue,
51
- events: this.pick(this, this.treeModel.eventNames)
52
- });
53
- }
54
- }
55
- sizeChanged() {
56
- this.viewportComponent.setViewport();
57
- }
58
- pick(object, keys) {
59
- return keys.reduce((obj, key) => {
60
- if (object && object.hasOwnProperty(key)) {
61
- obj[key] = object[key];
62
- }
63
- return obj;
64
- }, {});
65
- }
66
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TreeComponent, deps: [{ token: i1.TreeModel }, { token: i2.TreeDraggedElement }], target: i0.ɵɵFactoryTarget.Component }); }
67
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TreeComponent, selector: "Tree, tree-root", inputs: { nodes: "nodes", options: "options", focused: "focused", state: "state" }, outputs: { toggleExpanded: "toggleExpanded", activate: "activate", deactivate: "deactivate", nodeActivate: "nodeActivate", nodeDeactivate: "nodeDeactivate", select: "select", deselect: "deselect", focus: "focus", blur: "blur", updateData: "updateData", initialized: "initialized", moveNode: "moveNode", copyNode: "copyNode", loadNodeChildren: "loadNodeChildren", changeFilter: "changeFilter", event: "event", stateChange: "stateChange" }, host: { listeners: { "body: keydown": "onKeydown($event)", "body: mousedown": "onMousedown($event)" } }, providers: [TreeModel], queries: [{ propertyName: "loadingTemplate", first: true, predicate: ["loadingTemplate"], descendants: true }, { propertyName: "treeNodeTemplate", first: true, predicate: ["treeNodeTemplate"], descendants: true }, { propertyName: "treeNodeWrapperTemplate", first: true, predicate: ["treeNodeWrapperTemplate"], descendants: true }, { propertyName: "treeNodeFullTemplate", first: true, predicate: ["treeNodeFullTemplate"], descendants: true }], viewQueries: [{ propertyName: "viewportComponent", first: true, predicate: ["viewport"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
1
+ import { Component, ContentChild, EventEmitter, HostListener, Input, Output, ViewChild } from '@angular/core';
2
+ import { TreeModel } from '../models/tree.model';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../models/tree.model";
5
+ import * as i2 from "../models/tree-dragged-element.model";
6
+ import * as i3 from "@angular/common";
7
+ import * as i4 from "./tree-node-drop-slot.component";
8
+ import * as i5 from "./tree-node-collection.component";
9
+ import * as i6 from "./tree-viewport.component";
10
+ export class TreeComponent {
11
+ // Will be handled in ngOnChanges
12
+ set nodes(nodes) {
13
+ }
14
+ ;
15
+ set options(options) {
16
+ }
17
+ ;
18
+ set focused(value) {
19
+ this.treeModel.setFocus(value);
20
+ }
21
+ set state(state) {
22
+ this.treeModel.setState(state);
23
+ }
24
+ constructor(treeModel, treeDraggedElement) {
25
+ this.treeModel = treeModel;
26
+ this.treeDraggedElement = treeDraggedElement;
27
+ treeModel.eventNames.forEach((name) => this[name] = new EventEmitter());
28
+ treeModel.subscribeToState((state) => this.stateChange.emit(state));
29
+ }
30
+ onKeydown($event) {
31
+ if (!this.treeModel.isFocused)
32
+ return;
33
+ if (['input', 'textarea'].includes(document.activeElement.tagName.toLowerCase()))
34
+ return;
35
+ const focusedNode = this.treeModel.getFocusedNode();
36
+ this.treeModel.performKeyAction(focusedNode, $event);
37
+ }
38
+ onMousedown($event) {
39
+ function isOutsideClick(startElement, nodeName) {
40
+ return !startElement ? true : startElement.localName === nodeName ? false : isOutsideClick(startElement.parentElement, nodeName);
41
+ }
42
+ if (isOutsideClick($event.target, 'tree-root')) {
43
+ this.treeModel.setFocus(false);
44
+ }
45
+ }
46
+ ngOnChanges(changes) {
47
+ if (changes.options || changes.nodes) {
48
+ this.treeModel.setData({
49
+ options: changes.options && changes.options.currentValue,
50
+ nodes: changes.nodes && changes.nodes.currentValue,
51
+ events: this.pick(this, this.treeModel.eventNames)
52
+ });
53
+ }
54
+ }
55
+ sizeChanged() {
56
+ this.viewportComponent.setViewport();
57
+ }
58
+ pick(object, keys) {
59
+ return keys.reduce((obj, key) => {
60
+ if (object && object.hasOwnProperty(key)) {
61
+ obj[key] = object[key];
62
+ }
63
+ return obj;
64
+ }, {});
65
+ }
66
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TreeComponent, deps: [{ token: i1.TreeModel }, { token: i2.TreeDraggedElement }], target: i0.ɵɵFactoryTarget.Component }); }
67
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TreeComponent, selector: "Tree, tree-root", inputs: { nodes: "nodes", options: "options", focused: "focused", state: "state" }, outputs: { toggleExpanded: "toggleExpanded", activate: "activate", deactivate: "deactivate", nodeActivate: "nodeActivate", nodeDeactivate: "nodeDeactivate", select: "select", deselect: "deselect", focus: "focus", blur: "blur", updateData: "updateData", initialized: "initialized", moveNode: "moveNode", copyNode: "copyNode", loadNodeChildren: "loadNodeChildren", changeFilter: "changeFilter", event: "event", stateChange: "stateChange" }, host: { listeners: { "body: keydown": "onKeydown($event)", "body: mousedown": "onMousedown($event)" } }, providers: [TreeModel], queries: [{ propertyName: "loadingTemplate", first: true, predicate: ["loadingTemplate"], descendants: true }, { propertyName: "treeNodeTemplate", first: true, predicate: ["treeNodeTemplate"], descendants: true }, { propertyName: "treeNodeWrapperTemplate", first: true, predicate: ["treeNodeWrapperTemplate"], descendants: true }, { propertyName: "treeNodeFullTemplate", first: true, predicate: ["treeNodeFullTemplate"], descendants: true }], viewQueries: [{ propertyName: "viewportComponent", first: true, predicate: ["viewport"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
68
68
  <tree-viewport #viewport>
69
69
  <div
70
70
  class="angular-tree-component"
@@ -89,10 +89,10 @@ export class TreeComponent {
89
89
  </tree-node-drop-slot>
90
90
  </div>
91
91
  </tree-viewport>
92
- `, isInline: true, dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.TreeNodeDropSlot, selector: "TreeNodeDropSlot, tree-node-drop-slot", inputs: ["node", "dropIndex"] }, { kind: "component", type: i5.TreeNodeCollectionComponent, selector: "tree-node-collection", inputs: ["nodes", "treeModel", "templates"] }, { kind: "component", type: i6.TreeViewportComponent, selector: "tree-viewport" }] }); }
93
- }
94
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TreeComponent, decorators: [{
95
- type: Component,
92
+ `, isInline: true, dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.TreeNodeDropSlot, selector: "TreeNodeDropSlot, tree-node-drop-slot", inputs: ["node", "dropIndex"] }, { kind: "component", type: i5.TreeNodeCollectionComponent, selector: "tree-node-collection", inputs: ["nodes", "treeModel", "templates"] }, { kind: "component", type: i6.TreeViewportComponent, selector: "tree-viewport" }] }); }
93
+ }
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TreeComponent, decorators: [{
95
+ type: Component,
96
96
  args: [{ selector: 'Tree, tree-root', providers: [TreeModel], template: `
97
97
  <tree-viewport #viewport>
98
98
  <div
@@ -118,69 +118,69 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
118
118
  </tree-node-drop-slot>
119
119
  </div>
120
120
  </tree-viewport>
121
- ` }]
122
- }], ctorParameters: function () { return [{ type: i1.TreeModel }, { type: i2.TreeDraggedElement }]; }, propDecorators: { loadingTemplate: [{
123
- type: ContentChild,
124
- args: ['loadingTemplate', { static: false }]
125
- }], treeNodeTemplate: [{
126
- type: ContentChild,
127
- args: ['treeNodeTemplate', { static: false }]
128
- }], treeNodeWrapperTemplate: [{
129
- type: ContentChild,
130
- args: ['treeNodeWrapperTemplate', { static: false }]
131
- }], treeNodeFullTemplate: [{
132
- type: ContentChild,
133
- args: ['treeNodeFullTemplate', { static: false }]
134
- }], viewportComponent: [{
135
- type: ViewChild,
136
- args: ['viewport', { static: false }]
137
- }], nodes: [{
138
- type: Input
139
- }], options: [{
140
- type: Input
141
- }], focused: [{
142
- type: Input
143
- }], state: [{
144
- type: Input
145
- }], toggleExpanded: [{
146
- type: Output
147
- }], activate: [{
148
- type: Output
149
- }], deactivate: [{
150
- type: Output
151
- }], nodeActivate: [{
152
- type: Output
153
- }], nodeDeactivate: [{
154
- type: Output
155
- }], select: [{
156
- type: Output
157
- }], deselect: [{
158
- type: Output
159
- }], focus: [{
160
- type: Output
161
- }], blur: [{
162
- type: Output
163
- }], updateData: [{
164
- type: Output
165
- }], initialized: [{
166
- type: Output
167
- }], moveNode: [{
168
- type: Output
169
- }], copyNode: [{
170
- type: Output
171
- }], loadNodeChildren: [{
172
- type: Output
173
- }], changeFilter: [{
174
- type: Output
175
- }], event: [{
176
- type: Output
177
- }], stateChange: [{
178
- type: Output
179
- }], onKeydown: [{
180
- type: HostListener,
181
- args: ['body: keydown', ['$event']]
182
- }], onMousedown: [{
183
- type: HostListener,
184
- args: ['body: mousedown', ['$event']]
185
- }] } });
186
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRyZWUtY29tcG9uZW50L3NyYy9saWIvY29tcG9uZW50cy90cmVlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQWUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RJLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7QUFxQ2pELE1BQU0sT0FBTyxhQUFhO0lBVXhCLGlDQUFpQztJQUNqQyxJQUFhLEtBQUssQ0FBQyxLQUFZO0lBQy9CLENBQUM7SUFBQSxDQUFDO0lBRUYsSUFBYSxPQUFPLENBQUMsT0FBcUI7SUFDMUMsQ0FBQztJQUFBLENBQUM7SUFFRixJQUFhLE9BQU8sQ0FBQyxLQUFjO1FBQ2pDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFhLEtBQUssQ0FBQyxLQUFLO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFvQkQsWUFDUyxTQUFvQixFQUNwQixrQkFBc0M7UUFEdEMsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBRTdDLFNBQVMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQ3hFLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FB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LE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ2IsaUJBQWlCO3NCQUExRCxTQUFTO3VCQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBRzNCLEtBQUs7c0JBQWpCLEtBQUs7Z0JBR08sT0FBTztzQkFBbkIsS0FBSztnQkFHTyxPQUFPO3NCQUFuQixLQUFLO2dCQUlPLEtBQUs7c0JBQWpCLEtBQUs7Z0JBSUksY0FBYztzQkFBdkIsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxjQUFjO3NCQUF2QixNQUFNO2dCQUNHLE1BQU07c0JBQWYsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLEtBQUs7c0JBQWQsTUFBTTtnQkFDRyxJQUFJO3NCQUFiLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxLQUFLO3NCQUFkLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTTtnQkFXUCxTQUFTO3NCQURSLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVd6QyxXQUFXO3NCQURWLFlBQVk7dUJBQUMsaUJBQWlCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUcmVlTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvdHJlZS5tb2RlbCc7XHJcbmltcG9ydCB7IFRyZWVEcmFnZ2VkRWxlbWVudCB9IGZyb20gJy4uL21vZGVscy90cmVlLWRyYWdnZWQtZWxlbWVudC5tb2RlbCc7XHJcbmltcG9ydCB7IFRyZWVPcHRpb25zIH0gZnJvbSAnLi4vbW9kZWxzL3RyZWUtb3B0aW9ucy5tb2RlbCc7XHJcbmltcG9ydCB7IElUcmVlT3B0aW9ucyB9IGZyb20gJy4uL2RlZnMvYXBpJztcclxuaW1wb3J0IHsgVHJlZVZpZXdwb3J0Q29tcG9uZW50IH0gZnJvbSAnLi90cmVlLXZpZXdwb3J0LmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ1RyZWUsIHRyZWUtcm9vdCcsXHJcbiAgcHJvdmlkZXJzOiBbVHJlZU1vZGVsXSxcclxuICBzdHlsZXM6IFtdLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICAgIDx0cmVlLXZpZXdwb3J0ICN2aWV3cG9ydD5cclxuICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhbmd1bGFyLXRyZWUtY29tcG9uZW50XCJcclxuICAgICAgICAgICAgICAgICAgW2NsYXNzLm5vZGUtZHJhZ2dpbmddPVwidHJlZURyYWdnZWRFbGVtZW50LmlzRHJhZ2dpbmcoKVwiXHJcbiAgICAgICAgICAgICAgICAgIFtjbGFzcy5hbmd1bGFyLXRyZWUtY29tcG9uZW50LXJ0bF09XCJ0cmVlTW9kZWwub3B0aW9ucy5ydGxcIj5cclxuICAgICAgICAgICAgICA8dHJlZS1ub2RlLWNvbGxlY3Rpb25cclxuICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwidHJlZU1vZGVsLnJvb3RzXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtub2Rlc109XCJ0cmVlTW9kZWwucm9vdHNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW3RyZWVNb2RlbF09XCJ0cmVlTW9kZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW3RlbXBsYXRlc109XCJ7XHJcbiAgICAgICAgICAgIGxvYWRpbmdUZW1wbGF0ZTogbG9hZGluZ1RlbXBsYXRlLFxyXG4gICAgICAgICAgICB0cmVlTm9kZVRlbXBsYXRlOiB0cmVlTm9kZVRlbXBsYXRlLFxyXG4gICAgICAgICAgICB0cmVlTm9kZVdyYXBwZXJUZW1wbGF0ZTogdHJlZU5vZGVXcmFwcGVyVGVtcGxhdGUsXHJcbiAgICAgICAgICAgIHRyZWVOb2RlRnVsbFRlbXBsYXRlOiB0cmVlTm9kZUZ1bGxUZW1wbGF0ZVxyXG4gICAgICAgICAgfVwiPlxyXG4gICAgICAgICAgICAgIDwvdHJlZS1ub2RlLWNvbGxlY3Rpb24+XHJcbiAgICAgICAgICAgICAgPHRyZWUtbm9kZS1kcm9wLXNsb3RcclxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZW1wdHktdHJlZS1kcm9wLXNsb3RcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ0cmVlTW9kZWwuaXNFbXB0eVRyZWUoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbZHJvcEluZGV4XT1cIjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW25vZGVdPVwidHJlZU1vZGVsLnZpcnR1YWxSb290XCI+XHJcbiAgICAgICAgICAgICAgPC90cmVlLW5vZGUtZHJvcC1zbG90PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvdHJlZS12aWV3cG9ydD5cclxuICBgXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmVlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICBfbm9kZXM6IGFueVtdO1xyXG4gIF9vcHRpb25zOiBUcmVlT3B0aW9ucztcclxuXHJcbiAgQENvbnRlbnRDaGlsZCgnbG9hZGluZ1RlbXBsYXRlJywgeyBzdGF0aWM6IGZhbHNlIH0pIGxvYWRpbmdUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBAQ29udGVudENoaWxkKCd0cmVlTm9kZVRlbXBsYXRlJywgeyBzdGF0aWM6IGZhbHNlIH0pIHRyZWVOb2RlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQENvbnRlbnRDaGlsZCgndHJlZU5vZGVXcmFwcGVyVGVtcGxhdGUnLCB7IHN0YXRpYzogZmFsc2UgfSkgdHJlZU5vZGVXcmFwcGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQENvbnRlbnRDaGlsZCgndHJlZU5vZGVGdWxsVGVtcGxhdGUnLCB7IHN0YXRpYzogZmFsc2UgfSkgdHJlZU5vZGVGdWxsVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQFZpZXdDaGlsZCgndmlld3BvcnQnLCB7IHN0YXRpYzogZmFsc2UgfSkgdmlld3BvcnRDb21wb25lbnQ6IFRyZWVWaWV3cG9ydENvbXBvbmVudDtcclxuXHJcbiAgLy8gV2lsbCBiZSBoYW5kbGVkIGluIG5nT25DaGFuZ2VzXHJcbiAgQElucHV0KCkgc2V0IG5vZGVzKG5vZGVzOiBhbnlbXSkge1xyXG4gIH07XHJcblxyXG4gIEBJbnB1dCgpIHNldCBvcHRpb25zKG9wdGlvbnM6IElUcmVlT3B0aW9ucykge1xyXG4gIH07XHJcblxyXG4gIEBJbnB1dCgpIHNldCBmb2N1c2VkKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnRyZWVNb2RlbC5zZXRGb2N1cyh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBzZXQgc3RhdGUoc3RhdGUpIHtcclxuICAgIHRoaXMudHJlZU1vZGVsLnNldFN0YXRlKHN0YXRlKTtcclxuICB9XHJcblxyXG4gIEBPdXRwdXQoKSB0b2dnbGVFeHBhbmRlZDtcclxuICBAT3V0cHV0KCkgYWN0aXZhdGU7XHJcbiAgQE91dHB1dCgpIGRlYWN0aXZhdGU7XHJcbiAgQE91dHB1dCgpIG5vZGVBY3RpdmF0ZTtcclxuICBAT3V0cHV0KCkgbm9kZURlYWN0aXZhdGU7XHJcbiAgQE91dHB1dCgpIHNlbGVjdDtcclxuICBAT3V0cHV0KCkgZGVzZWxlY3Q7XHJcbiAgQE91dHB1dCgpIGZvY3VzO1xyXG4gIEBPdXRwdXQoKSBibHVyO1xyXG4gIEBPdXRwdXQoKSB1cGRhdGVEYXRhO1xyXG4gIEBPdXRwdXQoKSBpbml0aWFsaXplZDtcclxuICBAT3V0cHV0KCkgbW92ZU5vZGU7XHJcbiAgQE91dHB1dCgpIGNvcHlOb2RlO1xyXG4gIEBPdXRwdXQoKSBsb2FkTm9kZUNoaWxkcmVuO1xyXG4gIEBPdXRwdXQoKSBjaGFuZ2VGaWx0ZXI7XHJcbiAgQE91dHB1dCgpIGV2ZW50O1xyXG4gIEBPdXRwdXQoKSBzdGF0ZUNoYW5nZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgdHJlZU1vZGVsOiBUcmVlTW9kZWwsXHJcbiAgICBwdWJsaWMgdHJlZURyYWdnZWRFbGVtZW50OiBUcmVlRHJhZ2dlZEVsZW1lbnQpIHtcclxuXHJcbiAgICB0cmVlTW9kZWwuZXZlbnROYW1lcy5mb3JFYWNoKChuYW1lKSA9PiB0aGlzW25hbWVdID0gbmV3IEV2ZW50RW1pdHRlcigpKTtcclxuICAgIHRyZWVNb2RlbC5zdWJzY3JpYmVUb1N0YXRlKChzdGF0ZSkgPT4gdGhpcy5zdGF0ZUNoYW5nZS5lbWl0KHN0YXRlKSk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdib2R5OiBrZXlkb3duJywgWyckZXZlbnQnXSlcclxuICBvbktleWRvd24oJGV2ZW50KSB7XHJcbiAgICBpZiAoIXRoaXMudHJlZU1vZGVsLmlzRm9jdXNlZCkgcmV0dXJuO1xyXG4gICAgaWYgKFsnaW5wdXQnLCAndGV4dGFyZWEnXS5pbmNsdWRlcyhkb2N1bWVudC5hY3RpdmVFbGVtZW50LnRhZ05hbWUudG9Mb3dlckNhc2UoKSkpIHJldHVybjtcclxuXHJcbiAgICBjb25zdCBmb2N1c2VkTm9kZSA9IHRoaXMudHJlZU1vZGVsLmdldEZvY3VzZWROb2RlKCk7XHJcblxyXG4gICAgdGhpcy50cmVlTW9kZWwucGVyZm9ybUtleUFjdGlvbihmb2N1c2VkTm9kZSwgJGV2ZW50KTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2JvZHk6IG1vdXNlZG93bicsIFsnJGV2ZW50J10pXHJcbiAgb25Nb3VzZWRvd24oJGV2ZW50KSB7XHJcbiAgICBmdW5jdGlvbiBpc091dHNpZGVDbGljayhzdGFydEVsZW1lbnQ6IEVsZW1lbnQsIG5vZGVOYW1lOiBzdHJpbmcpIHtcclxuICAgICAgcmV0dXJuICFzdGFydEVsZW1lbnQgPyB0cnVlIDogc3RhcnRFbGVtZW50LmxvY2FsTmFtZSA9PT0gbm9kZU5hbWUgPyBmYWxzZSA6IGlzT3V0c2lkZUNsaWNrKHN0YXJ0RWxlbWVudC5wYXJlbnRFbGVtZW50LCBub2RlTmFtZSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGlzT3V0c2lkZUNsaWNrKCRldmVudC50YXJnZXQsICd0cmVlLXJvb3QnKSkge1xyXG4gICAgICB0aGlzLnRyZWVNb2RlbC5zZXRGb2N1cyhmYWxzZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzKSB7XHJcbiAgICBpZiAoY2hhbmdlcy5vcHRpb25zIHx8IGNoYW5nZXMubm9kZXMpIHtcclxuICAgICAgdGhpcy50cmVlTW9kZWwuc2V0RGF0YSh7XHJcbiAgICAgICAgb3B0aW9uczogY2hhbmdlcy5vcHRpb25zICYmIGNoYW5nZXMub3B0aW9ucy5jdXJyZW50VmFsdWUsXHJcbiAgICAgICAgbm9kZXM6IGNoYW5nZXMubm9kZXMgJiYgY2hhbmdlcy5ub2Rlcy5jdXJyZW50VmFsdWUsXHJcbiAgICAgICAgZXZlbnRzOiB0aGlzLnBpY2sodGhpcywgdGhpcy50cmVlTW9kZWwuZXZlbnROYW1lcylcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzaXplQ2hhbmdlZCgpIHtcclxuICAgIHRoaXMudmlld3BvcnRDb21wb25lbnQuc2V0Vmlld3BvcnQoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcGljayhvYmplY3QsIGtleXMpIHtcclxuICAgIHJldHVybiBrZXlzLnJlZHVjZSgob2JqLCBrZXkpID0+IHtcclxuICAgICAgaWYgKG9iamVjdCAmJiBvYmplY3QuaGFzT3duUHJvcGVydHkoa2V5KSkge1xyXG4gICAgICAgIG9ialtrZXldID0gb2JqZWN0W2tleV07XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIG9iajtcclxuICAgIH0sIHt9KTtcclxuICB9XHJcbn1cclxuIl19
121
+ ` }]
122
+ }], ctorParameters: () => [{ type: i1.TreeModel }, { type: i2.TreeDraggedElement }], propDecorators: { loadingTemplate: [{
123
+ type: ContentChild,
124
+ args: ['loadingTemplate', { static: false }]
125
+ }], treeNodeTemplate: [{
126
+ type: ContentChild,
127
+ args: ['treeNodeTemplate', { static: false }]
128
+ }], treeNodeWrapperTemplate: [{
129
+ type: ContentChild,
130
+ args: ['treeNodeWrapperTemplate', { static: false }]
131
+ }], treeNodeFullTemplate: [{
132
+ type: ContentChild,
133
+ args: ['treeNodeFullTemplate', { static: false }]
134
+ }], viewportComponent: [{
135
+ type: ViewChild,
136
+ args: ['viewport', { static: false }]
137
+ }], nodes: [{
138
+ type: Input
139
+ }], options: [{
140
+ type: Input
141
+ }], focused: [{
142
+ type: Input
143
+ }], state: [{
144
+ type: Input
145
+ }], toggleExpanded: [{
146
+ type: Output
147
+ }], activate: [{
148
+ type: Output
149
+ }], deactivate: [{
150
+ type: Output
151
+ }], nodeActivate: [{
152
+ type: Output
153
+ }], nodeDeactivate: [{
154
+ type: Output
155
+ }], select: [{
156
+ type: Output
157
+ }], deselect: [{
158
+ type: Output
159
+ }], focus: [{
160
+ type: Output
161
+ }], blur: [{
162
+ type: Output
163
+ }], updateData: [{
164
+ type: Output
165
+ }], initialized: [{
166
+ type: Output
167
+ }], moveNode: [{
168
+ type: Output
169
+ }], copyNode: [{
170
+ type: Output
171
+ }], loadNodeChildren: [{
172
+ type: Output
173
+ }], changeFilter: [{
174
+ type: Output
175
+ }], event: [{
176
+ type: Output
177
+ }], stateChange: [{
178
+ type: Output
179
+ }], onKeydown: [{
180
+ type: HostListener,
181
+ args: ['body: keydown', ['$event']]
182
+ }], onMousedown: [{
183
+ type: HostListener,
184
+ args: ['body: mousedown', ['$event']]
185
+ }] } });
186
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXRyZWUtY29tcG9uZW50L3NyYy9saWIvY29tcG9uZW50cy90cmVlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQWUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RJLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7QUFxQ2pELE1BQU0sT0FBTyxhQUFhO0lBVXhCLGlDQUFpQztJQUNqQyxJQUFhLEtBQUssQ0FBQyxLQUFZO0lBQy9CLENBQUM7SUFBQSxDQUFDO0lBRUYsSUFBYSxPQUFPLENBQUMsT0FBcUI7SUFDMUMsQ0FBQztJQUFBLENBQUM7SUFFRixJQUFhLE9BQU8sQ0FBQyxLQUFjO1FBQ2pDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFhLEtBQUssQ0FBQyxLQUFLO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFvQkQsWUFDUyxTQUFvQixFQUNwQixrQkFBc0M7UUFEdEMsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBRTdDLFNBQVMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQ3hFLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBR0QsU0FBUyxDQUFDLE1BQU07UUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTO1lBQUUsT0FBTztRQUN0QyxJQUFJLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUFFLE9BQU87UUFFekYsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUVwRCxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBR0QsV0FBVyxDQUFDLE1BQU07UUFDaEIsU0FBUyxjQUFjLENBQUMsWUFBcUIsRUFBRSxRQUFnQjtZQUM3RCxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxTQUFTLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ25JLENBQUM7UUFFRCxJQUFJLGNBQWMsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxFQUFFLENBQUM7WUFDL0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsT0FBTztRQUNqQixJQUFJLE9BQU8sQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3JDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDO2dCQUNyQixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLFlBQVk7Z0JBQ3hELEtBQUssRUFBRSxPQUFPLENBQUMsS0FBSyxJQUFJLE9BQU8sQ0FBQyxLQUFLLENBQUMsWUFBWTtnQkFDbEQsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDO2FBQ25ELENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRU8sSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUM5QixJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQ3pDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDekIsQ0FBQztZQUNELE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsQ0FBQztrSUE3RlUsYUFBYTtzSEFBYixhQUFhLDhwQkE3QmIsQ0FBQyxTQUFTLENBQUMseWxCQUVaOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBeUJUOzs0RkFFVSxhQUFhO2tCQS9CekIsU0FBUzsrQkFDRSxpQkFBaUIsYUFDaEIsQ0FBQyxTQUFTLENBQUMsWUFFWjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXlCVDsrR0FNbUQsZUFBZTtzQkFBbEUsWUFBWTt1QkFBQyxpQkFBaUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ0csZ0JBQWdCO3NCQUFwRSxZQUFZO3VCQUFDLGtCQUFrQixFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDUyx1QkFBdUI7c0JBQWxGLFlBQVk7dUJBQUMseUJBQXlCLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNELG9CQUFvQjtzQkFBNUUsWUFBWTt1QkFBQyxzQkFBc0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ2IsaUJBQWlCO3NCQUExRCxTQUFTO3VCQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBRzNCLEtBQUs7c0JBQWpCLEtBQUs7Z0JBR08sT0FBTztzQkFBbkIsS0FBSztnQkFHTyxPQUFPO3NCQUFuQixLQUFLO2dCQUlPLEtBQUs7c0JBQWpCLEtBQUs7Z0JBSUksY0FBYztzQkFBdkIsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxjQUFjO3NCQUF2QixNQUFNO2dCQUNHLE1BQU07c0JBQWYsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLEtBQUs7c0JBQWQsTUFBTTtnQkFDRyxJQUFJO3NCQUFiLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxLQUFLO3NCQUFkLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTTtnQkFXUCxTQUFTO3NCQURSLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVd6QyxXQUFXO3NCQURWLFlBQVk7dUJBQUMsaUJBQWlCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUcmVlTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvdHJlZS5tb2RlbCc7XHJcbmltcG9ydCB7IFRyZWVEcmFnZ2VkRWxlbWVudCB9IGZyb20gJy4uL21vZGVscy90cmVlLWRyYWdnZWQtZWxlbWVudC5tb2RlbCc7XHJcbmltcG9ydCB7IFRyZWVPcHRpb25zIH0gZnJvbSAnLi4vbW9kZWxzL3RyZWUtb3B0aW9ucy5tb2RlbCc7XHJcbmltcG9ydCB7IElUcmVlT3B0aW9ucyB9IGZyb20gJy4uL2RlZnMvYXBpJztcclxuaW1wb3J0IHsgVHJlZVZpZXdwb3J0Q29tcG9uZW50IH0gZnJvbSAnLi90cmVlLXZpZXdwb3J0LmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ1RyZWUsIHRyZWUtcm9vdCcsXHJcbiAgcHJvdmlkZXJzOiBbVHJlZU1vZGVsXSxcclxuICBzdHlsZXM6IFtdLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICAgIDx0cmVlLXZpZXdwb3J0ICN2aWV3cG9ydD5cclxuICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhbmd1bGFyLXRyZWUtY29tcG9uZW50XCJcclxuICAgICAgICAgICAgICAgICAgW2NsYXNzLm5vZGUtZHJhZ2dpbmddPVwidHJlZURyYWdnZWRFbGVtZW50LmlzRHJhZ2dpbmcoKVwiXHJcbiAgICAgICAgICAgICAgICAgIFtjbGFzcy5hbmd1bGFyLXRyZWUtY29tcG9uZW50LXJ0bF09XCJ0cmVlTW9kZWwub3B0aW9ucy5ydGxcIj5cclxuICAgICAgICAgICAgICA8dHJlZS1ub2RlLWNvbGxlY3Rpb25cclxuICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwidHJlZU1vZGVsLnJvb3RzXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtub2Rlc109XCJ0cmVlTW9kZWwucm9vdHNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW3RyZWVNb2RlbF09XCJ0cmVlTW9kZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW3RlbXBsYXRlc109XCJ7XHJcbiAgICAgICAgICAgIGxvYWRpbmdUZW1wbGF0ZTogbG9hZGluZ1RlbXBsYXRlLFxyXG4gICAgICAgICAgICB0cmVlTm9kZVRlbXBsYXRlOiB0cmVlTm9kZVRlbXBsYXRlLFxyXG4gICAgICAgICAgICB0cmVlTm9kZVdyYXBwZXJUZW1wbGF0ZTogdHJlZU5vZGVXcmFwcGVyVGVtcGxhdGUsXHJcbiAgICAgICAgICAgIHRyZWVOb2RlRnVsbFRlbXBsYXRlOiB0cmVlTm9kZUZ1bGxUZW1wbGF0ZVxyXG4gICAgICAgICAgfVwiPlxyXG4gICAgICAgICAgICAgIDwvdHJlZS1ub2RlLWNvbGxlY3Rpb24+XHJcbiAgICAgICAgICAgICAgPHRyZWUtbm9kZS1kcm9wLXNsb3RcclxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZW1wdHktdHJlZS1kcm9wLXNsb3RcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJ0cmVlTW9kZWwuaXNFbXB0eVRyZWUoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbZHJvcEluZGV4XT1cIjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW25vZGVdPVwidHJlZU1vZGVsLnZpcnR1YWxSb290XCI+XHJcbiAgICAgICAgICAgICAgPC90cmVlLW5vZGUtZHJvcC1zbG90PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvdHJlZS12aWV3cG9ydD5cclxuICBgXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcmVlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICBfbm9kZXM6IGFueVtdO1xyXG4gIF9vcHRpb25zOiBUcmVlT3B0aW9ucztcclxuXHJcbiAgQENvbnRlbnRDaGlsZCgnbG9hZGluZ1RlbXBsYXRlJywgeyBzdGF0aWM6IGZhbHNlIH0pIGxvYWRpbmdUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBAQ29udGVudENoaWxkKCd0cmVlTm9kZVRlbXBsYXRlJywgeyBzdGF0aWM6IGZhbHNlIH0pIHRyZWVOb2RlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQENvbnRlbnRDaGlsZCgndHJlZU5vZGVXcmFwcGVyVGVtcGxhdGUnLCB7IHN0YXRpYzogZmFsc2UgfSkgdHJlZU5vZGVXcmFwcGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQENvbnRlbnRDaGlsZCgndHJlZU5vZGVGdWxsVGVtcGxhdGUnLCB7IHN0YXRpYzogZmFsc2UgfSkgdHJlZU5vZGVGdWxsVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQFZpZXdDaGlsZCgndmlld3BvcnQnLCB7IHN0YXRpYzogZmFsc2UgfSkgdmlld3BvcnRDb21wb25lbnQ6IFRyZWVWaWV3cG9ydENvbXBvbmVudDtcclxuXHJcbiAgLy8gV2lsbCBiZSBoYW5kbGVkIGluIG5nT25DaGFuZ2VzXHJcbiAgQElucHV0KCkgc2V0IG5vZGVzKG5vZGVzOiBhbnlbXSkge1xyXG4gIH07XHJcblxyXG4gIEBJbnB1dCgpIHNldCBvcHRpb25zKG9wdGlvbnM6IElUcmVlT3B0aW9ucykge1xyXG4gIH07XHJcblxyXG4gIEBJbnB1dCgpIHNldCBmb2N1c2VkKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnRyZWVNb2RlbC5zZXRGb2N1cyh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBzZXQgc3RhdGUoc3RhdGUpIHtcclxuICAgIHRoaXMudHJlZU1vZGVsLnNldFN0YXRlKHN0YXRlKTtcclxuICB9XHJcblxyXG4gIEBPdXRwdXQoKSB0b2dnbGVFeHBhbmRlZDtcclxuICBAT3V0cHV0KCkgYWN0aXZhdGU7XHJcbiAgQE91dHB1dCgpIGRlYWN0aXZhdGU7XHJcbiAgQE91dHB1dCgpIG5vZGVBY3RpdmF0ZTtcclxuICBAT3V0cHV0KCkgbm9kZURlYWN0aXZhdGU7XHJcbiAgQE91dHB1dCgpIHNlbGVjdDtcclxuICBAT3V0cHV0KCkgZGVzZWxlY3Q7XHJcbiAgQE91dHB1dCgpIGZvY3VzO1xyXG4gIEBPdXRwdXQoKSBibHVyO1xyXG4gIEBPdXRwdXQoKSB1cGRhdGVEYXRhO1xyXG4gIEBPdXRwdXQoKSBpbml0aWFsaXplZDtcclxuICBAT3V0cHV0KCkgbW92ZU5vZGU7XHJcbiAgQE91dHB1dCgpIGNvcHlOb2RlO1xyXG4gIEBPdXRwdXQoKSBsb2FkTm9kZUNoaWxkcmVuO1xyXG4gIEBPdXRwdXQoKSBjaGFuZ2VGaWx0ZXI7XHJcbiAgQE91dHB1dCgpIGV2ZW50O1xyXG4gIEBPdXRwdXQoKSBzdGF0ZUNoYW5nZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgdHJlZU1vZGVsOiBUcmVlTW9kZWwsXHJcbiAgICBwdWJsaWMgdHJlZURyYWdnZWRFbGVtZW50OiBUcmVlRHJhZ2dlZEVsZW1lbnQpIHtcclxuXHJcbiAgICB0cmVlTW9kZWwuZXZlbnROYW1lcy5mb3JFYWNoKChuYW1lKSA9PiB0aGlzW25hbWVdID0gbmV3IEV2ZW50RW1pdHRlcigpKTtcclxuICAgIHRyZWVNb2RlbC5zdWJzY3JpYmVUb1N0YXRlKChzdGF0ZSkgPT4gdGhpcy5zdGF0ZUNoYW5nZS5lbWl0KHN0YXRlKSk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdib2R5OiBrZXlkb3duJywgWyckZXZlbnQnXSlcclxuICBvbktleWRvd24oJGV2ZW50KSB7XHJcbiAgICBpZiAoIXRoaXMudHJlZU1vZGVsLmlzRm9jdXNlZCkgcmV0dXJuO1xyXG4gICAgaWYgKFsnaW5wdXQnLCAndGV4dGFyZWEnXS5pbmNsdWRlcyhkb2N1bWVudC5hY3RpdmVFbGVtZW50LnRhZ05hbWUudG9Mb3dlckNhc2UoKSkpIHJldHVybjtcclxuXHJcbiAgICBjb25zdCBmb2N1c2VkTm9kZSA9IHRoaXMudHJlZU1vZGVsLmdldEZvY3VzZWROb2RlKCk7XHJcblxyXG4gICAgdGhpcy50cmVlTW9kZWwucGVyZm9ybUtleUFjdGlvbihmb2N1c2VkTm9kZSwgJGV2ZW50KTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2JvZHk6IG1vdXNlZG93bicsIFsnJGV2ZW50J10pXHJcbiAgb25Nb3VzZWRvd24oJGV2ZW50KSB7XHJcbiAgICBmdW5jdGlvbiBpc091dHNpZGVDbGljayhzdGFydEVsZW1lbnQ6IEVsZW1lbnQsIG5vZGVOYW1lOiBzdHJpbmcpIHtcclxuICAgICAgcmV0dXJuICFzdGFydEVsZW1lbnQgPyB0cnVlIDogc3RhcnRFbGVtZW50LmxvY2FsTmFtZSA9PT0gbm9kZU5hbWUgPyBmYWxzZSA6IGlzT3V0c2lkZUNsaWNrKHN0YXJ0RWxlbWVudC5wYXJlbnRFbGVtZW50LCBub2RlTmFtZSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGlzT3V0c2lkZUNsaWNrKCRldmVudC50YXJnZXQsICd0cmVlLXJvb3QnKSkge1xyXG4gICAgICB0aGlzLnRyZWVNb2RlbC5zZXRGb2N1cyhmYWxzZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzKSB7XHJcbiAgICBpZiAoY2hhbmdlcy5vcHRpb25zIHx8IGNoYW5nZXMubm9kZXMpIHtcclxuICAgICAgdGhpcy50cmVlTW9kZWwuc2V0RGF0YSh7XHJcbiAgICAgICAgb3B0aW9uczogY2hhbmdlcy5vcHRpb25zICYmIGNoYW5nZXMub3B0aW9ucy5jdXJyZW50VmFsdWUsXHJcbiAgICAgICAgbm9kZXM6IGNoYW5nZXMubm9kZXMgJiYgY2hhbmdlcy5ub2Rlcy5jdXJyZW50VmFsdWUsXHJcbiAgICAgICAgZXZlbnRzOiB0aGlzLnBpY2sodGhpcywgdGhpcy50cmVlTW9kZWwuZXZlbnROYW1lcylcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzaXplQ2hhbmdlZCgpIHtcclxuICAgIHRoaXMudmlld3BvcnRDb21wb25lbnQuc2V0Vmlld3BvcnQoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcGljayhvYmplY3QsIGtleXMpIHtcclxuICAgIHJldHVybiBrZXlzLnJlZHVjZSgob2JqLCBrZXkpID0+IHtcclxuICAgICAgaWYgKG9iamVjdCAmJiBvYmplY3QuaGFzT3duUHJvcGVydHkoa2V5KSkge1xyXG4gICAgICAgIG9ialtrZXldID0gb2JqZWN0W2tleV07XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIG9iajtcclxuICAgIH0sIHt9KTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,20 +1,20 @@
1
- export const TREE_EVENTS = {
2
- toggleExpanded: 'toggleExpanded',
3
- activate: 'activate',
4
- deactivate: 'deactivate',
5
- nodeActivate: 'nodeActivate',
6
- nodeDeactivate: 'nodeDeactivate',
7
- select: 'select',
8
- deselect: 'deselect',
9
- focus: 'focus',
10
- blur: 'blur',
11
- initialized: 'initialized',
12
- updateData: 'updateData',
13
- moveNode: 'moveNode',
14
- copyNode: 'copyNode',
15
- event: 'event',
16
- loadNodeChildren: 'loadNodeChildren',
17
- changeFilter: 'changeFilter',
18
- stateChange: 'stateChange'
19
- };
1
+ export const TREE_EVENTS = {
2
+ toggleExpanded: 'toggleExpanded',
3
+ activate: 'activate',
4
+ deactivate: 'deactivate',
5
+ nodeActivate: 'nodeActivate',
6
+ nodeDeactivate: 'nodeDeactivate',
7
+ select: 'select',
8
+ deselect: 'deselect',
9
+ focus: 'focus',
10
+ blur: 'blur',
11
+ initialized: 'initialized',
12
+ updateData: 'updateData',
13
+ moveNode: 'moveNode',
14
+ copyNode: 'copyNode',
15
+ event: 'event',
16
+ loadNodeChildren: 'loadNodeChildren',
17
+ changeFilter: 'changeFilter',
18
+ stateChange: 'stateChange'
19
+ };
20
20
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci10cmVlLWNvbXBvbmVudC9zcmMvbGliL2NvbnN0YW50cy9ldmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHO0lBQ3pCLGNBQWMsRUFBRSxnQkFBZ0I7SUFDaEMsUUFBUSxFQUFFLFVBQVU7SUFDcEIsVUFBVSxFQUFFLFlBQVk7SUFDeEIsWUFBWSxFQUFFLGNBQWM7SUFDNUIsY0FBYyxFQUFFLGdCQUFnQjtJQUNoQyxNQUFNLEVBQUUsUUFBUTtJQUNoQixRQUFRLEVBQUUsVUFBVTtJQUNwQixLQUFLLEVBQUUsT0FBTztJQUNkLElBQUksRUFBRSxNQUFNO0lBQ1osV0FBVyxFQUFFLGFBQWE7SUFDMUIsVUFBVSxFQUFFLFlBQVk7SUFDeEIsUUFBUSxFQUFFLFVBQVU7SUFDcEIsUUFBUSxFQUFFLFVBQVU7SUFDcEIsS0FBSyxFQUFFLE9BQU87SUFDZCxnQkFBZ0IsRUFBRSxrQkFBa0I7SUFDcEMsWUFBWSxFQUFFLGNBQWM7SUFDNUIsV0FBVyxFQUFFLGFBQWE7Q0FDM0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBUUkVFX0VWRU5UUyA9IHtcclxuICB0b2dnbGVFeHBhbmRlZDogJ3RvZ2dsZUV4cGFuZGVkJyxcclxuICBhY3RpdmF0ZTogJ2FjdGl2YXRlJyxcclxuICBkZWFjdGl2YXRlOiAnZGVhY3RpdmF0ZScsXHJcbiAgbm9kZUFjdGl2YXRlOiAnbm9kZUFjdGl2YXRlJyxcclxuICBub2RlRGVhY3RpdmF0ZTogJ25vZGVEZWFjdGl2YXRlJyxcclxuICBzZWxlY3Q6ICdzZWxlY3QnLFxyXG4gIGRlc2VsZWN0OiAnZGVzZWxlY3QnLFxyXG4gIGZvY3VzOiAnZm9jdXMnLFxyXG4gIGJsdXI6ICdibHVyJyxcclxuICBpbml0aWFsaXplZDogJ2luaXRpYWxpemVkJyxcclxuICB1cGRhdGVEYXRhOiAndXBkYXRlRGF0YScsXHJcbiAgbW92ZU5vZGU6ICdtb3ZlTm9kZScsXHJcbiAgY29weU5vZGU6ICdjb3B5Tm9kZScsXHJcbiAgZXZlbnQ6ICdldmVudCcsXHJcbiAgbG9hZE5vZGVDaGlsZHJlbjogJ2xvYWROb2RlQ2hpbGRyZW4nLFxyXG4gIGNoYW5nZUZpbHRlcjogJ2NoYW5nZUZpbHRlcicsXHJcbiAgc3RhdGVDaGFuZ2U6ICdzdGF0ZUNoYW5nZSdcclxufTtcclxuIl19
@@ -1,10 +1,10 @@
1
- export const KEYS = {
2
- LEFT: 37,
3
- UP: 38,
4
- RIGHT: 39,
5
- DOWN: 40,
6
- ENTER: 13,
7
- SPACE: 32,
8
- CONTEXT_MENU: 32
9
- };
1
+ export const KEYS = {
2
+ LEFT: 37,
3
+ UP: 38,
4
+ RIGHT: 39,
5
+ DOWN: 40,
6
+ ENTER: 13,
7
+ SPACE: 32,
8
+ CONTEXT_MENU: 32
9
+ };
10
10
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdHJlZS1jb21wb25lbnQvc3JjL2xpYi9jb25zdGFudHMva2V5cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxJQUFJLEdBQUc7SUFDbEIsSUFBSSxFQUFFLEVBQUU7SUFDUixFQUFFLEVBQUUsRUFBRTtJQUNOLEtBQUssRUFBRSxFQUFFO0lBQ1QsSUFBSSxFQUFFLEVBQUU7SUFDUixLQUFLLEVBQUUsRUFBRTtJQUNULEtBQUssRUFBRSxFQUFFO0lBQ1QsWUFBWSxFQUFFLEVBQUU7Q0FDakIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBLRVlTID0ge1xyXG4gIExFRlQ6IDM3LFxyXG4gIFVQOiAzOCxcclxuICBSSUdIVDogMzksXHJcbiAgRE9XTjogNDAsXHJcbiAgRU5URVI6IDEzLFxyXG4gIFNQQUNFOiAzMixcclxuICBDT05URVhUX01FTlU6IDMyXHJcbn07XHJcbiJdfQ==
@@ -1,2 +1,2 @@
1
- export {};
1
+ export {};
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci10cmVlLWNvbXBvbmVudC9zcmMvbGliL2RlZnMvYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogV2VsY29tZSB0byBuZzJ0cmVlXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBJRFR5cGUgPSBzdHJpbmcgfCBudW1iZXI7XHJcbmV4cG9ydCB0eXBlIElEVHlwZURpY3Rpb25hcnkgPSB7IFtpZDogc3RyaW5nXTogYm9vbGVhbiwgW2lkOiBudW1iZXJdOiBib29sZWFuIH07XHJcblxyXG4vKipcclxuICogU2VlIElUcmVlTm9kZSBmb3IgZG9jdW1lbnRhdGlvblxyXG4gKi9cclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBUcmVlTm9kZSA9IGFueTtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUFsbG93RHJvcEZuIHtcclxuICAoZWxlbWVudDogYW55LCB0bzoge3BhcmVudDogVHJlZU5vZGUsIGluZGV4OiBudW1iZXJ9LCAkZXZlbnQ/OiBhbnkpOiBib29sZWFuO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElOb2RlSGVpZ2h0Rm4ge1xyXG4gIChub2RlOiBUcmVlTm9kZSk6IG51bWJlcjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJQWxsb3dEcmFnRm4ge1xyXG4gIChub2RlOiBUcmVlTm9kZSk6IGJvb2xlYW47XHJcbn1cclxuXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElUcmVlU3RhdGUge1xyXG4gIGV4cGFuZGVkTm9kZUlkcz86IElEVHlwZURpY3Rpb25hcnk7XHJcbiAgc2VsZWN0ZWROb2RlSWRzPzogSURUeXBlRGljdGlvbmFyeTtcclxuICBhY3RpdmVOb2RlSWRzPzogSURUeXBlRGljdGlvbmFyeTtcclxuICBoaWRkZW5Ob2RlSWRzPzogSURUeXBlRGljdGlvbmFyeTtcclxuICBzZWxlY3RlZExlYWZOb2RlSWRzPzogSURUeXBlRGljdGlvbmFyeTtcclxuICBmb2N1c2VkTm9kZUlkPzogSURUeXBlO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElUcmVlT3B0aW9ucyB7XHJcbiAgIC8qKlxyXG4gICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIGF0dHJpYnV0ZSBvZiB0aGUgbm9kZSB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHRoZXJlIGFyZSBjaGlsZCBub2Rlcy5cclxuXHJcbiAgICAqICoqRGVmYXVsdCB2YWx1ZTogYGhhc0NoaWxkcmVuYC4qKlxyXG5cclxuICAgIEZvciBleGFtcGxlLCBpZiB5b3VyIG5vZGVzIGhhdmUgYW4gYGlzRGlyZWN0b3J5YCBhdHRyaWJ1dGUgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciB0aGVyZSBhcmUgY2hpbGRyZW4sIHVzZTpcclxuICAgIGBgYFxyXG4gICAgICBvcHRpb25zID0geyBoYXNDaGlsZHJlbkZpZWxkOiAnaXNEaXJlY3RvcnknIH1cclxuICAgIGBgYFxyXG4gICAgKi9cclxuICAgaGFzQ2hpbGRyZW5GaWVsZD86IHN0cmluZztcclxuICAgLyoqXHJcbiAgICAqIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgYXR0cmlidXRlIG9mIHRoZSBub2RlIHRoYXQgY29udGFpbnMgdGhlIGFycmF5IG9mIGNoaWxkcmVuLlxyXG5cclxuICAgICogKipEZWZhdWx0IHZhbHVlOiBgY2hpbGRyZW5gLioqXHJcblxyXG4gICAgRm9yIGV4YW1wbGUsIGlmIHlvdXIgbm9kZXMgaGF2ZSBhIGBub2Rlc2AgYXR0cmlidXRlLCB0aGF0IGNvbnRhaW5zIHRoZSBjaGlsZHJlbiwgdXNlOlxyXG4gICAgYGBgXHJcbiAgICAgIG9wdGlvbnMgPSB7IGNoaWxkcmVuRmllbGQ6ICdub2RlcycgfVxyXG4gICAgYGBgXHJcbiAgICAqL1xyXG4gICBjaGlsZHJlbkZpZWxkPzogc3RyaW5nO1xyXG4gICAvKipcclxuICAgICogQSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBhdHRyaWJ1dGUgb2YgdGhlIG5vZGUgdG8gZGlzcGxheS5cclxuXHJcbiAgICAqICoqRGVmYXVsdCB2YWx1ZTogYG5hbWVgKipcclxuXHJcbiAgICAgIEZvciBleGFtcGxlLCBpZiB5b3VyIG5vZGVzIGhhdmUgYSBgdGl0bGVgIGF0dHJpYnV0ZSB0aGF0IHNob3VsZCBiZSBkaXNwbGF5ZWQsIHVzZTpcclxuICAgICAgYGBgXHJcbiAgICAgICAgb3B0aW9ucyA9IHsgZGlzcGxheUZpZWxkOiAndGl0bGUnIH1cclxuICAgICAgYGBgXHJcbiAgICAqL1xyXG4gICBkaXNwbGF5RmllbGQ/OiBzdHJpbmc7XHJcbiAgIC8qKlxyXG4gICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIGF0dHJpYnV0ZSBvZiB0aGUgbm9kZSB0aGF0IGNvbnRhaW5zIHRoZSB1bmlxdWUgSUQuXHJcbiAgICAgIFRoaXMgd2lsbCBiZSB1c2VkIHRvIGNvbnN0cnVjdCB0aGUgYHBhdGhgLCB3aGljaCBpcyBhbiBhcnJheSBvZiBJRHMgdGhhdCBwb2ludCB0byB0aGUgbm9kZS5cclxuXHJcbiAgICAgICogKipEZWZhdWx0IHZhbHVlOiBgaWRgLioqXHJcblxyXG4gICAgICBGb3IgZXhhbXBsZSwgaWYgeW91ciBub2RlcyBoYXZlIGEgYHV1aWRgIGF0dHJpYnV0ZSwgdGhhdCBjb250YWlucyB0aGUgdW5pcXVlIGtleSwgdXNlOlxyXG4gICAgICBgYGBcclxuICAgICAgICBvcHRpb25zID0geyBpZEZpZWxkOiAndXVpZCcgfVxyXG4gICAgICBgYGBcclxuICAgICovXHJcbiAgIGlkRmllbGQ/OiBzdHJpbmc7XHJcbiAgIC8qKlxyXG4gICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIGF0dHJpYnV0ZSBvZiB0aGUgbm9kZSB0aGF0IGNvbnRhaW5zIHdoZXRoZXIgdGhlIG5vZGUgc3RhcnRzIGFzIGV4cGFuZGVkLlxyXG5cclxuICAgICAgKiAqKkRlZmF1bHQgdmFsdWU6IGBpc0V4cGFuZGVkYC4qKlxyXG5cclxuICAgICAgRm9yIGV4YW1wbGUsIGlmIHlvdXIgbm9kZXMgaGF2ZSBhbiBgZXhwYW5kZWRgIGF0dHJpYnV0ZSwgdGhhdCBjb250YWlucyBhIGJvb2xlYW4gdmFsdWUsIHVzZTpcclxuICAgICAgYGBgXHJcbiAgICAgICAgb3B0aW9ucyA9IHsgaXNFeHBhbmRlZEZpZWxkOiAnZXhwYW5kZWQnIH1cclxuICAgICAgYGBgXHJcbiAgICAqL1xyXG4gICBpc0V4cGFuZGVkRmllbGQ/OiBzdHJpbmc7XHJcbiAgIC8qKlxyXG4gICAgKiBGdW5jdGlvbiBmb3IgbG9hZGluZyBhIG5vZGUncyBjaGlsZHJlbi5cclxuICAgICAgVGhlIGZ1bmN0aW9uIHJlY2VpdmVzIGEgVHJlZU5vZGUsIGFuZCByZXR1cm5zIGEgdmFsdWUgb3IgYSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gdGhlIG5vZGUncyBjaGlsZHJlbi5cclxuXHJcbiAgICAgIFRoaXMgZnVuY3Rpb24gd2lsbCBiZSBjYWxsZWQgd2hlbmV2ZXIgYSBub2RlIGlzIGV4cGFuZGVkLCB0aGUgYGhhc0NoaWxkcmVuYCAoYG9wdGlvbnMuaGFzQ2hpbGRyZW5GaWVsZGApXHJcbiAgICAgIGZpZWxkIGlzIHRydWUsIGFuZCB0aGUgYGNoaWxkcmVuYCBmaWVsZCBpcyBlbXB0eS5cclxuICAgICAgVGhlIHJlc3VsdCB3aWxsIGJlIGxvYWRlZCBpbnRvIHRoZSBub2RlJ3MgY2hpbGRyZW4gYXR0cmlidXRlLlxyXG5cclxuICAgICAgRXhhbXBsZTpcclxuICAgICAgYGBgXHJcbiAgICAgICogb3B0aW9ucyA9IHtcclxuICAgICAgKiAgIGdldENoaWxkcmVuOiAobm9kZTpUcmVlTm9kZSkgPT4ge1xyXG4gICAgICAqICAgICByZXR1cm4gcmVxdWVzdCgnL2FwaS9jaGlsZHJlbi8nICsgbm9kZS5pZCk7XHJcbiAgICAgICogICB9XHJcbiAgICAgICogfVxyXG4gICAgICBgYGBcclxuICAgICovXHJcbiAgIGdldENoaWxkcmVuPzogKG5vZGU6IFRyZWVOb2RlKSA9PiBhbnk7XHJcbiAgIC8qKlxyXG4gICAgKiBSZXdpcmUgd2hpY2ggdHJpZ2dlciBjYXVzZXMgd2hpY2ggYWN0aW9uIHVzaW5nIHRoaXMgYXR0cmlidXRlLCBvciBjcmVhdGUgY3VzdG9tIGFjdGlvbnMgLyBldmVudCBiaW5kaW5ncy5cclxuICAgICogU2VlIHRoZSBbQWN0aW9uIE1hcHBpbmcgU2VjdGlvbl0oaHR0cHM6Ly9hbmd1bGFyMi10cmVlLnJlYWRtZS5pby9kb2NzL2FjdGlvbi1tYXBwaW5nKSBmb3IgbW9yZSBkZXRhaWxzLlxyXG4gICAgKi9cclxuICAgYWN0aW9uTWFwcGluZz86IGFueTtcclxuICAgLyoqXHJcbiAgICAqIFNwZWNpZnkgaWYgZHJhZ2dpbmcgdHJlZSBub2RlcyBpcyBhbGxvd2VkLlxyXG4gICAgKiBUaGlzIGNvdWxkIGJlIGEgYm9vbGVhbiwgb3IgYSBmdW5jdGlvbiB0aGF0IHJlY2VpdmVzIGEgVHJlZU5vZGUgYW5kIHJldHVybnMgYSBib29sZWFuXHJcblxyXG4gICAgKiAqKkRlZmF1bHQgdmFsdWU6IGZhbHNlKipcclxuXHJcbiAgICBFeGFtcGxlOlxyXG4gICAgYGBgXHJcbiAgICAqIG9wdGlvbnMgPSB7XHJcbiAgICAqICBhbGxvd0RyYWc6IHRydWVcclxuICAgICogfVxyXG4gICAgYGBgXHJcbiAgICAqL1xyXG4gICBhbGxvd0RyYWc/OiBib29sZWFuIHwgSUFsbG93RHJhZ0ZuO1xyXG4gICAvKipcclxuICAgICogU3BlY2lmeSB3aGV0aGVyIGRyb3BwaW5nIGluc2lkZSB0aGUgdHJlZSBpcyBhbGxvd2VkLiBPcHRpb25hbCB0eXBlczpcclxuICAgICogIC0gYm9vbGVhblxyXG4gICAgKiAgLSAoZWxlbWVudDphbnksIHRvOntwYXJlbnQ6VHJlZU5vZGUsIGluZGV4Om51bWJlcn0pOmJvb2xlYW5cclxuICAgICAgICAgQSBmdW5jdGlvbiB0aGF0IHJlY2VpdmVzIHRoZSBkcmFnZ2VkIGVsZW1lbnQsIGFuZCB0aGUgZHJvcCBsb2NhdGlvbiAocGFyZW50IG5vZGUgYW5kIGluZGV4IGluc2lkZSB0aGUgcGFyZW50KSxcclxuICAgICAgICAgYW5kIHJldHVybnMgdHJ1ZSBvciBmYWxzZS5cclxuXHJcbiAgICAqICoqRGVmYXVsdCBWYWx1ZTogdHJ1ZSoqXHJcblxyXG4gICAgZXhhbXBsZTpcclxuICAgIGBgYFxyXG4gICAgKiBvcHRpb25zID0ge1xyXG4gICAgKiAgYWxsb3dEcm9wOiAoZWxlbWVudCwge3BhcmVudCwgaW5kZXh9KSA9PiBwYXJlbnQuaXNMZWFmXHJcbiAgICAqIH1cclxuICAgIGBgYFxyXG4gICAqL1xyXG4gICBhbGxvd0Ryb3A/OiBib29sZWFuIHwgSUFsbG93RHJvcEZuO1xyXG4gICAgLyoqXHJcbiAgICBCb29sZWFuIGZsYWcgdG8gYWxsb3cgYWRkaW5nIGFuZCByZW1vdmluZyBpcy1kcmFnZ2luZy1vdmVyIGFuZCBpcy1kcmFnZ2luZy1vdmVyLWRpc2FibGVkIGNsYXNzZXMuXHJcblxyXG4gICAgSWYgc2V0IHRvIGZhbHNlIGl0IHdpbGwgbm90IGFkZCB0aGUgYWJvdmUgbWVudGlvbmVkIGNsYXNzZXMgYW5kIHlvdSBzaG91bGQgaGFuZGxlIHRoZSBzdHlsaW5nIHlvdXJzZWxmIHdpdGggY3NzIGFuZCBpblxyXG4gICAgdGhlIGFjdGlvbk1hcHBpbmcgLT4gbW91c2UgLT4gZHJhZ0VudGVyLCBkcmFnTGVhdmVcclxuXHJcbiAgICAqICoqRGVmYXVsdCBWYWx1ZTogdHJ1ZSoqXHJcblxyXG4gICAgZXhhbXBsZTpcclxuICAgIGBgYFxyXG4gICAgKiBvcHRpb25zID0ge1xyXG4gICAgKiAgIGFsbG93RHJvcDogdHJ1ZSxcclxuICAgICogICBhbGxvd0RyYWdvdmVyU3R5bGluZzogZmFsc2VcclxuICAgICogfVxyXG4gICAgYGBgXHJcbiAgICAqL1xyXG4gICBhbGxvd0RyYWdvdmVyU3R5bGluZz86IGJvb2xlYW47XHJcbiAgIC8qKlxyXG4gICAqIFNwZWNpZnkgcGFkZGluZyBwZXIgbm9kZSAoaW50ZWdlcikuXHJcbiAgICBFYWNoIG5vZGUgd2lsbCBoYXZlIHBhZGRpbmctbGVmdCB2YWx1ZSBvZiBsZXZlbCAqIGxldmVsUGFkZGluZywgaW5zdGVhZCBvZiB1c2luZyB0aGUgZGVmYXVsdCBwYWRkaW5nIGZvciBjaGlsZHJlbi5cclxuXHJcbiAgICBUaGlzIG9wdGlvbiBpcyBnb29kIGZvciBleGFtcGxlIGZvciBhbGxvd2luZyB3aG9sZSByb3cgc2VsZWN0aW9uLCBldGMuXHJcblxyXG4gICAgWW91IGNhbiBhbHRlcm5hdGl2ZWx5IHVzZSB0aGUgdHJlZS1ub2RlLWxldmVsLVggY2xhc3NlcyB0byBnaXZlIHBhZGRpbmcgb24gYSBwZXItbGV2ZWwgYmFzaXMuXHJcblxyXG4gICAgKiAqKkRlZmF1bHQgdmFsdWU6IDAqKlxyXG4gICAqL1xyXG4gICBsZXZlbFBhZGRpbmc/OiBudW1iZXI7XHJcbiAgIC8qKlxyXG4gICAgKiBTcGVjaWZ5IGEgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGEgY2xhc3MgcGVyIG5vZGUuIFVzZWZ1bCBmb3Igc3R5bGluZyB0aGUgbm9kZXMgaW5kaXZpZHVhbGx5LlxyXG5cclxuICAgICAgRXhhbXBsZTpcclxuICAgICAgYGBgXHJcbiAgICAgICogb3B0aW9ucyA9IHtcclxuICAgICAgKiAgIG5vZGVDbGFzczogKG5vZGU6VHJlZU5vZGUpID0+IHtcclxuICAgICAgKiAgICAgcmV0dXJuICdpY29uLScgKyBub2RlLmRhdGEuaWNvbjtcclxuICAgICAgKiAgIH1cclxuICAgICAgKiB9XHJcbiAgICAgIGBgYFxyXG4gICAgKi9cclxuICAgbm9kZUNsYXNzPzogKG5vZGU6IFRyZWVOb2RlKSA9PiBzdHJpbmc7XHJcbiAgIC8qKlxyXG4gICAgQm9vbGVhbiBmbGFnIHRvIHVzZSB0aGUgdmlydHVhbCBzY3JvbGwgb3B0aW9uLlxyXG5cclxuICAgIFRvIHVzZSB0aGlzIG9wdGlvbiwgeW91IG11c3Qgc3VwcGx5IHRoZSBoZWlnaHQgb2YgdGhlIGNvbnRhaW5lciwgYW5kIHRoZSBoZWlnaHQgb2YgZWFjaCBub2RlIGluIHRoZSB0cmVlLlxyXG5cclxuICAgIFlvdSBjYW4gYWxzbyBzcGVjaWZ5IGhlaWdodCBmb3IgdGhlIGRyb3BTbG90IHdoaWNoIGlzIGxvY2F0ZWQgYmV0d2VlbiBub2Rlcy5cclxuXHJcbiAgICAqICoqRGVmYXVsdCBWYWx1ZTogZmFsc2UqKlxyXG5cclxuICAgIGV4YW1wbGU6XHJcbiAgICBgYGBcclxuICAgICogb3B0aW9ucyA9IHtcclxuICAgICogICB1c2VWaXJ0dWFsU2Nyb2xsOiB0cnVlLFxyXG4gICAgKiAgIG5vZGVIZWlnaHQ6IChub2RlOiBUcmVlTm9kZSkgPT4gbm9kZS5teUhlaWdodCxcclxuICAgICogICBkcm9wU2xvdEhlaWdodDogM1xyXG4gICAgKiB9XHJcbiAgICBgYGBcclxuICAgICovXHJcbiAgIHVzZVZpcnR1YWxTY3JvbGw/OiBib29sZWFuO1xyXG4gICAvKipcclxuICAgICogRm9yIHVzZSB3aXRoIGB1c2VWaXJ0dWFsU2Nyb2xsYCBvcHRpb24uXHJcbiAgICAqIFNwZWNpZnkgYSBoZWlnaHQgZm9yIG5vZGVzIGluIHBpeGVscy4gQ291bGQgYmUgZWl0aGVyOlxyXG4gICAgKiAtIG51bWJlclxyXG4gICAgKiAtIChub2RlOiBUcmVlTm9kZSkgPT4gbnVtYmVyXHJcblxyXG4gICAgKiAqKkRlZmF1bHQgVmFsdWU6IDIyKipcclxuICAgICovXHJcbiAgIG5vZGVIZWlnaHQ/OiBudW1iZXIgfCBJTm9kZUhlaWdodEZuO1xyXG4gICAvKipcclxuICAgICogRm9yIHVzZSB3aXRoIGB1c2VWaXJ0dWFsU2Nyb2xsYCBvcHRpb24uXHJcbiAgICAqIFNwZWNpZnkgYSBoZWlnaHQgZm9yIGRyb3Agc2xvdHMgKGxvY2F0ZWQgYmV0d2VlbiBub2RlcykgaW4gcGl4ZWxzXHJcblxyXG4gICAgKiAqKkRlZmF1bHQgVmFsdWU6IDIqKlxyXG4gICAgKi9cclxuICAgZHJvcFNsb3RIZWlnaHQ/OiBudW1iZXI7XHJcbiAgIC8qKlxyXG4gICAgKiBCb29sZWFuIHdoZXRoZXIgb3Igbm90IHRvIGFuaW1hdGUgZXhwYW5kIC8gY29sbGFwc2Ugb2Ygbm9kZXMuXHJcblxyXG4gICAgKiAqKkRlZmF1bHQgVmFsdWU6IGZhbHNlKipcclxuICAgICovXHJcbiAgIGFuaW1hdGVFeHBhbmQ/OiBib29sZWFuO1xyXG4gICAvKipcclxuICAgICogU3BlZWQgb2YgZXhwYW5kIGFuaW1hdGlvbiAoZGVzY3JpYmVkIGluIHBpeGVscyBwZXIgMTcgbXMpLlxyXG5cclxuICAgICogKipEZWZhdWx0IFZhbHVlOiAzMCoqXHJcbiAgICAqL1xyXG4gICBhbmltYXRlU3BlZWQ/OiBudW1iZXI7XHJcbiAgIC8qKlxyXG4gICAgKiBJbmNyZWFzZSBvZiBleHBhbmQgYW5pbWF0aW9uIHNwZWVkIChkZXNjcmliZWQgaW4gbXVsdGlwbHkgcGVyIDE3IG1zKS5cclxuXHJcbiAgICAqICoqRGVmYXVsdCBWYWx1ZTogMS4yKipcclxuICAgICovXHJcbiAgIGFuaW1hdGVBY2NlbGVyYXRpb24/OiBudW1iZXI7XHJcbiAgIC8qKlxyXG4gICAgKiBXaGV0aGVyIHRvIHNjcm9sbCB0byB0aGUgbm9kZSB0byBtYWtlIGl0IHZpc2libGUgd2hlbiBpdCBpcyBhY3RpdmF0ZWQuXHJcblxyXG4gICAgKiAqKkRlZmF1bHQgVmFsdWU6IHRydWUqKlxyXG4gICAgKi9cclxuICAgc2Nyb2xsT25BY3RpdmF0ZT86IGJvb2xlYW47XHJcbiAgIC8qKlxyXG4gICAgKiBGdW5jdGlvbiB0byBjbG9uZSBhIG5vZGUuXHJcbiAgICAqIFJlY2VpdmVzIGEgVHJlZU5vZGUgb2JqZWN0LCBhbmQgcmV0dXJucyBhIG5vZGUgb2JqZWN0IChvbmx5IHRoZSBkYXRhKS5cclxuICAgICogVGhpcyBjYWxsYmFjayB3aWxsIGJlIGNhbGxlZCB3aGVuIGNvcHlpbmcgYSBub2RlIGluc2lkZSB0aGUgdHJlZSxcclxuICAgICogYnkgZWl0aGVyIGNhbGxpbmcgY29weU5vZGUsIG9yIGJ5IGRyYWdnaW5nIGFuZCBob2xkaW5nIHRoZSBjdHJsIGtleVxyXG4gICAgKlxyXG4gICAgKiBGb3IgZXhhbXBsZTpcclxuICAgICAgYGBgXHJcbiAgICAgICAgb3B0aW9uczogSVRyZWVPcHRpb25zID0ge1xyXG4gICAgICAgICAgZ2V0Tm9kZUNsb25lOiAobm9kZSkgPT4gKHtcclxuICAgICAgICAgICAgLi4ubm9kZS5kYXRhLFxyXG4gICAgICAgICAgICBpZDogdXVpZC52NCgpLFxyXG4gICAgICAgICAgICBuYW1lOiBgY29weSBvZiAke25vZGUuZGF0YS5uYW1lfWBcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgfTtcclxuICAgICAgYGBgXHJcbiAgICAqXHJcbiAgICAqICoqRGVmYXVsdCBWYWx1ZTogY2xvbmUgdGhlIG5vZGUgdXNpbmcgT2JqZWN0LmFzc2lnbiwgYW5kIHJlbW92ZSAnaWQnIHByb3BlcnR5KipcclxuICAgICovXHJcbiAgICBnZXROb2RlQ2xvbmU/OiAobm9kZTogVHJlZU5vZGUpID0+IGFueTtcclxuICAgIC8qKlxyXG4gICAgICogTWFrZXMgdGhlIHRyZWUgcmlnaHQtdG8tbGVmdC5cclxuICAgICAqIFRoaXMgaW5jbHVkZSBkaXJlY3Rpb24sIGV4cGFuZGVyIHN0eWxlLCBhbmQgY2hhbmdlIGtleSBiaW5kaW5nIChyaWdodCBrZXkgY29sbGFwc2UgYW5kIGxlZnQga2V5IGV4cGFuZHMgaW5zdGVhZCBvZiB2aWNlLXZlcnNhKVxyXG4gICAgICovXHJcbiAgICBydGw/OiBib29sZWFuO1xyXG4gICAgLyoqXHJcbiAgICAgKiBTcGVjaWZpZXMgaWQgb2Ygcm9vdCBub2RlICh2aXJ0dWFsUm9vdClcclxuICAgICAqL1xyXG4gICAgcm9vdElkPzogYW55O1xyXG4gICAgLyoqXHJcbiAgICAgKiBXaGV0aGVyIHRvIGRpc3BsYXkgYSBjaGVja2JveCBuZXh0IHRvIHRoZSBub2RlIG9yIG5vdFxyXG4gICAgICovXHJcbiAgICB1c2VDaGVja2JveD86IGJvb2xlYW47XHJcbiAgICAvKipcclxuICAgICAqIFdoZXRoZXIgdG8gdXNlIG1hc3RlciBjaGVja2JveGVzIG1lY2hhbmlzbSBpZiB0aGUgdXNlQ2hlY2tib3ggaXMgc2V0IHRvIHRydWVcclxuICAgICAqL1xyXG4gICAgdXNlVHJpU3RhdGU/OiBib29sZWFuO1xyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgSFRNTCBlbGVtZW50IHRoYXQgaXMgdGhlIHNjcm9sbCBjb250YWluZXIgZm9yIHRoZSB0cmVlLlxyXG4gICAgICogVGhlIGRlZmF1bHQgYmVoYXZpb3VyIGlzIHRvIHdyYXAgdGhlIHRyZWUgd2l0aCBhIGNvbnRhaW5lciB0aGF0IGhhcyBvdmVyZmxvdzogaGlkZGVuLFxyXG4gICAgICogYW5kIHRoZW4gdGhlIHNjcm9sbGluZyBjb250YWluZXIgaXMgdGhlIHZpZXdwb3J0IGluc2lkZSB0aGUgdHJlZSBjb21wb25lbnRcclxuICAgICAqL1xyXG4gICAgc2Nyb2xsQ29udGFpbmVyPzogSFRNTEVsZW1lbnQ7XHJcbiB9XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElUcmVlTm9kZSB7XHJcbiAgLy8gcHJvcGVydGllc1xyXG4gIC8qKlxyXG4gICAqIFBhcmVudCBub2RlXHJcbiAgICovXHJcbiAgcGFyZW50OiBJVHJlZU5vZGU7XHJcbiAgLyoqXHJcbiAgICogVGhlIHZhbHVlIG9mIHRoZSBub2RlJ3MgZmllbGQgdGhhdCBpcyB1c2VkIGZvciBkaXNwbGF5aW5nIGl0cyBjb250ZW50LlxyXG4gICAqIEJ5IGRlZmF1bHQgJ25hbWUnLCB1bmxlc3Mgc3RhdGVkIG90aGVyd2lzZSBpbiB0aGUgb3B0aW9uc1xyXG4gICAqL1xyXG4gIGRpc3BsYXlGaWVsZDogc3RyaW5nO1xyXG4gIC8qKlxyXG4gICAqIFRoZSBjaGlsZHJlbiBvZiB0aGUgbm9kZS5cclxuICAgKiBCeSBkZWZhdWx0IGlzIGRldGVybWluZWQgYnkgJ25vZGUuZGF0YS5jaGlsZHJlbicsIHVubGVzcyBzdGF0ZWQgb3RoZXJ3aXNlIGluIHRoZSBvcHRpb25zXHJcbiAgICovXHJcbiAgY2hpbGRyZW46IElUcmVlTm9kZVtdO1xyXG4gIC8qKlxyXG4gICAqIFBvaW50ZXIgdG8gdGhlIG9yaWdpbmFsIGRhdGEuXHJcbiAgICovXHJcbiAgZGF0YTogYW55O1xyXG4gIC8qKlxyXG4gICAqIFBvaW50ZXIgdG8gdGhlIEVsZW1lbnRSZWYgb2YgdGhlIFRyZWVOb2RlQ29tcG9uZW50IHRoYXQncyBkaXNwbGF5aW5nIHRoaXMgbm9kZVxyXG4gICAqL1xyXG4gIGVsZW1lbnRSZWY6IGFueTtcclxuICAvKipcclxuICAgKiBMZXZlbCBpbiB0aGUgdHJlZSAoc3RhcnRzIGZyb20gMSkuXHJcbiAgICovXHJcbiAgbGV2ZWw6IG51bWJlcjtcclxuICAvKipcclxuICAgKiBQYXRoIGluIHRoZSB0cmVlOiBBcnJheSBvZiBJRHMuXHJcbiAgICovXHJcbiAgcGF0aDogc3RyaW5nW107XHJcbiAgLyoqXHJcbiAgICogaW5kZXggb2YgdGhlIG5vZGUgaW5zaWRlIGl0cyBwYXJlbnQncyBjaGlsZHJlblxyXG4gICAqL1xyXG4gIGluZGV4OiBudW1iZXI7XHJcbiAgLyoqXHJcbiAgICogQSB1bmlxdWUga2V5IG9mIHRoaXMgbm9kZSBhbW9uZyBpdHMgc2libGluZ3MuXHJcbiAgICogQnkgZGVmYXVsdCBpdCdzIHRoZSAnaWQnIG9mIHRoZSBvcmlnaW5hbCBub2RlLCB1bmxlc3Mgc3RhdGVkIG90aGVyd2lzZSBpbiBvcHRpb25zLmlkRmllbGRcclxuICAgKi9cclxuICBpZDogSURUeXBlO1xyXG5cclxuICAvLyBoZWxwZXJzXHJcbiAgaXNFeHBhbmRlZDogYm9vbGVhbjtcclxuICBpc0FjdGl2ZTogYm9vbGVhbjtcclxuICBpc0ZvY3VzZWQ6IGJvb2xlYW47XHJcbiAgaXNDb2xsYXBzZWQ6IGJvb2xlYW47XHJcbiAgaXNMZWFmOiBib29sZWFuO1xyXG4gIGhhc0NoaWxkcmVuOiBib29sZWFuO1xyXG4gIGlzUm9vdDogYm9vbGVhbjtcclxuXHJcbiAgLy8gdHJhdmVyc2luZ1xyXG4gIC8qKlxyXG4gICAqIEBwYXJhbSBza2lwSGlkZGVuIHdoZXRoZXIgdG8gc2tpcCBoaWRkZW4gbm9kZXNcclxuICAgKiBAcmV0dXJucyBuZXh0IHNpYmxpbmcgKG9yIG51bGwpXHJcbiAgICovXHJcbiAgZmluZE5leHRTaWJsaW5nKHNraXBIaWRkZW4pOiBJVHJlZU5vZGU7XHJcbiAgLyoqXHJcbiAgICogQHBhcmFtIHNraXBIaWRkZW4gd2hldGhlciB0byBza2lwIGhpZGRlbiBub2Rlc1xyXG4gICAqIEByZXR1cm5zIHByZXZpb3VzIHNpYmxpbmcgKG9yIG51bGwpXHJcbiAgICovXHJcbiAgZmluZFByZXZpb3VzU2libGluZyhza2lwSGlkZGVuKTogSVRyZWVOb2RlO1xyXG4gIC8qKlxyXG4gICAqIEBwYXJhbSBza2lwSGlkZGVuIHdoZXRoZXIgdG8gc2tpcCBoaWRkZW4gbm9kZXNcclxuICAgKiBAcmV0dXJucyBmaXJzdCBjaGlsZCAob3IgbnVsbClcclxuICAgKi9cclxuICBnZXRGaXJzdENoaWxkKHNraXBIaWRkZW4pOiBJVHJlZU5vZGU7XHJcbiAgLyoqXHJcbiAgICogQHBhcmFtIHNraXBIaWRkZW4gd2hldGhlciB0byBza2lwIGhpZGRlbiBub2Rlc1xyXG4gICAqIEByZXR1cm5zIGxhc3QgY2hpbGQgKG9yIG51bGwpXHJcbiAgICovXHJcbiAgZ2V0TGFzdENoaWxkKHNraXBIaWRkZW4pOiBJVHJlZU5vZGU7XHJcbiAgLyoqXHJcbiAgICogRmluZHMgdGhlIHZpc3VhbGx5IG5leHQgbm9kZSBpbiB0aGUgdHJlZS5cclxuICAgKiBAcGFyYW0gZ29JbnNpZGUgd2hldGhlciB0byBsb29rIGZvciBjaGlsZHJlbiBvciBqdXN0IHNpYmxpbmdzXHJcbiAgICogQHJldHVybnMgbmV4dCBub2RlLlxyXG4gICAqL1xyXG4gIGZpbmROZXh0Tm9kZShnb0luc2lkZTogYm9vbGVhbik6IElUcmVlTm9kZTtcclxuICAvKipcclxuICAgKiBGaW5kcyB0aGUgdmlzdWFsbHkgcHJldmlvdXMgbm9kZSBpbiB0aGUgdHJlZS5cclxuICAgKiBAcGFyYW0gc2tpcEhpZGRlbiB3aGV0aGVyIHRvIHNraXAgaGlkZGVuIG5vZGVzXHJcbiAgICogQHJldHVybnMgcHJldmlvdXMgbm9kZS5cclxuICAgKi9cclxuICBmaW5kUHJldmlvdXNOb2RlKHNraXBIaWRkZW4pOiBJVHJlZU5vZGU7XHJcblxyXG4gIC8qKlxyXG4gICAqIEByZXR1cm5zICAgICAgdHJ1ZSBpZiB0aGlzIG5vZGUgaXMgYSBkZXNjZW5kYW50IG9mIHRoZSBwYXJhbWV0ZXIgbm9kZVxyXG4gICAqL1xyXG4gIGlzRGVzY2VuZGFudE9mKG5vZGU6IElUcmVlTm9kZSk6IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIEByZXR1cm5zICAgICAgaW4gY2FzZSBsZXZlbFBhZGRpbmcgb3B0aW9uIGlzIHN1cHBsaWVkLCByZXR1cm5zIHRoZSBjdXJyZW50IG5vZGUncyBwYWRkaW5nXHJcbiAgICovXHJcbiAgZ2V0Tm9kZVBhZGRpbmcoKTogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBAcmV0dXJucyAgICAgIGluIGNhc2Ugbm9kZUNsYXNzIG9wdGlvbiBpcyBzdXBwbGllZCwgcmV0dXJucyB0aGUgY3VycmVudCBub2RlJ3MgY2xhc3NcclxuICAgKi9cclxuICBnZXRDbGFzcygpOiBzdHJpbmc7XHJcblxyXG4gIC8vIGFjdGlvbnNcclxuICAvKipcclxuICAgKiBFeHBhbmRzIC8gQ29sbGFwc2VzIHRoZSBub2RlXHJcbiAgICovXHJcbiAgdG9nZ2xlRXhwYW5kZWQoKTtcclxuICAvKipcclxuICAgKiBFeHBhbmRzIHRoZSBub2RlXHJcbiAgICovXHJcbiAgZXhwYW5kKCk7XHJcbiAgLyoqXHJcbiAgICogQ29sbGFwc2VzIHRoZSBub2RlXHJcbiAgICovXHJcbiAgY29sbGFwc2UoKTtcclxuICAvKipcclxuICAgKiBFeHBhbmRzIGFsbCBhbmNlc3RvcnMgb2YgdGhlIG5vZGVcclxuICAgKi9cclxuICBlbnN1cmVWaXNpYmxlKCk7XHJcbiAgLyoqXHJcbiAgICogQWN0aXZhdGVzIC8gRGVhY3RpdmF0ZXMgdGhlIG5vZGUgKHNlbGVjdHMgLyBkZXNlbGVjdHMpXHJcbiAgICovXHJcbiAgdG9nZ2xlQWN0aXZhdGVkKG11bHRpKTtcclxuICAvKipcclxuICAgKiBGb2N1cyBvbiB0aGUgbm9kZVxyXG4gICAqL1xyXG4gIGZvY3VzKCk7XHJcbiAgLyoqXHJcbiAgICogQmx1ciAodW5mb2N1cykgdGhlIG5vZGVcclxuICAgKi9cclxuICBibHVyKCk7XHJcbiAgLyoqXHJcbiAgICogSGlkZXMgdGhlIG5vZGVcclxuICAgKi9cclxuICBoaWRlKCk7XHJcbiAgLyoqXHJcbiAgICogTWFrZXMgdGhlIG5vZGUgdmlzaWJsZVxyXG4gICAqL1xyXG4gIHNob3coKTtcclxuICAvKipcclxuICAgKiBAcGFyYW0gdmFsdWUgIGlmIHRydWUgbWFrZXMgdGhlIG5vZGUgaGlkZGVuLCBvdGhlcndpc2UgdmlzaWJsZVxyXG4gICAqL1xyXG4gIHNldElzSGlkZGVuKHZhbHVlOiBib29sZWFuKTtcclxuICAvKipcclxuICAgKiBTY3JvbGwgdGhlIHNjcmVlbiB0byBtYWtlIHRoZSBub2RlIHZpc2libGVcclxuICAgKi9cclxuICBzY3JvbGxJbnRvVmlldygpO1xyXG4gIC8qKlxyXG4gICAqIEZpcmUgYW4gZXZlbnQgdG8gdGhlIHJlbmRlcmVyIG9mIHRoZSB0cmVlIChpZiBpdCB3YXMgcmVnaXN0ZXJlZClcclxuICAgKi9cclxuICBmaXJlRXZlbnQoZXZlbnQ6IGFueSk7XHJcbiAgLyoqXHJcbiAgICogSW52b2tlcyBhIG1ldGhvZCBmb3IgZXZlcnkgbm9kZSB1bmRlciB0aGlzIG9uZSAtIGRlcHRoIGZpcnN0XHJcbiAgICogQHBhcmFtIGZuICBhIGZ1bmN0aW9uIHRoYXQgcmVjZWl2ZXMgdGhlIG5vZGVcclxuICAgKi9cclxuICBkb0ZvckFsbChmbjogKG5vZGU6IElUcmVlTm9kZSkgPT4gYW55KTtcclxuICAvKipcclxuICAgKiBleHBhbmQgYWxsIG5vZGVzIHVuZGVyIHRoaXMgb25lXHJcbiAgICovXHJcbiAgZXhwYW5kQWxsKCk7XHJcbiAgLyoqXHJcbiAgICogY29sbGFwc2UgYWxsIG5vZGVzIHVuZGVyIHRoaXMgb25lXHJcbiAgICovXHJcbiAgY29sbGFwc2VBbGwoKTtcclxuICAvKipcclxuICAgKiBzZXRzIHRoZSBub2RlIHRvIGFjdGl2ZSAvIGluYWN0aXZlIGFjY29yZGluZyB0byB0aGUgdmFsdWUuXHJcbiAgICogSWYgbXVsdGkgaXMgdHJ1ZSAoZGVmYXVsdCBmYWxzZSkgLSBkb2VzIGEgbXVsdGlzZWxlY3QuXHJcbiAgICovXHJcbiAgc2V0SXNBY3RpdmUodmFsdWU6IGJvb2xlYW4sIG11bHRpPzogYm9vbGVhbik7XHJcbiAgLyoqXHJcbiAgICogc2V0cyB0aGUgbm9kZSB0byBiZSBhY3RpdmUgYW5kIG1ha2VzIHN1cmUgaXQncyB2aXNpYmxlIGJ5IGV4cGFuZGluZyBhbGwgbm9kZXMgYWJvdmUgaXQgYW5kIHNjcm9sbGluZyBpdCBpbnRvIHZpZXcuXHJcbiAgICogVmVyeSBzaW1pbGFyIHRvIGNhbGxpbmcgYGFjdGl2YXRlYCwgYGVuc3VyZVZpc2libGVgIGFuZCBgc2Nyb2xsSW50b1ZpZXdgIG1ldGhvZHMuXHJcbiAgICogSWYgbXVsdGkgaXMgdHJ1ZSAoZGVmYXVsdCBmYWxzZSkgLSBkb2VzIGEgbXVsdGlzZWxlY3QuXHJcbiAgICovXHJcbiAgc2V0QWN0aXZlQW5kVmlzaWJsZShtdWx0aTogYm9vbGVhbik7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVRyZWVNb2RlbCB7XHJcbiAgLy8gcHJvcGVydGllc1xyXG4gIC8qKlxyXG4gICAqIEFsbCByb290IG5vZGVzXHJcbiAgICovXHJcbiAgcm9vdHM6IElUcmVlTm9kZVtdO1xyXG4gIC8qKlxyXG4gICAqIEN1cnJlbnQgZm9jdXNlZCBub2RlXHJcbiAgICovXHJcbiAgZm9jdXNlZE5vZGU6IElUcmVlTm9kZTtcclxuICAvKipcclxuICAgKiBPcHRpb25zIHRoYXQgd2VyZSBwYXNzZWQgdG8gdGhlIHRyZWUgY29tcG9uZW50XHJcbiAgICovXHJcbiAgb3B0aW9uczogSVRyZWVPcHRpb25zO1xyXG5cclxuICAvKipcclxuICAgKiBJcyB0aGUgdHJlZSBjdXJyZW50bHkgZm9jdXNlZFxyXG4gICAqL1xyXG4gIGlzRm9jdXNlZDogYm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAcmV0dXJucyBDdXJyZW50IGFjdGl2ZSBub2Rlc1xyXG4gICAqL1xyXG4gIGFjdGl2ZU5vZGVzOiBJVHJlZU5vZGVbXTtcclxuICAvKipcclxuICAgKiBAcmV0dXJucyBDdXJyZW50IGV4cGFuZGVkIG5vZGVzXHJcbiAgICovXHJcbiAgZXhwYW5kZWROb2RlczogSVRyZWVOb2RlW107XHJcblxyXG4gIC8vIGhlbHBlcnNcclxuICAvKipcclxuICAgKiBAcmV0dXJucyBDdXJyZW50IGFjdGl2ZSBub2RlLiBJZiBtdWx0aXBsZSBub2RlcyBhcmUgYWN0aXZlIC0gcmV0dXJucyB0aGUgZmlyc3Qgb25lLlxyXG4gICAqL1xyXG4gIGdldEFjdGl2ZU5vZGUoKTogSVRyZWVOb2RlO1xyXG4gIC8qKlxyXG4gICAqIEByZXR1cm5zIEN1cnJlbnQgZm9jdXNlZCBub2RlIChlaXRoZXIgaG92ZXJlZCBvciB0cmF2ZXJzZWQgd2l0aCBrZXlzKVxyXG4gICAqL1xyXG4gIGdldEZvY3VzZWROb2RlKCk6IElUcmVlTm9kZTtcclxuICAvKipcclxuICAgKiBTZXQgZm9jdXMgb24gYSBub2RlXHJcbiAgICogQHBhcmFtIHZhbHVlICB0cnVlIG9yIGZhbHNlIC0gd2hldGhlciB0byBzZXQgZm9jdXMgb3IgYmx1ci5cclxuICAgKi9cclxuICBzZXRGb2N1c2VkTm9kZShub2RlOiBJVHJlZU5vZGUpO1xyXG4gIC8qKlxyXG4gICAqIEBwYXJhbSBza2lwSGlkZGVuICB0cnVlIG9yIGZhbHNlIC0gd2hldGhlciB0byBza2lwIGhpZGRlbiBub2Rlc1xyXG4gICAqIEByZXR1cm5zICAgICAgZmlyc3Qgcm9vdCBvZiB0aGUgdHJlZVxyXG4gICAqL1xyXG4gIGdldEZpcnN0Um9vdChza2lwSGlkZGVuPzogYm9vbGVhbik6IElUcmVlTm9kZTtcclxuICAvKipcclxuICAgKiBAcGFyYW0gc2tpcEhpZGRlbiAgdHJ1ZSBvciBmYWxzZSAtIHdoZXRoZXIgdG8gc2tpcCBoaWRkZW4gbm9kZXNcclxuICAgKiBAcmV0dXJucyAgICAgIGxhc3Qgcm9vdCBvZiB0aGUgdHJlZVxyXG4gICAqL1xyXG4gIGdldExhc3RSb290KHNraXBIaWRkZW4/OiBib29sZWFuKTogSVRyZWVOb2RlO1xyXG4gIC8qKlxyXG4gICAqIEByZXR1cm5zICAgICAgdHJ1ZSBpZiB0aGUgdHJlZSBpcyBlbXB0eVxyXG4gICAqL1xyXG4gIGlzRW1wdHlUcmVlKCk6IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHJldHVybnMgQWxsIHJvb3Qgbm9kZXMgdGhhdCBwYXNzIHRoZSBjdXJyZW50IGZpbHRlclxyXG4gICAqL1xyXG4gIGdldFZpc2libGVSb290cygpOiBJVHJlZU5vZGVbXTtcclxuICAvKipcclxuICAgKiBAcGFyYW0gICAgIHBhdGggIGFycmF5IG9mIG5vZGUgSURzIHRvIGJlIHRyYXZlcnNlZCByZXNwZWN0aXZlbHlcclxuICAgKiBAcGFyYW0gICAgIHN0YXJ0Tm9kZSAgb3B0aW9uYWwuIFdoaWNoIG5vZGUgdG8gc3RhcnQgdHJhdmVyc2luZyBmcm9tXHJcbiAgICogQHJldHVybnMgICBUaGUgbm9kZSwgaWYgZm91bmQgLSBudWxsIG90aGVyd2lzZVxyXG4gICAqL1xyXG4gIGdldE5vZGVCeVBhdGgocGF0aDogYW55W10sIHN0YXJ0Tm9kZT86IElUcmVlTm9kZSk6IElUcmVlTm9kZTtcclxuICAvKipcclxuICAgKiBAcGFyYW0gICAgIGlkICBub2RlIElEIHRvIGZpbmRcclxuICAgKiBAcmV0dXJucyAgIFRoZSBub2RlLCBpZiBmb3VuZCAtIG51bGwgb3RoZXJ3aXNlXHJcbiAgICovXHJcbiAgZ2V0Tm9kZUJ5SWQoaWQ6IElEVHlwZSk6IElUcmVlTm9kZTtcclxuICAvKipcclxuICAgKiBAcGFyYW0gICAgIHByZWRpY2F0ZSAtIGVpdGhlciBhbiBvYmplY3Qgb3IgYSBmdW5jdGlvbiwgdXNlZCBhcyBhIHRlc3QgY29uZGl0aW9uIG9uIGFsbCBub2Rlcy5cclxuICAgKiAgICAgICAgICAgIENvdWxkIGJlIGV2ZXJ5IHByZWRpY2F0ZSB0aGF0J3Mgc3VwcG9ydGVkIGJ5IGphdmFTY3JpcHRzIEFycmF5LnByb3RvdHlwZS5maW5kKCkgbWV0aG9kXHJcbiAgICogQHBhcmFtICAgICBzdGFydE5vZGUgIG9wdGlvbmFsLiBXaGljaCBub2RlIHRvIHN0YXJ0IHRyYXZlcnNpbmcgZnJvbVxyXG4gICAqIEByZXR1cm5zICAgRmlyc3Qgbm9kZSB0aGF0IG1hdGNoZXMgdGhlIHByZWRpY2F0ZSwgaWYgZm91bmQgLSBudWxsIG90aGVyd2lzZVxyXG4gICAqL1xyXG4gIGdldE5vZGVCeShwcmVkaWNhdGU6IGFueSwgc3RhcnROb2RlPzogSVRyZWVOb2RlKTogSVRyZWVOb2RlO1xyXG4gIC8qKlxyXG4gICAqIGdldCB0cmVlIHN0YXRlXHJcbiAgICovXHJcbiAgZ2V0U3RhdGUoKTogSVRyZWVTdGF0ZTtcclxuXHJcbiAgLy8gYWN0aW9uc1xyXG4gIC8qKlxyXG4gICAqIEZvY3VzZXMgb3IgYmx1cnMgdGhlIHRyZWVcclxuICAgKiBAcGFyYW0gdmFsdWUgIHRydWUgb3IgZmFsc2UgLSB3aGV0aGVyIHRvIHNldCBmb2N1cyBvciBibHVyLlxyXG4gICAqL1xyXG4gIHNldEZvY3VzKHZhbHVlOiBib29sZWFuKTtcclxuICAvKipcclxuICAgKiBGb2N1c2VzIG9uIHRoZSBuZXh0IG5vZGUgaW4gdGhlIHRyZWUgKHNhbWUgYXMgZG93biBhcnJvdylcclxuICAgKi9cclxuICBmb2N1c05leHROb2RlKCk7XHJcbiAgLyoqXHJcbiAgICogRm9jdXNlcyBvbiB0aGUgcHJldmlvdXMgbm9kZSBpbiB0aGUgdHJlZSAoc2FtZSBhcyB1cCBhcnJvdylcclxuICAgKi9cclxuICBmb2N1c1ByZXZpb3VzTm9kZSgpO1xyXG4gIC8qKlxyXG4gICAqIEZvY3VzZXMgb24gdGhlIGlubmVyIGNoaWxkIG9mIHRoZSBjdXJyZW50IGZvY3VzZWQgbm9kZSAoc2FtZSBhcyByaWdodCBhcnJvdyBvbiBhbiBleHBhbmRlZCBub2RlKVxyXG4gICAqL1xyXG4gIGZvY3VzRHJpbGxEb3duKCk7XHJcbiAgLyoqXHJcbiAgICogRm9jdXNlcyBvbiB0aGUgcGFyZW50IG9mIHRoZSBjdXJyZW50IGZvY3VzZWQgbm9kZSAoc2FtZSBhcyBsZWZ0IGFycm93IG9uIGEgY29sbGFwc2VkIG5vZGUpXHJcbiAgICovXHJcbiAgZm9jdXNEcmlsbFVwKCk7XHJcbiAgLyoqXHJcbiAgICogTWFya3MgaXNIaWRkZW4gZmllbGQgaW4gYWxsIG5vZGVzIHJlY3Vyc2l2ZWx5IGFjY29yZGluZyB0byB0aGUgZmlsdGVyIHBhcmFtLlxyXG4gICAqIElmIGEgbm9kZSBpcyBtYXJrZWQgdmlzaWJsZSwgYWxsIG9mIGl0cyBhbmNlc3RvcnMgd2lsbCBiZSBtYXJrZWQgdmlzaWJsZSBhcyB3ZWxsLlxyXG4gICAqIEBwYXJhbSBmaWx0ZXIgIGVpdGhlciBhIHN0cmluZyBvciBhIGZ1bmN0aW9uLlxyXG4gICAqICAgSW4gY2FzZSBpdCdzIGEgc3RyaW5nLCBpdCB3aWxsIGJlIHNlYXJjaGVkIGNhc2UgaW5zZW5zaXRpdmVseSBpbiB0aGUgbm9kZSdzIGRpc3BsYXkgYXR0cmlidXRlXHJcbiAgICogICBJbiBjYXNlIGl0J3MgYSBmdW5jdGlvbiwgaXQgd2lsbCBiZSBwYXNzZWQgdGhlIG5vZGUsIGFuZCBzaG91bGQgcmV0dXJuIHRydWUgaWYgdGhlIG5vZGUgc2hvdWxkIGJlIHZpc2libGUsIGZhbHNlIG90aGVyd2lzZVxyXG4gICAqIEBwYXJhbSBhdXRvU2hvdyAgaWYgdHJ1ZSwgbWFrZSBzdXJlIGFsbCBub2RlcyB0aGF0IHBhc3NlZCB0aGUgZmlsdGVyIGFyZSB2aXNpYmxlXHJcbiAgICovXHJcbiAgZmlsdGVyTm9kZXMoZmlsdGVyLCBhdXRvU2hvdz86IGJvb2xlYW4pO1xyXG4gIC8qKlxyXG4gICAqIE1hcmtzIGFsbCBub2RlcyBpc0hpZGRlbiA9IGZhbHNlXHJcbiAgICovXHJcbiAgY2xlYXJGaWx0ZXIoKTtcclxuICAvKipcclxuICAgKiBtb3ZlcyBhIG5vZGUgZnJvbSBvbmUgbG9jYXRpb24gaW4gdGhlIHRyZWUgdG8gYW5vdGhlclxyXG4gICAqIEBwYXJhbSBub2RlIGRlc2NyaWJlcyB3aGljaCBub2RlIG5lZWRzIHRvIGJlIG1vdmVkXHJcbiAgICogQHBhcmFtIHRvIGRlc2NyaWJlcyB3aGVyZSB0byBtb3ZlIHRoZSBub2RlIHRvLlxyXG4gICAqIEBwYXJhbSBmcm9tIGRlc2NyaWJlcyB3aGVyZSB0byBtb3ZlIHRoZSBub2RlIGZyb20uXHJcbiAgICogQ29udGFpbnMgYSAncGFyZW50JyBub2RlLCBhbiAnaW5kZXgnLCBhbmQgYSAnZHJvcE9uTm9kZScgLSB0byBkaXN0aW5ndWlzaCBiZXR3ZWVuIGRyb3BwaW5nIGJldHdlZW4gbm9kZXMgb3Igb24gdGhlIG5vZGVcclxuICAgKi9cclxuICBtb3ZlTm9kZShub2RlOiBJVHJlZU5vZGUsIHRvOiB7cGFyZW50OiBJVHJlZU5vZGUsIGluZGV4OiBudW1iZXIsIGRyb3BPbk5vZGU6IGJvb2xlYW59LCBmcm9tOiB7cGFyZW50OiBJVHJlZU5vZGUsIGluZGV4OiBudW1iZXJ9KTtcclxuICAvKipcclxuICAgKiBJbnZva2VzIGEgbWV0aG9kIGZvciBldmVyeSBub2RlIG9mIHRoZSB0cmVlIC0gZGVwdGggZmlyc3RcclxuICAgKiBAcGFyYW0gZm4gIGEgZnVuY3Rpb24gdGhhdCByZWNlaXZlcyB0aGUgbm9kZVxyXG4gICAqL1xyXG4gIGRvRm9yQWxsKGZuOiAobm9kZTogSVRyZWVOb2RlKSA9PiBhbnkpO1xyXG4gIC8qKlxyXG4gICAqIGV4cGFuZCBhbGwgbm9kZXNcclxuICAgKi9cclxuICBleHBhbmRBbGwoKTtcclxuICAvKipcclxuICAgKiBjb2xsYXBzZSBhbGwgbm9kZXNcclxuICAgKi9cclxuICBjb2xsYXBzZUFsbCgpO1xyXG4gIC8qKlxyXG4gICAqIHNldCB0cmVlIHN0YXRlXHJcbiAgICovXHJcbiAgc2V0U3RhdGUoc3RhdGU6IElUcmVlU3RhdGUpO1xyXG5cclxuICBzdWJzY3JpYmVUb1N0YXRlKGZuOiAoc3RhdGU6IElUcmVlU3RhdGUpID0+IGFueSk7XHJcbn1cclxuLyoqXHJcbiAqIFRoaXMgaXMgdGhlIGludGVyZmFjZSBvZiB0aGUgVHJlZU5vZGVEcmFnIHNlcnZpY2VcclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVRyZWVOb2RlRHJhZyB7XHJcbiAgLyoqXHJcbiAgICogR2V0cyB0aGUgY3VycmVudCBkcmFnZ2VkIG5vZGUuIFVzZWZ1bCBmb3Igb3ZlcnJpZGluZyB0aGUgZHJvcCBhY3Rpb24uXHJcbiAgICogQHBhcmFtIG5vZGUgIFRoZSBwYXJlbnQgbm9kZSBvZiB0aGUgY3VycmVudCBkcmFnZ2VkIG5vZGVcclxuICAgKiBAcGFyYW0gaW5kZXggIFRoZSBpbmRleCBpbnNpZGUgcGFyZW50J3MgY2hpbGRyZW4sIG9mIHRoZSBjdXJyZW50IGRyYWdnZWQgbm9kZVxyXG4gICAqL1xyXG4gIGdldERyYWdOb2RlKCk6IHsgbm9kZTogVHJlZU5vZGUsIGluZGV4OiBudW1iZXIgfTtcclxufVxyXG4iXX0=