@progress/kendo-angular-buttons 8.2.2 → 11.0.0-develop.79

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 (145) hide show
  1. package/NOTICE.txt +3 -3
  2. package/README.md +7 -7
  3. package/button/{button.directive.d.ts → button.component.d.ts} +26 -29
  4. package/button/button.module.d.ts +4 -3
  5. package/button/button.service.d.ts +5 -5
  6. package/button/selection-settings.d.ts +1 -1
  7. package/buttongroup/buttongroup.component.d.ts +7 -7
  8. package/buttongroup/buttongroup.module.d.ts +1 -1
  9. package/buttons.module.d.ts +1 -1
  10. package/chip/chip-content-click-event-args.interface.d.ts +1 -1
  11. package/chip/chip-list-remove-event-args.interface.d.ts +1 -1
  12. package/chip/chip-list.component.d.ts +1 -1
  13. package/chip/chip-remove-event-args.interface.d.ts +1 -1
  14. package/chip/chip.component.d.ts +17 -3
  15. package/chip/chip.module.d.ts +3 -2
  16. package/chip/models/selection.d.ts +1 -1
  17. package/common/models/fillmode.d.ts +1 -1
  18. package/common/models/rounded.d.ts +1 -1
  19. package/common/models/size.d.ts +1 -1
  20. package/common/models/styling-classes.d.ts +1 -1
  21. package/common/models/theme-color.d.ts +1 -1
  22. package/common/models.d.ts +1 -1
  23. package/direction.d.ts +1 -1
  24. package/dropdownbutton/dropdownbutton.component.d.ts +8 -3
  25. package/dropdownbutton/dropdownbutton.module.d.ts +1 -1
  26. package/{esm2015/button/button.directive.js → esm2020/button/button.component.mjs} +84 -149
  27. package/{esm2015/button/button.module.js → esm2020/button/button.module.mjs} +10 -8
  28. package/{esm2015/button/button.service.js → esm2020/button/button.service.mjs} +4 -4
  29. package/{esm2015/button/selection-settings.js → esm2020/button/selection-settings.mjs} +1 -1
  30. package/{esm2015/buttongroup/buttongroup.component.js → esm2020/buttongroup/buttongroup.component.mjs} +10 -10
  31. package/{esm2015/buttongroup/buttongroup.module.js → esm2020/buttongroup/buttongroup.module.mjs} +5 -5
  32. package/{esm2015/buttons.module.js → esm2020/buttons.module.mjs} +5 -5
  33. package/{esm2015/chip/chip-content-click-event-args.interface.js → esm2020/chip/chip-content-click-event-args.interface.mjs} +1 -1
  34. package/{esm2015/chip/chip-list-remove-event-args.interface.js → esm2020/chip/chip-list-remove-event-args.interface.mjs} +1 -1
  35. package/{esm2015/chip/chip-list.component.js → esm2020/chip/chip-list.component.mjs} +5 -5
  36. package/{esm2015/chip/chip-remove-event-args.interface.js → esm2020/chip/chip-remove-event-args.interface.mjs} +1 -1
  37. package/{esm2015/chip/chip.component.js → esm2020/chip/chip.component.mjs} +68 -71
  38. package/{esm2015/chip/chip.module.js → esm2020/chip/chip.module.mjs} +8 -7
  39. package/esm2020/chip/models/selection.mjs +5 -0
  40. package/esm2020/common/models/fillmode.mjs +5 -0
  41. package/esm2020/common/models/rounded.mjs +5 -0
  42. package/esm2020/common/models/size.mjs +5 -0
  43. package/esm2020/common/models/styling-classes.mjs +5 -0
  44. package/esm2020/common/models/theme-color.mjs +5 -0
  45. package/{esm2015/common/models.js → esm2020/common/models.mjs} +1 -1
  46. package/esm2020/direction.mjs +5 -0
  47. package/{esm2015/dropdownbutton/dropdownbutton.component.js → esm2020/dropdownbutton/dropdownbutton.component.mjs} +17 -11
  48. package/{esm2015/dropdownbutton/dropdownbutton.module.js → esm2020/dropdownbutton/dropdownbutton.module.mjs} +5 -5
  49. package/{esm2015/floatingactionbutton/animations/animations.js → esm2020/floatingactionbutton/animations/animations.mjs} +1 -1
  50. package/{esm2015/floatingactionbutton/dial-item.component.js → esm2020/floatingactionbutton/dial-item.component.mjs} +22 -10
  51. package/{esm2015/floatingactionbutton/dial-list.component.js → esm2020/floatingactionbutton/dial-list.component.mjs} +6 -5
  52. package/{esm2015/floatingactionbutton/floatingactionbutton.component.js → esm2020/floatingactionbutton/floatingactionbutton.component.mjs} +27 -12
  53. package/{esm2015/floatingactionbutton/floatingactionbutton.module.js → esm2020/floatingactionbutton/floatingactionbutton.module.mjs} +8 -7
  54. package/esm2020/floatingactionbutton/models/align.mjs +5 -0
  55. package/esm2020/floatingactionbutton/models/item-animation.interface.mjs +5 -0
  56. package/esm2020/floatingactionbutton/models/item-click.event.mjs +5 -0
  57. package/esm2020/floatingactionbutton/models/item.interface.mjs +5 -0
  58. package/esm2020/floatingactionbutton/models/offset.mjs +5 -0
  59. package/esm2020/floatingactionbutton/models/position-mode.mjs +5 -0
  60. package/{esm2015/floatingactionbutton/templates/dial-item-template.directive.js → esm2020/floatingactionbutton/templates/dial-item-template.directive.mjs} +5 -5
  61. package/{esm2015/floatingactionbutton/templates/fab-template.directive.js → esm2020/floatingactionbutton/templates/fab-template.directive.mjs} +5 -5
  62. package/{esm2015/floatingactionbutton/utils.js → esm2020/floatingactionbutton/utils.mjs} +3 -3
  63. package/{esm2015/focusable/focus.service.js → esm2020/focusable/focus.service.mjs} +4 -4
  64. package/{esm2015/focusable/focusable.directive.js → esm2020/focusable/focusable.directive.mjs} +6 -5
  65. package/{esm2015/main.js → esm2020/index.mjs} +2 -2
  66. package/{esm2015/listbutton/button-item-template.directive.js → esm2020/listbutton/button-item-template.directive.mjs} +5 -5
  67. package/{esm2015/listbutton/container.service.js → esm2020/listbutton/container.service.mjs} +4 -4
  68. package/{esm2015/listbutton/list-button.js → esm2020/listbutton/list-button.mjs} +15 -11
  69. package/esm2020/listbutton/list-item-model.mjs +5 -0
  70. package/{esm2015/listbutton/list.component.js → esm2020/listbutton/list.component.mjs} +5 -4
  71. package/{esm2015/listbutton/list.module.js → esm2020/listbutton/list.module.mjs} +5 -5
  72. package/esm2020/listbutton/popup-settings.mjs +5 -0
  73. package/{esm2015/listbutton/template-context.directive.js → esm2020/listbutton/template-context.directive.mjs} +5 -5
  74. package/{esm2015/navigation/key-events.js → esm2020/navigation/key-events.mjs} +1 -1
  75. package/{esm2015/navigation/navigation-action.js → esm2020/navigation/navigation-action.mjs} +1 -1
  76. package/{esm2015/navigation/navigation-config.js → esm2020/navigation/navigation-config.mjs} +1 -1
  77. package/{esm2015/navigation/navigation.service.js → esm2020/navigation/navigation.service.mjs} +4 -4
  78. package/{esm2015/package-metadata.js → esm2020/package-metadata.mjs} +3 -3
  79. package/{esm2015/preventable-event.js → esm2020/preventable-event.mjs} +1 -1
  80. package/{esm2015/kendo-angular-buttons.js → esm2020/progress-kendo-angular-buttons.mjs} +2 -2
  81. package/{esm2015/splitbutton/localization/custom-messages.component.js → esm2020/splitbutton/localization/custom-messages.component.mjs} +5 -4
  82. package/{esm2015/splitbutton/localization/localized-messages.directive.js → esm2020/splitbutton/localization/localized-messages.directive.mjs} +5 -4
  83. package/{esm2015/splitbutton/localization/messages.js → esm2020/splitbutton/localization/messages.mjs} +4 -4
  84. package/{esm2015/splitbutton/splitbutton.component.js → esm2020/splitbutton/splitbutton.component.mjs} +55 -25
  85. package/{esm2015/splitbutton/splitbutton.module.js → esm2020/splitbutton/splitbutton.module.mjs} +5 -5
  86. package/{esm2015/util.js → esm2020/util.mjs} +1 -1
  87. package/fesm2015/progress-kendo-angular-buttons.mjs +5251 -0
  88. package/{fesm2015/kendo-angular-buttons.js → fesm2020/progress-kendo-angular-buttons.mjs} +450 -464
  89. package/floatingactionbutton/animations/animations.d.ts +1 -1
  90. package/floatingactionbutton/dial-item.component.d.ts +4 -3
  91. package/floatingactionbutton/dial-list.component.d.ts +1 -1
  92. package/floatingactionbutton/floatingactionbutton.component.d.ts +9 -3
  93. package/floatingactionbutton/floatingactionbutton.module.d.ts +3 -2
  94. package/floatingactionbutton/models/align.d.ts +1 -1
  95. package/floatingactionbutton/models/item-animation.interface.d.ts +1 -1
  96. package/floatingactionbutton/models/item-click.event.d.ts +1 -1
  97. package/floatingactionbutton/models/item.interface.d.ts +6 -1
  98. package/floatingactionbutton/models/offset.d.ts +1 -1
  99. package/floatingactionbutton/models/position-mode.d.ts +1 -1
  100. package/floatingactionbutton/templates/dial-item-template.directive.d.ts +1 -1
  101. package/floatingactionbutton/templates/fab-template.directive.d.ts +1 -1
  102. package/floatingactionbutton/utils.d.ts +1 -1
  103. package/focusable/focus.service.d.ts +1 -1
  104. package/focusable/focusable.directive.d.ts +1 -1
  105. package/{main.d.ts → index.d.ts} +3 -2
  106. package/listbutton/button-item-template.directive.d.ts +1 -1
  107. package/listbutton/container.service.d.ts +1 -1
  108. package/listbutton/list-button.d.ts +1 -1
  109. package/listbutton/list-item-model.d.ts +1 -1
  110. package/listbutton/list.component.d.ts +1 -1
  111. package/listbutton/list.module.d.ts +1 -1
  112. package/listbutton/popup-settings.d.ts +1 -1
  113. package/listbutton/template-context.directive.d.ts +1 -1
  114. package/navigation/key-events.d.ts +1 -1
  115. package/navigation/navigation-action.d.ts +1 -1
  116. package/navigation/navigation-config.d.ts +1 -1
  117. package/navigation/navigation.service.d.ts +1 -1
  118. package/package-metadata.d.ts +1 -1
  119. package/package.json +30 -57
  120. package/preventable-event.d.ts +1 -1
  121. package/{kendo-angular-buttons.d.ts → progress-kendo-angular-buttons.d.ts} +2 -2
  122. package/schematics/ngAdd/index.js +5 -7
  123. package/splitbutton/localization/custom-messages.component.d.ts +1 -1
  124. package/splitbutton/localization/localized-messages.directive.d.ts +1 -1
  125. package/splitbutton/localization/messages.d.ts +1 -1
  126. package/splitbutton/splitbutton.component.d.ts +22 -3
  127. package/splitbutton/splitbutton.module.d.ts +1 -1
  128. package/util.d.ts +1 -1
  129. package/bundles/kendo-angular-buttons.umd.js +0 -5
  130. package/esm2015/chip/models/selection.js +0 -5
  131. package/esm2015/common/models/fillmode.js +0 -5
  132. package/esm2015/common/models/rounded.js +0 -5
  133. package/esm2015/common/models/size.js +0 -5
  134. package/esm2015/common/models/styling-classes.js +0 -5
  135. package/esm2015/common/models/theme-color.js +0 -5
  136. package/esm2015/direction.js +0 -5
  137. package/esm2015/floatingactionbutton/models/align.js +0 -5
  138. package/esm2015/floatingactionbutton/models/item-animation.interface.js +0 -5
  139. package/esm2015/floatingactionbutton/models/item-click.event.js +0 -5
  140. package/esm2015/floatingactionbutton/models/item.interface.js +0 -5
  141. package/esm2015/floatingactionbutton/models/offset.js +0 -5
  142. package/esm2015/floatingactionbutton/models/position-mode.js +0 -5
  143. package/esm2015/listbutton/list-item-model.js +0 -5
  144. package/esm2015/listbutton/popup-settings.js +0 -5
  145. package/schematics/ngAdd/index.js.map +0 -1
@@ -1,24 +1,45 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2021 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2022 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as i0 from '@angular/core';
6
- import { Injectable, EventEmitter, Directive, Optional, Input, Output, HostBinding, HostListener, isDevMode, Component, ContentChildren, NgModule, InjectionToken, Inject, forwardRef, ElementRef, ViewContainerRef, ContentChild, ViewChild } from '@angular/core';
7
- import * as i8 from '@progress/kendo-angular-common';
8
- import { isDocumentAvailable, Keys, isChanged, hasObservers, guid, EventsModule } from '@progress/kendo-angular-common';
6
+ import { Injectable, EventEmitter, isDevMode, Component, Optional, Input, Output, HostBinding, HostListener, ContentChildren, NgModule, Directive, InjectionToken, Inject, forwardRef, ElementRef, ViewContainerRef, ContentChild, ViewChild } from '@angular/core';
7
+ import { Subject, Subscription, fromEvent, merge } from 'rxjs';
8
+ import * as i9 from '@progress/kendo-angular-common';
9
+ import { isDocumentAvailable, Keys, isChanged, hasObservers, guid, anyChanged, EventsModule } from '@progress/kendo-angular-common';
9
10
  import * as i1 from '@progress/kendo-angular-l10n';
10
11
  import { LocalizationService, L10N_PREFIX, ComponentMessages } from '@progress/kendo-angular-l10n';
11
- import { Subject, Subscription, fromEvent, merge } from 'rxjs';
12
- import { take, filter, tap } from 'rxjs/operators';
13
12
  import { validatePackage } from '@progress/kendo-licensing';
14
13
  import { detectDesktopBrowser, detectMobileOS } from '@progress/kendo-common';
15
- import * as i2 from '@angular/common';
14
+ import * as i2 from '@progress/kendo-angular-icons';
15
+ import { IconsModule } from '@progress/kendo-angular-icons';
16
+ import * as i3 from '@angular/common';
16
17
  import { CommonModule } from '@angular/common';
17
- import * as i3 from '@progress/kendo-angular-popup';
18
+ import { filter, tap, take } from 'rxjs/operators';
19
+ import * as i3$1 from '@progress/kendo-angular-popup';
18
20
  import { PopupModule } from '@progress/kendo-angular-popup';
21
+ import { arrowDownIcon, xCircleIcon } from '@progress/kendo-svg-icons';
19
22
  import * as i4 from '@angular/animations';
