@progress/kendo-angular-dropdowns 20.1.2-develop.2 → 21.0.0-develop.11

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 (80) hide show
  1. package/autocomplete/autocomplete.component.d.ts +1 -1
  2. package/codemods/template-transformer/index.js +1 -2
  3. package/codemods/utils.js +2 -2
  4. package/codemods/v19/autocomplete-subtitle.js +1 -1
  5. package/codemods/v19/autocomplete-title.js +1 -1
  6. package/codemods/v19/combobox-subtitle.js +1 -1
  7. package/codemods/v19/combobox-title.js +1 -1
  8. package/codemods/v19/dropdownlist-subtitle.js +1 -1
  9. package/codemods/v19/dropdownlist-title.js +1 -1
  10. package/codemods/v19/dropdowntree-subtitle.js +1 -1
  11. package/codemods/v19/dropdowntree-title.js +1 -1
  12. package/codemods/v19/multicolumncombobox-subtitle.js +1 -1
  13. package/codemods/v19/multicolumncombobox-title.js +1 -1
  14. package/codemods/v19/multiselect-subtitle.js +1 -1
  15. package/codemods/v19/multiselect-title.js +1 -1
  16. package/codemods/v19/multiselecttree-subtitle.js +1 -1
  17. package/codemods/v19/multiselecttree-title.js +1 -1
  18. package/common/list-item.directive.d.ts +1 -1
  19. package/common/list.component.d.ts +2 -5
  20. package/dropdownlist/dropdownlist.component.d.ts +1 -1
  21. package/dropdowntrees/dropdowntree.component.d.ts +5 -5
  22. package/dropdowntrees/multiselecttree.component.d.ts +3 -3
  23. package/esm2022/autocomplete/autocomplete.component.mjs +4 -4
  24. package/esm2022/autocomplete/autocomplete.module.mjs +4 -4
  25. package/esm2022/comboboxes/combobox-column/column-cell-template.directive.mjs +4 -4
  26. package/esm2022/comboboxes/combobox-column/column-header-template.directive.mjs +4 -4
  27. package/esm2022/comboboxes/combobox-column/combobox-column.component.mjs +3 -3
  28. package/esm2022/comboboxes/combobox.component.mjs +5 -5
  29. package/esm2022/comboboxes/combobox.module.mjs +4 -4
  30. package/esm2022/comboboxes/multicolumncombobox.component.mjs +4 -4
  31. package/esm2022/common/adaptive-renderer.component.mjs +4 -4
  32. package/esm2022/common/data.service.mjs +3 -3
  33. package/esm2022/common/disabled-items/disabled-items.service.mjs +4 -4
  34. package/esm2022/common/filter-input.directive.mjs +4 -4
  35. package/esm2022/common/filtering/filter.directive.mjs +4 -4
  36. package/esm2022/common/list-item.directive.mjs +5 -5
  37. package/esm2022/common/list.component.mjs +139 -129
  38. package/esm2022/common/localization/custom-messages.component.mjs +4 -4
  39. package/esm2022/common/localization/localized-messages.directive.mjs +4 -4
  40. package/esm2022/common/localization/messages.mjs +3 -3
  41. package/esm2022/common/navigation/navigation.service.mjs +4 -4
  42. package/esm2022/common/searchbar.component.mjs +5 -5
  43. package/esm2022/common/selection/selectable.directive.mjs +4 -4
  44. package/esm2022/common/selection/selection.service.mjs +4 -4
  45. package/esm2022/common/shared-events.directive.mjs +4 -4
  46. package/esm2022/common/taglist.component.mjs +4 -4
  47. package/esm2022/common/templates/custom-item-template.directive.mjs +4 -4
  48. package/esm2022/common/templates/fixed-group-template.directive.mjs +4 -4
  49. package/esm2022/common/templates/footer-template.directive.mjs +4 -4
  50. package/esm2022/common/templates/group-tag-template.directive.mjs +4 -4
  51. package/esm2022/common/templates/group-template.directive.mjs +4 -4
  52. package/esm2022/common/templates/header-template.directive.mjs +4 -4
  53. package/esm2022/common/templates/item-template.directive.mjs +4 -4
  54. package/esm2022/common/templates/no-data-template.directive.mjs +4 -4
  55. package/esm2022/common/templates/tag-template.directive.mjs +4 -4
  56. package/esm2022/common/templates/value-template.directive.mjs +4 -4
  57. package/esm2022/dropdownlist/dropdownlist.component.mjs +4 -4
  58. package/esm2022/dropdownlist/dropdownlist.module.mjs +4 -4
  59. package/esm2022/dropdowns.module.mjs +4 -4
  60. package/esm2022/dropdowntrees/checked-state/base-check.directive.mjs +3 -3
  61. package/esm2022/dropdowntrees/checked-state/check-all.directive.mjs +4 -4
  62. package/esm2022/dropdowntrees/checked-state/check.directive.mjs +4 -4
  63. package/esm2022/dropdowntrees/data-binding/dropdowntree/flat-binding.directive.mjs +4 -4
  64. package/esm2022/dropdowntrees/data-binding/dropdowntree/hierarchy-binding.directive.mjs +4 -4
  65. package/esm2022/dropdowntrees/data-binding/multiselecttree/flat-binding.directive.mjs +4 -4
  66. package/esm2022/dropdowntrees/data-binding/multiselecttree/hierarchy-binding.directive.mjs +4 -4
  67. package/esm2022/dropdowntrees/dropdowntree.component.mjs +4 -4
  68. package/esm2022/dropdowntrees/dropdowntrees.module.mjs +4 -4
  69. package/esm2022/dropdowntrees/expanded-state/expand.directive.mjs +4 -4
  70. package/esm2022/dropdowntrees/lookup/lookup.service.mjs +3 -3
  71. package/esm2022/dropdowntrees/multiselecttree.component.mjs +4 -4
  72. package/esm2022/dropdowntrees/summary-tag/summary-tag.directive.mjs +4 -4
  73. package/esm2022/dropdowntrees/templates/node-template.directive.mjs +4 -4
  74. package/esm2022/multiselect/multiselect.component.mjs +4 -4
  75. package/esm2022/multiselect/multiselect.module.mjs +4 -4
  76. package/esm2022/multiselect/summary-tag.directive.mjs +4 -4
  77. package/esm2022/package-metadata.mjs +2 -2
  78. package/fesm2022/progress-kendo-angular-dropdowns.mjs +351 -341
  79. package/package.json +15 -15
  80. package/schematics/ngAdd/index.js +3 -3
