@progress/kendo-angular-dropdowns 5.5.1-dev.202111181325 → 6.0.0-dev.202201190829

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.
Files changed (75) hide show
  1. package/LICENSE.md +1 -1
  2. package/NOTICE.txt +119 -79
  3. package/README.md +1 -1
  4. package/dist/cdn/js/kendo-angular-dropdowns.js +2 -2
  5. package/dist/cdn/main.js +1 -1
  6. package/dist/es/autocomplete/autocomplete.component.js +120 -5
  7. package/dist/es/comboboxes/combobox.component.js +141 -20
  8. package/dist/es/comboboxes/multicolumncombobox.component.js +30 -10
  9. package/dist/es/common/list.component.js +83 -5
  10. package/dist/es/common/models/fillmode.js +4 -0
  11. package/dist/es/common/models/list-type.js +4 -0
  12. package/dist/es/common/models/rounded.js +4 -0
  13. package/dist/es/common/models/size.js +4 -0
  14. package/dist/es/common/searchbar.component.js +1 -1
  15. package/dist/es/common/selection/selectable.directive.js +2 -2
  16. package/dist/es/common/taglist.component.js +58 -5
  17. package/dist/es/common/util.js +37 -0
  18. package/dist/es/dropdownlist/dropdownlist.component.js +338 -46
  19. package/dist/es/dropdowntrees/dropdowntree.component.js +276 -42
  20. package/dist/es/dropdowntrees/multiselecttree.component.js +307 -46
  21. package/dist/es/multiselect/multiselect.component.js +162 -35
  22. package/dist/es/package-metadata.js +1 -1
  23. package/dist/es2015/autocomplete/autocomplete.component.d.ts +42 -0
  24. package/dist/es2015/autocomplete/autocomplete.component.js +109 -7
  25. package/dist/es2015/comboboxes/combobox.component.d.ts +49 -4
  26. package/dist/es2015/comboboxes/combobox.component.js +207 -106
  27. package/dist/es2015/comboboxes/multicolumncombobox.component.d.ts +9 -1
  28. package/dist/es2015/comboboxes/multicolumncombobox.component.js +185 -166
  29. package/dist/es2015/common/list.component.d.ts +22 -1
  30. package/dist/es2015/common/list.component.js +115 -36
  31. package/dist/es2015/common/models/fillmode.d.ts +14 -0
  32. package/dist/es2015/common/models/fillmode.js +4 -0
  33. package/dist/es2015/common/models/list-type.d.ts +8 -0
  34. package/dist/es2015/common/models/list-type.js +4 -0
  35. package/dist/es2015/common/models/rounded.d.ts +15 -0
  36. package/dist/es2015/common/models/rounded.js +4 -0
  37. package/dist/es2015/common/models/size.d.ts +14 -0
  38. package/dist/es2015/common/models/size.js +4 -0
  39. package/dist/es2015/common/searchbar.component.js +1 -1
  40. package/dist/es2015/common/selection/selectable.directive.js +2 -2
  41. package/dist/es2015/common/taglist.component.d.ts +13 -1
  42. package/dist/es2015/common/taglist.component.js +102 -47
  43. package/dist/es2015/common/util.d.ts +17 -0
  44. package/dist/es2015/common/util.js +37 -0
  45. package/dist/es2015/dropdownlist/dropdownlist.component.d.ts +77 -13
  46. package/dist/es2015/dropdownlist/dropdownlist.component.js +390 -159
  47. package/dist/es2015/dropdowntrees/dropdowntree.component.d.ts +71 -13
  48. package/dist/es2015/dropdowntrees/dropdowntree.component.js +287 -99
  49. package/dist/es2015/dropdowntrees/multiselecttree.component.d.ts +72 -12
  50. package/dist/es2015/dropdowntrees/multiselecttree.component.js +319 -117
  51. package/dist/es2015/index.metadata.json +1 -1
  52. package/dist/es2015/multiselect/multiselect.component.d.ts +53 -8
  53. package/dist/es2015/multiselect/multiselect.component.js +183 -70
  54. package/dist/es2015/package-metadata.js +1 -1
  55. package/dist/fesm2015/index.js +1928 -801
  56. package/dist/fesm5/index.js +1569 -231
  57. package/dist/npm/autocomplete/autocomplete.component.js +119 -4
  58. package/dist/npm/comboboxes/combobox.component.js +140 -19
  59. package/dist/npm/comboboxes/multicolumncombobox.component.js +29 -9
  60. package/dist/npm/common/list.component.js +82 -4
  61. package/dist/npm/common/models/fillmode.js +6 -0
  62. package/dist/npm/common/models/list-type.js +6 -0
  63. package/dist/npm/common/models/rounded.js +6 -0
  64. package/dist/npm/common/models/size.js +6 -0
  65. package/dist/npm/common/searchbar.component.js +1 -1
  66. package/dist/npm/common/selection/selectable.directive.js +2 -2
  67. package/dist/npm/common/taglist.component.js +56 -3
  68. package/dist/npm/common/util.js +37 -0
  69. package/dist/npm/dropdownlist/dropdownlist.component.js +336 -44
  70. package/dist/npm/dropdowntrees/dropdowntree.component.js +274 -40
  71. package/dist/npm/dropdowntrees/multiselecttree.component.js +304 -43
  72. package/dist/npm/multiselect/multiselect.component.js +160 -33
  73. package/dist/npm/package-metadata.js +1 -1
  74. package/dist/systemjs/kendo-angular-dropdowns.js +1 -1
  75. package/package.json +21 -17
