@progress/kendo-angular-dropdowns 5.4.0-dev.202106231124 → 5.5.0-dev.202110281138

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 (47) hide show
  1. package/dist/cdn/js/kendo-angular-dropdowns.js +2 -2
  2. package/dist/cdn/main.js +1 -1
  3. package/dist/es/common/list.component.js +1 -1
  4. package/dist/es/common/localization/messages.js +4 -0
  5. package/dist/es/common/shared.module.js +3 -1
  6. package/dist/es/dropdowntrees/checked-state/base-check.directive.js +54 -0
  7. package/dist/es/dropdowntrees/checked-state/check-all.directive.js +181 -0
  8. package/dist/es/dropdowntrees/checked-state/check.directive.js +15 -36
  9. package/dist/es/dropdowntrees/dropdowntree.component.js +4 -0
  10. package/dist/es/dropdowntrees/multiselecttree.component.js +66 -17
  11. package/dist/es/index.js +2 -0
  12. package/dist/es/multiselect/multiselect.component.js +8 -1
  13. package/dist/es/package-metadata.js +1 -1
  14. package/dist/es2015/common/list.component.js +6 -6
  15. package/dist/es2015/common/localization/messages.d.ts +4 -0
  16. package/dist/es2015/common/localization/messages.js +4 -0
  17. package/dist/es2015/common/shared.module.js +3 -1
  18. package/dist/es2015/dropdowntrees/checked-state/base-check.directive.d.ts +32 -0
  19. package/dist/es2015/dropdowntrees/checked-state/base-check.directive.js +48 -0
  20. package/dist/es2015/dropdowntrees/checked-state/check-all.directive.d.ts +53 -0
  21. package/dist/es2015/dropdowntrees/checked-state/check-all.directive.js +161 -0
  22. package/dist/es2015/dropdowntrees/checked-state/check.directive.d.ts +3 -5
  23. package/dist/es2015/dropdowntrees/checked-state/check.directive.js +5 -26
  24. package/dist/es2015/dropdowntrees/dropdowntree.component.d.ts +4 -0
  25. package/dist/es2015/dropdowntrees/dropdowntree.component.js +4 -0
  26. package/dist/es2015/dropdowntrees/multiselecttree.component.d.ts +18 -0
  27. package/dist/es2015/dropdowntrees/multiselecttree.component.js +91 -20
  28. package/dist/es2015/index.d.ts +2 -0
  29. package/dist/es2015/index.js +2 -0
  30. package/dist/es2015/index.metadata.json +1 -1
  31. package/dist/es2015/multiselect/multiselect.component.js +8 -1
  32. package/dist/es2015/package-metadata.js +1 -1
  33. package/dist/fesm2015/index.js +314 -55
  34. package/dist/fesm5/index.js +319 -57
  35. package/dist/npm/common/list.component.js +1 -1
  36. package/dist/npm/common/localization/messages.js +4 -0
  37. package/dist/npm/common/shared.module.js +3 -1
  38. package/dist/npm/dropdowntrees/checked-state/base-check.directive.js +56 -0
  39. package/dist/npm/dropdowntrees/checked-state/check-all.directive.js +183 -0
  40. package/dist/npm/dropdowntrees/checked-state/check.directive.js +14 -35
  41. package/dist/npm/dropdowntrees/dropdowntree.component.js +4 -0
  42. package/dist/npm/dropdowntrees/multiselecttree.component.js +66 -17
  43. package/dist/npm/index.js +4 -0
  44. package/dist/npm/multiselect/multiselect.component.js +8 -1
  45. package/dist/npm/package-metadata.js +1 -1
  46. package/dist/systemjs/kendo-angular-dropdowns.js +1 -1
  47. package/package.json +1 -1
@@ -9,7 +9,7 @@ export var packageMetadata = {
9
9
  name: '@progress/kendo-angular-dropdowns',
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
12
- publishDate: 1624447339,
12
+ publishDate: 1635420981,
13
13
  version: '',
14
14
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
15
15
  };
