@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
|
@@ -7,12 +7,12 @@ import { EventEmitter, Component, Input, Output, ViewChild, HostBinding, Directi
|
|
|
7
7
|
import * as i9 from '@progress/kendo-angular-common';
|
|
8
8
|
import { isDocumentAvailable, Keys, isChanged, hasObservers, KendoInput, anyChanged, guid as guid$1, ResizeSensorModule, EventsModule } from '@progress/kendo-angular-common';
|
|
9
9
|
import * as i12 from '@angular/forms';
|
|
10
|
-
import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
|
|
10
|
+
import { NgControl, NG_VALUE_ACCESSOR, FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
11
11
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
12
12
|
import { getter as getter$1, pointers, touchEnabled } from '@progress/kendo-common';
|
|
13
|
+
import { Subscription, merge, fromEvent, Subject, of, interval } from 'rxjs';
|
|
13
14
|
import * as i1 from '@progress/kendo-angular-l10n';
|
|
14
15
|
import { ComponentMessages, LocalizationService, L10N_PREFIX } from '@progress/kendo-angular-l10n';
|
|
15
|
-
import { merge, fromEvent, Subject, Subscription, of, interval } from 'rxjs';
|
|
16
16
|
import * as i2 from '@progress/kendo-angular-popup';
|
|
17
17
|
import { PopupModule } from '@progress/kendo-angular-popup';
|
|
18
18
|
export { PopupComponent } from '@progress/kendo-angular-popup';
|
|
@@ -29,7 +29,7 @@ const packageMetadata = {
|
|
|
29
29
|
name: '@progress/kendo-angular-dropdowns',
|
|
30
30
|
productName: 'Kendo UI for Angular',
|
|
31
31
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
32
|
-
publishDate:
|
|
32
|
+
publishDate: 1662551028,
|
|
33
33
|
version: '',
|
|
34
34
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
|
|
35
35
|
};
|
|
@@ -359,8 +359,9 @@ const getFillModeClass = (component, fillMode) => {
|
|
|
359
359
|
* @hidden
|
|
360
360
|
*/
|
|
361
361
|
class SearchBarComponent {
|
|
362
|
-
constructor(localization, renderer) {
|
|
362
|
+
constructor(localization, renderer, injector) {
|
|
363
363
|
this.localization = localization;
|
|
364
|
+
this.injector = injector;
|
|
364
365
|
this.valueChange = new EventEmitter();
|
|
365
366
|
this.onBlur = new EventEmitter();
|
|
366
367
|
this.onFocus = new EventEmitter();
|
|
@@ -370,9 +371,30 @@ class SearchBarComponent {
|
|
|
370
371
|
this._userInput = "";
|
|
371
372
|
this._previousValue = "";
|
|
372
373
|
this._placeholder = "";
|
|
374
|
+
this._isSuggestable = false;
|
|
375
|
+
this._isFilterable = false;
|
|
376
|
+
this.subs = new Subscription();
|
|
373
377
|
this.direction = localization.rtl ? 'rtl' : 'ltr';
|
|
374
378
|
this.renderer = renderer;
|
|
375
379
|
}
|
|
380
|
+
set isSuggestable(isSuggestable) {
|
|
381
|
+
this._isSuggestable = isSuggestable;
|
|
382
|
+
this.setAriaAutocomplete();
|
|
383
|
+
}
|
|
384
|
+
;
|
|
385
|
+
get isSuggestable() {
|
|
386
|
+
return this._isSuggestable;
|
|
387
|
+
}
|
|
388
|
+
;
|
|
389
|
+
set isFilterable(isFilterable) {
|
|
390
|
+
this._isFilterable = isFilterable;
|
|
391
|
+
this.setAriaAutocomplete();
|
|
392
|
+
}
|
|
393
|
+
;
|
|
394
|
+
get isFilterable() {
|
|
395
|
+
return this._isFilterable;
|
|
396
|
+
}
|
|
397
|
+
;
|
|
376
398
|
get userInput() {
|
|
377
399
|
return this._userInput;
|
|
378
400
|
}
|
|
@@ -393,8 +415,19 @@ class SearchBarComponent {
|
|
|
393
415
|
return this.role === 'combobox' ? this.popupOpen : null;
|
|
394
416
|
}
|
|
395
417
|
ngOnInit() {
|
|
396
|
-
this.
|
|
397
|
-
.changes.subscribe(({ rtl }) => this.direction = rtl ? 'rtl' : 'ltr');
|
|
418
|
+
this.subs.add(this.localization
|
|
419
|
+
.changes.subscribe(({ rtl }) => this.direction = rtl ? 'rtl' : 'ltr'));
|
|
420
|
+
}
|
|
421
|
+
ngAfterContentChecked() {
|
|
422
|
+
var _a;
|
|
423
|
+
const formControl = (_a = this.injector.get(NgControl, null)) === null || _a === void 0 ? void 0 : _a.control;
|
|
424
|
+
this.control = formControl;
|
|
425
|
+
if (formControl) {
|
|
426
|
+
this.subs.add(formControl.valueChanges.subscribe(() => {
|
|
427
|
+
this.control = formControl;
|
|
428
|
+
}));
|
|
429
|
+
}
|
|
430
|
+
this.setAriaInvalid();
|
|
398
431
|
}
|
|
399
432
|
ngOnChanges(changes) {
|
|
400
433
|
let previousUserInput;
|
|
@@ -426,9 +459,7 @@ class SearchBarComponent {
|
|
|
426
459
|
}
|
|
427
460
|
}
|
|
428
461
|
ngOnDestroy() {
|
|
429
|
-
|
|
430
|
-
this.localizationChangeSubscription.unsubscribe();
|
|
431
|
-
}
|
|
462
|
+
this.subs.unsubscribe();
|
|
432
463
|
}
|
|
433
464
|
writeInputValue(text) {
|
|
434
465
|
if (isDocumentAvailable()) {
|
|
@@ -445,6 +476,33 @@ class SearchBarComponent {
|
|
|
445
476
|
}
|
|
446
477
|
}
|
|
447
478
|
}
|
|
479
|
+
setAriaInvalid() {
|
|
480
|
+
if (this.control) {
|
|
481
|
+
if (this.control.invalid) {
|
|
482
|
+
this.renderer.setAttribute(this.input.nativeElement, 'aria-invalid', 'true');
|
|
483
|
+
}
|
|
484
|
+
else {
|
|
485
|
+
this.renderer.setAttribute(this.input.nativeElement, 'aria-invalid', 'false');
|
|
486
|
+
}
|
|
487
|
+
}
|
|
488
|
+
else {
|
|
489
|
+
this.renderer.removeAttribute(this.input.nativeElement, 'aria-invalid');
|
|
490
|
+
}
|
|
491
|
+
}
|
|
492
|
+
setAriaAutocomplete() {
|
|
493
|
+
if (this.isFilterable) {
|
|
494
|
+
this.renderer.setAttribute(this.input.nativeElement, 'aria-autocomplete', 'list');
|
|
495
|
+
}
|
|
496
|
+
if (this.isSuggestable) {
|
|
497
|
+
this.renderer.setAttribute(this.input.nativeElement, 'aria-autocomplete', 'inline');
|
|
498
|
+
}
|
|
499
|
+
if (this.isFilterable && this.isSuggestable) {
|
|
500
|
+
this.renderer.setAttribute(this.input.nativeElement, 'aria-autocomplete', 'both');
|
|
501
|
+
}
|
|
502
|
+
if (!this.isFilterable && !this.isSuggestable) {
|
|
503
|
+
this.renderer.removeAttribute(this.input.nativeElement, 'aria-autocomplete');
|
|
504
|
+
}
|
|
505
|
+
}
|
|
448
506
|
handleInput(event) {
|
|
449
507
|
const value = event.target.value;
|
|
450
508
|
if (value !== this.userInput) {
|
|
@@ -461,7 +519,7 @@ class SearchBarComponent {
|
|
|
461
519
|
handleKeydown(event) {
|
|
462
520
|
const keyCode = event.keyCode;
|
|
463
521
|
const keys = [Keys.ArrowUp, Keys.ArrowDown, Keys.ArrowLeft, Keys.ArrowRight, Keys.Enter,
|
|
464
|
-
Keys.Escape, Keys.Delete, Keys.Backspace, Keys.Home, Keys.End];
|
|
522
|
+
Keys.Escape, Keys.Delete, Keys.Backspace, Keys.Home, Keys.End, Keys.PageDown, Keys.PageUp];
|
|
465
523
|
if (keys.indexOf(keyCode) > -1) {
|
|
466
524
|
this.onNavigate.emit(event);
|
|
467
525
|
}
|
|
@@ -485,8 +543,8 @@ class SearchBarComponent {
|
|
|
485
543
|
this.renderer.setAttribute(input, 'size', size.toString());
|
|
486
544
|
}
|
|
487
545
|
}
|
|
488
|
-
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 });
|
|
489
|
-
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",
|
|
546
|
+
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 });
|
|
547
|
+
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: `
|
|
490
548
|
<input #input
|
|
491
549
|
autocomplete="off"
|
|
492
550
|
[id]="id"
|
|
@@ -504,14 +562,12 @@ SearchBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
|
|
|
504
562
|
[attr.tabIndex]="tabIndex"
|
|
505
563
|
[attr.dir]="direction"
|
|
506
564
|
[attr.role]="role"
|
|
507
|
-
[attr.aria-disabled]="disabled"
|
|
508
|
-
[attr.aria-readonly]="readonly"
|
|
509
565
|
aria-haspopup="listbox"
|
|
510
566
|
[attr.aria-expanded]="ariaExpanded"
|
|
511
|
-
[attr.aria-
|
|
567
|
+
[attr.aria-controls]="listId"
|
|
512
568
|
[attr.aria-describedby]="tagListId"
|
|
513
569
|
[attr.aria-activedescendant]="activeDescendant"
|
|
514
|
-
[attr.aria-
|
|
570
|
+
[attr.aria-busy]="isLoading"
|
|
515
571
|
/>
|
|
516
572
|
`, isInline: true, directives: [{ type: i9.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }] });
|
|
517
573
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SearchBarComponent, decorators: [{
|
|
@@ -536,18 +592,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
536
592
|
[attr.tabIndex]="tabIndex"
|
|
537
593
|
[attr.dir]="direction"
|
|
538
594
|
[attr.role]="role"
|
|
539
|
-
[attr.aria-disabled]="disabled"
|
|
540
|
-
[attr.aria-readonly]="readonly"
|
|
541
595
|
aria-haspopup="listbox"
|
|
542
596
|
[attr.aria-expanded]="ariaExpanded"
|
|
543
|
-
[attr.aria-
|
|
597
|
+
[attr.aria-controls]="listId"
|
|
544
598
|
[attr.aria-describedby]="tagListId"
|
|
545
599
|
[attr.aria-activedescendant]="activeDescendant"
|
|
546
|
-
[attr.aria-
|
|
600
|
+
[attr.aria-busy]="isLoading"
|
|
547
601
|
/>
|
|
548
602
|
`
|
|
549
603
|
}]
|
|
550
|
-
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.Renderer2 }]; }, propDecorators: { id: [{
|
|
604
|
+
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.Renderer2 }, { type: i0.Injector }]; }, propDecorators: { id: [{
|
|
551
605
|
type: Input
|
|
552
606
|
}], listId: [{
|
|
553
607
|
type: Input
|
|
@@ -555,8 +609,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
555
609
|
type: Input
|
|
556
610
|
}], activeDescendant: [{
|
|
557
611
|
type: Input
|
|
558
|
-
}], noDataLabel: [{
|
|
559
|
-
type: Input
|
|
560
612
|
}], disabled: [{
|
|
561
613
|
type: Input
|
|
562
614
|
}], readonly: [{
|
|
@@ -567,6 +619,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
567
619
|
type: Input
|
|
568
620
|
}], role: [{
|
|
569
621
|
type: Input
|
|
622
|
+
}], isLoading: [{
|
|
623
|
+
type: Input
|
|
624
|
+
}], isSuggestable: [{
|
|
625
|
+
type: Input
|
|
626
|
+
}], isFilterable: [{
|
|
627
|
+
type: Input
|
|
570
628
|
}], userInput: [{
|
|
571
629
|
type: Input
|
|
572
630
|
}], suggestedText: [{
|
|
@@ -925,6 +983,8 @@ var NavigationAction;
|
|
|
925
983
|
NavigationAction[NavigationAction["Down"] = 11] = "Down";
|
|
926
984
|
NavigationAction[NavigationAction["Left"] = 12] = "Left";
|
|
927
985
|
NavigationAction[NavigationAction["Right"] = 13] = "Right";
|
|
986
|
+
NavigationAction[NavigationAction["PageDown"] = 14] = "PageDown";
|
|
987
|
+
NavigationAction[NavigationAction["PageUp"] = 15] = "PageUp";
|
|
928
988
|
})(NavigationAction || (NavigationAction = {}));
|
|
929
989
|
|
|
930
990
|
/**
|
|
@@ -1228,6 +1288,8 @@ class NavigationService {
|
|
|
1228
1288
|
this.backspace = new EventEmitter();
|
|
1229
1289
|
this.home = new EventEmitter();
|
|
1230
1290
|
this.end = new EventEmitter();
|
|
1291
|
+
this.pagedown = new EventEmitter();
|
|
1292
|
+
this.pageup = new EventEmitter();
|
|
1231
1293
|
}
|
|
1232
1294
|
process(args) {
|
|
1233
1295
|
const keyCode = args.originalEvent.keyCode;
|
|
@@ -1279,6 +1341,12 @@ class NavigationService {
|
|
|
1279
1341
|
else if (keyCode === Keys.Backspace) {
|
|
1280
1342
|
action = NavigationAction.Backspace;
|
|
1281
1343
|
}
|
|
1344
|
+
else if (keyCode === Keys.PageDown) {
|
|
1345
|
+
action = NavigationAction.PageDown;
|
|
1346
|
+
}
|
|
1347
|
+
else if (keyCode === Keys.PageUp) {
|
|
1348
|
+
action = NavigationAction.PageUp;
|
|
1349
|
+
}
|
|
1282
1350
|
const eventData = new NavigationEvent(index, args.originalEvent);
|
|
1283
1351
|
if (action !== NavigationAction.Undefined) {
|
|
1284
1352
|
this[NavigationAction[action].toLowerCase()].emit(eventData);
|
|
@@ -1802,6 +1870,16 @@ class ListComponent {
|
|
|
1802
1870
|
this.scroll(items[flatIndex].element);
|
|
1803
1871
|
}
|
|
1804
1872
|
}
|
|
1873
|
+
scrollWithOnePage(action) {
|
|
1874
|
+
let content = this.content.nativeElement;
|
|
1875
|
+
const contentOffsetHeight = content.clientHeight;
|
|
1876
|
+
if (action === NavigationAction.PageDown) {
|
|
1877
|
+
content.scrollTop += contentOffsetHeight;
|
|
1878
|
+
}
|
|
1879
|
+
else if (action === NavigationAction.PageUp) {
|
|
1880
|
+
content.scrollTop -= contentOffsetHeight;
|
|
1881
|
+
}
|
|
1882
|
+
}
|
|
1805
1883
|
scrollToIndex(index) {
|
|
1806
1884
|
let content = this.content.nativeElement;
|
|
1807
1885
|
let contentScrollTop = content.scrollTop;
|
|
@@ -1841,6 +1919,9 @@ class ListComponent {
|
|
|
1841
1919
|
const hasVirtualScroll = isPresent(this.virtual) && this.hasVirtualScrollbar();
|
|
1842
1920
|
return hasVirtualScroll || this.list.nativeElement.scrollHeight > this.content.nativeElement.offsetHeight;
|
|
1843
1921
|
}
|
|
1922
|
+
isItemSelected(index) {
|
|
1923
|
+
return this.selectionService.isSelected(index) || null;
|
|
1924
|
+
}
|
|
1844
1925
|
/**
|
|
1845
1926
|
* Sets the list's content overflow (hides/shows scrollbar)
|
|
1846
1927
|
*/
|
|
@@ -1886,7 +1967,7 @@ class ListComponent {
|
|
|
1886
1967
|
}
|
|
1887
1968
|
}
|
|
1888
1969
|
ListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListComponent, deps: [{ token: DataService }, { token: i0.ElementRef }, { token: SelectionService }, { token: DisabledItemsService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
1889
|
-
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: `
|
|
1970
|
+
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: `
|
|
1890
1971
|
<div *ngIf="dataService.grouped"
|
|
1891
1972
|
[class]="listGroupStickyHeaderClass"
|
|
1892
1973
|
[ngStyle]="{
|
|
@@ -1911,6 +1992,8 @@ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
|
|
|
1911
1992
|
role="listbox"
|
|
1912
1993
|
[class]="listClass"
|
|
1913
1994
|
[attr.id]="id"
|
|
1995
|
+
[attr.aria-live]="ariaLive"
|
|
1996
|
+
[attr.aria-multiselectable]="isMultiselect"
|
|
1914
1997
|
[attr.aria-hidden]="!show">
|
|
1915
1998
|
<ng-template *ngIf="!dataService.grouped && show" ngFor let-dataItem let-itemIndex="index" [ngForOf]="data">
|
|
1916
1999
|
<li
|
|
@@ -1922,6 +2005,7 @@ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
|
|
|
1922
2005
|
[multipleSelection]="multipleSelection"
|
|
1923
2006
|
[attr.id]="optionPrefix + '-' + getValue(dataItem)"
|
|
1924
2007
|
[attr.tabIndex]="-1"
|
|
2008
|
+
[attr.aria-selected]="isItemSelected(itemIndex)"
|
|
1925
2009
|
[class]="listItemClass"
|
|
1926
2010
|
[ngClass]="{
|
|
1927
2011
|
'k-disabled': isDisabled(itemIndex),
|
|
@@ -1978,6 +2062,7 @@ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
|
|
|
1978
2062
|
[attr.absolute-index]="dataItem.index"
|
|
1979
2063
|
[attr.id]="optionPrefix + '-' + getValue(dataItem.value)"
|
|
1980
2064
|
[attr.tabIndex]="-1"
|
|
2065
|
+
[attr.aria-selected]="isItemSelected(dataItem.offsetIndex)"
|
|
1981
2066
|
[class]="listItemClass"
|
|
1982
2067
|
[ngClass]="{
|
|
1983
2068
|
'k-disabled': isDisabled(dataItem.offsetIndex),
|
|
@@ -2035,6 +2120,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
2035
2120
|
role="listbox"
|
|
2036
2121
|
[class]="listClass"
|
|
2037
2122
|
[attr.id]="id"
|
|
2123
|
+
[attr.aria-live]="ariaLive"
|
|
2124
|
+
[attr.aria-multiselectable]="isMultiselect"
|
|
2038
2125
|
[attr.aria-hidden]="!show">
|
|
2039
2126
|
<ng-template *ngIf="!dataService.grouped && show" ngFor let-dataItem let-itemIndex="index" [ngForOf]="data">
|
|
2040
2127
|
<li
|
|
@@ -2046,6 +2133,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
2046
2133
|
[multipleSelection]="multipleSelection"
|
|
2047
2134
|
[attr.id]="optionPrefix + '-' + getValue(dataItem)"
|
|
2048
2135
|
[attr.tabIndex]="-1"
|
|
2136
|
+
[attr.aria-selected]="isItemSelected(itemIndex)"
|
|
2049
2137
|
[class]="listItemClass"
|
|
2050
2138
|
[ngClass]="{
|
|
2051
2139
|
'k-disabled': isDisabled(itemIndex),
|
|
@@ -2102,6 +2190,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
2102
2190
|
[attr.absolute-index]="dataItem.index"
|
|
2103
2191
|
[attr.id]="optionPrefix + '-' + getValue(dataItem.value)"
|
|
2104
2192
|
[attr.tabIndex]="-1"
|
|
2193
|
+
[attr.aria-selected]="isItemSelected(dataItem.offsetIndex)"
|
|
2105
2194
|
[class]="listItemClass"
|
|
2106
2195
|
[ngClass]="{
|
|
2107
2196
|
'k-disabled': isDisabled(dataItem.offsetIndex),
|
|
@@ -2161,6 +2250,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
2161
2250
|
type: Input
|
|
2162
2251
|
}], checkboxes: [{
|
|
2163
2252
|
type: Input
|
|
2253
|
+
}], ariaLive: [{
|
|
2254
|
+
type: Input
|
|
2255
|
+
}], isMultiselect: [{
|
|
2256
|
+
type: Input
|
|
2164
2257
|
}], data: [{
|
|
2165
2258
|
type: Input
|
|
2166
2259
|
}], size: [{
|
|
@@ -2478,11 +2571,6 @@ class AutoCompleteComponent {
|
|
|
2478
2571
|
const dataItem = this.dataService.itemAt(this.selectionService.focused);
|
|
2479
2572
|
return this.optionPrefix + "-" + getter(dataItem, this.valueField);
|
|
2480
2573
|
}
|
|
2481
|
-
get noDataLabel() {
|
|
2482
|
-
if (this.data.length === 0) {
|
|
2483
|
-
return this.messageFor('noDataText');
|
|
2484
|
-
}
|
|
2485
|
-
}
|
|
2486
2574
|
/**
|
|
2487
2575
|
* Sets the data of the AutoComplete.
|
|
2488
2576
|
*
|
|
@@ -2824,6 +2912,8 @@ class AutoCompleteComponent {
|
|
|
2824
2912
|
action !== NavigationAction.End &&
|
|
2825
2913
|
action !== NavigationAction.Left &&
|
|
2826
2914
|
action !== NavigationAction.Right &&
|
|
2915
|
+
action !== NavigationAction.PageDown &&
|
|
2916
|
+
action !== NavigationAction.PageUp &&
|
|
2827
2917
|
((action === NavigationAction.Enter && this.isOpen) || action !== NavigationAction.Enter)) {
|
|
2828
2918
|
event.preventDefault();
|
|
2829
2919
|
}
|
|
@@ -2850,7 +2940,12 @@ class AutoCompleteComponent {
|
|
|
2850
2940
|
this.change(value);
|
|
2851
2941
|
}
|
|
2852
2942
|
handleEscape() {
|
|
2853
|
-
this.
|
|
2943
|
+
if (this.isOpen) {
|
|
2944
|
+
this.togglePopup(false);
|
|
2945
|
+
}
|
|
2946
|
+
else {
|
|
2947
|
+
this.value = '';
|
|
2948
|
+
}
|
|
2854
2949
|
this.selectionService.focused = -1;
|
|
2855
2950
|
this.suggestedText = null;
|
|
2856
2951
|
}
|
|
@@ -2949,8 +3044,14 @@ class AutoCompleteComponent {
|
|
|
2949
3044
|
this.focusSubscription = this.selectionService.onFocus.subscribe(this.handleItemFocus.bind(this));
|
|
2950
3045
|
this.navigationSubscription = merge(this.navigationService.up, this.navigationService.down).subscribe((event) => this.navigate(event.index));
|
|
2951
3046
|
this.closeSubscription = this.navigationService.close.subscribe(() => this.togglePopup(false));
|
|
3047
|
+
this.openSubscription = this.navigationService.open.subscribe(() => this.togglePopup(true));
|
|
2952
3048
|
this.enterSubscription = this.navigationService.enter.subscribe(this.handleEnter.bind(this));
|
|
2953
3049
|
this.escSubscription = this.navigationService.esc.subscribe(this.handleEscape.bind(this));
|
|
3050
|
+
this.scrollSubscription = merge(this.navigationService.pagedown, this.navigationService.pageup).subscribe((event) => {
|
|
3051
|
+
if (this.isOpen) {
|
|
3052
|
+
this.optionsList.scrollWithOnePage(NavigationAction[event.originalEvent.code]);
|
|
3053
|
+
}
|
|
3054
|
+
});
|
|
2954
3055
|
}
|
|
2955
3056
|
subscribeTouchEvents() {
|
|
2956
3057
|
if (!isDocumentAvailable() || !this.touchEnabled) {
|
|
@@ -2972,8 +3073,10 @@ class AutoCompleteComponent {
|
|
|
2972
3073
|
this.changeSubscription.unsubscribe();
|
|
2973
3074
|
this.navigationSubscription.unsubscribe();
|
|
2974
3075
|
this.closeSubscription.unsubscribe();
|
|
3076
|
+
this.openSubscription.unsubscribe();
|
|
2975
3077
|
this.enterSubscription.unsubscribe();
|
|
2976
3078
|
this.escSubscription.unsubscribe();
|
|
3079
|
+
this.scrollSubscription.unsubscribe();
|
|
2977
3080
|
this.valueChangeSubscription.unsubscribe();
|
|
2978
3081
|
this.focusSubscription.unsubscribe();
|
|
2979
3082
|
if (this.touchstartDisposeHandler) {
|
|
@@ -3020,6 +3123,11 @@ class AutoCompleteComponent {
|
|
|
3020
3123
|
popupWrapper.style.width = max;
|
|
3021
3124
|
popupWrapper.style.height = this.height;
|
|
3022
3125
|
popupWrapper.setAttribute("dir", this.direction);
|
|
3126
|
+
const listBox = popupWrapper.querySelector('ul.k-list-ul');
|
|
3127
|
+
const ariaLabel = this.searchbar.input.nativeElement.getAttribute('aria-labelledby');
|
|
3128
|
+
if (ariaLabel) {
|
|
3129
|
+
listBox.setAttribute('aria-labelledby', ariaLabel);
|
|
3130
|
+
}
|
|
3023
3131
|
this.popupRef.popupOpen.subscribe(() => {
|
|
3024
3132
|
this.cdr.detectChanges();
|
|
3025
3133
|
this.optionsList.scrollToItem(this.selectionService.focused);
|
|
@@ -3123,10 +3231,12 @@ AutoCompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
3123
3231
|
</ng-container>
|
|
3124
3232
|
<kendo-searchbar #searchbar
|
|
3125
3233
|
[role]="'combobox'"
|
|
3234
|
+
[isSuggestable]="suggest"
|
|
3235
|
+
[isFilterable]="filterable"
|
|
3236
|
+
[isLoading]="isLoading"
|
|
3126
3237
|
[id]="focusableId"
|
|
3127
3238
|
[listId]="listBoxId"
|
|
3128
3239
|
[activeDescendant]="activeDescendant"
|
|
3129
|
-
[noDataLabel]="noDataLabel"
|
|
3130
3240
|
[userInput]="text"
|
|
3131
3241
|
[suggestedText]="suggestion"
|
|
3132
3242
|
[disabled]="disabled"
|
|
@@ -3200,7 +3310,7 @@ AutoCompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
3200
3310
|
<kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
|
|
3201
3311
|
</ng-template>
|
|
3202
3312
|
<ng-container #container></ng-container>
|
|
3203
|
-
`, isInline: true, components: [{ type: SearchBarComponent, selector: "kendo-searchbar", inputs: ["id", "listId", "tagListId", "activeDescendant", "
|
|
3313
|
+
`, isInline: true, components: [{ type: 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: 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: 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: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }] });
|
|
3204
3314
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AutoCompleteComponent, decorators: [{
|
|
3205
3315
|
type: Component,
|
|
3206
3316
|
args: [{
|
|
@@ -3237,10 +3347,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
3237
3347
|
</ng-container>
|
|
3238
3348
|
<kendo-searchbar #searchbar
|
|
3239
3349
|
[role]="'combobox'"
|
|
3350
|
+
[isSuggestable]="suggest"
|
|
3351
|
+
[isFilterable]="filterable"
|
|
3352
|
+
[isLoading]="isLoading"
|
|
3240
3353
|
[id]="focusableId"
|
|
3241
3354
|
[listId]="listBoxId"
|
|
3242
3355
|
[activeDescendant]="activeDescendant"
|
|
3243
|
-
[noDataLabel]="noDataLabel"
|
|
3244
3356
|
[userInput]="text"
|
|
3245
3357
|
[suggestedText]="suggestion"
|
|
3246
3358
|
[disabled]="disabled"
|
|
@@ -3725,11 +3837,6 @@ class ComboBoxComponent {
|
|
|
3725
3837
|
const dataItem = this.dataService.itemAt(this.selectionService.focused);
|
|
3726
3838
|
return this.optionPrefix + "-" + (dataItem ? getter(dataItem, this.valueField) : "");
|
|
3727
3839
|
}
|
|
3728
|
-
get noDataLabel() {
|
|
3729
|
-
if (this.data.length === 0) {
|
|
3730
|
-
return this.messageFor('noDataText');
|
|
3731
|
-
}
|
|
3732
|
-
}
|
|
3733
3840
|
get appendTo() {
|
|
3734
3841
|
const { appendTo } = this.popupSettings;
|
|
3735
3842
|
if (!appendTo || appendTo === 'root') {
|
|
@@ -4063,6 +4170,11 @@ class ComboBoxComponent {
|
|
|
4063
4170
|
.subscribe((event) => this.navigate(event.index)));
|
|
4064
4171
|
this.subs.add(this.navigationService.open.subscribe(this.handleNavigationOpen.bind(this)));
|
|
4065
4172
|
this.subs.add(this.navigationService.close.subscribe(() => this.togglePopup(false)));
|
|
4173
|
+
this.subs.add(merge(this.navigationService.pagedown, this.navigationService.pageup).subscribe((event) => {
|
|
4174
|
+
if (this.isOpen) {
|
|
4175
|
+
this.optionsList.scrollWithOnePage(NavigationAction[event.originalEvent.code]);
|
|
4176
|
+
}
|
|
4177
|
+
}));
|
|
4066
4178
|
this.subs.add(this.navigationService.esc.subscribe(this.handleEscape.bind(this)));
|
|
4067
4179
|
this.subs.add(this.navigationService.enter.pipe(tap((event) => {
|
|
4068
4180
|
if (this.isOpen) {
|
|
@@ -4195,9 +4307,10 @@ class ComboBoxComponent {
|
|
|
4195
4307
|
* @hidden
|
|
4196
4308
|
*/
|
|
4197
4309
|
clearValue(event) {
|
|
4198
|
-
event.stopImmediatePropagation();
|
|
4199
|
-
|
|
4200
|
-
|
|
4310
|
+
event === null || event === void 0 ? void 0 : event.stopImmediatePropagation();
|
|
4311
|
+
if (event) {
|
|
4312
|
+
this.focus();
|
|
4313
|
+
}
|
|
4201
4314
|
this._previousDataItem = undefined;
|
|
4202
4315
|
this.selectionService.resetSelection([]);
|
|
4203
4316
|
this.clearValueSubject.next();
|
|
@@ -4424,6 +4537,8 @@ class ComboBoxComponent {
|
|
|
4424
4537
|
action !== NavigationAction.Right &&
|
|
4425
4538
|
action !== NavigationAction.Backspace &&
|
|
4426
4539
|
action !== NavigationAction.Delete &&
|
|
4540
|
+
action !== NavigationAction.PageDown &&
|
|
4541
|
+
action !== NavigationAction.PageUp &&
|
|
4427
4542
|
((action === NavigationAction.Enter && this.isOpen) || action !== NavigationAction.Enter)) {
|
|
4428
4543
|
event.preventDefault();
|
|
4429
4544
|
}
|
|
@@ -4490,7 +4605,7 @@ class ComboBoxComponent {
|
|
|
4490
4605
|
* @hidden
|
|
4491
4606
|
*/
|
|
4492
4607
|
handleEscape() {
|
|
4493
|
-
this.togglePopup(false);
|
|
4608
|
+
this.isOpen ? this.togglePopup(false) : this.clearValue();
|
|
4494
4609
|
// clear the focus only if the focused item is not selected
|
|
4495
4610
|
const hasSelected = this.selectionService.selected.length > 0;
|
|
4496
4611
|
if (!hasSelected) {
|
|
@@ -4639,6 +4754,11 @@ class ComboBoxComponent {
|
|
|
4639
4754
|
popupWrapper.style.width = max;
|
|
4640
4755
|
popupWrapper.style.height = this.popupHeight;
|
|
4641
4756
|
popupWrapper.setAttribute("dir", this.direction);
|
|
4757
|
+
const listBox = this.popupRef.popupElement.querySelector('ul.k-list-ul');
|
|
4758
|
+
const ariaLabel = this.searchbar.input.nativeElement.getAttribute('aria-labelledby');
|
|
4759
|
+
if (ariaLabel) {
|
|
4760
|
+
listBox.setAttribute('aria-labelledby', ariaLabel);
|
|
4761
|
+
}
|
|
4642
4762
|
this.popupRef.popupOpen.subscribe(() => {
|
|
4643
4763
|
this.cdr.detectChanges();
|
|
4644
4764
|
this.optionsList.scrollToItem(this.selectionService.focused);
|
|
@@ -4743,8 +4863,10 @@ ComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
|
|
|
4743
4863
|
[role]="'combobox'"
|
|
4744
4864
|
[id]="focusableId"
|
|
4745
4865
|
[listId]="listBoxId"
|
|
4866
|
+
[isLoading]="loading"
|
|
4867
|
+
[isSuggestable]="suggest"
|
|
4868
|
+
[isFilterable]="filterable"
|
|
4746
4869
|
[activeDescendant]="activeDescendant"
|
|
4747
|
-
[noDataLabel]="noDataLabel"
|
|
4748
4870
|
[userInput]="text"
|
|
4749
4871
|
[suggestedText]="getSuggestion()"
|
|
4750
4872
|
[disabled]="disabled"
|
|
@@ -4772,6 +4894,7 @@ ComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
|
|
|
4772
4894
|
</span>
|
|
4773
4895
|
<button
|
|
4774
4896
|
#select
|
|
4897
|
+
tabindex="-1"
|
|
4775
4898
|
unselectable="on"
|
|
4776
4899
|
type="button"
|
|
4777
4900
|
class="k-input-button k-button k-icon-button"
|
|
@@ -4831,7 +4954,7 @@ ComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
|
|
|
4831
4954
|
<kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
|
|
4832
4955
|
</ng-template>
|
|
4833
4956
|
<ng-container #container></ng-container>
|
|
4834
|
-
`, isInline: true, components: [{ type: SearchBarComponent, selector: "kendo-searchbar", inputs: ["id", "listId", "tagListId", "activeDescendant", "
|
|
4957
|
+
`, isInline: true, components: [{ type: 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: 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: 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: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }] });
|
|
4835
4958
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ComboBoxComponent, decorators: [{
|
|
4836
4959
|
type: Component,
|
|
4837
4960
|
args: [{
|
|
@@ -4871,8 +4994,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
4871
4994
|
[role]="'combobox'"
|
|
4872
4995
|
[id]="focusableId"
|
|
4873
4996
|
[listId]="listBoxId"
|
|
4997
|
+
[isLoading]="loading"
|
|
4998
|
+
[isSuggestable]="suggest"
|
|
4999
|
+
[isFilterable]="filterable"
|
|
4874
5000
|
[activeDescendant]="activeDescendant"
|
|
4875
|
-
[noDataLabel]="noDataLabel"
|
|
4876
5001
|
[userInput]="text"
|
|
4877
5002
|
[suggestedText]="getSuggestion()"
|
|
4878
5003
|
[disabled]="disabled"
|
|
@@ -4900,6 +5025,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
4900
5025
|
</span>
|
|
4901
5026
|
<button
|
|
4902
5027
|
#select
|
|
5028
|
+
tabindex="-1"
|
|
4903
5029
|
unselectable="on"
|
|
4904
5030
|
type="button"
|
|
4905
5031
|
class="k-input-button k-button k-icon-button"
|
|
@@ -5188,7 +5314,7 @@ const DEFAULT_FILL_MODE$3 = 'solid';
|
|
|
5188
5314
|
* ```
|
|
5189
5315
|
*/
|
|
5190
5316
|
class DropDownListComponent {
|
|
5191
|
-
constructor(wrapper, localization, popupService, selectionService, navigationService, disabledItemsService, dataService, _zone, renderer, cdr, touchEnabled) {
|
|
5317
|
+
constructor(wrapper, localization, popupService, selectionService, navigationService, disabledItemsService, dataService, _zone, renderer, cdr, touchEnabled, injector) {
|
|
5192
5318
|
this.wrapper = wrapper;
|
|
5193
5319
|
this.localization = localization;
|
|
5194
5320
|
this.popupService = popupService;
|
|
@@ -5200,6 +5326,7 @@ class DropDownListComponent {
|
|
|
5200
5326
|
this.renderer = renderer;
|
|
5201
5327
|
this.cdr = cdr;
|
|
5202
5328
|
this.touchEnabled = touchEnabled;
|
|
5329
|
+
this.injector = injector;
|
|
5203
5330
|
/**
|
|
5204
5331
|
* Sets the height of the options list. By default, `listHeight` is 200px.
|
|
5205
5332
|
*
|
|
@@ -5207,10 +5334,6 @@ class DropDownListComponent {
|
|
|
5207
5334
|
* > To set the height of the popup container, use `popupSettings.height`.
|
|
5208
5335
|
*/
|
|
5209
5336
|
this.listHeight = 200;
|
|
5210
|
-
/**
|
|
5211
|
-
* Sets the disabled state of the component.
|
|
5212
|
-
*/
|
|
5213
|
-
this.disabled = false;
|
|
5214
5337
|
/**
|
|
5215
5338
|
* Sets the read-only state of the component.
|
|
5216
5339
|
*/
|
|
@@ -5282,11 +5405,13 @@ class DropDownListComponent {
|
|
|
5282
5405
|
* @hidden
|
|
5283
5406
|
*/
|
|
5284
5407
|
this.focusableId = `k-${guid()}`;
|
|
5285
|
-
this.role = '
|
|
5408
|
+
this.role = 'combobox';
|
|
5409
|
+
this.haspopup = 'listbox';
|
|
5286
5410
|
this.groupIndices = [];
|
|
5287
5411
|
this.listBoxId = guid();
|
|
5288
5412
|
this.optionPrefix = guid();
|
|
5289
5413
|
this.filterText = "";
|
|
5414
|
+
this.subs = new Subscription();
|
|
5290
5415
|
this._isFocused = false;
|
|
5291
5416
|
this.onTouchedCallback = (_) => { };
|
|
5292
5417
|
this.onChangeCallback = (_) => { };
|
|
@@ -5296,7 +5421,6 @@ class DropDownListComponent {
|
|
|
5296
5421
|
this.filterBlurred = new EventEmitter();
|
|
5297
5422
|
this.hostElementFocused = new EventEmitter();
|
|
5298
5423
|
this.hostElementBlurred = new EventEmitter();
|
|
5299
|
-
this.selectionSubscription = new Subscription();
|
|
5300
5424
|
this._open = false;
|
|
5301
5425
|
this._popupSettings = { animate: true };
|
|
5302
5426
|
this._size = 'medium';
|
|
@@ -5332,7 +5456,7 @@ class DropDownListComponent {
|
|
|
5332
5456
|
get ariaExpanded() {
|
|
5333
5457
|
return this.isOpen;
|
|
5334
5458
|
}
|
|
5335
|
-
get
|
|
5459
|
+
get ariaControls() {
|
|
5336
5460
|
if (!this.isOpen) {
|
|
5337
5461
|
return;
|
|
5338
5462
|
}
|
|
@@ -5344,11 +5468,6 @@ class DropDownListComponent {
|
|
|
5344
5468
|
}
|
|
5345
5469
|
return this.optionPrefix + "-" + getter(this.dataItem, this.valueField);
|
|
5346
5470
|
}
|
|
5347
|
-
get noDataLabel() {
|
|
5348
|
-
if (this.dataService.itemsCount === 0) {
|
|
5349
|
-
return this.messageFor('noDataText');
|
|
5350
|
-
}
|
|
5351
|
-
}
|
|
5352
5471
|
get appendTo() {
|
|
5353
5472
|
const { appendTo } = this.popupSettings;
|
|
5354
5473
|
if (!appendTo || appendTo === 'root') {
|
|
@@ -5356,6 +5475,12 @@ class DropDownListComponent {
|
|
|
5356
5475
|
}
|
|
5357
5476
|
return appendTo === 'component' ? this.container : appendTo;
|
|
5358
5477
|
}
|
|
5478
|
+
/**
|
|
5479
|
+
* @hidden
|
|
5480
|
+
*/
|
|
5481
|
+
get ariaLive() {
|
|
5482
|
+
return this.filterable ? 'polite' : 'off';
|
|
5483
|
+
}
|
|
5359
5484
|
/**
|
|
5360
5485
|
* Sets the data of the DropDownList.
|
|
5361
5486
|
*
|
|
@@ -5564,9 +5689,12 @@ class DropDownListComponent {
|
|
|
5564
5689
|
popupWrapper.style.width = max;
|
|
5565
5690
|
}
|
|
5566
5691
|
}
|
|
5567
|
-
get
|
|
5692
|
+
get isDisabledClass() {
|
|
5568
5693
|
return this.disabled;
|
|
5569
5694
|
}
|
|
5695
|
+
get isDisabledAttribute() {
|
|
5696
|
+
return this.disabled ? '' : null;
|
|
5697
|
+
}
|
|
5570
5698
|
get isLoading() {
|
|
5571
5699
|
return this.loading;
|
|
5572
5700
|
}
|
|
@@ -5576,21 +5704,28 @@ class DropDownListComponent {
|
|
|
5576
5704
|
get hostTabIndex() {
|
|
5577
5705
|
return this.widgetTabIndex;
|
|
5578
5706
|
}
|
|
5579
|
-
get
|
|
5707
|
+
get readonlyClass() {
|
|
5580
5708
|
return this.readonly;
|
|
5581
5709
|
}
|
|
5710
|
+
get readonlyAttr() {
|
|
5711
|
+
return this.readonly ? '' : null;
|
|
5712
|
+
}
|
|
5713
|
+
get isBusy() {
|
|
5714
|
+
return this.isLoading;
|
|
5715
|
+
}
|
|
5582
5716
|
get isAriaExpanded() {
|
|
5583
5717
|
return this.ariaExpanded;
|
|
5584
5718
|
}
|
|
5585
|
-
get
|
|
5586
|
-
return this.
|
|
5719
|
+
get hostAriaControls() {
|
|
5720
|
+
return this.ariaControls;
|
|
5721
|
+
}
|
|
5722
|
+
get hostAriaInvalid() {
|
|
5723
|
+
var _a;
|
|
5724
|
+
return this.formControl ? (_a = this.formControl) === null || _a === void 0 ? void 0 : _a.invalid.toString() : null;
|
|
5587
5725
|
}
|
|
5588
5726
|
get hostAriaActivedescendant() {
|
|
5589
5727
|
return this.ariaActivedescendant;
|
|
5590
5728
|
}
|
|
5591
|
-
get hostNoDataLabel() {
|
|
5592
|
-
return this.noDataLabel;
|
|
5593
|
-
}
|
|
5594
5729
|
/**
|
|
5595
5730
|
* @hidden
|
|
5596
5731
|
*/
|
|
@@ -5628,6 +5763,8 @@ class DropDownListComponent {
|
|
|
5628
5763
|
action !== NavigationAction.Tab &&
|
|
5629
5764
|
action !== NavigationAction.Backspace &&
|
|
5630
5765
|
action !== NavigationAction.Delete &&
|
|
5766
|
+
action !== NavigationAction.PageDown &&
|
|
5767
|
+
action !== NavigationAction.PageUp &&
|
|
5631
5768
|
!(leftRightKeys && this.filterable) &&
|
|
5632
5769
|
action !== NavigationAction.Enter //enter when popup is opened is handled before `handleEnter`
|
|
5633
5770
|
) {
|
|
@@ -5660,11 +5797,11 @@ class DropDownListComponent {
|
|
|
5660
5797
|
}
|
|
5661
5798
|
ngOnInit() {
|
|
5662
5799
|
this.renderer.removeAttribute(this.wrapper.nativeElement, "tabindex");
|
|
5663
|
-
this.
|
|
5800
|
+
this.subs.add(this.localization
|
|
5664
5801
|
.changes.subscribe(({ rtl }) => {
|
|
5665
5802
|
this.direction = rtl ? 'rtl' : 'ltr';
|
|
5666
5803
|
this.cdr.detectChanges();
|
|
5667
|
-
});
|
|
5804
|
+
}));
|
|
5668
5805
|
this.assignAriaDescribedBy();
|
|
5669
5806
|
this.setComponentClasses();
|
|
5670
5807
|
}
|
|
@@ -5687,9 +5824,10 @@ class DropDownListComponent {
|
|
|
5687
5824
|
*/
|
|
5688
5825
|
ngOnDestroy() {
|
|
5689
5826
|
this.destroyPopup();
|
|
5690
|
-
this.
|
|
5691
|
-
|
|
5692
|
-
|
|
5827
|
+
this.subs.unsubscribe();
|
|
5828
|
+
this.unSubscribeFocusEvents();
|
|
5829
|
+
if (this.touchstartDisposeHandler) {
|
|
5830
|
+
this.touchstartDisposeHandler();
|
|
5693
5831
|
}
|
|
5694
5832
|
}
|
|
5695
5833
|
/**
|
|
@@ -5714,6 +5852,13 @@ class DropDownListComponent {
|
|
|
5714
5852
|
ngAfterContentChecked() {
|
|
5715
5853
|
this.verifySettings();
|
|
5716
5854
|
}
|
|
5855
|
+
/**
|
|
5856
|
+
* @hidden
|
|
5857
|
+
*/
|
|
5858
|
+
get formControl() {
|
|
5859
|
+
const ngControl = this.injector.get(NgControl, null);
|
|
5860
|
+
return (ngControl === null || ngControl === void 0 ? void 0 : ngControl.control) || null;
|
|
5861
|
+
}
|
|
5717
5862
|
/**
|
|
5718
5863
|
* Focuses a specific item of the DropDownList based on a provided index.
|
|
5719
5864
|
* If there is a default item it is positioned at index -1.
|
|
@@ -5743,6 +5888,7 @@ class DropDownListComponent {
|
|
|
5743
5888
|
blur() {
|
|
5744
5889
|
if (!this.disabled) {
|
|
5745
5890
|
this.wrapper.nativeElement.blur();
|
|
5891
|
+
this.cdr.detectChanges();
|
|
5746
5892
|
}
|
|
5747
5893
|
}
|
|
5748
5894
|
/**
|
|
@@ -5914,16 +6060,21 @@ class DropDownListComponent {
|
|
|
5914
6060
|
popupWrapper.style.width = max;
|
|
5915
6061
|
popupWrapper.style.height = this.height;
|
|
5916
6062
|
popupWrapper.setAttribute("dir", this.direction);
|
|
5917
|
-
|
|
6063
|
+
const listBox = popupWrapper.querySelector('ul.k-list-ul');
|
|
6064
|
+
const ariaLabel = this.wrapper.nativeElement.getAttribute('aria-labelledby');
|
|
6065
|
+
if (ariaLabel) {
|
|
6066
|
+
listBox.setAttribute('aria-labelledby', ariaLabel);
|
|
6067
|
+
}
|
|
6068
|
+
this.subs.add(this.popupRef.popupOpen.subscribe(() => {
|
|
5918
6069
|
this.cdr.detectChanges();
|
|
5919
6070
|
this.optionsList.scrollToItem(this.selectionService.focused);
|
|
5920
6071
|
this.opened.emit();
|
|
5921
|
-
});
|
|
5922
|
-
this.popupRef.popupClose.subscribe(() => {
|
|
6072
|
+
}));
|
|
6073
|
+
this.subs.add(this.popupRef.popupClose.subscribe(() => {
|
|
5923
6074
|
this.closed.emit();
|
|
5924
|
-
});
|
|
6075
|
+
}));
|
|
5925
6076
|
if (!this.filterable) {
|
|
5926
|
-
this.popupRef.popupAnchorViewportLeave.subscribe(() => this.togglePopup(false));
|
|
6077
|
+
this.subs.add(this.popupRef.popupAnchorViewportLeave.subscribe(() => this.togglePopup(false)));
|
|
5927
6078
|
}
|
|
5928
6079
|
}
|
|
5929
6080
|
destroyPopup() {
|
|
@@ -5962,10 +6113,10 @@ class DropDownListComponent {
|
|
|
5962
6113
|
return;
|
|
5963
6114
|
}
|
|
5964
6115
|
// Item selection when the popup is open.
|
|
5965
|
-
this.
|
|
6116
|
+
this.subs.add(this.selectionService.onSelect.pipe(filter(_ => this.isOpen), map(this.itemFromEvent.bind(this)))
|
|
5966
6117
|
.subscribe(this.onSelectionChange.bind(this)));
|
|
5967
6118
|
// Item selection when the popup is closed | clicked | enter, and so on.
|
|
5968
|
-
this.
|
|
6119
|
+
this.subs.add(merge(this.selectionService.onSelect.pipe(filter(_ => !this.isOpen)), this.selectionService.onChange).pipe(map(this.itemFromEvent.bind(this)), tap(_ => this.togglePopup(false)))
|
|
5969
6120
|
.subscribe(({ dataItem, value: newValue, newSelection }) => {
|
|
5970
6121
|
if (newSelection) {
|
|
5971
6122
|
this.onSelectionChange({ dataItem });
|
|
@@ -5983,27 +6134,31 @@ class DropDownListComponent {
|
|
|
5983
6134
|
}
|
|
5984
6135
|
this.clearFilter();
|
|
5985
6136
|
}));
|
|
5986
|
-
this.
|
|
6137
|
+
this.subs.add(merge(this.navigationService.up, this.navigationService.down, this.navigationService.left.pipe(skipWhile(() => this.filterable)), this.navigationService.right.pipe(skipWhile(() => this.filterable)), this.navigationService.home, this.navigationService.end)
|
|
5987
6138
|
.pipe(filter((event) => !isNaN(event.index)))
|
|
5988
|
-
.subscribe((event) => this.selectionService.select(event.index));
|
|
5989
|
-
this.
|
|
5990
|
-
|
|
6139
|
+
.subscribe((event) => this.selectionService.select(event.index)));
|
|
6140
|
+
this.subs.add(merge(this.navigationService.pagedown, this.navigationService.pageup).subscribe((event) => {
|
|
6141
|
+
if (this.isOpen) {
|
|
6142
|
+
this.optionsList.scrollWithOnePage(NavigationAction[event.originalEvent.code]);
|
|
6143
|
+
}
|
|
6144
|
+
}));
|
|
6145
|
+
this.subs.add(this.navigationService.open.subscribe(() => this.togglePopup(true)));
|
|
6146
|
+
this.subs.add(this.navigationService.close.subscribe(() => {
|
|
5991
6147
|
this.togglePopup(false);
|
|
5992
6148
|
this.focus();
|
|
5993
|
-
});
|
|
5994
|
-
this.
|
|
6149
|
+
}));
|
|
6150
|
+
this.subs.add(this.navigationService.enter
|
|
5995
6151
|
.pipe(tap((event) => event.originalEvent.preventDefault()))
|
|
5996
|
-
.subscribe(this.handleEnter.bind(this));
|
|
5997
|
-
this.
|
|
5998
|
-
.subscribe(this.handleEscape.bind(this));
|
|
5999
|
-
this.
|
|
6152
|
+
.subscribe(this.handleEnter.bind(this)));
|
|
6153
|
+
this.subs.add(this.navigationService.esc
|
|
6154
|
+
.subscribe(this.handleEscape.bind(this)));
|
|
6155
|
+
this.subs.add(this.filterBlurred.pipe(concatMap(() => interval(10).pipe(take(1), takeUntil(this.hostElementFocused))))
|
|
6000
6156
|
.subscribe(() => {
|
|
6001
6157
|
this.hostElementBlurred.emit();
|
|
6002
|
-
});
|
|
6158
|
+
}));
|
|
6003
6159
|
this._zone.runOutsideAngular(() => {
|
|
6004
|
-
this.
|
|
6005
|
-
|
|
6006
|
-
.subscribe(() => this.componentBlur());
|
|
6160
|
+
this.subs.add(merge(this.hostElementBlurred.pipe(concatMap(() => interval(10).pipe(take(1), takeUntil(this.filterFocused)))), this.navigationService.tab).pipe(tap(event => event instanceof NavigationEvent && this.focus()), filter(() => this.isFocused))
|
|
6161
|
+
.subscribe(() => this.componentBlur()));
|
|
6007
6162
|
});
|
|
6008
6163
|
}
|
|
6009
6164
|
subscribeTouchEvents() {
|
|
@@ -6043,25 +6198,6 @@ class DropDownListComponent {
|
|
|
6043
6198
|
document.removeEventListener('blur', this.blurComponent, useCapture);
|
|
6044
6199
|
}
|
|
6045
6200
|
}
|
|
6046
|
-
unsubscribeEvents() {
|
|
6047
|
-
if (!isDocumentAvailable()) {
|
|
6048
|
-
return;
|
|
6049
|
-
}
|
|
6050
|
-
this.navigationSubscription.unsubscribe();
|
|
6051
|
-
this.openSubscription.unsubscribe();
|
|
6052
|
-
this.closeSubscription.unsubscribe();
|
|
6053
|
-
this.enterSubscription.unsubscribe();
|
|
6054
|
-
this.escSubscription.unsubscribe();
|
|
6055
|
-
this.componentBlurredSubscription.unsubscribe();
|
|
6056
|
-
this.filterBlurredSubscription.unsubscribe();
|
|
6057
|
-
this.unSubscribeFocusEvents();
|
|
6058
|
-
if (this.touchstartDisposeHandler) {
|
|
6059
|
-
this.touchstartDisposeHandler();
|
|
6060
|
-
}
|
|
6061
|
-
if (this.selectionSubscription) {
|
|
6062
|
-
this.selectionSubscription.unsubscribe();
|
|
6063
|
-
}
|
|
6064
|
-
}
|
|
6065
6201
|
itemFromEvent(event) {
|
|
6066
6202
|
const index = event.indices[0];
|
|
6067
6203
|
let dataItem = this.dataService.itemAt(index);
|
|
@@ -6331,8 +6467,8 @@ class DropDownListComponent {
|
|
|
6331
6467
|
}
|
|
6332
6468
|
}
|
|
6333
6469
|
}
|
|
6334
|
-
DropDownListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DropDownListComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2.PopupService }, { token: SelectionService }, { token: NavigationService }, { token: DisabledItemsService }, { token: DataService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: TOUCH_ENABLED, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
6335
|
-
DropDownListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: DropDownListComponent, selector: "kendo-dropdownlist", inputs: { 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", "focusableId"] }, outputs: { valueChange: "valueChange", filterChange: "filterChange", selectionChange: "selectionChange", open: "open", opened: "opened", close: "close", closed: "closed", onFocus: "focus", onBlur: "blur" }, host: { listeners: { "keydown": "keydown($event)", "keypress": "keypress($event)", "click": "click($event)" }, properties: { "class.k-dropdownlist": "this.hostClasses", "class.k-picker": "this.hostClasses", "class.k-disabled": "this.
|
|
6470
|
+
DropDownListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DropDownListComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2.PopupService }, { token: SelectionService }, { token: NavigationService }, { token: DisabledItemsService }, { token: DataService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: TOUCH_ENABLED, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
6471
|
+
DropDownListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: DropDownListComponent, selector: "kendo-dropdownlist", inputs: { 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", "focusableId"] }, outputs: { valueChange: "valueChange", filterChange: "filterChange", selectionChange: "selectionChange", open: "open", opened: "opened", close: "close", closed: "closed", onFocus: "focus", onBlur: "blur" }, host: { listeners: { "keydown": "keydown($event)", "keypress": "keypress($event)", "click": "click($event)" }, properties: { "class.k-dropdownlist": "this.hostClasses", "class.k-picker": "this.hostClasses", "class.k-disabled": "this.isDisabledClass", "attr.disabled": "this.isDisabledAttribute", "class.k-loading": "this.isLoading", "attr.id": "this.focusableId", "attr.dir": "this.dir", "attr.tabindex": "this.hostTabIndex", "attr.readonly": "this.readonlyAttr", "attr.aria-busy": "this.isBusy", "attr.role": "this.role", "attr.aria-haspopup": "this.haspopup", "attr.aria-expanded": "this.isAriaExpanded", "attr.aria-controls": "this.hostAriaControls", "attr.aria-invalid": "this.hostAriaInvalid", "attr.aria-activedescendant": "this.hostAriaActivedescendant" } }, providers: [
|
|
6336
6472
|
DROPDOWNLIST_VALUE_ACCESSOR,
|
|
6337
6473
|
DataService,
|
|
6338
6474
|
SelectionService,
|
|
@@ -6358,7 +6494,7 @@ DropDownListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
6358
6494
|
selectButtonText="Select"
|
|
6359
6495
|
>
|
|
6360
6496
|
</ng-container>
|
|
6361
|
-
<span class="k-input-inner" unselectable="on"
|
|
6497
|
+
<span class="k-input-inner" unselectable="on" [id]="valueLabelId">
|
|
6362
6498
|
<span class="k-input-value-text">
|
|
6363
6499
|
<ng-template *ngIf="valueTemplate"
|
|
6364
6500
|
[templateContext]="{
|
|
@@ -6397,9 +6533,11 @@ DropDownListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
6397
6533
|
>
|
|
6398
6534
|
<span class="k-input-icon k-icon k-i-search" unselectable="on"></span>
|
|
6399
6535
|
<input
|
|
6400
|
-
|
|
6536
|
+
role="searchbox"
|
|
6537
|
+
aria-autocomplete="list"
|
|
6538
|
+
aria-haspopup="listbox"
|
|
6539
|
+
[attr.aria-controls]="ariaControls"
|
|
6401
6540
|
[attr.aria-activedescendant]="ariaActivedescendant"
|
|
6402
|
-
[attr.aria-label]="noDataLabel"
|
|
6403
6541
|
tabindex="-1"
|
|
6404
6542
|
[filterInput]="isFocused && !touchEnabled"
|
|
6405
6543
|
[dir]="direction"
|
|
@@ -6460,6 +6598,7 @@ DropDownListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
6460
6598
|
[height]="listHeight"
|
|
6461
6599
|
[show]="isOpen"
|
|
6462
6600
|
[virtual]="virtual"
|
|
6601
|
+
[ariaLive]="ariaLive"
|
|
6463
6602
|
(pageChange)="pageChange($event)"
|
|
6464
6603
|
>
|
|
6465
6604
|
</kendo-list>
|
|
@@ -6485,7 +6624,7 @@ DropDownListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
6485
6624
|
<kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
|
|
6486
6625
|
</ng-template>
|
|
6487
6626
|
<ng-container #container></ng-container>
|
|
6488
|
-
`, isInline: true, components: [{ type: ListComponent, selector: "kendo-list", inputs: ["selected", "focused", "textField", "valueField", "height", "template", "groupTemplate", "fixedGroupTemplate", "show", "id", "optionPrefix", "multipleSelection", "virtual", "type", "checkboxes", "data", "size", "rounded"], outputs: ["onClick", "pageChange", "listResize"] }, { type: i9.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], directives: [{ type: 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: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { type: i11.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i9.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i12.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: FilterInputDirective, selector: "[filterInput]", inputs: ["filterInput"] }, { type: i12.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i12.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: SelectableDirective, selector: "[kendoDropDownsSelectable]", inputs: ["index", "checkboxes", "height", "multipleSelection"] }] });
|
|
6627
|
+
`, isInline: true, components: [{ type: 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: 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: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { type: i11.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i9.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i12.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: FilterInputDirective, selector: "[filterInput]", inputs: ["filterInput"] }, { type: i12.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i12.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: SelectableDirective, selector: "[kendoDropDownsSelectable]", inputs: ["index", "checkboxes", "height", "multipleSelection"] }] });
|
|
6489
6628
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DropDownListComponent, decorators: [{
|
|
6490
6629
|
type: Component,
|
|
6491
6630
|
args: [{
|
|
@@ -6518,7 +6657,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
6518
6657
|
selectButtonText="Select"
|
|
6519
6658
|
>
|
|
6520
6659
|
</ng-container>
|
|
6521
|
-
<span class="k-input-inner" unselectable="on"
|
|
6660
|
+
<span class="k-input-inner" unselectable="on" [id]="valueLabelId">
|
|
6522
6661
|
<span class="k-input-value-text">
|
|
6523
6662
|
<ng-template *ngIf="valueTemplate"
|
|
6524
6663
|
[templateContext]="{
|
|
@@ -6557,9 +6696,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
6557
6696
|
>
|
|
6558
6697
|
<span class="k-input-icon k-icon k-i-search" unselectable="on"></span>
|
|
6559
6698
|
<input
|
|
6560
|
-
|
|
6699
|
+
role="searchbox"
|
|
6700
|
+
aria-autocomplete="list"
|
|
6701
|
+
aria-haspopup="listbox"
|
|
6702
|
+
[attr.aria-controls]="ariaControls"
|
|
6561
6703
|
[attr.aria-activedescendant]="ariaActivedescendant"
|
|
6562
|
-
[attr.aria-label]="noDataLabel"
|
|
6563
6704
|
tabindex="-1"
|
|
6564
6705
|
[filterInput]="isFocused && !touchEnabled"
|
|
6565
6706
|
[dir]="direction"
|
|
@@ -6620,6 +6761,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
6620
6761
|
[height]="listHeight"
|
|
6621
6762
|
[show]="isOpen"
|
|
6622
6763
|
[virtual]="virtual"
|
|
6764
|
+
[ariaLive]="ariaLive"
|
|
6623
6765
|
(pageChange)="pageChange($event)"
|
|
6624
6766
|
>
|
|
6625
6767
|
</kendo-list>
|
|
@@ -6652,7 +6794,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
6652
6794
|
}, {
|
|
6653
6795
|
type: Inject,
|
|
6654
6796
|
args: [TOUCH_ENABLED]
|
|
6655
|
-
}] }]; }, propDecorators: { iconClass: [{
|
|
6797
|
+
}] }, { type: i0.Injector }]; }, propDecorators: { iconClass: [{
|
|
6656
6798
|
type: Input
|
|
6657
6799
|
}], loading: [{
|
|
6658
6800
|
type: Input
|
|
@@ -6753,12 +6895,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
6753
6895
|
}, {
|
|
6754
6896
|
type: HostBinding,
|
|
6755
6897
|
args: ['class.k-picker']
|
|
6756
|
-
}],
|
|
6898
|
+
}], isDisabledClass: [{
|
|
6757
6899
|
type: HostBinding,
|
|
6758
6900
|
args: ['class.k-disabled']
|
|
6759
|
-
}, {
|
|
6901
|
+
}], isDisabledAttribute: [{
|
|
6760
6902
|
type: HostBinding,
|
|
6761
|
-
args: ['attr.
|
|
6903
|
+
args: ['attr.disabled']
|
|
6762
6904
|
}], isLoading: [{
|
|
6763
6905
|
type: HostBinding,
|
|
6764
6906
|
args: ['class.k-loading']
|
|
@@ -6774,30 +6916,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
6774
6916
|
}], hostTabIndex: [{
|
|
6775
6917
|
type: HostBinding,
|
|
6776
6918
|
args: ['attr.tabindex']
|
|
6777
|
-
}],
|
|
6919
|
+
}], readonlyClass: [{
|
|
6778
6920
|
type: HostBinding,
|
|
6779
6921
|
args: ['attr.readonly']
|
|
6780
|
-
}, {
|
|
6922
|
+
}], readonlyAttr: [{
|
|
6781
6923
|
type: HostBinding,
|
|
6782
|
-
args: ['attr.
|
|
6924
|
+
args: ['attr.readonly']
|
|
6925
|
+
}], isBusy: [{
|
|
6926
|
+
type: HostBinding,
|
|
6927
|
+
args: ['attr.aria-busy']
|
|
6783
6928
|
}], role: [{
|
|
6784
6929
|
type: HostBinding,
|
|
6785
6930
|
args: ['attr.role']
|
|
6786
|
-
}, {
|
|
6931
|
+
}], haspopup: [{
|
|
6787
6932
|
type: HostBinding,
|
|
6788
6933
|
args: ['attr.aria-haspopup']
|
|
6789
6934
|
}], isAriaExpanded: [{
|
|
6790
6935
|
type: HostBinding,
|
|
6791
6936
|
args: ['attr.aria-expanded']
|
|
6792
|
-
}],
|
|
6937
|
+
}], hostAriaControls: [{
|
|
6793
6938
|
type: HostBinding,
|
|
6794
|
-
args: ['attr.aria-
|
|
6939
|
+
args: ['attr.aria-controls']
|
|
6940
|
+
}], hostAriaInvalid: [{
|
|
6941
|
+
type: HostBinding,
|
|
6942
|
+
args: ['attr.aria-invalid']
|
|
6795
6943
|
}], hostAriaActivedescendant: [{
|
|
6796
6944
|
type: HostBinding,
|
|
6797
6945
|
args: ['attr.aria-activedescendant']
|
|
6798
|
-
}], hostNoDataLabel: [{
|
|
6799
|
-
type: HostBinding,
|
|
6800
|
-
args: ['attr.aria-label']
|
|
6801
6946
|
}], keydown: [{
|
|
6802
6947
|
type: HostListener,
|
|
6803
6948
|
args: ['keydown', ['$event']]
|
|
@@ -7395,7 +7540,6 @@ class MultiSelectComponent {
|
|
|
7395
7540
|
*/
|
|
7396
7541
|
this.removeTag = new EventEmitter();
|
|
7397
7542
|
this.hostClasses = true;
|
|
7398
|
-
this.role = 'combobox';
|
|
7399
7543
|
this.initialized = false;
|
|
7400
7544
|
this._size = 'medium';
|
|
7401
7545
|
this._rounded = 'medium';
|
|
@@ -7708,9 +7852,6 @@ class MultiSelectComponent {
|
|
|
7708
7852
|
get isLoading() {
|
|
7709
7853
|
return this.loading;
|
|
7710
7854
|
}
|
|
7711
|
-
get isAriaExpanded() {
|
|
7712
|
-
return this.isOpen;
|
|
7713
|
-
}
|
|
7714
7855
|
/**
|
|
7715
7856
|
* @hidden
|
|
7716
7857
|
*/
|
|
@@ -7772,11 +7913,6 @@ class MultiSelectComponent {
|
|
|
7772
7913
|
}
|
|
7773
7914
|
return prefix + "-" + getter(item, this.valueField);
|
|
7774
7915
|
}
|
|
7775
|
-
get noDataLabel() {
|
|
7776
|
-
if (this.dataService.itemsCount === 0) {
|
|
7777
|
-
return this.messageFor('noDataText');
|
|
7778
|
-
}
|
|
7779
|
-
}
|
|
7780
7916
|
get clearButtonVisiblity() {
|
|
7781
7917
|
if (this.touchEnabled) {
|
|
7782
7918
|
return 'visible';
|
|
@@ -8432,6 +8568,11 @@ class MultiSelectComponent {
|
|
|
8432
8568
|
popupWrapper.style.width = max;
|
|
8433
8569
|
popupWrapper.style.height = this.height;
|
|
8434
8570
|
popupWrapper.setAttribute("dir", this.direction);
|
|
8571
|
+
const listBox = popupWrapper.querySelector('ul.k-list-ul');
|
|
8572
|
+
const ariaLabel = this.searchbar.input.nativeElement.getAttribute('aria-labelledby');
|
|
8573
|
+
if (ariaLabel) {
|
|
8574
|
+
listBox.setAttribute('aria-labelledby', ariaLabel);
|
|
8575
|
+
}
|
|
8435
8576
|
this.popupRef.popupOpen.subscribe(() => {
|
|
8436
8577
|
this.cdr.detectChanges();
|
|
8437
8578
|
this.optionsList.scrollToItem(this.selectionService.focused);
|
|
@@ -8490,7 +8631,7 @@ class MultiSelectComponent {
|
|
|
8490
8631
|
}
|
|
8491
8632
|
}
|
|
8492
8633
|
MultiSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MultiSelectComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2.PopupService }, { token: DataService }, { token: SelectionService }, { token: NavigationService }, { token: DisabledItemsService }, { token: i0.ChangeDetectorRef }, { token: i0.KeyValueDiffers }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: TOUCH_ENABLED, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
8493
|
-
MultiSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: MultiSelectComponent, selector: "kendo-multiselect", inputs: { focusableId: "focusableId", autoClose: "autoClose", loading: "loading", data: "data", value: "value", valueField: "valueField", textField: "textField", tabindex: "tabindex", tabIndex: "tabIndex", size: "size", rounded: "rounded", fillMode: "fillMode", placeholder: "placeholder", disabled: "disabled", itemDisabled: "itemDisabled", checkboxes: "checkboxes", readonly: "readonly", filterable: "filterable", virtual: "virtual", popupSettings: "popupSettings", listHeight: "listHeight", valuePrimitive: "valuePrimitive", clearButton: "clearButton", tagMapper: "tagMapper", allowCustom: "allowCustom", valueNormalizer: "valueNormalizer" }, outputs: { filterChange: "filterChange", valueChange: "valueChange", open: "open", opened: "opened", close: "close", closed: "closed", onFocus: "focus", onBlur: "blur", removeTag: "removeTag" }, host: { listeners: { "mousedown": "hostMousedown($event)" }, properties: { "class.k-multiselect": "this.hostClasses", "class.k-input": "this.hostClasses", "attr.dir": "this.dir", "class.k-disabled": "this.disabledClass", "class.k-loading": "this.isLoading"
|
|
8634
|
+
MultiSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: MultiSelectComponent, selector: "kendo-multiselect", inputs: { focusableId: "focusableId", autoClose: "autoClose", loading: "loading", data: "data", value: "value", valueField: "valueField", textField: "textField", tabindex: "tabindex", tabIndex: "tabIndex", size: "size", rounded: "rounded", fillMode: "fillMode", placeholder: "placeholder", disabled: "disabled", itemDisabled: "itemDisabled", checkboxes: "checkboxes", readonly: "readonly", filterable: "filterable", virtual: "virtual", popupSettings: "popupSettings", listHeight: "listHeight", valuePrimitive: "valuePrimitive", clearButton: "clearButton", tagMapper: "tagMapper", allowCustom: "allowCustom", valueNormalizer: "valueNormalizer" }, outputs: { filterChange: "filterChange", valueChange: "valueChange", open: "open", opened: "opened", close: "close", closed: "closed", onFocus: "focus", onBlur: "blur", removeTag: "removeTag" }, host: { listeners: { "mousedown": "hostMousedown($event)" }, properties: { "class.k-multiselect": "this.hostClasses", "class.k-input": "this.hostClasses", "attr.dir": "this.dir", "class.k-disabled": "this.disabledClass", "class.k-loading": "this.isLoading" } }, providers: [
|
|
8494
8635
|
MULTISELECT_VALUE_ACCESSOR,
|
|
8495
8636
|
DataService,
|
|
8496
8637
|
SelectionService,
|
|
@@ -8535,10 +8676,12 @@ MultiSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
|
|
|
8535
8676
|
<kendo-searchbar
|
|
8536
8677
|
#searchbar
|
|
8537
8678
|
[id]="focusableId"
|
|
8538
|
-
[role]="'
|
|
8679
|
+
[role]="'combobox'"
|
|
8539
8680
|
[tagListId]="tagListId"
|
|
8681
|
+
[listId]="listBoxId"
|
|
8682
|
+
[isLoading]="loading"
|
|
8683
|
+
[isFilterable]="filterable"
|
|
8540
8684
|
[activeDescendant]="activeDescendant"
|
|
8541
|
-
[noDataLabel]="noDataLabel"
|
|
8542
8685
|
[userInput]="text"
|
|
8543
8686
|
[disabled]="disabled"
|
|
8544
8687
|
[readonly]="readonly"
|
|
@@ -8612,6 +8755,7 @@ MultiSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
|
|
|
8612
8755
|
[virtual]="virtual"
|
|
8613
8756
|
(pageChange)="pageChange($event)"
|
|
8614
8757
|
[checkboxes]="checkboxes"
|
|
8758
|
+
[isMultiselect]="true"
|
|
8615
8759
|
>
|
|
8616
8760
|
</kendo-list>
|
|
8617
8761
|
<!--no data template-->
|
|
@@ -8636,7 +8780,7 @@ MultiSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
|
|
|
8636
8780
|
<kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
|
|
8637
8781
|
</ng-template>
|
|
8638
8782
|
<ng-container #container></ng-container>
|
|
8639
|
-
`, isInline: true, components: [{ type: TagListComponent, selector: "kendo-taglist", inputs: ["tags", "textField", "valueField", "valueDepth", "focused", "template", "groupTemplate", "disabled", "tagPrefix", "id", "size", "rounded", "fillMode", "disabledIndices"], outputs: ["removeTag"] }, { type: SearchBarComponent, selector: "kendo-searchbar", inputs: ["id", "listId", "tagListId", "activeDescendant", "
|
|
8783
|
+
`, isInline: true, components: [{ type: TagListComponent, selector: "kendo-taglist", inputs: ["tags", "textField", "valueField", "valueDepth", "focused", "template", "groupTemplate", "disabled", "tagPrefix", "id", "size", "rounded", "fillMode", "disabledIndices"], outputs: ["removeTag"] }, { type: 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: 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: 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: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { type: i11.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: SelectableDirective, selector: "[kendoDropDownsSelectable]", inputs: ["index", "checkboxes", "height", "multipleSelection"] }] });
|
|
8640
8784
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MultiSelectComponent, decorators: [{
|
|
8641
8785
|
type: Component,
|
|
8642
8786
|
args: [{
|
|
@@ -8688,10 +8832,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
8688
8832
|
<kendo-searchbar
|
|
8689
8833
|
#searchbar
|
|
8690
8834
|
[id]="focusableId"
|
|
8691
|
-
[role]="'
|
|
8835
|
+
[role]="'combobox'"
|
|
8692
8836
|
[tagListId]="tagListId"
|
|
8837
|
+
[listId]="listBoxId"
|
|
8838
|
+
[isLoading]="loading"
|
|
8839
|
+
[isFilterable]="filterable"
|
|
8693
8840
|
[activeDescendant]="activeDescendant"
|
|
8694
|
-
[noDataLabel]="noDataLabel"
|
|
8695
8841
|
[userInput]="text"
|
|
8696
8842
|
[disabled]="disabled"
|
|
8697
8843
|
[readonly]="readonly"
|
|
@@ -8765,6 +8911,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
8765
8911
|
[virtual]="virtual"
|
|
8766
8912
|
(pageChange)="pageChange($event)"
|
|
8767
8913
|
[checkboxes]="checkboxes"
|
|
8914
|
+
[isMultiselect]="true"
|
|
8768
8915
|
>
|
|
8769
8916
|
</kendo-list>
|
|
8770
8917
|
<!--no data template-->
|
|
@@ -8923,12 +9070,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
8923
9070
|
}], isLoading: [{
|
|
8924
9071
|
type: HostBinding,
|
|
8925
9072
|
args: ['class.k-loading']
|
|
8926
|
-
}], role: [{
|
|
8927
|
-
type: HostBinding,
|
|
8928
|
-
args: ['attr.role']
|
|
8929
|
-
}], isAriaExpanded: [{
|
|
8930
|
-
type: HostBinding,
|
|
8931
|
-
args: ['attr.aria-expanded']
|
|
8932
9073
|
}], hostMousedown: [{
|
|
8933
9074
|
type: HostListener,
|
|
8934
9075
|
args: ['mousedown', ['$event']]
|
|
@@ -9235,6 +9376,9 @@ MultiColumnComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
|
|
|
9235
9376
|
|
|
9236
9377
|
i18n-clearTitle="kendo.multicolumncombobox.clearTitle|The title of the clear button"
|
|
9237
9378
|
clearTitle="clear"
|
|
9379
|
+
|
|
9380
|
+
i18n-selectButtonText="kendo.multicolumncombobox.selectButtonText|The title of the select button"
|
|
9381
|
+
selectButtonText="Select"
|
|
9238
9382
|
>
|
|
9239
9383
|
</ng-container>
|
|
9240
9384
|
<kendo-searchbar
|
|
@@ -9242,8 +9386,10 @@ MultiColumnComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
|
|
|
9242
9386
|
[role]="'combobox'"
|
|
9243
9387
|
[id]="focusableId"
|
|
9244
9388
|
[listId]="listBoxId"
|
|
9389
|
+
[isLoading]="loading"
|
|
9390
|
+
[isSuggestable]="suggest"
|
|
9391
|
+
[isFilterable]="filterable"
|
|
9245
9392
|
[activeDescendant]="activeDescendant"
|
|
9246
|
-
[noDataLabel]="noDataLabel"
|
|
9247
9393
|
[userInput]="text"
|
|
9248
9394
|
[suggestedText]="getSuggestion()"
|
|
9249
9395
|
[disabled]="disabled"
|
|
@@ -9441,7 +9587,7 @@ MultiColumnComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
|
|
|
9441
9587
|
|
|
9442
9588
|
<!-- when the popupSettings.appendTo value is set to 'component', this container is used -->
|
|
9443
9589
|
<ng-container #container></ng-container>
|
|
9444
|
-
`, isInline: true, components: [{ type: SearchBarComponent, selector: "kendo-searchbar", inputs: ["id", "listId", "tagListId", "activeDescendant", "
|
|
9590
|
+
`, isInline: true, components: [{ type: 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: 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: 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: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { type: i11.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i11.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
9445
9591
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MultiColumnComboBoxComponent, decorators: [{
|
|
9446
9592
|
type: Component,
|
|
9447
9593
|
args: [{
|
|
@@ -9479,6 +9625,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
9479
9625
|
|
|
9480
9626
|
i18n-clearTitle="kendo.multicolumncombobox.clearTitle|The title of the clear button"
|
|
9481
9627
|
clearTitle="clear"
|
|
9628
|
+
|
|
9629
|
+
i18n-selectButtonText="kendo.multicolumncombobox.selectButtonText|The title of the select button"
|
|
9630
|
+
selectButtonText="Select"
|
|
9482
9631
|
>
|
|
9483
9632
|
</ng-container>
|
|
9484
9633
|
<kendo-searchbar
|
|
@@ -9486,8 +9635,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
9486
9635
|
[role]="'combobox'"
|
|
9487
9636
|
[id]="focusableId"
|
|
9488
9637
|
[listId]="listBoxId"
|
|
9638
|
+
[isLoading]="loading"
|
|
9639
|
+
[isSuggestable]="suggest"
|
|
9640
|
+
[isFilterable]="filterable"
|
|
9489
9641
|
[activeDescendant]="activeDescendant"
|
|
9490
|
-
[noDataLabel]="noDataLabel"
|
|
9491
9642
|
[userInput]="text"
|
|
9492
9643
|
[suggestedText]="getSuggestion()"
|
|
9493
9644
|
[disabled]="disabled"
|
|
@@ -13808,21 +13959,21 @@ SharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "
|
|
|
13808
13959
|
TemplateContextDirective,
|
|
13809
13960
|
TagListComponent,
|
|
13810
13961
|
CheckDirective,
|
|
13811
|
-
CheckAllDirective], imports: [CommonModule, FormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule], exports: [ListComponent,
|
|
13962
|
+
CheckAllDirective], imports: [CommonModule, FormsModule, ReactiveFormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule], exports: [ListComponent,
|
|
13812
13963
|
ListItemDirective,
|
|
13813
13964
|
SelectableDirective,
|
|
13814
13965
|
SearchBarComponent,
|
|
13815
13966
|
TemplateContextDirective,
|
|
13816
13967
|
TagListComponent,
|
|
13817
13968
|
CheckDirective,
|
|
13818
|
-
CheckAllDirective, CommonModule, FormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule] });
|
|
13819
|
-
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] });
|
|
13969
|
+
CheckAllDirective, CommonModule, FormsModule, ReactiveFormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule] });
|
|
13970
|
+
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] });
|
|
13820
13971
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SharedModule, decorators: [{
|
|
13821
13972
|
type: NgModule,
|
|
13822
13973
|
args: [{
|
|
13823
13974
|
declarations: [INTERNAL_DIRECTIVES],
|
|
13824
|
-
exports: [INTERNAL_DIRECTIVES, CommonModule, FormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule],
|
|
13825
|
-
imports: [CommonModule, FormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule]
|
|
13975
|
+
exports: [INTERNAL_DIRECTIVES, CommonModule, FormsModule, ReactiveFormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule],
|
|
13976
|
+
imports: [CommonModule, FormsModule, ReactiveFormsModule, PopupModule, ResizeSensorModule, SharedDirectivesModule, EventsModule]
|
|
13826
13977
|
}]
|
|
13827
13978
|
}] });
|
|
13828
13979
|
|