20
23
  import { sequence, query, style, stagger, animate } from '@angular/animations';
21
24
 
25
+ /**
26
+ * @hidden
27
+ */
28
+ class KendoButtonService {
29
+ constructor() {
30
+ this.buttonClicked = new Subject();
31
+ this.buttonClicked$ = this.buttonClicked.asObservable();
32
+ }
33
+ click(button) {
34
+ this.buttonClicked.next(button);
35
+ }
36
+ }
37
+ KendoButtonService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: KendoButtonService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
38
+ KendoButtonService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: KendoButtonService });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: KendoButtonService, decorators: [{
40
+ type: Injectable
41
+ }] });
42
+
22
43
  /**
23
44
  * @hidden
24
45
  */
@@ -26,9 +47,9 @@ const packageMetadata = {
26
47
  name: '@progress/kendo-angular-buttons',
27
48
  productName: 'Kendo UI for Angular',
28
49
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
29
- publishDate: 1668698044,
50
+ publishDate: 1672320727,
30
51
  version: '',
31
- 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'
52
+ licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
32
53
  };
33
54
 
34
55
  /**
@@ -133,33 +154,16 @@ const isFirefox = (userAgent) => {
133
154
  return (desktopBrowser && desktopBrowser.mozilla) || (mobileOS && mobileOS.browser === 'firefox');
134
155
  };
135
156
 
136
- /**
137
- * @hidden
138
- */
139
- class KendoButtonService {
140
- constructor() {
141
- this.buttonClicked = new Subject();
142
- this.buttonClicked$ = this.buttonClicked.asObservable();
143
- }
144
- click(button) {
145
- this.buttonClicked.next(button);
146
- }
147
- }
148
- KendoButtonService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KendoButtonService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
149
- KendoButtonService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KendoButtonService });
150
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: KendoButtonService, decorators: [{
151
- type: Injectable
152
- }] });
153
-
154
157
  const SPAN_TAG_NAME = 'SPAN';
155
- const DEFAULT_ROUNDED$2 = 'medium';
156
- const DEFAULT_SIZE$1 = 'medium';
157
- const DEFAULT_THEME_COLOR$1 = 'base';
158
- const DEFAULT_FILL_MODE$2 = 'solid';
158
+ const KENDO_BUTTON_TAG_NAME = 'KENDO-BUTTON';
159
+ const DEFAULT_ROUNDED$3 = 'medium';
160
+ const DEFAULT_SIZE$2 = 'medium';
161
+ const DEFAULT_THEME_COLOR$2 = 'base';
162
+ const DEFAULT_FILL_MODE$3 = 'solid';
159
163
  /**
160
164
  * Represents the Kendo UI Button component for Angular.
161
165
  */
