@progress/kendo-angular-dropdowns 14.0.2-develop.15 → 14.0.2-develop.16
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 +9 -4
- package/comboboxes/combobox.component.d.ts +9 -4
- package/comboboxes/multicolumncombobox.component.d.ts +2 -2
- package/esm2020/autocomplete/autocomplete.component.mjs +18 -6
- package/esm2020/comboboxes/combobox.component.mjs +18 -6
- package/esm2020/comboboxes/multicolumncombobox.component.mjs +5 -5
- package/esm2020/dropdownlist/dropdownlist.component.mjs +2 -1
- package/esm2020/dropdowntrees/dropdowntree.component.mjs +2 -1
- package/esm2020/dropdowntrees/multiselecttree.component.mjs +2 -1
- package/esm2020/multiselect/multiselect.component.mjs +15 -6
- package/esm2020/package-metadata.mjs +2 -2
- package/fesm2015/progress-kendo-angular-dropdowns.mjs +63 -21
- package/fesm2020/progress-kendo-angular-dropdowns.mjs +57 -21
- package/multiselect/multiselect.component.d.ts +9 -3
- package/package.json +9 -9
- package/schematics/ngAdd/index.js +2 -2
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Renderer2, ElementRef, EventEmitter, ViewContainerRef, TemplateRef, OnDestroy, SimpleChanges, OnChanges, ChangeDetectorRef, NgZone, AfterViewInit } from '@angular/core';
|
|
6
|
-
import { ControlValueAccessor } from '@angular/forms';
|
|
5
|
+
import { Renderer2, ElementRef, EventEmitter, ViewContainerRef, TemplateRef, OnDestroy, SimpleChanges, OnChanges, ChangeDetectorRef, NgZone, AfterViewInit, Injector } from '@angular/core';
|
|
6
|
+
import { ControlValueAccessor, FormControl } from '@angular/forms';
|
|
7
7
|
import { SearchBarComponent } from '../common/searchbar.component';
|
|
8
8
|
import { ItemTemplateDirective } from '../common/templates/item-template.directive';
|
|
9
9
|
import { HeaderTemplateDirective } from '../common/templates/header-template.directive';
|
|
@@ -69,6 +69,7 @@ export declare class AutoCompleteComponent implements ControlValueAccessor, OnDe
|
|
|
69
69
|
private renderer;
|
|
70
70
|
private hostElement;
|
|
71
71
|
protected touchEnabled: boolean;
|
|
72
|
+
private injector;
|
|
72
73
|
/**
|
|
73
74
|
* @hidden
|
|
74
75
|
*/
|
|
@@ -354,9 +355,13 @@ export declare class AutoCompleteComponent implements ControlValueAccessor, OnDe
|
|
|
354
355
|
* @hidden
|
|
355
356
|
*/
|
|
356
357
|
get isAdaptive(): boolean;
|
|
358
|
+
/**
|
|
359
|
+
* @hidden
|
|
360
|
+
*/
|
|
361
|
+
get formControl(): FormControl;
|
|
357
362
|
protected onChangeCallback: Function;
|
|
358
363
|
protected onTouchedCallback: Function;
|
|
359
|
-
constructor(localization: LocalizationService, dataService: DataService, popupService: PopupService, selectionService: SelectionService, navigationService: NavigationService, disabledItemsService: DisabledItemsService, _zone: NgZone, cdr: ChangeDetectorRef, renderer: Renderer2, hostElement: ElementRef, touchEnabled: boolean);
|
|
364
|
+
constructor(localization: LocalizationService, dataService: DataService, popupService: PopupService, selectionService: SelectionService, navigationService: NavigationService, disabledItemsService: DisabledItemsService, _zone: NgZone, cdr: ChangeDetectorRef, renderer: Renderer2, hostElement: ElementRef, touchEnabled: boolean, injector: Injector);
|
|
360
365
|
ngOnInit(): void;
|
|
361
366
|
ngAfterViewInit(): void;
|
|
362
367
|
ngOnDestroy(): void;
|
|
@@ -474,6 +479,6 @@ export declare class AutoCompleteComponent implements ControlValueAccessor, OnDe
|
|
|
474
479
|
private setComponentClasses;
|
|
475
480
|
private closeActionSheet;
|
|
476
481
|
private openActionSheet;
|
|
477
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AutoCompleteComponent, [null, null, null, null, null, null, null, null, null, null, { optional: true; }]>;
|
|
482
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AutoCompleteComponent, [null, null, null, null, null, null, null, null, null, null, { optional: true; }, null]>;
|
|
478
483
|
static ɵcmp: i0.ɵɵComponentDeclaration<AutoCompleteComponent, "kendo-autocomplete", ["kendoAutoComplete"], { "highlightFirst": "highlightFirst"; "showStickyHeader": "showStickyHeader"; "focusableId": "focusableId"; "data": "data"; "value": "value"; "valueField": "valueField"; "placeholder": "placeholder"; "adaptiveMode": "adaptiveMode"; "title": "title"; "subtitle": "subtitle"; "popupSettings": "popupSettings"; "listHeight": "listHeight"; "loading": "loading"; "clearButton": "clearButton"; "suggest": "suggest"; "disabled": "disabled"; "itemDisabled": "itemDisabled"; "readonly": "readonly"; "tabindex": "tabindex"; "tabIndex": "tabIndex"; "filterable": "filterable"; "virtual": "virtual"; "size": "size"; "rounded": "rounded"; "fillMode": "fillMode"; }, { "valueChange": "valueChange"; "filterChange": "filterChange"; "open": "open"; "opened": "opened"; "close": "close"; "closed": "closed"; "onFocus": "focus"; "onBlur": "blur"; }, ["template", "headerTemplate", "footerTemplate", "noDataTemplate", "groupTemplate", "fixedGroupTemplate"], never>;
|
|
479
484
|
}
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { ElementRef, TemplateRef, EventEmitter, ViewContainerRef, OnDestroy, OnChanges, ChangeDetectorRef, NgZone, Renderer2, SimpleChanges, AfterContentChecked, AfterViewInit } from '@angular/core';
|
|
6
|
-
import { ControlValueAccessor } from '@angular/forms';
|
|
5
|
+
import { ElementRef, TemplateRef, EventEmitter, ViewContainerRef, OnDestroy, OnChanges, ChangeDetectorRef, NgZone, Renderer2, SimpleChanges, AfterContentChecked, AfterViewInit, Injector } from '@angular/core';
|
|
6
|
+
import { ControlValueAccessor, FormControl } from '@angular/forms';
|
|
7
7
|
import { SearchBarComponent } from '../common/searchbar.component';
|
|
8
8
|
import { ItemTemplateDirective } from '../common/templates/item-template.directive';
|
|
9
9
|
import { HeaderTemplateDirective } from '../common/templates/header-template.directive';
|
|
@@ -67,6 +67,7 @@ export declare class ComboBoxComponent implements ControlValueAccessor, AfterVie
|
|
|
67
67
|
protected cdr: ChangeDetectorRef;
|
|
68
68
|
protected renderer: Renderer2;
|
|
69
69
|
protected touchEnabled: boolean;
|
|
70
|
+
protected injector: Injector;
|
|
70
71
|
/**
|
|
71
72
|
* @hidden
|
|
72
73
|
*/
|
|
@@ -406,6 +407,10 @@ export declare class ComboBoxComponent implements ControlValueAccessor, AfterVie
|
|
|
406
407
|
get isFocused(): boolean;
|
|
407
408
|
set isFocused(value: boolean);
|
|
408
409
|
get clearButtonVisiblity(): string;
|
|
410
|
+
/**
|
|
411
|
+
* @hidden
|
|
412
|
+
*/
|
|
413
|
+
get formControl(): FormControl;
|
|
409
414
|
/**
|
|
410
415
|
* @hidden
|
|
411
416
|
*/
|
|
@@ -460,7 +465,7 @@ export declare class ComboBoxComponent implements ControlValueAccessor, AfterVie
|
|
|
460
465
|
private _size;
|
|
461
466
|
private _rounded;
|
|
462
467
|
private _fillMode;
|
|
463
|
-
constructor(wrapper: ElementRef<HTMLElement>, localization: LocalizationService, popupService: PopupService, selectionService: SelectionService, navigationService: NavigationService, disabledItemsService: DisabledItemsService, dataService: DataService, zone: NgZone, cdr: ChangeDetectorRef, renderer: Renderer2, touchEnabled: boolean);
|
|
468
|
+
constructor(wrapper: ElementRef<HTMLElement>, localization: LocalizationService, popupService: PopupService, selectionService: SelectionService, navigationService: NavigationService, disabledItemsService: DisabledItemsService, dataService: DataService, zone: NgZone, cdr: ChangeDetectorRef, renderer: Renderer2, touchEnabled: boolean, injector: Injector);
|
|
464
469
|
ngOnInit(): void;
|
|
465
470
|
ngAfterViewInit(): void;
|
|
466
471
|
private createValueStream;
|
|
@@ -622,6 +627,6 @@ export declare class ComboBoxComponent implements ControlValueAccessor, AfterVie
|
|
|
622
627
|
private findIndex;
|
|
623
628
|
private closeActionSheet;
|
|
624
629
|
private openActionSheet;
|
|
625
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<ComboBoxComponent, [null, null, null, null, null, null, null, null, null, null, { optional: true; }]>;
|
|
630
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ComboBoxComponent, [null, null, null, null, null, null, null, null, null, null, { optional: true; }, null]>;
|
|
626
631
|
static ɵcmp: i0.ɵɵComponentDeclaration<ComboBoxComponent, "kendo-combobox", ["kendoComboBox"], { "icon": "icon"; "svgIcon": "svgIcon"; "showStickyHeader": "showStickyHeader"; "focusableId": "focusableId"; "allowCustom": "allowCustom"; "data": "data"; "value": "value"; "textField": "textField"; "valueField": "valueField"; "valuePrimitive": "valuePrimitive"; "valueNormalizer": "valueNormalizer"; "placeholder": "placeholder"; "adaptiveMode": "adaptiveMode"; "title": "title"; "subtitle": "subtitle"; "popupSettings": "popupSettings"; "listHeight": "listHeight"; "loading": "loading"; "suggest": "suggest"; "clearButton": "clearButton"; "disabled": "disabled"; "itemDisabled": "itemDisabled"; "readonly": "readonly"; "tabindex": "tabindex"; "tabIndex": "tabIndex"; "filterable": "filterable"; "virtual": "virtual"; "size": "size"; "rounded": "rounded"; "fillMode": "fillMode"; }, { "valueChange": "valueChange"; "selectionChange": "selectionChange"; "filterChange": "filterChange"; "open": "open"; "opened": "opened"; "close": "close"; "closed": "closed"; "onFocus": "focus"; "onBlur": "blur"; }, ["template", "headerTemplate", "footerTemplate", "noDataTemplate", "groupTemplate", "fixedGroupTemplate"], never>;
|
|
627
632
|
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { AfterViewInit, ChangeDetectorRef, ElementRef, NgZone, OnDestroy, QueryList, Renderer2 } from '@angular/core';
|
|
5
|
+
import { AfterViewInit, ChangeDetectorRef, ElementRef, Injector, NgZone, OnDestroy, QueryList, Renderer2 } from '@angular/core';
|
|
6
6
|
import { LocalizationService } from '@progress/kendo-angular-l10n';
|
|
7
7
|
import { PopupService } from '@progress/kendo-angular-popup';
|
|
8
8
|
import { ComboBoxComponent } from './combobox.component';
|
|
@@ -50,7 +50,7 @@ export declare class MultiColumnComboBoxComponent extends ComboBoxComponent impl
|
|
|
50
50
|
* @hidden
|
|
51
51
|
*/
|
|
52
52
|
protected get listContainerClasses(): string[];
|
|
53
|
-
constructor(localization: LocalizationService, popupService: PopupService, selectionService: SelectionService, navigationService: NavigationService, disabledItemsService: DisabledItemsService, dataService: DataService, zone: NgZone, changeDetector: ChangeDetectorRef, renderer: Renderer2, wrapper: ElementRef<HTMLElement>, touchEnabled: boolean);
|
|
53
|
+
constructor(localization: LocalizationService, popupService: PopupService, selectionService: SelectionService, navigationService: NavigationService, disabledItemsService: DisabledItemsService, dataService: DataService, zone: NgZone, changeDetector: ChangeDetectorRef, renderer: Renderer2, wrapper: ElementRef<HTMLElement>, touchEnabled: boolean, injector: Injector);
|
|
54
54
|
ngAfterViewInit(): void;
|
|
55
55
|
ngOnDestroy(): void;
|
|
56
56
|
/**
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Component, Renderer2, forwardRef, ElementRef, Input, Output, EventEmitter, ContentChild, ViewChild, ViewContainerRef, TemplateRef, HostBinding, isDevMode, ChangeDetectorRef, NgZone, Optional, Inject } from '@angular/core';
|
|
5
|
+
import { Component, Renderer2, forwardRef, ElementRef, Input, Output, EventEmitter, ContentChild, ViewChild, ViewContainerRef, TemplateRef, HostBinding, isDevMode, ChangeDetectorRef, NgZone, Optional, Inject, Injector } from '@angular/core';
|
|
6
6
|
import { isDocumentAvailable, KendoInput, hasObservers } from '@progress/kendo-angular-common';
|
|
7
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
7
|
+
import { NG_VALUE_ACCESSOR, NgControl } from '@angular/forms';
|
|
8
8
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
9
9
|
import { packageMetadata } from '../package-metadata';
|
|
10
10
|
import { SearchBarComponent } from '../common/searchbar.component';
|
|
@@ -78,7 +78,7 @@ export const AUTOCOMPLETE_VALUE_ACCESSOR = {
|
|
|
78
78
|
* ```
|
|
79
79
|
*/
|
|
80
80
|
export class AutoCompleteComponent {
|
|
81
|
-
constructor(localization, dataService, popupService, selectionService, navigationService, disabledItemsService, _zone, cdr, renderer, hostElement, touchEnabled) {
|
|
81
|
+
constructor(localization, dataService, popupService, selectionService, navigationService, disabledItemsService, _zone, cdr, renderer, hostElement, touchEnabled, injector) {
|
|
82
82
|
this.localization = localization;
|
|
83
83
|
this.dataService = dataService;
|
|
84
84
|
this.popupService = popupService;
|
|
@@ -90,6 +90,7 @@ export class AutoCompleteComponent {
|
|
|
90
90
|
this.renderer = renderer;
|
|
91
91
|
this.hostElement = hostElement;
|
|
92
92
|
this.touchEnabled = touchEnabled;
|
|
93
|
+
this.injector = injector;
|
|
93
94
|
/**
|
|
94
95
|
* @hidden
|
|
95
96
|
*/
|
|
@@ -537,6 +538,13 @@ export class AutoCompleteComponent {
|
|
|
537
538
|
get isAdaptive() {
|
|
538
539
|
return this.isAdaptiveModeEnabled && this.windowSize !== 'large';
|
|
539
540
|
}
|
|
541
|
+
/**
|
|
542
|
+
* @hidden
|
|
543
|
+
*/
|
|
544
|
+
get formControl() {
|
|
545
|
+
const ngControl = this.injector.get(NgControl, null);
|
|
546
|
+
return ngControl?.control || null;
|
|
547
|
+
}
|
|
540
548
|
ngOnInit() {
|
|
541
549
|
this.renderer.removeAttribute(this.wrapper, "tabindex");
|
|
542
550
|
this.subs.add(this.localization
|
|
@@ -836,7 +844,11 @@ export class AutoCompleteComponent {
|
|
|
836
844
|
}
|
|
837
845
|
this.isFocused = false;
|
|
838
846
|
const valueHasChanged = this.value !== this.text;
|
|
839
|
-
const runInZone = hasObservers(this.onBlur) ||
|
|
847
|
+
const runInZone = hasObservers(this.onBlur) ||
|
|
848
|
+
hasObservers(this.close) ||
|
|
849
|
+
isUntouched(this.wrapper) ||
|
|
850
|
+
valueHasChanged ||
|
|
851
|
+
this.formControl?.updateOn === 'blur';
|
|
840
852
|
if (runInZone) {
|
|
841
853
|
this._zone.run(() => {
|
|
842
854
|
if (valueHasChanged) {
|
|
@@ -1065,7 +1077,7 @@ export class AutoCompleteComponent {
|
|
|
1065
1077
|
this.actionSheetSearchBar.focus();
|
|
1066
1078
|
}
|
|
1067
1079
|
}
|
|
1068
|
-
AutoCompleteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AutoCompleteComponent, deps: [{ token: i1.LocalizationService }, { token: i2.DataService }, { token: i3.PopupService }, { token: i4.SelectionService }, { token: i5.NavigationService }, { token: i6.DisabledItemsService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: TOUCH_ENABLED, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
1080
|
+
AutoCompleteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AutoCompleteComponent, deps: [{ token: i1.LocalizationService }, { token: i2.DataService }, { token: i3.PopupService }, { token: i4.SelectionService }, { token: i5.NavigationService }, { token: i6.DisabledItemsService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: TOUCH_ENABLED, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
1069
1081
|
AutoCompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AutoCompleteComponent, selector: "kendo-autocomplete", inputs: { highlightFirst: "highlightFirst", showStickyHeader: "showStickyHeader", focusableId: "focusableId", data: "data", value: "value", valueField: "valueField", placeholder: "placeholder", adaptiveMode: "adaptiveMode", title: "title", subtitle: "subtitle", popupSettings: "popupSettings", listHeight: "listHeight", loading: "loading", clearButton: "clearButton", suggest: "suggest", disabled: "disabled", itemDisabled: "itemDisabled", readonly: "readonly", tabindex: "tabindex", tabIndex: "tabIndex", filterable: "filterable", virtual: "virtual", size: "size", rounded: "rounded", fillMode: "fillMode" }, outputs: { valueChange: "valueChange", filterChange: "filterChange", open: "open", opened: "opened", close: "close", closed: "closed", onFocus: "focus", onBlur: "blur" }, host: { properties: { "class.k-autocomplete": "this.widgetClasses", "class.k-input": "this.widgetClasses", "class.k-disabled": "this.isDisabled", "class.k-loading": "this.isLoading", "attr.dir": "this.dir" } }, providers: [
|
|
1070
1082
|
AUTOCOMPLETE_VALUE_ACCESSOR,
|
|
1071
1083
|
DataService,
|
|
@@ -1348,7 +1360,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
1348
1360
|
}, {
|
|
1349
1361
|
type: Inject,
|
|
1350
1362
|
args: [TOUCH_ENABLED]
|
|
1351
|
-
}] }]; }, propDecorators: { responsiveRendererComponent: [{
|
|
1363
|
+
}] }, { type: i0.Injector }]; }, propDecorators: { responsiveRendererComponent: [{
|
|
1352
1364
|
type: ViewChild,
|
|
1353
1365
|
args: [ResponsiveRendererComponent]
|
|
1354
1366
|
}], highlightFirst: [{
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Component, forwardRef, ElementRef, TemplateRef, Input, Output, EventEmitter, ContentChild, ViewChild, ViewContainerRef, HostBinding, isDevMode, Optional, Inject, ChangeDetectorRef, NgZone, Renderer2 } from '@angular/core';
|
|
6
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
5
|
+
import { Component, forwardRef, ElementRef, TemplateRef, Input, Output, EventEmitter, ContentChild, ViewChild, ViewContainerRef, HostBinding, isDevMode, Optional, Inject, ChangeDetectorRef, NgZone, Renderer2, Injector } from '@angular/core';
|
|
6
|
+
import { NG_VALUE_ACCESSOR, NgControl } from '@angular/forms';
|
|
7
7
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
8
8
|
import { packageMetadata } from '../package-metadata';
|
|
9
9
|
import { SearchBarComponent } from '../common/searchbar.component';
|
|
@@ -78,7 +78,7 @@ const DEFAULT_FILL_MODE = 'solid';
|
|
|
78
78
|
* ```
|
|
79
79
|
*/
|
|
80
80
|
export class ComboBoxComponent {
|
|
81
|
-
constructor(wrapper, localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, cdr, renderer, touchEnabled) {
|
|
81
|
+
constructor(wrapper, localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, cdr, renderer, touchEnabled, injector) {
|
|
82
82
|
this.wrapper = wrapper;
|
|
83
83
|
this.localization = localization;
|
|
84
84
|
this.popupService = popupService;
|
|
@@ -90,6 +90,7 @@ export class ComboBoxComponent {
|
|
|
90
90
|
this.cdr = cdr;
|
|
91
91
|
this.renderer = renderer;
|
|
92
92
|
this.touchEnabled = touchEnabled;
|
|
93
|
+
this.injector = injector;
|
|
93
94
|
/**
|
|
94
95
|
* @hidden
|
|
95
96
|
*/
|
|
@@ -565,6 +566,13 @@ export class ComboBoxComponent {
|
|
|
565
566
|
return 'visible';
|
|
566
567
|
}
|
|
567
568
|
}
|
|
569
|
+
/**
|
|
570
|
+
* @hidden
|
|
571
|
+
*/
|
|
572
|
+
get formControl() {
|
|
573
|
+
const ngControl = this.injector.get(NgControl, null);
|
|
574
|
+
return ngControl?.control || null;
|
|
575
|
+
}
|
|
568
576
|
/**
|
|
569
577
|
* @hidden
|
|
570
578
|
*/
|
|
@@ -1152,7 +1160,11 @@ export class ComboBoxComponent {
|
|
|
1152
1160
|
const currentText = this.searchbar.value;
|
|
1153
1161
|
const textHasChanged = currentText !== (getter(this.dataItem, this.textField) || '');
|
|
1154
1162
|
const valueHasChanged = unresolvedSelection || textHasChanged;
|
|
1155
|
-
const runInZone = valueHasChanged ||
|
|
1163
|
+
const runInZone = valueHasChanged ||
|
|
1164
|
+
hasObservers(this.onBlur) ||
|
|
1165
|
+
hasObservers(this.close) ||
|
|
1166
|
+
isUntouched(this.wrapper.nativeElement) ||
|
|
1167
|
+
this.formControl?.updateOn === 'blur';
|
|
1156
1168
|
if (runInZone) {
|
|
1157
1169
|
this.zone.run(() => {
|
|
1158
1170
|
if (valueHasChanged) {
|
|
@@ -1451,7 +1463,7 @@ export class ComboBoxComponent {
|
|
|
1451
1463
|
this.actionSheetSearchBar.focus();
|
|
1452
1464
|
}
|
|
1453
1465
|
}
|
|
1454
|
-
ComboBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ComboBoxComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2.PopupService }, { token: i3.SelectionService }, { token: i4.NavigationService }, { token: i5.DisabledItemsService }, { token: i6.DataService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: TOUCH_ENABLED, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
1466
|
+
ComboBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ComboBoxComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2.PopupService }, { token: i3.SelectionService }, { token: i4.NavigationService }, { token: i5.DisabledItemsService }, { token: i6.DataService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: TOUCH_ENABLED, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
1455
1467
|
ComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ComboBoxComponent, selector: "kendo-combobox", inputs: { icon: "icon", svgIcon: "svgIcon", showStickyHeader: "showStickyHeader", focusableId: "focusableId", allowCustom: "allowCustom", data: "data", value: "value", textField: "textField", valueField: "valueField", valuePrimitive: "valuePrimitive", valueNormalizer: "valueNormalizer", placeholder: "placeholder", adaptiveMode: "adaptiveMode", title: "title", subtitle: "subtitle", popupSettings: "popupSettings", listHeight: "listHeight", loading: "loading", suggest: "suggest", clearButton: "clearButton", disabled: "disabled", itemDisabled: "itemDisabled", readonly: "readonly", tabindex: "tabindex", tabIndex: "tabIndex", filterable: "filterable", virtual: "virtual", size: "size", rounded: "rounded", fillMode: "fillMode" }, outputs: { valueChange: "valueChange", selectionChange: "selectionChange", filterChange: "filterChange", open: "open", opened: "opened", close: "close", closed: "closed", onFocus: "focus", onBlur: "blur" }, host: { properties: { "class.k-combobox": "this.widgetClasses", "class.k-input": "this.widgetClasses", "class.k-disabled": "this.isDisabled", "class.k-loading": "this.isLoading", "attr.dir": "this.dir" } }, providers: [
|
|
1456
1468
|
COMBOBOX_VALUE_ACCESSOR,
|
|
1457
1469
|
DataService,
|
|
@@ -1774,7 +1786,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
1774
1786
|
}, {
|
|
1775
1787
|
type: Inject,
|
|
1776
1788
|
args: [TOUCH_ENABLED]
|
|
1777
|
-
}] }]; }, propDecorators: { icon: [{
|
|
1789
|
+
}] }, { type: i0.Injector }]; }, propDecorators: { icon: [{
|
|
1778
1790
|
type: Input
|
|
1779
1791
|
}], svgIcon: [{
|
|
1780
1792
|
type: Input
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { ChangeDetectorRef, Component, ContentChildren, ElementRef, forwardRef, HostBinding, Inject, isDevMode, NgZone, QueryList, Renderer2, ViewChild } from '@angular/core';
|
|
5
|
+
import { ChangeDetectorRef, Component, ContentChildren, ElementRef, forwardRef, HostBinding, Inject, Injector, isDevMode, NgZone, QueryList, Renderer2, ViewChild } from '@angular/core';
|
|
6
6
|
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
7
7
|
import { isDocumentAvailable, KendoInput } from '@progress/kendo-angular-common';
|
|
8
8
|
import { L10N_PREFIX, LocalizationService } from '@progress/kendo-angular-l10n';
|
|
@@ -37,8 +37,8 @@ import * as i14 from "../common/templates/template-context.directive";
|
|
|
37
37
|
* Represents the [Kendo UI MultiColumnComboBox component for Angular]({% slug overview_multicolumncombobox %}).
|
|
38
38
|
*/
|
|
39
39
|
export class MultiColumnComboBoxComponent extends ComboBoxComponent {
|
|
40
|
-
constructor(localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, changeDetector, renderer, wrapper, touchEnabled) {
|
|
41
|
-
super(wrapper, localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, changeDetector, renderer, touchEnabled);
|
|
40
|
+
constructor(localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, changeDetector, renderer, wrapper, touchEnabled, injector) {
|
|
41
|
+
super(wrapper, localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, changeDetector, renderer, touchEnabled, injector);
|
|
42
42
|
/**
|
|
43
43
|
* @hidden
|
|
44
44
|
*/
|
|
@@ -161,7 +161,7 @@ export class MultiColumnComboBoxComponent extends ComboBoxComponent {
|
|
|
161
161
|
});
|
|
162
162
|
}
|
|
163
163
|
}
|
|
164
|
-
MultiColumnComboBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MultiColumnComboBoxComponent, deps: [{ token: i1.LocalizationService }, { token: i2.PopupService }, { token: i3.SelectionService }, { token: i4.NavigationService }, { token: i5.DisabledItemsService }, { token: i6.DataService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: TOUCH_ENABLED }], target: i0.ɵɵFactoryTarget.Component });
|
|
164
|
+
MultiColumnComboBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MultiColumnComboBoxComponent, deps: [{ token: i1.LocalizationService }, { token: i2.PopupService }, { token: i3.SelectionService }, { token: i4.NavigationService }, { token: i5.DisabledItemsService }, { token: i6.DataService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: TOUCH_ENABLED }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
165
165
|
MultiColumnComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: MultiColumnComboBoxComponent, selector: "kendo-multicolumncombobox", host: { properties: { "class.k-dropdowngrid": "this.hostClasses", "class.k-disabled": "this.isDisabled" } }, providers: [
|
|
166
166
|
SelectionService,
|
|
167
167
|
DataService,
|
|
@@ -679,7 +679,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
679
679
|
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i2.PopupService }, { type: i3.SelectionService }, { type: i4.NavigationService }, { type: i5.DisabledItemsService }, { type: i6.DataService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: undefined, decorators: [{
|
|
680
680
|
type: Inject,
|
|
681
681
|
args: [TOUCH_ENABLED]
|
|
682
|
-
}] }]; }, propDecorators: { hostClasses: [{
|
|
682
|
+
}] }, { type: i0.Injector }]; }, propDecorators: { hostClasses: [{
|
|
683
683
|
type: HostBinding,
|
|
684
684
|
args: ['class.k-dropdowngrid']
|
|
685
685
|
}], isDisabled: [{
|
|
@@ -1170,7 +1170,8 @@ export class DropDownListComponent {
|
|
|
1170
1170
|
hasObservers(this.close) ||
|
|
1171
1171
|
hasObservers(this.onBlur) ||
|
|
1172
1172
|
hasObservers(this.filterChange) ||
|
|
1173
|
-
isUntouched(this.wrapper.nativeElement)
|
|
1173
|
+
isUntouched(this.wrapper.nativeElement) ||
|
|
1174
|
+
this.formControl?.updateOn === 'blur') {
|
|
1174
1175
|
this._zone.run(() => {
|
|
1175
1176
|
if (valueHasChanged) {
|
|
1176
1177
|
this.selectionService.change(this.selectionService.selected[0]);
|
|
@@ -700,7 +700,8 @@ export class DropDownTreeComponent {
|
|
|
700
700
|
this.isFocused = false;
|
|
701
701
|
this.togglePopup(false);
|
|
702
702
|
if (hasObservers(this.onBlur) ||
|
|
703
|
-
isUntouched(this.wrapper.nativeElement)
|
|
703
|
+
isUntouched(this.wrapper.nativeElement) ||
|
|
704
|
+
this.formControl?.updateOn === 'blur') {
|
|
704
705
|
this._zone.run(() => {
|
|
705
706
|
this.onBlur.emit();
|
|
706
707
|
this.onTouchedCallback();
|
|
@@ -948,7 +948,8 @@ export class MultiSelectTreeComponent {
|
|
|
948
948
|
this.isFocused = false;
|
|
949
949
|
this.togglePopup(false);
|
|
950
950
|
if (hasObservers(this.onBlur) ||
|
|
951
|
-
isUntouched(this.wrapper.nativeElement)
|
|
951
|
+
isUntouched(this.wrapper.nativeElement) ||
|
|
952
|
+
this.formControl?.updateOn === 'blur') {
|
|
952
953
|
this._zone.run(() => {
|
|
953
954
|
this.onBlur.emit();
|
|
954
955
|
this.onTouchedCallback();
|
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import { guid, isPresent, isArray, isObjectArray, resolveAllValues, selectedIndices, getter, isNumber, isUntouched, inDropDown, getSizeClass, getRoundedClass, getFillModeClass, animationDuration, isTruthy, windowSize, setListBoxAriaLabelLebBy, setActionSheetTitle, updateActionSheetAdaptiveAppearance } from '../common/util';
|
|
6
6
|
import { SearchBarComponent } from '../common/searchbar.component';
|
|
7
|
-
import { ViewChild, Renderer2, ViewContainerRef, Component, HostBinding, Input, ElementRef, TemplateRef, Output, EventEmitter, isDevMode, forwardRef, ContentChild, ChangeDetectorRef, KeyValueDiffers, NgZone, Optional, Inject } from '@angular/core';
|
|
7
|
+
import { ViewChild, Renderer2, ViewContainerRef, Component, HostBinding, Input, ElementRef, TemplateRef, Output, EventEmitter, isDevMode, forwardRef, ContentChild, ChangeDetectorRef, KeyValueDiffers, NgZone, Optional, Inject, Injector } from '@angular/core';
|
|
8
8
|
import { Subscription, Subject, of, merge } from 'rxjs';
|
|
9
9
|
import { catchError, filter, map, tap } from 'rxjs/operators';
|
|
10
10
|
import { isChanged, isDocumentAvailable, KendoInput, hasObservers, anyChanged } from '@progress/kendo-angular-common';
|
|
11
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
11
|
+
import { NG_VALUE_ACCESSOR, NgControl } from '@angular/forms';
|
|
12
12
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
13
13
|
import { packageMetadata } from '../package-metadata';
|
|
14
14
|
import { SelectionService } from '../common/selection/selection.service';
|
|
@@ -81,7 +81,7 @@ const DEFAULT_FILL_MODE = 'solid';
|
|
|
81
81
|
* ```
|
|
82
82
|
*/
|
|
83
83
|
export class MultiSelectComponent {
|
|
84
|
-
constructor(wrapper, localization, popupService, dataService, selectionService, navigationService, disabledItemsService, cdr, differs, renderer, _zone, touchEnabled) {
|
|
84
|
+
constructor(wrapper, localization, popupService, dataService, selectionService, navigationService, disabledItemsService, cdr, differs, renderer, _zone, touchEnabled, injector) {
|
|
85
85
|
this.wrapper = wrapper;
|
|
86
86
|
this.localization = localization;
|
|
87
87
|
this.popupService = popupService;
|
|
@@ -94,6 +94,7 @@ export class MultiSelectComponent {
|
|
|
94
94
|
this.renderer = renderer;
|
|
95
95
|
this._zone = _zone;
|
|
96
96
|
this.touchEnabled = touchEnabled;
|
|
97
|
+
this.injector = injector;
|
|
97
98
|
/**
|
|
98
99
|
* @hidden
|
|
99
100
|
*/
|
|
@@ -321,6 +322,13 @@ export class MultiSelectComponent {
|
|
|
321
322
|
get ariaControls() {
|
|
322
323
|
return this.isOpen ? this.listBoxId : undefined;
|
|
323
324
|
}
|
|
325
|
+
/**
|
|
326
|
+
* @hidden
|
|
327
|
+
*/
|
|
328
|
+
get formControl() {
|
|
329
|
+
const ngControl = this.injector.get(NgControl, null);
|
|
330
|
+
return ngControl?.control || null;
|
|
331
|
+
}
|
|
324
332
|
/**
|
|
325
333
|
* Focuses a specific item of the MultiSelect based on a provided index.
|
|
326
334
|
* If there is a custom item it is positioned at index -1.
|
|
@@ -387,7 +395,8 @@ export class MultiSelectComponent {
|
|
|
387
395
|
if (hasObservers(this.onBlur) ||
|
|
388
396
|
hasObservers(this.filterChange) ||
|
|
389
397
|
hasObservers(this.close) ||
|
|
390
|
-
isUntouched(this.wrapper.nativeElement)
|
|
398
|
+
isUntouched(this.wrapper.nativeElement) ||
|
|
399
|
+
this.formControl?.updateOn === 'blur') {
|
|
391
400
|
this._zone.run(() => {
|
|
392
401
|
this.closePopup();
|
|
393
402
|
if (!(this.isOpen && this.allowCustom)) {
|
|
@@ -1674,7 +1683,7 @@ export class MultiSelectComponent {
|
|
|
1674
1683
|
this.actionSheetSearchBar.focus();
|
|
1675
1684
|
}
|
|
1676
1685
|
}
|
|
1677
|
-
MultiSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MultiSelectComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2.PopupService }, { token: i3.DataService }, { token: i4.SelectionService }, { token: i5.NavigationService }, { token: i6.DisabledItemsService }, { token: i0.ChangeDetectorRef }, { token: i0.KeyValueDiffers }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: TOUCH_ENABLED, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
1686
|
+
MultiSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MultiSelectComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2.PopupService }, { token: i3.DataService }, { token: i4.SelectionService }, { token: i5.NavigationService }, { token: i6.DisabledItemsService }, { token: i0.ChangeDetectorRef }, { token: i0.KeyValueDiffers }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: TOUCH_ENABLED, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
1678
1687
|
MultiSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: MultiSelectComponent, selector: "kendo-multiselect", inputs: { showStickyHeader: "showStickyHeader", 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", adaptiveMode: "adaptiveMode", title: "title", subtitle: "subtitle", 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: { 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: [
|
|
1679
1688
|
MULTISELECT_VALUE_ACCESSOR,
|
|
1680
1689
|
DataService,
|
|
@@ -2073,7 +2082,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
2073
2082
|
}, {
|
|
2074
2083
|
type: Inject,
|
|
2075
2084
|
args: [TOUCH_ENABLED]
|
|
2076
|
-
}] }]; }, propDecorators: { responsiveRendererComponent: [{
|
|
2085
|
+
}] }, { type: i0.Injector }]; }, propDecorators: { responsiveRendererComponent: [{
|
|
2077
2086
|
type: ViewChild,
|
|
2078
2087
|
args: [ResponsiveRendererComponent]
|
|
2079
2088
|
}], showStickyHeader: [{
|
|
@@ -9,7 +9,7 @@ export const packageMetadata = {
|
|
|
9
9
|
name: '@progress/kendo-angular-dropdowns',
|
|
10
10
|
productName: 'Kendo UI for Angular',
|
|
11
11
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
12
|
-
publishDate:
|
|
13
|
-
version: '14.0.2-develop.
|
|
12
|
+
publishDate: 1698414197,
|
|
13
|
+
version: '14.0.2-develop.16',
|
|
14
14
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
15
15
|
};
|
|
@@ -38,8 +38,8 @@ const packageMetadata = {
|
|
|
38
38
|
name: '@progress/kendo-angular-dropdowns',
|
|
39
39
|
productName: 'Kendo UI for Angular',
|
|
40
40
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
41
|
-
publishDate:
|
|
42
|
-
version: '14.0.2-develop.
|
|
41
|
+
publishDate: 1698414197,
|
|
42
|
+
version: '14.0.2-develop.16',
|
|
43
43
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
44
44
|
};
|
|
45
45
|
|
|
@@ -2863,7 +2863,7 @@ const AUTOCOMPLETE_VALUE_ACCESSOR = {
|
|
|
2863
2863
|
* ```
|
|
2864
2864
|
*/
|
|
2865
2865
|
class AutoCompleteComponent {
|
|
2866
|
-
constructor(localization, dataService, popupService, selectionService, navigationService, disabledItemsService, _zone, cdr, renderer, hostElement, touchEnabled) {
|
|
2866
|
+
constructor(localization, dataService, popupService, selectionService, navigationService, disabledItemsService, _zone, cdr, renderer, hostElement, touchEnabled, injector) {
|
|
2867
2867
|
this.localization = localization;
|
|
2868
2868
|
this.dataService = dataService;
|
|
2869
2869
|
this.popupService = popupService;
|
|
@@ -2875,6 +2875,7 @@ class AutoCompleteComponent {
|
|
|
2875
2875
|
this.renderer = renderer;
|
|
2876
2876
|
this.hostElement = hostElement;
|
|
2877
2877
|
this.touchEnabled = touchEnabled;
|
|
2878
|
+
this.injector = injector;
|
|
2878
2879
|
/**
|
|
2879
2880
|
* @hidden
|
|
2880
2881
|
*/
|
|
@@ -3325,6 +3326,13 @@ class AutoCompleteComponent {
|
|
|
3325
3326
|
get isAdaptive() {
|
|
3326
3327
|
return this.isAdaptiveModeEnabled && this.windowSize !== 'large';
|
|
3327
3328
|
}
|
|
3329
|
+
/**
|
|
3330
|
+
* @hidden
|
|
3331
|
+
*/
|
|
3332
|
+
get formControl() {
|
|
3333
|
+
const ngControl = this.injector.get(NgControl, null);
|
|
3334
|
+
return (ngControl === null || ngControl === void 0 ? void 0 : ngControl.control) || null;
|
|
3335
|
+
}
|
|
3328
3336
|
ngOnInit() {
|
|
3329
3337
|
this.renderer.removeAttribute(this.wrapper, "tabindex");
|
|
3330
3338
|
this.subs.add(this.localization
|
|
@@ -3605,6 +3613,7 @@ class AutoCompleteComponent {
|
|
|
3605
3613
|
* @hidden
|
|
3606
3614
|
*/
|
|
3607
3615
|
handleBlur() {
|
|
3616
|
+
var _a;
|
|
3608
3617
|
if (!this.isActionSheetExpanded) {
|
|
3609
3618
|
const focused = this.filterable ? this.selectionService.focused : -1;
|
|
3610
3619
|
this.searchbar.input.nativeElement.scrollLeft = 0; // Firefox doesn't auto-scroll to the left on blur like other browsers
|
|
@@ -3624,7 +3633,11 @@ class AutoCompleteComponent {
|
|
|
3624
3633
|
}
|
|
3625
3634
|
this.isFocused = false;
|
|
3626
3635
|
const valueHasChanged = this.value !== this.text;
|
|
3627
|
-
const runInZone = hasObservers(this.onBlur) ||
|
|
3636
|
+
const runInZone = hasObservers(this.onBlur) ||
|
|
3637
|
+
hasObservers(this.close) ||
|
|
3638
|
+
isUntouched(this.wrapper) ||
|
|
3639
|
+
valueHasChanged ||
|
|
3640
|
+
((_a = this.formControl) === null || _a === void 0 ? void 0 : _a.updateOn) === 'blur';
|
|
3628
3641
|
if (runInZone) {
|
|
3629
3642
|
this._zone.run(() => {
|
|
3630
3643
|
if (valueHasChanged) {
|
|
@@ -3853,7 +3866,7 @@ class AutoCompleteComponent {
|
|
|
3853
3866
|
this.actionSheetSearchBar.focus();
|
|
3854
3867
|
}
|
|
3855
3868
|
}
|
|
3856
|
-
AutoCompleteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AutoCompleteComponent, deps: [{ token: i1.LocalizationService }, { token: DataService }, { token: i2$1.PopupService }, { token: SelectionService }, { token: NavigationService }, { token: DisabledItemsService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: TOUCH_ENABLED, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
3869
|
+
AutoCompleteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AutoCompleteComponent, deps: [{ token: i1.LocalizationService }, { token: DataService }, { token: i2$1.PopupService }, { token: SelectionService }, { token: NavigationService }, { token: DisabledItemsService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: TOUCH_ENABLED, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
3857
3870
|
AutoCompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AutoCompleteComponent, selector: "kendo-autocomplete", inputs: { highlightFirst: "highlightFirst", showStickyHeader: "showStickyHeader", focusableId: "focusableId", data: "data", value: "value", valueField: "valueField", placeholder: "placeholder", adaptiveMode: "adaptiveMode", title: "title", subtitle: "subtitle", popupSettings: "popupSettings", listHeight: "listHeight", loading: "loading", clearButton: "clearButton", suggest: "suggest", disabled: "disabled", itemDisabled: "itemDisabled", readonly: "readonly", tabindex: "tabindex", tabIndex: "tabIndex", filterable: "filterable", virtual: "virtual", size: "size", rounded: "rounded", fillMode: "fillMode" }, outputs: { valueChange: "valueChange", filterChange: "filterChange", open: "open", opened: "opened", close: "close", closed: "closed", onFocus: "focus", onBlur: "blur" }, host: { properties: { "class.k-autocomplete": "this.widgetClasses", "class.k-input": "this.widgetClasses", "class.k-disabled": "this.isDisabled", "class.k-loading": "this.isLoading", "attr.dir": "this.dir" } }, providers: [
|
|
3858
3871
|
AUTOCOMPLETE_VALUE_ACCESSOR,
|
|
3859
3872
|
DataService,
|
|
@@ -4137,7 +4150,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
4137
4150
|
}, {
|
|
4138
4151
|
type: Inject,
|
|
4139
4152
|
args: [TOUCH_ENABLED]
|
|
4140
|
-
}] }];
|
|
4153
|
+
}] }, { type: i0.Injector }];
|
|
4141
4154
|
}, propDecorators: { responsiveRendererComponent: [{
|
|
4142
4155
|
type: ViewChild,
|
|
4143
4156
|
args: [ResponsiveRendererComponent]
|
|
@@ -4344,7 +4357,7 @@ const DEFAULT_FILL_MODE$4 = 'solid';
|
|
|
4344
4357
|
* ```
|
|
4345
4358
|
*/
|
|
4346
4359
|
class ComboBoxComponent {
|
|
4347
|
-
constructor(wrapper, localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, cdr, renderer, touchEnabled) {
|
|
4360
|
+
constructor(wrapper, localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, cdr, renderer, touchEnabled, injector) {
|
|
4348
4361
|
this.wrapper = wrapper;
|
|
4349
4362
|
this.localization = localization;
|
|
4350
4363
|
this.popupService = popupService;
|
|
@@ -4356,6 +4369,7 @@ class ComboBoxComponent {
|
|
|
4356
4369
|
this.cdr = cdr;
|
|
4357
4370
|
this.renderer = renderer;
|
|
4358
4371
|
this.touchEnabled = touchEnabled;
|
|
4372
|
+
this.injector = injector;
|
|
4359
4373
|
/**
|
|
4360
4374
|
* @hidden
|
|
4361
4375
|
*/
|
|
@@ -4833,6 +4847,13 @@ class ComboBoxComponent {
|
|
|
4833
4847
|
return 'visible';
|
|
4834
4848
|
}
|
|
4835
4849
|
}
|
|
4850
|
+
/**
|
|
4851
|
+
* @hidden
|
|
4852
|
+
*/
|
|
4853
|
+
get formControl() {
|
|
4854
|
+
const ngControl = this.injector.get(NgControl, null);
|
|
4855
|
+
return (ngControl === null || ngControl === void 0 ? void 0 : ngControl.control) || null;
|
|
4856
|
+
}
|
|
4836
4857
|
/**
|
|
4837
4858
|
* @hidden
|
|
4838
4859
|
*/
|
|
@@ -5413,6 +5434,7 @@ class ComboBoxComponent {
|
|
|
5413
5434
|
* @hidden
|
|
5414
5435
|
*/
|
|
5415
5436
|
handleBlur() {
|
|
5437
|
+
var _a;
|
|
5416
5438
|
if (!this.isActionSheetExpanded) {
|
|
5417
5439
|
this._filtering = false;
|
|
5418
5440
|
this.searchbar.input.nativeElement.scrollLeft = 0; // Firefox doesn't auto-scroll to the left on blur like other browsers
|
|
@@ -5421,7 +5443,11 @@ class ComboBoxComponent {
|
|
|
5421
5443
|
const currentText = this.searchbar.value;
|
|
5422
5444
|
const textHasChanged = currentText !== (getter(this.dataItem, this.textField) || '');
|
|
5423
5445
|
const valueHasChanged = unresolvedSelection || textHasChanged;
|
|
5424
|
-
const runInZone = valueHasChanged ||
|
|
5446
|
+
const runInZone = valueHasChanged ||
|
|
5447
|
+
hasObservers(this.onBlur) ||
|
|
5448
|
+
hasObservers(this.close) ||
|
|
5449
|
+
isUntouched(this.wrapper.nativeElement) ||
|
|
5450
|
+
((_a = this.formControl) === null || _a === void 0 ? void 0 : _a.updateOn) === 'blur';
|
|
5425
5451
|
if (runInZone) {
|
|
5426
5452
|
this.zone.run(() => {
|
|
5427
5453
|
if (valueHasChanged) {
|
|
@@ -5720,7 +5746,7 @@ class ComboBoxComponent {
|
|
|
5720
5746
|
this.actionSheetSearchBar.focus();
|
|
5721
5747
|
}
|
|
5722
5748
|
}
|
|
5723
|
-
ComboBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ComboBoxComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2$1.PopupService }, { token: SelectionService }, { token: NavigationService }, { token: DisabledItemsService }, { token: DataService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: TOUCH_ENABLED, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
5749
|
+
ComboBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ComboBoxComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2$1.PopupService }, { token: SelectionService }, { token: NavigationService }, { token: DisabledItemsService }, { token: DataService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: TOUCH_ENABLED, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
5724
5750
|
ComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ComboBoxComponent, selector: "kendo-combobox", inputs: { icon: "icon", svgIcon: "svgIcon", showStickyHeader: "showStickyHeader", focusableId: "focusableId", allowCustom: "allowCustom", data: "data", value: "value", textField: "textField", valueField: "valueField", valuePrimitive: "valuePrimitive", valueNormalizer: "valueNormalizer", placeholder: "placeholder", adaptiveMode: "adaptiveMode", title: "title", subtitle: "subtitle", popupSettings: "popupSettings", listHeight: "listHeight", loading: "loading", suggest: "suggest", clearButton: "clearButton", disabled: "disabled", itemDisabled: "itemDisabled", readonly: "readonly", tabindex: "tabindex", tabIndex: "tabIndex", filterable: "filterable", virtual: "virtual", size: "size", rounded: "rounded", fillMode: "fillMode" }, outputs: { valueChange: "valueChange", selectionChange: "selectionChange", filterChange: "filterChange", open: "open", opened: "opened", close: "close", closed: "closed", onFocus: "focus", onBlur: "blur" }, host: { properties: { "class.k-combobox": "this.widgetClasses", "class.k-input": "this.widgetClasses", "class.k-disabled": "this.isDisabled", "class.k-loading": "this.isLoading", "attr.dir": "this.dir" } }, providers: [
|
|
5725
5751
|
COMBOBOX_VALUE_ACCESSOR,
|
|
5726
5752
|
DataService,
|
|
@@ -6044,7 +6070,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
6044
6070
|
}, {
|
|
6045
6071
|
type: Inject,
|
|
6046
6072
|
args: [TOUCH_ENABLED]
|
|
6047
|
-
}] }];
|
|
6073
|
+
}] }, { type: i0.Injector }];
|
|
6048
6074
|
}, propDecorators: { icon: [{
|
|
6049
6075
|
type: Input
|
|
6050
6076
|
}], svgIcon: [{
|
|
@@ -7367,6 +7393,7 @@ class DropDownListComponent {
|
|
|
7367
7393
|
}
|
|
7368
7394
|
}
|
|
7369
7395
|
componentBlur() {
|
|
7396
|
+
var _a;
|
|
7370
7397
|
if (!this.isActionSheetExpanded) {
|
|
7371
7398
|
this.isFocused = false;
|
|
7372
7399
|
const selectionPresent = isPresent(this.selectionService.selected[0]);
|
|
@@ -7375,7 +7402,8 @@ class DropDownListComponent {
|
|
|
7375
7402
|
hasObservers(this.close) ||
|
|
7376
7403
|
hasObservers(this.onBlur) ||
|
|
7377
7404
|
hasObservers(this.filterChange) ||
|
|
7378
|
-
isUntouched(this.wrapper.nativeElement)
|
|
7405
|
+
isUntouched(this.wrapper.nativeElement) ||
|
|
7406
|
+
((_a = this.formControl) === null || _a === void 0 ? void 0 : _a.updateOn) === 'blur') {
|
|
7379
7407
|
this._zone.run(() => {
|
|
7380
7408
|
if (valueHasChanged) {
|
|
7381
7409
|
this.selectionService.change(this.selectionService.selected[0]);
|
|
@@ -8581,7 +8609,7 @@ const DEFAULT_FILL_MODE$2 = 'solid';
|
|
|
8581
8609
|
* ```
|
|
8582
8610
|
*/
|
|
8583
8611
|
class MultiSelectComponent {
|
|
8584
|
-
constructor(wrapper, localization, popupService, dataService, selectionService, navigationService, disabledItemsService, cdr, differs, renderer, _zone, touchEnabled) {
|
|
8612
|
+
constructor(wrapper, localization, popupService, dataService, selectionService, navigationService, disabledItemsService, cdr, differs, renderer, _zone, touchEnabled, injector) {
|
|
8585
8613
|
this.wrapper = wrapper;
|
|
8586
8614
|
this.localization = localization;
|
|
8587
8615
|
this.popupService = popupService;
|
|
@@ -8594,6 +8622,7 @@ class MultiSelectComponent {
|
|
|
8594
8622
|
this.renderer = renderer;
|
|
8595
8623
|
this._zone = _zone;
|
|
8596
8624
|
this.touchEnabled = touchEnabled;
|
|
8625
|
+
this.injector = injector;
|
|
8597
8626
|
/**
|
|
8598
8627
|
* @hidden
|
|
8599
8628
|
*/
|
|
@@ -8823,6 +8852,13 @@ class MultiSelectComponent {
|
|
|
8823
8852
|
get ariaControls() {
|
|
8824
8853
|
return this.isOpen ? this.listBoxId : undefined;
|
|
8825
8854
|
}
|
|
8855
|
+
/**
|
|
8856
|
+
* @hidden
|
|
8857
|
+
*/
|
|
8858
|
+
get formControl() {
|
|
8859
|
+
const ngControl = this.injector.get(NgControl, null);
|
|
8860
|
+
return (ngControl === null || ngControl === void 0 ? void 0 : ngControl.control) || null;
|
|
8861
|
+
}
|
|
8826
8862
|
/**
|
|
8827
8863
|
* Focuses a specific item of the MultiSelect based on a provided index.
|
|
8828
8864
|
* If there is a custom item it is positioned at index -1.
|
|
@@ -8881,6 +8917,7 @@ class MultiSelectComponent {
|
|
|
8881
8917
|
* @hidden
|
|
8882
8918
|
*/
|
|
8883
8919
|
onSearchBarBlur() {
|
|
8920
|
+
var _a;
|
|
8884
8921
|
if (!this.isActionSheetExpanded) {
|
|
8885
8922
|
if (!this.isFocused) {
|
|
8886
8923
|
return;
|
|
@@ -8889,7 +8926,8 @@ class MultiSelectComponent {
|
|
|
8889
8926
|
if (hasObservers(this.onBlur) ||
|
|
8890
8927
|
hasObservers(this.filterChange) ||
|
|
8891
8928
|
hasObservers(this.close) ||
|
|
8892
|
-
isUntouched(this.wrapper.nativeElement)
|
|
8929
|
+
isUntouched(this.wrapper.nativeElement) ||
|
|
8930
|
+
((_a = this.formControl) === null || _a === void 0 ? void 0 : _a.updateOn) === 'blur') {
|
|
8893
8931
|
this._zone.run(() => {
|
|
8894
8932
|
this.closePopup();
|
|
8895
8933
|
if (!(this.isOpen && this.allowCustom)) {
|
|
@@ -10177,7 +10215,7 @@ class MultiSelectComponent {
|
|
|
10177
10215
|
this.actionSheetSearchBar.focus();
|
|
10178
10216
|
}
|
|
10179
10217
|
}
|
|
10180
|
-
MultiSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MultiSelectComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2$1.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 });
|
|
10218
|
+
MultiSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MultiSelectComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2$1.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 }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
10181
10219
|
MultiSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: MultiSelectComponent, selector: "kendo-multiselect", inputs: { showStickyHeader: "showStickyHeader", 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", adaptiveMode: "adaptiveMode", title: "title", subtitle: "subtitle", 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: { 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: [
|
|
10182
10220
|
MULTISELECT_VALUE_ACCESSOR,
|
|
10183
10221
|
DataService,
|
|
@@ -10577,7 +10615,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
10577
10615
|
}, {
|
|
10578
10616
|
type: Inject,
|
|
10579
10617
|
args: [TOUCH_ENABLED]
|
|
10580
|
-
}] }];
|
|
10618
|
+
}] }, { type: i0.Injector }];
|
|
10581
10619
|
}, propDecorators: { responsiveRendererComponent: [{
|
|
10582
10620
|
type: ViewChild,
|
|
10583
10621
|
args: [ResponsiveRendererComponent]
|
|
@@ -10870,8 +10908,8 @@ const getRowWidthFromColumnsMeta = (columns) => {
|
|
|
10870
10908
|
* Represents the [Kendo UI MultiColumnComboBox component for Angular]({% slug overview_multicolumncombobox %}).
|
|
10871
10909
|
*/
|
|
10872
10910
|
class MultiColumnComboBoxComponent extends ComboBoxComponent {
|
|
10873
|
-
constructor(localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, changeDetector, renderer, wrapper, touchEnabled) {
|
|
10874
|
-
super(wrapper, localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, changeDetector, renderer, touchEnabled);
|
|
10911
|
+
constructor(localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, changeDetector, renderer, wrapper, touchEnabled, injector) {
|
|
10912
|
+
super(wrapper, localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, changeDetector, renderer, touchEnabled, injector);
|
|
10875
10913
|
/**
|
|
10876
10914
|
* @hidden
|
|
10877
10915
|
*/
|
|
@@ -10994,7 +11032,7 @@ class MultiColumnComboBoxComponent extends ComboBoxComponent {
|
|
|
10994
11032
|
});
|
|
10995
11033
|
}
|
|
10996
11034
|
}
|
|
10997
|
-
MultiColumnComboBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MultiColumnComboBoxComponent, deps: [{ token: i1.LocalizationService }, { token: i2$1.PopupService }, { token: SelectionService }, { token: NavigationService }, { token: DisabledItemsService }, { token: DataService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: TOUCH_ENABLED }], target: i0.ɵɵFactoryTarget.Component });
|
|
11035
|
+
MultiColumnComboBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MultiColumnComboBoxComponent, deps: [{ token: i1.LocalizationService }, { token: i2$1.PopupService }, { token: SelectionService }, { token: NavigationService }, { token: DisabledItemsService }, { token: DataService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: TOUCH_ENABLED }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
10998
11036
|
MultiColumnComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: MultiColumnComboBoxComponent, selector: "kendo-multicolumncombobox", host: { properties: { "class.k-dropdowngrid": "this.hostClasses", "class.k-disabled": "this.isDisabled" } }, providers: [
|
|
10999
11037
|
SelectionService,
|
|
11000
11038
|
DataService,
|
|
@@ -11513,7 +11551,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
11513
11551
|
return [{ type: i1.LocalizationService }, { type: i2$1.PopupService }, { type: SelectionService }, { type: NavigationService }, { type: DisabledItemsService }, { type: DataService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: undefined, decorators: [{
|
|
11514
11552
|
type: Inject,
|
|
11515
11553
|
args: [TOUCH_ENABLED]
|
|
11516
|
-
}] }];
|
|
11554
|
+
}] }, { type: i0.Injector }];
|
|
11517
11555
|
}, propDecorators: { hostClasses: [{
|
|
11518
11556
|
type: HostBinding,
|
|
11519
11557
|
args: ['class.k-dropdowngrid']
|
|
@@ -12205,6 +12243,7 @@ class DropDownTreeComponent {
|
|
|
12205
12243
|
* @hidden
|
|
12206
12244
|
*/
|
|
12207
12245
|
handleBlur(e) {
|
|
12246
|
+
var _a;
|
|
12208
12247
|
if (!this.isActionSheetExpanded) {
|
|
12209
12248
|
const relatedTarget = e && e.relatedTarget;
|
|
12210
12249
|
if (this.wrapper.nativeElement.contains(relatedTarget) ||
|
|
@@ -12214,7 +12253,8 @@ class DropDownTreeComponent {
|
|
|
12214
12253
|
this.isFocused = false;
|
|
12215
12254
|
this.togglePopup(false);
|
|
12216
12255
|
if (hasObservers(this.onBlur) ||
|
|
12217
|
-
isUntouched(this.wrapper.nativeElement)
|
|
12256
|
+
isUntouched(this.wrapper.nativeElement) ||
|
|
12257
|
+
((_a = this.formControl) === null || _a === void 0 ? void 0 : _a.updateOn) === 'blur') {
|
|
12218
12258
|
this._zone.run(() => {
|
|
12219
12259
|
this.onBlur.emit();
|
|
12220
12260
|
this.onTouchedCallback();
|
|
@@ -14647,6 +14687,7 @@ class MultiSelectTreeComponent {
|
|
|
14647
14687
|
* @hidden
|
|
14648
14688
|
*/
|
|
14649
14689
|
handleBlur(e) {
|
|
14690
|
+
var _a;
|
|
14650
14691
|
if (!this.isActionSheetExpanded) {
|
|
14651
14692
|
const relatedTarget = e && e.relatedTarget;
|
|
14652
14693
|
if (this.wrapper.nativeElement.contains(relatedTarget) ||
|
|
@@ -14656,7 +14697,8 @@ class MultiSelectTreeComponent {
|
|
|
14656
14697
|
this.isFocused = false;
|
|
14657
14698
|
this.togglePopup(false);
|
|
14658
14699
|
if (hasObservers(this.onBlur) ||
|
|
14659
|
-
isUntouched(this.wrapper.nativeElement)
|
|
14700
|
+
isUntouched(this.wrapper.nativeElement) ||
|
|
14701
|
+
((_a = this.formControl) === null || _a === void 0 ? void 0 : _a.updateOn) === 'blur') {
|
|
14660
14702
|
this._zone.run(() => {
|
|
14661
14703
|
this.onBlur.emit();
|
|
14662
14704
|
this.onTouchedCallback();
|
|
@@ -38,8 +38,8 @@ const packageMetadata = {
|
|
|
38
38
|
name: '@progress/kendo-angular-dropdowns',
|
|
39
39
|
productName: 'Kendo UI for Angular',
|
|
40
40
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
41
|
-
publishDate:
|
|
42
|
-
version: '14.0.2-develop.
|
|
41
|
+
publishDate: 1698414197,
|
|
42
|
+
version: '14.0.2-develop.16',
|
|
43
43
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
44
44
|
};
|
|
45
45
|
|
|
@@ -2862,7 +2862,7 @@ const AUTOCOMPLETE_VALUE_ACCESSOR = {
|
|
|
2862
2862
|
* ```
|
|
2863
2863
|
*/
|
|
2864
2864
|
class AutoCompleteComponent {
|
|
2865
|
-
constructor(localization, dataService, popupService, selectionService, navigationService, disabledItemsService, _zone, cdr, renderer, hostElement, touchEnabled) {
|
|
2865
|
+
constructor(localization, dataService, popupService, selectionService, navigationService, disabledItemsService, _zone, cdr, renderer, hostElement, touchEnabled, injector) {
|
|
2866
2866
|
this.localization = localization;
|
|
2867
2867
|
this.dataService = dataService;
|
|
2868
2868
|
this.popupService = popupService;
|
|
@@ -2874,6 +2874,7 @@ class AutoCompleteComponent {
|
|
|
2874
2874
|
this.renderer = renderer;
|
|
2875
2875
|
this.hostElement = hostElement;
|
|
2876
2876
|
this.touchEnabled = touchEnabled;
|
|
2877
|
+
this.injector = injector;
|
|
2877
2878
|
/**
|
|
2878
2879
|
* @hidden
|
|
2879
2880
|
*/
|
|
@@ -3321,6 +3322,13 @@ class AutoCompleteComponent {
|
|
|
3321
3322
|
get isAdaptive() {
|
|
3322
3323
|
return this.isAdaptiveModeEnabled && this.windowSize !== 'large';
|
|
3323
3324
|
}
|
|
3325
|
+
/**
|
|
3326
|
+
* @hidden
|
|
3327
|
+
*/
|
|
3328
|
+
get formControl() {
|
|
3329
|
+
const ngControl = this.injector.get(NgControl, null);
|
|
3330
|
+
return ngControl?.control || null;
|
|
3331
|
+
}
|
|
3324
3332
|
ngOnInit() {
|
|
3325
3333
|
this.renderer.removeAttribute(this.wrapper, "tabindex");
|
|
3326
3334
|
this.subs.add(this.localization
|
|
@@ -3620,7 +3628,11 @@ class AutoCompleteComponent {
|
|
|
3620
3628
|
}
|
|
3621
3629
|
this.isFocused = false;
|
|
3622
3630
|
const valueHasChanged = this.value !== this.text;
|
|
3623
|
-
const runInZone = hasObservers(this.onBlur) ||
|
|
3631
|
+
const runInZone = hasObservers(this.onBlur) ||
|
|
3632
|
+
hasObservers(this.close) ||
|
|
3633
|
+
isUntouched(this.wrapper) ||
|
|
3634
|
+
valueHasChanged ||
|
|
3635
|
+
this.formControl?.updateOn === 'blur';
|
|
3624
3636
|
if (runInZone) {
|
|
3625
3637
|
this._zone.run(() => {
|
|
3626
3638
|
if (valueHasChanged) {
|
|
@@ -3849,7 +3861,7 @@ class AutoCompleteComponent {
|
|
|
3849
3861
|
this.actionSheetSearchBar.focus();
|
|
3850
3862
|
}
|
|
3851
3863
|
}
|
|
3852
|
-
AutoCompleteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AutoCompleteComponent, deps: [{ token: i1.LocalizationService }, { token: DataService }, { token: i2$1.PopupService }, { token: SelectionService }, { token: NavigationService }, { token: DisabledItemsService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: TOUCH_ENABLED, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
3864
|
+
AutoCompleteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AutoCompleteComponent, deps: [{ token: i1.LocalizationService }, { token: DataService }, { token: i2$1.PopupService }, { token: SelectionService }, { token: NavigationService }, { token: DisabledItemsService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: TOUCH_ENABLED, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
3853
3865
|
AutoCompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AutoCompleteComponent, selector: "kendo-autocomplete", inputs: { highlightFirst: "highlightFirst", showStickyHeader: "showStickyHeader", focusableId: "focusableId", data: "data", value: "value", valueField: "valueField", placeholder: "placeholder", adaptiveMode: "adaptiveMode", title: "title", subtitle: "subtitle", popupSettings: "popupSettings", listHeight: "listHeight", loading: "loading", clearButton: "clearButton", suggest: "suggest", disabled: "disabled", itemDisabled: "itemDisabled", readonly: "readonly", tabindex: "tabindex", tabIndex: "tabIndex", filterable: "filterable", virtual: "virtual", size: "size", rounded: "rounded", fillMode: "fillMode" }, outputs: { valueChange: "valueChange", filterChange: "filterChange", open: "open", opened: "opened", close: "close", closed: "closed", onFocus: "focus", onBlur: "blur" }, host: { properties: { "class.k-autocomplete": "this.widgetClasses", "class.k-input": "this.widgetClasses", "class.k-disabled": "this.isDisabled", "class.k-loading": "this.isLoading", "attr.dir": "this.dir" } }, providers: [
|
|
3854
3866
|
AUTOCOMPLETE_VALUE_ACCESSOR,
|
|
3855
3867
|
DataService,
|
|
@@ -4132,7 +4144,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
4132
4144
|
}, {
|
|
4133
4145
|
type: Inject,
|
|
4134
4146
|
args: [TOUCH_ENABLED]
|
|
4135
|
-
}] }]; }, propDecorators: { responsiveRendererComponent: [{
|
|
4147
|
+
}] }, { type: i0.Injector }]; }, propDecorators: { responsiveRendererComponent: [{
|
|
4136
4148
|
type: ViewChild,
|
|
4137
4149
|
args: [ResponsiveRendererComponent]
|
|
4138
4150
|
}], highlightFirst: [{
|
|
@@ -4338,7 +4350,7 @@ const DEFAULT_FILL_MODE$4 = 'solid';
|
|
|
4338
4350
|
* ```
|
|
4339
4351
|
*/
|
|
4340
4352
|
class ComboBoxComponent {
|
|
4341
|
-
constructor(wrapper, localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, cdr, renderer, touchEnabled) {
|
|
4353
|
+
constructor(wrapper, localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, cdr, renderer, touchEnabled, injector) {
|
|
4342
4354
|
this.wrapper = wrapper;
|
|
4343
4355
|
this.localization = localization;
|
|
4344
4356
|
this.popupService = popupService;
|
|
@@ -4350,6 +4362,7 @@ class ComboBoxComponent {
|
|
|
4350
4362
|
this.cdr = cdr;
|
|
4351
4363
|
this.renderer = renderer;
|
|
4352
4364
|
this.touchEnabled = touchEnabled;
|
|
4365
|
+
this.injector = injector;
|
|
4353
4366
|
/**
|
|
4354
4367
|
* @hidden
|
|
4355
4368
|
*/
|
|
@@ -4825,6 +4838,13 @@ class ComboBoxComponent {
|
|
|
4825
4838
|
return 'visible';
|
|
4826
4839
|
}
|
|
4827
4840
|
}
|
|
4841
|
+
/**
|
|
4842
|
+
* @hidden
|
|
4843
|
+
*/
|
|
4844
|
+
get formControl() {
|
|
4845
|
+
const ngControl = this.injector.get(NgControl, null);
|
|
4846
|
+
return ngControl?.control || null;
|
|
4847
|
+
}
|
|
4828
4848
|
/**
|
|
4829
4849
|
* @hidden
|
|
4830
4850
|
*/
|
|
@@ -5412,7 +5432,11 @@ class ComboBoxComponent {
|
|
|
5412
5432
|
const currentText = this.searchbar.value;
|
|
5413
5433
|
const textHasChanged = currentText !== (getter(this.dataItem, this.textField) || '');
|
|
5414
5434
|
const valueHasChanged = unresolvedSelection || textHasChanged;
|
|
5415
|
-
const runInZone = valueHasChanged ||
|
|
5435
|
+
const runInZone = valueHasChanged ||
|
|
5436
|
+
hasObservers(this.onBlur) ||
|
|
5437
|
+
hasObservers(this.close) ||
|
|
5438
|
+
isUntouched(this.wrapper.nativeElement) ||
|
|
5439
|
+
this.formControl?.updateOn === 'blur';
|
|
5416
5440
|
if (runInZone) {
|
|
5417
5441
|
this.zone.run(() => {
|
|
5418
5442
|
if (valueHasChanged) {
|
|
@@ -5711,7 +5735,7 @@ class ComboBoxComponent {
|
|
|
5711
5735
|
this.actionSheetSearchBar.focus();
|
|
5712
5736
|
}
|
|
5713
5737
|
}
|
|
5714
|
-
ComboBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ComboBoxComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2$1.PopupService }, { token: SelectionService }, { token: NavigationService }, { token: DisabledItemsService }, { token: DataService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: TOUCH_ENABLED, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
5738
|
+
ComboBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ComboBoxComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2$1.PopupService }, { token: SelectionService }, { token: NavigationService }, { token: DisabledItemsService }, { token: DataService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: TOUCH_ENABLED, optional: true }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
5715
5739
|
ComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ComboBoxComponent, selector: "kendo-combobox", inputs: { icon: "icon", svgIcon: "svgIcon", showStickyHeader: "showStickyHeader", focusableId: "focusableId", allowCustom: "allowCustom", data: "data", value: "value", textField: "textField", valueField: "valueField", valuePrimitive: "valuePrimitive", valueNormalizer: "valueNormalizer", placeholder: "placeholder", adaptiveMode: "adaptiveMode", title: "title", subtitle: "subtitle", popupSettings: "popupSettings", listHeight: "listHeight", loading: "loading", suggest: "suggest", clearButton: "clearButton", disabled: "disabled", itemDisabled: "itemDisabled", readonly: "readonly", tabindex: "tabindex", tabIndex: "tabIndex", filterable: "filterable", virtual: "virtual", size: "size", rounded: "rounded", fillMode: "fillMode" }, outputs: { valueChange: "valueChange", selectionChange: "selectionChange", filterChange: "filterChange", open: "open", opened: "opened", close: "close", closed: "closed", onFocus: "focus", onBlur: "blur" }, host: { properties: { "class.k-combobox": "this.widgetClasses", "class.k-input": "this.widgetClasses", "class.k-disabled": "this.isDisabled", "class.k-loading": "this.isLoading", "attr.dir": "this.dir" } }, providers: [
|
|
5716
5740
|
COMBOBOX_VALUE_ACCESSOR,
|
|
5717
5741
|
DataService,
|
|
@@ -6034,7 +6058,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
6034
6058
|
}, {
|
|
6035
6059
|
type: Inject,
|
|
6036
6060
|
args: [TOUCH_ENABLED]
|
|
6037
|
-
}] }]; }, propDecorators: { icon: [{
|
|
6061
|
+
}] }, { type: i0.Injector }]; }, propDecorators: { icon: [{
|
|
6038
6062
|
type: Input
|
|
6039
6063
|
}], svgIcon: [{
|
|
6040
6064
|
type: Input
|
|
@@ -7360,7 +7384,8 @@ class DropDownListComponent {
|
|
|
7360
7384
|
hasObservers(this.close) ||
|
|
7361
7385
|
hasObservers(this.onBlur) ||
|
|
7362
7386
|
hasObservers(this.filterChange) ||
|
|
7363
|
-
isUntouched(this.wrapper.nativeElement)
|
|
7387
|
+
isUntouched(this.wrapper.nativeElement) ||
|
|
7388
|
+
this.formControl?.updateOn === 'blur') {
|
|
7364
7389
|
this._zone.run(() => {
|
|
7365
7390
|
if (valueHasChanged) {
|
|
7366
7391
|
this.selectionService.change(this.selectionService.selected[0]);
|
|
@@ -8564,7 +8589,7 @@ const DEFAULT_FILL_MODE$2 = 'solid';
|
|
|
8564
8589
|
* ```
|
|
8565
8590
|
*/
|
|
8566
8591
|
class MultiSelectComponent {
|
|
8567
|
-
constructor(wrapper, localization, popupService, dataService, selectionService, navigationService, disabledItemsService, cdr, differs, renderer, _zone, touchEnabled) {
|
|
8592
|
+
constructor(wrapper, localization, popupService, dataService, selectionService, navigationService, disabledItemsService, cdr, differs, renderer, _zone, touchEnabled, injector) {
|
|
8568
8593
|
this.wrapper = wrapper;
|
|
8569
8594
|
this.localization = localization;
|
|
8570
8595
|
this.popupService = popupService;
|
|
@@ -8577,6 +8602,7 @@ class MultiSelectComponent {
|
|
|
8577
8602
|
this.renderer = renderer;
|
|
8578
8603
|
this._zone = _zone;
|
|
8579
8604
|
this.touchEnabled = touchEnabled;
|
|
8605
|
+
this.injector = injector;
|
|
8580
8606
|
/**
|
|
8581
8607
|
* @hidden
|
|
8582
8608
|
*/
|
|
@@ -8804,6 +8830,13 @@ class MultiSelectComponent {
|
|
|
8804
8830
|
get ariaControls() {
|
|
8805
8831
|
return this.isOpen ? this.listBoxId : undefined;
|
|
8806
8832
|
}
|
|
8833
|
+
/**
|
|
8834
|
+
* @hidden
|
|
8835
|
+
*/
|
|
8836
|
+
get formControl() {
|
|
8837
|
+
const ngControl = this.injector.get(NgControl, null);
|
|
8838
|
+
return ngControl?.control || null;
|
|
8839
|
+
}
|
|
8807
8840
|
/**
|
|
8808
8841
|
* Focuses a specific item of the MultiSelect based on a provided index.
|
|
8809
8842
|
* If there is a custom item it is positioned at index -1.
|
|
@@ -8870,7 +8903,8 @@ class MultiSelectComponent {
|
|
|
8870
8903
|
if (hasObservers(this.onBlur) ||
|
|
8871
8904
|
hasObservers(this.filterChange) ||
|
|
8872
8905
|
hasObservers(this.close) ||
|
|
8873
|
-
isUntouched(this.wrapper.nativeElement)
|
|
8906
|
+
isUntouched(this.wrapper.nativeElement) ||
|
|
8907
|
+
this.formControl?.updateOn === 'blur') {
|
|
8874
8908
|
this._zone.run(() => {
|
|
8875
8909
|
this.closePopup();
|
|
8876
8910
|
if (!(this.isOpen && this.allowCustom)) {
|
|
@@ -10157,7 +10191,7 @@ class MultiSelectComponent {
|
|
|
10157
10191
|
this.actionSheetSearchBar.focus();
|
|
10158
10192
|
}
|
|
10159
10193
|
}
|
|
10160
|
-
MultiSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MultiSelectComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2$1.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 });
|
|
10194
|
+
MultiSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MultiSelectComponent, deps: [{ token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i2$1.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 }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
10161
10195
|
MultiSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: MultiSelectComponent, selector: "kendo-multiselect", inputs: { showStickyHeader: "showStickyHeader", 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", adaptiveMode: "adaptiveMode", title: "title", subtitle: "subtitle", 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: { 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: [
|
|
10162
10196
|
MULTISELECT_VALUE_ACCESSOR,
|
|
10163
10197
|
DataService,
|
|
@@ -10556,7 +10590,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
10556
10590
|
}, {
|
|
10557
10591
|
type: Inject,
|
|
10558
10592
|
args: [TOUCH_ENABLED]
|
|
10559
|
-
}] }]; }, propDecorators: { responsiveRendererComponent: [{
|
|
10593
|
+
}] }, { type: i0.Injector }]; }, propDecorators: { responsiveRendererComponent: [{
|
|
10560
10594
|
type: ViewChild,
|
|
10561
10595
|
args: [ResponsiveRendererComponent]
|
|
10562
10596
|
}], showStickyHeader: [{
|
|
@@ -10848,8 +10882,8 @@ const getRowWidthFromColumnsMeta = (columns) => {
|
|
|
10848
10882
|
* Represents the [Kendo UI MultiColumnComboBox component for Angular]({% slug overview_multicolumncombobox %}).
|
|
10849
10883
|
*/
|
|
10850
10884
|
class MultiColumnComboBoxComponent extends ComboBoxComponent {
|
|
10851
|
-
constructor(localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, changeDetector, renderer, wrapper, touchEnabled) {
|
|
10852
|
-
super(wrapper, localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, changeDetector, renderer, touchEnabled);
|
|
10885
|
+
constructor(localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, changeDetector, renderer, wrapper, touchEnabled, injector) {
|
|
10886
|
+
super(wrapper, localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, changeDetector, renderer, touchEnabled, injector);
|
|
10853
10887
|
/**
|
|
10854
10888
|
* @hidden
|
|
10855
10889
|
*/
|
|
@@ -10972,7 +11006,7 @@ class MultiColumnComboBoxComponent extends ComboBoxComponent {
|
|
|
10972
11006
|
});
|
|
10973
11007
|
}
|
|
10974
11008
|
}
|
|
10975
|
-
MultiColumnComboBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MultiColumnComboBoxComponent, deps: [{ token: i1.LocalizationService }, { token: i2$1.PopupService }, { token: SelectionService }, { token: NavigationService }, { token: DisabledItemsService }, { token: DataService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: TOUCH_ENABLED }], target: i0.ɵɵFactoryTarget.Component });
|
|
11009
|
+
MultiColumnComboBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MultiColumnComboBoxComponent, deps: [{ token: i1.LocalizationService }, { token: i2$1.PopupService }, { token: SelectionService }, { token: NavigationService }, { token: DisabledItemsService }, { token: DataService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: TOUCH_ENABLED }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
10976
11010
|
MultiColumnComboBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: MultiColumnComboBoxComponent, selector: "kendo-multicolumncombobox", host: { properties: { "class.k-dropdowngrid": "this.hostClasses", "class.k-disabled": "this.isDisabled" } }, providers: [
|
|
10977
11011
|
SelectionService,
|
|
10978
11012
|
DataService,
|
|
@@ -11490,7 +11524,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
11490
11524
|
}], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i2$1.PopupService }, { type: SelectionService }, { type: NavigationService }, { type: DisabledItemsService }, { type: DataService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: undefined, decorators: [{
|
|
11491
11525
|
type: Inject,
|
|
11492
11526
|
args: [TOUCH_ENABLED]
|
|
11493
|
-
}] }]; }, propDecorators: { hostClasses: [{
|
|
11527
|
+
}] }, { type: i0.Injector }]; }, propDecorators: { hostClasses: [{
|
|
11494
11528
|
type: HostBinding,
|
|
11495
11529
|
args: ['class.k-dropdowngrid']
|
|
11496
11530
|
}], isDisabled: [{
|
|
@@ -12188,7 +12222,8 @@ class DropDownTreeComponent {
|
|
|
12188
12222
|
this.isFocused = false;
|
|
12189
12223
|
this.togglePopup(false);
|
|
12190
12224
|
if (hasObservers(this.onBlur) ||
|
|
12191
|
-
isUntouched(this.wrapper.nativeElement)
|
|
12225
|
+
isUntouched(this.wrapper.nativeElement) ||
|
|
12226
|
+
this.formControl?.updateOn === 'blur') {
|
|
12192
12227
|
this._zone.run(() => {
|
|
12193
12228
|
this.onBlur.emit();
|
|
12194
12229
|
this.onTouchedCallback();
|
|
@@ -14628,7 +14663,8 @@ class MultiSelectTreeComponent {
|
|
|
14628
14663
|
this.isFocused = false;
|
|
14629
14664
|
this.togglePopup(false);
|
|
14630
14665
|
if (hasObservers(this.onBlur) ||
|
|
14631
|
-
isUntouched(this.wrapper.nativeElement)
|
|
14666
|
+
isUntouched(this.wrapper.nativeElement) ||
|
|
14667
|
+
this.formControl?.updateOn === 'blur') {
|
|
14632
14668
|
this._zone.run(() => {
|
|
14633
14669
|
this.onBlur.emit();
|
|
14634
14670
|
this.onTouchedCallback();
|
|
@@ -4,8 +4,9 @@
|
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import { AdaptiveMode, WindowSize } from '../common/util';
|
|
6
6
|
import { SearchBarComponent } from '../common/searchbar.component';
|
|
7
|
-
import { Renderer2, ViewContainerRef, ElementRef, TemplateRef, OnDestroy, OnChanges, DoCheck, EventEmitter, AfterContentChecked, AfterViewInit, ChangeDetectorRef, KeyValueDiffers, NgZone, OnInit } from '@angular/core';
|
|
7
|
+
import { Renderer2, ViewContainerRef, ElementRef, TemplateRef, OnDestroy, OnChanges, DoCheck, EventEmitter, AfterContentChecked, AfterViewInit, ChangeDetectorRef, KeyValueDiffers, NgZone, OnInit, Injector } from '@angular/core';
|
|
8
8
|
import { Observable } from 'rxjs';
|
|
9
|
+
import { FormControl } from '@angular/forms';
|
|
9
10
|
import { SelectionService, SelectionEvent } from '../common/selection/selection.service';
|
|
10
11
|
import { PopupSettings } from '../common/models/popup-settings';
|
|
11
12
|
import { NavigationService } from '../common/navigation/navigation.service';
|
|
@@ -68,6 +69,7 @@ export declare class MultiSelectComponent implements OnDestroy, OnChanges, OnIni
|
|
|
68
69
|
private renderer;
|
|
69
70
|
private _zone;
|
|
70
71
|
private touchEnabled;
|
|
72
|
+
private injector;
|
|
71
73
|
/**
|
|
72
74
|
* @hidden
|
|
73
75
|
*/
|
|
@@ -104,6 +106,10 @@ export declare class MultiSelectComponent implements OnDestroy, OnChanges, OnIni
|
|
|
104
106
|
* @hidden
|
|
105
107
|
*/
|
|
106
108
|
get ariaControls(): string;
|
|
109
|
+
/**
|
|
110
|
+
* @hidden
|
|
111
|
+
*/
|
|
112
|
+
get formControl(): FormControl;
|
|
107
113
|
/**
|
|
108
114
|
* Focuses a specific item of the MultiSelect based on a provided index.
|
|
109
115
|
* If there is a custom item it is positioned at index -1.
|
|
@@ -466,7 +472,7 @@ export declare class MultiSelectComponent implements OnDestroy, OnChanges, OnIni
|
|
|
466
472
|
private _fillMode;
|
|
467
473
|
private _subtitle;
|
|
468
474
|
private _valueHolder;
|
|
469
|
-
constructor(wrapper: ElementRef, localization: LocalizationService, popupService: PopupService, dataService: DataService, selectionService: SelectionService, navigationService: NavigationService, disabledItemsService: DisabledItemsService, cdr: ChangeDetectorRef, differs: KeyValueDiffers, renderer: Renderer2, _zone: NgZone, touchEnabled: boolean);
|
|
475
|
+
constructor(wrapper: ElementRef, localization: LocalizationService, popupService: PopupService, dataService: DataService, selectionService: SelectionService, navigationService: NavigationService, disabledItemsService: DisabledItemsService, cdr: ChangeDetectorRef, differs: KeyValueDiffers, renderer: Renderer2, _zone: NgZone, touchEnabled: boolean, injector: Injector);
|
|
470
476
|
get listContainerClasses(): any[];
|
|
471
477
|
/**
|
|
472
478
|
* @hidden
|
|
@@ -653,6 +659,6 @@ export declare class MultiSelectComponent implements OnDestroy, OnChanges, OnIni
|
|
|
653
659
|
private setComponentClasses;
|
|
654
660
|
private closeActionSheet;
|
|
655
661
|
private openActionSheet;
|
|
656
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<MultiSelectComponent, [null, null, null, null, null, null, null, null, null, null, null, { optional: true; }]>;
|
|
662
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<MultiSelectComponent, [null, null, null, null, null, null, null, null, null, null, null, { optional: true; }, null]>;
|
|
657
663
|
static ɵcmp: i0.ɵɵComponentDeclaration<MultiSelectComponent, "kendo-multiselect", ["kendoMultiSelect"], { "showStickyHeader": "showStickyHeader"; "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"; "adaptiveMode": "adaptiveMode"; "title": "title"; "subtitle": "subtitle"; "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"; }, { "filterChange": "filterChange"; "valueChange": "valueChange"; "open": "open"; "opened": "opened"; "close": "close"; "closed": "closed"; "onFocus": "focus"; "onBlur": "blur"; "removeTag": "removeTag"; }, ["template", "customItemTemplate", "groupTemplate", "fixedGroupTemplate", "headerTemplate", "footerTemplate", "tagTemplate", "groupTagTemplate", "noDataTemplate"], never>;
|
|
658
664
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-angular-dropdowns",
|
|
3
|
-
"version": "14.0.2-develop.
|
|
3
|
+
"version": "14.0.2-develop.16",
|
|
4
4
|
"description": "A wide variety of native Angular dropdown components including AutoComplete, ComboBox, DropDownList, DropDownTree, MultiColumnComboBox, MultiSelect, and MultiSelectTree ",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"author": "Progress",
|
|
@@ -25,18 +25,18 @@
|
|
|
25
25
|
"@angular/forms": "13 - 16",
|
|
26
26
|
"@angular/platform-browser": "13 - 16",
|
|
27
27
|
"@progress/kendo-licensing": "^1.0.2",
|
|
28
|
-
"@progress/kendo-angular-common": "14.0.2-develop.
|
|
29
|
-
"@progress/kendo-angular-l10n": "14.0.2-develop.
|
|
30
|
-
"@progress/kendo-angular-popup": "14.0.2-develop.
|
|
31
|
-
"@progress/kendo-angular-icons": "14.0.2-develop.
|
|
32
|
-
"@progress/kendo-angular-treeview": "14.0.2-develop.
|
|
28
|
+
"@progress/kendo-angular-common": "14.0.2-develop.16",
|
|
29
|
+
"@progress/kendo-angular-l10n": "14.0.2-develop.16",
|
|
30
|
+
"@progress/kendo-angular-popup": "14.0.2-develop.16",
|
|
31
|
+
"@progress/kendo-angular-icons": "14.0.2-develop.16",
|
|
32
|
+
"@progress/kendo-angular-treeview": "14.0.2-develop.16",
|
|
33
33
|
"rxjs": "^6.5.3 || ^7.0.0",
|
|
34
|
-
"@progress/kendo-angular-navigation": "14.0.2-develop.
|
|
35
|
-
"@progress/kendo-angular-label": "14.0.2-develop.
|
|
34
|
+
"@progress/kendo-angular-navigation": "14.0.2-develop.16",
|
|
35
|
+
"@progress/kendo-angular-label": "14.0.2-develop.16"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"tslib": "^2.3.1",
|
|
39
|
-
"@progress/kendo-angular-schematics": "14.0.2-develop.
|
|
39
|
+
"@progress/kendo-angular-schematics": "14.0.2-develop.16",
|
|
40
40
|
"@progress/kendo-common": "^0.2.1"
|
|
41
41
|
},
|
|
42
42
|
"schematics": "./schematics/collection.json",
|
|
@@ -4,9 +4,9 @@ const schematics_1 = require("@angular-devkit/schematics");
|
|
|
4
4
|
function default_1(options) {
|
|
5
5
|
const finalOptions = Object.assign(Object.assign({}, options), { mainNgModule: 'DropDownsModule', package: 'dropdowns', peerDependencies: {
|
|
6
6
|
// peers of the treeview
|
|
7
|
-
'@progress/kendo-angular-inputs': '14.0.2-develop.
|
|
7
|
+
'@progress/kendo-angular-inputs': '14.0.2-develop.16',
|
|
8
8
|
// peers of inputs
|
|
9
|
-
'@progress/kendo-angular-intl': '14.0.2-develop.
|
|
9
|
+
'@progress/kendo-angular-intl': '14.0.2-develop.16',
|
|
10
10
|
'@progress/kendo-drawing': '^1.17.2',
|
|
11
11
|
// Peer dependency of icons
|
|
12
12
|
'@progress/kendo-svg-icons': '^2.0.0'
|