@@ -65,8 +65,8 @@ export class AdaptiveRendererComponent {
65
65
  get windowSize() {
66
66
  return this.adaptiveService.size;
67
67
  }
68
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AdaptiveRendererComponent, deps: [{ token: i1.LocalizationService }, { token: i2.AdaptiveService }], target: i0.ɵɵFactoryTarget.Component });
69
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AdaptiveRendererComponent, isStandalone: true, selector: "kendo-adaptive-renderer", inputs: { title: "title", subtitle: "subtitle", showTextInput: "showTextInput", sharedPopupActionSheetTemplate: "sharedPopupActionSheetTemplate", text: "text", placeholder: "placeholder", searchBarValue: "searchBarValue", filterable: "filterable" }, outputs: { closePopup: "closePopup", textInputChange: "textInputChange", navigate: "navigate", onExpand: "onExpand" }, viewQueries: [{ propertyName: "actionSheet", first: true, predicate: ActionSheetComponent, descendants: true }, { propertyName: "actionSheetSearchBar", first: true, predicate: ["actionSheetSearchBar"], descendants: true }], ngImport: i0, template: `
68
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AdaptiveRendererComponent, deps: [{ token: i1.LocalizationService }, { token: i2.AdaptiveService }], target: i0.ɵɵFactoryTarget.Component });
69
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: AdaptiveRendererComponent, isStandalone: true, selector: "kendo-adaptive-renderer", inputs: { title: "title", subtitle: "subtitle", showTextInput: "showTextInput", sharedPopupActionSheetTemplate: "sharedPopupActionSheetTemplate", text: "text", placeholder: "placeholder", searchBarValue: "searchBarValue", filterable: "filterable" }, outputs: { closePopup: "closePopup", textInputChange: "textInputChange", navigate: "navigate", onExpand: "onExpand" }, viewQueries: [{ propertyName: "actionSheet", first: true, predicate: ActionSheetComponent, descendants: true }, { propertyName: "actionSheetSearchBar", first: true, predicate: ["actionSheetSearchBar"], descendants: true }], ngImport: i0, template: `
70
70
  <kendo-actionsheet
71
71
  #actionSheet
72
72
  [animation]="{ duration: animationDuration }"
