@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
@@ -64,8 +64,9 @@ var MULTISELECT_VALUE_ACCESSOR = {
64
64
  * ```
65
65
  */
66
66
  var MultiSelectComponent = /** @class */ (function () {
67
- function MultiSelectComponent(localization, popupService, dataService, selectionService, navigationService, disabledItemsService, cdr, differs, renderer, hostElement, _zone, touchEnabled) {
67
+ function MultiSelectComponent(wrapper, localization, popupService, dataService, selectionService, navigationService, disabledItemsService, cdr, differs, renderer, _zone, touchEnabled) {
68
68
  var _this = this;
69
+ this.wrapper = wrapper;
69
70
  this.localization = localization;
70
71
  this.popupService = popupService;
71
72
  this.dataService = dataService;
@@ -75,7 +76,6 @@ var MultiSelectComponent = /** @class */ (function () {
75
76
  this.cdr = cdr;
76
77
  this.differs = differs;
77
78
  this.renderer = renderer;
78
- this.hostElement = hostElement;
79
79
  this._zone = _zone;
80
80
  this.touchEnabled = touchEnabled;
81
81
  this.listBoxId = util_1.guid();
@@ -236,8 +236,11 @@ var MultiSelectComponent = /** @class */ (function () {
236
236
  * This event is preventable. If you cancel it, the tag will not be removed.
237
237
  */
238
238
  this.removeTag = new core_1.EventEmitter();
239
- this.widgetClasses = true;
239
+ this.hostClasses = true;
240
240
  this.initialized = false;
241
+ this._size = 'medium';
242
+ this._rounded = 'medium';
243
+ this._fillMode = 'solid';
241
244
  this.onChangeCallback = function (_) { };
242
245
  this.onTouchedCallback = function (_) { };
243
246
  this._placeholder = '';
@@ -314,7 +317,7 @@ var MultiSelectComponent = /** @class */ (function () {
314
317
  if (kendo_angular_common_1.hasObservers(this.onBlur) ||
315
318
  kendo_angular_common_1.hasObservers(this.filterChange) ||
316
319
  kendo_angular_common_1.hasObservers(this.close) ||
317
- util_1.isUntouched(this.hostElement.nativeElement)) {
320
+ util_1.isUntouched(this.wrapper.nativeElement)) {
318
321
  this._zone.run(function () {
319
322
  _this.closePopup();
320
323
  if (!(_this.isOpen && _this.allowCustom)) {
@@ -331,22 +334,6 @@ var MultiSelectComponent = /** @class */ (function () {
331
334
  this.closePopup();
332
335
  }
333
336
  };
334
- /**
335
- * @hidden
336
- */
337
- MultiSelectComponent.prototype.wrapperMousedown = function (event) {
338
- var inputElement = this.searchbar.input.nativeElement;
339
- if (event.button === 0) {
340
- if (this.isFocused && this.isOpen && event.target === inputElement) {
341
- return;
342
- }
343
- if (!this.touchEnabled || (this.touchEnabled && event.target.tagName !== 'SPAN')) {
344
- this.searchbar.focus();
345
- }
346
- this.togglePopup(!this.isOpen);
347
- event.preventDefault();
348
- }
349
- };
350
337
  /**
351
338
  * @hidden
352
339
  */
@@ -440,6 +427,79 @@ var MultiSelectComponent = /** @class */ (function () {
440
427
  enumerable: true,
441
428
  configurable: true
442
429
  });
430
+ Object.defineProperty(MultiSelectComponent.prototype, "size", {
431
+ get: function () {
432
+ return this._size;
433
+ },
434
+ /**
435
+ * Sets the size of the component.
436
+ *
437
+ * The possible values are:
438
+ * * `'small'`
439
+ * * `'medium'` (default)
440
+ * * `'large'`
441
+ * * `null`
442
+ *
443
+ */
444
+ set: function (size) {
445
+ this.renderer.removeClass(this.wrapper.nativeElement, util_1.getSizeClass('input', this.size));
446
+ if (size) {
447
+ this.renderer.addClass(this.wrapper.nativeElement, util_1.getSizeClass('input', size));
448
+ }
449
+ this._size = size;
450
+ },
451
+ enumerable: true,
452
+ configurable: true
453
+ });
454
+ Object.defineProperty(MultiSelectComponent.prototype, "rounded", {
455
+ get: function () {
456
+ return this._rounded;
457
+ },
458
+ /**
459
+ * Sets the border radius of the component.
460
+ *
461
+ * The possible values are:
462
+ * * `'small'`
463
+ * * `'medium'` (default)
464
+ * * `'large'`
465
+ * * `'full'`
466
+ * * `null`
467
+ *
468
+ */
469
+ set: function (rounded) {
470
+ this.renderer.removeClass(this.wrapper.nativeElement, util_1.getRoundedClass(this.rounded));
471
+ if (rounded) {
472
+ this.renderer.addClass(this.wrapper.nativeElement, util_1.getRoundedClass(rounded));
473
+ }
474
+ this._rounded = rounded;
475
+ },
476
+ enumerable: true,
477
+ configurable: true
478
+ });
479
+ Object.defineProperty(MultiSelectComponent.prototype, "fillMode", {
480
+ get: function () {
481
+ return this._fillMode;
482
+ },
483
+ /**
484
+ * Sets the fillMode of the component.
485
+ *
486
+ * The possible values are:
487
+ * * `'flat'`
488
+ * * `'solid'` (default)
489
+ * * `'outline'`
490
+ * * `null`
491
+ *
492
+ */
493
+ set: function (fillMode) {
494
+ this.renderer.removeClass(this.wrapper.nativeElement, util_1.getFillModeClass('input', this.fillMode));
495
+ if (fillMode) {
496
+ this.renderer.addClass(this.wrapper.nativeElement, util_1.getFillModeClass('input', fillMode));
497
+ }
498
+ this._fillMode = fillMode;
499
+ },
500
+ enumerable: true,
501
+ configurable: true
502
+ });
443
503
  Object.defineProperty(MultiSelectComponent.prototype, "placeholder", {
444
504
  get: function () {
445
505
  return this.selectedDataItems.length ? '' : this._placeholder;
@@ -546,6 +606,29 @@ var MultiSelectComponent = /** @class */ (function () {
546
606
  enumerable: true,
547
607
  configurable: true
548
608
  });
609
+ Object.defineProperty(MultiSelectComponent.prototype, "isLoading", {
610
+ get: function () {
611
+ return this.loading;
612
+ },
613
+ enumerable: true,
614
+ configurable: true
615
+ });
616
+ /**
617
+ * @hidden
618
+ */
619
+ MultiSelectComponent.prototype.hostMousedown = function (event) {
620
+ var inputElement = this.searchbar.input.nativeElement;
621
+ if (event.button === 0) {
622
+ if (this.isFocused && this.isOpen && event.target === inputElement) {
623
+ return;
624
+ }
625
+ if (!this.touchEnabled || (this.touchEnabled && event.target.tagName !== 'SPAN')) {
626
+ this.searchbar.focus();
627
+ }
628
+ this.togglePopup(!this.isOpen);
629
+ event.preventDefault();
630
+ }
631
+ };
549
632
  Object.defineProperty(MultiSelectComponent.prototype, "listContainerClasses", {
550
633
  get: function () {
551
634
  var containerClasses = ['k-list-container', 'k-reset'];
@@ -557,6 +640,16 @@ var MultiSelectComponent = /** @class */ (function () {
557
640
  enumerable: true,
558
641
  configurable: true
559
642
  });
643
+ Object.defineProperty(MultiSelectComponent.prototype, "customItemSizeClass", {
644
+ /**
645
+ * @hidden
646
+ */
647
+ get: function () {
648
+ return "" + (this.size ? util_1.getSizeClass('list', this.size) : '');
649
+ },
650
+ enumerable: true,
651
+ configurable: true
652
+ });
560
653
  Object.defineProperty(MultiSelectComponent.prototype, "width", {
561
654
  get: function () {
562
655
  var wrapperOffsetWidth = 0;
@@ -830,7 +923,7 @@ var MultiSelectComponent = /** @class */ (function () {
830
923
  };
831
924
  MultiSelectComponent.prototype.ngOnInit = function () {
832
925
  var _this = this;
833
- this.renderer.removeAttribute(this.hostElement.nativeElement, "tabindex");
926
+ this.renderer.removeAttribute(this.wrapper.nativeElement, "tabindex");
834
927
  this.createCustomValueStream();
835
928
  this.localizationChangeSubscription = this.localization
836
929
  .changes.subscribe(function (_a) {
@@ -840,6 +933,7 @@ var MultiSelectComponent = /** @class */ (function () {
840
933
  });
841
934
  this.setMessages();
842
935
  this.setState(this.value);
936
+ this.setComponentClasses();
843
937
  this.initialized = true;
844
938
  };
845
939
  MultiSelectComponent.prototype.ngOnChanges = function (changes) {
@@ -936,7 +1030,7 @@ var MultiSelectComponent = /** @class */ (function () {
936
1030
  return this._isFocused;
937
1031
  },
938
1032
  set: function (isFocused) {
939
- this.renderer[isFocused ? 'addClass' : 'removeClass'](this.hostElement.nativeElement, 'k-state-focused');
1033
+ this.renderer[isFocused ? 'addClass' : 'removeClass'](this.wrapper.nativeElement, 'k-focus');
940
1034
  this._isFocused = isFocused;
941
1035
  },
942
1036
  enumerable: true,
@@ -975,7 +1069,7 @@ var MultiSelectComponent = /** @class */ (function () {
975
1069
  // Roll up MultiSelect on iOS when tapped outside
976
1070
  return _this.touchstartDisposeHandler = _this.renderer.listen(document, 'touchstart', function (e) {
977
1071
  var target = e.target;
978
- if ((_this.isFocused || _this.isOpen) && !util_1.inDropDown(_this.hostElement, target, _this.popupRef)) {
1072
+ if ((_this.isFocused || _this.isOpen) && !util_1.inDropDown(_this.wrapper, target, _this.popupRef)) {
979
1073
  _this._zone.run(function () {
980
1074
  _this.blur();
981
1075
  if (_this.isOpen) {
@@ -1353,6 +1447,17 @@ var MultiSelectComponent = /** @class */ (function () {
1353
1447
  });
1354
1448
  });
1355
1449
  };
1450
+ MultiSelectComponent.prototype.setComponentClasses = function () {
1451
+ if (this.size) {
1452
+ this.renderer.addClass(this.wrapper.nativeElement, util_1.getSizeClass('input', this.size));
1453
+ }
1454
+ if (this.rounded) {
1455
+ this.renderer.addClass(this.wrapper.nativeElement, util_1.getRoundedClass(this.rounded));
1456
+ }
1457
+ if (this.fillMode) {
1458
+ this.renderer.addClass(this.wrapper.nativeElement, util_1.getFillModeClass('input', this.fillMode));
1459
+ }
1460
+ };
1356
1461
  var MultiSelectComponent_1;
1357
1462
  tslib_1.__decorate([
1358
1463
  core_1.Input(),
@@ -1393,6 +1498,21 @@ var MultiSelectComponent = /** @class */ (function () {
1393
1498
  tslib_1.__metadata("design:type", Number),
1394
1499
  tslib_1.__metadata("design:paramtypes", [Number])
1395
1500
  ], MultiSelectComponent.prototype, "tabIndex", null);
1501
+ tslib_1.__decorate([
1502
+ core_1.Input(),
1503
+ tslib_1.__metadata("design:type", String),
1504
+ tslib_1.__metadata("design:paramtypes", [String])
1505
+ ], MultiSelectComponent.prototype, "size", null);
1506
+ tslib_1.__decorate([
1507
+ core_1.Input(),
1508
+ tslib_1.__metadata("design:type", String),
1509
+ tslib_1.__metadata("design:paramtypes", [String])
1510
+ ], MultiSelectComponent.prototype, "rounded", null);
1511
+ tslib_1.__decorate([
1512
+ core_1.Input(),
1513
+ tslib_1.__metadata("design:type", String),
1514
+ tslib_1.__metadata("design:paramtypes", [String])
1515
+ ], MultiSelectComponent.prototype, "fillMode", null);
1396
1516
  tslib_1.__decorate([
1397
1517
  core_1.Input(),
1398
1518
  tslib_1.__metadata("design:type", String),
@@ -1503,10 +1623,6 @@ var MultiSelectComponent = /** @class */ (function () {
1503
1623
  core_1.ViewChild('popupTemplate', { static: true }),
1504
1624
  tslib_1.__metadata("design:type", core_1.TemplateRef)
1505
1625
  ], MultiSelectComponent.prototype, "popupTemplate", void 0);
1506
- tslib_1.__decorate([
1507
- core_1.ViewChild('wrapper', { static: true }),
1508
- tslib_1.__metadata("design:type", core_1.ElementRef)
1509
- ], MultiSelectComponent.prototype, "wrapper", void 0);
1510
1626
  tslib_1.__decorate([
1511
1627
  core_1.ViewChild('optionsList', { static: false }),
1512
1628
  tslib_1.__metadata("design:type", list_component_1.ListComponent)
@@ -1548,20 +1664,31 @@ var MultiSelectComponent = /** @class */ (function () {
1548
1664
  tslib_1.__metadata("design:type", no_data_template_directive_1.NoDataTemplateDirective)
1549
1665
  ], MultiSelectComponent.prototype, "noDataTemplate", void 0);
1550
1666
  tslib_1.__decorate([
1551
- core_1.HostBinding('class.k-widget'),
1552
1667
  core_1.HostBinding('class.k-multiselect'),
1668
+ core_1.HostBinding('class.k-input'),
1553
1669
  tslib_1.__metadata("design:type", Boolean)
1554
- ], MultiSelectComponent.prototype, "widgetClasses", void 0);
1670
+ ], MultiSelectComponent.prototype, "hostClasses", void 0);
1555
1671
  tslib_1.__decorate([
1556
1672
  core_1.HostBinding('attr.dir'),
1557
1673
  tslib_1.__metadata("design:type", String),
1558
1674
  tslib_1.__metadata("design:paramtypes", [])
1559
1675
  ], MultiSelectComponent.prototype, "dir", null);
1560
1676
  tslib_1.__decorate([
1561
- core_1.HostBinding('class.k-state-disabled'),
1677
+ core_1.HostBinding('class.k-disabled'),
1562
1678
  tslib_1.__metadata("design:type", Boolean),
1563
1679
  tslib_1.__metadata("design:paramtypes", [])
1564
1680
  ], MultiSelectComponent.prototype, "disabledClass", null);
1681
+ tslib_1.__decorate([
1682
+ core_1.HostBinding('class.k-loading'),
1683
+ tslib_1.__metadata("design:type", Boolean),
1684
+ tslib_1.__metadata("design:paramtypes", [])
1685
+ ], MultiSelectComponent.prototype, "isLoading", null);
1686
+ tslib_1.__decorate([
1687
+ core_1.HostListener('mousedown', ['$event']),
1688
+ tslib_1.__metadata("design:type", Function),
1689
+ tslib_1.__metadata("design:paramtypes", [Object]),
1690
+ tslib_1.__metadata("design:returntype", void 0)
1691
+ ], MultiSelectComponent.prototype, "hostMousedown", null);
1565
1692
  MultiSelectComponent = MultiSelectComponent_1 = tslib_1.__decorate([
1566
1693
  core_1.Component({
1567
1694
  exportAs: 'kendoMultiSelect',
@@ -1584,10 +1711,11 @@ var MultiSelectComponent = /** @class */ (function () {
1584
1711
  }
1585
1712
  ],
1586
1713
  selector: 'kendo-multiselect',
1587
- template: "\n <ng-container kendoMultiSelectLocalizedMessages\n i18n-noDataText=\"kendo.multiselect.noDataText|The text displayed in the popup when there are no items\"\n noDataText=\"NO DATA FOUND\"\n\n i18n-clearTitle=\"kendo.combobox.clearTitle|The title of the clear button\"\n clearTitle=\"clear\"\n >\n </ng-container>\n <div class=\"k-multiselect-wrap k-floatwrap\"\n #wrapper\n (mousedown)=\"wrapperMousedown($event)\"\n >\n <kendo-taglist\n [id]=\"tagListId\"\n [tags]=\"tags\"\n [textField]=\"textField\"\n [valueField]=\"valueField\"\n [focused]=\"focusedTagIndex\"\n [disabled]=\"disabled\"\n [template]=\"tagTemplate\"\n [groupTemplate]=\"groupTagTemplate\"\n [tagPrefix]=\"tagPrefix\"\n [disabledIndices]=\"disabledIndices\"\n (removeTag)=\"handleRemoveTag($event)\"\n >\n </kendo-taglist>\n <kendo-searchbar\n #searchbar\n [id]=\"focusableId\"\n [role]=\"'listbox'\"\n [tagListId]=\"tagListId\"\n [activeDescendant]=\"activeDescendant\"\n [noDataLabel]=\"noDataLabel\"\n [userInput]=\"text\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [tabIndex]=\"tabIndex\"\n [popupOpen]=\"isOpen\"\n [placeholder]=\"placeholder\"\n (onNavigate)=\"handleNavigate($event)\"\n (valueChange)=\"handleFilter($event)\"\n (onBlur)=\"onSearchBarBlur()\"\n (onFocus)=\"onSearchBarFocus()\"\n >\n </kendo-searchbar>\n <span\n *ngIf=\"!loading && !readonly && clearButton && (tags?.length || text?.length)\"\n class=\"k-icon k-clear-value k-i-close\"\n [style.visibility]=\"clearButtonVisiblity\"\n [attr.title]=\"clearTitle\"\n role=\"button\"\n tabindex=\"-1\"\n (mousedown)=\"clearAll($event)\"\n >\n </span>\n <span\n *ngIf=\"loading\"\n class=\"k-icon k-i-loading\"\n >\n </span>\n </div>\n <ng-template #popupTemplate>\n <!--header template-->\n <ng-template *ngIf=\"headerTemplate\"\n [templateContext]=\"{\n templateRef: headerTemplate.templateRef\n }\">\n </ng-template>\n <!--custom item template-->\n <div class=\"k-list\" *ngIf=\"allowCustom && text\">\n <div class=\"k-item k-custom-item\" kendoDropDownsSelectable [multipleSelection]=\"true\" [index]=\"-1\">\n <ng-template *ngIf=\"customItemTemplate;else default_custom_item_template\"\n [templateContext]=\"{\n templateRef: customItemTemplate.templateRef,\n $implicit: text\n }\">\n </ng-template>\n <ng-template #default_custom_item_template>{{ text }}</ng-template>\n <span class=\"k-icon k-i-plus\" style=\"float: right\"></span>\n </div>\n </div>\n <!--list-->\n <kendo-list\n #optionsList\n [id]=\"listBoxId\"\n [optionPrefix]=\"optionPrefix\"\n [data]=\"data\"\n [textField]=\"textField\"\n [valueField]=\"valueField\"\n [height]=\"listHeight\"\n [template]=\"template\"\n [groupTemplate]=\"groupTemplate\"\n [fixedGroupTemplate]=\"fixedGroupTemplate\"\n [show]=\"isOpen\"\n [multipleSelection]=\"true\"\n [virtual]=\"virtual\"\n (pageChange)=\"pageChange($event)\"\n [checkboxes]=\"checkboxes\"\n >\n </kendo-list>\n <!--no data template-->\n <div class=\"k-nodata\" *ngIf=\"data.length === 0\">\n <ng-template [ngIf]=\"noDataTemplate\"\n [templateContext]=\"{\n templateRef: noDataTemplate ? noDataTemplate.templateRef : undefined\n }\">\n </ng-template>\n <ng-template [ngIf]=\"!noDataTemplate\">\n <div>{{ noDataText }}</div>\n </ng-template>\n </div>\n <!--footer template-->\n <ng-template *ngIf=\"footerTemplate\"\n [templateContext]=\"{\n templateRef: footerTemplate.templateRef\n }\">\n </ng-template>\n </ng-template>\n <ng-template [ngIf]=\"isOpen\">\n <kendo-resize-sensor (resize)=\"onResize()\"></kendo-resize-sensor>\n </ng-template>\n <ng-container #container></ng-container>\n "
1714
+ template: "\n <ng-container kendoMultiSelectLocalizedMessages\n i18n-noDataText=\"kendo.multiselect.noDataText|The text displayed in the popup when there are no items\"\n noDataText=\"NO DATA FOUND\"\n\n i18n-clearTitle=\"kendo.combobox.clearTitle|The title of the clear button\"\n clearTitle=\"clear\"\n >\n </ng-container>\n <kendo-taglist\n [size]=\"size\"\n [rounded]=\"rounded\"\n [fillMode]=\"fillMode\"\n [id]=\"tagListId\"\n [tags]=\"tags\"\n [textField]=\"textField\"\n [valueField]=\"valueField\"\n [focused]=\"focusedTagIndex\"\n [disabled]=\"disabled\"\n [template]=\"tagTemplate\"\n [groupTemplate]=\"groupTagTemplate\"\n [tagPrefix]=\"tagPrefix\"\n [disabledIndices]=\"disabledIndices\"\n (removeTag)=\"handleRemoveTag($event)\"\n >\n <kendo-searchbar\n #searchbar\n [id]=\"focusableId\"\n [role]=\"'listbox'\"\n [tagListId]=\"tagListId\"\n [activeDescendant]=\"activeDescendant\"\n [noDataLabel]=\"noDataLabel\"\n [userInput]=\"text\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [tabIndex]=\"tabIndex\"\n [popupOpen]=\"isOpen\"\n [placeholder]=\"placeholder\"\n (onNavigate)=\"handleNavigate($event)\"\n (valueChange)=\"handleFilter($event)\"\n (onBlur)=\"onSearchBarBlur()\"\n (onFocus)=\"onSearchBarFocus()\"\n >\n </kendo-searchbar>\n </kendo-taglist>\n\n <span\n *ngIf=\"!loading && !readonly && clearButton && (tags?.length || text?.length)\"\n class=\"k-clear-value\"\n [style.visibility]=\"clearButtonVisiblity\"\n [attr.title]=\"clearTitle\"\n role=\"button\"\n tabindex=\"-1\"\n (mousedown)=\"clearAll($event)\"\n >\n <span class=\"k-icon k-i-x\"></span>\n </span>\n <span\n *ngIf=\"loading\"\n class=\"k-icon k-i-loading\"\n >\n </span>\n <ng-template #popupTemplate>\n <!--header template-->\n <ng-template *ngIf=\"headerTemplate\"\n [templateContext]=\"{\n templateRef: headerTemplate.templateRef\n }\">\n </ng-template>\n <!--custom item template-->\n <div\n *ngIf=\"allowCustom && text\"\n class=\"k-list\"\n [ngClass]=\"customItemSizeClass\"\n >\n <div class=\"k-list-item k-custom-item\" kendoDropDownsSelectable [multipleSelection]=\"true\" [index]=\"-1\">\n <ng-template *ngIf=\"customItemTemplate;else default_custom_item_template\"\n [templateContext]=\"{\n templateRef: customItemTemplate.templateRef,\n $implicit: text\n }\">\n </ng-template>\n <ng-template #default_custom_item_template>{{ text }}</ng-template>\n <span class=\"k-icon k-i-plus\" style=\"float: right\"></span>\n </div>\n </div>\n <!--list-->\n <kendo-list\n #optionsList\n [size]=\"size\"\n [rounded]=\"rounded\"\n [id]=\"listBoxId\"\n [optionPrefix]=\"optionPrefix\"\n [data]=\"data\"\n [textField]=\"textField\"\n [valueField]=\"valueField\"\n [height]=\"listHeight\"\n [template]=\"template\"\n [groupTemplate]=\"groupTemplate\"\n [fixedGroupTemplate]=\"fixedGroupTemplate\"\n [show]=\"isOpen\"\n [multipleSelection]=\"true\"\n [virtual]=\"virtual\"\n (pageChange)=\"pageChange($event)\"\n [checkboxes]=\"checkboxes\"\n >\n </kendo-list>\n <!--no data template-->\n <div class=\"k-no-data\" *ngIf=\"data.length === 0\">\n <ng-template [ngIf]=\"noDataTemplate\"\n [templateContext]=\"{\n templateRef: noDataTemplate ? noDataTemplate.templateRef : undefined\n }\">\n </ng-template>\n <ng-template [ngIf]=\"!noDataTemplate\">\n <div>{{ noDataText }}</div>\n </ng-template>\n </div>\n <!--footer template-->\n <ng-template *ngIf=\"footerTemplate\"\n [templateContext]=\"{\n templateRef: footerTemplate.templateRef\n }\">\n </ng-template>\n </ng-template>\n <ng-template [ngIf]=\"isOpen\">\n <kendo-resize-sensor (resize)=\"onResize()\"></kendo-resize-sensor>\n </ng-template>\n <ng-container #container></ng-container>\n "
1588
1715
  }),
1589
1716
  tslib_1.__param(11, core_1.Optional()), tslib_1.__param(11, core_1.Inject(touch_enabled_1.TOUCH_ENABLED)),
1590
- tslib_1.__metadata("design:paramtypes", [kendo_angular_l10n_1.LocalizationService,
1717
+ tslib_1.__metadata("design:paramtypes", [core_1.ElementRef,
1718
+ kendo_angular_l10n_1.LocalizationService,
1591
1719
  kendo_angular_popup_1.PopupService,
1592
1720
  data_service_1.DataService,
1593
1721
  selection_service_1.SelectionService,
@@ -1596,7 +1724,6 @@ var MultiSelectComponent = /** @class */ (function () {
1596
1724
  core_1.ChangeDetectorRef,
1597
1725
  core_1.KeyValueDiffers,
1598
1726
  core_1.Renderer2,
1599
- core_1.ElementRef,
1600
1727
  core_1.NgZone, Boolean])
1601
1728
  ], MultiSelectComponent);
1602
1729
  return MultiSelectComponent;
@@ -11,7 +11,7 @@ exports.packageMetadata = {
11
11
  name: '@progress/kendo-angular-dropdowns',
12
12
  productName: 'Kendo UI for Angular',
13
13
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
14
- publishDate: 1637241736,
14
+ publishDate: 1642580652,
15
15
  version: '',
16
16
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
17
17
  };