@progress/kendo-angular-filter 23.3.0-develop.2 → 23.3.0-develop.21
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/editors/boolean-editor.component.d.ts +8 -19
- package/fesm2022/progress-kendo-angular-filter.mjs +44 -77
- package/filter-expression.component.d.ts +3 -6
- package/filter-group.component.d.ts +2 -10
- package/package-metadata.mjs +2 -2
- package/package.json +12 -12
- package/schematics/ngAdd/index.js +4 -4
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import {
|
|
5
|
+
import { EventEmitter } from '@angular/core';
|
|
6
6
|
import { LocalizationService } from '@progress/kendo-angular-l10n';
|
|
7
7
|
import { FilterDescriptor } from '@progress/kendo-data-query';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
@@ -11,31 +11,20 @@ import * as i0 from "@angular/core";
|
|
|
11
11
|
*/
|
|
12
12
|
export declare class FilterBooleanEditorComponent {
|
|
13
13
|
private localization;
|
|
14
|
-
private cdr;
|
|
15
14
|
currentItem: FilterDescriptor;
|
|
16
15
|
valueChange: EventEmitter<void>;
|
|
17
|
-
items: {
|
|
16
|
+
get items(): {
|
|
18
17
|
text: string;
|
|
19
|
-
value: boolean;
|
|
18
|
+
value: boolean | null;
|
|
20
19
|
}[];
|
|
21
|
-
defaultItem: {
|
|
20
|
+
get defaultItem(): {
|
|
22
21
|
text: string;
|
|
23
|
-
value: boolean;
|
|
22
|
+
value: boolean | null;
|
|
24
23
|
};
|
|
25
|
-
|
|
26
|
-
constructor(localization: LocalizationService, cdr: ChangeDetectorRef);
|
|
27
|
-
ngOnInit(): void;
|
|
28
|
-
getDefaultItem(): {
|
|
29
|
-
text: string;
|
|
30
|
-
value: boolean;
|
|
31
|
-
};
|
|
32
|
-
getValueItems(): {
|
|
33
|
-
text: string;
|
|
34
|
-
value: boolean;
|
|
35
|
-
}[];
|
|
36
|
-
ngOnDestroy(): void;
|
|
24
|
+
constructor(localization: LocalizationService);
|
|
37
25
|
messageFor(key: string): string;
|
|
38
|
-
|
|
26
|
+
getBooleanText(value: boolean | null): string;
|
|
27
|
+
onValueChange(value: boolean | null): void;
|
|
39
28
|
static ɵfac: i0.ɵɵFactoryDeclaration<FilterBooleanEditorComponent, never>;
|
|
40
29
|
static ɵcmp: i0.ɵɵComponentDeclaration<FilterBooleanEditorComponent, "kendo-filter-boolean-editor", never, { "currentItem": { "alias": "currentItem"; "required": false; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
|
|
41
30
|
}
|
|
@@ -231,8 +231,8 @@ const packageMetadata = {
|
|
|
231
231
|
productName: 'Kendo UI for Angular',
|
|
232
232
|
productCode: 'KENDOUIANGULAR',
|
|
233
233
|
productCodes: ['KENDOUIANGULAR'],
|
|
234
|
-
publishDate:
|
|
235
|
-
version: '23.3.0-develop.
|
|
234
|
+
publishDate: 1774881286,
|
|
235
|
+
version: '23.3.0-develop.21',
|
|
236
236
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
237
237
|
};
|
|
238
238
|
|
|
@@ -698,47 +698,37 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
698
698
|
*/
|
|
699
699
|
class FilterBooleanEditorComponent {
|
|
700
700
|
localization;
|
|
701
|
-
cdr;
|
|
702
701
|
currentItem;
|
|
703
702
|
valueChange = new EventEmitter();
|
|
704
|
-
items
|
|
705
|
-
defaultItem;
|
|
706
|
-
localizationSubscription;
|
|
707
|
-
constructor(localization, cdr) {
|
|
708
|
-
this.localization = localization;
|
|
709
|
-
this.cdr = cdr;
|
|
710
|
-
}
|
|
711
|
-
ngOnInit() {
|
|
712
|
-
this.localizationSubscription = this.localization.changes.subscribe(() => {
|
|
713
|
-
this.defaultItem = this.getDefaultItem();
|
|
714
|
-
this.items = this.getValueItems();
|
|
715
|
-
this.cdr.detectChanges();
|
|
716
|
-
});
|
|
717
|
-
this.items = this.getValueItems();
|
|
718
|
-
this.defaultItem = this.getDefaultItem();
|
|
719
|
-
}
|
|
720
|
-
getDefaultItem() {
|
|
721
|
-
return { text: this.localization.get("filterBooleanAll"), value: null };
|
|
722
|
-
}
|
|
723
|
-
getValueItems() {
|
|
703
|
+
get items() {
|
|
724
704
|
return [
|
|
725
|
-
{ text: this.
|
|
726
|
-
{ text: this.
|
|
705
|
+
{ text: this.getBooleanText(true), value: true },
|
|
706
|
+
{ text: this.getBooleanText(false), value: false }
|
|
727
707
|
];
|
|
728
708
|
}
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
709
|
+
get defaultItem() {
|
|
710
|
+
return { text: this.getBooleanText(null), value: null };
|
|
711
|
+
}
|
|
712
|
+
constructor(localization) {
|
|
713
|
+
this.localization = localization;
|
|
733
714
|
}
|
|
734
715
|
messageFor(key) {
|
|
735
716
|
return this.localization.get(key);
|
|
736
717
|
}
|
|
718
|
+
getBooleanText(value) {
|
|
719
|
+
if (value === true) {
|
|
720
|
+
return this.messageFor('filterIsTrue');
|
|
721
|
+
}
|
|
722
|
+
if (value === false) {
|
|
723
|
+
return this.messageFor('filterIsFalse');
|
|
724
|
+
}
|
|
725
|
+
return this.messageFor('filterBooleanAll');
|
|
726
|
+
}
|
|
737
727
|
onValueChange(value) {
|
|
738
728
|
this.currentItem.value = value;
|
|
739
729
|
this.valueChange.emit();
|
|
740
730
|
}
|
|
741
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FilterBooleanEditorComponent, deps: [{ token: i1.LocalizationService }
|
|
731
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FilterBooleanEditorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
742
732
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: FilterBooleanEditorComponent, isStandalone: true, selector: "kendo-filter-boolean-editor", inputs: { currentItem: "currentItem" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: `
|
|
743
733
|
<kendo-dropdownlist
|
|
744
734
|
[tabindex]="-1"
|
|
@@ -749,10 +739,11 @@ class FilterBooleanEditorComponent {
|
|
|
749
739
|
[defaultItem]="defaultItem"
|
|
750
740
|
[valuePrimitive]="true"
|
|
751
741
|
textField="text"
|
|
752
|
-
valueField="value"
|
|
753
|
-
>
|
|
742
|
+
valueField="value">
|
|
743
|
+
<ng-template kendoDropDownListValueTemplate let-dataItem>{{ getBooleanText(dataItem.value) }}</ng-template>
|
|
744
|
+
<ng-template kendoDropDownListItemTemplate let-dataItem>{{ getBooleanText(dataItem.value) }}</ng-template>
|
|
754
745
|
</kendo-dropdownlist>
|
|
755
|
-
`, isInline: true, dependencies: [{ kind: "component", type: DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["customIconClass", "showStickyHeader", "icon", "svgIcon", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "adaptiveTitle", "adaptiveSubtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "leftRightArrowsNavigation", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }, { kind: "directive", type: AriaLabelValueDirective, selector: "[kendoAriaLabelValue]", inputs: ["kendoAriaLabelValue"] }] });
|
|
746
|
+
`, isInline: true, dependencies: [{ kind: "component", type: DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["customIconClass", "showStickyHeader", "icon", "svgIcon", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "adaptiveTitle", "adaptiveSubtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "leftRightArrowsNavigation", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }, { kind: "directive", type: AriaLabelValueDirective, selector: "[kendoAriaLabelValue]", inputs: ["kendoAriaLabelValue"] }, { kind: "directive", type: ValueTemplateDirective, selector: "[kendoDropDownListValueTemplate],[kendoDropDownTreeValueTemplate]" }, { kind: "directive", type: ItemTemplateDirective, selector: "[kendoDropDownListItemTemplate],[kendoComboBoxItemTemplate],[kendoAutoCompleteItemTemplate],[kendoMultiSelectItemTemplate]" }] });
|
|
756
747
|
}
|
|
757
748
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FilterBooleanEditorComponent, decorators: [{
|
|
758
749
|
type: Component,
|
|
@@ -768,14 +759,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
768
759
|
[defaultItem]="defaultItem"
|
|
769
760
|
[valuePrimitive]="true"
|
|
770
761
|
textField="text"
|
|
771
|
-
valueField="value"
|
|
772
|
-
>
|
|
762
|
+
valueField="value">
|
|
763
|
+
<ng-template kendoDropDownListValueTemplate let-dataItem>{{ getBooleanText(dataItem.value) }}</ng-template>
|
|
764
|
+
<ng-template kendoDropDownListItemTemplate let-dataItem>{{ getBooleanText(dataItem.value) }}</ng-template>
|
|
773
765
|
</kendo-dropdownlist>
|
|
774
766
|
`,
|
|
775
767
|
standalone: true,
|
|
776
|
-
imports: [DropDownListComponent, AriaLabelValueDirective]
|
|
768
|
+
imports: [DropDownListComponent, AriaLabelValueDirective, ValueTemplateDirective, ItemTemplateDirective]
|
|
777
769
|
}]
|
|
778
|
-
}], ctorParameters: () => [{ type: i1.LocalizationService }
|
|
770
|
+
}], ctorParameters: () => [{ type: i1.LocalizationService }], propDecorators: { currentItem: [{
|
|
779
771
|
type: Input
|
|
780
772
|
}], valueChange: [{
|
|
781
773
|
type: Output
|
|
@@ -985,7 +977,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
985
977
|
*/
|
|
986
978
|
class FilterExpressionComponent extends BaseFilterRowComponent {
|
|
987
979
|
filterService;
|
|
988
|
-
cdr;
|
|
989
980
|
/**
|
|
990
981
|
* @hidden
|
|
991
982
|
*/
|
|
@@ -1037,11 +1028,9 @@ class FilterExpressionComponent extends BaseFilterRowComponent {
|
|
|
1037
1028
|
return false;
|
|
1038
1029
|
}
|
|
1039
1030
|
}
|
|
1040
|
-
|
|
1041
|
-
constructor(filterService, cdr, element, navigationService, localization, renderer) {
|
|
1031
|
+
constructor(filterService, element, navigationService, localization, renderer) {
|
|
1042
1032
|
super(element, navigationService, localization, renderer);
|
|
1043
1033
|
this.filterService = filterService;
|
|
1044
|
-
this.cdr = cdr;
|
|
1045
1034
|
}
|
|
1046
1035
|
ngOnInit() {
|
|
1047
1036
|
this.isEditorDisabled = nullOperators.indexOf(this.currentItem.operator) >= 0;
|
|
@@ -1061,15 +1050,6 @@ class FilterExpressionComponent extends BaseFilterRowComponent {
|
|
|
1061
1050
|
this.setOperators(defaultFilter);
|
|
1062
1051
|
}
|
|
1063
1052
|
this.setEditorTemplate();
|
|
1064
|
-
this.localizationSubscription = this.localization.changes.subscribe(() => {
|
|
1065
|
-
this.setOperators(foundFilter || defaultFilter);
|
|
1066
|
-
this.cdr.detectChanges();
|
|
1067
|
-
});
|
|
1068
|
-
}
|
|
1069
|
-
ngOnDestroy() {
|
|
1070
|
-
if (this.localizationSubscription) {
|
|
1071
|
-
this.localizationSubscription.unsubscribe();
|
|
1072
|
-
}
|
|
1073
1053
|
}
|
|
1074
1054
|
normalizeOperators(filterEditor, operators) {
|
|
1075
1055
|
const result = [];
|
|
@@ -1160,7 +1140,7 @@ class FilterExpressionComponent extends BaseFilterRowComponent {
|
|
|
1160
1140
|
const filterExpression = this.filterService.filters.find((filter) => filter.field === this.currentItem.field);
|
|
1161
1141
|
this.editorTemplate = filterExpression?.editorTemplate;
|
|
1162
1142
|
}
|
|
1163
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FilterExpressionComponent, deps: [{ token: FilterService }, { token: i0.
|
|
1143
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FilterExpressionComponent, deps: [{ token: FilterService }, { token: i0.ElementRef }, { token: NavigationService }, { token: i1.LocalizationService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
1164
1144
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: FilterExpressionComponent, isStandalone: true, selector: "kendo-filter-expression", inputs: { currentItem: "currentItem" }, providers: [{
|
|
1165
1145
|
provide: FilterItem,
|
|
1166
1146
|
useExisting: forwardRef(() => FilterExpressionComponent)
|
|
@@ -1190,7 +1170,7 @@ class FilterExpressionComponent extends BaseFilterRowComponent {
|
|
|
1190
1170
|
</kendo-filter-expression-operators>
|
|
1191
1171
|
</div>
|
|
1192
1172
|
}
|
|
1193
|
-
|
|
1173
|
+
|
|
1194
1174
|
<div class="k-filter-value k-toolbar-item">
|
|
1195
1175
|
@if (!editorTemplate) {
|
|
1196
1176
|
@switch (getEditorType()) {
|
|
@@ -1214,7 +1194,7 @@ class FilterExpressionComponent extends BaseFilterRowComponent {
|
|
|
1214
1194
|
</ng-template>
|
|
1215
1195
|
}
|
|
1216
1196
|
</div>
|
|
1217
|
-
|
|
1197
|
+
|
|
1218
1198
|
<button
|
|
1219
1199
|
kendoButton
|
|
1220
1200
|
class="k-toolbar-button"
|
|
@@ -1227,7 +1207,7 @@ class FilterExpressionComponent extends BaseFilterRowComponent {
|
|
|
1227
1207
|
</button>
|
|
1228
1208
|
</div>
|
|
1229
1209
|
</div>
|
|
1230
|
-
`, isInline: true, dependencies: [{ kind: "component", type: DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["customIconClass", "showStickyHeader", "icon", "svgIcon", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "adaptiveTitle", "adaptiveSubtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "leftRightArrowsNavigation", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }, { kind: "directive", type: AriaLabelValueDirective, selector: "[kendoAriaLabelValue]", inputs: ["kendoAriaLabelValue"] }, { kind: "component", type: FilterExpressionOperatorsComponent, selector: "kendo-filter-expression-operators", inputs: ["currentItem", "editorType", "operators"], outputs: ["valueChange"] }, { kind: "component", type: FilterTextEditorComponent, selector: "kendo-filter-text-editor", inputs: ["currentItem", "isDisabled"], outputs: ["valueChange"] }, { kind: "component", type: FilterNumericEditorComponent, selector: "kendo-filter-numeric-editor", inputs: ["currentItem", "isDisabled", "format"], outputs: ["valueChange"] }, { kind: "component", type: FilterBooleanEditorComponent, selector: "kendo-filter-boolean-editor", inputs: ["currentItem"], outputs: ["valueChange"] }, { kind: "component", type: FilterDateEditorComponent, selector: "kendo-filter-date-editor", inputs: ["currentItem", "isDisabled", "format"], outputs: ["valueChange"] }, { kind: "directive", type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }] });
|
|
1210
|
+
`, isInline: true, dependencies: [{ kind: "component", type: DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["customIconClass", "showStickyHeader", "icon", "svgIcon", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "adaptiveTitle", "adaptiveSubtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "leftRightArrowsNavigation", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }, { kind: "directive", type: AriaLabelValueDirective, selector: "[kendoAriaLabelValue]", inputs: ["kendoAriaLabelValue"] }, { kind: "component", type: FilterExpressionOperatorsComponent, selector: "kendo-filter-expression-operators", inputs: ["currentItem", "editorType", "operators"], outputs: ["valueChange"] }, { kind: "component", type: FilterTextEditorComponent, selector: "kendo-filter-text-editor", inputs: ["currentItem", "isDisabled"], outputs: ["valueChange"] }, { kind: "component", type: FilterNumericEditorComponent, selector: "kendo-filter-numeric-editor", inputs: ["currentItem", "isDisabled", "format"], outputs: ["valueChange"] }, { kind: "component", type: FilterBooleanEditorComponent, selector: "kendo-filter-boolean-editor", inputs: ["currentItem"], outputs: ["valueChange"] }, { kind: "component", type: FilterDateEditorComponent, selector: "kendo-filter-date-editor", inputs: ["currentItem", "isDisabled", "format"], outputs: ["valueChange"] }, { kind: "directive", type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconPosition", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }] });
|
|
1231
1211
|
}
|
|
1232
1212
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FilterExpressionComponent, decorators: [{
|
|
1233
1213
|
type: Component,
|
|
@@ -1263,7 +1243,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
1263
1243
|
</kendo-filter-expression-operators>
|
|
1264
1244
|
</div>
|
|
1265
1245
|
}
|
|
1266
|
-
|
|
1246
|
+
|
|
1267
1247
|
<div class="k-filter-value k-toolbar-item">
|
|
1268
1248
|
@if (!editorTemplate) {
|
|
1269
1249
|
@switch (getEditorType()) {
|
|
@@ -1287,7 +1267,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
1287
1267
|
</ng-template>
|
|
1288
1268
|
}
|
|
1289
1269
|
</div>
|
|
1290
|
-
|
|
1270
|
+
|
|
1291
1271
|
<button
|
|
1292
1272
|
kendoButton
|
|
1293
1273
|
class="k-toolbar-button"
|
|
@@ -1304,7 +1284,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
1304
1284
|
standalone: true,
|
|
1305
1285
|
imports: [DropDownListComponent, AriaLabelValueDirective, FilterExpressionOperatorsComponent, FilterTextEditorComponent, FilterNumericEditorComponent, FilterBooleanEditorComponent, FilterDateEditorComponent, TemplateContextDirective, ButtonComponent]
|
|
1306
1286
|
}]
|
|
1307
|
-
}], ctorParameters: () => [{ type: FilterService }, { type: i0.
|
|
1287
|
+
}], ctorParameters: () => [{ type: FilterService }, { type: i0.ElementRef }, { type: NavigationService }, { type: i1.LocalizationService }, { type: i0.Renderer2 }], propDecorators: { currentItem: [{
|
|
1308
1288
|
type: Input
|
|
1309
1289
|
}] } });
|
|
1310
1290
|
|
|
@@ -1354,28 +1334,15 @@ class FilterGroupComponent extends BaseFilterRowComponent {
|
|
|
1354
1334
|
trackByFunction = (index) => {
|
|
1355
1335
|
return index;
|
|
1356
1336
|
};
|
|
1357
|
-
operators = [
|
|
1358
|
-
|
|
1337
|
+
operators = [
|
|
1338
|
+
{ value: 'and' },
|
|
1339
|
+
{ value: 'or' }
|
|
1340
|
+
];
|
|
1359
1341
|
constructor(filterService, cdr, element, navigationService, localization, renderer) {
|
|
1360
1342
|
super(element, navigationService, localization, renderer);
|
|
1361
1343
|
this.filterService = filterService;
|
|
1362
1344
|
this.cdr = cdr;
|
|
1363
1345
|
}
|
|
1364
|
-
ngOnInit() {
|
|
1365
|
-
this.operators = this.getLogicOperators();
|
|
1366
|
-
this.localizationSubscription = this.localization.changes.subscribe(() => {
|
|
1367
|
-
this.operators = this.getLogicOperators();
|
|
1368
|
-
this.cdr.detectChanges();
|
|
1369
|
-
});
|
|
1370
|
-
}
|
|
1371
|
-
ngOnDestroy() {
|
|
1372
|
-
if (this.localizationSubscription) {
|
|
1373
|
-
this.localizationSubscription.unsubscribe();
|
|
1374
|
-
}
|
|
1375
|
-
}
|
|
1376
|
-
getLogicOperators() {
|
|
1377
|
-
return localizeOperators(logicOperators)(this.localization);
|
|
1378
|
-
}
|
|
1379
1346
|
getOperator(operatorValue) {
|
|
1380
1347
|
return this.messageFor(getKeyByValue(logicOperators, operatorValue));
|
|
1381
1348
|
}
|
|
@@ -1431,7 +1398,7 @@ class FilterGroupComponent extends BaseFilterRowComponent {
|
|
|
1431
1398
|
[ngClass]="{'k-group-start': operator.value === 'and', 'k-group-end': operator.value === 'or'}"
|
|
1432
1399
|
[selected]="currentItem.logic === operator.value"
|
|
1433
1400
|
[attr.aria-pressed]="currentItem.logic === operator.value"
|
|
1434
|
-
[title]="operator.
|
|
1401
|
+
[title]="getOperator(operator.value)"
|
|
1435
1402
|
(click)="selectedChange(operator.value)"
|
|
1436
1403
|
>
|
|
1437
1404
|
{{getOperator(operator.value)}}
|
|
@@ -1496,7 +1463,7 @@ class FilterGroupComponent extends BaseFilterRowComponent {
|
|
|
1496
1463
|
}
|
|
1497
1464
|
</ul>
|
|
1498
1465
|
}
|
|
1499
|
-
`, isInline: true, dependencies: [{ kind: "component", type: FilterGroupComponent, selector: "kendo-filter-group", inputs: ["currentItem"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: FilterExpressionComponent, selector: "kendo-filter-expression", inputs: ["currentItem"] }] });
|
|
1466
|
+
`, isInline: true, dependencies: [{ kind: "component", type: FilterGroupComponent, selector: "kendo-filter-group", inputs: ["currentItem"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconPosition", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: FilterExpressionComponent, selector: "kendo-filter-expression", inputs: ["currentItem"] }] });
|
|
1500
1467
|
}
|
|
1501
1468
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: FilterGroupComponent, decorators: [{
|
|
1502
1469
|
type: Component,
|
|
@@ -1518,7 +1485,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
|
|
|
1518
1485
|
[ngClass]="{'k-group-start': operator.value === 'and', 'k-group-end': operator.value === 'or'}"
|
|
1519
1486
|
[selected]="currentItem.logic === operator.value"
|
|
1520
1487
|
[attr.aria-pressed]="currentItem.logic === operator.value"
|
|
1521
|
-
[title]="operator.
|
|
1488
|
+
[title]="getOperator(operator.value)"
|
|
1522
1489
|
(click)="selectedChange(operator.value)"
|
|
1523
1490
|
>
|
|
1524
1491
|
{{getOperator(operator.value)}}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import {
|
|
5
|
+
import { ElementRef, OnInit, Renderer2, TemplateRef } from '@angular/core';
|
|
6
6
|
import { LocalizationService } from '@progress/kendo-angular-l10n';
|
|
7
7
|
import { CompositeFilterDescriptor, FilterDescriptor } from '@progress/kendo-data-query';
|
|
8
8
|
import { SVGIcon } from '@progress/kendo-svg-icons';
|
|
@@ -14,9 +14,8 @@ import * as i0 from "@angular/core";
|
|
|
14
14
|
/**
|
|
15
15
|
* @hidden
|
|
16
16
|
*/
|
|
17
|
-
export declare class FilterExpressionComponent extends BaseFilterRowComponent implements OnInit
|
|
17
|
+
export declare class FilterExpressionComponent extends BaseFilterRowComponent implements OnInit {
|
|
18
18
|
private filterService;
|
|
19
|
-
private cdr;
|
|
20
19
|
/**
|
|
21
20
|
* @hidden
|
|
22
21
|
*/
|
|
@@ -34,10 +33,8 @@ export declare class FilterExpressionComponent extends BaseFilterRowComponent im
|
|
|
34
33
|
get dateEditorFormat(): string | DateFormat;
|
|
35
34
|
private isNumberFormat;
|
|
36
35
|
private isDateFormat;
|
|
37
|
-
|
|
38
|
-
constructor(filterService: FilterService, cdr: ChangeDetectorRef, element: ElementRef, navigationService: NavigationService, localization: LocalizationService, renderer: Renderer2);
|
|
36
|
+
constructor(filterService: FilterService, element: ElementRef, navigationService: NavigationService, localization: LocalizationService, renderer: Renderer2);
|
|
39
37
|
ngOnInit(): void;
|
|
40
|
-
ngOnDestroy(): void;
|
|
41
38
|
normalizeOperators(filterEditor: FilterEditor, operators: FilterOperator[]): {
|
|
42
39
|
text: string;
|
|
43
40
|
value: string;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { ChangeDetectorRef, ElementRef,
|
|
5
|
+
import { ChangeDetectorRef, ElementRef, Renderer2 } from '@angular/core';
|
|
6
6
|
import { LocalizationService } from '@progress/kendo-angular-l10n';
|
|
7
7
|
import { CompositeFilterDescriptor, FilterDescriptor } from '@progress/kendo-data-query';
|
|
8
8
|
import { SVGIcon } from '@progress/kendo-svg-icons';
|
|
@@ -14,7 +14,7 @@ import * as i0 from "@angular/core";
|
|
|
14
14
|
/**
|
|
15
15
|
* @hidden
|
|
16
16
|
*/
|
|
17
|
-
export declare class FilterGroupComponent extends BaseFilterRowComponent
|
|
17
|
+
export declare class FilterGroupComponent extends BaseFilterRowComponent {
|
|
18
18
|
private filterService;
|
|
19
19
|
private cdr;
|
|
20
20
|
static ngAcceptInputType_currentItem: FilterDescriptor | CompositeFilterDescriptor;
|
|
@@ -42,17 +42,9 @@ export declare class FilterGroupComponent extends BaseFilterRowComponent impleme
|
|
|
42
42
|
*/
|
|
43
43
|
trackByFunction: (index: any) => any;
|
|
44
44
|
operators: {
|
|
45
|
-
text: string;
|
|
46
45
|
value: 'and' | 'or';
|
|
47
46
|
}[];
|
|
48
|
-
private localizationSubscription;
|
|
49
47
|
constructor(filterService: FilterService, cdr: ChangeDetectorRef, element: ElementRef, navigationService: NavigationService, localization: LocalizationService, renderer: Renderer2);
|
|
50
|
-
ngOnInit(): void;
|
|
51
|
-
ngOnDestroy(): void;
|
|
52
|
-
getLogicOperators(): {
|
|
53
|
-
text: string;
|
|
54
|
-
value: 'and' | 'or';
|
|
55
|
-
}[];
|
|
56
48
|
getOperator(operatorValue: 'and' | 'or'): string;
|
|
57
49
|
selectedChange(logicOperator: 'or' | 'and'): void;
|
|
58
50
|
addFilterExpression(): void;
|
package/package-metadata.mjs
CHANGED
|
@@ -7,7 +7,7 @@ export const packageMetadata = {
|
|
|
7
7
|
"productCodes": [
|
|
8
8
|
"KENDOUIANGULAR"
|
|
9
9
|
],
|
|
10
|
-
"publishDate":
|
|
11
|
-
"version": "23.3.0-develop.
|
|
10
|
+
"publishDate": 1774881286,
|
|
11
|
+
"version": "23.3.0-develop.21",
|
|
12
12
|
"licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
|
|
13
13
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-angular-filter",
|
|
3
|
-
"version": "23.3.0-develop.
|
|
3
|
+
"version": "23.3.0-develop.21",
|
|
4
4
|
"description": "Kendo UI Angular Filter",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"author": "Progress",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"package": {
|
|
18
18
|
"productName": "Kendo UI for Angular",
|
|
19
19
|
"productCode": "KENDOUIANGULAR",
|
|
20
|
-
"publishDate":
|
|
20
|
+
"publishDate": 1774881286,
|
|
21
21
|
"licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
|
|
22
22
|
}
|
|
23
23
|
},
|
|
@@ -28,20 +28,20 @@
|
|
|
28
28
|
"@angular/platform-browser": "19 - 21",
|
|
29
29
|
"@progress/kendo-data-query": "^1.7.3",
|
|
30
30
|
"@progress/kendo-licensing": "^1.10.0",
|
|
31
|
-
"@progress/kendo-angular-buttons": "23.3.0-develop.
|
|
32
|
-
"@progress/kendo-angular-common": "23.3.0-develop.
|
|
33
|
-
"@progress/kendo-angular-dateinputs": "23.3.0-develop.
|
|
34
|
-
"@progress/kendo-angular-dropdowns": "23.3.0-develop.
|
|
35
|
-
"@progress/kendo-angular-inputs": "23.3.0-develop.
|
|
36
|
-
"@progress/kendo-angular-intl": "23.3.0-develop.
|
|
37
|
-
"@progress/kendo-angular-l10n": "23.3.0-develop.
|
|
38
|
-
"@progress/kendo-angular-icons": "23.3.0-develop.
|
|
39
|
-
"@progress/kendo-angular-label": "23.3.0-develop.
|
|
31
|
+
"@progress/kendo-angular-buttons": "23.3.0-develop.21",
|
|
32
|
+
"@progress/kendo-angular-common": "23.3.0-develop.21",
|
|
33
|
+
"@progress/kendo-angular-dateinputs": "23.3.0-develop.21",
|
|
34
|
+
"@progress/kendo-angular-dropdowns": "23.3.0-develop.21",
|
|
35
|
+
"@progress/kendo-angular-inputs": "23.3.0-develop.21",
|
|
36
|
+
"@progress/kendo-angular-intl": "23.3.0-develop.21",
|
|
37
|
+
"@progress/kendo-angular-l10n": "23.3.0-develop.21",
|
|
38
|
+
"@progress/kendo-angular-icons": "23.3.0-develop.21",
|
|
39
|
+
"@progress/kendo-angular-label": "23.3.0-develop.21",
|
|
40
40
|
"rxjs": "^6.5.3 || ^7.0.0"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
43
|
"tslib": "^2.3.1",
|
|
44
|
-
"@progress/kendo-angular-schematics": "23.3.0-develop.
|
|
44
|
+
"@progress/kendo-angular-schematics": "23.3.0-develop.21"
|
|
45
45
|
},
|
|
46
46
|
"schematics": "./schematics/collection.json",
|
|
47
47
|
"module": "fesm2022/progress-kendo-angular-filter.mjs",
|
|
@@ -9,12 +9,12 @@ const schematics_1 = require("@angular-devkit/schematics");
|
|
|
9
9
|
function default_1(options) {
|
|
10
10
|
const finalOptions = Object.assign(Object.assign({}, options), { mainNgModule: 'FilterModule', package: 'filter', peerDependencies: {
|
|
11
11
|
// peer deps of the dropdowns
|
|
12
|
-
'@progress/kendo-angular-treeview': '23.3.0-develop.
|
|
13
|
-
'@progress/kendo-angular-popup': '23.3.0-develop.
|
|
14
|
-
'@progress/kendo-angular-navigation': '23.3.0-develop.
|
|
12
|
+
'@progress/kendo-angular-treeview': '23.3.0-develop.21',
|
|
13
|
+
'@progress/kendo-angular-popup': '23.3.0-develop.21',
|
|
14
|
+
'@progress/kendo-angular-navigation': '23.3.0-develop.21',
|
|
15
15
|
// peer dependency of kendo-angular-inputs
|
|
16
16
|
'@progress/kendo-drawing': '^1.16.0',
|
|
17
|
-
'@progress/kendo-angular-dialog': '23.3.0-develop.
|
|
17
|
+
'@progress/kendo-angular-dialog': '23.3.0-develop.21',
|
|
18
18
|
// Peer dependency of icons
|
|
19
19
|
'@progress/kendo-svg-icons': '^4.0.0'
|
|
20
20
|
} });
|