@@ -416,12 +416,12 @@ ListComponent = tslib_1.__decorate([
416
416
  [attr.tabIndex]="-1"
417
417
  class="k-item"
418
418
  [ngClass]="{ 'k-virtual-item': virtual, 'k-state-disabled': isDisabled(itemIndex) }">
419
- <label class="k-checkbox-label">
420
- <input *ngIf="checkboxes.enabled"
421
- type="checkbox"
422
- class="k-checkbox"
423
- (change)="onCheckedChange($event, itemIndex)"
424
- [checked]="isChecked(itemIndex)"
419
+ <label *ngIf="checkboxes.enabled"
420
+ class="k-checkbox-label">
421
+ <input type="checkbox"
422
+ class="k-checkbox"
423
+ (change)="onCheckedChange($event, itemIndex)"
424
+ [checked]="isChecked(itemIndex)"
425
425
  />
426
426
  </label>
427
427
  <ng-template *ngIf="template"
@@ -15,4 +15,8 @@ export declare class Messages extends ComponentMessages {
15
15
  * The title of the clear button.
16
16
  */
17
17
  clearTitle: string;
18
+ /**
19
+ * The text displayed for the check-all checkbox.
20
+ */
21
+ checkAllText: string;
18
22
  }
@@ -18,3 +18,7 @@ tslib_1.__decorate([
18
18
  Input(),
19
19
  tslib_1.__metadata("design:type", String)
20
20
  ], Messages.prototype, "clearTitle", void 0);
21
+ tslib_1.__decorate([
22
+ Input(),
23
+ tslib_1.__metadata("design:type", String)
24
+ ], Messages.prototype, "checkAllText", void 0);
@@ -16,6 +16,7 @@ import { ListItemDirective } from './list-item.directive';
16
16
  import { SelectableDirective } from './selection/selectable.directive';
17
17
  import { TemplateContextDirective } from './templates/template-context.directive';
18
18
  import { CheckDirective } from '../dropdowntrees/checked-state/check.directive';
19
+ import { CheckAllDirective } from '../dropdowntrees/checked-state/check-all.directive';
19
20
  const INTERNAL_DIRECTIVES = [
20
21
  ListComponent,
21
22
  ListItemDirective,
@@ -23,7 +24,8 @@ const INTERNAL_DIRECTIVES = [
23
24
  SearchBarComponent,
24
25
  TemplateContextDirective,
25
26
  TagListComponent,
26
- CheckDirective
27
+ CheckDirective,
28
+ CheckAllDirective
27
29
  ];
28
30
  /**
29
31
  * @hidden
@@ -0,0 +1,32 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import { TreeItem } from '@progress/kendo-angular-treeview';
6
+ import { CheckedItem } from './checked-item';
7
+ /**
8
+ * @hidden
9
+ *
10
+ * A directive which manages the in-memory checked state of the MultiSelectTree nodes.
11
+ */
12
+ export declare abstract class BaseCheckDirective {
13
+ /**
14
+ * The item key/keys by which the data items will be compared.
15
+ */
16
+ abstract valueField: string | string[];
17
+ /**
18
+ * Defines the collection that will store the full checked items.
19
+ */
20
+ abstract checkedItems: CheckedItem[];
21
+ /**
22
+ * Holds a Set with just the checked item keys.
23
+ *
24
+ * Should be updated each time the `checkedItems` value or content is changed.
25
+ * Can be used for efficient look-up of whether an item is checked or not (O(1) access time).
26
+ */
27
+ abstract checkedKeys: Set<any>;
28
+ protected addItem(item: TreeItem): void;
29
+ protected removeItem(item: TreeItem): void;
30
+ protected isItemChecked(item: CheckedItem): boolean;
31
+ protected updateItems(): void;
32
+ }
@@ -0,0 +1,48 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import * as tslib_1 from "tslib";
6
+ import { Input } from '@angular/core';
7
+ import { getHierarchicalItemLevel, valueFrom } from '../../common/util';
8
+ /**
9
+ * @hidden
10
+ *
11
+ * A directive which manages the in-memory checked state of the MultiSelectTree nodes.
12
+ */
13
+ export class BaseCheckDirective {
14
+ addItem(item) {
15
+ if (this.isItemChecked(item)) {
16
+ return;
17
+ }
18
+ const level = getHierarchicalItemLevel(item.index);
19
+ const candidate = Object.assign({}, item, { level });
20
+ this.checkedItems.push(candidate);
21
+ this.checkedKeys.add(valueFrom(candidate, this.valueField));
22
+ }
23
+ removeItem(item) {
24
+ if (!this.isItemChecked(item)) {
25
+ return;
26
+ }
27
+ const level = getHierarchicalItemLevel(item.index);
28
+ const candidate = Object.assign({}, item, { level });
29
+ this.checkedItems = this.checkedItems
30
+ .filter(item => valueFrom(item, this.valueField) !== valueFrom(candidate, this.valueField));
31
+ this.checkedKeys.delete(valueFrom(candidate, this.valueField));
32
+ }
33
+ isItemChecked(item) {
34
+ return this.checkedKeys.has(valueFrom(item, this.valueField));
35
+ }
36
+ updateItems() {
37
+ this.checkedItems = this.checkedItems || [];
38
+ this.checkedKeys = new Set(this.checkedItems.map(item => valueFrom(item, this.valueField)));
39
+ }
40
+ }
41
+ tslib_1.__decorate([
42
+ Input(),
43
+ tslib_1.__metadata("design:type", Object)
44
+ ], BaseCheckDirective.prototype, "valueField", void 0);
45
+ tslib_1.__decorate([
46
+ Input(),
47
+ tslib_1.__metadata("design:type", Array)
48
+ ], BaseCheckDirective.prototype, "checkedItems", void 0);
@@ -0,0 +1,53 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import { ChangeDetectorRef, ElementRef, EventEmitter, NgZone, OnChanges, OnInit, Renderer2, SimpleChanges } from '@angular/core';
6
+ import { TreeViewComponent } from '@progress/kendo-angular-treeview';
7
+ import { BaseCheckDirective } from './base-check.directive';
8
+ import { CheckedItem } from './checked-item';
9
+ /**
10
+ * @hidden
11
+ *
12
+ * A directive which manages the in-memory checked state of the MultiSelectTree nodes.
13
+ */
14
+ export declare class CheckAllDirective extends BaseCheckDirective implements OnChanges, OnInit {
15
+ private element;
16
+ private zone;
17
+ cdr: ChangeDetectorRef;
18
+ renderer: Renderer2;
19
+ lastAction: 'check' | 'uncheck';
20
+ treeview: TreeViewComponent;
21
+ /**
22
+ * Defines the collection that will store the full checked items.
23
+ */
24
+ checkedItems: CheckedItem[];
25
+ /**
26
+ * The item key/keys by which the data items will be compared.
27
+ */
28
+ valueField: string | string[];
29
+ focused: boolean;
30
+ /**
31
+ * Fires when the `checkedItems` collection was updated.
32
+ */
33
+ checkedItemsChange: EventEmitter<CheckedItem[]>;
34
+ /**
35
+ * Holds a Set with just the checked item keys.
36
+ *
37
+ * Should be updated each time the `checkedItems` value or content is changed.
38
+ * Can be used for efficient look-up of whether an item is checked or not (O(1) access time).
39
+ */
40
+ checkedKeys: Set<any>;
41
+ private currentCheckedState;
42
+ private currentIndeterminateState;
43
+ handleChange(event: any): void;
44
+ readonly isIndeterminate: boolean;
45
+ readonly isChecked: boolean;
46
+ constructor(element: ElementRef, zone: NgZone, cdr: ChangeDetectorRef, renderer: Renderer2);
47
+ ngOnChanges(changes: SimpleChanges): void;
48
+ ngOnInit(): void;
49
+ private nextTick;
50
+ private checkNode;
51
+ private allChecked;
52
+ private someChecked;
53
+ }
@@ -0,0 +1,161 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import * as tslib_1 from "tslib";
6
+ import { ChangeDetectorRef, Directive, ElementRef, EventEmitter, HostListener, Input, NgZone, Output, Renderer2 } from '@angular/core';
7
+ import { TreeViewComponent } from '@progress/kendo-angular-treeview';
8
+ import { fetchDescendentNodes, isPresent } from '../../common/util';
9
+ import { BaseCheckDirective } from './base-check.directive';
10
+ /**
11
+ * @hidden
12
+ *
13
+ * A directive which manages the in-memory checked state of the MultiSelectTree nodes.
14
+ */
15
+ let CheckAllDirective = class CheckAllDirective extends BaseCheckDirective {
16
+ constructor(element, zone, cdr, renderer) {
17
+ super();
18
+ this.element = element;
19
+ this.zone = zone;
20
+ this.cdr = cdr;
21
+ this.renderer = renderer;
22
+ /**
23
+ * Fires when the `checkedItems` collection was updated.
24
+ */
25
+ this.checkedItemsChange = new EventEmitter();
26
+ /**
27
+ * Holds a Set with just the checked item keys.
28
+ *
29
+ * Should be updated each time the `checkedItems` value or content is changed.
30
+ * Can be used for efficient look-up of whether an item is checked or not (O(1) access time).
31
+ */
32
+ this.checkedKeys = new Set();
33
+ }
34
+ handleChange(event) {
35
+ // Need to store the current checkbox state at the moment of click
36
+ this.currentCheckedState = event.checked;
37
+ this.currentIndeterminateState = this.isIndeterminate;
38
+ this.treeview.nodes.map((_value, index) => {
39
+ const itemIndex = String(index);
40
+ const itemLookup = this.treeview.itemLookup(itemIndex);
41
+ this.checkNode(itemLookup);
42
+ });
43
+ this.checkedItemsChange.emit(this.checkedItems.slice());
44
+ }
45
+ get isIndeterminate() {
46
+ const isIndeterminate = this.treeview.nodes.some((_node, index) => {
47
+ const itemIndex = String(index);
48
+ const itemLookup = this.treeview.itemLookup(itemIndex);
49
+ return this.someChecked(itemLookup);
50
+ });
51
+ return this.isChecked ? false : isIndeterminate;
52
+ }
53
+ get isChecked() {
54
+ const isChecked = this.treeview.nodes.every((_node, index) => {
55
+ const itemIndex = String(index);
56
+ const itemLookup = this.treeview.itemLookup(itemIndex);
57
+ return this.allChecked(itemLookup);
58
+ });
59
+ return isChecked;
60
+ }
61
+ ngOnChanges(changes) {
62
+ if (isPresent(changes.checkedItems)) {
63
+ this.updateItems();
64
+ this.renderer.setProperty(this.element.nativeElement, 'checked', this.isChecked);
65
+ this.renderer.setProperty(this.element.nativeElement, 'indeterminate', this.isIndeterminate);
66
+ }
67
+ }
68
+ ngOnInit() {
69
+ if (this.focused) {
70
+ this.nextTick(() => this.element.nativeElement.focus());
71
+ }
72
+ }
73
+ nextTick(fn) {
74
+ this.zone.runOutsideAngular(() => setTimeout(fn));
75
+ }
76
+ checkNode(itemLookup) {
77
+ if (this.treeview.isDisabled(itemLookup.item.dataItem, itemLookup.item.index)) {
78
+ return;
79
+ }
80
+ const pendingCheck = [];
81
+ const filter = (item) => this.treeview.isVisible(item.dataItem, item.index) &&
82
+ !this.treeview.isDisabled(item.dataItem, item.index);
83
+ pendingCheck.push(itemLookup.item);
84
+ fetchDescendentNodes(itemLookup, filter)
85
+ .forEach(lookup => pendingCheck.push(lookup.item));
86
+ pendingCheck.forEach(item => {
87
+ if (this.currentIndeterminateState) {
88
+ this.lastAction === 'check' ?
89
+ this.addItem(item) :
90
+ this.removeItem(item);
91
+ return;
92
+ }
93
+ this.currentCheckedState ?
94
+ this.addItem(item) :
95
+ this.removeItem(item);
96
+ });
97
+ }
98
+ allChecked(lookup) {
99
+ const children = lookup && lookup.children;
100
+ if (!Array.isArray(children)) {
101
+ return;
102
+ }
103
+ const childrenChecked = children.every(child => {
104
+ if (child.children.length) {
105
+ return this.isItemChecked(child.item) && this.allChecked(child);
106
+ }
107
+ return this.isItemChecked(child.item);
108
+ });
109
+ return childrenChecked && this.isItemChecked(lookup.item);
110
+ }
111
+ someChecked(lookup) {
112
+ const children = lookup && lookup.children;
113
+ if (!Array.isArray(children)) {
114
+ return;
115
+ }
116
+ const childrenChecked = children.some(child => {
117
+ if (child.children.length) {
118
+ return this.isItemChecked(child.item) || this.someChecked(child);
119
+ }
120
+ return this.isItemChecked(child.item);
121
+ });
122
+ return childrenChecked || this.isItemChecked(lookup.item);
123
+ }
124
+ };
125
+ tslib_1.__decorate([
126
+ Input(),
127
+ tslib_1.__metadata("design:type", String)
128
+ ], CheckAllDirective.prototype, "lastAction", void 0);
129
+ tslib_1.__decorate([
130
+ Input(),
131
+ tslib_1.__metadata("design:type", TreeViewComponent)
132
+ ], CheckAllDirective.prototype, "treeview", void 0);
133
+ tslib_1.__decorate([
134
+ Input(),
135
+ tslib_1.__metadata("design:type", Array)
136
+ ], CheckAllDirective.prototype, "checkedItems", void 0);
137
+ tslib_1.__decorate([
138
+ Input(),
139
+ tslib_1.__metadata("design:type", Object)
140
+ ], CheckAllDirective.prototype, "valueField", void 0);
141
+ tslib_1.__decorate([
142
+ Input('checkAll'),
143
+ tslib_1.__metadata("design:type", Boolean)
144
+ ], CheckAllDirective.prototype, "focused", void 0);
145
+ tslib_1.__decorate([
146
+ Output(),
147
+ tslib_1.__metadata("design:type", EventEmitter)
148
+ ], CheckAllDirective.prototype, "checkedItemsChange", void 0);
149
+ tslib_1.__decorate([
150
+ HostListener('change', ['$event.target']),
151
+ tslib_1.__metadata("design:type", Function),
152
+ tslib_1.__metadata("design:paramtypes", [Object]),
153
+ tslib_1.__metadata("design:returntype", void 0)
154
+ ], CheckAllDirective.prototype, "handleChange", null);
155
+ CheckAllDirective = tslib_1.__decorate([
156
+ Directive({
157
+ selector: '[checkAll]' // tslint:disable-line
158
+ }),
159
+ tslib_1.__metadata("design:paramtypes", [ElementRef, NgZone, ChangeDetectorRef, Renderer2])
160
+ ], CheckAllDirective);
161
+ export { CheckAllDirective };
@@ -6,12 +6,13 @@ import { EventEmitter, OnDestroy, OnChanges, SimpleChanges } from '@angular/core
6
6
  import { TreeViewComponent } from '@progress/kendo-angular-treeview';
7
7
  import { CheckedItem } from './checked-item';
8
8
  import { MultiSelectTreeCheckableSettings } from './checkable-settings';
9
+ import { BaseCheckDirective } from './base-check.directive';
9
10
  /**
10
11
  * @hidden
11
12
  *
12
13
  * A directive which manages the in-memory checked state of the MultiSelectTree nodes.
13
14
  */
14
- export declare class CheckDirective implements OnChanges, OnDestroy {
15
+ export declare class CheckDirective extends BaseCheckDirective implements OnChanges, OnDestroy {
15
16
  private treeView;
16
17
  /**
17
18
  * Specifies whether items should be checked on click,
@@ -37,7 +38,7 @@ export declare class CheckDirective implements OnChanges, OnDestroy {
37
38
  * Should be updated each time the `checkedItems` value or content is changed.
38
39
  * Can be used for efficient look-up of whether an item is checked or not (O(1) access time).
39
40
  */
40
- private checkedKeys;
41
+ checkedKeys: Set<any>;
41
42
  private subscriptions;
42
43
  private clickSubscription;
43
44
  constructor(treeView: TreeViewComponent);
@@ -49,8 +50,5 @@ export declare class CheckDirective implements OnChanges, OnDestroy {
49
50
  private unsubscribeClick;
50
51
  private checkNode;
51
52
  private checkParents;
52
- private addItem;
53
- private removeItem;
54
- private isItemChecked;
55
53
  private isItemIndeterminate;
56
54
  }
@@ -7,14 +7,16 @@ import { Directive, EventEmitter, Input, Output } from '@angular/core';
7
7
  import { TreeViewComponent } from '@progress/kendo-angular-treeview';
8
8
  import { Subscription } from 'rxjs';
9
9
  import { filter } from 'rxjs/operators';
10
- import { fetchDescendentNodes, getHierarchicalItemLevel, isPresent, valueFrom } from '../../common/util';
10
+ import { fetchDescendentNodes, isPresent } from '../../common/util';
11
+ import { BaseCheckDirective } from './base-check.directive';
11
12
  /**
12
13
  * @hidden
13
14
  *
14
15
  * A directive which manages the in-memory checked state of the MultiSelectTree nodes.
15
16
  */
16
- let CheckDirective = class CheckDirective {
17
+ let CheckDirective = class CheckDirective extends BaseCheckDirective {
17
18
  constructor(treeView) {
19
+ super();
18
20
  this.treeView = treeView;
19
21
  /**
20
22
  * Fires when the `checkedItems` collection was updated.
@@ -37,8 +39,7 @@ let CheckDirective = class CheckDirective {
37
39
  this.toggleCheckOnClick();
38
40
  }
39
41
  if (isPresent(changes.checkedItems)) {
40
- this.checkedItems = this.checkedItems || [];
41
- this.checkedKeys = new Set(this.checkedItems.map(item => valueFrom(item, this.valueField)));
42
+ this.updateItems();
42
43
  }
43
44
  }
44
45
  ngOnDestroy() {
@@ -118,28 +119,6 @@ let CheckDirective = class CheckDirective {
118
119
  currentParent = currentParent.parent;
119
120
  }
120
121
  }
121
- addItem(item) {
122
- if (this.isItemChecked(item)) {
123
- return;
124
- }
125
- const level = getHierarchicalItemLevel(item.index);
126
- const candidate = Object.assign({}, item, { level });
127
- this.checkedItems.push(candidate);
128
- this.checkedKeys.add(valueFrom(candidate, this.valueField));
129
- }
130
- removeItem(item) {
131
- if (!this.isItemChecked(item)) {
132
- return;
133
- }
134
- const level = getHierarchicalItemLevel(item.index);
135
- const candidate = Object.assign({}, item, { level });
136
- this.checkedItems = this.checkedItems
137
- .filter(item => valueFrom(item, this.valueField) !== valueFrom(candidate, this.valueField));
138
- this.checkedKeys.delete(valueFrom(candidate, this.valueField));
139
- }
140
- isItemChecked(item) {
141
- return this.checkedKeys.has(valueFrom(item, this.valueField));
142
- }
143
122
  isItemIndeterminate(lookup) {
144
123
  const children = lookup.children;
145
124
  if (!Array.isArray(children) || children.length === 0) {
@@ -285,6 +285,10 @@ export declare class DropDownTreeComponent implements OnInit, OnDestroy, OnChang
285
285
  * The `DataBoundComponent` interface is used in the data-binding directives.
286
286
  */
287
287
  isVisible: (item: object, index: string) => boolean;
288
+ /**
289
+ * @hidden
290
+ */
291
+ filterStateChange: EventEmitter<any>;
288
292
  /**
289
293
  * @hidden
290
294
  */
@@ -167,6 +167,10 @@ let DropDownTreeComponent = DropDownTreeComponent_1 = class DropDownTreeComponen
167
167
  * @hidden
168
168
  */
169
169
  this.selectedKeys = [];
170
+ /**
171
+ * @hidden
172
+ */
173
+ this.filterStateChange = new EventEmitter();
170
174
  /**
171
175
  * @hidden
172
176
  */
@@ -46,6 +46,7 @@ export declare class MultiSelectTreeComponent implements OnInit, OnDestroy, OnCh
46
46
  container: ViewContainerRef;
47
47
  treeview: TreeViewComponent;
48
48
  private filterInput;
49
+ private checkAllInput;
49
50
  /**
50
51
  * Specifies the [`tabindex`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex) of the component.
51
52
  */
@@ -160,6 +161,12 @@ export declare class MultiSelectTreeComponent implements OnInit, OnDestroy, OnCh
160
161
  * @default false
161
162
  */
162
163
  filterable: boolean;
164
+ /**
165
+ * If `checkАll` is set to `true` and the checkboxes are enabled, a tri-state checkbox appears above the embedded treeview.
166
+ * Clicking the checkbox checks or unchecks all enabled items of the treeview that are loaded.
167
+ * @default false
168
+ */
169
+ checkAll: boolean;
163
170
  /**
164
171
  * A function which determines if a specific node has child nodes.
165
172
  */
@@ -302,6 +309,12 @@ export declare class MultiSelectTreeComponent implements OnInit, OnDestroy, OnCh
302
309
  private readonly isTagFocused;
303
310
  private readonly isTreeViewActive;
304
311
  private readonly isWrapperActive;
312
+ private readonly isFilterActive;
313
+ private readonly isCheckAllActive;
314
+ /**
315
+ * @hidden
316
+ */
317
+ filterStateChange: EventEmitter<any>;
305
318
  /**
306
319
  * @hidden
307
320
  */
@@ -415,6 +428,7 @@ export declare class MultiSelectTreeComponent implements OnInit, OnDestroy, OnCh
415
428
  * @hidden
416
429
  */
417
430
  messageFor(key: string): string;
431
+ lastAction: 'check' | 'uncheck';
418
432
  /**
419
433
  * @hidden
420
434
  */
@@ -454,6 +468,10 @@ export declare class MultiSelectTreeComponent implements OnInit, OnDestroy, OnCh
454
468
  * @hidden
455
469
  */
456
470
  handleFilterInputChange(term: string): void;
471
+ /**
472
+ * @hidden
473
+ */
474
+ toggleCheckAll(): void;
457
475
  protected onTouchedCallback: Function;
458
476
  protected onChangeCallback: Function;
459
477
  protected verifySettings(): void;