162
- class ButtonDirective {
166
+ class ButtonComponent {
163
167
  constructor(element, renderer, service, localization, ngZone) {
164
168
  this.renderer = renderer;
165
169
  this.service = service;
@@ -184,12 +188,10 @@ class ButtonDirective {
184
188
  */
185
189
  this.click = new EventEmitter();
186
190
  this.isDisabled = false;
187
- this.isIcon = false;
188
- this.isIconClass = false;
189
- this._size = DEFAULT_SIZE$1;
190
- this._rounded = DEFAULT_ROUNDED$2;
191
- this._fillMode = DEFAULT_FILL_MODE$2;
192
- this._themeColor = DEFAULT_THEME_COLOR$1;
191
+ this._size = DEFAULT_SIZE$2;
192
+ this._rounded = DEFAULT_ROUNDED$3;
193
+ this._fillMode = DEFAULT_FILL_MODE$3;
194
+ this._themeColor = DEFAULT_THEME_COLOR$2;
193
195
  this._focused = false;
194
196
  this.subs = new Subscription();
195
197
  validatePackage(packageMetadata);
@@ -229,51 +231,31 @@ class ButtonDirective {
229
231
  get tabIndex() {
230
232
  return this.element.tabIndex;
231
233
  }
232
- /**
233
- * Defines the name for an existing icon in a Kendo UI theme.
234
- * The icon is rendered inside the Button by a `span.k-icon` element.
235
- */
236
- set icon(icon) {
237
- if (icon) {
238
- this.iconSetter(icon, () => {
239
- this.isIcon = true;
240
- const classes = 'k-button-icon k-icon k-i-' + icon;
241
- this.addIcon(classes);
242
- });
243
- }
244
- else {
245
- this.isIcon = false;
246
- this.updateIconNode();
247
- }
248
- }
249
234
  /**
250
235
  * Defines a CSS class—or multiple classes separated by spaces—
251
236
  * which are applied to a `span` element inside the Button. Allows the usage of custom icons.
252
237
  */
253
- set iconClass(iconClassName) {
254
- if (iconClassName) {
255
- this.iconSetter(iconClassName, () => {
256
- this.isIconClass = true;
257
- const classes = 'k-button-icon ' + iconClassName;
258
- this.addIcon(classes);
259
- });
260
- }
261
- else {
262
- this.isIconClass = false;
263
- this.updateIconNode();
238
+ set iconClass(value) {
239
+ if (isDevMode() && value && (this.icon || this.svgIcon)) {
240
+ throw new Error('Setting both icon/svgIcon and iconClass options at the same time is not supported.');
264
241
  }
242
+ this._iconClass = value;
243
+ }
244
+ get iconClass() {
245
+ return this._iconClass;
265
246
  }
266
247
  /**
267
- * Defines a URL which is used for an `img` element inside the Button.
268
- * The URL can be relative or absolute. If relative, it is evaluated with relation to the web page URL.
248
+ * Defines the name for an existing font icon in the Kendo UI theme.
269
249
  */
270
- set imageUrl(imageUrl) {
271
- if (imageUrl) {
272
- this.iconSetter(imageUrl, this.addImgIcon.bind(this));
273
- }
274
- else {
275
- this.removeImageNode();
250
+ set icon(name) {
251
+ if (isDevMode() && name && this.iconClass) {
252
+ throw new Error('Setting both icon/svgIcon and iconClass options at the same time is not supported.');
276
253
  }
254
+ this._icon = name;
255
+ }
256
+ ;
257
+ get icon() {
258
+ return this._icon;
277
259
  }
278
260
  /**
279
261
  * If set to `true`, it disables the Button.
@@ -300,7 +282,7 @@ class ButtonDirective {
300
282
  * * `none`
301
283
  */
302
284
  set size(size) {
303
- const newSize = size ? size : DEFAULT_SIZE$1;
285
+ const newSize = size ? size : DEFAULT_SIZE$2;
304
286
  this.handleClasses(newSize, 'size');
305
287
  this._size = newSize;
306
288
  }
@@ -319,7 +301,7 @@ class ButtonDirective {
319
301
  * * `none`
320
302
  */
321
303
  set rounded(rounded) {
322
- const newRounded = rounded ? rounded : DEFAULT_ROUNDED$2;
304
+ const newRounded = rounded ? rounded : DEFAULT_ROUNDED$3;
323
305
  this.handleClasses(newRounded, 'rounded');
324
306
  this._rounded = newRounded;
325
307
  }
@@ -339,7 +321,7 @@ class ButtonDirective {
339
321
  * * `none`
340
322
  */
341
323
  set fillMode(fillMode) {
342
- const newFillMode = fillMode ? fillMode : DEFAULT_FILL_MODE$2;
324
+ const newFillMode = fillMode ? fillMode : DEFAULT_FILL_MODE$3;
343
325
  this.handleClasses(newFillMode, 'fillMode');
344
326
  this._fillMode = newFillMode;
345
327
  }
@@ -366,13 +348,25 @@ class ButtonDirective {
366
348
  * * `none`
367
349
  */
368
350
  set themeColor(themeColor) {
369
- const newThemeColor = themeColor ? themeColor : DEFAULT_THEME_COLOR$1;
351
+ const newThemeColor = themeColor ? themeColor : DEFAULT_THEME_COLOR$2;
370
352
  this.handleThemeColor(newThemeColor);
371
353
  this._themeColor = newThemeColor;
372
354
  }
373
355
  get themeColor() {
374
356
  return this._themeColor;
375
357
  }
358
+ /**
359
+ * Defines an SVGIcon to be rendered within the button.
360
+ */
361
+ set svgIcon(icon) {
362
+ if (isDevMode() && icon && this.iconClass) {
363
+ throw new Error('Setting both icon/svgIcon and iconClass options at the same time is not supported.');
364
+ }
365
+ this._svgIcon = icon;
366
+ }
367
+ get svgIcon() {
368
+ return this._svgIcon;
369
+ }
376
370
  set isFocused(isFocused) {
377
371
  this.toggleClass('k-focus', isFocused);
378
372
  this._focused = isFocused;
@@ -386,6 +380,10 @@ class ButtonDirective {
386
380
  get isToggleable() {
387
381
  return this.toggleable;
388
382
  }
383
+ get iconButtonClass() {
384
+ const hasIcon = this.icon || this.iconClass || this.imageUrl || this.svgIcon;
385
+ return hasIcon && !this.hasText;
386
+ }
389
387
  get roleSetter() {
390
388
  return this.role;
391
389
  }
@@ -430,8 +428,8 @@ class ButtonDirective {
430
428
  }
431
429
  }
432
430
  ngOnInit() {
433
- const isSpan = this.element.tagName === SPAN_TAG_NAME;
434
- this.addTextSpan();
431
+ const elementTagName = this.element.tagName;
432
+ const isSpanOrKendoButton = elementTagName === SPAN_TAG_NAME || elementTagName === KENDO_BUTTON_TAG_NAME;
435
433
  if (!this.element.hasAttribute('role') && this.togglable) {
436
434
  this.toggleAriaPressed(this.toggleable);
437
435
  }
@@ -442,7 +440,7 @@ class ButtonDirective {
442
440
  this.subs.add(this.renderer.listen(this.element, 'click', this._onButtonClick.bind(this)));
443
441
  this.subs.add(this.renderer.listen(this.element, 'keydown', (event) => {
444
442
  const isSpaceOrEnter = event.keyCode === Keys.Space || event.keyCode === Keys.Enter;
445
- if (isSpan && isSpaceOrEnter) {
443
+ if (isSpanOrKendoButton && isSpaceOrEnter) {
446
444
  this.click.emit(event);
447
445
  this._onButtonClick();
448
446
  }
@@ -460,15 +458,14 @@ class ButtonDirective {
460
458
  this.handleClasses(this[input], input);
461
459
  });
462
460
  }
463
- ngAfterViewChecked() {
464
- this.setIconTextClasses();
465
- }
466
461
  ngOnDestroy() {
467
- this.imageNode = null;
468
- this.iconNode = null;
469
- this.iconSpanNode = null;
470
462
  this.subs.unsubscribe();
471
- clearTimeout(this.deferTimeout);
463
+ }
464
+ /**
465
+ * @hidden
466
+ */
467
+ get hasText() {
468
+ return isDocumentAvailable() && this.element.textContent.trim().length > 0;
472
469
  }
473
470
  /**
474
471
  * Focuses the Button component.
@@ -527,95 +524,6 @@ class ButtonDirective {
527
524
  this.removeAttribute('aria-pressed');
528
525
  }
529
526
  }
530
- hasText() {
531
- return isDocumentAvailable() && this.element.textContent.trim().length > 0;
532
- }
533
- addImgIcon(imageUrl) {
534
- let renderer = this.renderer;
535
- if (!this.iconSpanNode) {
536
- this.iconSpanNode = renderer.createElement('span');
537
- renderer.setProperty(this.iconSpanNode, 'className', 'k-button-icon k-icon');
538
- }
539
- if (this.imageNode) {
540
- renderer.setProperty(this.imageNode, 'src', imageUrl);
541
- }
542
- else if (isDocumentAvailable()) {
543
- this.imageNode = renderer.createElement('img');
544
- renderer.setProperty(this.imageNode, 'src', imageUrl);
545
- renderer.setProperty(this.imageNode, 'className', 'k-image');
546
- renderer.setAttribute(this.imageNode, 'role', 'presentation');
547
- }
548
- this.iconSpanNode.appendChild(this.imageNode);
549
- this.prependChild(this.iconSpanNode);
550
- }
551
- addIcon(classNames) {
552
- let renderer = this.renderer;
553
- if (this.iconNode) {
554
- renderer.setProperty(this.iconNode, 'className', classNames);
555
- }
556
- else if (isDocumentAvailable()) {
557
- this.iconNode = renderer.createElement('span');
558
- renderer.setProperty(this.iconNode, 'className', classNames);
559
- renderer.setAttribute(this.iconNode, 'role', 'presentation');
560
- this.prependChild(this.iconNode);
561
- }
562
- }
563
- addTextSpan() {
564
- this.ngZone.onStable.pipe(take(1)).subscribe(() => {
565
- if (isDocumentAvailable() && this.hasText()) {
566
- const span = this.renderer.createElement('span');
567
- this.renderer.addClass(span, 'k-button-text');
568
- const buttonContentNodes = Array.from(this.element.childNodes);
569
- buttonContentNodes.forEach(node => this.renderer.appendChild(span, node));
570
- this.renderer.appendChild(this.element, span);
571
- }
572
- });
573
- }
574
- prependChild(node) {
575
- this.defer(() => {
576
- if (this.renderer && node !== this.element.firstChild) {
577
- this.renderer.insertBefore(this.element, node, this.element.firstChild);
578
- }
579
- });
580
- }
581
- defer(callback) {
582
- this.ngZone.runOutsideAngular(() => {
583
- this.deferTimeout = setTimeout(callback, 0);
584
- });
585
- }
586
- iconSetter(icon, insertIcon) {
587
- if (icon) {
588
- insertIcon(icon);
589
- }
590
- this.setIconTextClasses();
591
- }
592
- removeImageNode() {
593
- if (this.imageNode && this.renderer.parentNode(this.imageNode)) {
594
- this.renderer.removeChild(this.element, this.imageNode);
595
- this.renderer.removeChild(this.element, this.iconSpanNode);
596
- this.imageNode = null;
597
- this.iconSpanNode = null;
598
- }
599
- }
600
- removeIconNode() {
601
- if (this.iconNode && this.renderer.parentNode(this.iconNode)) {
602
- this.renderer.removeChild(this.element, this.iconNode);
603
- this.iconNode = null;
604
- }
605
- if (this.iconSpanNode) {
606
- this.renderer.removeChild(this.element, this.iconSpanNode);
607
- this.iconSpanNode = null;
608
- }
609
- }
610
- updateIconNode() {
611
- if (!this.isIcon && !this.isIconClass) {
612
- this.removeIconNode();
613
- }
614
- }
615
- setIconTextClasses() {
616
- const hasIcon = this.isIcon || this.isIconClass || this.imageNode;
617
- this.toggleClass('k-icon-button', hasIcon && !this.hasText());
618
- }
619
527
  toggleClass(className, add) {
620
528
  if (add) {
621
529
  this.renderer.addClass(this.element, className);
@@ -660,16 +568,27 @@ class ButtonDirective {
660
568
  }
661
569
  }
662
570
  }
663
- ButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: KendoButtonService, optional: true }, { token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
664
- ButtonDirectivedir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: ButtonDirective, selector: "button[kendoButton], span[kendoButton]", inputs: { toggleable: "toggleable", togglable: "togglable", selected: "selected", tabIndex: "tabIndex", icon: "icon", iconClass: "iconClass", imageUrl: "imageUrl", disabled: "disabled", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor", role: "role", primary: "primary", look: "look" }, outputs: { selectedChange: "selectedChange", click: "click" }, host: { listeners: { "focus": "onFocus()", "blur": "onBlur()" }, properties: { "class.k-button": "this.classButton", "class.k-toggle-button": "this.isToggleable", "attr.role": "this.roleSetter", "attr.aria-disabled": "this.classDisabled", "class.k-disabled": "this.classDisabled", "class.k-selected": "this.classActive", "attr.dir": "this.getDirection" } }, providers: [
571
+ ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: KendoButtonService, optional: true }, { token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
572
+ ButtonComponentcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: { toggleable: "toggleable", togglable: "togglable", selected: "selected", tabIndex: "tabIndex", imageUrl: "imageUrl", iconClass: "iconClass", icon: "icon", disabled: "disabled", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor", svgIcon: "svgIcon", role: "role", primary: "primary", look: "look" }, outputs: { selectedChange: "selectedChange", click: "click" }, host: { listeners: { "focus": "onFocus()", "blur": "onBlur()" }, properties: { "class.k-button": "this.classButton", "class.k-toggle-button": "this.isToggleable", "class.k-icon-button": "this.iconButtonClass", "attr.role": "this.roleSetter", "attr.aria-disabled": "this.classDisabled", "class.k-disabled": "this.classDisabled", "class.k-selected": "this.classActive", "attr.dir": "this.getDirection" } }, providers: [
665
573
  LocalizationService,
666
574
  {
667
575
  provide: L10N_PREFIX,
668
576
  useValue: 'kendo.button'
669
577
  }
670
- ], exportAs: ["kendoButton"], usesOnChanges: true, ngImport: i0 });
671
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonDirective, decorators: [{
672
- type: Directive,
578
+ ], exportAs: ["kendoButton"], usesOnChanges: true, ngImport: i0, template: `
579
+ <kendo-icon-wrapper
580
+ *ngIf="icon || svgIcon"
581
+ innerCssClass="k-button-icon"
582
+ [name]="icon"
583
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
584
+ <span *ngIf="imageUrl" class="k-button-icon k-icon">
585
+ <img [src]="imageUrl" class="k-image" role="presentation" />
586
+ </span>
587
+ <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
588
+ <span class="k-button-text"><ng-content></ng-content></span>
589
+ `, isInline: true, components: [{ type: i2.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
590
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonComponent, decorators: [{
591
+ type: Component,
673
592
  args: [{
674
593
  exportAs: 'kendoButton',
675
594
  providers: [
@@ -679,7 +598,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
679
598
  useValue: 'kendo.button'
680
599
  }
681
600
  ],
682
- selector: 'button[kendoButton], span[kendoButton]' // eslint-disable-line
601
+ selector: 'button[kendoButton], span[kendoButton], kendo-button',
602
+ template: `
603
+ <kendo-icon-wrapper
604
+ *ngIf="icon || svgIcon"
605
+ innerCssClass="k-button-icon"
606
+ [name]="icon"
607
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
608
+ <span *ngIf="imageUrl" class="k-button-icon k-icon">
609
+ <img [src]="imageUrl" class="k-image" role="presentation" />
610
+ </span>
611
+ <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
612
+ <span class="k-button-text"><ng-content></ng-content></span>
613
+ `
683
614
  }]
684
615
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: KendoButtonService, decorators: [{
685
616
  type: Optional
@@ -691,11 +622,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
691
622
  type: Input
692
623
  }], tabIndex: [{
693
624
  type: Input
694
- }], icon: [{
625
+ }], imageUrl: [{
695
626
  type: Input
696
627
  }], iconClass: [{
697
628
  type: Input
698
- }], imageUrl: [{
629
+ }], icon: [{
699
630
  type: Input
700
631
  }], disabled: [{
701
632
  type: Input
@@ -707,6 +638,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
707
638
  type: Input
708
639
  }], themeColor: [{
709
640
  type: Input
641
+ }], svgIcon: [{
642
+ type: Input
710
643
  }], role: [{
711
644
  type: Input
712
645
  }], selectedChange: [{
@@ -719,6 +652,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
719
652
  }], isToggleable: [{
720
653
  type: HostBinding,
721
654
  args: ['class.k-toggle-button']
655
+ }], iconButtonClass: [{
656
+ type: HostBinding,
657
+ args: ['class.k-icon-button']
722
658
  }], roleSetter: [{
723
659
  type: HostBinding,
724
660
  args: ['attr.role']
@@ -887,7 +823,7 @@ class ButtonGroupComponent {
887
823
  });
888
824
  }
889
825
  if (isChanged('navigable', changes)) {
890
- if (changes.navigable.currentValue) {
826
+ if (changes['navigable'].currentValue) {
891
827
  this.setButtonsTabIndex();
892
828
  this.currentTabIndex = 0;
893
829
  }
@@ -916,7 +852,7 @@ class ButtonGroupComponent {
916
852
  this.verifySettings();
917
853
  }
918
854
  navigateFocus(event) {
919
- let focusedIndex = this.buttons.toArray().findIndex(current => current.element.tabIndex !== -1);
855
+ const focusedIndex = this.buttons.toArray().findIndex(current => current.element.tabIndex !== -1);
920
856
  const firstIndex = 0;
921
857
  const lastIndex = this.buttons.length - 1;
922
858
  const eventArgs = new PreventableEvent();
@@ -993,18 +929,18 @@ class ButtonGroupComponent {
993
929
  .subscribe(handler));
994
930
  }
995
931
  }
996
- ButtonGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonGroupComponent, deps: [{ token: KendoButtonService }, { token: i1.LocalizationService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
997
- ButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ButtonGroupComponent, selector: "kendo-buttongroup", inputs: { disabled: "disabled", selection: "selection", width: "width", tabIndex: "tabIndex", navigable: "navigable" }, outputs: { navigate: "navigate" }, host: { properties: { "class.k-button-group": "this.wrapperClass", "class.k-disabled": "this.disabledClass", "class.k-button-group-stretched": "this.stretchedClass", "attr.role": "this.role", "attr.dir": "this.dir", "attr.aria-disabled": "this.ariaDisabled", "style.width": "this.wrapperWidth", "attr.tabindex": "this.wrapperTabIndex" } }, providers: [
932
+ ButtonGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonGroupComponent, deps: [{ token: KendoButtonService }, { token: i1.LocalizationService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
933
+ ButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ButtonGroupComponent, selector: "kendo-buttongroup", inputs: { disabled: "disabled", selection: "selection", width: "width", tabIndex: "tabIndex", navigable: "navigable" }, outputs: { navigate: "navigate" }, host: { properties: { "class.k-button-group": "this.wrapperClass", "class.k-disabled": "this.disabledClass", "class.k-button-group-stretched": "this.stretchedClass", "attr.role": "this.role", "attr.dir": "this.dir", "attr.aria-disabled": "this.ariaDisabled", "style.width": "this.wrapperWidth", "attr.tabindex": "this.wrapperTabIndex" } }, providers: [
998
934
  KendoButtonService,
999
935
  LocalizationService,
1000
936
  {
1001
937
  provide: L10N_PREFIX,
1002
938
  useValue: 'kendo.buttongroup'
1003
939
  }
1004
- ], queries: [{ propertyName: "buttons", predicate: ButtonDirective }], exportAs: ["kendoButtonGroup"], usesOnChanges: true, ngImport: i0, template: `
940
+ ], queries: [{ propertyName: "buttons", predicate: ButtonComponent }], exportAs: ["kendoButtonGroup"], usesOnChanges: true, ngImport: i0, template: `
1005
941
  <ng-content select="[kendoButton]"></ng-content>
1006
942
  `, isInline: true });
1007
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonGroupComponent, decorators: [{
943
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonGroupComponent, decorators: [{
1008
944
  type: Component,
1009
945
  args: [{
1010
946
  exportAs: 'kendoButtonGroup',
@@ -1038,7 +974,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
1038
974
  type: Output
1039
975
  }], buttons: [{
1040
976
  type: ContentChildren,
1041
- args: [ButtonDirective]
977
+ args: [ButtonComponent]
1042
978
  }], wrapperClass: [{
1043
979
  type: HostBinding,
1044
980
  args: ['class.k-button-group']
@@ -1098,14 +1034,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
1098
1034
  */
1099
1035
  class ButtonModule {
1100
1036
  }
1101
- ButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1102
- ButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonModule, declarations: [ButtonDirective], exports: [ButtonDirective] });
1103
- ButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonModule });
1104
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonModule, decorators: [{
1037
+ ButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1038
+ ButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonModule, declarations: [ButtonComponent], imports: [IconsModule], exports: [ButtonComponent] });
1039
+ ButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonModule, imports: [[IconsModule]] });
1040
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonModule, decorators: [{
1105
1041
  type: NgModule,
1106
1042
  args: [{
1107
- declarations: [ButtonDirective],
1108
- exports: [ButtonDirective]
1043
+ declarations: [ButtonComponent],
1044
+ imports: [IconsModule],
1045
+ exports: [ButtonComponent]
1109
1046
  }]
1110
1047
  }] });
1111
1048
 
@@ -1119,10 +1056,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
1119
1056
  */
1120
1057
  class ButtonGroupModule {
1121
1058
  }
1122
- ButtonGroupModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1123
- ButtonGroupModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonGroupModule, declarations: [ButtonGroupComponent], imports: [CommonModule, ButtonModule], exports: [ButtonGroupComponent] });
1124
- ButtonGroupModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonGroupModule, imports: [[CommonModule, ButtonModule]] });
1125
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonGroupModule, decorators: [{
1059
+ ButtonGroupModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1060
+ ButtonGroupModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonGroupModule, declarations: [ButtonGroupComponent], imports: [CommonModule, ButtonModule], exports: [ButtonGroupComponent] });
1061
+ ButtonGroupModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonGroupModule, imports: [[CommonModule, ButtonModule]] });
1062
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonGroupModule, decorators: [{
1126
1063
  type: NgModule,
1127
1064
  args: [{
1128
1065
  declarations: [ButtonGroupComponent],
@@ -1131,6 +1068,68 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
1131
1068
  }]
1132
1069
  }] });
1133
1070
 
1071
+ /**
1072
+ * Used for rendering the list item content.
1073
+ *
1074
+ * To define the item template, nest a `<ng-template>` tag with the `kendo<ComponentName>ItemTemplate` directive inside the component tag.
1075
+ *
1076
+ * For the DropDownButton, use the `kendoDropDownButtonItemTemplate` directive.
1077
+ * For the SplitButton, use the `kendoSplitButtonItemTemplate` directive.
1078
+ *
1079
+ * The template context is set to the current component. To get a reference to the current data item, use the `let-dataItem` directive.
1080
+ *
1081
+ * @example
1082
+ * ```ts
1083
+ * _@Component({
1084
+ * selector: 'my-app',
1085
+ * template: `
1086
+ * <kendo-splitbutton [data]="listItems">
1087
+ * <ng-template kendoSplitButtonItemTemplate let-dataItem>
1088
+ * <span>{{dataItem}} option</span>
1089
+ * </ng-template>
1090
+ * </kendo-splitbutton>
1091
+ * <kendo-dropdownbutton [data]="listItems">
1092
+ * <ng-template kendoDropDownButtonItemTemplate let-dataItem>
1093
+ * <span>{{dataItem}} option</span>
1094
+ * </ng-template>
1095
+ * </kendo-dropdownbutton>
1096
+ * `
1097
+ * })
1098
+ * class AppComponent {
1099
+ * public listItems: Array<any> = [{
1100
+ * text: 'item1',
1101
+ * icon: 'arrow-rotate-cw',
1102
+ * disabled: false,
1103
+ * click: (dataItem: any) => {
1104
+ * //action
1105
+ * }
1106
+ * }, {
1107
+ * text: 'item2',
1108
+ * icon: 'arrow-rotate-cw',
1109
+ * disabled: false,
1110
+ * click: (dataItem: any) => {
1111
+ * //action
1112
+ * }
1113
+ * }]
1114
+ * }
1115
+ * ```
1116
+ *
1117
+ * For more examples, refer to the article on the [DropDownList templates]({% slug overview_ddl %}#templates).
1118
+ */
1119
+ class ButtonItemTemplateDirective {
1120
+ constructor(templateRef) {
1121
+ this.templateRef = templateRef;
1122
+ }
1123
+ }
1124
+ ButtonItemTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonItemTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
1125
+ ButtonItemTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: ButtonItemTemplateDirective, selector: "[kendoDropDownButtonItemTemplate],[kendoSplitButtonItemTemplate]", ngImport: i0 });
1126
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonItemTemplateDirective, decorators: [{
1127
+ type: Directive,
1128
+ args: [{
1129
+ selector: '[kendoDropDownButtonItemTemplate],[kendoSplitButtonItemTemplate]'
1130
+ }]
1131
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
1132
+
1134
1133
  /**
1135
1134
  * @hidden
1136
1135
  */
@@ -1159,9 +1158,9 @@ class FocusService {
1159
1158
  this.onFocus.emit(index);
1160
1159
  }
1161
1160
  }
1162
- FocusService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FocusService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1163
- FocusService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FocusService });
1164
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FocusService, decorators: [{
1161
+ FocusService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FocusService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1162
+ FocusService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FocusService });
1163
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FocusService, decorators: [{
1165
1164
  type: Injectable
1166
1165
  }] });
1167
1166
 
@@ -1205,9 +1204,9 @@ class FocusableDirective {
1205
1204
  }));
1206
1205
  }
1207
1206
  }
