@progress/kendo-angular-dropdowns 7.1.0-dev.202208301349 → 7.2.0-dev.202209121509
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/autocomplete/autocomplete.component.d.ts +0 -1
- package/bundles/kendo-angular-dropdowns.umd.js +1 -1
- package/comboboxes/combobox.component.d.ts +0 -1
- package/common/data.service.d.ts +5 -0
- package/common/list.component.d.ts +4 -1
- package/common/navigation/navigation-action.d.ts +6 -1
- package/common/navigation/navigation.service.d.ts +5 -0
- package/common/searchbar.component.d.ts +17 -6
- package/common/selection/selection.service.d.ts +18 -4
- package/common/shared.module.d.ts +1 -1
- package/common/util.d.ts +4 -0
- package/dropdownlist/dropdownlist.component.d.ts +22 -10
- package/esm2015/autocomplete/autocomplete.component.js +12 -8
- package/esm2015/comboboxes/combobox.component.js +14 -8
- package/esm2015/comboboxes/multicolumncombobox.component.js +13 -3
- package/esm2015/common/data.service.js +11 -1
- package/esm2015/common/list.component.js +17 -2
- package/esm2015/common/navigation/navigation-action.js +5 -0
- package/esm2015/common/navigation/navigation.service.js +22 -0
- package/esm2015/common/searchbar.component.js +79 -19
- package/esm2015/common/selection/selectable.directive.js +2 -1
- package/esm2015/common/selection/selection.service.js +70 -7
- package/esm2015/common/shared.module.js +6 -6
- package/esm2015/common/util.js +4 -0
- package/esm2015/dropdownlist/dropdownlist.component.js +73 -42
- package/esm2015/multiselect/multiselect.component.js +160 -44
- package/esm2015/package-metadata.js +1 -1
- package/fesm2015/kendo-angular-dropdowns.js +595 -251
- package/multiselect/multiselect.component.d.ts +14 -4
- package/package.json +1 -1
|
@@ -69,7 +69,6 @@ export declare class ComboBoxComponent implements ControlValueAccessor, OnDestro
|
|
|
69
69
|
*/
|
|
70
70
|
togglePopup(open: boolean): void;
|
|
71
71
|
get activeDescendant(): string;
|
|
72
|
-
get noDataLabel(): string;
|
|
73
72
|
get appendTo(): ViewContainerRef;
|
|
74
73
|
dataItem: any;
|
|
75
74
|
selected: any[];
|
package/common/data.service.d.ts
CHANGED
|
@@ -69,6 +69,11 @@ export declare class DataService {
|
|
|
69
69
|
* Used to get the group at the provided index.
|
|
70
70
|
*/
|
|
71
71
|
groupAt(index: number): any;
|
|
72
|
+
/**
|
|
73
|
+
* @hidden
|
|
74
|
+
* Used to get all group items indices.
|
|
75
|
+
*/
|
|
76
|
+
groupItemsIndices(): number[];
|
|
72
77
|
/**
|
|
73
78
|
* @hidden
|
|
74
79
|
* Used to get the field by which the data is grouped.
|
|
@@ -45,6 +45,8 @@ export declare class ListComponent implements OnChanges, OnDestroy, AfterViewIni
|
|
|
45
45
|
virtual: VirtualizationSettings;
|
|
46
46
|
type: ListType;
|
|
47
47
|
checkboxes: MultiSelectCheckableSettings;
|
|
48
|
+
ariaLive: string;
|
|
49
|
+
isMultiselect: boolean;
|
|
48
50
|
set data(data: any[]);
|
|
49
51
|
get data(): any[];
|
|
50
52
|
set size(size: DropDownSize);
|
|
@@ -108,6 +110,7 @@ export declare class ListComponent implements OnChanges, OnDestroy, AfterViewIni
|
|
|
108
110
|
* Indicates whether a scrollbar is currently rendered in the list.
|
|
109
111
|
*/
|
|
110
112
|
hasScrollbar(): boolean;
|
|
113
|
+
isItemSelected(index: number): boolean;
|
|
111
114
|
/**
|
|
112
115
|
* Sets the list's content overflow (hides/shows scrollbar)
|
|
113
116
|
*/
|
|
@@ -123,5 +126,5 @@ export declare class ListComponent implements OnChanges, OnDestroy, AfterViewIni
|
|
|
123
126
|
private firstGroupHeaderInTargetedPage;
|
|
124
127
|
private setComponentClasses;
|
|
125
128
|
static ɵfac: i0.ɵɵFactoryDeclaration<ListComponent, never>;
|
|
126
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ListComponent, "kendo-list", never, { "selected": "selected"; "focused": "focused"; "textField": "textField"; "valueField": "valueField"; "height": "height"; "template": "template"; "groupTemplate": "groupTemplate"; "fixedGroupTemplate": "fixedGroupTemplate"; "show": "show"; "id": "id"; "optionPrefix": "optionPrefix"; "multipleSelection": "multipleSelection"; "virtual": "virtual"; "type": "type"; "checkboxes": "checkboxes"; "data": "data"; "size": "size"; "rounded": "rounded"; }, { "onClick": "onClick"; "pageChange": "pageChange"; "listResize": "listResize"; }, never, never>;
|
|
129
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ListComponent, "kendo-list", never, { "selected": "selected"; "focused": "focused"; "textField": "textField"; "valueField": "valueField"; "height": "height"; "template": "template"; "groupTemplate": "groupTemplate"; "fixedGroupTemplate": "fixedGroupTemplate"; "show": "show"; "id": "id"; "optionPrefix": "optionPrefix"; "multipleSelection": "multipleSelection"; "virtual": "virtual"; "type": "type"; "checkboxes": "checkboxes"; "ariaLive": "ariaLive"; "isMultiselect": "isMultiselect"; "data": "data"; "size": "size"; "rounded": "rounded"; }, { "onClick": "onClick"; "pageChange": "pageChange"; "listResize": "listResize"; }, never, never>;
|
|
127
130
|
}
|
|
@@ -39,6 +39,11 @@ export declare class NavigationService {
|
|
|
39
39
|
end: EventEmitter<NavigationEvent>;
|
|
40
40
|
pagedown: EventEmitter<NavigationEvent>;
|
|
41
41
|
pageup: EventEmitter<NavigationEvent>;
|
|
42
|
+
selectnext: EventEmitter<NavigationEvent>;
|
|
43
|
+
selectprevious: EventEmitter<NavigationEvent>;
|
|
44
|
+
selectall: EventEmitter<NavigationEvent>;
|
|
45
|
+
selectalltobeginning: EventEmitter<NavigationEvent>;
|
|
46
|
+
selectalltoend: EventEmitter<NavigationEvent>;
|
|
42
47
|
constructor(disabledItemsService: DisabledItemsService, selectionService: SelectionService);
|
|
43
48
|
process(args: any): NavigationAction;
|
|
44
49
|
private next;
|
|
@@ -2,26 +2,31 @@
|
|
|
2
2
|
* Copyright © 2021 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 { Renderer2, EventEmitter, ElementRef, OnChanges, OnInit, OnDestroy } from '@angular/core';
|
|
5
|
+
import { Renderer2, EventEmitter, ElementRef, OnChanges, OnInit, OnDestroy, Injector, AfterContentChecked } from '@angular/core';
|
|
6
6
|
import { Direction } from './models/direction';
|
|
7
7
|
import { LocalizationService } from '@progress/kendo-angular-l10n';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
9
|
/**
|
|
10
10
|
* @hidden
|
|
11
11
|
*/
|
|
12
|
-
export declare class SearchBarComponent implements OnChanges, OnInit, OnDestroy {
|
|
12
|
+
export declare class SearchBarComponent implements OnChanges, OnInit, OnDestroy, AfterContentChecked {
|
|
13
13
|
private localization;
|
|
14
|
+
private injector;
|
|
14
15
|
direction: Direction;
|
|
15
16
|
id: string;
|
|
16
17
|
listId: string;
|
|
17
18
|
tagListId: string;
|
|
18
19
|
activeDescendant: string;
|
|
19
|
-
noDataLabel: string;
|
|
20
20
|
disabled: boolean;
|
|
21
21
|
readonly: boolean;
|
|
22
22
|
tabIndex: number;
|
|
23
23
|
popupOpen: boolean;
|
|
24
24
|
role: string;
|
|
25
|
+
isLoading: boolean;
|
|
26
|
+
set isSuggestable(isSuggestable: boolean);
|
|
27
|
+
get isSuggestable(): boolean;
|
|
28
|
+
set isFilterable(isFilterable: boolean);
|
|
29
|
+
get isFilterable(): boolean;
|
|
25
30
|
get userInput(): string;
|
|
26
31
|
set userInput(userInput: string);
|
|
27
32
|
suggestedText: string;
|
|
@@ -39,14 +44,20 @@ export declare class SearchBarComponent implements OnChanges, OnInit, OnDestroy
|
|
|
39
44
|
private _userInput;
|
|
40
45
|
private _previousValue;
|
|
41
46
|
private _placeholder;
|
|
47
|
+
private _isSuggestable;
|
|
48
|
+
private _isFilterable;
|
|
49
|
+
private control?;
|
|
42
50
|
private renderer;
|
|
43
|
-
private
|
|
44
|
-
constructor(localization: LocalizationService, renderer: Renderer2);
|
|
51
|
+
private subs;
|
|
52
|
+
constructor(localization: LocalizationService, renderer: Renderer2, injector: Injector);
|
|
45
53
|
ngOnInit(): void;
|
|
54
|
+
ngAfterContentChecked(): void;
|
|
46
55
|
ngOnChanges(changes: any): void;
|
|
47
56
|
ngOnDestroy(): void;
|
|
48
57
|
private writeInputValue;
|
|
49
58
|
private setInputSelection;
|
|
59
|
+
private setAriaInvalid;
|
|
60
|
+
private setAriaAutocomplete;
|
|
50
61
|
handleInput(event: any): void;
|
|
51
62
|
handleFocus(event: any): void;
|
|
52
63
|
handleBlur(event: any): void;
|
|
@@ -55,5 +66,5 @@ export declare class SearchBarComponent implements OnChanges, OnInit, OnDestroy
|
|
|
55
66
|
blur(): void;
|
|
56
67
|
setInputSize(): void;
|
|
57
68
|
static ɵfac: i0.ɵɵFactoryDeclaration<SearchBarComponent, never>;
|
|
58
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<SearchBarComponent, "kendo-searchbar", never, { "id": "id"; "listId": "listId"; "tagListId": "tagListId"; "activeDescendant": "activeDescendant"; "
|
|
69
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SearchBarComponent, "kendo-searchbar", never, { "id": "id"; "listId": "listId"; "tagListId": "tagListId"; "activeDescendant": "activeDescendant"; "disabled": "disabled"; "readonly": "readonly"; "tabIndex": "tabIndex"; "popupOpen": "popupOpen"; "role": "role"; "isLoading": "isLoading"; "isSuggestable": "isSuggestable"; "isFilterable": "isFilterable"; "userInput": "userInput"; "suggestedText": "suggestedText"; "placeholder": "placeholder"; }, { "valueChange": "valueChange"; "onBlur": "onBlur"; "onFocus": "onFocus"; "onClick": "onClick"; "onNavigate": "onNavigate"; }, never, never>;
|
|
59
70
|
}
|
|
@@ -3,38 +3,52 @@
|
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import { EventEmitter } from '@angular/core';
|
|
6
|
+
import { DisabledItemsService } from '../disabled-items/disabled-items.service';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
/**
|
|
8
9
|
* @hidden
|
|
9
10
|
*/
|
|
10
11
|
export interface SelectionEvent {
|
|
11
12
|
indices: number[];
|
|
12
|
-
added?: number;
|
|
13
|
-
removed?: number;
|
|
13
|
+
added?: number | number[];
|
|
14
|
+
removed?: number | number[];
|
|
14
15
|
newSelection?: boolean;
|
|
16
|
+
preventClosingPopup?: boolean;
|
|
17
|
+
isMultipleSelection?: boolean;
|
|
15
18
|
}
|
|
16
19
|
/**
|
|
17
20
|
* @hidden
|
|
18
21
|
*/
|
|
19
22
|
export declare class SelectionService {
|
|
23
|
+
private disabledItemsService;
|
|
20
24
|
onSelect: EventEmitter<SelectionEvent>;
|
|
21
25
|
onChange: EventEmitter<SelectionEvent>;
|
|
22
26
|
onFocus: EventEmitter<number>;
|
|
23
27
|
total: number;
|
|
28
|
+
lastClickedIndex: number;
|
|
24
29
|
private selectedIndices;
|
|
25
30
|
private focusedIndex;
|
|
31
|
+
constructor(disabledItemsService: DisabledItemsService);
|
|
26
32
|
getTotal(): number;
|
|
27
33
|
isSelected(index: number): boolean;
|
|
28
34
|
isFocused(index: number): boolean;
|
|
29
35
|
focus(index: number): void;
|
|
30
36
|
select(index: number): void;
|
|
31
|
-
add(index: number): void;
|
|
32
|
-
|
|
37
|
+
add(index: number, preventClosingPopup?: boolean): void;
|
|
38
|
+
private indicesToBeRemoved;
|
|
39
|
+
private indicesToBeAdded;
|
|
40
|
+
emitMultipleAddedRemoved(): void;
|
|
41
|
+
addMultiple(indices: number[]): void;
|
|
42
|
+
deselect(index: number, preventClosingPopup?: boolean): void;
|
|
43
|
+
unselectMultiple(indices: number[]): void;
|
|
33
44
|
change(index: number): void;
|
|
34
45
|
resetSelection(index: number | number[]): void;
|
|
35
46
|
get selected(): number[];
|
|
36
47
|
get focused(): number;
|
|
37
48
|
set focused(index: number);
|
|
49
|
+
selectFromTo(from: number, to: number): void;
|
|
50
|
+
unselectFromTo(from: number, to: number): void;
|
|
51
|
+
unselectNotNeededIndices(startOfSelection: number, endOfSelection: number, totalItems: number): void;
|
|
38
52
|
static ɵfac: i0.ɵɵFactoryDeclaration<SelectionService, never>;
|
|
39
53
|
static ɵprov: i0.ɵɵInjectableDeclaration<SelectionService>;
|
|
40
54
|
}
|
|
@@ -21,6 +21,6 @@ import * as i13 from "./shared-directives.module";
|
|
|
21
21
|
*/
|
|
22
22
|
export declare class SharedModule {
|
|
23
23
|
static ɵfac: i0.ɵɵFactoryDeclaration<SharedModule, never>;
|
|
24
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<SharedModule, [typeof i1.ListComponent, typeof i2.ListItemDirective, typeof i3.SelectableDirective, typeof i4.SearchBarComponent, typeof i5.TemplateContextDirective, typeof i6.TagListComponent, typeof i7.CheckDirective, typeof i8.CheckAllDirective], [typeof i9.CommonModule, typeof i10.FormsModule, typeof i11.PopupModule, typeof i12.ResizeSensorModule, typeof i13.SharedDirectivesModule, typeof i12.EventsModule], [typeof i1.ListComponent, typeof i2.ListItemDirective, typeof i3.SelectableDirective, typeof i4.SearchBarComponent, typeof i5.TemplateContextDirective, typeof i6.TagListComponent, typeof i7.CheckDirective, typeof i8.CheckAllDirective, typeof i9.CommonModule, typeof i10.FormsModule, typeof i11.PopupModule, typeof i12.ResizeSensorModule, typeof i13.SharedDirectivesModule, typeof i12.EventsModule]>;
|
|
24
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<SharedModule, [typeof i1.ListComponent, typeof i2.ListItemDirective, typeof i3.SelectableDirective, typeof i4.SearchBarComponent, typeof i5.TemplateContextDirective, typeof i6.TagListComponent, typeof i7.CheckDirective, typeof i8.CheckAllDirective], [typeof i9.CommonModule, typeof i10.FormsModule, typeof i10.ReactiveFormsModule, typeof i11.PopupModule, typeof i12.ResizeSensorModule, typeof i13.SharedDirectivesModule, typeof i12.EventsModule], [typeof i1.ListComponent, typeof i2.ListItemDirective, typeof i3.SelectableDirective, typeof i4.SearchBarComponent, typeof i5.TemplateContextDirective, typeof i6.TagListComponent, typeof i7.CheckDirective, typeof i8.CheckAllDirective, typeof i9.CommonModule, typeof i10.FormsModule, typeof i10.ReactiveFormsModule, typeof i11.PopupModule, typeof i12.ResizeSensorModule, typeof i13.SharedDirectivesModule, typeof i12.EventsModule]>;
|
|
25
25
|
static ɵinj: i0.ɵɵInjectorDeclaration<SharedModule>;
|
|
26
26
|
}
|
package/common/util.d.ts
CHANGED
|
@@ -157,3 +157,7 @@ export declare const getRoundedClass: (rounded: DropDownRounded) => string;
|
|
|
157
157
|
* Return the fillMode class based on the component and fillMode input.
|
|
158
158
|
*/
|
|
159
159
|
export declare const getFillModeClass: (component: string, fillMode: DropDownFillMode) => string;
|
|
160
|
+
/**
|
|
161
|
+
* @hidden
|
|
162
|
+
*/
|
|
163
|
+
export declare const filterAndMap: (arr: any[], predicate: (item: any) => boolean, mapper: (item: any) => any) => any[];
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* Copyright © 2021 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 { Renderer2, ElementRef, EventEmitter, ViewContainerRef, OnDestroy, OnChanges, NgZone, TemplateRef, ChangeDetectorRef, OnInit, SimpleChanges, AfterContentChecked } from '@angular/core';
|
|
6
|
-
import { ControlValueAccessor } from '@angular/forms';
|
|
5
|
+
import { Renderer2, ElementRef, EventEmitter, ViewContainerRef, OnDestroy, OnChanges, NgZone, TemplateRef, ChangeDetectorRef, OnInit, SimpleChanges, AfterContentChecked, Injector } from '@angular/core';
|
|
6
|
+
import { ControlValueAccessor, FormControl } from '@angular/forms';
|
|
7
7
|
import { PopupSettings } from '../common/models/popup-settings';
|
|
8
8
|
import { SelectionService } from '../common/selection/selection.service';
|
|
9
9
|
import { NavigationService } from '../common/navigation/navigation.service';
|
|
@@ -62,14 +62,18 @@ export declare class DropDownListComponent implements ControlValueAccessor, OnDe
|
|
|
62
62
|
private renderer;
|
|
63
63
|
private cdr;
|
|
64
64
|
touchEnabled: boolean;
|
|
65
|
+
private injector;
|
|
65
66
|
get width(): any;
|
|
66
67
|
get height(): any;
|
|
67
68
|
get widgetTabIndex(): number;
|
|
68
69
|
get ariaExpanded(): boolean;
|
|
69
|
-
get
|
|
70
|
+
get ariaControls(): string;
|
|
70
71
|
get ariaActivedescendant(): string;
|
|
71
|
-
get noDataLabel(): string;
|
|
72
72
|
get appendTo(): ViewContainerRef;
|
|
73
|
+
/**
|
|
74
|
+
* @hidden
|
|
75
|
+
*/
|
|
76
|
+
get ariaLive(): string;
|
|
73
77
|
/**
|
|
74
78
|
* @hidden
|
|
75
79
|
*/
|
|
@@ -287,7 +291,8 @@ export declare class DropDownListComponent implements ControlValueAccessor, OnDe
|
|
|
287
291
|
*/
|
|
288
292
|
onResize(): void;
|
|
289
293
|
hostClasses: boolean;
|
|
290
|
-
get
|
|
294
|
+
get isDisabledClass(): boolean;
|
|
295
|
+
get isDisabledAttribute(): string;
|
|
291
296
|
get isLoading(): boolean;
|
|
292
297
|
/**
|
|
293
298
|
* @hidden
|
|
@@ -295,12 +300,15 @@ export declare class DropDownListComponent implements ControlValueAccessor, OnDe
|
|
|
295
300
|
focusableId: string;
|
|
296
301
|
get dir(): string;
|
|
297
302
|
get hostTabIndex(): number;
|
|
298
|
-
get
|
|
303
|
+
get readonlyClass(): boolean;
|
|
304
|
+
get readonlyAttr(): string;
|
|
305
|
+
get isBusy(): boolean;
|
|
299
306
|
role: string;
|
|
307
|
+
haspopup: string;
|
|
300
308
|
get isAriaExpanded(): boolean;
|
|
301
|
-
get
|
|
309
|
+
get hostAriaControls(): string;
|
|
310
|
+
get hostAriaInvalid(): string;
|
|
302
311
|
get hostAriaActivedescendant(): string;
|
|
303
|
-
get hostNoDataLabel(): string;
|
|
304
312
|
/**
|
|
305
313
|
* @hidden
|
|
306
314
|
*/
|
|
@@ -346,7 +354,7 @@ export declare class DropDownListComponent implements ControlValueAccessor, OnDe
|
|
|
346
354
|
private _size;
|
|
347
355
|
private _rounded;
|
|
348
356
|
private _fillMode;
|
|
349
|
-
constructor(wrapper: ElementRef, localization: LocalizationService, popupService: PopupService, selectionService: SelectionService, navigationService: NavigationService, disabledItemsService: DisabledItemsService, dataService: DataService, _zone: NgZone, renderer: Renderer2, cdr: ChangeDetectorRef, touchEnabled: boolean);
|
|
357
|
+
constructor(wrapper: ElementRef, localization: LocalizationService, popupService: PopupService, selectionService: SelectionService, navigationService: NavigationService, disabledItemsService: DisabledItemsService, dataService: DataService, _zone: NgZone, renderer: Renderer2, cdr: ChangeDetectorRef, touchEnabled: boolean, injector: Injector);
|
|
350
358
|
ngOnInit(): void;
|
|
351
359
|
/**
|
|
352
360
|
* @hidden
|
|
@@ -369,6 +377,10 @@ export declare class DropDownListComponent implements ControlValueAccessor, OnDe
|
|
|
369
377
|
* @hidden
|
|
370
378
|
*/
|
|
371
379
|
ngAfterContentChecked(): void;
|
|
380
|
+
/**
|
|
381
|
+
* @hidden
|
|
382
|
+
*/
|
|
383
|
+
get formControl(): FormControl;
|
|
372
384
|
/**
|
|
373
385
|
* Focuses a specific item of the DropDownList based on a provided index.
|
|
374
386
|
* If there is a default item it is positioned at index -1.
|
|
@@ -504,6 +516,6 @@ export declare class DropDownListComponent implements ControlValueAccessor, OnDe
|
|
|
504
516
|
pageChange(event: PageChangeEvent): void;
|
|
505
517
|
private assignAriaDescribedBy;
|
|
506
518
|
private setComponentClasses;
|
|
507
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<DropDownListComponent, [null, null, null, null, null, null, null, null, null, null, { optional: true; }]>;
|
|
519
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DropDownListComponent, [null, null, null, null, null, null, null, null, null, null, { optional: true; }, null]>;
|
|
508
520
|
static ɵcmp: i0.ɵɵComponentDeclaration<DropDownListComponent, "kendo-dropdownlist", ["kendoDropDownList"], { "iconClass": "iconClass"; "loading": "loading"; "data": "data"; "value": "value"; "textField": "textField"; "valueField": "valueField"; "popupSettings": "popupSettings"; "listHeight": "listHeight"; "defaultItem": "defaultItem"; "disabled": "disabled"; "itemDisabled": "itemDisabled"; "readonly": "readonly"; "filterable": "filterable"; "virtual": "virtual"; "ignoreCase": "ignoreCase"; "delay": "delay"; "valuePrimitive": "valuePrimitive"; "tabindex": "tabindex"; "tabIndex": "tabIndex"; "size": "size"; "rounded": "rounded"; "fillMode": "fillMode"; "focusableId": "id"; }, { "valueChange": "valueChange"; "filterChange": "filterChange"; "selectionChange": "selectionChange"; "open": "open"; "opened": "opened"; "close": "close"; "closed": "closed"; "onFocus": "focus"; "onBlur": "blur"; }, ["itemTemplate", "groupTemplate", "fixedGroupTemplate", "valueTemplate", "headerTemplate", "footerTemplate", "noDataTemplate"], never>;
|
|
509
521
|
}
|
|
@@ -274,11 +274,6 @@ export class AutoCompleteComponent {
|
|
|
274
274
|
const dataItem = this.dataService.itemAt(this.selectionService.focused);
|
|
275
275
|
return this.optionPrefix + "-" + getter(dataItem, this.valueField);
|
|
276
276
|
}
|
|
277
|
-
get noDataLabel() {
|
|
278
|
-
if (this.data.length === 0) {
|
|
279
|
-
return this.messageFor('noDataText');
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
277
|
/**
|
|
283
278
|
* Sets the data of the AutoComplete.
|
|
284
279
|
*
|
|
@@ -831,6 +826,11 @@ export class AutoCompleteComponent {
|
|
|
831
826
|
popupWrapper.style.width = max;
|
|
832
827
|
popupWrapper.style.height = this.height;
|
|
833
828
|
popupWrapper.setAttribute("dir", this.direction);
|
|
829
|
+
const listBox = popupWrapper.querySelector('ul.k-list-ul');
|
|
830
|
+
const ariaLabel = this.searchbar.input.nativeElement.getAttribute('aria-labelledby');
|
|
831
|
+
if (ariaLabel) {
|
|
832
|
+
listBox.setAttribute('aria-labelledby', ariaLabel);
|
|
833
|
+
}
|
|
834
834
|
this.popupRef.popupOpen.subscribe(() => {
|
|
835
835
|
this.cdr.detectChanges();
|
|
836
836
|
this.optionsList.scrollToItem(this.selectionService.focused);
|
|
@@ -934,10 +934,12 @@ AutoCompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
934
934
|
</ng-container>
|
|
935
935
|
<kendo-searchbar #searchbar
|
|
936
936
|
[role]="'combobox'"
|
|
937
|
+
[isSuggestable]="suggest"
|
|
938
|
+
[isFilterable]="filterable"
|
|
939
|
+
[isLoading]="isLoading"
|
|
937
940
|
[id]="focusableId"
|
|
938
941
|
[listId]="listBoxId"
|
|
939
942
|
[activeDescendant]="activeDescendant"
|
|
940
|
-
[noDataLabel]="noDataLabel"
|
|
941
943
|
[userInput]="text"
|
|
942
944
|
[suggestedText]="suggestion"
|
|
943
945
|
[disabled]="disabled"
|
|
@@ -1011,7 +1013,7 @@ AutoCompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
1011
1013
|
<kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
|
|
1012
1014
|
</ng-template>
|
|
1013
1015
|
<ng-container #container></ng-container>
|
|
1014
|
-
`, isInline: true, components: [{ type: i7.SearchBarComponent, selector: "kendo-searchbar", inputs: ["id", "listId", "tagListId", "activeDescendant", "
|
|
1016
|
+
`, isInline: true, components: [{ type: i7.SearchBarComponent, selector: "kendo-searchbar", inputs: ["id", "listId", "tagListId", "activeDescendant", "disabled", "readonly", "tabIndex", "popupOpen", "role", "isLoading", "isSuggestable", "isFilterable", "userInput", "suggestedText", "placeholder"], outputs: ["valueChange", "onBlur", "onFocus", "onClick", "onNavigate"] }, { type: i8.ListComponent, selector: "kendo-list", inputs: ["selected", "focused", "textField", "valueField", "height", "template", "groupTemplate", "fixedGroupTemplate", "show", "id", "optionPrefix", "multipleSelection", "virtual", "type", "checkboxes", "ariaLive", "isMultiselect", "data", "size", "rounded"], outputs: ["onClick", "pageChange", "listResize"] }, { type: i9.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], directives: [{ type: i10.LocalizedMessagesDirective, selector: "\n [kendoDropDownListLocalizedMessages],\n [kendoDropDownTreeLocalizedMessages],\n [kendoComboBoxLocalizedMessages],\n [kendoMultiColumnComboBoxLocalizedMessages],\n [kendoAutoCompleteLocalizedMessages],\n [kendoMultiSelectLocalizedMessages],\n [kendoMultiSelectTreeLocalizedMessages]\n " }, { type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i12.TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }] });
|
|
1015
1017
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AutoCompleteComponent, decorators: [{
|
|
1016
1018
|
type: Component,
|
|
1017
1019
|
args: [{
|
|
@@ -1048,10 +1050,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
1048
1050
|
</ng-container>
|
|
1049
1051
|
<kendo-searchbar #searchbar
|
|
1050
1052
|
[role]="'combobox'"
|
|
1053
|
+
[isSuggestable]="suggest"
|
|
1054
|
+
[isFilterable]="filterable"
|
|
1055
|
+
[isLoading]="isLoading"
|
|
1051
1056
|
[id]="focusableId"
|
|
1052
1057
|
[listId]="listBoxId"
|
|
1053
1058
|
[activeDescendant]="activeDescendant"
|
|
1054
|
-
[noDataLabel]="noDataLabel"
|
|
1055
1059
|
[userInput]="text"
|
|
1056
1060
|
[suggestedText]="suggestion"
|
|
1057
1061
|
[disabled]="disabled"
|
|
@@ -281,11 +281,6 @@ export class ComboBoxComponent {
|
|
|
281
281
|
const dataItem = this.dataService.itemAt(this.selectionService.focused);
|
|
282
282
|
return this.optionPrefix + "-" + (dataItem ? getter(dataItem, this.valueField) : "");
|
|
283
283
|
}
|
|
284
|
-
get noDataLabel() {
|
|
285
|
-
if (this.data.length === 0) {
|
|
286
|
-
return this.messageFor('noDataText');
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
284
|
get appendTo() {
|
|
290
285
|
const { appendTo } = this.popupSettings;
|
|
291
286
|
if (!appendTo || appendTo === 'root') {
|
|
@@ -1203,6 +1198,11 @@ export class ComboBoxComponent {
|
|
|
1203
1198
|
popupWrapper.style.width = max;
|
|
1204
1199
|
popupWrapper.style.height = this.popupHeight;
|
|
1205
1200
|
popupWrapper.setAttribute("dir", this.direction);
|
|
1201
|
+
const listBox = this.popupRef.popupElement.querySelector('ul.k-list-ul');
|
|
1202
|
+
const ariaLabel = this.searchbar.input.nativeElement.getAttribute('aria-labelledby');
|
|
1203
|
+
if (ariaLabel) {
|
|
1204
|
+
listBox.setAttribute('aria-labelledby', ariaLabel);
|
|
1205
|
+
}
|
|
1206
1206
|
this.popupRef.popupOpen.subscribe(() => {
|
|
1207
1207
|
this.cdr.detectChanges();
|
|
1208
1208
|
this.optionsList.scrollToItem(this.selectionService.focused);
|
|
@@ -1307,8 +1307,10 @@ ComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
|
|
|
1307
1307
|
[role]="'combobox'"
|
|
1308
1308
|
[id]="focusableId"
|
|
1309
1309
|
[listId]="listBoxId"
|
|
1310
|
+
[isLoading]="loading"
|
|
1311
|
+
[isSuggestable]="suggest"
|
|
1312
|
+
[isFilterable]="filterable"
|
|
1310
1313
|
[activeDescendant]="activeDescendant"
|
|
1311
|
-
[noDataLabel]="noDataLabel"
|
|
1312
1314
|
[userInput]="text"
|
|
1313
1315
|
[suggestedText]="getSuggestion()"
|
|
1314
1316
|
[disabled]="disabled"
|
|
@@ -1336,6 +1338,7 @@ ComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
|
|
|
1336
1338
|
</span>
|
|
1337
1339
|
<button
|
|
1338
1340
|
#select
|
|
1341
|
+
tabindex="-1"
|
|
1339
1342
|
unselectable="on"
|
|
1340
1343
|
type="button"
|
|
1341
1344
|
class="k-input-button k-button k-icon-button"
|
|
@@ -1395,7 +1398,7 @@ ComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
|
|
|
1395
1398
|
<kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
|
|
1396
1399
|
</ng-template>
|
|
1397
1400
|
<ng-container #container></ng-container>
|
|
1398
|
-
`, isInline: true, components: [{ type: i7.SearchBarComponent, selector: "kendo-searchbar", inputs: ["id", "listId", "tagListId", "activeDescendant", "
|
|
1401
|
+
`, isInline: true, components: [{ type: i7.SearchBarComponent, selector: "kendo-searchbar", inputs: ["id", "listId", "tagListId", "activeDescendant", "disabled", "readonly", "tabIndex", "popupOpen", "role", "isLoading", "isSuggestable", "isFilterable", "userInput", "suggestedText", "placeholder"], outputs: ["valueChange", "onBlur", "onFocus", "onClick", "onNavigate"] }, { type: i8.ListComponent, selector: "kendo-list", inputs: ["selected", "focused", "textField", "valueField", "height", "template", "groupTemplate", "fixedGroupTemplate", "show", "id", "optionPrefix", "multipleSelection", "virtual", "type", "checkboxes", "ariaLive", "isMultiselect", "data", "size", "rounded"], outputs: ["onClick", "pageChange", "listResize"] }, { type: i9.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], directives: [{ type: i10.LocalizedMessagesDirective, selector: "\n [kendoDropDownListLocalizedMessages],\n [kendoDropDownTreeLocalizedMessages],\n [kendoComboBoxLocalizedMessages],\n [kendoMultiColumnComboBoxLocalizedMessages],\n [kendoAutoCompleteLocalizedMessages],\n [kendoMultiSelectLocalizedMessages],\n [kendoMultiSelectTreeLocalizedMessages]\n " }, { type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i11.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i12.TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }] });
|
|
1399
1402
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ComboBoxComponent, decorators: [{
|
|
1400
1403
|
type: Component,
|
|
1401
1404
|
args: [{
|
|
@@ -1435,8 +1438,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
1435
1438
|
[role]="'combobox'"
|
|
1436
1439
|
[id]="focusableId"
|
|
1437
1440
|
[listId]="listBoxId"
|
|
1441
|
+
[isLoading]="loading"
|
|
1442
|
+
[isSuggestable]="suggest"
|
|
1443
|
+
[isFilterable]="filterable"
|
|
1438
1444
|
[activeDescendant]="activeDescendant"
|
|
1439
|
-
[noDataLabel]="noDataLabel"
|
|
1440
1445
|
[userInput]="text"
|
|
1441
1446
|
[suggestedText]="getSuggestion()"
|
|
1442
1447
|
[disabled]="disabled"
|
|
@@ -1464,6 +1469,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
1464
1469
|
</span>
|
|
1465
1470
|
<button
|
|
1466
1471
|
#select
|
|
1472
|
+
tabindex="-1"
|
|
1467
1473
|
unselectable="on"
|
|
1468
1474
|
type="button"
|
|
1469
1475
|
class="k-input-button k-button k-icon-button"
|
|
@@ -183,6 +183,9 @@ MultiColumnComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
|
|
|
183
183
|
|
|
184
184
|
i18n-clearTitle="kendo.multicolumncombobox.clearTitle|The title of the clear button"
|
|
185
185
|
clearTitle="clear"
|
|
186
|
+
|
|
187
|
+
i18n-selectButtonText="kendo.multicolumncombobox.selectButtonText|The title of the select button"
|
|
188
|
+
selectButtonText="Select"
|
|
186
189
|
>
|
|
187
190
|
</ng-container>
|
|
188
191
|
<kendo-searchbar
|
|
@@ -190,8 +193,10 @@ MultiColumnComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
|
|
|
190
193
|
[role]="'combobox'"
|
|
191
194
|
[id]="focusableId"
|
|
192
195
|
[listId]="listBoxId"
|
|
196
|
+
[isLoading]="loading"
|
|
197
|
+
[isSuggestable]="suggest"
|
|
198
|
+
[isFilterable]="filterable"
|
|
193
199
|
[activeDescendant]="activeDescendant"
|
|
194
|
-
[noDataLabel]="noDataLabel"
|
|
195
200
|
[userInput]="text"
|
|
196
201
|
[suggestedText]="getSuggestion()"
|
|
197
202
|
[disabled]="disabled"
|
|
@@ -389,7 +394,7 @@ MultiColumnComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
|
|
|
389
394
|
|
|
390
395
|
<!-- when the popupSettings.appendTo value is set to 'component', this container is used -->
|
|
391
396
|
<ng-container #container></ng-container>
|
|
392
|
-
`, isInline: true, components: [{ type: i7.SearchBarComponent, selector: "kendo-searchbar", inputs: ["id", "listId", "tagListId", "activeDescendant", "
|
|
397
|
+
`, isInline: true, components: [{ type: i7.SearchBarComponent, selector: "kendo-searchbar", inputs: ["id", "listId", "tagListId", "activeDescendant", "disabled", "readonly", "tabIndex", "popupOpen", "role", "isLoading", "isSuggestable", "isFilterable", "userInput", "suggestedText", "placeholder"], outputs: ["valueChange", "onBlur", "onFocus", "onClick", "onNavigate"] }, { type: i8.ListComponent, selector: "kendo-list", inputs: ["selected", "focused", "textField", "valueField", "height", "template", "groupTemplate", "fixedGroupTemplate", "show", "id", "optionPrefix", "multipleSelection", "virtual", "type", "checkboxes", "ariaLive", "isMultiselect", "data", "size", "rounded"], outputs: ["onClick", "pageChange", "listResize"] }, { type: i9.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], directives: [{ type: i10.LocalizedMessagesDirective, selector: "\n [kendoDropDownListLocalizedMessages],\n [kendoDropDownTreeLocalizedMessages],\n [kendoComboBoxLocalizedMessages],\n [kendoMultiColumnComboBoxLocalizedMessages],\n [kendoAutoCompleteLocalizedMessages],\n [kendoMultiSelectLocalizedMessages],\n [kendoMultiSelectTreeLocalizedMessages]\n " }, { type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i11.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i12.TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { type: i11.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i11.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
393
398
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MultiColumnComboBoxComponent, decorators: [{
|
|
394
399
|
type: Component,
|
|
395
400
|
args: [{
|
|
@@ -427,6 +432,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
427
432
|
|
|
428
433
|
i18n-clearTitle="kendo.multicolumncombobox.clearTitle|The title of the clear button"
|
|
429
434
|
clearTitle="clear"
|
|
435
|
+
|
|
436
|
+
i18n-selectButtonText="kendo.multicolumncombobox.selectButtonText|The title of the select button"
|
|
437
|
+
selectButtonText="Select"
|
|
430
438
|
>
|
|
431
439
|
</ng-container>
|
|
432
440
|
<kendo-searchbar
|
|
@@ -434,8 +442,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
434
442
|
[role]="'combobox'"
|
|
435
443
|
[id]="focusableId"
|
|
436
444
|
[listId]="listBoxId"
|
|
445
|
+
[isLoading]="loading"
|
|
446
|
+
[isSuggestable]="suggest"
|
|
447
|
+
[isFilterable]="filterable"
|
|
437
448
|
[activeDescendant]="activeDescendant"
|
|
438
|
-
[noDataLabel]="noDataLabel"
|
|
439
449
|
[userInput]="text"
|
|
440
450
|
[suggestedText]="getSuggestion()"
|
|
441
451
|
[disabled]="disabled"
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import { Injectable } from '@angular/core';
|
|
6
|
-
import { isPresent, hasProps, getter } from './util';
|
|
6
|
+
import { isPresent, hasProps, getter, filterAndMap } from './util';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
/**
|
|
9
9
|
* @hidden
|
|
@@ -178,6 +178,16 @@ export class DataService {
|
|
|
178
178
|
}
|
|
179
179
|
return this._flatData.find((item) => item.header && item.index === index);
|
|
180
180
|
}
|
|
181
|
+
/**
|
|
182
|
+
* @hidden
|
|
183
|
+
* Used to get all group items indices.
|
|
184
|
+
*/
|
|
185
|
+
groupItemsIndices() {
|
|
186
|
+
if (this.isGrouped) {
|
|
187
|
+
return filterAndMap(this.data, item => item.header, mappedItem => mappedItem.index);
|
|
188
|
+
}
|
|
189
|
+
return [];
|
|
190
|
+
}
|
|
181
191
|
/**
|
|
182
192
|
* @hidden
|
|
183
193
|
* Used to get the field by which the data is grouped.
|
|
@@ -142,7 +142,7 @@ export class ListComponent {
|
|
|
142
142
|
this.selectionService.add(index);
|
|
143
143
|
}
|
|
144
144
|
if (!isChecked && this.selectionService.isSelected(index)) {
|
|
145
|
-
this.selectionService.
|
|
145
|
+
this.selectionService.deselect(index);
|
|
146
146
|
}
|
|
147
147
|
}
|
|
148
148
|
prepareClasses() {
|
|
@@ -324,6 +324,9 @@ export class ListComponent {
|
|
|
324
324
|
const hasVirtualScroll = isPresent(this.virtual) && this.hasVirtualScrollbar();
|
|
325
325
|
return hasVirtualScroll || this.list.nativeElement.scrollHeight > this.content.nativeElement.offsetHeight;
|
|
326
326
|
}
|
|
327
|
+
isItemSelected(index) {
|
|
328
|
+
return this.selectionService.isSelected(index) || null;
|
|
329
|
+
}
|
|
327
330
|
/**
|
|
328
331
|
* Sets the list's content overflow (hides/shows scrollbar)
|
|
329
332
|
*/
|
|
@@ -369,7 +372,7 @@ export class ListComponent {
|
|
|
369
372
|
}
|
|
370
373
|
}
|
|
371
374
|
ListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListComponent, deps: [{ token: i1.DataService }, { token: i0.ElementRef }, { token: i2.SelectionService }, { token: i3.DisabledItemsService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
372
|
-
ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ListComponent, selector: "kendo-list", inputs: { selected: "selected", focused: "focused", textField: "textField", valueField: "valueField", height: "height", template: "template", groupTemplate: "groupTemplate", fixedGroupTemplate: "fixedGroupTemplate", show: "show", id: "id", optionPrefix: "optionPrefix", multipleSelection: "multipleSelection", virtual: "virtual", type: "type", checkboxes: "checkboxes", data: "data", size: "size", rounded: "rounded" }, outputs: { onClick: "onClick", pageChange: "pageChange", listResize: "listResize" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true, static: true }, { propertyName: "list", first: true, predicate: ["list"], descendants: true, static: true }, { propertyName: "virtualContainer", first: true, predicate: ["virtualContainer"], descendants: true }, { propertyName: "items", predicate: ListItemDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
375
|
+
ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ListComponent, selector: "kendo-list", inputs: { selected: "selected", focused: "focused", textField: "textField", valueField: "valueField", height: "height", template: "template", groupTemplate: "groupTemplate", fixedGroupTemplate: "fixedGroupTemplate", show: "show", id: "id", optionPrefix: "optionPrefix", multipleSelection: "multipleSelection", virtual: "virtual", type: "type", checkboxes: "checkboxes", ariaLive: "ariaLive", isMultiselect: "isMultiselect", data: "data", size: "size", rounded: "rounded" }, outputs: { onClick: "onClick", pageChange: "pageChange", listResize: "listResize" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true, static: true }, { propertyName: "list", first: true, predicate: ["list"], descendants: true, static: true }, { propertyName: "virtualContainer", first: true, predicate: ["virtualContainer"], descendants: true }, { propertyName: "items", predicate: ListItemDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
373
376
|
<div *ngIf="dataService.grouped"
|
|
374
377
|
[class]="listGroupStickyHeaderClass"
|
|
375
378
|
[ngStyle]="{
|
|
@@ -394,6 +397,8 @@ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
|
|
|
394
397
|
role="listbox"
|
|
395
398
|
[class]="listClass"
|
|
396
399
|
[attr.id]="id"
|
|
400
|
+
[attr.aria-live]="ariaLive"
|
|
401
|
+
[attr.aria-multiselectable]="isMultiselect"
|
|
397
402
|
[attr.aria-hidden]="!show">
|
|
398
403
|
<ng-template *ngIf="!dataService.grouped && show" ngFor let-dataItem let-itemIndex="index" [ngForOf]="data">
|
|
399
404
|
<li
|
|
@@ -405,6 +410,7 @@ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
|
|
|
405
410
|
[multipleSelection]="multipleSelection"
|
|
406
411
|
[attr.id]="optionPrefix + '-' + getValue(dataItem)"
|
|
407
412
|
[attr.tabIndex]="-1"
|
|
413
|
+
[attr.aria-selected]="isItemSelected(itemIndex)"
|
|
408
414
|
[class]="listItemClass"
|
|
409
415
|
[ngClass]="{
|
|
410
416
|
'k-disabled': isDisabled(itemIndex),
|
|
@@ -461,6 +467,7 @@ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
|
|
|
461
467
|
[attr.absolute-index]="dataItem.index"
|
|
462
468
|
[attr.id]="optionPrefix + '-' + getValue(dataItem.value)"
|
|
463
469
|
[attr.tabIndex]="-1"
|
|
470
|
+
[attr.aria-selected]="isItemSelected(dataItem.offsetIndex)"
|
|
464
471
|
[class]="listItemClass"
|
|
465
472
|
[ngClass]="{
|
|
466
473
|
'k-disabled': isDisabled(dataItem.offsetIndex),
|
|
@@ -518,6 +525,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
518
525
|
role="listbox"
|
|
519
526
|
[class]="listClass"
|
|
520
527
|
[attr.id]="id"
|
|
528
|
+
[attr.aria-live]="ariaLive"
|
|
529
|
+
[attr.aria-multiselectable]="isMultiselect"
|
|
521
530
|
[attr.aria-hidden]="!show">
|
|
522
531
|
<ng-template *ngIf="!dataService.grouped && show" ngFor let-dataItem let-itemIndex="index" [ngForOf]="data">
|
|
523
532
|
<li
|
|
@@ -529,6 +538,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
529
538
|
[multipleSelection]="multipleSelection"
|
|
530
539
|
[attr.id]="optionPrefix + '-' + getValue(dataItem)"
|
|
531
540
|
[attr.tabIndex]="-1"
|
|
541
|
+
[attr.aria-selected]="isItemSelected(itemIndex)"
|
|
532
542
|
[class]="listItemClass"
|
|
533
543
|
[ngClass]="{
|
|
534
544
|
'k-disabled': isDisabled(itemIndex),
|
|
@@ -585,6 +595,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
585
595
|
[attr.absolute-index]="dataItem.index"
|
|
586
596
|
[attr.id]="optionPrefix + '-' + getValue(dataItem.value)"
|
|
587
597
|
[attr.tabIndex]="-1"
|
|
598
|
+
[attr.aria-selected]="isItemSelected(dataItem.offsetIndex)"
|
|
588
599
|
[class]="listItemClass"
|
|
589
600
|
[ngClass]="{
|
|
590
601
|
'k-disabled': isDisabled(dataItem.offsetIndex),
|
|
@@ -644,6 +655,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
644
655
|
type: Input
|
|
645
656
|
}], checkboxes: [{
|
|
646
657
|
type: Input
|
|
658
|
+
}], ariaLive: [{
|
|
659
|
+
type: Input
|
|
660
|
+
}], isMultiselect: [{
|
|
661
|
+
type: Input
|
|
647
662
|
}], data: [{
|
|
648
663
|
type: Input
|
|
649
664
|
}], size: [{
|