@@ -25,6 +25,9 @@ import { DataService } from '../common/data.service';
25
25
  import { ListComponent } from '../common/list.component';
26
26
  import { VirtualizationSettings } from '../common/models/virtualization-settings';
27
27
  import { PageChangeEvent } from '../common/models/page-change-event';
28
+ import { DropDownSize } from '../common/models/size';
29
+ import { DropDownRounded } from '../common/models/rounded';
30
+ import { DropDownFillMode } from '../common/models/fillmode';
28
31
  /**
29
32
  * @hidden
30
33
  */
@@ -47,6 +50,7 @@ export declare const COMBOBOX_VALUE_ACCESSOR: any;
47
50
  * ```
48
51
  */
49
52
  export declare class ComboBoxComponent implements ControlValueAccessor, OnDestroy, OnChanges, AfterContentChecked, FilterableComponent {
53
+ wrapper: ElementRef<HTMLElement>;
50
54
  protected localization: LocalizationService;
51
55
  protected popupService: PopupService;
52
56
  protected selectionService: SelectionService;
@@ -56,7 +60,6 @@ export declare class ComboBoxComponent implements ControlValueAccessor, OnDestro
56
60
  protected zone: NgZone;
57
61
  protected cdr: ChangeDetectorRef;
58
62
  protected renderer: Renderer2;
59
- protected hostElement: ElementRef;
60
63
  protected touchEnabled: boolean;
61
64
  text: any;
62
65
  /**
@@ -228,6 +231,40 @@ export declare class ComboBoxComponent implements ControlValueAccessor, OnDestro
228
231
  * Enables the [virtualization]({% slug virtualization_combobox %}) functionality.
229
232
  */
230
233
  virtual: boolean | VirtualizationSettings;
234
+ /**
235
+ * Sets the size of the component.
236
+ *
237
+ * The possible values are:
238
+ * * `'small'`
239
+ * * `'medium'` (default)
240
+ * * `'large'`
241
+ * * `null`
242
+ *
243
+ */
244
+ size: DropDownSize;
245
+ /**
246
+ * Sets the border radius of the component.
247
+ *
248
+ * The possible values are:
249
+ * * `'small'`
250
+ * * `'medium'` (default)
251
+ * * `'large'`
252
+ * * `'full'`
253
+ * * `null`
254
+ *
255
+ */
256
+ rounded: DropDownRounded;
257
+ /**
258
+ * Sets the fillMode of the component.
259
+ *
260
+ * The possible values are:
261
+ * * `'flat'`
262
+ * * `'solid'` (default)
263
+ * * `'outline'`
264
+ * * `null`
265
+ *
266
+ */
267
+ fillMode: DropDownFillMode;
231
268
  /**
232
269
  * Fires each time the value is changed&mdash;
233
270
  * when the component is blurred or the value is cleared through the **Clear** button
@@ -284,10 +321,10 @@ export declare class ComboBoxComponent implements ControlValueAccessor, OnDestro
284
321
  popupTemplate: TemplateRef<any>;
285
322
  searchbar: SearchBarComponent;
286
323
  optionsList: ListComponent;
287
- protected wrapper: ElementRef<HTMLElement>;
288
324
  protected select: ElementRef<HTMLElement>;
289
325
  widgetClasses: boolean;
290
- readonly clearable: boolean;
326
+ readonly isDisabled: boolean;
327
+ readonly isLoading: boolean;
291
328
  readonly dir: any;
292
329
  private _isFocused;
293
330
  isFocused: boolean;
@@ -332,7 +369,10 @@ export declare class ComboBoxComponent implements ControlValueAccessor, OnDestro
332
369
  private subs;
333
370
  private touchstartDisposeHandler;
334
371
  private selectClickDisposeHandler;
335
- constructor(localization: LocalizationService, popupService: PopupService, selectionService: SelectionService, navigationService: NavigationService, disabledItemsService: DisabledItemsService, dataService: DataService, zone: NgZone, cdr: ChangeDetectorRef, renderer: Renderer2, hostElement: ElementRef, touchEnabled: boolean);
372
+ private _size;
373
+ private _rounded;
374
+ private _fillMode;
375
+ constructor(wrapper: ElementRef<HTMLElement>, localization: LocalizationService, popupService: PopupService, selectionService: SelectionService, navigationService: NavigationService, disabledItemsService: DisabledItemsService, dataService: DataService, zone: NgZone, cdr: ChangeDetectorRef, renderer: Renderer2, touchEnabled: boolean);
336
376
  ngOnInit(): void;
337
377
  private createValueStream;
338
378
  private attachStreams;
@@ -400,6 +440,10 @@ export declare class ComboBoxComponent implements ControlValueAccessor, OnDestro
400
440
  * @hidden
401
441
  */
402
442
  readonly buttonClasses: any;
443
+ /**
444
+ * @hidden
445
+ */
446
+ readonly selectButtonClasses: any;
403
447
  /**
404
448
  * @hidden
405
449
  */
@@ -478,4 +522,5 @@ export declare class ComboBoxComponent implements ControlValueAccessor, OnDestro
478
522
  private setMessages;
479
523
  private subscribeTouchEvents;
480
524
  private attachSelectClickHandler;
525
+ private setComponentClasses;
481
526
  }
@@ -22,7 +22,7 @@ import { DisabledItemsService } from '../common/disabled-items/disabled-items.se
22
22
  import { merge, of, Subject, Subscription } from 'rxjs';
23
23
  import { catchError, filter, map, partition, tap, throttleTime } from 'rxjs/operators';
24
24
  import { isChanged, isDocumentAvailable, KendoInput, hasObservers, anyChanged } from '@progress/kendo-angular-common';
25
- import { isPresent, guid, getter, isEmptyString, isUntouched, inDropDown } from '../common/util';
25
+ import { isPresent, guid, getter, isEmptyString, isUntouched, inDropDown, getSizeClass, getRoundedClass, getFillModeClass } from '../common/util';
26
26
  import { NavigationAction } from '../common/navigation/navigation-action';
27
27
  import { Keys } from '@progress/kendo-angular-common';
28
28
  import { PreventableEvent } from '../common/models/preventable-event';
@@ -61,7 +61,8 @@ export const COMBOBOX_VALUE_ACCESSOR = {
61
61
  * ```