1208
- FocusableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FocusableDirective, deps: [{ token: FocusService }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
1209
- FocusableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: FocusableDirective, selector: "[kendoButtonFocusable]", inputs: { index: "index" }, ngImport: i0 });
1210
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FocusableDirective, decorators: [{
1207
+ FocusableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FocusableDirective, deps: [{ token: FocusService }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
1208
+ FocusableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: FocusableDirective, selector: "[kendoButtonFocusable]", inputs: { index: "index" }, ngImport: i0 });
1209
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FocusableDirective, decorators: [{
1211
1210
  type: Directive,
1212
1211
  args: [{
1213
1212
  selector: '[kendoButtonFocusable]'
@@ -1233,9 +1232,9 @@ class TemplateContextDirective {
1233
1232
  }
1234
1233
  }
1235
1234
  }
1236
- TemplateContextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TemplateContextDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
1237
- TemplateContextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TemplateContextDirective, selector: "[templateContext]", inputs: { templateContext: "templateContext" }, ngImport: i0 });
1238
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TemplateContextDirective, decorators: [{
1235
+ TemplateContextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: TemplateContextDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
1236
+ TemplateContextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: TemplateContextDirective, selector: "[templateContext]", inputs: { templateContext: "templateContext" }, ngImport: i0 });
1237
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: TemplateContextDirective, decorators: [{
1239
1238
  type: Directive,
1240
1239
  args: [{
1241
1240
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -1282,8 +1281,8 @@ class ListComponent {
1282
1281
  this.onItemBlur.emit();
1283
1282
  }
1284
1283
  }
1285
- ListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1286
- ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ListComponent, selector: "kendo-button-list", inputs: { data: "data", textField: "textField", itemTemplate: "itemTemplate", size: "size" }, outputs: { onItemClick: "onItemClick", onItemBlur: "onItemBlur" }, ngImport: i0, template: `
1284
+ ListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1285
+ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ListComponent, selector: "kendo-button-list", inputs: { data: "data", textField: "textField", itemTemplate: "itemTemplate", size: "size" }, outputs: { onItemClick: "onItemClick", onItemBlur: "onItemBlur" }, ngImport: i0, template: `
1287
1286
  <ul class="k-group k-menu-group k-reset" [ngClass]="sizeClass" unselectable="on" role="menu">
1288
1287
  <li role="menuitem"
1289
1288
  unselectable="on"
@@ -1319,8 +1318,8 @@ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
1319
1318
  </ng-template>
1320
1319
  </li>
1321
1320
  </ul>
1322
- `, isInline: true, directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: FocusableDirective, selector: "[kendoButtonFocusable]", inputs: ["index"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }] });
1323
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListComponent, decorators: [{
1321
+ `, isInline: true, directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: FocusableDirective, selector: "[kendoButtonFocusable]", inputs: ["index"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }] });
1322
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ListComponent, decorators: [{
1324
1323
  type: Component,
1325
1324
  args: [{
1326
1325
  selector: 'kendo-button-list',
@@ -1376,68 +1375,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
1376
1375
  type: Input
1377
1376
  }] } });
1378
1377
 
1379
- /**
1380
- * Used for rendering the list item content.
1381
- *
1382
- * To define the item template, nest a `<ng-template>` tag with the `kendo<ComponentName>ItemTemplate` directive inside the component tag.
1383
- *
1384
- * For the DropDownButton, use the `kendoDropDownButtonItemTemplate` directive.
1385
- * For the SplitButton, use the `kendoSplitButtonItemTemplate` directive.
1386
- *
1387
- * The template context is set to the current component. To get a reference to the current data item, use the `let-dataItem` directive.
1388
- *
1389
- * @example
1390
- * ```ts
1391
- * _@Component({
1392
- * selector: 'my-app',
1393
- * template: `
1394
- * <kendo-splitbutton [data]="listItems">
1395
- * <ng-template kendoSplitButtonItemTemplate let-dataItem>
1396
- * <span>{{dataItem}} option</span>
1397
- * </ng-template>
1398
- * </kendo-splitbutton>
1399
- * <kendo-dropdownbutton [data]="listItems">
1400
- * <ng-template kendoDropDownButtonItemTemplate let-dataItem>
1401
- * <span>{{dataItem}} option</span>
1402
- * </ng-template>
1403
- * </kendo-dropdownbutton>
1404
- * `
1405
- * })
1406
- * class AppComponent {
1407
- * public listItems: Array<any> = [{
1408
- * text: 'item1',
1409
- * icon: 'arrow-rotate-cw',
1410
- * disabled: false,
1411
- * click: (dataItem: any) => {
1412
- * //action
1413
- * }
1414
- * }, {
1415
- * text: 'item2',
1416
- * icon: 'arrow-rotate-cw',
1417
- * disabled: false,
1418
- * click: (dataItem: any) => {
1419
- * //action
1420
- * }
1421
- * }]
1422
- * }
1423
- * ```
1424
- *
1425
- * For more examples, refer to the article on the [DropDownList templates]({% slug overview_ddl %}#templates).
1426
- */
1427
- class ButtonItemTemplateDirective {
1428
- constructor(templateRef) {
1429
- this.templateRef = templateRef;
1430
- }
1431
- }
1432
- ButtonItemTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonItemTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
1433
- ButtonItemTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: ButtonItemTemplateDirective, selector: "[kendoDropDownButtonItemTemplate],[kendoSplitButtonItemTemplate]", ngImport: i0 });
1434
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonItemTemplateDirective, decorators: [{
1435
- type: Directive,
1436
- args: [{
1437
- selector: '[kendoDropDownButtonItemTemplate],[kendoSplitButtonItemTemplate]'
1438
- }]
1439
- }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
1440
-
1441
1378
  const EXPORTED_DIRECTIVES = [
1442
1379
  ListComponent,
1443
1380
  FocusableDirective,
@@ -1449,16 +1386,16 @@ const EXPORTED_DIRECTIVES = [
1449
1386
  */
1450
1387
  class ListModule {
1451
1388
  }
1452
- ListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1453
- ListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListModule, declarations: [ListComponent,
1389
+ ListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1390
+ ListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ListModule, declarations: [ListComponent,
1454
1391
  FocusableDirective,
1455
1392
  ButtonItemTemplateDirective,
1456
1393
  TemplateContextDirective], imports: [CommonModule], exports: [ListComponent,
1457
1394
  FocusableDirective,
1458
1395
  ButtonItemTemplateDirective,
1459
1396
  TemplateContextDirective] });
1460
- ListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListModule, imports: [[CommonModule]] });
1461
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListModule, decorators: [{
1397
+ ListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ListModule, imports: [[CommonModule]] });
1398
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ListModule, decorators: [{
1462
1399
  type: NgModule,
1463
1400
  args: [{
1464
1401
  declarations: [EXPORTED_DIRECTIVES],
@@ -1590,9 +1527,9 @@ class NavigationService {
1590
1527
  }
1591
1528
  }
1592
1529
  }
1593
- NavigationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: NavigationService, deps: [{ token: NAVIGATION_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable });
1594
- NavigationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: NavigationService });
1595
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: NavigationService, decorators: [{
1530
+ NavigationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NavigationService, deps: [{ token: NAVIGATION_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable });
1531
+ NavigationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NavigationService });
1532
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NavigationService, decorators: [{
1596
1533
  type: Injectable
1597
1534
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
1598
1535
  type: Inject,
@@ -1604,9 +1541,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
1604
1541
  */
1605
1542
  class PopupContainerService {
1606
1543
  }
1607
- PopupContainerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PopupContainerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1608
- PopupContainerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PopupContainerService });
1609
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: PopupContainerService, decorators: [{
1544
+ PopupContainerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PopupContainerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1545
+ PopupContainerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PopupContainerService });
1546
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PopupContainerService, decorators: [{
1610
1547
  type: Injectable
1611
1548
  }] });
1612
1549
 
