@progress/kendo-angular-dropdowns 7.0.4-dev.202208041601 → 7.1.0
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 +2 -1
- package/bundles/kendo-angular-dropdowns.umd.js +1 -1
- package/comboboxes/combobox.component.d.ts +1 -2
- package/common/list.component.d.ts +6 -1
- package/common/navigation/navigation-action.d.ts +3 -1
- package/common/navigation/navigation.service.d.ts +2 -0
- package/common/searchbar.component.d.ts +17 -6
- package/common/shared.module.d.ts +1 -1
- package/dropdownlist/dropdownlist.component.d.ts +23 -20
- package/esm2015/autocomplete/autocomplete.component.js +28 -9
- package/esm2015/comboboxes/combobox.component.js +26 -12
- package/esm2015/comboboxes/multicolumncombobox.component.js +13 -3
- package/esm2015/common/list.component.js +27 -1
- package/esm2015/common/navigation/navigation-action.js +2 -0
- package/esm2015/common/navigation/navigation.service.js +8 -0
- package/esm2015/common/searchbar.component.js +80 -20
- package/esm2015/common/shared.module.js +6 -6
- package/esm2015/dropdownlist/dropdownlist.component.js +107 -88
- package/esm2015/multiselect/multiselect.component.js +17 -21
- package/esm2015/package-metadata.js +1 -1
- package/fesm2015/kendo-angular-dropdowns.js +312 -161
- package/multiselect/multiselect.component.d.ts +0 -3
- package/package.json +1 -1
|
@@ -8,6 +8,7 @@ import { ListItemDirective } from './list-item.directive';
|
|
|
8
8
|
import { isPresent, getter, closest, getSizeClass, getRoundedClass } from './util';
|
|
9
9
|
import { fromEvent, merge } from 'rxjs';
|
|
10
10
|
import { map, tap, auditTime, switchMap, take } from 'rxjs/operators';
|
|
11
|
+
import { NavigationAction } from './navigation/navigation-action';
|
|
11
12
|
import * as i0 from "@angular/core";
|
|
12
13
|
import * as i1 from "./data.service";
|
|
13
14
|
import * as i2 from "./selection/selection.service";
|
|
@@ -274,6 +275,16 @@ export class ListComponent {
|
|
|
274
275
|
this.scroll(items[flatIndex].element);
|
|
275
276
|
}
|
|
276
277
|
}
|
|
278
|
+
scrollWithOnePage(action) {
|
|
279
|
+
let content = this.content.nativeElement;
|
|
280
|
+
const contentOffsetHeight = content.clientHeight;
|
|
281
|
+
if (action === NavigationAction.PageDown) {
|
|
282
|
+
content.scrollTop += contentOffsetHeight;
|
|
283
|
+
}
|
|
284
|
+
else if (action === NavigationAction.PageUp) {
|
|
285
|
+
content.scrollTop -= contentOffsetHeight;
|
|
286
|
+
}
|
|
287
|
+
}
|
|
277
288
|
scrollToIndex(index) {
|
|
278
289
|
let content = this.content.nativeElement;
|
|
279
290
|
let contentScrollTop = content.scrollTop;
|
|
@@ -313,6 +324,9 @@ export class ListComponent {
|
|
|
313
324
|
const hasVirtualScroll = isPresent(this.virtual) && this.hasVirtualScrollbar();
|
|
314
325
|
return hasVirtualScroll || this.list.nativeElement.scrollHeight > this.content.nativeElement.offsetHeight;
|
|
315
326
|
}
|
|
327
|
+
isItemSelected(index) {
|
|
328
|
+
return this.selectionService.isSelected(index) || null;
|
|
329
|
+
}
|
|
316
330
|
/**
|
|
317
331
|
* Sets the list's content overflow (hides/shows scrollbar)
|
|
318
332
|
*/
|
|
@@ -358,7 +372,7 @@ export class ListComponent {
|
|
|
358
372
|
}
|
|
359
373
|
}
|
|
360
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 });
|
|
361
|
-
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: `
|
|
362
376
|
<div *ngIf="dataService.grouped"
|
|
363
377
|
[class]="listGroupStickyHeaderClass"
|
|
364
378
|
[ngStyle]="{
|
|
@@ -383,6 +397,8 @@ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
|
|
|
383
397
|
role="listbox"
|
|
384
398
|
[class]="listClass"
|
|
385
399
|
[attr.id]="id"
|
|
400
|
+
[attr.aria-live]="ariaLive"
|
|
401
|
+
[attr.aria-multiselectable]="isMultiselect"
|
|
386
402
|
[attr.aria-hidden]="!show">
|
|
387
403
|
<ng-template *ngIf="!dataService.grouped && show" ngFor let-dataItem let-itemIndex="index" [ngForOf]="data">
|
|
388
404
|
<li
|
|
@@ -394,6 +410,7 @@ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
|
|
|
394
410
|
[multipleSelection]="multipleSelection"
|
|
395
411
|
[attr.id]="optionPrefix + '-' + getValue(dataItem)"
|
|
396
412
|
[attr.tabIndex]="-1"
|
|
413
|
+
[attr.aria-selected]="isItemSelected(itemIndex)"
|
|
397
414
|
[class]="listItemClass"
|
|
398
415
|
[ngClass]="{
|
|
399
416
|
'k-disabled': isDisabled(itemIndex),
|
|
@@ -450,6 +467,7 @@ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
|
|
|
450
467
|
[attr.absolute-index]="dataItem.index"
|
|
451
468
|
[attr.id]="optionPrefix + '-' + getValue(dataItem.value)"
|
|
452
469
|
[attr.tabIndex]="-1"
|
|
470
|
+
[attr.aria-selected]="isItemSelected(dataItem.offsetIndex)"
|
|
453
471
|
[class]="listItemClass"
|
|
454
472
|
[ngClass]="{
|
|
455
473
|
'k-disabled': isDisabled(dataItem.offsetIndex),
|
|
@@ -507,6 +525,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
507
525
|
role="listbox"
|
|
508
526
|
[class]="listClass"
|
|
509
527
|
[attr.id]="id"
|
|
528
|
+
[attr.aria-live]="ariaLive"
|
|
529
|
+
[attr.aria-multiselectable]="isMultiselect"
|
|
510
530
|
[attr.aria-hidden]="!show">
|
|
511
531
|
<ng-template *ngIf="!dataService.grouped && show" ngFor let-dataItem let-itemIndex="index" [ngForOf]="data">
|
|
512
532
|
<li
|
|
@@ -518,6 +538,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
518
538
|
[multipleSelection]="multipleSelection"
|
|
519
539
|
[attr.id]="optionPrefix + '-' + getValue(dataItem)"
|
|
520
540
|
[attr.tabIndex]="-1"
|
|
541
|
+
[attr.aria-selected]="isItemSelected(itemIndex)"
|
|
521
542
|
[class]="listItemClass"
|
|
522
543
|
[ngClass]="{
|
|
523
544
|
'k-disabled': isDisabled(itemIndex),
|
|
@@ -574,6 +595,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
574
595
|
[attr.absolute-index]="dataItem.index"
|
|
575
596
|
[attr.id]="optionPrefix + '-' + getValue(dataItem.value)"
|
|
576
597
|
[attr.tabIndex]="-1"
|
|
598
|
+
[attr.aria-selected]="isItemSelected(dataItem.offsetIndex)"
|
|
577
599
|
[class]="listItemClass"
|
|
578
600
|
[ngClass]="{
|
|
579
601
|
'k-disabled': isDisabled(dataItem.offsetIndex),
|
|
@@ -633,6 +655,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
633
655
|
type: Input
|
|
634
656
|
}], checkboxes: [{
|
|
635
657
|
type: Input
|
|
658
|
+
}], ariaLive: [{
|
|
659
|
+
type: Input
|
|
660
|
+
}], isMultiselect: [{
|
|
661
|
+
type: Input
|
|
636
662
|
}], data: [{
|
|
637
663
|
type: Input
|
|
638
664
|
}], size: [{
|
|
@@ -22,4 +22,6 @@ export var NavigationAction;
|
|
|
22
22
|
NavigationAction[NavigationAction["Down"] = 11] = "Down";
|
|
23
23
|
NavigationAction[NavigationAction["Left"] = 12] = "Left";
|
|
24
24
|
NavigationAction[NavigationAction["Right"] = 13] = "Right";
|
|
25
|
+
NavigationAction[NavigationAction["PageDown"] = 14] = "PageDown";
|
|
26
|
+
NavigationAction[NavigationAction["PageUp"] = 15] = "PageUp";
|
|
25
27
|
})(NavigationAction || (NavigationAction = {}));
|
|
@@ -42,6 +42,8 @@ export class NavigationService {
|
|
|
42
42
|
this.backspace = new EventEmitter();
|
|
43
43
|
this.home = new EventEmitter();
|
|
44
44
|
this.end = new EventEmitter();
|
|
45
|
+
this.pagedown = new EventEmitter();
|
|
46
|
+
this.pageup = new EventEmitter();
|
|
45
47
|
}
|
|
46
48
|
process(args) {
|
|
47
49
|
const keyCode = args.originalEvent.keyCode;
|
|
@@ -93,6 +95,12 @@ export class NavigationService {
|
|
|
93
95
|
else if (keyCode === Keys.Backspace) {
|
|
94
96
|
action = NavigationAction.Backspace;
|
|
95
97
|
}
|
|
98
|
+
else if (keyCode === Keys.PageDown) {
|
|
99
|
+
action = NavigationAction.PageDown;
|
|
100
|
+
}
|
|
101
|
+
else if (keyCode === Keys.PageUp) {
|
|
102
|
+
action = NavigationAction.PageUp;
|
|
103
|
+
}
|
|
96
104
|
const eventData = new NavigationEvent(index, args.originalEvent);
|
|
97
105
|
if (action !== NavigationAction.Undefined) {
|
|
98
106
|
this[NavigationAction[action].toLowerCase()].emit(eventData);
|
|
@@ -6,6 +6,8 @@ import { Component, Input, Output, EventEmitter, ViewChild, HostBinding } from '
|
|
|
6
6
|
import { isDocumentAvailable } from '@progress/kendo-angular-common';
|
|
7
7
|
import { Keys } from '@progress/kendo-angular-common';
|
|
8
8
|
import { combineStr } from './util';
|
|
9
|
+
import { Subscription } from 'rxjs';
|
|
10
|
+
import { NgControl } from '@angular/forms';
|
|
9
11
|
import * as i0 from "@angular/core";
|
|
10
12
|
import * as i1 from "@progress/kendo-angular-l10n";
|
|
11
13
|
import * as i2 from "@progress/kendo-angular-common";
|
|
@@ -13,8 +15,9 @@ import * as i2 from "@progress/kendo-angular-common";
|
|
|
13
15
|
* @hidden
|
|
14
16
|
*/
|
|
15
17
|
export class SearchBarComponent {
|
|
16
|
-
constructor(localization, renderer) {
|
|
18
|
+
constructor(localization, renderer, injector) {
|
|
17
19
|
this.localization = localization;
|
|
20
|
+
this.injector = injector;
|
|
18
21
|
this.valueChange = new EventEmitter();
|
|
19
22
|
this.onBlur = new EventEmitter();
|
|
20
23
|
this.onFocus = new EventEmitter();
|
|
@@ -24,9 +27,30 @@ export class SearchBarComponent {
|
|
|
24
27
|
this._userInput = "";
|
|
25
28
|
this._previousValue = "";
|
|
26
29
|
this._placeholder = "";
|
|
30
|
+
this._isSuggestable = false;
|
|
31
|
+
this._isFilterable = false;
|
|
32
|
+
this.subs = new Subscription();
|
|
27
33
|
this.direction = localization.rtl ? 'rtl' : 'ltr';
|
|
28
34
|
this.renderer = renderer;
|
|
29
35
|
}
|
|
36
|
+
set isSuggestable(isSuggestable) {
|
|
37
|
+
this._isSuggestable = isSuggestable;
|
|
38
|
+
this.setAriaAutocomplete();
|
|
39
|
+
}
|
|
40
|
+
;
|
|
41
|
+
get isSuggestable() {
|
|
42
|
+
return this._isSuggestable;
|
|
43
|
+
}
|
|
44
|
+
;
|
|
45
|
+
set isFilterable(isFilterable) {
|
|
46
|
+
this._isFilterable = isFilterable;
|
|
47
|
+
this.setAriaAutocomplete();
|
|
48
|
+
}
|
|
49
|
+
;
|
|
50
|
+
get isFilterable() {
|
|
51
|
+
return this._isFilterable;
|
|
52
|
+
}
|
|
53
|
+
;
|
|
30
54
|
get userInput() {
|
|
31
55
|
return this._userInput;
|
|
32
56
|
}
|
|
@@ -47,8 +71,19 @@ export class SearchBarComponent {
|
|
|
47
71
|
return this.role === 'combobox' ? this.popupOpen : null;
|
|
48
72
|
}
|
|
49
73
|
ngOnInit() {
|
|
50
|
-
this.
|
|
51
|
-
.changes.subscribe(({ rtl }) => this.direction = rtl ? 'rtl' : 'ltr');
|
|
74
|
+
this.subs.add(this.localization
|
|
75
|
+
.changes.subscribe(({ rtl }) => this.direction = rtl ? 'rtl' : 'ltr'));
|
|
76
|
+
}
|
|
77
|
+
ngAfterContentChecked() {
|
|
78
|
+
var _a;
|
|
79
|
+
const formControl = (_a = this.injector.get(NgControl, null)) === null || _a === void 0 ? void 0 : _a.control;
|
|
80
|
+
this.control = formControl;
|
|
81
|
+
if (formControl) {
|
|
82
|
+
this.subs.add(formControl.valueChanges.subscribe(() => {
|
|
83
|
+
this.control = formControl;
|
|
84
|
+
}));
|
|
85
|
+
}
|
|
86
|
+
this.setAriaInvalid();
|
|
52
87
|
}
|
|
53
88
|
ngOnChanges(changes) {
|
|
54
89
|
let previousUserInput;
|
|
@@ -80,9 +115,7 @@ export class SearchBarComponent {
|
|
|
80
115
|
}
|
|
81
116
|
}
|
|
82
117
|
ngOnDestroy() {
|
|
83
|
-
|
|
84
|
-
this.localizationChangeSubscription.unsubscribe();
|
|
85
|
-
}
|
|
118
|
+
this.subs.unsubscribe();
|
|
86
119
|
}
|
|
87
120
|
writeInputValue(text) {
|
|
88
121
|
if (isDocumentAvailable()) {
|
|
@@ -99,6 +132,33 @@ export class SearchBarComponent {
|
|
|
99
132
|
}
|
|
100
133
|
}
|
|
101
134
|
}
|
|
135
|
+
setAriaInvalid() {
|
|
136
|
+
if (this.control) {
|
|
137
|
+
if (this.control.invalid) {
|
|
138
|
+
this.renderer.setAttribute(this.input.nativeElement, 'aria-invalid', 'true');
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
this.renderer.setAttribute(this.input.nativeElement, 'aria-invalid', 'false');
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
this.renderer.removeAttribute(this.input.nativeElement, 'aria-invalid');
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
setAriaAutocomplete() {
|
|
149
|
+
if (this.isFilterable) {
|
|
150
|
+
this.renderer.setAttribute(this.input.nativeElement, 'aria-autocomplete', 'list');
|
|
151
|
+
}
|
|
152
|
+
if (this.isSuggestable) {
|
|
153
|
+
this.renderer.setAttribute(this.input.nativeElement, 'aria-autocomplete', 'inline');
|
|
154
|
+
}
|
|
155
|
+
if (this.isFilterable && this.isSuggestable) {
|
|
156
|
+
this.renderer.setAttribute(this.input.nativeElement, 'aria-autocomplete', 'both');
|
|
157
|
+
}
|
|
158
|
+
if (!this.isFilterable && !this.isSuggestable) {
|
|
159
|
+
this.renderer.removeAttribute(this.input.nativeElement, 'aria-autocomplete');
|
|
160
|
+
}
|
|
161
|
+
}
|
|
102
162
|
handleInput(event) {
|
|
103
163
|
const value = event.target.value;
|
|
104
164
|
if (value !== this.userInput) {
|
|
@@ -115,7 +175,7 @@ export class SearchBarComponent {
|
|
|
115
175
|
handleKeydown(event) {
|
|
116
176
|
const keyCode = event.keyCode;
|
|
117
177
|
const keys = [Keys.ArrowUp, Keys.ArrowDown, Keys.ArrowLeft, Keys.ArrowRight, Keys.Enter,
|
|
118
|
-
Keys.Escape, Keys.Delete, Keys.Backspace, Keys.Home, Keys.End];
|
|
178
|
+
Keys.Escape, Keys.Delete, Keys.Backspace, Keys.Home, Keys.End, Keys.PageDown, Keys.PageUp];
|
|
119
179
|
if (keys.indexOf(keyCode) > -1) {
|
|
120
180
|
this.onNavigate.emit(event);
|
|
121
181
|
}
|
|
@@ -139,8 +199,8 @@ export class SearchBarComponent {
|
|
|
139
199
|
this.renderer.setAttribute(input, 'size', size.toString());
|
|
140
200
|
}
|
|
141
201
|
}
|
|
142
|
-
SearchBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SearchBarComponent, deps: [{ token: i1.LocalizationService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
143
|
-
SearchBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SearchBarComponent, selector: "kendo-searchbar", inputs: { id: "id", listId: "listId", tagListId: "tagListId", activeDescendant: "activeDescendant",
|
|
202
|
+
SearchBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SearchBarComponent, deps: [{ token: i1.LocalizationService }, { token: i0.Renderer2 }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
203
|
+
SearchBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SearchBarComponent, selector: "kendo-searchbar", inputs: { 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" }, outputs: { valueChange: "valueChange", onBlur: "onBlur", onFocus: "onFocus", onClick: "onClick", onNavigate: "onNavigate" }, host: { properties: { "class.k-searchbar": "this.searchBarClass" } }, viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
144
204
|
<input #input
|
|
145
205
|
autocomplete="off"
|
|
146
206
|
[id]="id"
|
|
@@ -158,14 +218,12 @@ SearchBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
|
|
|
158
218
|
[attr.tabIndex]="tabIndex"
|
|
159
219
|
[attr.dir]="direction"
|
|
160
220
|
[attr.role]="role"
|
|
161
|
-
[attr.aria-disabled]="disabled"
|
|
162
|
-
[attr.aria-readonly]="readonly"
|
|
163
221
|
aria-haspopup="listbox"
|
|
164
222
|
[attr.aria-expanded]="ariaExpanded"
|
|
165
|
-
[attr.aria-
|
|
223
|
+
[attr.aria-controls]="listId"
|
|
166
224
|
[attr.aria-describedby]="tagListId"
|
|
167
225
|
[attr.aria-activedescendant]="activeDescendant"
|
|
168
|
-
[attr.aria-
|
|
226
|
+
[attr.aria-busy]="isLoading"
|
|
169
227
|
/>
|
|
170
228
|
`, isInline: true, directives: [{ type: i2.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }] });
|
|
171
229
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SearchBarComponent, decorators: [{
|
|
@@ -190,18 +248,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
190
248
|
[attr.tabIndex]="tabIndex"
|
|
191
249
|
[attr.dir]="direction"
|
|
192
250
|
[attr.role]="role"
|
|
193
|
-
[attr.aria-disabled]="disabled"
|
|
194
|
-
[attr.aria-readonly]="readonly"
|
|
195
251
|
aria-haspopup="listbox"
|
|
196
252
|
[attr.aria-expanded]="ariaExpanded"
|
|
197
|
-
[attr.aria-
|
|
253
|
+
[attr.aria-controls]="listId"
|
|
198
254
|
[attr.aria-describedby]="tagListId"
|
|
199
255
|
[attr.aria-activedescendant]="activeDescendant"
|
|
200
|
-
[attr.aria-
|
|
256
|
+
[attr.aria-busy]="isLoading"
|
|
201
257
|
/>
|
|
202
258
|
`
|
|
203
259
|
}]
|
|
204
|
-
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.Renderer2 }]; }, propDecorators: { id: [{
|
|
260
|
+
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.Renderer2 }, { type: i0.Injector }]; }, propDecorators: { id: [{
|
|
205
261
|
type: Input
|
|
206
262
|
}], listId: [{
|
|
207
263
|
type: Input
|
|
@@ -209,8 +265,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
209
265
|
type: Input
|
|
210
266
|
}], activeDescendant: [{
|
|
211
267
|
type: Input
|
|
212
|
-
}], noDataLabel: [{
|
|
213
|
-
type: Input
|
|
214
268
|
}], disabled: [{
|
|
215
269
|
type: Input
|
|
216
270
|
}], readonly: [{
|
|
@@ -221,6 +275,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
221
275
|
type: Input
|
|
222
276
|
}], role: [{
|
|
223
277
|
type: Input
|
|
278
|
+
}], isLoading: [{
|
|
279
|
+
type: Input
|
|
280
|
+
}], isSuggestable: [{
|
|
281
|
+
type: Input
|
|
282
|
+
}], isFilterable: [{
|
|
283
|
+
type: Input
|
|
224
284
|
}], userInput: [{
|
|
225
285
|
type: Input
|
|
226
286
|
}], suggestedText: [{
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import { NgModule } from '@angular/core';
|
|
6
6
|
import { CommonModule } from '@angular/common';
|
|
7
|
-
import { FormsModule } from '@angular/forms';
|
|
7
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
8
8
|
import { ListComponent } from './list.component';
|
|
9
9
|
import { SearchBarComponent } from './searchbar.component';
|
|
10
10
|
import { TagListComponent } from './taglist.component';
|
|
@@ -40,20 +40,20 @@ SharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "
|
|
|
40
40
|
TemplateContextDirective,
|
|
41
41
|
TagListComponent,
|
|
42
42
|
CheckDirective,
|
|
43
|
-
CheckAllDirective], imports: [CommonModule, FormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule], exports: [ListComponent,
|
|
43
|
+
CheckAllDirective], imports: [CommonModule, FormsModule, ReactiveFormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule], exports: [ListComponent,
|
|
44
44
|
ListItemDirective,
|
|
45
45
|
SelectableDirective,
|
|
46
46
|
SearchBarComponent,
|
|
47
47
|
TemplateContextDirective,
|
|
48
48
|
TagListComponent,
|
|
49
49
|
CheckDirective,
|
|
50
|
-
CheckAllDirective, CommonModule, FormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule] });
|
|
51
|
-
SharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SharedModule, imports: [[CommonModule, FormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule], CommonModule, FormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule] });
|
|
50
|
+
CheckAllDirective, CommonModule, FormsModule, ReactiveFormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule] });
|
|
51
|
+
SharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SharedModule, imports: [[CommonModule, FormsModule, ReactiveFormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule], CommonModule, FormsModule, ReactiveFormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule] });
|
|
52
52
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SharedModule, decorators: [{
|
|
53
53
|
type: NgModule,
|
|
54
54
|
args: [{
|
|
55
55
|
declarations: [INTERNAL_DIRECTIVES],
|
|
56
|
-
exports: [INTERNAL_DIRECTIVES, CommonModule, FormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule],
|
|
57
|
-
imports: [CommonModule, FormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule]
|
|
56
|
+
exports: [INTERNAL_DIRECTIVES, CommonModule, FormsModule, ReactiveFormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule],
|
|
57
|
+
imports: [CommonModule, FormsModule, ReactiveFormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule]
|
|
58
58
|
}]
|
|
59
59
|
}] });
|