@progress/kendo-angular-dropdowns 21.4.1 → 22.0.0-develop.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.
- package/common/localization/messages.d.ts +1 -1
- package/dropdowntrees/checked-state/base-check.directive.d.ts +1 -1
- package/fesm2022/progress-kendo-angular-dropdowns.mjs +173 -173
- package/package.json +14 -22
- package/schematics/ngAdd/index.js +2 -2
- package/esm2022/autocomplete/autocomplete.component.mjs +0 -1687
- package/esm2022/autocomplete/autocomplete.module.mjs +0 -70
- package/esm2022/comboboxes/combobox-column/column-cell-template.directive.mjs +0 -42
- package/esm2022/comboboxes/combobox-column/column-header-template.directive.mjs +0 -40
- package/esm2022/comboboxes/combobox-column/combobox-column.component.mjs +0 -116
- package/esm2022/comboboxes/combobox-column/util.mjs +0 -60
- package/esm2022/comboboxes/combobox.component.mjs +0 -2149
- package/esm2022/comboboxes/combobox.module.mjs +0 -77
- package/esm2022/comboboxes/multicolumncombobox.component.mjs +0 -883
- package/esm2022/common/adaptive-renderer.component.mjs +0 -253
- package/esm2022/common/constants/error-messages.mjs +0 -61
- package/esm2022/common/data.service.mjs +0 -250
- package/esm2022/common/disabled-items/disabled-items.service.mjs +0 -47
- package/esm2022/common/disabled-items/item-disabled.mjs +0 -5
- package/esm2022/common/filter-input.directive.mjs +0 -39
- package/esm2022/common/filtering/filter-settings.mjs +0 -5
- package/esm2022/common/filtering/filter.directive.mjs +0 -136
- package/esm2022/common/filtering/filterable-component.mjs +0 -34
- package/esm2022/common/list-item.directive.mjs +0 -25
- package/esm2022/common/list.component.mjs +0 -968
- package/esm2022/common/localization/custom-messages.component.mjs +0 -96
- package/esm2022/common/localization/localized-messages.directive.mjs +0 -47
- package/esm2022/common/localization/messages.mjs +0 -77
- package/esm2022/common/models/checkboxes-settings.mjs +0 -15
- package/esm2022/common/models/direction.mjs +0 -5
- package/esm2022/common/models/fillmode.mjs +0 -5
- package/esm2022/common/models/list-type.mjs +0 -5
- package/esm2022/common/models/page-change-event.mjs +0 -5
- package/esm2022/common/models/popup-settings.mjs +0 -5
- package/esm2022/common/models/preventable-event.mjs +0 -25
- package/esm2022/common/models/remove-tag-event.mjs +0 -23
- package/esm2022/common/models/rounded.mjs +0 -5
- package/esm2022/common/models/size.mjs +0 -5
- package/esm2022/common/models/virtualization-settings.mjs +0 -24
- package/esm2022/common/navigation/navigation-action.mjs +0 -32
- package/esm2022/common/navigation/navigation.service.mjs +0 -188
- package/esm2022/common/searchbar.component.mjs +0 -386
- package/esm2022/common/selection/selectable.directive.mjs +0 -83
- package/esm2022/common/selection/selection.service.mjs +0 -166
- package/esm2022/common/shared-events.directive.mjs +0 -99
- package/esm2022/common/taglist.component.mjs +0 -295
- package/esm2022/common/templates/custom-item-template.directive.mjs +0 -48
- package/esm2022/common/templates/fixed-group-template.directive.mjs +0 -55
- package/esm2022/common/templates/footer-template.directive.mjs +0 -49
- package/esm2022/common/templates/group-tag-template.directive.mjs +0 -47
- package/esm2022/common/templates/group-template.directive.mjs +0 -55
- package/esm2022/common/templates/header-template.directive.mjs +0 -49
- package/esm2022/common/templates/item-template.directive.mjs +0 -48
- package/esm2022/common/templates/no-data-template.directive.mjs +0 -49
- package/esm2022/common/templates/tag-template.directive.mjs +0 -46
- package/esm2022/common/templates/value-template.directive.mjs +0 -50
- package/esm2022/common/util.mjs +0 -376
- package/esm2022/directives.mjs +0 -172
- package/esm2022/dropdownlist/dropdownlist.component.mjs +0 -1999
- package/esm2022/dropdownlist/dropdownlist.module.mjs +0 -79
- package/esm2022/dropdowns.module.mjs +0 -76
- package/esm2022/dropdowntrees/checked-state/base-check.directive.mjs +0 -76
- package/esm2022/dropdowntrees/checked-state/check-all.directive.mjs +0 -170
- package/esm2022/dropdowntrees/checked-state/check.directive.mjs +0 -168
- package/esm2022/dropdowntrees/checked-state/checkable-settings.mjs +0 -5
- package/esm2022/dropdowntrees/checked-state/checked-item.mjs +0 -5
- package/esm2022/dropdowntrees/data-binding/dropdowntree/flat-binding.directive.mjs +0 -69
- package/esm2022/dropdowntrees/data-binding/dropdowntree/hierarchy-binding.directive.mjs +0 -62
- package/esm2022/dropdowntrees/data-binding/multiselecttree/flat-binding.directive.mjs +0 -69
- package/esm2022/dropdowntrees/data-binding/multiselecttree/hierarchy-binding.directive.mjs +0 -62
- package/esm2022/dropdowntrees/dropdowntree.component.mjs +0 -1967
- package/esm2022/dropdowntrees/dropdowntrees.module.mjs +0 -79
- package/esm2022/dropdowntrees/expanded-state/expand.directive.mjs +0 -49
- package/esm2022/dropdowntrees/lookup/lookup.mjs +0 -5
- package/esm2022/dropdowntrees/lookup/lookup.service.mjs +0 -82
- package/esm2022/dropdowntrees/multiselecttree.component.mjs +0 -2359
- package/esm2022/dropdowntrees/summary-tag/summary-tag.directive.mjs +0 -70
- package/esm2022/dropdowntrees/templates/node-template.directive.mjs +0 -31
- package/esm2022/index.mjs +0 -55
- package/esm2022/multiselect/multiselect.component.mjs +0 -2380
- package/esm2022/multiselect/multiselect.module.mjs +0 -79
- package/esm2022/multiselect/summary-tag.directive.mjs +0 -68
- package/esm2022/package-metadata.mjs +0 -16
- package/esm2022/progress-kendo-angular-dropdowns.mjs +0 -8
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Directive, Input } from '@angular/core';
|
|
6
|
-
import { FilterableComponent } from './filterable-component';
|
|
7
|
-
import { getter, isArray, isPresent } from '../util';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "./filterable-component";
|
|
10
|
-
const DEFAULT_FILTER_SETTINGS = {
|
|
11
|
-
caseSensitive: false,
|
|
12
|
-
operator: 'startsWith'
|
|
13
|
-
};
|
|
14
|
-
/**
|
|
15
|
-
* Implements an event handler for the `filterChange` event of a DropDowns component
|
|
16
|
-
* which performs simple data filtering.
|
|
17
|
-
* Currently, the built-in filtering does not work with [grouped data]({% slug api_kendo-data-query_groupby %}).
|
|
18
|
-
*
|
|
19
|
-
* @example
|
|
20
|
-
* ```ts
|
|
21
|
-
* @Component({
|
|
22
|
-
* selector: 'my-app',
|
|
23
|
-
* template: `
|
|
24
|
-
* <kendo-autocomplete
|
|
25
|
-
* [data]="data"
|
|
26
|
-
* kendoDropDownFilter
|
|
27
|
-
* placeholder="e.g. Andorra"
|
|
28
|
-
* >
|
|
29
|
-
* </kendo-autocomplete>
|
|
30
|
-
* `
|
|
31
|
-
* })
|
|
32
|
-
* class AppComponent {
|
|
33
|
-
* public data: Array<string> = ["Albania", "Andorra", "Armenia", "Austria", "Azerbaijan"];
|
|
34
|
-
* }
|
|
35
|
-
* ```
|
|
36
|
-
* @remarks
|
|
37
|
-
* Applied to: {@link AutoCompleteComponent}, {@link ComboBoxComponent}, {@link DropDownListComponent}, {@link MultiColumnComboBoxComponent}, {@link MultiSelectComponent}.
|
|
38
|
-
*/
|
|
39
|
-
export class FilterDirective {
|
|
40
|
-
component;
|
|
41
|
-
/**
|
|
42
|
-
* The initial data that will be used as a source array for the filtering operations.
|
|
43
|
-
*/
|
|
44
|
-
set data(data) {
|
|
45
|
-
this._data = data || [];
|
|
46
|
-
}
|
|
47
|
-
get data() {
|
|
48
|
-
return this._data;
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* The configuration object which sets the behavior of the `kendoDropDownFilter` directive.
|
|
52
|
-
* If no [DropDownFilterSettings]({% slug api_dropdowns_dropdownfiltersettings %}) object is provided to this input, the directive will use the default interface settings.
|
|
53
|
-
*/
|
|
54
|
-
rawSettings;
|
|
55
|
-
/**
|
|
56
|
-
* @hidden
|
|
57
|
-
*
|
|
58
|
-
* Sets whether the filtering functionality is enabled on component init.
|
|
59
|
-
*/
|
|
60
|
-
filterable = true;
|
|
61
|
-
_data = [];
|
|
62
|
-
filterChangeSubscription;
|
|
63
|
-
constructor(component) {
|
|
64
|
-
this.component = component;
|
|
65
|
-
}
|
|
66
|
-
ngOnInit() {
|
|
67
|
-
this.component.filterable = this.filterable;
|
|
68
|
-
this.filterChangeSubscription = this.component.filterChange
|
|
69
|
-
.subscribe(this.handleFilterChange.bind(this));
|
|
70
|
-
}
|
|
71
|
-
ngOnDestroy() {
|
|
72
|
-
if (isPresent(this.filterChangeSubscription)) {
|
|
73
|
-
this.filterChangeSubscription.unsubscribe();
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
handleFilterChange(query) {
|
|
77
|
-
this.component.data = this.data.filter(item => this.matchesAnyField(item, query));
|
|
78
|
-
}
|
|
79
|
-
matchesAnyField(item, query) {
|
|
80
|
-
const normalizedQuery = this.normalizeValue(query);
|
|
81
|
-
const { fields } = this.filterSettings;
|
|
82
|
-
// if no filter fields are present, we are dealing with primitive data
|
|
83
|
-
if (fields.length === 0) {
|
|
84
|
-
return this.checkItem(item, normalizedQuery);
|
|
85
|
-
}
|
|
86
|
-
return fields.some(field => this.checkItem(getter(item, field), normalizedQuery));
|
|
87
|
-
}
|
|
88
|
-
checkItem(target, query) {
|
|
89
|
-
target = this.normalizeValue(target);
|
|
90
|
-
if (this.filterSettings.operator === 'contains') {
|
|
91
|
-
return target.indexOf(query) !== -1;
|
|
92
|
-
}
|
|
93
|
-
else {
|
|
94
|
-
return target.startsWith(query);
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
normalizeValue(value) {
|
|
98
|
-
const normalizedValue = isPresent(value) ? value.toString() : '';
|
|
99
|
-
return this.filterSettings.caseSensitive ? normalizedValue : normalizedValue.toLowerCase();
|
|
100
|
-
}
|
|
101
|
-
getFilterFields(providedFields) {
|
|
102
|
-
// ignore provided fields if the component deals with primitive data
|
|
103
|
-
if (!this.component.textField && !this.component.valueField) {
|
|
104
|
-
return [];
|
|
105
|
-
}
|
|
106
|
-
if (isArray(providedFields) && providedFields.length > 0) {
|
|
107
|
-
return providedFields;
|
|
108
|
-
}
|
|
109
|
-
else {
|
|
110
|
-
// the autocomplete uses `valueField` for text extraction
|
|
111
|
-
const textField = this.component.textField || this.component.valueField;
|
|
112
|
-
return [textField];
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
get filterSettings() {
|
|
116
|
-
const settings = this.rawSettings;
|
|
117
|
-
const providedFields = isPresent(settings) && typeof settings === 'object' ? settings.fields : [];
|
|
118
|
-
return Object.assign({}, DEFAULT_FILTER_SETTINGS, settings, { fields: this.getFilterFields(providedFields) });
|
|
119
|
-
}
|
|
120
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterDirective, deps: [{ token: i1.FilterableComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
|
121
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: FilterDirective, isStandalone: true, selector: "[kendoDropDownFilter]", inputs: { data: "data", rawSettings: ["kendoDropDownFilter", "rawSettings"], filterable: "filterable" }, ngImport: i0 });
|
|
122
|
-
}
|
|
123
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterDirective, decorators: [{
|
|
124
|
-
type: Directive,
|
|
125
|
-
args: [{
|
|
126
|
-
selector: '[kendoDropDownFilter]',
|
|
127
|
-
standalone: true
|
|
128
|
-
}]
|
|
129
|
-
}], ctorParameters: () => [{ type: i1.FilterableComponent }], propDecorators: { data: [{
|
|
130
|
-
type: Input
|
|
131
|
-
}], rawSettings: [{
|
|
132
|
-
type: Input,
|
|
133
|
-
args: ['kendoDropDownFilter']
|
|
134
|
-
}], filterable: [{
|
|
135
|
-
type: Input
|
|
136
|
-
}] } });
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
/**
|
|
6
|
-
* Defines the mandatory properties of the `kendoDropDownFilter` directive
|
|
7
|
-
* so that `kendoDropDownFilter` can be used with any of the DropDowns components
|
|
8
|
-
* which implement the `FilterableDropDownComponentBase` class.
|
|
9
|
-
*
|
|
10
|
-
* @hidden
|
|
11
|
-
*/
|
|
12
|
-
export class FilterableComponent {
|
|
13
|
-
/**
|
|
14
|
-
* Sets the data of the component.
|
|
15
|
-
*/
|
|
16
|
-
data;
|
|
17
|
-
/**
|
|
18
|
-
* Explicitly enables the emitting of the `filterChange` event.
|
|
19
|
-
*/
|
|
20
|
-
filterable;
|
|
21
|
-
/**
|
|
22
|
-
* Hooks to the `filter` event.
|
|
23
|
-
*/
|
|
24
|
-
filterChange;
|
|
25
|
-
/**
|
|
26
|
-
* Reads the data from the components with complex data.
|
|
27
|
-
*/
|
|
28
|
-
textField;
|
|
29
|
-
/**
|
|
30
|
-
* Reads the data from the components with complex data which use `valueField` instead of
|
|
31
|
-
* `textField`—for example, the AutoComplete.
|
|
32
|
-
*/
|
|
33
|
-
valueField;
|
|
34
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
|
-
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
-
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Directive, ElementRef } from '@angular/core';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
/**
|
|
8
|
-
* @hidden
|
|
9
|
-
*/
|
|
10
|
-
export class ListItemDirective {
|
|
11
|
-
element;
|
|
12
|
-
constructor(element) {
|
|
13
|
-
this.element = element;
|
|
14
|
-
}
|
|
15
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ListItemDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
16
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ListItemDirective, isStandalone: true, selector: "\"li[role=option], li[role=group], li[role=presentation]\"", ngImport: i0 });
|
|
17
|
-
}
|
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ListItemDirective, decorators: [{
|
|
19
|
-
type: Directive,
|
|
20
|
-
args: [{
|
|
21
|
-
selector: '"li[role=option], li[role=group], li[role=presentation]"' // eslint-disable-line
|
|
22
|
-
,
|
|
23
|
-
standalone: true
|
|
24
|
-
}]
|
|
25
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }] });
|