@@ -1697,7 +1634,7 @@ class ListButton {
1697
1634
  * @hidden
1698
1635
  */
1699
1636
  get anchorAlign() {
1700
- let align = { horizontal: this.popupSettings.align || 'left', vertical: 'bottom' };
1637
+ const align = { horizontal: this.popupSettings.align || 'left', vertical: 'bottom' };
1701
1638
  if (this.direction === 'rtl' && !isPresent(this.popupSettings.align)) {
1702
1639
  align.horizontal = 'right';
1703
1640
  }
@@ -1707,7 +1644,7 @@ class ListButton {
1707
1644
  * @hidden
1708
1645
  */
1709
1646
  get popupAlign() {
1710
- let align = { horizontal: this.popupSettings.align || 'left', vertical: 'top' };
1647
+ const align = { horizontal: this.popupSettings.align || 'left', vertical: 'top' };
1711
1648
  if (this.direction === 'rtl' && !isPresent(this.popupSettings.align)) {
1712
1649
  align.horizontal = 'right';
1713
1650
  }
@@ -1716,7 +1653,7 @@ class ListButton {
1716
1653
  ngOnChanges(changes) {
1717
1654
  if (isChanged("popupSettings", changes) && isPresent(this.popupRef)) {
1718
1655
  const popup = this.popupRef.popup.instance;
1719
- const newSettings = changes.popupSettings.currentValue;
1656
+ const newSettings = changes['popupSettings'].currentValue;
1720
1657
  popup.popupClass = newSettings.popupClass;
1721
1658
  popup.animate = newSettings.animate;
1722
1659
  popup.popupAlign = this.popupAlign;
@@ -1841,7 +1778,7 @@ class ListButton {
1841
1778
  if (!isHost) {
1842
1779
  eventData.stopImmediatePropagation();
1843
1780
  }
1844
- let focused = this.focusService.focused || 0;
1781
+ const focused = this.focusService.focused || 0;
1845
1782
  const action = this.navigationService.process({
1846
1783
  altKey: eventData.altKey,
1847
1784
  current: focused,
@@ -1904,7 +1841,7 @@ class ListButton {
1904
1841
  this._active = false;
1905
1842
  }
1906
1843
  if (this.openState) {
1907
- let focused = this.focusService.focused;
1844
+ const focused = this.focusService.focused;
1908
1845
  if (isPresent(focused) && focused !== -1) {
1909
1846
  this.emitItemClickHandler(focused);
1910
1847
  }
@@ -1972,14 +1909,14 @@ class ListButton {
1972
1909
  }
1973
1910
  }
1974
1911
  }
1975
- ListButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListButton, deps: [{ token: FocusService }, { token: NavigationService }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i3.PopupService }, { token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: PopupContainerService }], target: i0.ɵɵFactoryTarget.Component });
1976
- ListButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ListButton, selector: "ng-component", inputs: { disabled: "disabled", tabIndex: "tabIndex", buttonClass: "buttonClass", popupSettings: "popupSettings" }, outputs: { open: "open", close: "close" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true });
1977
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListButton, decorators: [{
1912
+ ListButton.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ListButton, deps: [{ token: FocusService }, { token: NavigationService }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i3$1.PopupService }, { token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: PopupContainerService }], target: i0.ɵɵFactoryTarget.Component });
1913
+ ListButton.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ListButton, selector: "ng-component", inputs: { disabled: "disabled", tabIndex: "tabIndex", buttonClass: "buttonClass", popupSettings: "popupSettings" }, outputs: { open: "open", close: "close" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true });
1914
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ListButton, decorators: [{
1978
1915
  type: Component,
1979
1916
  args: [{
1980
1917
  template: ''
1981
1918
  }]
1982
- }], ctorParameters: function () { return [{ type: FocusService }, { type: NavigationService }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i3.PopupService }, { type: i0.ElementRef }, { type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: PopupContainerService }]; }, propDecorators: { disabled: [{
1919
+ }], ctorParameters: function () { return [{ type: FocusService }, { type: NavigationService }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i3$1.PopupService }, { type: i0.ElementRef }, { type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: PopupContainerService }]; }, propDecorators: { disabled: [{
1983
1920
  type: Input
1984
1921
  }], tabIndex: [{
1985
1922
  type: Input
@@ -1998,9 +1935,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
1998
1935
  */
1999
1936
  class Messages extends ComponentMessages {
2000
1937
  }
2001
- Messages.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: Messages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
2002
- Messages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: Messages, selector: "kendo-splitbutton-messages-base", inputs: { splitButtonLabel: "splitButtonLabel" }, usesInheritance: true, ngImport: i0 });
2003
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: Messages, decorators: [{
1938
+ Messages.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: Messages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
1939
+ Messages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: Messages, selector: "kendo-splitbutton-messages-base", inputs: { splitButtonLabel: "splitButtonLabel" }, usesInheritance: true, ngImport: i0 });
1940
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: Messages, decorators: [{
2004
1941
  type: Directive,
2005
1942
  args: [{
2006
1943
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -2019,14 +1956,14 @@ class LocalizedSplitButtonMessagesDirective extends Messages {
2019
1956
  this.service = service;
2020
1957
  }
2021
1958
  }
2022
- LocalizedSplitButtonMessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LocalizedSplitButtonMessagesDirective, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
2023
- LocalizedSplitButtonMessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: LocalizedSplitButtonMessagesDirective, selector: "[kendoSplitButtonLocalizedMessages]", providers: [
1959
+ LocalizedSplitButtonMessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LocalizedSplitButtonMessagesDirective, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
1960
+ LocalizedSplitButtonMessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: LocalizedSplitButtonMessagesDirective, selector: "[kendoSplitButtonLocalizedMessages]", providers: [
2024
1961
  {
2025
1962
  provide: Messages,
2026
1963
  useExisting: forwardRef(() => LocalizedSplitButtonMessagesDirective)
2027
1964
  }
2028
1965
  ], usesInheritance: true, ngImport: i0 });
2029
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LocalizedSplitButtonMessagesDirective, decorators: [{
1966
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LocalizedSplitButtonMessagesDirective, decorators: [{
2030
1967
  type: Directive,
2031
1968
  args: [{
2032
1969
  providers: [
@@ -2046,8 +1983,8 @@ const NAVIGATION_SETTINGS_PROVIDER$2 = {
2046
1983
  provide: NAVIGATION_CONFIG,
2047
1984
  useValue: NAVIGATION_SETTINGS$2
2048
1985
  };
2049
- const DEFAULT_ROUNDED$1 = 'medium';
2050
- const DEFAULT_FILL_MODE$1 = 'solid';
1986
+ const DEFAULT_ROUNDED$2 = 'medium';
1987
+ const DEFAULT_FILL_MODE$2 = 'solid';
2051
1988
  /**
2052
1989
  * Represents the Kendo UI SplitButton component for Angular.
2053
1990
  *
@@ -2099,15 +2036,10 @@ class SplitButtonComponent extends ListButton {
2099
2036
  */
2100
2037
  this.text = '';
2101
2038
  /**
2102
- * Defines an icon to be rendered next to the button text
2039
+ * Defines an icon to be rendered next to the button text.
2103
2040
  * ([see example]({% slug databinding_splitbutton %}#toc-arrays-of-complex-data)).
2104
2041
  */
2105
2042
  this.icon = '';
2106
- /**
2107
- * Defines an icon with a custom CSS class to be rendered next to the button text
2108
- * ([see example]({% slug databinding_splitbutton %}#toc-arrays-of-complex-data)).
2109
- */
2110
- this.iconClass = '';
2111
2043
  /**
2112
2044
  * Defines the type attribute of the main button
2113
2045
  */
@@ -2157,6 +2089,11 @@ class SplitButtonComponent extends ListButton {
2157
2089
  * be rendered for the button which opens the popup.
2158
2090
  */
2159
2091
  this.arrowButtonIcon = 'caret-alt-down';
2092
+ /**
2093
+ * Specifies the [`SVGIcon`](slug:api_icons_svgicon) that will
2094
+ * be rendered for the button which opens the popup.
2095
+ */
2096
+ this.arrowButtonSvgIcon = arrowDownIcon;
2160
2097
  /**
2161
2098
  * Fires each time the user clicks the main button.
2162
2099
  *
@@ -2232,8 +2169,8 @@ class SplitButtonComponent extends ListButton {
2232
2169
  this.listId = guid();
2233
2170
  this.buttonText = '';
2234
2171
  this.arrowButtonClicked = false;
2235
- this._rounded = DEFAULT_ROUNDED$1;
2236
- this._fillMode = DEFAULT_FILL_MODE$1;
2172
+ this._rounded = DEFAULT_ROUNDED$2;
2173
+ this._fillMode = DEFAULT_FILL_MODE$2;
2237
2174
  this._itemClick = this.itemClick;
2238
2175
  this._blur = this.onBlur;
2239
2176
  }
@@ -2249,7 +2186,7 @@ class SplitButtonComponent extends ListButton {
2249
2186
  * * `none`
2250
2187
  */
2251
2188
  set rounded(rounded) {
2252
- const newRounded = rounded ? rounded : DEFAULT_ROUNDED$1;
2189
+ const newRounded = rounded ? rounded : DEFAULT_ROUNDED$2;
2253
2190
  this.handleClasses(newRounded, 'rounded');
2254
2191
  this._rounded = newRounded;
2255
2192
  }
@@ -2267,7 +2204,7 @@ class SplitButtonComponent extends ListButton {
2267
2204
  * * `link`
2268
2205
  */
2269
2206
  set fillMode(fillMode) {
2270
- const newFillMode = fillMode ? fillMode : DEFAULT_FILL_MODE$1;
2207
+ const newFillMode = fillMode ? fillMode : DEFAULT_FILL_MODE$2;
2271
2208
  this._fillMode = fillMode === 'clear' ? 'flat' : newFillMode;
2272
2209
  }
2273
2210
  get fillMode() {
@@ -2315,6 +2252,12 @@ class SplitButtonComponent extends ListButton {
2315
2252
  }
2316
2253
  return this._data;
2317
2254
  }
2255
+ /**
2256
+ * @hidden
2257
+ */
2258
+ get hasContent() {
2259
+ return this.button?.nativeElement.childElementCount > 0;
2260
+ }
2318
2261
  /**
2319
2262
  * @hidden
2320
2263
  */
@@ -2429,9 +2372,12 @@ class SplitButtonComponent extends ListButton {
2429
2372
  if (changes.hasOwnProperty('text')) {
2430
2373
  this.updateButtonText();
2431
2374
  }
2432
- if (isChanged("popupSettings", changes) && isPresent(this.popupRef)) {
2375
+ if (anyChanged(['text', 'icon', 'svgIcon', 'iconClass', 'imageUrl'], changes)) {
2376
+ this.toggleButtonIconClass();
2377
+ }
2378
+ if (isChanged('popupSettings', changes) && isPresent(this.popupRef)) {
2433
2379
  const popup = this.popupRef.popup.instance;
2434
- const newSettings = changes.popupSettings.currentValue;
2380
+ const newSettings = changes['popupSettings'].currentValue;
2435
2381
  popup.popupClass = newSettings.popupClass;
2436
2382
  popup.animate = newSettings.animate;
2437
2383
  popup.popupAlign = this.popupAlign;
@@ -2464,7 +2410,7 @@ class SplitButtonComponent extends ListButton {
2464
2410
  * @hidden
2465
2411
  */
2466
2412
  get anchorAlign() {
2467
- let align = { horizontal: this.popupSettings.align || 'left', vertical: 'bottom' };
2413
+ const align = { horizontal: this.popupSettings.align || 'left', vertical: 'bottom' };
2468
2414
  if (this.direction === 'rtl' && !isPresent(this.popupSettings.align)) {
2469
2415
  align.horizontal = 'right';
2470
2416
  }
@@ -2474,12 +2420,20 @@ class SplitButtonComponent extends ListButton {
2474
2420
  * @hidden
2475
2421
  */
2476
2422
  get popupAlign() {
2477
- let align = { horizontal: this.popupSettings.align || 'left', vertical: 'top' };
2423
+ const align = { horizontal: this.popupSettings.align || 'left', vertical: 'top' };
2478
2424
  if (this.direction === 'rtl' && !isPresent(this.popupSettings.align)) {
2479
2425
  align.horizontal = 'right';
2480
2426
  }
2481
2427
  return align;
2482
2428
  }
2429
+ /**
2430
+ * @hidden
2431
+ */
2432
+ get isIconButton() {
2433
+ const hasIcon = this.icon || this.svgIcon || this.iconClass || this.imageUrl;
2434
+ const hasTextContent = isDocumentAvailable() && this.button?.nativeElement.textContent.trim().length > 0;
2435
+ return hasIcon && !hasTextContent;
2436
+ }
2483
2437
  /**
2484
2438
  * Focuses the SplitButton component.
2485
2439
  */
@@ -2505,7 +2459,7 @@ class SplitButtonComponent extends ListButton {
2505
2459
  }
2506
2460
  updateButtonText() {
2507
2461
  if (isDocumentAvailable()) {
2508
- let innerText = this.wrapper.innerText
2462
+ const innerText = this.wrapper.innerText
2509
2463
  .split('\n')
2510
2464
  .join('')
2511
2465
  .trim();
@@ -2523,9 +2477,12 @@ class SplitButtonComponent extends ListButton {
2523
2477
  this.renderer.addClass(elem, classes.toAdd);
2524
2478
  }
2525
2479
  }
2480
+ toggleButtonIconClass() {
2481
+ this.button.nativeElement.classList[this.isIconButton ? 'add' : 'remove']('k-button-icon');
2482
+ }
2526
2483
  }
2527
- SplitButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SplitButtonComponent, deps: [{ token: FocusService }, { token: NavigationService }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i3.PopupService }, { token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: PopupContainerService }], target: i0.ɵɵFactoryTarget.Component });
2528
- SplitButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SplitButtonComponent, selector: "kendo-splitbutton", inputs: { text: "text", icon: "icon", iconClass: "iconClass", type: "type", imageUrl: "imageUrl", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor", disabled: "disabled", popupSettings: "popupSettings", tabIndex: "tabIndex", textField: "textField", data: "data", buttonClass: "buttonClass", arrowButtonClass: "arrowButtonClass", arrowButtonIcon: "arrowButtonIcon" }, outputs: { buttonClick: "buttonClick", itemClick: "itemClick", onFocus: "focus", onBlur: "blur", open: "open", close: "close" }, host: { listeners: { "keydown": "keydown($event)", "keyup": "keyup($event)" }, properties: { "class.k-focus": "this.isFocused", "class.k-split-button": "this.widgetClasses", "class.k-button-group": "this.widgetClasses", "attr.dir": "this.dir" } }, providers: [
2484
+ SplitButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SplitButtonComponent, deps: [{ token: FocusService }, { token: NavigationService }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i3$1.PopupService }, { token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: PopupContainerService }], target: i0.ɵɵFactoryTarget.Component });
2485
+ SplitButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: SplitButtonComponent, selector: "kendo-splitbutton", inputs: { text: "text", icon: "icon", svgIcon: "svgIcon", iconClass: "iconClass", type: "type", imageUrl: "imageUrl", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor", disabled: "disabled", popupSettings: "popupSettings", tabIndex: "tabIndex", textField: "textField", data: "data", buttonClass: "buttonClass", arrowButtonClass: "arrowButtonClass", arrowButtonIcon: "arrowButtonIcon", arrowButtonSvgIcon: "arrowButtonSvgIcon" }, outputs: { buttonClick: "buttonClick", itemClick: "itemClick", onFocus: "focus", onBlur: "blur", open: "open", close: "close" }, host: { listeners: { "keydown": "keydown($event)", "keyup": "keyup($event)" }, properties: { "class.k-focus": "this.isFocused", "class.k-split-button": "this.widgetClasses", "class.k-button-group": "this.widgetClasses", "attr.dir": "this.dir" } }, providers: [
2529
2486
  FocusService,
2530
2487
  NavigationService,
2531
2488
  NAVIGATION_SETTINGS_PROVIDER$2,
@@ -2535,7 +2492,7 @@ SplitButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
2535
2492
  useValue: 'kendo.splitbutton'
2536
2493
  },
2537
2494
  PopupContainerService
2538
- ], queries: [{ propertyName: "itemTemplate", first: true, predicate: ButtonItemTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "button", first: true, predicate: ["button"], descendants: true }, { propertyName: "arrowButton", first: true, predicate: ["arrowButton"], descendants: true, read: ElementRef }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true }, { propertyName: "containerRef", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef }], exportAs: ["kendoSplitButton"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: `
2495
+ ], queries: [{ propertyName: "itemTemplate", first: true, predicate: ButtonItemTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "button", first: true, predicate: ["button"], descendants: true, read: ElementRef }, { propertyName: "arrowButton", first: true, predicate: ["arrowButton"], descendants: true, read: ElementRef }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true }, { propertyName: "containerRef", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef }], exportAs: ["kendoSplitButton"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: `
2539
2496
  <ng-container kendoSplitButtonLocalizedMessages
2540
2497
  i18n-splitButtonLabel="kendo.splitbutton.splitButtonLabel|The text for the SplitButton aria-label"
2541
2498
  splitButtonLabel="{{ '{buttonText} splitbutton' }}">
@@ -2551,8 +2508,8 @@ SplitButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
2551
2508
  [fillMode]="fillMode"
2552
2509
  [themeColor]="themeColor"
2553
2510
  [icon]="icon"
2511
+ [svgIcon]="svgIcon"
2554
2512
  [class.k-active]="active"
2555
- [class.k-icon-button]="!text && icon"
2556
2513
  [iconClass]="iconClass"
2557
2514
  [imageUrl]="imageUrl"
2558
2515
  [ngClass]="buttonClass"
@@ -2577,11 +2534,13 @@ SplitButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
2577
2534
  [ngClass]="arrowButtonClass"
2578
2535
  [disabled]="disabled"
2579
2536
  [icon]="arrowButtonIcon"
2537
+ [svgIcon]="arrowButtonSvgIcon"
2580
2538
  [size]="size"
2581
2539
  [rounded]="rounded"
2582
2540
  [fillMode]="fillMode"
2583
2541
  [themeColor]="themeColor"
2584
2542
  [tabindex]="-1"
2543
+ aria-hidden="true"
2585
2544
  (click)="onArrowButtonClick()"
2586
2545
  (mousedown)="toggleArrowButtonActiveState(true)"
2587
2546
  (mouseup)="toggleArrowButtonActiveState(false)"
@@ -2601,8 +2560,8 @@ SplitButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
2601
2560
  </kendo-button-list>
2602
2561
  </ng-template>
2603
2562
  <ng-container #container></ng-container>
2604
- `, isInline: true, components: [{ type: ListComponent, selector: "kendo-button-list", inputs: ["data", "textField", "itemTemplate", "size"], outputs: ["onItemClick", "onItemBlur"] }], directives: [{ type: LocalizedSplitButtonMessagesDirective, selector: "[kendoSplitButtonLocalizedMessages]" }, { type: ButtonDirective, selector: "button[kendoButton], span[kendoButton]", inputs: ["toggleable", "togglable", "selected", "tabIndex", "icon", "iconClass", "imageUrl", "disabled", "size", "rounded", "fillMode", "themeColor", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2605
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SplitButtonComponent, decorators: [{
2563
+ `, isInline: true, components: [{ type: ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { type: ListComponent, selector: "kendo-button-list", inputs: ["data", "textField", "itemTemplate", "size"], outputs: ["onItemClick", "onItemBlur"] }], directives: [{ type: LocalizedSplitButtonMessagesDirective, selector: "[kendoSplitButtonLocalizedMessages]" }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
2564
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SplitButtonComponent, decorators: [{
2606
2565
  type: Component,
2607
2566
  args: [{
2608
2567
  exportAs: 'kendoSplitButton',
@@ -2634,8 +2593,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
2634
2593
  [fillMode]="fillMode"
2635
2594
  [themeColor]="themeColor"
2636
2595
  [icon]="icon"
2596
+ [svgIcon]="svgIcon"
2637
2597
  [class.k-active]="active"
2638
- [class.k-icon-button]="!text && icon"
2639
2598
  [iconClass]="iconClass"
2640
2599
  [imageUrl]="imageUrl"
2641
2600
  [ngClass]="buttonClass"
@@ -2660,11 +2619,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
2660
2619
  [ngClass]="arrowButtonClass"
2661
2620
  [disabled]="disabled"
2662
2621
  [icon]="arrowButtonIcon"
2622
+ [svgIcon]="arrowButtonSvgIcon"
2663
2623
  [size]="size"
2664
2624
  [rounded]="rounded"
2665
2625
  [fillMode]="fillMode"
2666
2626
  [themeColor]="themeColor"
2667
2627
  [tabindex]="-1"
2628
+ aria-hidden="true"
2668
2629
  (click)="onArrowButtonClick()"
2669
2630
  (mousedown)="toggleArrowButtonActiveState(true)"
2670
2631
  (mouseup)="toggleArrowButtonActiveState(false)"
@@ -2686,10 +2647,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
2686
2647
  <ng-container #container></ng-container>
2687
2648
  `
2688
2649
  }]
2689
- }], ctorParameters: function () { return [{ type: FocusService }, { type: NavigationService }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i3.PopupService }, { type: i0.ElementRef }, { type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: PopupContainerService }]; }, propDecorators: { text: [{
2650
+ }], ctorParameters: function () { return [{ type: FocusService }, { type: NavigationService }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i3$1.PopupService }, { type: i0.ElementRef }, { type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: PopupContainerService }]; }, propDecorators: { text: [{
2690
2651
  type: Input
2691
2652
  }], icon: [{
2692
2653
  type: Input
2654
+ }], svgIcon: [{
2655
+ type: Input
2693
2656
  }], iconClass: [{
2694
2657
  type: Input
2695
2658
  }], type: [{
@@ -2720,6 +2683,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
2720
2683
  type: Input
2721
2684
  }], arrowButtonIcon: [{
2722
2685
  type: Input
2686
+ }], arrowButtonSvgIcon: [{
2687
+ type: Input
2723
2688
  }], buttonClick: [{
2724
2689
  type: Output
2725
2690
  }], itemClick: [{
@@ -2739,7 +2704,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
2739
2704
  args: [ButtonItemTemplateDirective]
2740
2705
  }], button: [{
2741
2706
  type: ViewChild,
2742
- args: ['button']
2707
+ args: ['button', { read: ElementRef }]
2743
2708
  }], arrowButton: [{
2744
2709
  type: ViewChild,
2745
2710
  args: ['arrowButton', { read: ElementRef }]
@@ -2782,12 +2747,12 @@ class SplitButtonCustomMessagesComponent extends Messages {
2782
2747
  return true;
2783
2748
  }
2784
2749
  }
2785
- SplitButtonCustomMessagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SplitButtonCustomMessagesComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
2786
- SplitButtonCustomMessagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SplitButtonCustomMessagesComponent, selector: "kendo-splitbutton-messages", providers: [{
2750
+ SplitButtonCustomMessagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SplitButtonCustomMessagesComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
2751
+ SplitButtonCustomMessagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: SplitButtonCustomMessagesComponent, selector: "kendo-splitbutton-messages", providers: [{
2787
2752
  provide: Messages,
2788
2753
  useExisting: forwardRef(() => SplitButtonCustomMessagesComponent)
2789
2754
  }], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
2790
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SplitButtonCustomMessagesComponent, decorators: [{
2755
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SplitButtonCustomMessagesComponent, decorators: [{
2791
2756
  type: Component,
2792
2757
  args: [{
2793
2758
  providers: [{
@@ -2809,10 +2774,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
2809
2774
  */
2810
2775
  class SplitButtonModule {
2811
2776
  }
2812
- SplitButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SplitButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2813
- SplitButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SplitButtonModule, declarations: [SplitButtonComponent, LocalizedSplitButtonMessagesDirective, SplitButtonCustomMessagesComponent], imports: [CommonModule, PopupModule, ButtonModule, ListModule], exports: [SplitButtonComponent, ListModule, LocalizedSplitButtonMessagesDirective, SplitButtonCustomMessagesComponent] });
2814
- SplitButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SplitButtonModule, imports: [[CommonModule, PopupModule, ButtonModule, ListModule], ListModule] });
2815
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SplitButtonModule, decorators: [{
2777
+ SplitButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SplitButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2778
+ SplitButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SplitButtonModule, declarations: [SplitButtonComponent, LocalizedSplitButtonMessagesDirective, SplitButtonCustomMessagesComponent], imports: [CommonModule, PopupModule, ButtonModule, ListModule], exports: [SplitButtonComponent, ListModule, LocalizedSplitButtonMessagesDirective, SplitButtonCustomMessagesComponent] });
2779
+ SplitButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SplitButtonModule, imports: [[CommonModule, PopupModule, ButtonModule, ListModule], ListModule] });
2780
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SplitButtonModule, decorators: [{
2816
2781
  type: NgModule,
2817
2782
  args: [{
2818
2783
  declarations: [SplitButtonComponent, LocalizedSplitButtonMessagesDirective, SplitButtonCustomMessagesComponent],
@@ -2828,7 +2793,7 @@ const NAVIGATION_SETTINGS_PROVIDER$1 = {
2828
2793
  provide: NAVIGATION_CONFIG,
2829
2794
  useValue: NAVIGATION_SETTINGS$1
2830
2795
  };
2831
- const DEFAULT_FILL_MODE = 'solid';
2796
+ const DEFAULT_FILL_MODE$1 = 'solid';
2832
2797
  /**
2833
2798
  * Represents the Kendo UI DropDownButton component for Angular.
2834
2799
  *
@@ -2862,7 +2827,7 @@ class DropDownButtonComponent extends ListButton {
2862
2827
  super(focusService, navigationService, wrapperRef, zone, popupService, elRef, localization, cdr, containerService);
2863
2828
  this.containerService = containerService;
2864
2829
  /**
2865
- * Defines the name of an existing icon in a Kendo UI theme.
2830
+ * Defines the name of an existing icon in the Kendo UI theme.
2866
2831
  */
2867
2832
  this.icon = '';
2868
2833
  /**
@@ -2930,7 +2895,7 @@ class DropDownButtonComponent extends ListButton {
2930
2895
  this.onBlur = new EventEmitter();
2931
2896
  this.listId = guid();
2932
2897
  this.buttonId = guid();
2933
- this._fillMode = DEFAULT_FILL_MODE;
2898
+ this._fillMode = DEFAULT_FILL_MODE$1;
2934
2899
  this._itemClick = this.itemClick;
2935
2900
  this._blur = this.onBlur;
2936
2901
  }
@@ -3074,8 +3039,8 @@ class DropDownButtonComponent extends ListButton {
3074
3039
  || (this.popupRef && this.popupRef.popupElement.contains(element));
3075
3040
  }
3076
3041
  }
3077
- DropDownButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DropDownButtonComponent, deps: [{ token: FocusService }, { token: NavigationService }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i3.PopupService }, { token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: PopupContainerService }], target: i0.ɵɵFactoryTarget.Component });
3078
- DropDownButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: DropDownButtonComponent, selector: "kendo-dropdownbutton", inputs: { icon: "icon", iconClass: "iconClass", imageUrl: "imageUrl", textField: "textField", data: "data", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor" }, outputs: { itemClick: "itemClick", onFocus: "focus", onBlur: "blur" }, host: { listeners: { "keydown": "keydown($event)", "keyup": "keyup($event)", "mousedown": "mousedown($event)", "mouseup": "mouseup($event)" }, properties: { "class.k-focus": "this.focused", "class.k-dropdown-button": "this.widgetClasses", "attr.dir": "this.dir" } }, providers: [
3042
+ DropDownButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropDownButtonComponent, deps: [{ token: FocusService }, { token: NavigationService }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i3$1.PopupService }, { token: i0.ElementRef }, { token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: PopupContainerService }], target: i0.ɵɵFactoryTarget.Component });
3043
+ DropDownButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DropDownButtonComponent, selector: "kendo-dropdownbutton", inputs: { icon: "icon", svgIcon: "svgIcon", iconClass: "iconClass", imageUrl: "imageUrl", textField: "textField", data: "data", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor" }, outputs: { itemClick: "itemClick", onFocus: "focus", onBlur: "blur" }, host: { listeners: { "keydown": "keydown($event)", "keyup": "keyup($event)", "mousedown": "mousedown($event)", "mouseup": "mouseup($event)" }, properties: { "class.k-focus": "this.focused", "class.k-dropdown-button": "this.widgetClasses", "attr.dir": "this.dir" } }, providers: [
3079
3044
  FocusService,
3080
3045
  NavigationService,
3081
3046
  NAVIGATION_SETTINGS_PROVIDER$1,
@@ -3085,7 +3050,7 @@ DropDownButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
3085
3050
  useValue: 'kendo.dropdownbutton'
3086
3051
  },
3087
3052
  PopupContainerService
3088
- ], queries: [{ propertyName: "itemTemplate", first: true, predicate: ButtonItemTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "button", first: true, predicate: ["button"], descendants: true }, { propertyName: "buttonList", first: true, predicate: ["buttonList"], descendants: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true }, { propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef }], exportAs: ["kendoDropDownButton"], usesInheritance: true, ngImport: i0, template: `
3053
+ ], queries: [{ propertyName: "itemTemplate", first: true, predicate: ButtonItemTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "button", first: true, predicate: ["button"], descendants: true, read: ElementRef }, { propertyName: "buttonList", first: true, predicate: ["buttonList"], descendants: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true }, { propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef }], exportAs: ["kendoDropDownButton"], usesInheritance: true, ngImport: i0, template: `
3089
3054
  <button kendoButton #button
3090
3055
  type="button"
3091
3056
  [id]="buttonId"
@@ -3093,6 +3058,7 @@ DropDownButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
3093
3058
  [class.k-active]="active"
3094
3059
  [disabled]="disabled"
3095
3060
  [icon]="icon"
3061
+ [svgIcon]="svgIcon"
3096
3062
  [iconClass]="iconClass"
3097
3063
  [imageUrl]="imageUrl"
3098
3064
  [ngClass]="buttonClass"
@@ -3127,8 +3093,8 @@ DropDownButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
3127
3093
  </kendo-button-list>
3128
3094
  </ng-template>
3129
3095
  <ng-container #container></ng-container>
3130
- `, isInline: true, components: [{ type: ListComponent, selector: "kendo-button-list", inputs: ["data", "textField", "itemTemplate", "size"], outputs: ["onItemClick", "onItemBlur"] }], directives: [{ type: ButtonDirective, selector: "button[kendoButton], span[kendoButton]", inputs: ["toggleable", "togglable", "selected", "tabIndex", "icon", "iconClass", "imageUrl", "disabled", "size", "rounded", "fillMode", "themeColor", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
3131
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DropDownButtonComponent, decorators: [{
3096
+ `, isInline: true, components: [{ type: ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { type: ListComponent, selector: "kendo-button-list", inputs: ["data", "textField", "itemTemplate", "size"], outputs: ["onItemClick", "onItemBlur"] }], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
3097
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropDownButtonComponent, decorators: [{
3132
3098
  type: Component,
3133
3099
  args: [{
3134
3100
  exportAs: 'kendoDropDownButton',
@@ -3152,6 +3118,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
3152
3118
  [class.k-active]="active"
3153
3119
  [disabled]="disabled"
3154
3120
  [icon]="icon"
3121
+ [svgIcon]="svgIcon"
3155
3122
  [iconClass]="iconClass"
3156
3123
  [imageUrl]="imageUrl"
3157
3124
  [ngClass]="buttonClass"
@@ -3188,7 +3155,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
3188
3155
  <ng-container #container></ng-container>
3189
3156
  `
3190
3157
  }]
3191
- }], ctorParameters: function () { return [{ type: FocusService }, { type: NavigationService }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i3.PopupService }, { type: i0.ElementRef }, { type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: PopupContainerService }]; }, propDecorators: { icon: [{
3158
+ }], ctorParameters: function () { return [{ type: FocusService }, { type: NavigationService }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i3$1.PopupService }, { type: i0.ElementRef }, { type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: PopupContainerService }]; }, propDecorators: { icon: [{
3159
+ type: Input
3160
+ }], svgIcon: [{
3192
3161
  type: Input
3193
3162
  }], iconClass: [{
3194
3163
  type: Input
@@ -3228,7 +3197,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
3228
3197
  args: [ButtonItemTemplateDirective]
3229
3198
  }], button: [{
3230
3199
  type: ViewChild,
3231
- args: ['button']
3200
+ args: ['button', { read: ElementRef }]
3232
3201
  }], buttonList: [{
3233
3202
  type: ViewChild,
3234
3203
  args: ['buttonList']
@@ -3262,10 +3231,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
3262
3231
  */
3263
3232
  class DropDownButtonModule {
3264
3233
  }
3265
- DropDownButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DropDownButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3266
- DropDownButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DropDownButtonModule, declarations: [DropDownButtonComponent], imports: [CommonModule, PopupModule, ListModule, ButtonModule], exports: [DropDownButtonComponent, ListModule] });
3267
- DropDownButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DropDownButtonModule, imports: [[CommonModule, PopupModule, ListModule, ButtonModule], ListModule] });
3268
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DropDownButtonModule, decorators: [{
3234
+ DropDownButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropDownButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3235
+ DropDownButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropDownButtonModule, declarations: [DropDownButtonComponent], imports: [CommonModule, PopupModule, ListModule, ButtonModule], exports: [DropDownButtonComponent, ListModule] });
3236
+ DropDownButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropDownButtonModule, imports: [[CommonModule, PopupModule, ListModule, ButtonModule], ListModule] });
3237
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DropDownButtonModule, decorators: [{
3269
3238
  type: NgModule,
3270
3239
  args: [{
3271
3240
  declarations: [DropDownButtonComponent],
@@ -3274,6 +3243,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
3274
3243
  }]
3275
3244
  }] });
3276
3245
 
3246
+ const DEFAULT_SIZE$1 = 'medium';
3247
+ const DEFAULT_ROUNDED$1 = 'medium';
3248
+ const DEFAULT_THEME_COLOR$1 = 'base';
3249
+ const DEFAULT_FILL_MODE = 'solid';
3277
3250
  /**
3278
3251
  * Displays a Chip that represents an input, attribute or an action.
3279
3252
  */
@@ -3309,6 +3282,10 @@ class ChipComponent {
3309
3282
  this.contentClick = new EventEmitter();
3310
3283
  this.tabIndex = 0;
3311
3284
  this.hostClass = true;
3285
+ /**
3286
+ * @hidden
3287
+ */
3288
+ this.defaultRemoveIcon = xCircleIcon;
3312
3289
  this._size = 'medium';
3313
3290
  this._rounded = 'medium';
3314
3291
  this._fillMode = 'solid';
@@ -3329,10 +3306,9 @@ class ChipComponent {
3329
3306
  * * `none`
3330
3307
  */
3331
3308
  set size(size) {
3332
- if (isPresent(size)) {
3333
- this._size = size;
3334
- }
3335
- this.handleClasses(this._size, 'size');
3309
+ const newSize = size ? size : DEFAULT_SIZE$1;
3310
+ this.handleClasses(newSize, 'size');
3311
+ this._size = newSize;
3336
3312
  }
3337
3313
  get size() {
3338
3314
  return this._size;
@@ -3349,10 +3325,9 @@ class ChipComponent {
3349
3325
  * * `none`
3350
3326
  */
3351
3327
  set rounded(rounded) {
3352
- if (isPresent(rounded)) {
3353
- this._rounded = rounded;
3354
- }
3355
- this.handleClasses(this._rounded, 'rounded');
3328
+ const newRounded = rounded ? rounded : DEFAULT_ROUNDED$1;
3329
+ this.handleClasses(newRounded, 'rounded');
3330
+ this._rounded = newRounded;
3356
3331
  }
3357
3332
  get rounded() {
3358
3333
  return this._rounded;
@@ -3367,10 +3342,9 @@ class ChipComponent {
3367
3342
  * * `none`
3368
3343
  */
3369
3344
  set fillMode(fillMode) {
3370
- if (isPresent(fillMode)) {
3371
- this._fillMode = fillMode;
3372
- }
3373
- this.handleClasses(this._fillMode, 'fillMode');
3345
+ const newFillMode = fillMode ? fillMode : DEFAULT_FILL_MODE;
3346
+ this.handleClasses(newFillMode, 'fillMode');
3347
+ this._fillMode = newFillMode;
3374
3348
  }
3375
3349
  get fillMode() {
3376
3350
  return this._fillMode;
@@ -3389,16 +3363,15 @@ class ChipComponent {
3389
3363
  * * `none`
3390
3364
  */
3391
3365
  set themeColor(themeColor) {
3392
- if (isPresent(themeColor)) {
3393
- this._themeColor = themeColor;
3394
- }
3395
- this.handleThemeColor(this._themeColor);
3366
+ const newThemeColor = themeColor ? themeColor : DEFAULT_THEME_COLOR$1;
3367
+ this.handleThemeColor(newThemeColor);
3368
+ this._themeColor = newThemeColor;
3396
3369
  }
3397
3370
  get themeColor() {
3398
3371
  return this._themeColor;
3399
3372
  }
3400
3373
  get hasIconClass() {
3401
- return this.icon || this.iconClass || this.avatarClass ? true : false;
3374
+ return Boolean(this.icon || this.iconClass || this.avatarClass);
3402
3375
  }
3403
3376
  get disabledClass() {
3404
3377
  return this.disabled;
@@ -3445,23 +3418,20 @@ class ChipComponent {
3445
3418
  */
3446
3419
  get customIconClass() {
3447
3420
  this.verifyIconSettings([this.icon, this.avatarClass]);
3448
- return `${this.iconClass}`;
3421
+ return this.iconClass;
3449
3422
  }
3450
3423
  /**
3451
3424
  * @hidden
3452
3425
  */
3453
3426
  get chipAvatarClass() {
3454
3427
  this.verifyIconSettings([this.icon, this.iconClass]);
3455
- return `${this.avatarClass}`;
3428
+ return this.avatarClass;
3456
3429
  }
3457
3430
  /**
3458
3431
  * @hidden
3459
3432
  */
3460
3433
  get removeIconClass() {
3461
- if (this.removeIcon) {
3462
- return `${this.removeIcon}`;
3463
- }
3464
- return `k-i-x-circle`;
3434
+ return this.removeIcon ? this.removeIcon : 'k-i-x-circle';
3465
3435
  }
3466
3436
  /**
3467
3437
  * Focuses the Chip component.
@@ -3560,32 +3530,28 @@ class ChipComponent {
3560
3530
  }
3561
3531
  }
3562
3532
  }
3563
- ChipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ChipComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
3564
- ChipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ChipComponent, selector: "kendo-chip", inputs: { label: "label", icon: "icon", iconClass: "iconClass", avatarClass: "avatarClass", selected: "selected", removable: "removable", removeIcon: "removeIcon", disabled: "disabled", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor" }, outputs: { remove: "remove", contentClick: "contentClick" }, host: { properties: { "attr.tabindex": "this.tabIndex", "class.k-chip": "this.hostClass", "class.k-chip-has-icon": "this.hasIconClass", "attr.aria-disabled": "this.disabledClass", "class.k-disabled": "this.disabledClass", "class.k-selected": "this.selectedClass", "class.k-focus": "this.focusedClass", "attr.dir": "this.direction" } }, providers: [
3533
+ ChipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ChipComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
3534
+ ChipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ChipComponent, selector: "kendo-chip", inputs: { label: "label", icon: "icon", svgIcon: "svgIcon", iconClass: "iconClass", avatarClass: "avatarClass", selected: "selected", removable: "removable", removeIcon: "removeIcon", removeSvgIcon: "removeSvgIcon", disabled: "disabled", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor" }, outputs: { remove: "remove", contentClick: "contentClick" }, host: { properties: { "attr.tabindex": "this.tabIndex", "class.k-chip": "this.hostClass", "class.k-chip-has-icon": "this.hasIconClass", "attr.aria-disabled": "this.disabledClass", "class.k-disabled": "this.disabledClass", "class.k-selected": "this.selectedClass", "class.k-focus": "this.focusedClass", "attr.dir": "this.direction" } }, providers: [
3565
3535
  LocalizationService,
3566
3536
  {
3567
3537
  provide: L10N_PREFIX,
3568
3538
  useValue: 'kendo.chip'
3569
3539
  }
3570
3540
  ], usesOnChanges: true, ngImport: i0, template: `
3571
- <span
3572
- *ngIf="icon"
3573
- class="k-chip-icon k-icon"
3574
- [ngClass]="kendoIconClass"
3575
- >
3576
- </span>
3541
+ <kendo-icon-wrapper
3542
+ *ngIf="icon || svgIcon"
3543
+ innerCssClass="k-chip-icon"
3544
+ [name]="icon"
3545
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
3577
3546
 
3578
- <span
3547
+ <kendo-icon-wrapper
3579
3548
  *ngIf="iconClass"
3580
- class="k-chip-icon"
3581
- [ngClass]="customIconClass"
3582
- >
3583
- </span>
3549
+ innerCssClass="k-chip-icon"
3550
+ [customFontClass]="customIconClass"></kendo-icon-wrapper>
3584
3551
 
3585
3552
  <span
3586
3553
  *ngIf="avatarClass"
3587
- class="k-chip-avatar k-avatar k-rounded-full"
3588
- >
3554
+ class="k-chip-avatar k-avatar k-rounded-full">
3589
3555
  <span class="k-avatar-image" [ngClass]="chipAvatarClass"></span>
3590
3556
  </span>
3591
3557
 
@@ -3599,39 +3565,34 @@ ChipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
3599
3565
  <span class="k-chip-actions">
3600
3566
  <span class="k-chip-action k-chip-remove-action"
3601
3567
  *ngIf="removable"
3602
- (click)="onRemoveClick($event)"
3603
- >
3604
- <span
3605
- class="k-icon"
3606
- [ngClass]="removeIconClass"
3607
- >
3608
- </span>
3568
+ (click)="onRemoveClick($event)">
3569
+ <kendo-icon-wrapper
3570
+ name="x-circle"
3571
+ [svgIcon]="defaultRemoveIcon || removeSvgIcon"
3572
+ [customFontClass]="removeIcon"></kendo-icon-wrapper>
3573
+
3609
3574
  </span>
3610
3575
  </span>
3611
- `, isInline: true, directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
3612
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ChipComponent, decorators: [{
3576
+ `, isInline: true, components: [{ type: i2.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
3577
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ChipComponent, decorators: [{
3613
3578
  type: Component,
3614
3579
  args: [{
3615
3580
  selector: 'kendo-chip',
3616
3581
  template: `
3617
- <span
3618
- *ngIf="icon"
3619
- class="k-chip-icon k-icon"
3620
- [ngClass]="kendoIconClass"
3621
- >
3622
- </span>
3582
+ <kendo-icon-wrapper
3583
+ *ngIf="icon || svgIcon"
3584
+ innerCssClass="k-chip-icon"
3585
+ [name]="icon"
3586
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
3623
3587
 
3624
- <span
3588
+ <kendo-icon-wrapper
3625
3589
  *ngIf="iconClass"
3626
- class="k-chip-icon"
3627
- [ngClass]="customIconClass"
3628
- >
3629
- </span>
3590
+ innerCssClass="k-chip-icon"
3591
+ [customFontClass]="customIconClass"></kendo-icon-wrapper>
3630
3592
 
3631
3593
  <span
3632
3594
  *ngIf="avatarClass"
3633
- class="k-chip-avatar k-avatar k-rounded-full"
3634
- >
3595
+ class="k-chip-avatar k-avatar k-rounded-full">
3635
3596
  <span class="k-avatar-image" [ngClass]="chipAvatarClass"></span>
3636
3597
  </span>
3637
3598
 
@@ -3645,13 +3606,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
3645
3606
  <span class="k-chip-actions">
3646
3607
  <span class="k-chip-action k-chip-remove-action"
3647
3608
  *ngIf="removable"
3648
- (click)="onRemoveClick($event)"
3649
- >
3650
- <span
3651
- class="k-icon"
3652
- [ngClass]="removeIconClass"
3653
- >
3654
- </span>
3609
+ (click)="onRemoveClick($event)">
3610
+ <kendo-icon-wrapper
3611
+ name="x-circle"
3612
+ [svgIcon]="defaultRemoveIcon || removeSvgIcon"
3613
+ [customFontClass]="removeIcon"></kendo-icon-wrapper>
3614
+
3655
3615
  </span>
3656
3616
  </span>
3657
3617
  `,
@@ -3667,6 +3627,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
3667
3627
  type: Input
3668
3628
  }], icon: [{
3669
3629
  type: Input
3630
+ }], svgIcon: [{
3631
+ type: Input
3670
3632
  }], iconClass: [{
3671
3633
  type: Input
3672
3634
  }], avatarClass: [{
@@ -3677,6 +3639,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
3677
3639
  type: Input
3678
3640
  }], removeIcon: [{
3679
3641
  type: Input
3642
+ }], removeSvgIcon: [{
3643
+ type: Input
3680
3644
  }], disabled: [{
3681
3645
  type: Input
3682
3646
  }], size: [{
@@ -3881,8 +3845,8 @@ class ChipListComponent {
3881
3845
  }
3882
3846
  }
3883
3847
  }
3884
- ChipListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ChipListComponent, deps: [{ token: i1.LocalizationService }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
3885
- ChipListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ChipListComponent, selector: "kendo-chiplist, kendo-chip-list", inputs: { selection: "selection", size: "size" }, outputs: { selectedChange: "selectedChange", remove: "remove" }, host: { listeners: { "click": "onClick($event)" }, properties: { "class.k-chip-list": "this.hostClass", "attr.aria-orientation": "this.orientation", "attr.dir": "this.direction", "class.k-selection-single": "this.single", "attr.aria-multiselectable": "this.multiple", "class.k-selection-multiple": "this.multiple", "attr.role": "this.role" } }, providers: [
3848
+ ChipListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ChipListComponent, deps: [{ token: i1.LocalizationService }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
3849
+ ChipListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ChipListComponent, selector: "kendo-chiplist, kendo-chip-list", inputs: { selection: "selection", size: "size" }, outputs: { selectedChange: "selectedChange", remove: "remove" }, host: { listeners: { "click": "onClick($event)" }, properties: { "class.k-chip-list": "this.hostClass", "attr.aria-orientation": "this.orientation", "attr.dir": "this.direction", "class.k-selection-single": "this.single", "attr.aria-multiselectable": "this.multiple", "class.k-selection-multiple": "this.multiple", "attr.role": "this.role" } }, providers: [
3886
3850
  LocalizationService,
3887
3851
  {
3888
3852
  provide: L10N_PREFIX,
@@ -3891,7 +3855,7 @@ ChipListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
3891
3855
  ], queries: [{ propertyName: "chips", predicate: ChipComponent }], ngImport: i0, template: `
3892
3856
  <ng-content></ng-content>
3893
3857
  `, isInline: true });
3894
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ChipListComponent, decorators: [{
3858
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ChipListComponent, decorators: [{
3895
3859
  type: Component,
3896
3860
  args: [{
3897
3861
  selector: 'kendo-chiplist, kendo-chip-list',
@@ -3980,17 +3944,17 @@ const declarations$1 = [
3980
3944
  */
3981
3945
  class ChipModule {
3982
3946
  }
3983
- ChipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ChipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3984
- ChipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ChipModule, declarations: [ChipComponent,
3985
- ChipListComponent], imports: [CommonModule], exports: [ChipComponent,
3947
+ ChipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ChipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3948
+ ChipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ChipModule, declarations: [ChipComponent,
3949
+ ChipListComponent], imports: [CommonModule, IconsModule], exports: [ChipComponent,
3986
3950
  ChipListComponent] });
3987
- ChipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ChipModule, imports: [[CommonModule]] });
3988
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ChipModule, decorators: [{
3951
+ ChipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ChipModule, imports: [[CommonModule, IconsModule]] });
3952
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ChipModule, decorators: [{
3989
3953
  type: NgModule,
3990
3954
  args: [{
3991
3955
  declarations: [declarations$1],
3992
3956
  exports: [exportedModules$1],
3993
- imports: [CommonModule]
3957
+ imports: [CommonModule, IconsModule]
3994
3958
  }]
3995
3959
  }] });
3996
3960
 
@@ -3998,7 +3962,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
3998
3962
  * @hidden
3999
3963
  */
4000
3964
  function getAnchorAlign(fabAlign, rtl) {
4001
- let align = { horizontal: (rtl ? 'right' : 'left'), vertical: 'bottom' };
3965
+ const align = { horizontal: (rtl ? 'right' : 'left'), vertical: 'bottom' };
4002
3966
  if (fabAlign.horizontal === 'end') {
4003
3967
  align.horizontal = rtl ? 'left' : 'right';
4004
3968
  }
@@ -4015,7 +3979,7 @@ function getAnchorAlign(fabAlign, rtl) {
4015
3979
  * @hidden
4016
3980
  */
4017
3981
  function getPopupAlign(fabAlign, rtl) {
4018
- let align = { horizontal: (rtl ? 'right' : 'left'), vertical: 'top' };
3982
+ const align = { horizontal: (rtl ? 'right' : 'left'), vertical: 'top' };
4019
3983
  if (fabAlign.horizontal === 'end') {
4020
3984
  align.horizontal = rtl ? 'left' : 'right';
4021
3985
  }
@@ -4069,9 +4033,9 @@ class DialItemTemplateDirective {
4069
4033
  this.templateRef = templateRef;
4070
4034
  }
4071
4035
  }
4072
- DialItemTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DialItemTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
4073
- DialItemTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: DialItemTemplateDirective, selector: "[kendoDialItemTemplate]", ngImport: i0 });
4074
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DialItemTemplateDirective, decorators: [{
4036
+ DialItemTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DialItemTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
4037
+ DialItemTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: DialItemTemplateDirective, selector: "[kendoDialItemTemplate]", ngImport: i0 });
4038
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DialItemTemplateDirective, decorators: [{
4075
4039
  type: Directive,
4076
4040
  args: [{
4077
4041
  selector: '[kendoDialItemTemplate]'
@@ -4091,9 +4055,9 @@ class FloatingActionButtonTemplateDirective {
4091
4055
  this.templateRef = templateRef;
4092
4056
  }
4093
4057
  }
4094
- FloatingActionButtonTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FloatingActionButtonTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
4095
- FloatingActionButtonTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: FloatingActionButtonTemplateDirective, selector: "[kendoFloatingActionButtonTemplate]", ngImport: i0 });
4096
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FloatingActionButtonTemplateDirective, decorators: [{
4058
+ FloatingActionButtonTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FloatingActionButtonTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
4059
+ FloatingActionButtonTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: FloatingActionButtonTemplateDirective, selector: "[kendoFloatingActionButtonTemplate]", ngImport: i0 });
4060
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FloatingActionButtonTemplateDirective, decorators: [{
4097
4061
  type: Directive,
4098
4062
  args: [{
4099
4063
  selector: '[kendoFloatingActionButtonTemplate]'
@@ -4118,7 +4082,7 @@ class DialItemComponent {
4118
4082
  }
4119
4083
  get title() {
4120
4084
  const label = this.item.label;
4121
- return label ? label : this.itemTitle;
4085
+ return label || this.itemTitle;
4122
4086
  }
4123
4087
  get indexAttr() {
4124
4088
  return this.index;
@@ -4154,8 +4118,8 @@ class DialItemComponent {
4154
4118
  return directions[dir][align];
4155
4119
  }
4156
4120
  }
4157
- DialItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DialItemComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
4158
- DialItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: DialItemComponent, selector: "[kendoDialItem]", inputs: { cssClass: "cssClass", cssStyle: "cssStyle", isFocused: "isFocused", index: "index", item: "item", dialItemTemplate: "dialItemTemplate", align: "align" }, host: { properties: { "class.k-fab-item": "this.hostClass", "attr.role": "this.role", "attr.aria-disabled": "this.disabledClass", "class.k-disabled": "this.disabledClass", "attr.title": "this.title", "attr.aria-label": "this.title", "attr.data-fab-item-index": "this.indexAttr" } }, ngImport: i0, template: `
4121
+ DialItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DialItemComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
4122
+ DialItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DialItemComponent, selector: "[kendoDialItem]", inputs: { cssClass: "cssClass", cssStyle: "cssStyle", isFocused: "isFocused", index: "index", item: "item", dialItemTemplate: "dialItemTemplate", align: "align" }, host: { properties: { "class.k-fab-item": "this.hostClass", "attr.role": "this.role", "attr.aria-disabled": "this.disabledClass", "class.k-disabled": "this.disabledClass", "attr.title": "this.title", "attr.aria-label": "this.title", "attr.data-fab-item-index": "this.indexAttr" } }, ngImport: i0, template: `
4159
4123
  <ng-template *ngIf="dialItemTemplate"
4160
4124
  [ngTemplateOutlet]="dialItemTemplate"
4161
4125
  [ngTemplateOutletContext]="{ $implicit: item, index: index, isFocused: isFocused }"
@@ -4164,10 +4128,15 @@ DialItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
4164
4128
 
4165
4129
  <ng-container *ngIf="!dialItemTemplate">
4166
4130
  <span *ngIf="item.label" class="k-fab-item-text">{{ item.label }}</span>
4167
- <span *ngIf="item.icon || item.iconClass" [ngClass]="iconClasses"></span>
4131
+ <kendo-icon-wrapper
4132
+ *ngIf="item.icon || item.iconClass || item.svgIcon"
4133
+ [name]="item.icon"
4134
+ innerCssClass="k-fab-item-icon"
4135
+ [customFontClass]="item.iconClass"
4136
+ [svgIcon]="item.svgIcon"></kendo-icon-wrapper>
4168
4137
  </ng-container>
4169
- `, isInline: true, directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
4170
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DialItemComponent, decorators: [{
4138
+ `, isInline: true, components: [{ type: i2.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
4139
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DialItemComponent, decorators: [{
4171
4140
  type: Component,
4172
4141
  args: [{
4173
4142
  // eslint-disable-next-line @angular-eslint/component-selector
@@ -4181,7 +4150,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
4181
4150
 
4182
4151
  <ng-container *ngIf="!dialItemTemplate">
4183
4152
  <span *ngIf="item.label" class="k-fab-item-text">{{ item.label }}</span>
4184
- <span *ngIf="item.icon || item.iconClass" [ngClass]="iconClasses"></span>
4153
+ <kendo-icon-wrapper
4154
+ *ngIf="item.icon || item.iconClass || item.svgIcon"
4155
+ [name]="item.icon"
4156
+ innerCssClass="k-fab-item-icon"
4157
+ [customFontClass]="item.iconClass"
4158
+ [svgIcon]="item.svgIcon"></kendo-icon-wrapper>
4185
4159
  </ng-container>
4186
4160
  `
4187
4161
  }]
@@ -4246,8 +4220,8 @@ class DialListComponent {
4246
4220
  this.subscriptions.unsubscribe();
4247
4221
  }
4248
4222
  }
4249
- DialListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DialListComponent, deps: [{ token: FocusService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
4250
- DialListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: DialListComponent, selector: "[kendoDialList]", inputs: { dialItems: "dialItems", dialItemTemplate: "dialItemTemplate", align: "align" }, host: { properties: { "class.k-fab-items": "this.hostClass", "class.k-fab-items-bottom": "this.bottomClass", "class.k-fab-items-top": "this.topClass" } }, ngImport: i0, template: `
4223
+ DialListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DialListComponent, deps: [{ token: FocusService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
4224
+ DialListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: DialListComponent, selector: "[kendoDialList]", inputs: { dialItems: "dialItems", dialItemTemplate: "dialItemTemplate", align: "align" }, host: { properties: { "class.k-fab-items": "this.hostClass", "class.k-fab-items-bottom": "this.bottomClass", "class.k-fab-items-top": "this.topClass" } }, ngImport: i0, template: `
4251
4225
  <ng-container *ngFor='let item of dialItems; let idx = index'>
4252
4226
  <li
4253
4227
  kendoButtonFocusable
@@ -4262,8 +4236,8 @@ DialListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
4262
4236
  >
4263
4237
  </li>
4264
4238
  </ng-container>
4265
- `, isInline: true, components: [{ type: DialItemComponent, selector: "[kendoDialItem]", inputs: ["cssClass", "cssStyle", "isFocused", "index", "item", "dialItemTemplate", "align"] }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: FocusableDirective, selector: "[kendoButtonFocusable]", inputs: ["index"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
4266
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DialListComponent, decorators: [{
4239
+ `, isInline: true, components: [{ type: DialItemComponent, selector: "[kendoDialItem]", inputs: ["cssClass", "cssStyle", "isFocused", "index", "item", "dialItemTemplate", "align"] }], directives: [{ type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: FocusableDirective, selector: "[kendoButtonFocusable]", inputs: ["index"] }, { type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
4240
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: DialListComponent, decorators: [{
4267
4241
  type: Component,
4268
4242
  args: [{
4269
4243
  // eslint-disable-next-line @angular-eslint/component-selector
@@ -4737,7 +4711,7 @@ class FloatingActionButtonComponent {
4737
4711
  onNavigationEnterPress() {
4738
4712
  this.ngZone.run(() => {
4739
4713
  if (this.isOpen) {
4740
- let focusedIndex = this.focusService.focused;
4714
+ const focusedIndex = this.focusService.focused;
4741
4715
  const focusedItem = this.dialItems[focusedIndex];
4742
4716
  if (focusedItem && focusedItem.disabled) {
4743
4717
  return;
@@ -4960,8 +4934,8 @@ class FloatingActionButtonComponent {
4960
4934
  return DEFAULT_DURATION;
4961
4935
  }
4962
4936
  }
4963
- FloatingActionButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FloatingActionButtonComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: FocusService }, { token: NavigationService }, { token: i0.NgZone }, { token: i3.PopupService }, { token: i4.AnimationBuilder }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
4964
- FloatingActionButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: FloatingActionButtonComponent, selector: "kendo-floatingactionbutton", inputs: { themeColor: "themeColor", size: "size", rounded: "rounded", disabled: "disabled", align: "align", offset: "offset", positionMode: "positionMode", icon: "icon", iconClass: "iconClass", buttonClass: "buttonClass", dialClass: "dialClass", text: "text", dialItemAnimation: "dialItemAnimation", tabIndex: "tabIndex", dialItems: "dialItems" }, outputs: { onBlur: "blur", onFocus: "focus", dialItemClick: "dialItemClick", open: "open", close: "close" }, host: { properties: { "class.k-pos-fixed": "this.fixedClass", "class.k-pos-absolute": "this.absoluteClass", "attr.dir": "this.direction" } }, providers: [
4937
+ FloatingActionButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FloatingActionButtonComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: FocusService }, { token: NavigationService }, { token: i0.NgZone }, { token: i3$1.PopupService }, { token: i4.AnimationBuilder }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
4938
+ FloatingActionButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: FloatingActionButtonComponent, selector: "kendo-floatingactionbutton", inputs: { themeColor: "themeColor", size: "size", rounded: "rounded", disabled: "disabled", align: "align", offset: "offset", positionMode: "positionMode", icon: "icon", svgIcon: "svgIcon", iconClass: "iconClass", buttonClass: "buttonClass", dialClass: "dialClass", text: "text", dialItemAnimation: "dialItemAnimation", tabIndex: "tabIndex", dialItems: "dialItems" }, outputs: { onBlur: "blur", onFocus: "focus", dialItemClick: "dialItemClick", open: "open", close: "close" }, host: { properties: { "class.k-pos-fixed": "this.fixedClass", "class.k-pos-absolute": "this.absoluteClass", "attr.dir": "this.direction" } }, providers: [
4965
4939
  FocusService,
4966
4940
  NavigationService,
4967
4941
  NAVIGATION_SETTINGS_PROVIDER,
@@ -4998,7 +4972,12 @@ FloatingActionButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
4998
4972
  </ng-template>
4999
4973
 
5000
4974
  <ng-container *ngIf="!fabTemplate">
5001
- <span *ngIf="icon || iconClass" [ngClass]="iconClasses"></span>
4975
+ <kendo-icon-wrapper
4976
+ *ngIf="icon || iconClass || svgIcon"
4977
+ [name]="icon"
4978
+ innerCssClass="k-fab-icon"
4979
+ [customFontClass]="iconClass"
4980
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
5002
4981
  <span *ngIf="text" class="k-fab-text">{{ text }}</span>
5003
4982
  </ng-container>
5004
4983
  </button>
@@ -5017,8 +4996,8 @@ FloatingActionButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
5017
4996
  >
5018
4997
  </ul>
5019
4998
  </ng-template>
5020
- `, isInline: true, components: [{ type: DialListComponent, selector: "[kendoDialList]", inputs: ["dialItems", "dialItemTemplate", "align"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
5021
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FloatingActionButtonComponent, decorators: [{
4999
+ `, isInline: true, components: [{ type: i2.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }, { type: DialListComponent, selector: "[kendoDialList]", inputs: ["dialItems", "dialItemTemplate", "align"] }], directives: [{ type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i9.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
5000
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FloatingActionButtonComponent, decorators: [{
5022
5001
  type: Component,
5023
5002
  args: [{
5024
5003
  selector: 'kendo-floatingactionbutton',
@@ -5060,7 +5039,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
5060
5039
  </ng-template>
5061
5040
 
5062
5041
  <ng-container *ngIf="!fabTemplate">
5063
- <span *ngIf="icon || iconClass" [ngClass]="iconClasses"></span>
5042
+ <kendo-icon-wrapper
5043
+ *ngIf="icon || iconClass || svgIcon"
5044
+ [name]="icon"
5045
+ innerCssClass="k-fab-icon"
5046
+ [customFontClass]="iconClass"
5047
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
5064
5048
  <span *ngIf="text" class="k-fab-text">{{ text }}</span>
5065
5049
  </ng-container>
5066
5050
  </button>
@@ -5081,7 +5065,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
5081
5065
  </ng-template>
5082
5066
  `
5083
5067
  }]
5084
- }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: FocusService }, { type: NavigationService }, { type: i0.NgZone }, { type: i3.PopupService }, { type: i4.AnimationBuilder }, { type: i1.LocalizationService }]; }, propDecorators: { fixedClass: [{
5068
+ }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: FocusService }, { type: NavigationService }, { type: i0.NgZone }, { type: i3$1.PopupService }, { type: i4.AnimationBuilder }, { type: i1.LocalizationService }]; }, propDecorators: { fixedClass: [{
5085
5069
  type: HostBinding,
5086
5070
  args: ['class.k-pos-fixed']
5087
5071
  }], absoluteClass: [{
@@ -5118,6 +5102,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
5118
5102
  type: Input
5119
5103
  }], icon: [{
5120
5104
  type: Input
5105
+ }], svgIcon: [{
5106
+ type: Input
5121
5107
  }], iconClass: [{
5122
5108
  type: Input
5123
5109
  }], buttonClass: [{
@@ -5187,20 +5173,20 @@ const declarations = [
5187
5173
  */
5188
5174
  class FloatingActionButtonModule {
5189
5175
  }
5190
- FloatingActionButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FloatingActionButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5191
- FloatingActionButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FloatingActionButtonModule, declarations: [FloatingActionButtonComponent,
5176
+ FloatingActionButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FloatingActionButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5177
+ FloatingActionButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FloatingActionButtonModule, declarations: [FloatingActionButtonComponent,
5192
5178
  DialItemTemplateDirective,
5193
5179
  FloatingActionButtonTemplateDirective, DialListComponent,
5194
- DialItemComponent], imports: [CommonModule, PopupModule, ListModule, EventsModule], exports: [FloatingActionButtonComponent,
5180
+ DialItemComponent], imports: [CommonModule, PopupModule, ListModule, EventsModule, IconsModule], exports: [FloatingActionButtonComponent,
5195
5181
  DialItemTemplateDirective,
5196
5182
  FloatingActionButtonTemplateDirective] });
5197
- FloatingActionButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FloatingActionButtonModule, imports: [[CommonModule, PopupModule, ListModule, EventsModule]] });
5198
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FloatingActionButtonModule, decorators: [{
5183
+ FloatingActionButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FloatingActionButtonModule, imports: [[CommonModule, PopupModule, ListModule, EventsModule, IconsModule]] });
5184
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FloatingActionButtonModule, decorators: [{
5199
5185
  type: NgModule,
5200
5186
  args: [{
5201
5187
  declarations: [declarations],
5202
5188
  exports: [exportedModules],
5203
- imports: [CommonModule, PopupModule, ListModule, EventsModule]
5189
+ imports: [CommonModule, PopupModule, ListModule, EventsModule, IconsModule]
5204
5190
  }]
5205
5191
  }] });
5206
5192
 
@@ -5237,10 +5223,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
5237
5223
  */
5238
5224
  class ButtonsModule {
5239
5225
  }
5240
- ButtonsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5241
- ButtonsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonsModule, exports: [ButtonGroupModule, ButtonModule, SplitButtonModule, DropDownButtonModule, ChipModule, FloatingActionButtonModule] });
5242
- ButtonsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonsModule, imports: [ButtonGroupModule, ButtonModule, SplitButtonModule, DropDownButtonModule, ChipModule, FloatingActionButtonModule] });
5243
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ButtonsModule, decorators: [{
5226
+ ButtonsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5227
+ ButtonsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonsModule, exports: [ButtonGroupModule, ButtonModule, SplitButtonModule, DropDownButtonModule, ChipModule, FloatingActionButtonModule] });
5228
+ ButtonsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonsModule, imports: [ButtonGroupModule, ButtonModule, SplitButtonModule, DropDownButtonModule, ChipModule, FloatingActionButtonModule] });
5229
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonsModule, decorators: [{
5244
5230
  type: NgModule,
5245
5231
  args: [{
5246
5232
  exports: [ButtonGroupModule, ButtonModule, SplitButtonModule, DropDownButtonModule, ChipModule, FloatingActionButtonModule]
@@ -5251,5 +5237,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
5251
5237
  * Generated bundle index. Do not edit.
5252
5238
  */
5253
5239
 
5254
- export { ButtonDirective as Button, ButtonDirective, ButtonGroupComponent as ButtonGroup, ButtonGroupComponent, ButtonGroupModule, ButtonItemTemplateDirective, ButtonModule, ButtonsModule, ChipComponent, ChipListComponent, ChipModule, DialItemTemplateDirective, DropDownButtonComponent as DropDownButton, DropDownButtonComponent, DropDownButtonModule, FloatingActionButtonComponent, FloatingActionButtonModule, FloatingActionButtonTemplateDirective, FocusableDirective, ListComponent, ListModule, LocalizedSplitButtonMessagesDirective, PreventableEvent, SplitButtonComponent as SplitButton, SplitButtonComponent, SplitButtonCustomMessagesComponent, SplitButtonModule, TemplateContextDirective };
5240
+ export { ButtonComponent as Button, ButtonComponent as ButtonDirective, ButtonGroupComponent as ButtonGroup, ButtonGroupComponent, ButtonGroupModule, ButtonItemTemplateDirective, ButtonModule, ButtonsModule, ChipComponent, ChipListComponent, ChipModule, DialItemTemplateDirective, DropDownButtonComponent as DropDownButton, DropDownButtonComponent, DropDownButtonModule, FloatingActionButtonComponent, FloatingActionButtonModule, FloatingActionButtonTemplateDirective, FocusableDirective, ListComponent, ListModule, LocalizedSplitButtonMessagesDirective, PreventableEvent, SplitButtonComponent as SplitButton, SplitButtonComponent, SplitButtonCustomMessagesComponent, SplitButtonModule, TemplateContextDirective };
5255
5241