62
62
  */
63
63
  let ComboBoxComponent = ComboBoxComponent_1 = class ComboBoxComponent {
64
- constructor(localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, cdr, renderer, hostElement, touchEnabled) {
64
+ constructor(wrapper, localization, popupService, selectionService, navigationService, disabledItemsService, dataService, zone, cdr, renderer, touchEnabled) {
65
+ this.wrapper = wrapper;
65
66
  this.localization = localization;
66
67
  this.popupService = popupService;
67
68
  this.selectionService = selectionService;
@@ -71,7 +72,6 @@ let ComboBoxComponent = ComboBoxComponent_1 = class ComboBoxComponent {
71
72
  this.zone = zone;
72
73
  this.cdr = cdr;
73
74
  this.renderer = renderer;
74
- this.hostElement = hostElement;
75
75
  this.touchEnabled = touchEnabled;
76
76
  this.selected = [];
77
77
  /**
@@ -236,6 +236,9 @@ let ComboBoxComponent = ComboBoxComponent_1 = class ComboBoxComponent {
236
236
  this.valueSubject = new Subject();
237
237
  this.clearValueSubject = new Subject();
238
238
  this.subs = new Subscription();
239
+ this._size = 'medium';
240
+ this._rounded = 'medium';
241
+ this._fillMode = 'solid';
239
242
  validatePackage(packageMetadata);
240
243
  this.direction = localization.rtl ? 'rtl' : 'ltr';
241
244
  this.data = [];
@@ -390,8 +393,72 @@ let ComboBoxComponent = ComboBoxComponent_1 = class ComboBoxComponent {
390
393
  get virtual() {
391
394
  return this._virtualSettings;
392
395
  }
393
- get clearable() {
394
- return this.clearButton;
396
+ /**
397
+ * Sets the size of the component.
398
+ *
399
+ * The possible values are:
400
+ * * `'small'`
401
+ * * `'medium'` (default)
402
+ * * `'large'`
403
+ * * `null`
404
+ *
405
+ */
406
+ set size(size) {
407
+ this.renderer.removeClass(this.wrapper.nativeElement, getSizeClass('input', this.size));
408
+ if (size) {
409
+ this.renderer.addClass(this.wrapper.nativeElement, getSizeClass('input', size));
410
+ }
411
+ this._size = size;
412
+ }
413
+ get size() {
414
+ return this._size;
415
+ }
416
+ /**
417
+ * Sets the border radius of the component.
418
+ *
419
+ * The possible values are:
420
+ * * `'small'`
421
+ * * `'medium'` (default)
422
+ * * `'large'`
423
+ * * `'full'`
424
+ * * `null`
425
+ *
426
+ */
427
+ set rounded(rounded) {
428
+ this.renderer.removeClass(this.wrapper.nativeElement, getRoundedClass(this.rounded));
429
+ if (rounded) {
430
+ this.renderer.addClass(this.wrapper.nativeElement, getRoundedClass(rounded));
431
+ }
432
+ this._rounded = rounded;
433
+ }
434
+ get rounded() {
435
+ return this._rounded;
436
+ }
437
+ /**
438
+ * Sets the fillMode of the component.
439
+ *
440
+ * The possible values are:
441
+ * * `'flat'`
442
+ * * `'solid'` (default)
443
+ * * `'outline'`
444
+ * * `null`
445
+ *
446
+ */
447
+ set fillMode(fillMode) {
448
+ this.renderer.removeClass(this.wrapper.nativeElement, getFillModeClass('input', this.fillMode));
449
+ if (fillMode) {
450
+ this.renderer.addClass(this.wrapper.nativeElement, getFillModeClass('input', fillMode));
451
+ }
452
+ this._fillMode = fillMode;
453
+ }
454
+ get fillMode() {
455
+ return this._fillMode;
456
+ }
457
+ get isDisabled() {
458
+ return this.disabled;
459
+ }
460
+ get isLoading() {
461
+ return this.loading;
395
462
  }
396
463
  get dir() {
397
464
  return this.direction;
@@ -400,7 +467,7 @@ let ComboBoxComponent = ComboBoxComponent_1 = class ComboBoxComponent {
400
467
  return this._isFocused;
401
468
  }
402
469
  set isFocused(value) {
403
- this.renderer[value ? 'addClass' : 'removeClass'](this.wrapper.nativeElement, "k-state-focused");
470
+ this.renderer[value ? 'addClass' : 'removeClass'](this.wrapper.nativeElement, "k-focus");
404
471
  this._isFocused = value;
405
472
  }
406
473
  get clearButtonVisiblity() {
@@ -423,12 +490,13 @@ let ComboBoxComponent = ComboBoxComponent_1 = class ComboBoxComponent {
423
490
  return isPresent(popupHeight) ? `${popupHeight}px` : 'auto';
424
491
  }
425
492
  ngOnInit() {
426
- this.renderer.removeAttribute(this.hostElement.nativeElement, 'tabindex');
493
+ this.renderer.removeAttribute(this.wrapper.nativeElement, 'tabindex');
427
494
  this.attachStreams();
428
495
  this.createValueStream();
429
496
  this.subscribeTouchEvents();
430
497
  this.attachSelectClickHandler();
431
498
  this.setMessages();
499
+ this.setComponentClasses();
432
500
  }
433
501
  createValueStream() {
434
502
  const valueStream = this.valueSubject.pipe(filter((candidate) => {
@@ -706,6 +774,13 @@ let ComboBoxComponent = ComboBoxComponent_1 = class ComboBoxComponent {
706
774
  get buttonClasses() {
707
775
  return this.loading ? 'k-i-loading' : this.iconClass || 'k-i-arrow-s';
708
776
  }
777
+ /**
778
+ * @hidden
779
+ */
780
+ get selectButtonClasses() {
781
+ return `${this.size ? getSizeClass('button', this.size) : ''} ${this.fillMode ? 'k-button-' + this.fillMode : ''} ${this.fillMode ? 'k-button-' + this.fillMode + '-base' : ''}
782
+ `;
783
+ }
709
784
  /**
710
785
  * @hidden
711
786
  */
@@ -931,7 +1006,7 @@ let ComboBoxComponent = ComboBoxComponent_1 = class ComboBoxComponent {
931
1006
  const currentText = this.searchbar.value;
932
1007
  const textHasChanged = currentText !== (getter(this.dataItem, this.textField) || '');
933
1008
  const valueHasChanged = unresolvedSelection || textHasChanged;
934
- const runInZone = valueHasChanged || hasObservers(this.onBlur) || hasObservers(this.close) || isUntouched(this.hostElement.nativeElement);
1009
+ const runInZone = valueHasChanged || hasObservers(this.onBlur) || hasObservers(this.close) || isUntouched(this.wrapper.nativeElement);
935
1010
  if (runInZone) {
936
1011
  this.zone.run(() => {
937
1012
  if (valueHasChanged) {
@@ -1156,7 +1231,7 @@ let ComboBoxComponent = ComboBoxComponent_1 = class ComboBoxComponent {
1156
1231
  // Roll up ComboBox on iOS when tapped outside
1157
1232
  this.touchstartDisposeHandler = this.renderer.listen(document, 'touchstart', (e) => {
1158
1233
  const target = e.target;
1159
- const isInDropDown = inDropDown(this.hostElement, target, this.popupRef);
1234
+ const isInDropDown = inDropDown(this.wrapper, target, this.popupRef);
1160
1235
  if (this.isFocused && !isInDropDown) {
1161
1236
  // Close popup and mobile keyboard if searchbar is focused
1162
1237
  this.zone.run(() => this.blur());
@@ -1172,6 +1247,17 @@ let ComboBoxComponent = ComboBoxComponent_1 = class ComboBoxComponent {
1172
1247
  const event = pointers ? 'pointerdown' : 'click';
1173
1248
  this.selectClickDisposeHandler = this.renderer.listen(selectElement, event, this.selectClick.bind(this));
1174
1249
  }
1250
+ setComponentClasses() {
1251
+ if (this.size) {
1252
+ this.renderer.addClass(this.wrapper.nativeElement, getSizeClass('input', this.size));
1253
+ }
1254
+ if (this.rounded) {
1255
+ this.renderer.addClass(this.wrapper.nativeElement, getRoundedClass(this.rounded));
1256
+ }
1257
+ if (this.fillMode) {
1258
+ this.renderer.addClass(this.wrapper.nativeElement, getFillModeClass('input', this.fillMode));
1259
+ }
1260
+ }
1175
1261
  };
1176
1262
  tslib_1.__decorate([
1177
1263
  Input(),
@@ -1268,6 +1354,21 @@ tslib_1.__decorate([
1268
1354
  tslib_1.__metadata("design:type", Object),
1269
1355
  tslib_1.__metadata("design:paramtypes", [Object])
1270
1356
  ], ComboBoxComponent.prototype, "virtual", null);
1357
+ tslib_1.__decorate([
1358
+ Input(),
1359
+ tslib_1.__metadata("design:type", String),
1360
+ tslib_1.__metadata("design:paramtypes", [String])
1361
+ ], ComboBoxComponent.prototype, "size", null);
1362
+ tslib_1.__decorate([
1363
+ Input(),
1364
+ tslib_1.__metadata("design:type", String),
1365
+ tslib_1.__metadata("design:paramtypes", [String])
1366
+ ], ComboBoxComponent.prototype, "rounded", null);
1367
+ tslib_1.__decorate([
1368
+ Input(),
1369
+ tslib_1.__metadata("design:type", String),
1370
+ tslib_1.__metadata("design:paramtypes", [String])
1371
+ ], ComboBoxComponent.prototype, "fillMode", null);
1271
1372
  tslib_1.__decorate([
1272
1373
  Output(),
1273
1374
  tslib_1.__metadata("design:type", EventEmitter)
@@ -1344,24 +1445,25 @@ tslib_1.__decorate([
1344
1445
  ViewChild('optionsList', { static: false }),
1345
1446
  tslib_1.__metadata("design:type", ListComponent)
1346
1447
  ], ComboBoxComponent.prototype, "optionsList", void 0);
1347
- tslib_1.__decorate([
1348
- ViewChild('wrapper', { static: true }),
1349
- tslib_1.__metadata("design:type", ElementRef)
1350
- ], ComboBoxComponent.prototype, "wrapper", void 0);
1351
1448
  tslib_1.__decorate([
1352
1449
  ViewChild('select', { static: true }),
1353
1450
  tslib_1.__metadata("design:type", ElementRef)
1354
1451
  ], ComboBoxComponent.prototype, "select", void 0);
1355
1452
  tslib_1.__decorate([
1356
- HostBinding('class.k-widget'),
1357
1453
  HostBinding('class.k-combobox'),
1454
+ HostBinding('class.k-input'),
1358
1455
  tslib_1.__metadata("design:type", Boolean)
1359
1456
  ], ComboBoxComponent.prototype, "widgetClasses", void 0);
1360
1457
  tslib_1.__decorate([
1361
- HostBinding('class.k-combobox-clearable'),
1458
+ HostBinding('class.k-disabled'),
1362
1459
  tslib_1.__metadata("design:type", Boolean),
1363
1460
  tslib_1.__metadata("design:paramtypes", [])
1364
- ], ComboBoxComponent.prototype, "clearable", null);
1461
+ ], ComboBoxComponent.prototype, "isDisabled", null);
1462
+ tslib_1.__decorate([
1463
+ HostBinding('class.k-loading'),
1464
+ tslib_1.__metadata("design:type", Boolean),
1465
+ tslib_1.__metadata("design:paramtypes", [])
1466
+ ], ComboBoxComponent.prototype, "isLoading", null);
1365
1467
  tslib_1.__decorate([
1366
1468
  HostBinding('attr.dir'),
1367
1469
  tslib_1.__metadata("design:type", Object),
@@ -1398,95 +1500,94 @@ ComboBoxComponent = ComboBoxComponent_1 = tslib_1.__decorate([
1398
1500
  clearTitle="clear"
1399
1501
  >
1400
1502
  </ng-container>
1401
- <span #wrapper unselectable="on"
1402
- class="k-dropdown-wrap"
1403
- [ngClass]="{'k-state-disabled': disabled }"
1503
+ <kendo-searchbar #searchbar
1504
+ [role]="'combobox'"
1505
+ [id]="focusableId"
1506
+ [listId]="listBoxId"
1507
+ [activeDescendant]="activeDescendant"
1508
+ [noDataLabel]="noDataLabel"
1509
+ [userInput]="text"
1510
+ [suggestedText]="getSuggestion()"
1511
+ [disabled]="disabled"
1512
+ [readonly]="readonly"
1513
+ [tabIndex]="tabIndex"
1514
+ [popupOpen]="isOpen"
1515
+ [placeholder]="placeholder"
1516
+ (onNavigate)="handleNavigate($event)"
1517
+ (valueChange)="searchBarChange($event)"
1518
+ (onBlur)="handleBlur()"
1519
+ (onFocus)="handleFocus()"
1520
+ ></kendo-searchbar>
1521
+ <span
1522
+ *ngIf="clearButton && !loading && !disabled && !readonly && text?.length"
1523
+ class="k-clear-value"
1524
+ [style.visibility]="clearButtonVisiblity"
1525
+ aria-hidden="true"
1526
+ [attr.title]="clearTitle"
1527
+ (click)="clearValue($event)"
1528
+ [kendoEventsOutsideAngular]="{
1529
+ mousedown: preventEventDefault
1530
+ }"
1404
1531
  >
1405
- <kendo-searchbar #searchbar
1406
- [role]="'combobox'"
1407
- [id]="focusableId"
1408
- [listId]="listBoxId"
1409
- [activeDescendant]="activeDescendant"
1410
- [noDataLabel]="noDataLabel"
1411
- [userInput]="text"
1412
- [suggestedText]="getSuggestion()"
1413
- [disabled]="disabled"
1414
- [readonly]="readonly"
1415
- [tabIndex]="tabIndex"
1416
- [popupOpen]="isOpen"
1417
- [placeholder]="placeholder"
1418
- (onNavigate)="handleNavigate($event)"
1419
- (valueChange)="searchBarChange($event)"
1420
- (onBlur)="handleBlur()"
1421
- (onFocus)="handleFocus()"
1422
- ></kendo-searchbar>
1423
- <span
1424
- *ngIf="clearButton && !loading && !disabled && !readonly && text?.length"
1425
- class="k-icon k-clear-value k-i-close"
1426
- [style.visibility]="clearButtonVisiblity"
1427
- aria-hidden="true"
1428
- [attr.title]="clearTitle"
1429
- (click)="clearValue($event)"
1430
- [kendoEventsOutsideAngular]="{
1431
- mousedown: preventEventDefault
1432
- }"
1433
- >
1434
- </span>
1435
- <span
1436
- #select
1437
- aria-hidden="true"
1438
- unselectable="on"
1439
- class="k-select"
1440
- [kendoEventsOutsideAngular]="{
1441
- mousedown: preventEventDefault
1442
- }"
1443
- >
1444
- <span class="k-icon" [ngClass]="buttonClasses">
1445
- </span>
1446
- </span>
1447
- <ng-template #popupTemplate>
1448
- <!--header template-->
1449
- <ng-template *ngIf="headerTemplate"
1450
- [templateContext]="{
1451
- templateRef: headerTemplate.templateRef
1452
- }">
1453
- </ng-template>
1454
- <!--list-->
1455
- <kendo-list
1456
- #optionsList
1457
- [id]="listBoxId"
1458
- [optionPrefix]="optionPrefix"
1459
- [data]="data"
1460
- [textField]="textField"
1461
- [valueField]="valueField"
1462
- [template]="template"
1463
- [groupTemplate]="groupTemplate"
1464
- [fixedGroupTemplate]="fixedGroupTemplate"
1465
- [height]="listHeight"
1466
- [show]="isOpen"
1467
- [virtual]="virtual"
1468
- (pageChange)="pageChange($event)"
1469
- >
1470
- </kendo-list>
1471
- <!--no-data template-->
1472
- <div class="k-nodata" *ngIf="data.length === 0">
1473
- <ng-template [ngIf]="noDataTemplate"
1474
- [templateContext]="{
1475
- templateRef: noDataTemplate ? noDataTemplate.templateRef : undefined
1476
- }">
1477
- </ng-template>
1478
- <ng-template [ngIf]="!noDataTemplate">
1479
- <div>{{ noDataText }}</div>
1480
- </ng-template>
1481
- </div>
1482
- <!--footer template-->
1483
- <ng-template *ngIf="footerTemplate"
1484
- [templateContext]="{
1485
- templateRef: footerTemplate.templateRef
1486
- }">
1487
- </ng-template>
1488
- </ng-template>
1532
+ <span class="k-icon k-i-x"></span>
1489
1533
  </span>
1534
+ <button
1535
+ #select
1536
+ aria-hidden="true"
1537
+ unselectable="on"
1538
+ type="button"
1539
+ class="k-input-button k-button k-icon-button"
1540
+ [ngClass]="selectButtonClasses"
1541
+ [kendoEventsOutsideAngular]="{
1542
+ mousedown: preventEventDefault
1543
+ }"
1544
+ >
1545
+ <span class="k-button-icon k-icon" [ngClass]="buttonClasses"></span>
1546
+ </button>
1547
+ <ng-template #popupTemplate>
1548
+ <!--header template-->
1549
+ <ng-template *ngIf="headerTemplate"
1550
+ [templateContext]="{
1551
+ templateRef: headerTemplate.templateRef
1552
+ }">
1553
+ </ng-template>
1554
+ <!--list-->
1555
+ <kendo-list
1556
+ #optionsList
1557
+ [size]="size"
1558
+ [rounded]="rounded"
1559
+ [id]="listBoxId"
1560
+ [optionPrefix]="optionPrefix"
1561
+ [data]="data"
1562
+ [textField]="textField"
1563
+ [valueField]="valueField"
1564
+ [template]="template"
1565
+ [groupTemplate]="groupTemplate"
1566
+ [fixedGroupTemplate]="fixedGroupTemplate"
1567
+ [height]="listHeight"
1568
+ [show]="isOpen"
1569
+ [virtual]="virtual"
1570
+ (pageChange)="pageChange($event)"
1571
+ >
1572
+ </kendo-list>
1573
+ <!--no-data template-->
1574
+ <div class="k-no-data" *ngIf="data.length === 0">
1575
+ <ng-template [ngIf]="noDataTemplate"
1576
+ [templateContext]="{
1577
+ templateRef: noDataTemplate ? noDataTemplate.templateRef : undefined
1578
+ }">
1579
+ </ng-template>
1580
+ <ng-template [ngIf]="!noDataTemplate">
1581
+ <div>{{ noDataText }}</div>
1582
+ </ng-template>
1583
+ </div>
1584
+ <!--footer template-->
1585
+ <ng-template *ngIf="footerTemplate"
1586
+ [templateContext]="{
1587
+ templateRef: footerTemplate.templateRef
1588
+ }">
1589
+ </ng-template>
1590
+ </ng-template>
1490
1591
  <ng-template [ngIf]="isOpen">
1491
1592
  <kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
1492
1593
  </ng-template>
@@ -1494,7 +1595,8 @@ ComboBoxComponent = ComboBoxComponent_1 = tslib_1.__decorate([
1494
1595
  `
1495
1596
  }),
1496
1597
  tslib_1.__param(10, Optional()), tslib_1.__param(10, Inject(TOUCH_ENABLED)),
1497
- tslib_1.__metadata("design:paramtypes", [LocalizationService,
1598
+ tslib_1.__metadata("design:paramtypes", [ElementRef,
1599
+ LocalizationService,
1498
1600
  PopupService,
1499
1601
  SelectionService,
1500
1602
  NavigationService,
@@ -1502,7 +1604,6 @@ ComboBoxComponent = ComboBoxComponent_1 = tslib_1.__decorate([
1502
1604
  DataService,
1503
1605
  NgZone,
1504
1606
  ChangeDetectorRef,
1505
- Renderer2,
1506
- ElementRef, Boolean])
1607
+ Renderer2, Boolean])
1507
1608
  ], ComboBoxComponent);
1508
1609
  export { ComboBoxComponent };
@@ -20,6 +20,10 @@ export declare class MultiColumnComboBoxComponent extends ComboBoxComponent impl
20
20
  * @hidden
21
21
  */
22
22
  hostClasses: boolean;
23
+ /**
24
+ * @hidden
25
+ */
26
+ readonly isDisabled: boolean;
23
27
  /**
24
28
  * A query list of all declared columns.
25
29
  */
@@ -33,11 +37,15 @@ export declare class MultiColumnComboBoxComponent extends ComboBoxComponent impl
33
37
  max: string;
34
38
  };
35
39
  private removeWindowResizeListener;
40
+ /**
41
+ * @hidden
42
+ */
43
+ readonly tableSizeClass: any;
36
44
  /**
37
45
  * @hidden
38
46
  */
39
47
  protected readonly listContainerClasses: string[];
40
- constructor(localization: LocalizationService, popupService: PopupService, selectionService: SelectionService, navigationService: NavigationService, disabledItemsService: DisabledItemsService, dataService: DataService, zone: NgZone, changeDetector: ChangeDetectorRef, renderer: Renderer2, hostElement: ElementRef<HTMLElement>, touchEnabled: boolean);
48
+ constructor(localization: LocalizationService, popupService: PopupService, selectionService: SelectionService, navigationService: NavigationService, disabledItemsService: DisabledItemsService, dataService: DataService, zone: NgZone, changeDetector: ChangeDetectorRef, renderer: Renderer2, wrapper: ElementRef<HTMLElement>, touchEnabled: boolean);
41
49
  ngAfterViewInit(): void;
42
50
  ngOnDestroy(): void;
43
51
  /**