@progress/kendo-angular-filter 13.4.0-develop.1 → 13.4.0-develop.10
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/base-filter-row.component.d.ts +0 -2
- package/esm2020/base-filter-row.component.mjs +1 -8
- package/esm2020/editors/boolean-editor.component.mjs +1 -1
- package/esm2020/filter-expression-operators.component.mjs +1 -1
- package/esm2020/filter-expression.component.mjs +29 -31
- package/esm2020/filter-group.component.mjs +34 -42
- package/esm2020/filter.component.mjs +7 -6
- package/esm2020/navigation.service.mjs +7 -21
- package/esm2020/package-metadata.mjs +2 -2
- package/esm2020/util.mjs +2 -1
- package/fesm2015/progress-kendo-angular-filter.mjs +84 -113
- package/fesm2020/progress-kendo-angular-filter.mjs +84 -113
- package/package.json +11 -11
- package/schematics/ngAdd/index.js +3 -3
|
@@ -224,7 +224,8 @@ const selectors = {
|
|
|
224
224
|
textAreaElement: `textarea`,
|
|
225
225
|
kendoToolbar: `.k-toolbar`,
|
|
226
226
|
kendoButton: `.k-button`,
|
|
227
|
-
kendoFilterToolbarItem: `.k-
|
|
227
|
+
kendoFilterToolbarItem: `.k-toolbar-item`,
|
|
228
|
+
kendoFilterToolbarButton: `.k-toolbar-button`
|
|
228
229
|
};
|
|
229
230
|
|
|
230
231
|
/**
|
|
@@ -234,8 +235,8 @@ const packageMetadata = {
|
|
|
234
235
|
name: '@progress/kendo-angular-filter',
|
|
235
236
|
productName: 'Kendo UI for Angular',
|
|
236
237
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
237
|
-
publishDate:
|
|
238
|
-
version: '13.4.0-develop.
|
|
238
|
+
publishDate: 1692971963,
|
|
239
|
+
version: '13.4.0-develop.10',
|
|
239
240
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
240
241
|
};
|
|
241
242
|
|
|
@@ -327,38 +328,32 @@ class NavigationService {
|
|
|
327
328
|
this.flattenFilterItems = [];
|
|
328
329
|
this.currentToolbarItemIndex = 0;
|
|
329
330
|
this.currentToolbarItemChildrenIndex = 0;
|
|
330
|
-
this.isInnerNavigationActivated =
|
|
331
|
+
this.isInnerNavigationActivated = true;
|
|
331
332
|
this.isFilterExpressionComponentFocused = false;
|
|
332
333
|
}
|
|
333
334
|
processKeyDown(key, event) {
|
|
334
335
|
switch (key) {
|
|
335
336
|
case Keys.ArrowUp: {
|
|
336
337
|
event.preventDefault();
|
|
337
|
-
if (!this.
|
|
338
|
+
if (!this.isFilterExpressionComponentFocused) {
|
|
339
|
+
this.currentToolbarItemChildrenIndex = 0;
|
|
338
340
|
this.currentToolbarItemIndex > 0 ? this.currentToolbarItemIndex-- : this.currentToolbarItemIndex;
|
|
339
|
-
const elementToFocus = this.flattenFilterItems[this.currentToolbarItemIndex].
|
|
341
|
+
const elementToFocus = this.flattenFilterItems[this.currentToolbarItemIndex].focusableChildren[0];
|
|
340
342
|
this.focusCurrentElement(elementToFocus);
|
|
341
343
|
}
|
|
342
344
|
break;
|
|
343
345
|
}
|
|
344
346
|
case Keys.ArrowDown: {
|
|
345
347
|
event.preventDefault();
|
|
346
|
-
if (!this.
|
|
348
|
+
if (!this.isFilterExpressionComponentFocused) {
|
|
349
|
+
this.currentToolbarItemChildrenIndex = 0;
|
|
347
350
|
this.currentToolbarItemIndex < this.flattenFilterItems.length - 1 ? this.currentToolbarItemIndex++ : this.currentToolbarItemIndex;
|
|
348
|
-
const elementToFocus = this.flattenFilterItems[this.currentToolbarItemIndex].
|
|
351
|
+
const elementToFocus = this.flattenFilterItems[this.currentToolbarItemIndex].focusableChildren[0];
|
|
349
352
|
this.focusCurrentElement(elementToFocus);
|
|
350
353
|
}
|
|
351
354
|
break;
|
|
352
355
|
}
|
|
353
356
|
case Keys.Enter: {
|
|
354
|
-
const isEventTargetFilterToolbar = event.target.closest(selectors.kendoToolbar);
|
|
355
|
-
if (!this.isInnerNavigationActivated && isEventTargetFilterToolbar) {
|
|
356
|
-
event.preventDefault();
|
|
357
|
-
this.isInnerNavigationActivated = true;
|
|
358
|
-
this.currentToolbarItemChildrenIndex = 0;
|
|
359
|
-
const elementToFocus = this.flattenFilterItems[this.currentToolbarItemIndex].focusableChildren[this.currentToolbarItemChildrenIndex];
|
|
360
|
-
this.focusCurrentElement(elementToFocus);
|
|
361
|
-
}
|
|
362
357
|
const isEventTargetKendoFilterToolbarItem = event.target.closest(selectors.kendoFilterToolbarItem);
|
|
363
358
|
const isEventTargetButton = event.target.closest(selectors.kendoButton);
|
|
364
359
|
if (this.isInnerNavigationActivated &&
|
|
@@ -377,17 +372,9 @@ class NavigationService {
|
|
|
377
372
|
break;
|
|
378
373
|
}
|
|
379
374
|
case Keys.Escape: {
|
|
380
|
-
if (this.isInnerNavigationActivated && !this.isFilterExpressionComponentFocused) {
|
|
381
|
-
event.preventDefault();
|
|
382
|
-
this.isInnerNavigationActivated = false;
|
|
383
|
-
this.currentToolbarItemChildrenIndex = 0;
|
|
384
|
-
const elementToFocus = this.flattenFilterItems[this.currentToolbarItemIndex].toolbarElement;
|
|
385
|
-
this.focusCurrentElement(elementToFocus);
|
|
386
|
-
}
|
|
387
375
|
if (this.isFilterExpressionComponentFocused) {
|
|
388
376
|
event.preventDefault();
|
|
389
377
|
this.isFilterExpressionComponentFocused = false;
|
|
390
|
-
this.isInnerNavigationActivated = true;
|
|
391
378
|
const elementToFocus = this.flattenFilterItems[this.currentToolbarItemIndex].focusableChildren[this.currentToolbarItemChildrenIndex];
|
|
392
379
|
this.focusCurrentElement(elementToFocus);
|
|
393
380
|
}
|
|
@@ -500,13 +487,6 @@ class BaseFilterRowComponent {
|
|
|
500
487
|
get toolbarElement() {
|
|
501
488
|
return this.element.nativeElement.querySelector('.k-toolbar');
|
|
502
489
|
}
|
|
503
|
-
onFocus() {
|
|
504
|
-
this.renderer.addClass(this.navigationService.flattenFilterItems[this.itemNumber].toolbarElement, 'k-focus');
|
|
505
|
-
this.navigationService.isInnerNavigationActivated = false;
|
|
506
|
-
}
|
|
507
|
-
onBlur() {
|
|
508
|
-
this.renderer.removeClass(this.navigationService.flattenFilterItems[this.itemNumber].toolbarElement, 'k-focus');
|
|
509
|
-
}
|
|
510
490
|
messageFor(key) {
|
|
511
491
|
return this.localization.get(key);
|
|
512
492
|
}
|
|
@@ -530,7 +510,7 @@ class BaseFilterRowComponent {
|
|
|
530
510
|
this.navigationService.currentToolbarItemChildrenIndex = 0;
|
|
531
511
|
this.navigationService.isInnerNavigationActivated = false;
|
|
532
512
|
this.navigationService.isFilterExpressionComponentFocused = false;
|
|
533
|
-
elementToFocus = this.navigationService.flattenFilterItems[this.itemNumber].
|
|
513
|
+
elementToFocus = this.navigationService.flattenFilterItems[this.itemNumber].focusableChildren[0];
|
|
534
514
|
}
|
|
535
515
|
this.navigationService.currentToolbarItemIndex = this.itemNumber;
|
|
536
516
|
this.navigationService.focusCurrentElement(elementToFocus, true);
|
|
@@ -609,7 +589,7 @@ FilterExpressionOperatorsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersio
|
|
|
609
589
|
<span>{{ getOperator(dataItem.value) }}</span>
|
|
610
590
|
</ng-template>
|
|
611
591
|
</kendo-dropdownlist>
|
|
612
|
-
`, isInline: true, components: [{ type: i2.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["iconClass", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }], directives: [{ type: AriaLabelValueDirective, selector: "[kendoAriaLabelValue]", inputs: ["kendoAriaLabelValue"] }, { type: i2.ValueTemplateDirective, selector: "[kendoDropDownListValueTemplate],[kendoDropDownTreeValueTemplate]" }, { type: i2.ItemTemplateDirective, selector: "[kendoDropDownListItemTemplate],[kendoComboBoxItemTemplate],[kendoAutoCompleteItemTemplate],[kendoMultiSelectItemTemplate]" }] });
|
|
592
|
+
`, isInline: true, components: [{ type: i2.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["showStickyHeader", "iconClass", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }], directives: [{ type: AriaLabelValueDirective, selector: "[kendoAriaLabelValue]", inputs: ["kendoAriaLabelValue"] }, { type: i2.ValueTemplateDirective, selector: "[kendoDropDownListValueTemplate],[kendoDropDownTreeValueTemplate]" }, { type: i2.ItemTemplateDirective, selector: "[kendoDropDownListItemTemplate],[kendoComboBoxItemTemplate],[kendoAutoCompleteItemTemplate],[kendoMultiSelectItemTemplate]" }] });
|
|
613
593
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterExpressionOperatorsComponent, decorators: [{
|
|
614
594
|
type: Component,
|
|
615
595
|
args: [{
|
|
@@ -807,7 +787,7 @@ FilterBooleanEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
|
|
|
807
787
|
valueField="value"
|
|
808
788
|
>
|
|
809
789
|
</kendo-dropdownlist>
|
|
810
|
-
`, isInline: true, components: [{ type: i2.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["iconClass", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }], directives: [{ type: AriaLabelValueDirective, selector: "[kendoAriaLabelValue]", inputs: ["kendoAriaLabelValue"] }] });
|
|
790
|
+
`, isInline: true, components: [{ type: i2.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["showStickyHeader", "iconClass", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }], directives: [{ type: AriaLabelValueDirective, selector: "[kendoAriaLabelValue]", inputs: ["kendoAriaLabelValue"] }] });
|
|
811
791
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterBooleanEditorComponent, decorators: [{
|
|
812
792
|
type: Component,
|
|
813
793
|
args: [{
|
|
@@ -1071,8 +1051,8 @@ FilterExpressionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.
|
|
|
1071
1051
|
useExisting: forwardRef(() => FilterExpressionComponent)
|
|
1072
1052
|
}], usesInheritance: true, ngImport: i0, template: `
|
|
1073
1053
|
<div class="k-filter-toolbar">
|
|
1074
|
-
<div class="k-toolbar k-toolbar-md" role="toolbar" [attr.aria-label]="messageFor('filterToolbarAriaLabel')" (
|
|
1075
|
-
<div class="k-filter-
|
|
1054
|
+
<div class="k-toolbar k-toolbar-md" role="toolbar" [attr.aria-label]="messageFor('filterToolbarAriaLabel')" (mousedown)="onMouseDown($event)">
|
|
1055
|
+
<div class="k-filter-field k-toolbar-item" >
|
|
1076
1056
|
<kendo-dropdownlist
|
|
1077
1057
|
[tabindex]="-1"
|
|
1078
1058
|
[kendoAriaLabelValue]="messageFor('filterFieldAriaLabel')"
|
|
@@ -1085,7 +1065,7 @@ FilterExpressionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.
|
|
|
1085
1065
|
(valueChange)="filterValueChange($event)">
|
|
1086
1066
|
</kendo-dropdownlist>
|
|
1087
1067
|
</div>
|
|
1088
|
-
<div *ngIf="!isBoolean" class="k-filter-
|
|
1068
|
+
<div *ngIf="!isBoolean" class="k-filter-operator k-toolbar-item" >
|
|
1089
1069
|
<kendo-filter-expression-operators
|
|
1090
1070
|
[currentItem]="currentItem"
|
|
1091
1071
|
[operators]="operators"
|
|
@@ -1094,7 +1074,7 @@ FilterExpressionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.
|
|
|
1094
1074
|
</kendo-filter-expression-operators>
|
|
1095
1075
|
</div>
|
|
1096
1076
|
|
|
1097
|
-
<div class="k-filter-
|
|
1077
|
+
<div class="k-filter-value k-toolbar-item">
|
|
1098
1078
|
<ng-container *ngIf="!editorTemplate" [ngSwitch]="getEditorType()">
|
|
1099
1079
|
<kendo-filter-text-editor *ngSwitchCase="'string'" [currentItem]="currentItem" [isDisabled]="isEditorDisabled" (valueChange)="valueChange.emit()"></kendo-filter-text-editor>
|
|
1100
1080
|
<kendo-filter-numeric-editor *ngSwitchCase="'number'" [currentItem]="currentItem" [isDisabled]="isEditorDisabled" [format]="numericEditorFormat" (valueChange)="valueChange.emit()"></kendo-filter-numeric-editor>
|
|
@@ -1108,20 +1088,19 @@ FilterExpressionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.
|
|
|
1108
1088
|
</ng-container>
|
|
1109
1089
|
</div>
|
|
1110
1090
|
|
|
1111
|
-
<
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
</div>
|
|
1091
|
+
<button
|
|
1092
|
+
kendoButton
|
|
1093
|
+
class="k-toolbar-button"
|
|
1094
|
+
tabindex="-1"
|
|
1095
|
+
icon="x"
|
|
1096
|
+
[svgIcon]="xIcon"
|
|
1097
|
+
fillMode="flat"
|
|
1098
|
+
[title]="messageFor('remove')"
|
|
1099
|
+
(click)="removeFilterExpression()">
|
|
1100
|
+
</button>
|
|
1122
1101
|
</div>
|
|
1123
1102
|
</div>
|
|
1124
|
-
`, isInline: true, components: [{ type: i2.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["iconClass", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }, { type: FilterExpressionOperatorsComponent, selector: "kendo-filter-expression-operators", inputs: ["currentItem", "editorType", "operators"], outputs: ["valueChange"] }, { type: FilterTextEditorComponent, selector: "kendo-filter-text-editor", inputs: ["currentItem", "isDisabled"], outputs: ["valueChange"] }, { type: FilterNumericEditorComponent, selector: "kendo-filter-numeric-editor", inputs: ["currentItem", "isDisabled", "format"], outputs: ["valueChange"] }, { type: FilterBooleanEditorComponent, selector: "kendo-filter-boolean-editor", inputs: ["currentItem"], outputs: ["valueChange"] }, { type: FilterDateEditorComponent, selector: "kendo-filter-date-editor", inputs: ["currentItem", "isDisabled", "format"], outputs: ["valueChange"] }, { type: i10.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }], directives: [{ type: AriaLabelValueDirective, selector: "[kendoAriaLabelValue]", inputs: ["kendoAriaLabelValue"] }, { type: i12.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i12.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i12.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i10.TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }] });
|
|
1103
|
+
`, isInline: true, components: [{ type: i2.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["showStickyHeader", "iconClass", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }, { type: FilterExpressionOperatorsComponent, selector: "kendo-filter-expression-operators", inputs: ["currentItem", "editorType", "operators"], outputs: ["valueChange"] }, { type: FilterTextEditorComponent, selector: "kendo-filter-text-editor", inputs: ["currentItem", "isDisabled"], outputs: ["valueChange"] }, { type: FilterNumericEditorComponent, selector: "kendo-filter-numeric-editor", inputs: ["currentItem", "isDisabled", "format"], outputs: ["valueChange"] }, { type: FilterBooleanEditorComponent, selector: "kendo-filter-boolean-editor", inputs: ["currentItem"], outputs: ["valueChange"] }, { type: FilterDateEditorComponent, selector: "kendo-filter-date-editor", inputs: ["currentItem", "isDisabled", "format"], outputs: ["valueChange"] }, { type: i10.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }], directives: [{ type: AriaLabelValueDirective, selector: "[kendoAriaLabelValue]", inputs: ["kendoAriaLabelValue"] }, { type: i12.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i12.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i12.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i10.TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }] });
|
|
1125
1104
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterExpressionComponent, decorators: [{
|
|
1126
1105
|
type: Component,
|
|
1127
1106
|
args: [{
|
|
@@ -1132,8 +1111,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
1132
1111
|
selector: 'kendo-filter-expression',
|
|
1133
1112
|
template: `
|
|
1134
1113
|
<div class="k-filter-toolbar">
|
|
1135
|
-
<div class="k-toolbar k-toolbar-md" role="toolbar" [attr.aria-label]="messageFor('filterToolbarAriaLabel')" (
|
|
1136
|
-
<div class="k-filter-
|
|
1114
|
+
<div class="k-toolbar k-toolbar-md" role="toolbar" [attr.aria-label]="messageFor('filterToolbarAriaLabel')" (mousedown)="onMouseDown($event)">
|
|
1115
|
+
<div class="k-filter-field k-toolbar-item" >
|
|
1137
1116
|
<kendo-dropdownlist
|
|
1138
1117
|
[tabindex]="-1"
|
|
1139
1118
|
[kendoAriaLabelValue]="messageFor('filterFieldAriaLabel')"
|
|
@@ -1146,7 +1125,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
1146
1125
|
(valueChange)="filterValueChange($event)">
|
|
1147
1126
|
</kendo-dropdownlist>
|
|
1148
1127
|
</div>
|
|
1149
|
-
<div *ngIf="!isBoolean" class="k-filter-
|
|
1128
|
+
<div *ngIf="!isBoolean" class="k-filter-operator k-toolbar-item" >
|
|
1150
1129
|
<kendo-filter-expression-operators
|
|
1151
1130
|
[currentItem]="currentItem"
|
|
1152
1131
|
[operators]="operators"
|
|
@@ -1155,7 +1134,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
1155
1134
|
</kendo-filter-expression-operators>
|
|
1156
1135
|
</div>
|
|
1157
1136
|
|
|
1158
|
-
<div class="k-filter-
|
|
1137
|
+
<div class="k-filter-value k-toolbar-item">
|
|
1159
1138
|
<ng-container *ngIf="!editorTemplate" [ngSwitch]="getEditorType()">
|
|
1160
1139
|
<kendo-filter-text-editor *ngSwitchCase="'string'" [currentItem]="currentItem" [isDisabled]="isEditorDisabled" (valueChange)="valueChange.emit()"></kendo-filter-text-editor>
|
|
1161
1140
|
<kendo-filter-numeric-editor *ngSwitchCase="'number'" [currentItem]="currentItem" [isDisabled]="isEditorDisabled" [format]="numericEditorFormat" (valueChange)="valueChange.emit()"></kendo-filter-numeric-editor>
|
|
@@ -1169,17 +1148,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
1169
1148
|
</ng-container>
|
|
1170
1149
|
</div>
|
|
1171
1150
|
|
|
1172
|
-
<
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
</div>
|
|
1151
|
+
<button
|
|
1152
|
+
kendoButton
|
|
1153
|
+
class="k-toolbar-button"
|
|
1154
|
+
tabindex="-1"
|
|
1155
|
+
icon="x"
|
|
1156
|
+
[svgIcon]="xIcon"
|
|
1157
|
+
fillMode="flat"
|
|
1158
|
+
[title]="messageFor('remove')"
|
|
1159
|
+
(click)="removeFilterExpression()">
|
|
1160
|
+
</button>
|
|
1183
1161
|
</div>
|
|
1184
1162
|
</div>
|
|
1185
1163
|
`
|
|
@@ -1255,24 +1233,18 @@ class FilterGroupComponent extends BaseFilterRowComponent {
|
|
|
1255
1233
|
this.valueChange.emit(true);
|
|
1256
1234
|
}
|
|
1257
1235
|
onMouseDown(event) {
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
}
|
|
1264
|
-
if (event.target.closest(selectors.orButton)) {
|
|
1265
|
-
index = 1;
|
|
1266
|
-
}
|
|
1267
|
-
this.navigationService.currentToolbarItemChildrenIndex = index;
|
|
1268
|
-
this.navigationService.isInnerNavigationActivated = true;
|
|
1269
|
-
elementToFocus = this.navigationService.flattenFilterItems[this.itemNumber].focusableChildren[index];
|
|
1236
|
+
const toolbarItemElement = Array.from(event.target.closest(selectors.kendoToolbar).children).indexOf(event.target.closest(selectors.kendoFilterToolbarItem));
|
|
1237
|
+
const buttonElement = Array.from(event.target.closest(selectors.kendoToolbar).children).indexOf(event.target.closest(selectors.kendoFilterToolbarButton));
|
|
1238
|
+
let index = (toolbarItemElement > -1 ? toolbarItemElement : buttonElement) + 1;
|
|
1239
|
+
if (event.target.closest(selectors.andButton)) {
|
|
1240
|
+
index = 0;
|
|
1270
1241
|
}
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
this.navigationService.isInnerNavigationActivated = false;
|
|
1274
|
-
elementToFocus = this.navigationService.flattenFilterItems[this.itemNumber].toolbarElement;
|
|
1242
|
+
if (event.target.closest(selectors.orButton)) {
|
|
1243
|
+
index = 1;
|
|
1275
1244
|
}
|
|
1245
|
+
this.navigationService.currentToolbarItemChildrenIndex = index;
|
|
1246
|
+
this.navigationService.isInnerNavigationActivated = true;
|
|
1247
|
+
const elementToFocus = this.navigationService.flattenFilterItems[this.itemNumber].focusableChildren[index];
|
|
1276
1248
|
this.navigationService.isFilterExpressionComponentFocused = false;
|
|
1277
1249
|
this.navigationService.currentToolbarItemIndex = this.itemNumber;
|
|
1278
1250
|
this.navigationService.focusCurrentElement(elementToFocus, true);
|
|
@@ -1284,26 +1256,26 @@ FilterGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
|
|
|
1284
1256
|
useExisting: forwardRef(() => FilterGroupComponent)
|
|
1285
1257
|
}], viewQueries: [{ propertyName: "_filterItems", predicate: FilterItem, descendants: true }], usesInheritance: true, ngImport: i0, template: `
|
|
1286
1258
|
<div class="k-filter-toolbar">
|
|
1287
|
-
<div class="k-toolbar k-toolbar-md" role="toolbar" [attr.aria-label]="messageFor('filterToolbarAriaLabel')" (
|
|
1288
|
-
<div class="k-
|
|
1289
|
-
|
|
1290
|
-
<button
|
|
1259
|
+
<div class="k-toolbar k-toolbar-md" role="toolbar" [attr.aria-label]="messageFor('filterToolbarAriaLabel')" (mousedown)="onMouseDown($event)">
|
|
1260
|
+
<div class="k-toolbar-button-group k-button-group k-button-group-solid" role="group">
|
|
1261
|
+
<button
|
|
1291
1262
|
tabindex="-1"
|
|
1292
1263
|
*ngFor="let operator of operators"
|
|
1293
1264
|
kendoButton
|
|
1265
|
+
class="k-toolbar-button"
|
|
1294
1266
|
[ngClass]="{'k-group-start': operator.value === 'and', 'k-group-end': operator.value === 'or'}"
|
|
1295
1267
|
[selected]="currentItem.logic === operator.value"
|
|
1296
1268
|
[attr.aria-pressed]="currentItem.logic === operator.value"
|
|
1297
1269
|
[title]="operator.text"
|
|
1298
1270
|
(click)="selectedChange(operator.value)"
|
|
1299
|
-
|
|
1271
|
+
>
|
|
1300
1272
|
{{getOperator(operator.value)}}
|
|
1301
|
-
|
|
1302
|
-
</div>
|
|
1273
|
+
</button>
|
|
1303
1274
|
</div>
|
|
1304
|
-
|
|
1275
|
+
|
|
1305
1276
|
<button
|
|
1306
1277
|
kendoButton
|
|
1278
|
+
class="k-toolbar-button"
|
|
1307
1279
|
tabindex="-1"
|
|
1308
1280
|
[title]="messageFor('addFilter')"
|
|
1309
1281
|
icon="filter-add-expression"
|
|
@@ -1311,10 +1283,10 @@ FilterGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
|
|
|
1311
1283
|
(click)="addFilterExpression()">
|
|
1312
1284
|
{{messageFor('addFilter')}}
|
|
1313
1285
|
</button>
|
|
1314
|
-
|
|
1315
|
-
<div class="k-filter-toolbar-item">
|
|
1286
|
+
|
|
1316
1287
|
<button
|
|
1317
1288
|
kendoButton
|
|
1289
|
+
class="k-toolbar-button"
|
|
1318
1290
|
tabindex="-1"
|
|
1319
1291
|
[title]="messageFor('addGroup')"
|
|
1320
1292
|
icon="filter-add-group"
|
|
@@ -1322,10 +1294,10 @@ FilterGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
|
|
|
1322
1294
|
(click)="addFilterGroup()">
|
|
1323
1295
|
{{messageFor('addGroup')}}
|
|
1324
1296
|
</button>
|
|
1325
|
-
|
|
1326
|
-
<div class="k-filter-toolbar-item">
|
|
1297
|
+
|
|
1327
1298
|
<button
|
|
1328
1299
|
kendoButton
|
|
1300
|
+
class="k-toolbar-button"
|
|
1329
1301
|
tabindex="-1"
|
|
1330
1302
|
icon="x"
|
|
1331
1303
|
[svgIcon]="xIcon"
|
|
@@ -1333,7 +1305,6 @@ FilterGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
|
|
|
1333
1305
|
[title]="messageFor('remove')"
|
|
1334
1306
|
(click)="removeFilterGroup()">
|
|
1335
1307
|
</button>
|
|
1336
|
-
</div>
|
|
1337
1308
|
</div>
|
|
1338
1309
|
</div>
|
|
1339
1310
|
|
|
@@ -1364,26 +1335,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
1364
1335
|
selector: 'kendo-filter-group',
|
|
1365
1336
|
template: `
|
|
1366
1337
|
<div class="k-filter-toolbar">
|
|
1367
|
-
<div class="k-toolbar k-toolbar-md" role="toolbar" [attr.aria-label]="messageFor('filterToolbarAriaLabel')" (
|
|
1368
|
-
<div class="k-
|
|
1369
|
-
|
|
1370
|
-
<button
|
|
1338
|
+
<div class="k-toolbar k-toolbar-md" role="toolbar" [attr.aria-label]="messageFor('filterToolbarAriaLabel')" (mousedown)="onMouseDown($event)">
|
|
1339
|
+
<div class="k-toolbar-button-group k-button-group k-button-group-solid" role="group">
|
|
1340
|
+
<button
|
|
1371
1341
|
tabindex="-1"
|
|
1372
1342
|
*ngFor="let operator of operators"
|
|
1373
1343
|
kendoButton
|
|
1344
|
+
class="k-toolbar-button"
|
|
1374
1345
|
[ngClass]="{'k-group-start': operator.value === 'and', 'k-group-end': operator.value === 'or'}"
|
|
1375
1346
|
[selected]="currentItem.logic === operator.value"
|
|
1376
1347
|
[attr.aria-pressed]="currentItem.logic === operator.value"
|
|
1377
1348
|
[title]="operator.text"
|
|
1378
1349
|
(click)="selectedChange(operator.value)"
|
|
1379
|
-
|
|
1350
|
+
>
|
|
1380
1351
|
{{getOperator(operator.value)}}
|
|
1381
|
-
|
|
1382
|
-
</div>
|
|
1352
|
+
</button>
|
|
1383
1353
|
</div>
|
|
1384
|
-
|
|
1354
|
+
|
|
1385
1355
|
<button
|
|
1386
1356
|
kendoButton
|
|
1357
|
+
class="k-toolbar-button"
|
|
1387
1358
|
tabindex="-1"
|
|
1388
1359
|
[title]="messageFor('addFilter')"
|
|
1389
1360
|
icon="filter-add-expression"
|
|
@@ -1391,10 +1362,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
1391
1362
|
(click)="addFilterExpression()">
|
|
1392
1363
|
{{messageFor('addFilter')}}
|
|
1393
1364
|
</button>
|
|
1394
|
-
|
|
1395
|
-
<div class="k-filter-toolbar-item">
|
|
1365
|
+
|
|
1396
1366
|
<button
|
|
1397
1367
|
kendoButton
|
|
1368
|
+
class="k-toolbar-button"
|
|
1398
1369
|
tabindex="-1"
|
|
1399
1370
|
[title]="messageFor('addGroup')"
|
|
1400
1371
|
icon="filter-add-group"
|
|
@@ -1402,10 +1373,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
1402
1373
|
(click)="addFilterGroup()">
|
|
1403
1374
|
{{messageFor('addGroup')}}
|
|
1404
1375
|
</button>
|
|
1405
|
-
|
|
1406
|
-
<div class="k-filter-toolbar-item">
|
|
1376
|
+
|
|
1407
1377
|
<button
|
|
1408
1378
|
kendoButton
|
|
1379
|
+
class="k-toolbar-button"
|
|
1409
1380
|
tabindex="-1"
|
|
1410
1381
|
icon="x"
|
|
1411
1382
|
[svgIcon]="xIcon"
|
|
@@ -1413,7 +1384,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
1413
1384
|
[title]="messageFor('remove')"
|
|
1414
1385
|
(click)="removeFilterGroup()">
|
|
1415
1386
|
</button>
|
|
1416
|
-
</div>
|
|
1417
1387
|
</div>
|
|
1418
1388
|
</div>
|
|
1419
1389
|
|
|
@@ -1615,7 +1585,7 @@ class FilterComponent {
|
|
|
1615
1585
|
setTimeout(() => {
|
|
1616
1586
|
if (!(document.activeElement.closest('.k-filter'))) {
|
|
1617
1587
|
this.renderer.setAttribute(this.navigationService.currentlyFocusedElement, 'tabindex', '-1');
|
|
1618
|
-
this.navigationService.currentlyFocusedElement = this.navigationService.flattenFilterItems[this.navigationService.currentToolbarItemIndex].
|
|
1588
|
+
this.navigationService.currentlyFocusedElement = this.navigationService.flattenFilterItems[this.navigationService.currentToolbarItemIndex].focusableChildren[0];
|
|
1619
1589
|
this.renderer.setAttribute(this.navigationService.currentlyFocusedElement, 'tabindex', '0');
|
|
1620
1590
|
this.navigationService.isInnerNavigationActivated = false;
|
|
1621
1591
|
this.navigationService.isFilterExpressionComponentFocused = false;
|
|
@@ -1689,7 +1659,7 @@ class FilterComponent {
|
|
|
1689
1659
|
}
|
|
1690
1660
|
this.navigationService.reset(this.filterItems);
|
|
1691
1661
|
if (!this.navigationService.currentlyFocusedElement) {
|
|
1692
|
-
const firstElement = this.navigationService.flattenFilterItems[0].
|
|
1662
|
+
const firstElement = this.navigationService.flattenFilterItems[0].focusableChildren[0];
|
|
1693
1663
|
this.navigationService.currentlyFocusedElement = firstElement;
|
|
1694
1664
|
this.renderer.setAttribute(firstElement, 'tabindex', '0');
|
|
1695
1665
|
}
|
|
@@ -1716,9 +1686,10 @@ class FilterComponent {
|
|
|
1716
1686
|
if (this.navigationService.currentToolbarItemIndex === this.navigationService.flattenFilterItems.length) {
|
|
1717
1687
|
this.navigationService.currentToolbarItemIndex -= 1;
|
|
1718
1688
|
}
|
|
1719
|
-
this.navigationService.isInnerNavigationActivated = false;
|
|
1720
1689
|
this.navigationService.isFilterExpressionComponentFocused = false;
|
|
1721
|
-
|
|
1690
|
+
const itemIndex = this.navigationService.currentToolbarItemIndex;
|
|
1691
|
+
const activeChildIndex = this.navigationService.currentToolbarItemChildrenIndex;
|
|
1692
|
+
this.navigationService.currentlyFocusedElement = this.navigationService.flattenFilterItems[itemIndex].focusableChildren[activeChildIndex];
|
|
1722
1693
|
this.renderer.setAttribute(this.navigationService.currentlyFocusedElement, 'tabindex', '0');
|
|
1723
1694
|
this.renderer.addClass(this.navigationService.currentlyFocusedElement, 'k-focus');
|
|
1724
1695
|
this.navigationService.currentlyFocusedElement.focus();
|
|
@@ -1900,7 +1871,7 @@ FilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versio
|
|
|
1900
1871
|
filterComponentAriaLabel="filter component"
|
|
1901
1872
|
>
|
|
1902
1873
|
</ng-container>
|
|
1903
|
-
<div class="k-
|
|
1874
|
+
<div class="k-filter" [attr.dir]="direction">
|
|
1904
1875
|
<ul class='k-filter-container' role="tree" [attr.aria-label]="messageFor('filterComponentAriaLabel')">
|
|
1905
1876
|
<li class='k-filter-group-main' role="treeitem">
|
|
1906
1877
|
<kendo-filter-group
|
|
@@ -2039,7 +2010,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
2039
2010
|
filterComponentAriaLabel="filter component"
|
|
2040
2011
|
>
|
|
2041
2012
|
</ng-container>
|
|
2042
|
-
<div class="k-
|
|
2013
|
+
<div class="k-filter" [attr.dir]="direction">
|
|
2043
2014
|
<ul class='k-filter-container' role="tree" [attr.aria-label]="messageFor('filterComponentAriaLabel')">
|
|
2044
2015
|
<li class='k-filter-group-main' role="treeitem">
|
|
2045
2016
|
<kendo-filter-group
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-angular-filter",
|
|
3
|
-
"version": "13.4.0-develop.
|
|
3
|
+
"version": "13.4.0-develop.10",
|
|
4
4
|
"description": "Kendo UI Angular Filter",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"author": "Progress",
|
|
@@ -22,20 +22,20 @@
|
|
|
22
22
|
"@angular/platform-browser": "13 - 16",
|
|
23
23
|
"@progress/kendo-data-query": "^1.5.5",
|
|
24
24
|
"@progress/kendo-licensing": "^1.0.2",
|
|
25
|
-
"@progress/kendo-angular-buttons": "13.4.0-develop.
|
|
26
|
-
"@progress/kendo-angular-common": "13.4.0-develop.
|
|
27
|
-
"@progress/kendo-angular-dateinputs": "13.4.0-develop.
|
|
28
|
-
"@progress/kendo-angular-dropdowns": "13.4.0-develop.
|
|
29
|
-
"@progress/kendo-angular-inputs": "13.4.0-develop.
|
|
30
|
-
"@progress/kendo-angular-intl": "13.4.0-develop.
|
|
31
|
-
"@progress/kendo-angular-l10n": "13.4.0-develop.
|
|
32
|
-
"@progress/kendo-angular-icons": "13.4.0-develop.
|
|
33
|
-
"@progress/kendo-angular-label": "13.4.0-develop.
|
|
25
|
+
"@progress/kendo-angular-buttons": "13.4.0-develop.10",
|
|
26
|
+
"@progress/kendo-angular-common": "13.4.0-develop.10",
|
|
27
|
+
"@progress/kendo-angular-dateinputs": "13.4.0-develop.10",
|
|
28
|
+
"@progress/kendo-angular-dropdowns": "13.4.0-develop.10",
|
|
29
|
+
"@progress/kendo-angular-inputs": "13.4.0-develop.10",
|
|
30
|
+
"@progress/kendo-angular-intl": "13.4.0-develop.10",
|
|
31
|
+
"@progress/kendo-angular-l10n": "13.4.0-develop.10",
|
|
32
|
+
"@progress/kendo-angular-icons": "13.4.0-develop.10",
|
|
33
|
+
"@progress/kendo-angular-label": "13.4.0-develop.10",
|
|
34
34
|
"rxjs": "^6.5.3 || ^7.0.0"
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
37
|
"tslib": "^2.3.1",
|
|
38
|
-
"@progress/kendo-angular-schematics": "13.4.0-develop.
|
|
38
|
+
"@progress/kendo-angular-schematics": "13.4.0-develop.10"
|
|
39
39
|
},
|
|
40
40
|
"schematics": "./schematics/collection.json",
|
|
41
41
|
"module": "fesm2015/progress-kendo-angular-filter.mjs",
|
|
@@ -4,11 +4,11 @@ const schematics_1 = require("@angular-devkit/schematics");
|
|
|
4
4
|
function default_1(options) {
|
|
5
5
|
const finalOptions = Object.assign(Object.assign({}, options), { mainNgModule: 'FilterModule', package: 'filter', peerDependencies: {
|
|
6
6
|
// peer dep of the dropdowns
|
|
7
|
-
'@progress/kendo-angular-treeview': '13.4.0-develop.
|
|
8
|
-
'@progress/kendo-angular-popup': '13.4.0-develop.
|
|
7
|
+
'@progress/kendo-angular-treeview': '13.4.0-develop.10',
|
|
8
|
+
'@progress/kendo-angular-popup': '13.4.0-develop.10',
|
|
9
9
|
// peer dependency of kendo-angular-inputs
|
|
10
10
|
'@progress/kendo-drawing': '^1.16.0',
|
|
11
|
-
'@progress/kendo-angular-dialog': '13.4.0-develop.
|
|
11
|
+
'@progress/kendo-angular-dialog': '13.4.0-develop.10',
|
|
12
12
|
// Peer dependency of icons
|
|
13
13
|
'@progress/kendo-svg-icons': '^1.0.0'
|
|
14
14
|
} });
|