@progress/kendo-angular-dropdowns 5.4.0 → 5.5.0-dev.202111011140
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.
- package/dist/cdn/js/kendo-angular-dropdowns.js +2 -2
- package/dist/cdn/main.js +1 -1
- package/dist/es/common/filtering/filter.directive.js +1 -0
- package/dist/es/common/localization/messages.js +4 -0
- package/dist/es/common/shared.module.js +3 -1
- package/dist/es/dropdowntrees/checked-state/base-check.directive.js +54 -0
- package/dist/es/dropdowntrees/checked-state/check-all.directive.js +181 -0
- package/dist/es/dropdowntrees/checked-state/check.directive.js +15 -36
- package/dist/es/dropdowntrees/dropdowntree.component.js +12 -3
- package/dist/es/dropdowntrees/multiselecttree.component.js +58 -13
- package/dist/es/index.js +2 -0
- package/dist/es/package-metadata.js +1 -1
- package/dist/es2015/common/filtering/filter.directive.d.ts +1 -0
- package/dist/es2015/common/filtering/filter.directive.js +1 -0
- package/dist/es2015/common/localization/messages.d.ts +4 -0
- package/dist/es2015/common/localization/messages.js +4 -0
- package/dist/es2015/common/shared.module.js +3 -1
- package/dist/es2015/dropdowntrees/checked-state/base-check.directive.d.ts +32 -0
- package/dist/es2015/dropdowntrees/checked-state/base-check.directive.js +48 -0
- package/dist/es2015/dropdowntrees/checked-state/check-all.directive.d.ts +53 -0
- package/dist/es2015/dropdowntrees/checked-state/check-all.directive.js +161 -0
- package/dist/es2015/dropdowntrees/checked-state/check.directive.d.ts +3 -5
- package/dist/es2015/dropdowntrees/checked-state/check.directive.js +5 -26
- package/dist/es2015/dropdowntrees/dropdowntree.component.d.ts +4 -0
- package/dist/es2015/dropdowntrees/dropdowntree.component.js +12 -4
- package/dist/es2015/dropdowntrees/multiselecttree.component.d.ts +14 -0
- package/dist/es2015/dropdowntrees/multiselecttree.component.js +82 -15
- package/dist/es2015/index.d.ts +2 -0
- package/dist/es2015/index.js +2 -0
- package/dist/es2015/index.metadata.json +1 -1
- package/dist/es2015/package-metadata.js +1 -1
- package/dist/fesm2015/index.js +300 -47
- package/dist/fesm5/index.js +311 -54
- package/dist/npm/common/filtering/filter.directive.js +1 -0
- package/dist/npm/common/localization/messages.js +4 -0
- package/dist/npm/common/shared.module.js +3 -1
- package/dist/npm/dropdowntrees/checked-state/base-check.directive.js +56 -0
- package/dist/npm/dropdowntrees/checked-state/check-all.directive.js +183 -0
- package/dist/npm/dropdowntrees/checked-state/check.directive.js +14 -35
- package/dist/npm/dropdowntrees/dropdowntree.component.js +12 -3
- package/dist/npm/dropdowntrees/multiselecttree.component.js +58 -13
- package/dist/npm/index.js +4 -0
- package/dist/npm/package-metadata.js +1 -1
- package/dist/systemjs/kendo-angular-dropdowns.js +1 -1
- package/package.json +5 -5
package/dist/fesm5/index.js
CHANGED
|
@@ -23,7 +23,7 @@ var packageMetadata = {
|
|
|
23
23
|
name: '@progress/kendo-angular-dropdowns',
|
|
24
24
|
productName: 'Kendo UI for Angular',
|
|
25
25
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
26
|
-
publishDate:
|
|
26
|
+
publishDate: 1635766703,
|
|
27
27
|
version: '',
|
|
28
28
|
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'
|
|
29
29
|
};
|
|
@@ -8460,8 +8460,8 @@ var DropDownTreeComponent = /** @class */ (function () {
|
|
|
8460
8460
|
dataItem;
|
|
8461
8461
|
var shouldUpdateValue = newValue !== this.value;
|
|
8462
8462
|
if (shouldUpdateValue) {
|
|
8463
|
-
this.dataItem = dataItem;
|
|
8464
8463
|
this.value = newValue;
|
|
8464
|
+
this.dataItem = dataItem;
|
|
8465
8465
|
this.emitValueChange(this.value);
|
|
8466
8466
|
}
|
|
8467
8467
|
this.togglePopup(false);
|
|
@@ -8542,6 +8542,16 @@ var DropDownTreeComponent = /** @class */ (function () {
|
|
|
8542
8542
|
this.filterChange.next(term);
|
|
8543
8543
|
this.allNodesHidden = this.nodes.every(function (node, index) { return !_this.isVisible(node, String(index)); });
|
|
8544
8544
|
};
|
|
8545
|
+
Object.defineProperty(DropDownTreeComponent.prototype, "buttonClasses", {
|
|
8546
|
+
/**
|
|
8547
|
+
* @hidden
|
|
8548
|
+
*/
|
|
8549
|
+
get: function () {
|
|
8550
|
+
return this.loading ? 'k-i-loading' : 'k-i-arrow-s';
|
|
8551
|
+
},
|
|
8552
|
+
enumerable: true,
|
|
8553
|
+
configurable: true
|
|
8554
|
+
});
|
|
8545
8555
|
DropDownTreeComponent.prototype.verifySettings = function () {
|
|
8546
8556
|
if (!isDevMode()) {
|
|
8547
8557
|
return;
|
|
@@ -8668,7 +8678,6 @@ var DropDownTreeComponent = /** @class */ (function () {
|
|
|
8668
8678
|
};
|
|
8669
8679
|
DropDownTreeComponent.prototype.clearState = function () {
|
|
8670
8680
|
this.text = undefined;
|
|
8671
|
-
this.valueDepth = undefined;
|
|
8672
8681
|
this.selectedKeys = [];
|
|
8673
8682
|
};
|
|
8674
8683
|
DropDownTreeComponent.prototype.subscribeEvents = function () {
|
|
@@ -8959,7 +8968,7 @@ var DropDownTreeComponent = /** @class */ (function () {
|
|
|
8959
8968
|
}
|
|
8960
8969
|
],
|
|
8961
8970
|
selector: 'kendo-dropdowntree',
|
|
8962
|
-
template: "\n <ng-container kendoDropDownTreeLocalizedMessages\n i18n-noDataText=\"kendo.dropdowntree.noDataText|The text displayed in the popup when there are no items\"\n noDataText=\"NO DATA FOUND\"\n\n i18n-clearTitle=\"kendo.dropdowntree.clearTitle|The title of the clear button\"\n clearTitle=\"clear\"\n >\n </ng-container>\n <span\n #wrapper\n [ngClass]=\"{\n 'k-dropdown-wrap': true,\n 'k-state-disabled': this.disabled\n }\"\n [attr.id]=\"focusableId\"\n role=\"listbox\"\n aria-haspopup=\"tree\"\n [attr.aria-expanded]=\"isOpen\"\n [attr.aria-readonly]=\"readonly\"\n [attr.tabindex]=\"tabindex\"\n [attr.dir]=\"direction\"\n (click)=\"handleClick()\"\n (keydown)=\"handleKeydown($event)\"\n [kendoEventsOutsideAngular]=\"{\n focus: handleFocus,\n blur: handleBlur\n }\"\n [scope]=\"this\"\n >\n <span\n [attr.id]=\"valueLabelId\"\n class=\"k-input\"\n >\n <ng-template *ngIf=\"valueTemplate\"\n [templateContext]=\"{\n templateRef: valueTemplate.templateRef,\n $implicit: dataItem\n }\">\n </ng-template>\n <ng-template [ngIf]=\"!valueTemplate\"> {{ text || placeholder }} </ng-template>\n </span>\n <span\n *ngIf=\"!loading && !readonly && clearButton && text?.length\"\n class=\"k-icon k-clear-value k-i-close\"\n [style.visibility]=\"clearButtonVisiblity\"\n aria-hidden=\"true\"\n [attr.title]=\"messageFor('clearTitle')\"\n (click)=\"clearValue($event)\"\n >\n </span>\n <span class=\"k-select\" aria-hidden=\"true\">\n <span
|
|
8971
|
+
template: "\n <ng-container kendoDropDownTreeLocalizedMessages\n i18n-noDataText=\"kendo.dropdowntree.noDataText|The text displayed in the popup when there are no items\"\n noDataText=\"NO DATA FOUND\"\n\n i18n-clearTitle=\"kendo.dropdowntree.clearTitle|The title of the clear button\"\n clearTitle=\"clear\"\n >\n </ng-container>\n <span\n #wrapper\n [ngClass]=\"{\n 'k-dropdown-wrap': true,\n 'k-state-disabled': this.disabled\n }\"\n [attr.id]=\"focusableId\"\n role=\"listbox\"\n aria-haspopup=\"tree\"\n [attr.aria-expanded]=\"isOpen\"\n [attr.aria-readonly]=\"readonly\"\n [attr.tabindex]=\"tabindex\"\n [attr.dir]=\"direction\"\n (click)=\"handleClick()\"\n (keydown)=\"handleKeydown($event)\"\n [kendoEventsOutsideAngular]=\"{\n focus: handleFocus,\n blur: handleBlur\n }\"\n [scope]=\"this\"\n >\n <span\n [attr.id]=\"valueLabelId\"\n class=\"k-input\"\n >\n <ng-template *ngIf=\"valueTemplate\"\n [templateContext]=\"{\n templateRef: valueTemplate.templateRef,\n $implicit: dataItem\n }\">\n </ng-template>\n <ng-template [ngIf]=\"!valueTemplate\"> {{ text || placeholder }} </ng-template>\n </span>\n <span\n *ngIf=\"!loading && !readonly && clearButton && text?.length && !disabled\"\n class=\"k-icon k-clear-value k-i-close\"\n [style.visibility]=\"clearButtonVisiblity\"\n aria-hidden=\"true\"\n [attr.title]=\"messageFor('clearTitle')\"\n (click)=\"clearValue($event)\"\n >\n </span>\n <span class=\"k-select\" aria-hidden=\"true\">\n <span\n class=\"k-icon k-i-arrow-60-down\"\n [ngClass]=\"buttonClasses\"\n ></span>\n </span>\n </span>\n <ng-template #popupTemplate>\n <span\n *ngIf=\"filterable\"\n class=\"k-list-filter\"\n >\n <input\n #filterInput\n (input)=\"handleFilterInputChange($event.target.value)\"\n [filterInput]=\"filterable && !touchEnabled\"\n (keydown.arrowdown)=\"handleKeydown($event)\"\n (keydown.alt.arrowup)=\"handleKeydown($event)\"\n [(ngModel)]=\"filter\"\n class=\"k-textbox\"\n role=\"textbox\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n tabindex=\"0\"\n aria-disabled=\"false\"\n aria-readonly=\"false\"\n [kendoEventsOutsideAngular]=\"{\n blur: handleBlur\n }\"\n [scope]=\"this\"\n >\n <span class=\"k-icon k-i-zoom\"></span>\n </span>\n <!--header template-->\n <ng-template\n *ngIf=\"headerTemplate\"\n [templateContext]=\"{\n templateRef: headerTemplate?.templateRef\n }\">\n </ng-template>\n <kendo-treeview\n #treeview\n *ngIf=\"data.length !== 0 && !allNodesHidden\"\n [nodes]=\"data\"\n [style.maxHeight.px]=\"listHeight\"\n [animate]=\"false\"\n [(selectedKeys)]=\"selectedKeys\"\n [selectBy]=\"selectBy\"\n [textField]=\"textField\"\n kendoTreeViewSelectable\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [loadOnDemand]=\"loadOnDemand\"\n [isExpanded]=\"isNodeExpanded\"\n [isDisabled]=\"itemDisabled\"\n [nodeTemplate]=\"nodeTemplate\"\n [filter]=\"filter\"\n [isVisible]=\"isNodeVisible\"\n (focusout)=\"handleBlur($event)\"\n (keydown)=\"handleKeydown($event)\"\n (selectionChange)=\"onSelectionChange($event)\"\n (expand)=\"nodeExpand.emit($event)\"\n (collapse)=\"nodeCollapse.emit($event)\"\n >\n </kendo-treeview>\n <!--footer template-->\n <ng-template\n *ngIf=\"footerTemplate\"\n [templateContext]=\"{\n templateRef: footerTemplate?.templateRef\n }\">\n </ng-template>\n <!--no-data template-->\n <div class=\"k-nodata\" *ngIf=\"data.length === 0 || allNodesHidden\">\n <ng-template [ngIf]=\"noDataTemplate\"\n [templateContext]=\"{\n templateRef: noDataTemplate?.templateRef\n }\">\n </ng-template>\n <ng-template [ngIf]=\"!noDataTemplate\">\n <div>{{ messageFor('noDataText') }}</div>\n </ng-template>\n </div>\n </ng-template>\n <ng-container #container></ng-container>\n ",
|
|
8963
8972
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
8964
8973
|
}),
|
|
8965
8974
|
__param(7, Optional()), __param(7, Inject(TOUCH_ENABLED)),
|
|
@@ -9049,6 +9058,12 @@ var MultiSelectTreeComponent = /** @class */ (function () {
|
|
|
9049
9058
|
* @default false
|
|
9050
9059
|
*/
|
|
9051
9060
|
this.filterable = false;
|
|
9061
|
+
/**
|
|
9062
|
+
* If `checkАll` is set to `true` and the checkboxes are enabled, a tri-state checkbox appears above the embedded treeview.
|
|
9063
|
+
* Clicking the checkbox checks or unchecks all enabled items of the treeview that are loaded.
|
|
9064
|
+
* @default false
|
|
9065
|
+
*/
|
|
9066
|
+
this.checkAll = false;
|
|
9052
9067
|
/**
|
|
9053
9068
|
* A function which determines if a specific node has child nodes.
|
|
9054
9069
|
*/
|
|
@@ -9152,6 +9167,7 @@ var MultiSelectTreeComponent = /** @class */ (function () {
|
|
|
9152
9167
|
this._checkableSettings = DEFAULT_CHECKABLE_SETTINGS;
|
|
9153
9168
|
this._isFocused = false;
|
|
9154
9169
|
this.subscriptions = [];
|
|
9170
|
+
this.lastAction = 'check';
|
|
9155
9171
|
this.onTouchedCallback = noop;
|
|
9156
9172
|
this.onChangeCallback = noop;
|
|
9157
9173
|
this.direction = localization.rtl ? 'rtl' : 'ltr';
|
|
@@ -9167,7 +9183,7 @@ var MultiSelectTreeComponent = /** @class */ (function () {
|
|
|
9167
9183
|
this._treeview = treeview;
|
|
9168
9184
|
if (treeview) {
|
|
9169
9185
|
// If filtering is enabled, focus the TreeView on mobile devices instead of the filter input
|
|
9170
|
-
if (this.isFocused && !this.filterable || this.touchEnabled) {
|
|
9186
|
+
if (this.isFocused && !this.filterable && !this.checkAll || this.touchEnabled) {
|
|
9171
9187
|
treeview.focus();
|
|
9172
9188
|
}
|
|
9173
9189
|
/**
|
|
@@ -9488,6 +9504,20 @@ var MultiSelectTreeComponent = /** @class */ (function () {
|
|
|
9488
9504
|
enumerable: true,
|
|
9489
9505
|
configurable: true
|
|
9490
9506
|
});
|
|
9507
|
+
Object.defineProperty(MultiSelectTreeComponent.prototype, "isFilterActive", {
|
|
9508
|
+
get: function () {
|
|
9509
|
+
return this.filterInput && document.activeElement === this.filterInput.nativeElement;
|
|
9510
|
+
},
|
|
9511
|
+
enumerable: true,
|
|
9512
|
+
configurable: true
|
|
9513
|
+
});
|
|
9514
|
+
Object.defineProperty(MultiSelectTreeComponent.prototype, "isCheckAllActive", {
|
|
9515
|
+
get: function () {
|
|
9516
|
+
return this.checkAllInput && document.activeElement === this.checkAllInput.nativeElement;
|
|
9517
|
+
},
|
|
9518
|
+
enumerable: true,
|
|
9519
|
+
configurable: true
|
|
9520
|
+
});
|
|
9491
9521
|
MultiSelectTreeComponent.prototype.ngOnInit = function () {
|
|
9492
9522
|
var _this = this;
|
|
9493
9523
|
this.renderer.removeAttribute(this.hostElement.nativeElement, 'tabindex');
|
|
@@ -9711,6 +9741,7 @@ var MultiSelectTreeComponent = /** @class */ (function () {
|
|
|
9711
9741
|
*/
|
|
9712
9742
|
MultiSelectTreeComponent.prototype.handleCheckedItemsChange = function (items) {
|
|
9713
9743
|
this.valueDepth = items.map(function (item) { return item.level; });
|
|
9744
|
+
this.lastAction = items.length > this.dataItems.length ? 'check' : 'uncheck';
|
|
9714
9745
|
this.dataItems = items.slice();
|
|
9715
9746
|
this.updateValue(this.dataItems);
|
|
9716
9747
|
};
|
|
@@ -9803,6 +9834,13 @@ var MultiSelectTreeComponent = /** @class */ (function () {
|
|
|
9803
9834
|
this.filterChange.next(term);
|
|
9804
9835
|
this.allNodesHidden = this.nodes.every(function (node, index) { return !_this.isVisible(node, String(index)); });
|
|
9805
9836
|
};
|
|
9837
|
+
/**
|
|
9838
|
+
* @hidden
|
|
9839
|
+
*/
|
|
9840
|
+
MultiSelectTreeComponent.prototype.toggleCheckAll = function () {
|
|
9841
|
+
this.checkAllInput.nativeElement.focus();
|
|
9842
|
+
this.checkAllInput.nativeElement.click();
|
|
9843
|
+
};
|
|
9806
9844
|
MultiSelectTreeComponent.prototype.verifySettings = function () {
|
|
9807
9845
|
if (!isDevMode()) {
|
|
9808
9846
|
return;
|
|
@@ -9928,17 +9966,20 @@ var MultiSelectTreeComponent = /** @class */ (function () {
|
|
|
9928
9966
|
return;
|
|
9929
9967
|
}
|
|
9930
9968
|
var isFirstNodeActive = this.treeview['navigationService']['activeIndex'] === '0';
|
|
9931
|
-
|
|
9932
|
-
|
|
9933
|
-
if (isFilterActive) {
|
|
9934
|
-
this.focus();
|
|
9935
|
-
}
|
|
9936
|
-
else if (!isFilterActive && isFirstNodeActive) {
|
|
9937
|
-
this.filterInput.nativeElement.focus();
|
|
9938
|
-
}
|
|
9939
|
-
}
|
|
9940
|
-
if (!this.filterable && isFirstNodeActive) {
|
|
9969
|
+
// Current focus is on the filter input => should focus the wrapper
|
|
9970
|
+
if (this.filterable && this.isFilterActive) {
|
|
9941
9971
|
this.focus();
|
|
9972
|
+
// Current focus is on the treeview first node => should focus the check all checkbox if enabled
|
|
9973
|
+
}
|
|
9974
|
+
else if (this.checkAll && !this.isCheckAllActive && isFirstNodeActive) {
|
|
9975
|
+
this.checkAllInput.nativeElement.focus();
|
|
9976
|
+
// Current focus is either on the check all checkbox or the treeview's first node
|
|
9977
|
+
// => should focus either the filter input (if enabled) or the wrapper
|
|
9978
|
+
}
|
|
9979
|
+
else if (this.isCheckAllActive || isFirstNodeActive) {
|
|
9980
|
+
this.filterable ?
|
|
9981
|
+
this.filterInput.nativeElement.focus() :
|
|
9982
|
+
this.focus();
|
|
9942
9983
|
}
|
|
9943
9984
|
};
|
|
9944
9985
|
MultiSelectTreeComponent.prototype.handleDownKey = function (event) {
|
|
@@ -9946,9 +9987,14 @@ var MultiSelectTreeComponent = /** @class */ (function () {
|
|
|
9946
9987
|
return;
|
|
9947
9988
|
}
|
|
9948
9989
|
event.originalEvent.preventDefault();
|
|
9949
|
-
//
|
|
9990
|
+
// Current focus is on the wrapper => should focus the filter input
|
|
9950
9991
|
if (this.filterable && this.isWrapperActive) {
|
|
9951
9992
|
this.filterInput.nativeElement.focus();
|
|
9993
|
+
// Current focus is on the wrapper/filter input => should focus check all checkbox if enabled
|
|
9994
|
+
}
|
|
9995
|
+
else if (this.checkAll && (this.isWrapperActive || this.isFilterActive)) {
|
|
9996
|
+
this.checkAllInput.nativeElement.focus();
|
|
9997
|
+
// Should focus the treeview if filterable and check all are disabled
|
|
9952
9998
|
}
|
|
9953
9999
|
else if (!this.treeview.isActive) {
|
|
9954
10000
|
this.treeview.focus();
|
|
@@ -10109,6 +10155,10 @@ var MultiSelectTreeComponent = /** @class */ (function () {
|
|
|
10109
10155
|
ViewChild('filterInput', { static: false }),
|
|
10110
10156
|
__metadata("design:type", ElementRef)
|
|
10111
10157
|
], MultiSelectTreeComponent.prototype, "filterInput", void 0);
|
|
10158
|
+
__decorate([
|
|
10159
|
+
ViewChild('checkAllInput', { static: false }),
|
|
10160
|
+
__metadata("design:type", ElementRef)
|
|
10161
|
+
], MultiSelectTreeComponent.prototype, "checkAllInput", void 0);
|
|
10112
10162
|
__decorate([
|
|
10113
10163
|
Input(),
|
|
10114
10164
|
__metadata("design:type", Number),
|
|
@@ -10191,6 +10241,10 @@ var MultiSelectTreeComponent = /** @class */ (function () {
|
|
|
10191
10241
|
Input(),
|
|
10192
10242
|
__metadata("design:type", Boolean)
|
|
10193
10243
|
], MultiSelectTreeComponent.prototype, "filterable", void 0);
|
|
10244
|
+
__decorate([
|
|
10245
|
+
Input(),
|
|
10246
|
+
__metadata("design:type", Boolean)
|
|
10247
|
+
], MultiSelectTreeComponent.prototype, "checkAll", void 0);
|
|
10194
10248
|
__decorate([
|
|
10195
10249
|
Input(),
|
|
10196
10250
|
__metadata("design:type", Function)
|
|
@@ -10291,7 +10345,7 @@ var MultiSelectTreeComponent = /** @class */ (function () {
|
|
|
10291
10345
|
}
|
|
10292
10346
|
],
|
|
10293
10347
|
selector: 'kendo-multiselecttree',
|
|
10294
|
-
template: "\n <ng-container kendoMultiSelectTreeLocalizedMessages\n i18n-noDataText=\"kendo.multiselecttree.noDataText|The text displayed in the popup when there are no items\"\n noDataText=\"NO DATA FOUND\"\n\n i18n-clearTitle=\"kendo.multiselecttree.clearTitle|The title of the clear button\"\n clearTitle=\"clear\"\n >\n </ng-container>\n <div #wrapper\n [ngClass]=\"{\n 'k-multiselect-wrap': true,\n 'k-floatwrap': true,\n 'k-state-disabled': this.disabled\n }\"\n role=\"listbox\"\n aria-haspopup=\"tree\"\n [attr.aria-describedby]=\"tagListId\"\n [attr.aria-readonly]=\"readonly\"\n [attr.aria-activedescendant]=\"focusedTagId\"\n [attr.tabindex]=\"tabindex\"\n [attr.id]=\"focusableId\"\n [attr.dir]=\"direction\"\n (click)=\"handleClick()\"\n (keydown)=\"handleKeydown($event)\"\n [kendoEventsOutsideAngular]=\"{\n focus: handleFocus,\n blur: handleBlur\n }\"\n [scope]=\"this\"\n >\n <kendo-taglist\n [id]=\"tagListId\"\n [tags]=\"tags\"\n [focused]=\"focusedTagIndex\"\n [textField]=\"textField\"\n [valueField]=\"valueField\"\n [valueDepth]=\"valueDepth\"\n [disabled]=\"disabled\"\n [tagPrefix]=\"tagPrefix\"\n [template]=\"tagTemplate\"\n [groupTemplate]=\"groupTagTemplate\"\n [disabledIndices]=\"disabledIndices\"\n (removeTag)=\"handleRemoveTag($event)\"\n >\n </kendo-taglist>\n <span *ngIf=\"!tags || !tags.length\"\n class=\"k-input k-readonly\"\n >\n {{ placeholder }}\n </span>\n <span\n *ngIf=\"!disabled && !loading && !readonly && clearButton && tags?.length\"\n class=\"k-icon k-clear-value k-i-close\"\n [attr.title]=\"messageFor('clearTitle')\"\n role=\"button\"\n tabindex=\"-1\"\n (click)=\"clearAll($event)\"\n >\n </span>\n <span\n *ngIf=\"loading\"\n class=\"k-icon k-i-loading\"\n >\n </span>\n </div>\n <ng-template #popupTemplate>\n <span\n *ngIf=\"filterable\"\n class=\"k-list-filter\"\n >\n <input\n #filterInput\n (input)=\"handleFilterInputChange($event.target.value)\"\n [filterInput]=\"filterable && !touchEnabled\"\n (keydown
|
|
10348
|
+
template: "\n <ng-container kendoMultiSelectTreeLocalizedMessages\n i18n-noDataText=\"kendo.multiselecttree.noDataText|The text displayed in the popup when there are no items\"\n noDataText=\"NO DATA FOUND\"\n\n i18n-clearTitle=\"kendo.multiselecttree.clearTitle|The title of the clear button\"\n clearTitle=\"clear\"\n\n i18n-checkAllText=\"kendo.multiselecttree.checkAllText|The text displayed for the check-all checkbox\"\n checkAllText=\"Check all\"\n >\n </ng-container>\n <div #wrapper\n [ngClass]=\"{\n 'k-multiselect-wrap': true,\n 'k-floatwrap': true,\n 'k-state-disabled': this.disabled\n }\"\n role=\"listbox\"\n aria-haspopup=\"tree\"\n [attr.aria-describedby]=\"tagListId\"\n [attr.aria-readonly]=\"readonly\"\n [attr.aria-activedescendant]=\"focusedTagId\"\n [attr.tabindex]=\"tabindex\"\n [attr.id]=\"focusableId\"\n [attr.dir]=\"direction\"\n (click)=\"handleClick()\"\n (keydown)=\"handleKeydown($event)\"\n [kendoEventsOutsideAngular]=\"{\n focus: handleFocus,\n blur: handleBlur\n }\"\n [scope]=\"this\"\n >\n <kendo-taglist\n [id]=\"tagListId\"\n [tags]=\"tags\"\n [focused]=\"focusedTagIndex\"\n [textField]=\"textField\"\n [valueField]=\"valueField\"\n [valueDepth]=\"valueDepth\"\n [disabled]=\"disabled\"\n [tagPrefix]=\"tagPrefix\"\n [template]=\"tagTemplate\"\n [groupTemplate]=\"groupTagTemplate\"\n [disabledIndices]=\"disabledIndices\"\n (removeTag)=\"handleRemoveTag($event)\"\n >\n </kendo-taglist>\n <span *ngIf=\"!tags || !tags.length\"\n class=\"k-input k-readonly\"\n >\n {{ placeholder }}\n </span>\n <span\n *ngIf=\"!disabled && !loading && !readonly && clearButton && tags?.length\"\n class=\"k-icon k-clear-value k-i-close\"\n [attr.title]=\"messageFor('clearTitle')\"\n role=\"button\"\n tabindex=\"-1\"\n (click)=\"clearAll($event)\"\n >\n </span>\n <span\n *ngIf=\"loading\"\n class=\"k-icon k-i-loading\"\n >\n </span>\n </div>\n <ng-template #popupTemplate>\n <span\n *ngIf=\"filterable\"\n class=\"k-list-filter\"\n >\n <input\n #filterInput\n (input)=\"handleFilterInputChange($event.target.value)\"\n [filterInput]=\"filterable && !touchEnabled\"\n (keydown)=\"handleKeydown($event)\"\n [(ngModel)]=\"filter\"\n class=\"k-textbox\"\n role=\"textbox\"\n aria-haspopup=\"true\"\n aria-expanded=\"false\"\n tabindex=\"0\"\n aria-disabled=\"false\"\n aria-readonly=\"false\"\n [kendoEventsOutsideAngular]=\"{\n blur: handleBlur\n }\"\n [scope]=\"this\"\n >\n <span class=\"k-icon k-i-zoom\"></span>\n </span>\n <!--header template-->\n <ng-template\n *ngIf=\"headerTemplate\"\n [templateContext]=\"{\n templateRef: headerTemplate?.templateRef\n }\">\n </ng-template>\n <div *ngIf=\"checkAll\" class=\"k-check-all\">\n <input\n #checkAllInput\n [checkAll]=\"!filterable && !touchEnabled\"\n type=\"checkbox\"\n class=\"k-checkbox\"\n role=\"checkbox\"\n tabindex=\"0\"\n aria-disabled=\"false\"\n aria-readonly=\"false\"\n [treeview]=\"treeview\"\n [checkedItems]=\"checkedItems\"\n [valueField]=\"valueField\"\n [lastAction]=\"lastAction\"\n (checkedItemsChange)=\"handleCheckedItemsChange($event)\"\n (keydown)=\"handleKeydown($event)\"\n [kendoEventsOutsideAngular]=\"{\n blur: handleBlur\n }\"\n [scope]=\"this\"\n >\n <span\n class=\"k-checkbox-label\"\n (click)=\"toggleCheckAll()\"\n (mousedown)=\"$event.preventDefault()\"\n >\n {{ messageFor('checkAllText') }}\n </span>\n </div>\n <kendo-treeview\n #treeview\n [nodes]=\"data\"\n [style.maxHeight.px]=\"listHeight\"\n [animate]=\"false\"\n kendoMultiSelectTreeCheckable\n [checkable]=\"checkableSettings\"\n [checkedItems]=\"checkedItems\"\n [valueField]=\"valueField\"\n [textField]=\"textField\"\n [children]=\"children\"\n [hasChildren]=\"hasChildren\"\n [isExpanded]=\"isNodeExpanded\"\n [isDisabled]=\"itemDisabled\"\n [nodeTemplate]=\"nodeTemplate\"\n [loadOnDemand]=\"loadOnDemand\"\n [filter]=\"filter\"\n [isVisible]=\"isNodeVisible\"\n (keydown)=\"handleKeydown($event)\"\n (nodeClick)=\"handleNodeClick($event)\"\n (expand)=\"nodeExpand.emit($event)\"\n (collapse)=\"nodeCollapse.emit($event)\"\n (checkedItemsChange)=\"handleCheckedItemsChange($event)\"\n [kendoEventsOutsideAngular]=\"{\n focusout: handleBlur\n }\"\n [scope]=\"this\"\n >\n </kendo-treeview>\n <!--footer template-->\n <ng-template\n *ngIf=\"footerTemplate\"\n [templateContext]=\"{\n templateRef: footerTemplate?.templateRef\n }\">\n </ng-template>\n <!--no-data template-->\n <div class=\"k-nodata\" *ngIf=\"data?.length === 0 || allNodesHidden\">\n <ng-template [ngIf]=\"noDataTemplate\"\n [templateContext]=\"{\n templateRef: noDataTemplate?.templateRef\n }\">\n </ng-template>\n <ng-template [ngIf]=\"!noDataTemplate\">\n <div>{{ messageFor('noDataText') }}</div>\n </ng-template>\n </div>\n </ng-template>\n <ng-container #container></ng-container>\n "
|
|
10295
10349
|
}),
|
|
10296
10350
|
__param(7, Optional()), __param(7, Inject(TOUCH_ENABLED)),
|
|
10297
10351
|
__metadata("design:paramtypes", [PopupService,
|
|
@@ -10579,6 +10633,10 @@ var Messages = /** @class */ (function (_super) {
|
|
|
10579
10633
|
Input(),
|
|
10580
10634
|
__metadata("design:type", String)
|
|
10581
10635
|
], Messages.prototype, "clearTitle", void 0);
|
|
10636
|
+
__decorate([
|
|
10637
|
+
Input(),
|
|
10638
|
+
__metadata("design:type", String)
|
|
10639
|
+
], Messages.prototype, "checkAllText", void 0);
|
|
10582
10640
|
return Messages;
|
|
10583
10641
|
}(ComponentMessages));
|
|
10584
10642
|
|
|
@@ -10670,6 +10728,7 @@ var DEFAULT_FILTER_SETTINGS = {
|
|
|
10670
10728
|
* public data: Array<string> = ["Albania", "Andorra", "Armenia", "Austria", "Azerbaijan"];
|
|
10671
10729
|
* }
|
|
10672
10730
|
* ```
|
|
10731
|
+
* > Currently, the built-in filtering does not work with [grouped data]({% slug api_kendo-data-query_groupby %}).
|
|
10673
10732
|
*/
|
|
10674
10733
|
var FilterDirective = /** @class */ (function () {
|
|
10675
10734
|
function FilterDirective(component) {
|
|
@@ -10974,33 +11033,81 @@ var TemplateContextDirective = /** @class */ (function () {
|
|
|
10974
11033
|
*
|
|
10975
11034
|
* A directive which manages the in-memory checked state of the MultiSelectTree nodes.
|
|
10976
11035
|
*/
|
|
10977
|
-
var
|
|
11036
|
+
var BaseCheckDirective = /** @class */ (function () {
|
|
11037
|
+
function BaseCheckDirective() {
|
|
11038
|
+
}
|
|
11039
|
+
BaseCheckDirective.prototype.addItem = function (item) {
|
|
11040
|
+
if (this.isItemChecked(item)) {
|
|
11041
|
+
return;
|
|
11042
|
+
}
|
|
11043
|
+
var level = getHierarchicalItemLevel(item.index);
|
|
11044
|
+
var candidate = __assign({}, item, { level: level });
|
|
11045
|
+
this.checkedItems.push(candidate);
|
|
11046
|
+
this.checkedKeys.add(valueFrom(candidate, this.valueField));
|
|
11047
|
+
};
|
|
11048
|
+
BaseCheckDirective.prototype.removeItem = function (item) {
|
|
11049
|
+
var _this = this;
|
|
11050
|
+
if (!this.isItemChecked(item)) {
|
|
11051
|
+
return;
|
|
11052
|
+
}
|
|
11053
|
+
var level = getHierarchicalItemLevel(item.index);
|
|
11054
|
+
var candidate = __assign({}, item, { level: level });
|
|
11055
|
+
this.checkedItems = this.checkedItems
|
|
11056
|
+
.filter(function (item) { return valueFrom(item, _this.valueField) !== valueFrom(candidate, _this.valueField); });
|
|
11057
|
+
this.checkedKeys.delete(valueFrom(candidate, this.valueField));
|
|
11058
|
+
};
|
|
11059
|
+
BaseCheckDirective.prototype.isItemChecked = function (item) {
|
|
11060
|
+
return this.checkedKeys.has(valueFrom(item, this.valueField));
|
|
11061
|
+
};
|
|
11062
|
+
BaseCheckDirective.prototype.updateItems = function () {
|
|
11063
|
+
var _this = this;
|
|
11064
|
+
this.checkedItems = this.checkedItems || [];
|
|
11065
|
+
this.checkedKeys = new Set(this.checkedItems.map(function (item) { return valueFrom(item, _this.valueField); }));
|
|
11066
|
+
};
|
|
11067
|
+
__decorate([
|
|
11068
|
+
Input(),
|
|
11069
|
+
__metadata("design:type", Object)
|
|
11070
|
+
], BaseCheckDirective.prototype, "valueField", void 0);
|
|
11071
|
+
__decorate([
|
|
11072
|
+
Input(),
|
|
11073
|
+
__metadata("design:type", Array)
|
|
11074
|
+
], BaseCheckDirective.prototype, "checkedItems", void 0);
|
|
11075
|
+
return BaseCheckDirective;
|
|
11076
|
+
}());
|
|
11077
|
+
|
|
11078
|
+
/**
|
|
11079
|
+
* @hidden
|
|
11080
|
+
*
|
|
11081
|
+
* A directive which manages the in-memory checked state of the MultiSelectTree nodes.
|
|
11082
|
+
*/
|
|
11083
|
+
var CheckDirective = /** @class */ (function (_super) {
|
|
11084
|
+
__extends(CheckDirective, _super);
|
|
10978
11085
|
function CheckDirective(treeView) {
|
|
10979
|
-
|
|
11086
|
+
var _this = _super.call(this) || this;
|
|
11087
|
+
_this.treeView = treeView;
|
|
10980
11088
|
/**
|
|
10981
11089
|
* Fires when the `checkedItems` collection was updated.
|
|
10982
11090
|
*/
|
|
10983
|
-
|
|
11091
|
+
_this.checkedItemsChange = new EventEmitter();
|
|
10984
11092
|
/**
|
|
10985
11093
|
* Holds a Set with just the checked item keys.
|
|
10986
11094
|
*
|
|
10987
11095
|
* Should be updated each time the `checkedItems` value or content is changed.
|
|
10988
11096
|
* Can be used for efficient look-up of whether an item is checked or not (O(1) access time).
|
|
10989
11097
|
*/
|
|
10990
|
-
|
|
10991
|
-
|
|
10992
|
-
|
|
10993
|
-
.subscribe(
|
|
10994
|
-
|
|
11098
|
+
_this.checkedKeys = new Set();
|
|
11099
|
+
_this.subscriptions = new Subscription();
|
|
11100
|
+
_this.subscriptions.add(_this.treeView.checkedChange
|
|
11101
|
+
.subscribe(_this.handleCheckedChange.bind(_this)));
|
|
11102
|
+
_this.treeView.isChecked = _this.getCheckedState.bind(_this);
|
|
11103
|
+
return _this;
|
|
10995
11104
|
}
|
|
10996
11105
|
CheckDirective.prototype.ngOnChanges = function (changes) {
|
|
10997
|
-
var _this = this;
|
|
10998
11106
|
if (isPresent(changes.checkable)) {
|
|
10999
11107
|
this.toggleCheckOnClick();
|
|
11000
11108
|
}
|
|
11001
11109
|
if (isPresent(changes.checkedItems)) {
|
|
11002
|
-
this.
|
|
11003
|
-
this.checkedKeys = new Set(this.checkedItems.map(function (item) { return valueFrom(item, _this.valueField); }));
|
|
11110
|
+
this.updateItems();
|
|
11004
11111
|
}
|
|
11005
11112
|
};
|
|
11006
11113
|
CheckDirective.prototype.ngOnDestroy = function () {
|
|
@@ -11085,29 +11192,6 @@ var CheckDirective = /** @class */ (function () {
|
|
|
11085
11192
|
currentParent = currentParent.parent;
|
|
11086
11193
|
}
|
|
11087
11194
|
};
|
|
11088
|
-
CheckDirective.prototype.addItem = function (item) {
|
|
11089
|
-
if (this.isItemChecked(item)) {
|
|
11090
|
-
return;
|
|
11091
|
-
}
|
|
11092
|
-
var level = getHierarchicalItemLevel(item.index);
|
|
11093
|
-
var candidate = __assign({}, item, { level: level });
|
|
11094
|
-
this.checkedItems.push(candidate);
|
|
11095
|
-
this.checkedKeys.add(valueFrom(candidate, this.valueField));
|
|
11096
|
-
};
|
|
11097
|
-
CheckDirective.prototype.removeItem = function (item) {
|
|
11098
|
-
var _this = this;
|
|
11099
|
-
if (!this.isItemChecked(item)) {
|
|
11100
|
-
return;
|
|
11101
|
-
}
|
|
11102
|
-
var level = getHierarchicalItemLevel(item.index);
|
|
11103
|
-
var candidate = __assign({}, item, { level: level });
|
|
11104
|
-
this.checkedItems = this.checkedItems
|
|
11105
|
-
.filter(function (item) { return valueFrom(item, _this.valueField) !== valueFrom(candidate, _this.valueField); });
|
|
11106
|
-
this.checkedKeys.delete(valueFrom(candidate, this.valueField));
|
|
11107
|
-
};
|
|
11108
|
-
CheckDirective.prototype.isItemChecked = function (item) {
|
|
11109
|
-
return this.checkedKeys.has(valueFrom(item, this.valueField));
|
|
11110
|
-
};
|
|
11111
11195
|
CheckDirective.prototype.isItemIndeterminate = function (lookup) {
|
|
11112
11196
|
var children = lookup.children;
|
|
11113
11197
|
if (!Array.isArray(children) || children.length === 0) {
|
|
@@ -11147,7 +11231,179 @@ var CheckDirective = /** @class */ (function () {
|
|
|
11147
11231
|
__metadata("design:paramtypes", [TreeViewComponent])
|
|
11148
11232
|
], CheckDirective);
|
|
11149
11233
|
return CheckDirective;
|
|
11150
|
-
}());
|
|
11234
|
+
}(BaseCheckDirective));
|
|
11235
|
+
|
|
11236
|
+
/**
|
|
11237
|
+
* @hidden
|
|
11238
|
+
*
|
|
11239
|
+
* A directive which manages the in-memory checked state of the MultiSelectTree nodes.
|
|
11240
|
+
*/
|
|
11241
|
+
var CheckAllDirective = /** @class */ (function (_super) {
|
|
11242
|
+
__extends(CheckAllDirective, _super);
|
|
11243
|
+
function CheckAllDirective(element, zone, cdr, renderer) {
|
|
11244
|
+
var _this = _super.call(this) || this;
|
|
11245
|
+
_this.element = element;
|
|
11246
|
+
_this.zone = zone;
|
|
11247
|
+
_this.cdr = cdr;
|
|
11248
|
+
_this.renderer = renderer;
|
|
11249
|
+
/**
|
|
11250
|
+
* Fires when the `checkedItems` collection was updated.
|
|
11251
|
+
*/
|
|
11252
|
+
_this.checkedItemsChange = new EventEmitter();
|
|
11253
|
+
/**
|
|
11254
|
+
* Holds a Set with just the checked item keys.
|
|
11255
|
+
*
|
|
11256
|
+
* Should be updated each time the `checkedItems` value or content is changed.
|
|
11257
|
+
* Can be used for efficient look-up of whether an item is checked or not (O(1) access time).
|
|
11258
|
+
*/
|
|
11259
|
+
_this.checkedKeys = new Set();
|
|
11260
|
+
return _this;
|
|
11261
|
+
}
|
|
11262
|
+
CheckAllDirective.prototype.handleChange = function (event) {
|
|
11263
|
+
var _this = this;
|
|
11264
|
+
// Need to store the current checkbox state at the moment of click
|
|
11265
|
+
this.currentCheckedState = event.checked;
|
|
11266
|
+
this.currentIndeterminateState = this.isIndeterminate;
|
|
11267
|
+
this.treeview.nodes.map(function (_value, index) {
|
|
11268
|
+
var itemIndex = String(index);
|
|
11269
|
+
var itemLookup = _this.treeview.itemLookup(itemIndex);
|
|
11270
|
+
_this.checkNode(itemLookup);
|
|
11271
|
+
});
|
|
11272
|
+
this.checkedItemsChange.emit(this.checkedItems.slice());
|
|
11273
|
+
};
|
|
11274
|
+
Object.defineProperty(CheckAllDirective.prototype, "isIndeterminate", {
|
|
11275
|
+
get: function () {
|
|
11276
|
+
var _this = this;
|
|
11277
|
+
var isIndeterminate = this.treeview.nodes.some(function (_node, index) {
|
|
11278
|
+
var itemIndex = String(index);
|
|
11279
|
+
var itemLookup = _this.treeview.itemLookup(itemIndex);
|
|
11280
|
+
return _this.someChecked(itemLookup);
|
|
11281
|
+
});
|
|
11282
|
+
return this.isChecked ? false : isIndeterminate;
|
|
11283
|
+
},
|
|
11284
|
+
enumerable: true,
|
|
11285
|
+
configurable: true
|
|
11286
|
+
});
|
|
11287
|
+
Object.defineProperty(CheckAllDirective.prototype, "isChecked", {
|
|
11288
|
+
get: function () {
|
|
11289
|
+
var _this = this;
|
|
11290
|
+
var isChecked = this.treeview.nodes.every(function (_node, index) {
|
|
11291
|
+
var itemIndex = String(index);
|
|
11292
|
+
var itemLookup = _this.treeview.itemLookup(itemIndex);
|
|
11293
|
+
return _this.allChecked(itemLookup);
|
|
11294
|
+
});
|
|
11295
|
+
return isChecked;
|
|
11296
|
+
},
|
|
11297
|
+
enumerable: true,
|
|
11298
|
+
configurable: true
|
|
11299
|
+
});
|
|
11300
|
+
CheckAllDirective.prototype.ngOnChanges = function (changes) {
|
|
11301
|
+
if (isPresent(changes.checkedItems)) {
|
|
11302
|
+
this.updateItems();
|
|
11303
|
+
this.renderer.setProperty(this.element.nativeElement, 'checked', this.isChecked);
|
|
11304
|
+
this.renderer.setProperty(this.element.nativeElement, 'indeterminate', this.isIndeterminate);
|
|
11305
|
+
}
|
|
11306
|
+
};
|
|
11307
|
+
CheckAllDirective.prototype.ngOnInit = function () {
|
|
11308
|
+
var _this = this;
|
|
11309
|
+
if (this.focused) {
|
|
11310
|
+
this.nextTick(function () { return _this.element.nativeElement.focus(); });
|
|
11311
|
+
}
|
|
11312
|
+
};
|
|
11313
|
+
CheckAllDirective.prototype.nextTick = function (fn) {
|
|
11314
|
+
this.zone.runOutsideAngular(function () { return setTimeout(fn); });
|
|
11315
|
+
};
|
|
11316
|
+
CheckAllDirective.prototype.checkNode = function (itemLookup) {
|
|
11317
|
+
var _this = this;
|
|
11318
|
+
if (this.treeview.isDisabled(itemLookup.item.dataItem, itemLookup.item.index)) {
|
|
11319
|
+
return;
|
|
11320
|
+
}
|
|
11321
|
+
var pendingCheck = [];
|
|
11322
|
+
var filter$$1 = function (item) {
|
|
11323
|
+
return _this.treeview.isVisible(item.dataItem, item.index) &&
|
|
11324
|
+
!_this.treeview.isDisabled(item.dataItem, item.index);
|
|
11325
|
+
};
|
|
11326
|
+
pendingCheck.push(itemLookup.item);
|
|
11327
|
+
fetchDescendentNodes(itemLookup, filter$$1)
|
|
11328
|
+
.forEach(function (lookup) { return pendingCheck.push(lookup.item); });
|
|
11329
|
+
pendingCheck.forEach(function (item) {
|
|
11330
|
+
if (_this.currentIndeterminateState) {
|
|
11331
|
+
_this.lastAction === 'check' ?
|
|
11332
|
+
_this.addItem(item) :
|
|
11333
|
+
_this.removeItem(item);
|
|
11334
|
+
return;
|
|
11335
|
+
}
|
|
11336
|
+
_this.currentCheckedState ?
|
|
11337
|
+
_this.addItem(item) :
|
|
11338
|
+
_this.removeItem(item);
|
|
11339
|
+
});
|
|
11340
|
+
};
|
|
11341
|
+
CheckAllDirective.prototype.allChecked = function (lookup) {
|
|
11342
|
+
var _this = this;
|
|
11343
|
+
var children = lookup && lookup.children;
|
|
11344
|
+
if (!Array.isArray(children)) {
|
|
11345
|
+
return;
|
|
11346
|
+
}
|
|
11347
|
+
var childrenChecked = children.every(function (child) {
|
|
11348
|
+
if (child.children.length) {
|
|
11349
|
+
return _this.isItemChecked(child.item) && _this.allChecked(child);
|
|
11350
|
+
}
|
|
11351
|
+
return _this.isItemChecked(child.item);
|
|
11352
|
+
});
|
|
11353
|
+
return childrenChecked && this.isItemChecked(lookup.item);
|
|
11354
|
+
};
|
|
11355
|
+
CheckAllDirective.prototype.someChecked = function (lookup) {
|
|
11356
|
+
var _this = this;
|
|
11357
|
+
var children = lookup && lookup.children;
|
|
11358
|
+
if (!Array.isArray(children)) {
|
|
11359
|
+
return;
|
|
11360
|
+
}
|
|
11361
|
+
var childrenChecked = children.some(function (child) {
|
|
11362
|
+
if (child.children.length) {
|
|
11363
|
+
return _this.isItemChecked(child.item) || _this.someChecked(child);
|
|
11364
|
+
}
|
|
11365
|
+
return _this.isItemChecked(child.item);
|
|
11366
|
+
});
|
|
11367
|
+
return childrenChecked || this.isItemChecked(lookup.item);
|
|
11368
|
+
};
|
|
11369
|
+
__decorate([
|
|
11370
|
+
Input(),
|
|
11371
|
+
__metadata("design:type", String)
|
|
11372
|
+
], CheckAllDirective.prototype, "lastAction", void 0);
|
|
11373
|
+
__decorate([
|
|
11374
|
+
Input(),
|
|
11375
|
+
__metadata("design:type", TreeViewComponent)
|
|
11376
|
+
], CheckAllDirective.prototype, "treeview", void 0);
|
|
11377
|
+
__decorate([
|
|
11378
|
+
Input(),
|
|
11379
|
+
__metadata("design:type", Array)
|
|
11380
|
+
], CheckAllDirective.prototype, "checkedItems", void 0);
|
|
11381
|
+
__decorate([
|
|
11382
|
+
Input(),
|
|
11383
|
+
__metadata("design:type", Object)
|
|
11384
|
+
], CheckAllDirective.prototype, "valueField", void 0);
|
|
11385
|
+
__decorate([
|
|
11386
|
+
Input('checkAll'),
|
|
11387
|
+
__metadata("design:type", Boolean)
|
|
11388
|
+
], CheckAllDirective.prototype, "focused", void 0);
|
|
11389
|
+
__decorate([
|
|
11390
|
+
Output(),
|
|
11391
|
+
__metadata("design:type", EventEmitter)
|
|
11392
|
+
], CheckAllDirective.prototype, "checkedItemsChange", void 0);
|
|
11393
|
+
__decorate([
|
|
11394
|
+
HostListener('change', ['$event.target']),
|
|
11395
|
+
__metadata("design:type", Function),
|
|
11396
|
+
__metadata("design:paramtypes", [Object]),
|
|
11397
|
+
__metadata("design:returntype", void 0)
|
|
11398
|
+
], CheckAllDirective.prototype, "handleChange", null);
|
|
11399
|
+
CheckAllDirective = __decorate([
|
|
11400
|
+
Directive({
|
|
11401
|
+
selector: '[checkAll]' // tslint:disable-line
|
|
11402
|
+
}),
|
|
11403
|
+
__metadata("design:paramtypes", [ElementRef, NgZone, ChangeDetectorRef, Renderer2])
|
|
11404
|
+
], CheckAllDirective);
|
|
11405
|
+
return CheckAllDirective;
|
|
11406
|
+
}(BaseCheckDirective));
|
|
11151
11407
|
|
|
11152
11408
|
var INTERNAL_DIRECTIVES = [
|
|
11153
11409
|
ListComponent,
|
|
@@ -11156,7 +11412,8 @@ var INTERNAL_DIRECTIVES = [
|
|
|
11156
11412
|
SearchBarComponent,
|
|
11157
11413
|
TemplateContextDirective,
|
|
11158
11414
|
TagListComponent,
|
|
11159
|
-
CheckDirective
|
|
11415
|
+
CheckDirective,
|
|
11416
|
+
CheckAllDirective
|
|
11160
11417
|
];
|
|
11161
11418
|
/**
|
|
11162
11419
|
* @hidden
|
|
@@ -11486,4 +11743,4 @@ var DropDownsModule = /** @class */ (function () {
|
|
|
11486
11743
|
* Generated bundle index. Do not edit.
|
|
11487
11744
|
*/
|
|
11488
11745
|
|
|
11489
|
-
export { AUTOCOMPLETE_VALUE_ACCESSOR, COMBOBOX_VALUE_ACCESSOR, TOUCH_ENABLED, DataService, DisabledItemsService, FilterInputDirective, FilterableComponent, ListItemDirective, CustomMessagesComponent, LocalizedMessagesDirective, Messages, NavigationService, SearchBarComponent, SelectionService, TagListComponent, NoDataTemplateDirective, TagTemplateDirective, DROPDOWNLIST_VALUE_ACCESSOR, CheckDirective, MultiSelectTreeSummaryTagDirective, AutoCompleteComponent, ComboBoxComponent, DropDownListComponent, MultiSelectComponent, MultiColumnComboBoxComponent, ComboBoxColumnComponent, ColumnCellTemplateDirective, ColumnHeaderTemplateDirective, DropDownTreeComponent, MultiSelectTreeComponent, DropDownTreeFlatBindingDirective, DropDownTreeHierarchyBindingDirective, MultiSelectTreeFlatBindingDirective, MultiSelectTreeHierarchyBindingDirective, DropDownTreesExpandDirective, DropDownTreesModule, NodeTemplateDirective, ItemTemplateDirective, GroupTemplateDirective, FixedGroupTemplateDirective, CustomItemTemplateDirective, HeaderTemplateDirective, FooterTemplateDirective, ValueTemplateDirective, TemplateContextDirective, GroupTagTemplateDirective, SelectableDirective, SummaryTagDirective, FilterDirective, DropDownsModule, MultiSelectModule, SharedModule, AutoCompleteModule, ComboBoxModule, DropDownListModule, SharedDirectivesModule, ListComponent, PreventableEvent, RemoveTagEvent };
|
|
11746
|
+
export { AUTOCOMPLETE_VALUE_ACCESSOR, COMBOBOX_VALUE_ACCESSOR, TOUCH_ENABLED, DataService, DisabledItemsService, FilterInputDirective, FilterableComponent, ListItemDirective, CustomMessagesComponent, LocalizedMessagesDirective, Messages, NavigationService, SearchBarComponent, SelectionService, TagListComponent, NoDataTemplateDirective, TagTemplateDirective, DROPDOWNLIST_VALUE_ACCESSOR, BaseCheckDirective, CheckAllDirective, CheckDirective, MultiSelectTreeSummaryTagDirective, AutoCompleteComponent, ComboBoxComponent, DropDownListComponent, MultiSelectComponent, MultiColumnComboBoxComponent, ComboBoxColumnComponent, ColumnCellTemplateDirective, ColumnHeaderTemplateDirective, DropDownTreeComponent, MultiSelectTreeComponent, DropDownTreeFlatBindingDirective, DropDownTreeHierarchyBindingDirective, MultiSelectTreeFlatBindingDirective, MultiSelectTreeHierarchyBindingDirective, DropDownTreesExpandDirective, DropDownTreesModule, NodeTemplateDirective, ItemTemplateDirective, GroupTemplateDirective, FixedGroupTemplateDirective, CustomItemTemplateDirective, HeaderTemplateDirective, FooterTemplateDirective, ValueTemplateDirective, TemplateContextDirective, GroupTagTemplateDirective, SelectableDirective, SummaryTagDirective, FilterDirective, DropDownsModule, MultiSelectModule, SharedModule, AutoCompleteModule, ComboBoxModule, DropDownListModule, SharedDirectivesModule, ListComponent, PreventableEvent, RemoveTagEvent };
|
|
@@ -33,6 +33,7 @@ var DEFAULT_FILTER_SETTINGS = {
|
|
|
33
33
|
* public data: Array<string> = ["Albania", "Andorra", "Armenia", "Austria", "Azerbaijan"];
|
|
34
34
|
* }
|
|
35
35
|
* ```
|
|
36
|
+
* > Currently, the built-in filtering does not work with [grouped data]({% slug api_kendo-data-query_groupby %}).
|
|
36
37
|
*/
|
|
37
38
|
var FilterDirective = /** @class */ (function () {
|
|
38
39
|
function FilterDirective(component) {
|
|
@@ -23,6 +23,10 @@ var Messages = /** @class */ (function (_super) {
|
|
|
23
23
|
core_1.Input(),
|
|
24
24
|
tslib_1.__metadata("design:type", String)
|
|
25
25
|
], Messages.prototype, "clearTitle", void 0);
|
|
26
|
+
tslib_1.__decorate([
|
|
27
|
+
core_1.Input(),
|
|
28
|
+
tslib_1.__metadata("design:type", String)
|
|
29
|
+
], Messages.prototype, "checkAllText", void 0);
|
|
26
30
|
return Messages;
|
|
27
31
|
}(kendo_angular_l10n_1.ComponentMessages));
|
|
28
32
|
exports.Messages = Messages;
|
|
@@ -18,6 +18,7 @@ var list_item_directive_1 = require("./list-item.directive");
|
|
|
18
18
|
var selectable_directive_1 = require("./selection/selectable.directive");
|
|
19
19
|
var template_context_directive_1 = require("./templates/template-context.directive");
|
|
20
20
|
var check_directive_1 = require("../dropdowntrees/checked-state/check.directive");
|
|
21
|
+
var check_all_directive_1 = require("../dropdowntrees/checked-state/check-all.directive");
|
|
21
22
|
var INTERNAL_DIRECTIVES = [
|
|
22
23
|
list_component_1.ListComponent,
|
|
23
24
|
list_item_directive_1.ListItemDirective,
|
|
@@ -25,7 +26,8 @@ var INTERNAL_DIRECTIVES = [
|
|
|
25
26
|
searchbar_component_1.SearchBarComponent,
|
|
26
27
|
template_context_directive_1.TemplateContextDirective,
|
|
27
28
|
taglist_component_1.TagListComponent,
|
|
28
|
-
check_directive_1.CheckDirective
|
|
29
|
+
check_directive_1.CheckDirective,
|
|
30
|
+
check_all_directive_1.CheckAllDirective
|
|
29
31
|
];
|
|
30
32
|
/**
|
|
31
33
|
* @hidden
|