@@ -132,7 +132,7 @@ export class AdaptiveRendererComponent {
132
132
  </kendo-actionsheet>
133
133
  `, isInline: true, dependencies: [{ kind: "component", type: ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["actions", "actionsLayout", "overlayClickClose", "title", "subtitle", "items", "cssClass", "cssStyle", "animation", "expanded", "titleId", "initialFocus"], outputs: ["expandedChange", "action", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { kind: "directive", type: ActionSheetTemplateDirective, selector: "[kendoActionSheetTemplate]" }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: TextBoxComponent, selector: "kendo-textbox", inputs: ["focusableId", "title", "type", "disabled", "readonly", "tabindex", "value", "selectOnFocus", "showSuccessIcon", "showErrorIcon", "clearButton", "successIcon", "successSvgIcon", "errorIcon", "errorSvgIcon", "clearButtonIcon", "clearButtonSvgIcon", "size", "rounded", "fillMode", "tabIndex", "placeholder", "maxlength", "inputAttributes"], outputs: ["valueChange", "inputFocus", "inputBlur", "focus", "blur"], exportAs: ["kendoTextBox"] }, { kind: "directive", type: TextBoxPrefixTemplateDirective, selector: "[kendoTextBoxPrefixTemplate]", inputs: ["showSeparator"] }, { kind: "component", type: IconComponent, selector: "kendo-icon", inputs: ["name"], exportAs: ["kendoIcon"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
134
134
  }
135
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AdaptiveRendererComponent, decorators: [{
135
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AdaptiveRendererComponent, decorators: [{
136
136
  type: Component,
137
137
  args: [{
138
138
  selector: 'kendo-adaptive-renderer',
@@ -204,7 +204,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
204
204
  standalone: true,
205
205
  imports: [ActionSheetComponent, ActionSheetTemplateDirective, ButtonComponent, NgIf, TextBoxComponent, TextBoxPrefixTemplateDirective, IconComponent, NgTemplateOutlet]
206
206
  }]
207
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i2.AdaptiveService }]; }, propDecorators: { title: [{
207
+ }], ctorParameters: () => [{ type: i1.LocalizationService }, { type: i2.AdaptiveService }], propDecorators: { title: [{
208
208
  type: Input
209
209
  }], subtitle: [{
210
210
  type: Input
@@ -242,9 +242,9 @@ export class DataService {
242
242
  }
243
243
  return flat;
244
244
  }
245
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DataService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
246
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DataService });
245
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DataService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
246
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DataService });
247
247
  }
248
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DataService, decorators: [{
248
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DataService, decorators: [{
249
249
  type: Injectable
250
250
  }] });
@@ -39,9 +39,9 @@ export class DisabledItemsService {
39
39
  }
40
40
  }
41
41
  }
42
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DisabledItemsService, deps: [{ token: i1.DataService }], target: i0.ɵɵFactoryTarget.Injectable });
43
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DisabledItemsService });
42
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DisabledItemsService, deps: [{ token: i1.DataService }], target: i0.ɵɵFactoryTarget.Injectable });
43
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DisabledItemsService });
44
44
  }
45
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DisabledItemsService, decorators: [{
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DisabledItemsService, decorators: [{
46
46
  type: Injectable
47
- }], ctorParameters: function () { return [{ type: i1.DataService }]; } });
47
+ }], ctorParameters: () => [{ type: i1.DataService }] });
@@ -23,17 +23,17 @@ export class FilterInputDirective {
23
23
  nextTick(fn) {
24
24
  this.zone.runOutsideAngular(() => setTimeout(fn));
25
25
  }
26
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterInputDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
27
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: FilterInputDirective, isStandalone: true, selector: "[filterInput]", inputs: { focused: ["filterInput", "focused"] }, usesOnChanges: true, ngImport: i0 });
26
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterInputDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
27
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: FilterInputDirective, isStandalone: true, selector: "[filterInput]", inputs: { focused: ["filterInput", "focused"] }, usesOnChanges: true, ngImport: i0 });
28
28
  }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterInputDirective, decorators: [{
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterInputDirective, decorators: [{
30
30
  type: Directive,
31
31
  args: [{
32
32
  selector: '[filterInput]' // eslint-disable-line
33
33
  ,
34
34
  standalone: true
35
35
  }]
36
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { focused: [{
36
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { focused: [{
37
37
  type: Input,
38
38
  args: ['filterInput']
39
39
  }] } });
@@ -117,16 +117,16 @@ export class FilterDirective {
117
117
  const providedFields = isPresent(settings) && typeof settings === 'object' ? settings.fields : [];
118
118
  return Object.assign({}, DEFAULT_FILTER_SETTINGS, settings, { fields: this.getFilterFields(providedFields) });
119
119
  }
120
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterDirective, deps: [{ token: i1.FilterableComponent }], target: i0.ɵɵFactoryTarget.Directive });
121
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: FilterDirective, isStandalone: true, selector: "[kendoDropDownFilter]", inputs: { data: "data", rawSettings: ["kendoDropDownFilter", "rawSettings"], filterable: "filterable" }, ngImport: i0 });
120
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterDirective, deps: [{ token: i1.FilterableComponent }], target: i0.ɵɵFactoryTarget.Directive });
121
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: FilterDirective, isStandalone: true, selector: "[kendoDropDownFilter]", inputs: { data: "data", rawSettings: ["kendoDropDownFilter", "rawSettings"], filterable: "filterable" }, ngImport: i0 });
122
122
  }
123
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterDirective, decorators: [{
123
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FilterDirective, decorators: [{
124
124
  type: Directive,
125
125
  args: [{
126
126
  selector: '[kendoDropDownFilter]',
127
127
  standalone: true
128
128
  }]
129
- }], ctorParameters: function () { return [{ type: i1.FilterableComponent }]; }, propDecorators: { data: [{
129
+ }], ctorParameters: () => [{ type: i1.FilterableComponent }], propDecorators: { data: [{
130
130
  type: Input
131
131
  }], rawSettings: [{
132
132
  type: Input,
@@ -12,14 +12,14 @@ export class ListItemDirective {
12
12
  constructor(element) {
13
13
  this.element = element;
14
14
  }
15
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListItemDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
16
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ListItemDirective, isStandalone: true, selector: "\"li[role=option], li[role=group]\"", ngImport: i0 });
15
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ListItemDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
16
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ListItemDirective, isStandalone: true, selector: "\"li[role=option], li[role=group], li[role=presentation]\"", ngImport: i0 });
17
17
  }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListItemDirective, decorators: [{
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ListItemDirective, decorators: [{
19
19
  type: Directive,
20
20
  args: [{
21
- selector: '"li[role=option], li[role=group]"' // eslint-disable-line
21
+ selector: '"li[role=option], li[role=group], li[role=presentation]"' // eslint-disable-line
22
22
  ,
23
23
  standalone: true
24
24
  }]
25
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
25
+ }], ctorParameters: () => [{ type: i0.ElementRef }] });
@@ -61,7 +61,19 @@ export class ListComponent {
61
61
  allowCustom;
62
62
  defaultItem;
63
63
  set data(data) {
64
- this._data = data[0] && data[0].header ? data.slice(0) : data;
64
+ this._data = data[0]?.header ? data.slice(0) : data;
65
+ if (this.dataService.grouped) {
66
+ if (this.virtual) {
67
+ const firstGroupItem = this.dataService.data.find(item => item.header && item.groupIndex === this.data[0].groupIndex);
68
+ if (!this.data[0].header) {
69
+ this._data = [firstGroupItem, ...this._data.slice(1)];
70
+ }
71
+ }
72
+ this.groupedData = this._data.filter(item => item?.header);
73
+ this.groupedData.forEach(group => {
74
+ group.items = this._data.filter(item => !item.header && item.groupIndex === group.groupIndex);
75
+ });
76
+ }
65
77
  }
66
78
  get data() {
67
79
  return this._data;
@@ -78,6 +90,7 @@ export class ListComponent {
78
90
  get size() {
79
91
  return this._size;
80
92
  }
93
+ groupedData;
81
94
  rounded = 'medium';
82
95
  onClick = new EventEmitter();
83
96
  pageChange = new EventEmitter();
@@ -157,9 +170,6 @@ export class ListComponent {
157
170
  this.scrollToFocused = !changes['data'].isFirstChange();
158
171
  }
159
172
  this.setOverflow();
160
- this.zone.onStable.pipe(take(1)).subscribe(() => {
161
- this.setGroupAttributes();
162
- });
163
173
  }
164
174
  if (isChanged('virtual', changes, false)) {
165
175
  this.setOverflow();
@@ -175,31 +185,8 @@ export class ListComponent {
175
185
  this.lastScrollTop = this.content.nativeElement.scrollTop;
176
186
  });
177
187
  });
178
- this.setGroupAttributes();
179
188
  this.setOverflow();
180
189
  }
181
- setGroupAttributes() {
182
- const liItems = document.querySelectorAll('li');
183
- let isGroup;
184
- let childrenliItemsIds = [];
185
- let firstGroupReached = false;
186
- let previousGroup;
187
- liItems.forEach((li, idx) => {
188
- isGroup = li.getAttribute('role') === 'group';
189
- if (!isGroup && firstGroupReached) {
190
- this.renderer.setAttribute(li, 'aria-describedby', previousGroup.getAttribute('id'));
191
- childrenliItemsIds.push(li.getAttribute('id'));
192
- if (idx + 1 >= liItems.length || liItems[idx + 1]?.getAttribute('role') === 'group') {
193
- this.renderer.setAttribute(previousGroup, 'aria-owns', childrenliItemsIds.join(' '));
194
- childrenliItemsIds = [];
195
- }
196
- }
197
- if (isGroup) {
198
- firstGroupReached = true;
199
- previousGroup = li;
200
- }
201
- });
202
- }
203
190
  ngAfterViewChecked() {
204
191
  if (this.virtual) {
205
192
  this.positionItems();
@@ -274,7 +261,7 @@ export class ListComponent {
274
261
  const item = this.firstVisibleItem();
275
262
  if (item) {
276
263
  let index;
277
- if (item.getAttribute("role") === "group") {
264
+ if (item.getAttribute("role") === "presentation") {
278
265
  index = parseInt(item.getAttribute("group-index"), 10);
279
266
  this.currentGroup = this.dataService.groupAt(index)?.value;
280
267
  }
@@ -320,7 +307,6 @@ export class ListComponent {
320
307
  this.lastLoaded = end;
321
308
  this.pageChange.emit({ skip: start, take: this.pageSize });
322
309
  });
323
- this.setGroupAttributes();
324
310
  }
325
311
  index(groupIndex, itemIndex) {
326
312
  return groupIndex > 0 ? (this.dataService.groupIndices[groupIndex - 1] + itemIndex) : itemIndex;
@@ -331,6 +317,9 @@ export class ListComponent {
331
317
  getValue(dataItem) {
332
318
  return getter(dataItem, this.valueField);
333
319
  }
320
+ generateGroupId(dataItem) {
321
+ return `${this.optionPrefix}-${dataItem.groupIndex}-${dataItem.value.toString().split(' ').join('')}`;
322
+ }
334
323
  isDisabled(index) {
335
324
  if (isPresent(this.virtual) && !this.dataService.grouped) {
336
325
  index += this.virtual.skip;
@@ -441,15 +430,6 @@ export class ListComponent {
441
430
  this.renderer.setStyle(item.element.nativeElement, "transform", `translateY(${offsetY}px`);
442
431
  });
443
432
  }
444
- /**
445
- * Indicates whether the first group header from the data set is in the targeted virtual page.
446
- */
447
- firstGroupHeaderInTargetedPage(itemIndex) {
448
- if (!isPresent(this.virtual)) {
449
- return true;
450
- }
451
- return this.virtual.skip === 0 && (this.virtual.pageSize > itemIndex);
452
- }
453
433
  setComponentClasses() {
454
434
  if (this.type === 'list') {
455
435
  this.renderer.addClass(this.wrapper.nativeElement, 'k-list');
@@ -464,8 +444,8 @@ export class ListComponent {
464
444
  this.renderer.addClass(this.wrapper.nativeElement, this.listVirtualClass);
465
445
  }
466
446
  }
467
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListComponent, deps: [{ token: i1.DataService }, { token: i0.ElementRef }, { token: i2.SelectionService }, { token: i3.DisabledItemsService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i4.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
468
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ListComponent, isStandalone: true, selector: "kendo-list", inputs: { selected: "selected", focused: "focused", textField: "textField", valueField: "valueField", height: "height", template: "template", groupTemplate: "groupTemplate", fixedGroupTemplate: "fixedGroupTemplate", show: "show", id: "id", optionPrefix: "optionPrefix", multipleSelection: "multipleSelection", virtual: "virtual", type: "type", checkboxes: "checkboxes", ariaLive: "ariaLive", isMultiselect: "isMultiselect", isActionSheetExpanded: "isActionSheetExpanded", showStickyHeader: "showStickyHeader", rowWidth: "rowWidth", customItemTemplate: "customItemTemplate", text: "text", allowCustom: "allowCustom", defaultItem: "defaultItem", data: "data", size: "size", rounded: "rounded" }, outputs: { onClick: "onClick", pageChange: "pageChange", listResize: "listResize", popupListScroll: "popupListScroll" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true, static: true }, { propertyName: "list", first: true, predicate: ["list"], descendants: true, static: true }, { propertyName: "virtualContainer", first: true, predicate: ["virtualContainer"], descendants: true }, { propertyName: "items", predicate: ListItemDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
447
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ListComponent, deps: [{ token: i1.DataService }, { token: i0.ElementRef }, { token: i2.SelectionService }, { token: i3.DisabledItemsService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i4.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
448
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ListComponent, isStandalone: true, selector: "kendo-list", inputs: { selected: "selected", focused: "focused", textField: "textField", valueField: "valueField", height: "height", template: "template", groupTemplate: "groupTemplate", fixedGroupTemplate: "fixedGroupTemplate", show: "show", id: "id", optionPrefix: "optionPrefix", multipleSelection: "multipleSelection", virtual: "virtual", type: "type", checkboxes: "checkboxes", ariaLive: "ariaLive", isMultiselect: "isMultiselect", isActionSheetExpanded: "isActionSheetExpanded", showStickyHeader: "showStickyHeader", rowWidth: "rowWidth", customItemTemplate: "customItemTemplate", text: "text", allowCustom: "allowCustom", defaultItem: "defaultItem", data: "data", size: "size", rounded: "rounded" }, outputs: { onClick: "onClick", pageChange: "pageChange", listResize: "listResize", popupListScroll: "popupListScroll" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true, static: true }, { propertyName: "list", first: true, predicate: ["list"], descendants: true }, { propertyName: "virtualContainer", first: true, predicate: ["virtualContainer"], descendants: true }, { propertyName: "items", predicate: ListItemDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
469
449
  <div *ngIf="defaultItem && !template"
470
450
  class="k-list-optionlabel"
471
451
  [ngClass]="{ 'k-disabled': isDisabledDefaultItem }"
@@ -519,15 +499,22 @@ export class ListComponent {
519
499
  [class]="listContentClass"
520
500
  [style.maxHeight.px]="height"
521
501
  unselectable="on"
522
- (scroll)="popupListScroll.emit($event)">
502
+ (scroll)="popupListScroll.emit($event)"
503
+ [attr.role]="dataService.grouped ? 'listbox' : null"
504
+ [attr.id]="dataService.grouped ? id : null"
505
+ [attr.aria-live]="dataService.grouped ? ariaLive : null"
506
+ [attr.aria-multiselectable]="dataService.grouped ? isMultiselect : null"
507
+ [attr.aria-hidden]="dataService.grouped ? !show : null"
508
+ >
523
509
  <ul #list
524
- role="listbox"
510
+ *ngIf="!dataService.grouped"
511
+ [attr.role]="'listbox'"
525
512
  [class]="listClass"
526
513
  [attr.id]="id"
527
514
  [attr.aria-live]="ariaLive"
528
515
  [attr.aria-multiselectable]="isMultiselect"
529
516
  [attr.aria-hidden]="!show">
530
- <ng-template *ngIf="!dataService.grouped && show" ngFor let-dataItem let-itemIndex="index" [ngForOf]="data">
517
+ <ng-container *ngFor="let dataItem of data; let itemIndex = index">
531
518
  <li
532
519
  role="option"
533
520
  kendoDropDownsSelectable
@@ -563,75 +550,83 @@ export class ListComponent {
563
550
  </ng-template>
564
551
  <ng-template [ngIf]="!template"><span class="k-list-item-text">{{ getText(dataItem) }}</span></ng-template>
565
552
  </li>
566
- </ng-template>
567
- <ng-template *ngIf="dataService.grouped" ngFor let-dataItem let-itemIndex="index" [ngForOf]="data">
568
- <li
569
- #li
570
- *ngIf="dataItem.header"
571
- role="group"
553
+ </ng-container>
554
+ <kendo-resize-sensor
555
+ *ngIf="!virtual"
556
+ (resize)="listResize.emit()"
557
+ >
558
+ </kendo-resize-sensor>
559
+ </ul>
560
+
561
+ <ng-container *ngIf="dataService.grouped" #list>
562
+ <ul *ngFor="let dataItem of groupedData"
563
+ #groupUl
564
+ class="k-list-ul"
565
+ [attr.role]="'group'"
566
+ [attr.aria-labelledby]="generateGroupId(dataItem)"
567
+ >
568
+ <li *ngIf="dataItem.header"
569
+ role="presentation"
572
570
  [class]="listGroupItemClass"
573
- [class.k-table-alt-row]="isAltRow(itemIndex - 1)"
571
+ [class.k-table-alt-row]="isAltRow(dataItem.index - 1)"
574
572
  [ngStyle]="{
575
573
  'height.px': virtual?.itemHeight,
576
574
  'minHeight.px' : virtual?.itemHeight,
577
575
  'boxSizing' : virtual ? 'border-box' : 'inherit'}"
578
576
  [attr.group-index]="dataItem.index"
579
- [attr.id]="optionPrefix + '-' + dataItem.groupIndex + '-' + dataItem.value.toString().split(' ').join('')"
580
- [attr.tabIndex]="-1"
581
- [style.width.px]="rowWidth ?? null">
582
- <span [class]="listGroupItemTextClass">
583
- <ng-template *ngIf="groupTemplate"
584
- [templateContext]="{
585
- templateRef: groupTemplate.templateRef,
586
- $implicit: dataItem.value
587
- }">
588
- </ng-template>
589
- <ng-template [ngIf]="!groupTemplate">{{ dataItem.value }}</ng-template>
590
- </span>
577
+ [attr.id]="groupUl.getAttribute('aria-labelledby')"
578
+ [style.width.px]="rowWidth ?? null"
579
+ >
580
+ <span [class]="listGroupItemTextClass">
581
+ <ng-template *ngIf="groupTemplate"
582
+ [templateContext]="{
583
+ templateRef: groupTemplate.templateRef,
584
+ $implicit: dataItem.value
585
+ }">
586
+ </ng-template>
587
+ <ng-template [ngIf]="!groupTemplate">{{ dataItem.value }}</ng-template>
588
+ </span>
591
589
  </li>
592
- <li
593
- #li
594
- *ngIf="!dataItem.header"
590
+ <li *ngFor="let item of dataItem.items"
595
591
  role="option"
596
592
  kendoDropDownsSelectable
597
593
  [height]="virtual?.itemHeight"
598
- [index]="dataItem.offsetIndex"
594
+ [index]="item.offsetIndex"
599
595
  [multipleSelection]="multipleSelection"
600
- [attr.absolute-index]="dataItem.index"
601
- [attr.id]="optionPrefix + '-' + (itemIndex - 1 - dataItem.groupIndex)"
596
+ [attr.absolute-index]="item.index"
597
+ [attr.id]="optionPrefix + '-' + (item.index - 1 - item.groupIndex)"
602
598
  [attr.tabIndex]="-1"
603
- [attr.aria-selected]="isItemSelected(dataItem.offsetIndex)"
599
+ [attr.aria-selected]="isItemSelected(item.offsetIndex)"
604
600
  [class]="listItemClass"
605
601
  [ngClass]="{
606
- 'k-disabled': isDisabled(dataItem.offsetIndex),
607
- 'k-table-alt-row': isAltRow(itemIndex - 1)
602
+ 'k-disabled': isDisabled(item.offsetIndex),
603
+ 'k-table-alt-row': isAltRow(item.index - 1)
608
604
  }"
609
- [style.width.px]="rowWidth ?? null"
610
- >
605
+ [style.width.px]="rowWidth ?? null">
611
606
  <ng-template *ngIf="template"
612
607
  [templateContext]="{
613
608
  templateRef: template.templateRef,
614
- $implicit: dataItem.value
609
+ $implicit: item.value
615
610
  }">
616
611
  </ng-template>
617
- <ng-template [ngIf]="!template"><span class="k-list-item-text">{{ getText(dataItem.value) }}</span></ng-template>
612
+ <ng-template [ngIf]="!template"><span class="k-list-item-text">{{ getText(item.value) }}</span></ng-template>
618
613
  </li>
619
- </ng-template>
620
- <kendo-resize-sensor
621
- *ngIf="!virtual"
622
- (resize)="listResize.emit()"
623
- >
624
- </kendo-resize-sensor>
625
- </ul>
614
+ <kendo-resize-sensor
615
+ *ngIf="!virtual"
616
+ (resize)="listResize.emit()"
617
+ >
618
+ </kendo-resize-sensor>
619
+ </ul>
620
+ </ng-container>
626
621
  <div *ngIf="virtual" #virtualContainer class="k-height-container" role="presentation">
627
622
  <div [style.height.px]="scrollHeight">
628
623
  <kendo-resize-sensor (resize)="listResize.emit()"></kendo-resize-sensor>
629
624
  </div>
630
625
  </div>
631
626
  </div>
632
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: ListItemDirective, selector: "\"li[role=option], li[role=group]\"" }, { kind: "directive", type: SelectableDirective, selector: "[kendoDropDownsSelectable]", inputs: ["index", "checkboxes", "height", "isMultiselect", "multipleSelection"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }] });
627
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: ListItemDirective, selector: "\"li[role=option], li[role=group], li[role=presentation]\"" }, { kind: "directive", type: SelectableDirective, selector: "[kendoDropDownsSelectable]", inputs: ["index", "checkboxes", "height", "isMultiselect", "multipleSelection"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }] });
633
628
  }
634
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListComponent, decorators: [{
629
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ListComponent, decorators: [{
635
630
  type: Component,
636
631
  args: [{
637
632
  selector: 'kendo-list',
@@ -689,15 +684,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
689
684
  [class]="listContentClass"
690
685
  [style.maxHeight.px]="height"
691
686
  unselectable="on"
692
- (scroll)="popupListScroll.emit($event)">
687
+ (scroll)="popupListScroll.emit($event)"
688
+ [attr.role]="dataService.grouped ? 'listbox' : null"
689
+ [attr.id]="dataService.grouped ? id : null"
690
+ [attr.aria-live]="dataService.grouped ? ariaLive : null"
691
+ [attr.aria-multiselectable]="dataService.grouped ? isMultiselect : null"
692
+ [attr.aria-hidden]="dataService.grouped ? !show : null"
693
+ >
693
694
  <ul #list
694
- role="listbox"
695
+ *ngIf="!dataService.grouped"
696
+ [attr.role]="'listbox'"
695
697
  [class]="listClass"
696
698
  [attr.id]="id"
697
699
  [attr.aria-live]="ariaLive"
698
700
  [attr.aria-multiselectable]="isMultiselect"
699
701
  [attr.aria-hidden]="!show">
700
- <ng-template *ngIf="!dataService.grouped && show" ngFor let-dataItem let-itemIndex="index" [ngForOf]="data">
702
+ <ng-container *ngFor="let dataItem of data; let itemIndex = index">
701
703
  <li
702
704
  role="option"
703
705
  kendoDropDownsSelectable
@@ -733,66 +735,74 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
733
735
  </ng-template>
734
736
  <ng-template [ngIf]="!template"><span class="k-list-item-text">{{ getText(dataItem) }}</span></ng-template>
735
737
  </li>
736
- </ng-template>
737
- <ng-template *ngIf="dataService.grouped" ngFor let-dataItem let-itemIndex="index" [ngForOf]="data">
738
- <li
739
- #li
740
- *ngIf="dataItem.header"
741
- role="group"
738
+ </ng-container>
739
+ <kendo-resize-sensor
740
+ *ngIf="!virtual"
741
+ (resize)="listResize.emit()"
742
+ >
743
+ </kendo-resize-sensor>
744
+ </ul>
745
+
746
+ <ng-container *ngIf="dataService.grouped" #list>
747
+ <ul *ngFor="let dataItem of groupedData"
748
+ #groupUl
749
+ class="k-list-ul"
750
+ [attr.role]="'group'"
751
+ [attr.aria-labelledby]="generateGroupId(dataItem)"
752
+ >
753
+ <li *ngIf="dataItem.header"
754
+ role="presentation"
742
755
  [class]="listGroupItemClass"
743
- [class.k-table-alt-row]="isAltRow(itemIndex - 1)"
756
+ [class.k-table-alt-row]="isAltRow(dataItem.index - 1)"
744
757
  [ngStyle]="{
745
758
  'height.px': virtual?.itemHeight,
746
759
  'minHeight.px' : virtual?.itemHeight,
747
760
  'boxSizing' : virtual ? 'border-box' : 'inherit'}"
748
761
  [attr.group-index]="dataItem.index"
749
- [attr.id]="optionPrefix + '-' + dataItem.groupIndex + '-' + dataItem.value.toString().split(' ').join('')"
750
- [attr.tabIndex]="-1"
751
- [style.width.px]="rowWidth ?? null">
752
- <span [class]="listGroupItemTextClass">
753
- <ng-template *ngIf="groupTemplate"
754
- [templateContext]="{
755
- templateRef: groupTemplate.templateRef,
756
- $implicit: dataItem.value
757
- }">
758
- </ng-template>
759
- <ng-template [ngIf]="!groupTemplate">{{ dataItem.value }}</ng-template>
760
- </span>
762
+ [attr.id]="groupUl.getAttribute('aria-labelledby')"
763
+ [style.width.px]="rowWidth ?? null"
764
+ >
765
+ <span [class]="listGroupItemTextClass">
766
+ <ng-template *ngIf="groupTemplate"
767
+ [templateContext]="{
768
+ templateRef: groupTemplate.templateRef,
769
+ $implicit: dataItem.value
770
+ }">
771
+ </ng-template>
772
+ <ng-template [ngIf]="!groupTemplate">{{ dataItem.value }}</ng-template>
773
+ </span>
761
774
  </li>
762
- <li
763
- #li
764
- *ngIf="!dataItem.header"
775
+ <li *ngFor="let item of dataItem.items"
765
776
  role="option"
766
777
  kendoDropDownsSelectable
767
778
  [height]="virtual?.itemHeight"
768
- [index]="dataItem.offsetIndex"
779
+ [index]="item.offsetIndex"
769
780
  [multipleSelection]="multipleSelection"
770
- [attr.absolute-index]="dataItem.index"
771
- [attr.id]="optionPrefix + '-' + (itemIndex - 1 - dataItem.groupIndex)"
781
+ [attr.absolute-index]="item.index"
782
+ [attr.id]="optionPrefix + '-' + (item.index - 1 - item.groupIndex)"
772
783
  [attr.tabIndex]="-1"
773
- [attr.aria-selected]="isItemSelected(dataItem.offsetIndex)"
784
+ [attr.aria-selected]="isItemSelected(item.offsetIndex)"
774
785
  [class]="listItemClass"
775
786
  [ngClass]="{
776
- 'k-disabled': isDisabled(dataItem.offsetIndex),
777
- 'k-table-alt-row': isAltRow(itemIndex - 1)
787
+ 'k-disabled': isDisabled(item.offsetIndex),
788
+ 'k-table-alt-row': isAltRow(item.index - 1)
778
789
  }"
779
- [style.width.px]="rowWidth ?? null"
780
- >
790
+ [style.width.px]="rowWidth ?? null">
781
791
  <ng-template *ngIf="template"
782
792
  [templateContext]="{
783
793
  templateRef: template.templateRef,
784
- $implicit: dataItem.value
794
+ $implicit: item.value
785
795
  }">
786
796
  </ng-template>
787
- <ng-template [ngIf]="!template"><span class="k-list-item-text">{{ getText(dataItem.value) }}</span></ng-template>
797
+ <ng-template [ngIf]="!template"><span class="k-list-item-text">{{ getText(item.value) }}</span></ng-template>
788
798
  </li>
789
- </ng-template>
790
- <kendo-resize-sensor
791
- *ngIf="!virtual"
792
- (resize)="listResize.emit()"
793
- >
794
- </kendo-resize-sensor>
795
- </ul>
799
+ <kendo-resize-sensor
800
+ *ngIf="!virtual"
801
+ (resize)="listResize.emit()"
802
+ >
803
+ </kendo-resize-sensor>
804
+ </ul>
805
+ </ng-container>
796
806
  <div *ngIf="virtual" #virtualContainer class="k-height-container" role="presentation">
797
807
  <div [style.height.px]="scrollHeight">
798
808
  <kendo-resize-sensor (resize)="listResize.emit()"></kendo-resize-sensor>
@@ -803,7 +813,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
803
813
  standalone: true,
804
814
  imports: [NgIf, NgStyle, TemplateContextDirective, NgFor, ListItemDirective, SelectableDirective, NgClass, ResizeSensorComponent]
805
815
  }]
806
- }], ctorParameters: function () { return [{ type: i1.DataService }, { type: i0.ElementRef }, { type: i2.SelectionService }, { type: i3.DisabledItemsService }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i4.LocalizationService }]; }, propDecorators: { selected: [{
816
+ }], ctorParameters: () => [{ type: i1.DataService }, { type: i0.ElementRef }, { type: i2.SelectionService }, { type: i3.DisabledItemsService }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i4.LocalizationService }], propDecorators: { selected: [{
807
817
  type: Input
808
818
  }], focused: [{
809
819
  type: Input
@@ -873,8 +883,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
873
883
  args: ['content', { static: true }]
874
884
  }], list: [{
875
885
  type: ViewChild,
876
- args: ['list', { static: true }]
886
+ args: ['list']
877
887
  }], virtualContainer: [{
878
888
  type: ViewChild,
879
- args: ['virtualContainer', { static: false }]
889
+ args: ['virtualContainer']
880
890
  }] } });
@@ -72,15 +72,15 @@ export class CustomMessagesComponent extends Messages {
72
72
  get override() {
73
73
  return true;
74
74
  }
75
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CustomMessagesComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
76
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CustomMessagesComponent, isStandalone: true, selector: "kendo-dropdownlist-messages,kendo-combobox-messages,kendo-multicolumncombobox-messages,kendo-autocomplete-messages,kendo-multiselect-messages,kendo-dropdowntree-messages,kendo-multiselecttree-messages", providers: [
75
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CustomMessagesComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
76
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: CustomMessagesComponent, isStandalone: true, selector: "kendo-dropdownlist-messages,kendo-combobox-messages,kendo-multicolumncombobox-messages,kendo-autocomplete-messages,kendo-multiselect-messages,kendo-dropdowntree-messages,kendo-multiselecttree-messages", providers: [
77
77
  {
78
78
  provide: Messages,
79
79
  useExisting: forwardRef(() => CustomMessagesComponent)
80
80
  }
81
81
  ], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
82
82
  }
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CustomMessagesComponent, decorators: [{
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CustomMessagesComponent, decorators: [{
84
84
  type: Component,
85
85
  args: [{
86
86
  providers: [
@@ -93,4 +93,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
93
93
  template: ``,
94
94
  standalone: true
95
95
  }]
96
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
96
+ }], ctorParameters: () => [{ type: i1.LocalizationService }] });