@progress/kendo-angular-buttons 24.2.2 → 25.0.0-develop.12

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 (81) hide show
  1. package/fesm2022/progress-kendo-angular-buttons.mjs +371 -283
  2. package/index.d.ts +3306 -52
  3. package/package-metadata.mjs +2 -2
  4. package/package.json +11 -11
  5. package/button/button-settings.d.ts +0 -39
  6. package/button/button.component.d.ts +0 -200
  7. package/button/button.module.d.ts +0 -32
  8. package/button/button.service.d.ts +0 -17
  9. package/button/selection-settings.d.ts +0 -11
  10. package/buttongroup/buttongroup.component.d.ts +0 -103
  11. package/buttongroup/buttongroup.module.d.ts +0 -37
  12. package/buttons.module.d.ts +0 -46
  13. package/chip/chip-content-click-event-args.interface.d.ts +0 -18
  14. package/chip/chip-list-remove-event-args.interface.d.ts +0 -23
  15. package/chip/chip-list.component.d.ts +0 -105
  16. package/chip/chip-remove-event-args.interface.d.ts +0 -18
  17. package/chip/chip.component.d.ts +0 -204
  18. package/chip/chip.module.d.ts +0 -33
  19. package/chip/models/avatar-settings.interface.d.ts +0 -39
  20. package/chip/models/selection.d.ts +0 -13
  21. package/common/models/arrow-settings.d.ts +0 -22
  22. package/common/models/fillmode.d.ts +0 -12
  23. package/common/models/icon-position.d.ts +0 -10
  24. package/common/models/rounded.d.ts +0 -12
  25. package/common/models/size.d.ts +0 -24
  26. package/common/models/styling-classes.d.ts +0 -11
  27. package/common/models/theme-color.d.ts +0 -40
  28. package/common/models.d.ts +0 -11
  29. package/direction.d.ts +0 -8
  30. package/directives.d.ts +0 -173
  31. package/dropdownbutton/dropdownbutton.component.d.ts +0 -176
  32. package/dropdownbutton/dropdownbutton.module.d.ts +0 -36
  33. package/floatingactionbutton/animations/animations.d.ts +0 -13
  34. package/floatingactionbutton/dial-item.component.d.ts +0 -36
  35. package/floatingactionbutton/dial-list.component.d.ts +0 -27
  36. package/floatingactionbutton/floatingactionbutton.component.d.ts +0 -296
  37. package/floatingactionbutton/floatingactionbutton.module.d.ts +0 -34
  38. package/floatingactionbutton/models/align.d.ts +0 -33
  39. package/floatingactionbutton/models/item-animation.interface.d.ts +0 -25
  40. package/floatingactionbutton/models/item-click.event.d.ts +0 -25
  41. package/floatingactionbutton/models/item.interface.d.ts +0 -51
  42. package/floatingactionbutton/models/offset.d.ts +0 -23
  43. package/floatingactionbutton/models/position-mode.d.ts +0 -13
  44. package/floatingactionbutton/templates/dial-item-template.directive.d.ts +0 -26
  45. package/floatingactionbutton/templates/fab-template.directive.d.ts +0 -27
  46. package/floatingactionbutton/utils.d.ts +0 -12
  47. package/focusable/focus.service.d.ts +0 -20
  48. package/focusable/focusable.directive.d.ts +0 -26
  49. package/listbutton/button-item-template.directive.d.ts +0 -38
  50. package/listbutton/container.service.d.ts +0 -15
  51. package/listbutton/list-button.d.ts +0 -164
  52. package/listbutton/list-item-model.d.ts +0 -75
  53. package/listbutton/list.component.d.ts +0 -28
  54. package/listbutton/popup-settings.d.ts +0 -52
  55. package/navigation/key-events.d.ts +0 -12
  56. package/navigation/navigation-action.d.ts +0 -18
  57. package/navigation/navigation-config.d.ts +0 -15
  58. package/navigation/navigation.service.d.ts +0 -28
  59. package/package-metadata.d.ts +0 -9
  60. package/preventable-event.d.ts +0 -21
  61. package/segmentedcontrol/models.d.ts +0 -41
  62. package/segmentedcontrol/segmented-control.component.d.ts +0 -81
  63. package/segmentedcontrol/segmented-control.module.d.ts +0 -19
  64. package/smartpastebutton/models/form-field.d.ts +0 -40
  65. package/smartpastebutton/models/index.d.ts +0 -6
  66. package/smartpastebutton/models/service-settings.d.ts +0 -114
  67. package/smartpastebutton/smartpastebutton.component.d.ts +0 -175
  68. package/smartpastebutton/smartpastebutton.module.d.ts +0 -27
  69. package/smartpastebutton/utils.d.ts +0 -50
  70. package/speechtotextbutton/models/error-event.d.ts +0 -13
  71. package/speechtotextbutton/models/integration-mode.d.ts +0 -11
  72. package/speechtotextbutton/models/result-event.d.ts +0 -18
  73. package/speechtotextbutton/models/speechtotextbutton-settings.d.ts +0 -61
  74. package/speechtotextbutton/speechtotextbutton.component.d.ts +0 -187
  75. package/speechtotextbutton/speechtotextbutton.module.d.ts +0 -19
  76. package/splitbutton/localization/custom-messages.component.d.ts +0 -18
  77. package/splitbutton/localization/localized-messages.directive.d.ts +0 -16
  78. package/splitbutton/localization/messages.d.ts +0 -38
  79. package/splitbutton/splitbutton.component.d.ts +0 -284
  80. package/splitbutton/splitbutton.module.d.ts +0 -23
  81. package/util.d.ts +0 -49
@@ -3,10 +3,10 @@
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, isDevMode, EventEmitter, HostListener, HostBinding, Output, Input, Optional, Component, ContentChildren, Directive, InjectionToken, Inject, ElementRef, ViewContainerRef, ViewChild, ContentChild, forwardRef, SkipSelf, ChangeDetectionStrategy, NgModule } from '@angular/core';
6
+ import { Injectable, isDevMode, EventEmitter, signal, HostListener, HostBinding, Output, Input, Optional, ChangeDetectionStrategy, Component, ContentChildren, Directive, InjectionToken, Inject, ElementRef, ViewContainerRef, ViewChild, ContentChild, forwardRef, SkipSelf, afterNextRender, NgModule } from '@angular/core';
7
7
  import { Subject, Subscription, fromEvent, merge, of, Observable, from } from 'rxjs';
8
8
  import * as i12 from '@progress/kendo-angular-common';
9
- import { isDocumentAvailable, isFirefox, isSafari, isChanged, hasObservers, KENDO_WEBMCP_HOST, normalizeKeys, Keys, TemplateContextDirective, MultiTabStop, guid, parseCSSClassNames, isPresent as isPresent$1, EventsOutsideAngularDirective, replaceMessagePlaceholder, anyChanged, PreventableEvent as PreventableEvent$1, ResizeSensorComponent, ToggleButtonTabStopDirective, ResizeBatchService, KENDO_TOGGLEBUTTONTABSTOP } from '@progress/kendo-angular-common';
9
+ import { isDocumentAvailable, isFirefox, isSafari, hasObservers, KENDO_WEBMCP_HOST, isChanged, normalizeKeys, Keys, TemplateContextDirective, MultiTabStop, guid, parseCSSClassNames, isPresent as isPresent$1, EventsOutsideAngularDirective, replaceMessagePlaceholder, anyChanged, PreventableEvent as PreventableEvent$1, ResizeSensorComponent, ToggleButtonTabStopDirective, ResizeBatchService, KENDO_TOGGLEBUTTONTABSTOP } from '@progress/kendo-angular-common';
10
10
  export { ToggleButtonTabStopDirective } from '@progress/kendo-angular-common';
11
11
  import { chevronDownIcon, xCircleIcon, moreVerticalIcon, microphoneIcon, stopIcon, pasteSparkleIcon } from '@progress/kendo-svg-icons';
12
12
  import * as i1 from '@progress/kendo-angular-l10n';
@@ -34,10 +34,10 @@ class KendoButtonService {
34
34
  click(button) {
35
35
  this.buttonClicked.next(button);
36
36
  }
37
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: KendoButtonService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
38
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: KendoButtonService });
37
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: KendoButtonService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
38
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: KendoButtonService });
39
39
  }
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: KendoButtonService, decorators: [{
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: KendoButtonService, decorators: [{
41
41
  type: Injectable
42
42
  }] });
43
43
 
@@ -49,8 +49,8 @@ const packageMetadata = {
49
49
  productName: 'Kendo UI for Angular',
50
50
  productCode: 'KENDOUIANGULAR',
51
51
  productCodes: ['KENDOUIANGULAR'],
52
- publishDate: 1783511255,
53
- version: '24.2.2',
52
+ publishDate: 1785317773,
53
+ version: '25.0.0-develop.12',
54
54
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
55
55
  };
56
56
 
@@ -199,7 +199,13 @@ class ButtonComponent {
199
199
  *
200
200
  * @default false
201
201
  */
202
- toggleable = false;
202
+ set toggleable(value) {
203
+ this._toggleable.set(value);
204
+ this.toggleAriaPressed(value);
205
+ }
206
+ get toggleable() {
207
+ return this._toggleable();
208
+ }
203
209
  /**
204
210
  * Backwards-compatible alias
205
211
  *
@@ -221,10 +227,10 @@ class ButtonComponent {
221
227
  * @default false
222
228
  */
223
229
  get selected() {
224
- return this._selected || false;
230
+ return this._selected() || false;
225
231
  }
226
232
  set selected(value) {
227
- this._selected = value;
233
+ this._selected.set(value);
228
234
  }
229
235
  /**
230
236
  * @hidden
@@ -292,10 +298,10 @@ class ButtonComponent {
292
298
  */
293
299
  set size(size) {
294
300
  this.handleClasses(size, 'size');
295
- this._size = size;
301
+ this._size.set(size);
296
302
  }
297
303
  get size() {
298
- return this._size;
304
+ return this._size();
299
305
  }
300
306
  /**
301
307
  * Sets the border radius of the Button.
@@ -303,10 +309,10 @@ class ButtonComponent {
303
309
  */
304
310
  set rounded(rounded) {
305
311
  this.handleClasses(rounded, 'rounded');
306
- this._rounded = rounded;
312
+ this._rounded.set(rounded);
307
313
  }
308
314
  get rounded() {
309
- return this._rounded;
315
+ return this._rounded();
310
316
  }
311
317
  /**
312
318
  * Sets the background and border styles of the Button.
@@ -314,10 +320,10 @@ class ButtonComponent {
314
320
  */
315
321
  set fillMode(fillMode) {
316
322
  this.handleClasses(fillMode, 'fillMode');
317
- this._fillMode = fillMode;
323
+ this._fillMode.set(fillMode);
318
324
  }
319
325
  get fillMode() {
320
- return this._fillMode;
326
+ return this._fillMode();
321
327
  }
322
328
  /**
323
329
  * Sets a predefined theme color for the Button.
@@ -326,10 +332,10 @@ class ButtonComponent {
326
332
  */
327
333
  set themeColor(themeColor) {
328
334
  this.handleThemeColor(themeColor);
329
- this._themeColor = themeColor;
335
+ this._themeColor.set(themeColor);
330
336
  }
331
337
  get themeColor() {
332
- return this._themeColor;
338
+ return this._themeColor();
333
339
  }
334
340
  /**
335
341
  * Sets an SVG icon to display inside the Button.
@@ -353,19 +359,26 @@ class ButtonComponent {
353
359
  */
354
360
  click = new EventEmitter();
355
361
  element;
356
- isDisabled = false;
357
362
  chevronDownIcon = chevronDownIcon;
358
- _size = undefined;
359
- _rounded = undefined;
360
- _fillMode = undefined;
361
- _themeColor = undefined;
363
+ get isDisabled() {
364
+ return this._disabled();
365
+ }
366
+ set isDisabled(value) {
367
+ this._disabled.set(value);
368
+ }
369
+ _size = signal(undefined, ...(ngDevMode ? [{ debugName: "_size" }] : []));
370
+ _rounded = signal(undefined, ...(ngDevMode ? [{ debugName: "_rounded" }] : []));
371
+ _fillMode = signal(undefined, ...(ngDevMode ? [{ debugName: "_fillMode" }] : []));
372
+ _themeColor = signal(undefined, ...(ngDevMode ? [{ debugName: "_themeColor" }] : []));
362
373
  _focused = false;
363
- direction;
364
- _selected;
365
374
  subs = new Subscription();
366
375
  _iconClass;
367
376
  _icon;
368
377
  _svgIcon;
378
+ _disabled = signal(false, ...(ngDevMode ? [{ debugName: "_disabled" }] : []));
379
+ _selected = signal(false, ...(ngDevMode ? [{ debugName: "_selected" }] : []));
380
+ _toggleable = signal(false, ...(ngDevMode ? [{ debugName: "_toggleable" }] : []));
381
+ _direction = signal('', ...(ngDevMode ? [{ debugName: "_direction" }] : []));
369
382
  set isFocused(isFocused) {
370
383
  toggleClass('k-focus', isFocused, this.renderer, this.element);
371
384
  this._focused = isFocused;
@@ -381,10 +394,10 @@ class ButtonComponent {
381
394
  return this.isDisabled;
382
395
  }
383
396
  get classActive() {
384
- return this.selected;
397
+ return this._selected();
385
398
  }
386
399
  get getDirection() {
387
- return this.direction;
400
+ return this._direction();
388
401
  }
389
402
  /**
390
403
  * @hidden
@@ -412,8 +425,8 @@ class ButtonComponent {
412
425
  this.service = service;
413
426
  this.ngZone = ngZone;
414
427
  validatePackage(packageMetadata);
415
- this.direction = localization.rtl ? 'rtl' : 'ltr';
416
- this.subs.add(localization.changes.subscribe(({ rtl }) => (this.direction = rtl ? 'rtl' : 'ltr')));
428
+ this._direction.set(localization.rtl ? 'rtl' : 'ltr');
429
+ this.subs.add(localization.changes.subscribe(({ rtl }) => this._direction.set(rtl ? 'rtl' : 'ltr')));
417
430
  this.element = element.nativeElement;
418
431
  this.renderer.addClass(this.element, 'k-button');
419
432
  }
@@ -432,11 +445,6 @@ class ButtonComponent {
432
445
  }));
433
446
  });
434
447
  }
435
- ngOnChanges(change) {
436
- if (isChanged('togglable', change) || isChanged('toggleable', change)) {
437
- this.toggleAriaPressed(this.toggleable);
438
- }
439
- }
440
448
  ngOnDestroy() {
441
449
  this.subs.unsubscribe();
442
450
  }
@@ -536,8 +544,8 @@ class ButtonComponent {
536
544
  this.renderer.addClass(elem, themeColorClass.toAdd);
537
545
  }
538
546
  }
539
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", 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 });
540
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: ButtonComponent, isStandalone: true, selector: "button[kendoButton]", inputs: { arrowIcon: "arrowIcon", toggleable: "toggleable", togglable: "togglable", selected: "selected", tabIndex: "tabIndex", imageUrl: "imageUrl", iconPosition: "iconPosition", iconClass: "iconClass", icon: "icon", disabled: "disabled", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor", svgIcon: "svgIcon" }, outputs: { selectedChange: "selectedChange", click: "click" }, host: { listeners: { "focus": "onFocus()", "blur": "onBlur()" }, properties: { "class.k-icon-button": "this.iconButtonClass", "class.k-disabled": "this.classDisabled", "class.k-selected": "this.classActive", "attr.dir": "this.getDirection" } }, providers: [
547
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", 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 });
548
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: ButtonComponent, isStandalone: true, selector: "button[kendoButton]", inputs: { arrowIcon: "arrowIcon", toggleable: "toggleable", togglable: "togglable", selected: "selected", tabIndex: "tabIndex", imageUrl: "imageUrl", iconPosition: "iconPosition", iconClass: "iconClass", icon: "icon", disabled: "disabled", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor", svgIcon: "svgIcon" }, outputs: { selectedChange: "selectedChange", click: "click" }, host: { listeners: { "focus": "onFocus()", "blur": "onBlur()" }, properties: { "class.k-icon-button": "this.iconButtonClass", "class.k-disabled": "this.classDisabled", "class.k-selected": "this.classActive", "attr.dir": "this.getDirection" } }, providers: [
541
549
  LocalizationService,
542
550
  {
543
551
  provide: L10N_PREFIX,
@@ -547,7 +555,7 @@ class ButtonComponent {
547
555
  provide: KENDO_WEBMCP_HOST,
548
556
  useExisting: ButtonComponent
549
557
  }
550
- ], exportAs: ["kendoButton"], usesOnChanges: true, ngImport: i0, template: `
558
+ ], exportAs: ["kendoButton"], ngImport: i0, template: `
551
559
  <ng-template #iconTemplate>
552
560
  @if (icon || svgIcon) {
553
561
  <kendo-icon-wrapper
@@ -586,11 +594,13 @@ class ButtonComponent {
586
594
  </span>
587
595
  }
588
596
 
589
- `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
597
+ `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
590
598
  }
591
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ButtonComponent, decorators: [{
599
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ButtonComponent, decorators: [{
592
600
  type: Component,
593
601
  args: [{
602
+ selector: 'button[kendoButton]',
603
+ changeDetection: ChangeDetectionStrategy.OnPush,
594
604
  exportAs: 'kendoButton',
595
605
  providers: [
596
606
  LocalizationService,
@@ -603,7 +613,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
603
613
  useExisting: ButtonComponent
604
614
  }
605
615
  ],
606
- selector: 'button[kendoButton]',
607
616
  template: `
608
617
  <ng-template #iconTemplate>
609
618
  @if (icon || svgIcon) {
@@ -772,7 +781,7 @@ class ButtonGroupComponent {
772
781
  */
773
782
  set tabIndex(value) {
774
783
  this._tabIndex = value;
775
- this.currentTabIndex = value;
784
+ this._currentTabIndex.set(value);
776
785
  }
777
786
  get tabIndex() {
778
787
  return this._tabIndex;
@@ -795,9 +804,9 @@ class ButtonGroupComponent {
795
804
  navigate = new EventEmitter();
796
805
  buttons;
797
806
  _tabIndex = 0;
798
- currentTabIndex = 0;
807
+ _currentTabIndex = signal(0, ...(ngDevMode ? [{ debugName: "_currentTabIndex" }] : []));
799
808
  lastFocusedIndex = -1;
800
- direction;
809
+ _direction = signal(undefined, ...(ngDevMode ? [{ debugName: "_direction" }] : []));
801
810
  subs = new Subscription();
802
811
  wrapperClasses = true;
803
812
  get disabledClass() {
@@ -808,7 +817,7 @@ class ButtonGroupComponent {
808
817
  }
809
818
  role = 'group';
810
819
  get dir() {
811
- return this.direction;
820
+ return this._direction();
812
821
  }
813
822
  get ariaDisabled() {
814
823
  return this.disabled;
@@ -820,14 +829,14 @@ class ButtonGroupComponent {
820
829
  if (this.disabled) {
821
830
  return undefined;
822
831
  }
823
- return this.navigable ? this.currentTabIndex : undefined;
832
+ return this.navigable ? this._currentTabIndex() : undefined;
824
833
  }
825
834
  constructor(service, localization, renderer, element) {
826
835
  this.service = service;
827
836
  this.renderer = renderer;
828
837
  this.element = element;
829
838
  validatePackage(packageMetadata);
830
- this.subs.add(localization.changes.subscribe(({ rtl }) => this.direction = rtl ? 'rtl' : 'ltr'));
839
+ this.subs.add(localization.changes.subscribe(({ rtl }) => this._direction.set(rtl ? 'rtl' : 'ltr')));
831
840
  }
832
841
  ngOnInit() {
833
842
  this.subs.add(this.service.buttonClicked$.subscribe((button) => {
@@ -846,7 +855,7 @@ class ButtonGroupComponent {
846
855
  button.setSelected(newSelectionValue);
847
856
  }
848
857
  if (this.navigable) {
849
- this.currentTabIndex = -1;
858
+ this._currentTabIndex.set(-1);
850
859
  this.renderer.setAttribute(button, tabindex, '0');
851
860
  }
852
861
  }));
@@ -855,13 +864,13 @@ class ButtonGroupComponent {
855
864
  this.handleSubs('focusout', (event) => this.navigable && event.relatedTarget && event.relatedTarget.parentNode !== this.element.nativeElement, () => {
856
865
  this.lastFocusedIndex = this.buttons.toArray().findIndex(button => button.tabIndex !== -1);
857
866
  this.defocus(this.buttons.toArray());
858
- this.currentTabIndex = this.tabIndex;
867
+ this._currentTabIndex.set(this.tabIndex);
859
868
  });
860
869
  this.subs.add(fromEvent(this.element.nativeElement, 'focusout')
861
870
  .pipe(filter((event) => this.navigable && event.relatedTarget && event.relatedTarget.parentNode !== this.element.nativeElement))
862
871
  .subscribe(() => {
863
872
  this.defocus(this.buttons.toArray());
864
- this.currentTabIndex = this.tabIndex;
873
+ this._currentTabIndex.set(this.tabIndex);
865
874
  }));
866
875
  }
867
876
  ngOnChanges(changes) {
@@ -875,10 +884,10 @@ class ButtonGroupComponent {
875
884
  if (isChanged('navigable', changes)) {
876
885
  if (changes['navigable'].currentValue) {
877
886
  this.defocus(this.buttons.toArray());
878
- this.currentTabIndex = 0;
887
+ this._currentTabIndex.set(0);
879
888
  }
880
889
  else {
881
- this.currentTabIndex = -1;
890
+ this._currentTabIndex.set(-1);
882
891
  this.buttons.forEach((button) => this.renderer.setAttribute(button, tabindex, '0'));
883
892
  }
884
893
  }
@@ -971,7 +980,7 @@ class ButtonGroupComponent {
971
980
  .subscribe(handler));
972
981
  }
973
982
  focusHandler = () => {
974
- this.currentTabIndex = -1;
983
+ this._currentTabIndex.set(-1);
975
984
  this.defocus(this.buttons.toArray());
976
985
  const firstFocusableIndex = this.buttons.toArray().findIndex(current => !current.disabled);
977
986
  const index = this.lastFocusedIndex === -1 ? firstFocusableIndex : this.lastFocusedIndex;
@@ -979,8 +988,8 @@ class ButtonGroupComponent {
979
988
  return i === index;
980
989
  }));
981
990
  };
982
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ButtonGroupComponent, deps: [{ token: KendoButtonService }, { token: i1.LocalizationService }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
983
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: ButtonGroupComponent, isStandalone: true, selector: "kendo-buttongroup", inputs: { disabled: "disabled", selection: "selection", width: "width", tabIndex: "tabIndex", navigable: "navigable" }, outputs: { navigate: "navigate" }, host: { properties: { "class.k-button-group": "this.wrapperClasses", "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: [
991
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ButtonGroupComponent, deps: [{ token: KendoButtonService }, { token: i1.LocalizationService }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
992
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: ButtonGroupComponent, isStandalone: true, selector: "kendo-buttongroup", inputs: { disabled: "disabled", selection: "selection", width: "width", tabIndex: "tabIndex", navigable: "navigable" }, outputs: { navigate: "navigate" }, host: { properties: { "class.k-button-group": "this.wrapperClasses", "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: [
984
993
  KendoButtonService,
985
994
  LocalizationService,
986
995
  {
@@ -989,11 +998,13 @@ class ButtonGroupComponent {
989
998
  }
990
999
  ], queries: [{ propertyName: "buttons", predicate: ButtonComponent }], exportAs: ["kendoButtonGroup"], usesOnChanges: true, ngImport: i0, template: `
991
1000
  <ng-content select="[kendoButton]"></ng-content>
992
- `, isInline: true });
1001
+ `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
993
1002
  }
994
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ButtonGroupComponent, decorators: [{
1003
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ButtonGroupComponent, decorators: [{
995
1004
  type: Component,
996
1005
  args: [{
1006
+ selector: 'kendo-buttongroup',
1007
+ changeDetection: ChangeDetectionStrategy.OnPush,
997
1008
  exportAs: 'kendoButtonGroup',
998
1009
  providers: [
999
1010
  KendoButtonService,
@@ -1003,7 +1014,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
1003
1014
  useValue: 'kendo.buttongroup'
1004
1015
  }
1005
1016
  ],
1006
- selector: 'kendo-buttongroup',
1007
1017
  template: `
1008
1018
  <ng-content select="[kendoButton]"></ng-content>
1009
1019
  `,
@@ -1064,8 +1074,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
1064
1074
  class ChipComponent {
1065
1075
  element;
1066
1076
  renderer;
1067
- ngZone;
1068
1077
  localizationService;
1078
+ ngZone;
1069
1079
  /**
1070
1080
  * Sets the label text of the Chip.
1071
1081
  *
@@ -1096,7 +1106,13 @@ class ChipComponent {
1096
1106
  * Specifies the selected state of the Chip.
1097
1107
  * @default false
1098
1108
  */
1099
- selected = false;
1109
+ set selected(value) {
1110
+ this._selected.set(value);
1111
+ this.setAriSelected(value);
1112
+ }
1113
+ get selected() {
1114
+ return this._selected();
1115
+ }
1100
1116
  /**
1101
1117
  * Specifies if the Chip is removable.
1102
1118
  * If set to `true`, the Chip renders a remove icon.
@@ -1201,15 +1217,17 @@ class ChipComponent {
1201
1217
  return this.disabled || null;
1202
1218
  }
1203
1219
  get selectedClass() {
1204
- return this.selected;
1220
+ return this._selected();
1205
1221
  }
1206
1222
  get focusedClass() {
1207
- return this.focused;
1223
+ return this._focused();
1208
1224
  }
1209
1225
  /**
1210
1226
  * @hidden
1211
1227
  */
1212
- direction;
1228
+ get direction() {
1229
+ return this._direction();
1230
+ }
1213
1231
  /**
1214
1232
  * @hidden
1215
1233
  */
@@ -1226,33 +1244,27 @@ class ChipComponent {
1226
1244
  _rounded = undefined;
1227
1245
  _fillMode = undefined;
1228
1246
  _themeColor = undefined;
1229
- focused = false;
1247
+ _focused = signal(false, ...(ngDevMode ? [{ debugName: "_focused" }] : []));
1248
+ _selected = signal(false, ...(ngDevMode ? [{ debugName: "_selected" }] : []));
1249
+ _direction = signal('', ...(ngDevMode ? [{ debugName: "_direction" }] : []));
1230
1250
  subs = new Subscription();
1231
- constructor(element, renderer, ngZone, localizationService) {
1251
+ constructor(element, renderer, localizationService, ngZone) {
1232
1252
  this.element = element;
1233
1253
  this.renderer = renderer;
1234
- this.ngZone = ngZone;
1235
1254
  this.localizationService = localizationService;
1255
+ this.ngZone = ngZone;
1236
1256
  validatePackage(packageMetadata);
1237
- this.direction = localizationService.rtl ? 'rtl' : 'ltr';
1257
+ this._direction.set(localizationService.rtl ? 'rtl' : 'ltr');
1238
1258
  }
1239
1259
  ngOnInit() {
1240
1260
  this.subs.add(this.localizationService.changes
1241
- .subscribe(({ rtl }) => this.direction = rtl ? 'rtl' : 'ltr'));
1261
+ .subscribe(({ rtl }) => this._direction.set(rtl ? 'rtl' : 'ltr')));
1242
1262
  this.renderer.setAttribute(this.element.nativeElement, 'role', 'button');
1243
- this.renderer.setAttribute(this.element.nativeElement, 'aria-pressed', `${this.selected}`);
1263
+ this.renderer.setAttribute(this.element.nativeElement, 'aria-pressed', `${this._selected()}`);
1244
1264
  }
1245
1265
  ngOnDestroy() {
1246
1266
  this.subs.unsubscribe();
1247
1267
  }
1248
- ngOnChanges(changes) {
1249
- if (changes?.['selected']) {
1250
- const hasAriaSelected = this.element.nativeElement.hasAttribute('aria-selected');
1251
- if (!hasAriaSelected) {
1252
- this.renderer.setAttribute(this.element.nativeElement, 'aria-pressed', `${this.selected}`);
1253
- }
1254
- }
1255
- }
1256
1268
  ngAfterViewInit() {
1257
1269
  const chip = this.element.nativeElement;
1258
1270
  this.attachElementEventHandlers(chip);
@@ -1380,14 +1392,20 @@ class ChipComponent {
1380
1392
  });
1381
1393
  }
1382
1394
  }
1383
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ChipComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
1384
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: ChipComponent, isStandalone: true, selector: "kendo-chip", inputs: { label: "label", icon: "icon", svgIcon: "svgIcon", iconClass: "iconClass", avatarSettings: "avatarSettings", selected: "selected", removable: "removable", removeIcon: "removeIcon", removeSvgIcon: "removeSvgIcon", hasMenu: "hasMenu", menuIcon: "menuIcon", menuSvgIcon: "menuSvgIcon", disabled: "disabled", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor" }, outputs: { remove: "remove", menuToggle: "menuToggle", contentClick: "contentClick" }, host: { properties: { "attr.tabindex": "this.tabIndex", "class.k-chip": "this.hostClass", "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: [
1395
+ setAriSelected(value) {
1396
+ const hasAriaSelected = this.element?.nativeElement.hasAttribute('aria-selected');
1397
+ if (!hasAriaSelected) {
1398
+ this.renderer.setAttribute(this.element.nativeElement, 'aria-pressed', `${value}`);
1399
+ }
1400
+ }
1401
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChipComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1402
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: ChipComponent, isStandalone: true, selector: "kendo-chip", inputs: { label: "label", icon: "icon", svgIcon: "svgIcon", iconClass: "iconClass", avatarSettings: "avatarSettings", selected: "selected", removable: "removable", removeIcon: "removeIcon", removeSvgIcon: "removeSvgIcon", hasMenu: "hasMenu", menuIcon: "menuIcon", menuSvgIcon: "menuSvgIcon", disabled: "disabled", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor" }, outputs: { remove: "remove", menuToggle: "menuToggle", contentClick: "contentClick" }, host: { properties: { "attr.tabindex": "this.tabIndex", "class.k-chip": "this.hostClass", "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: [
1385
1403
  LocalizationService,
1386
1404
  {
1387
1405
  provide: L10N_PREFIX,
1388
1406
  useValue: 'kendo.chip'
1389
1407
  }
1390
- ], usesOnChanges: true, ngImport: i0, template: `
1408
+ ], ngImport: i0, template: `
1391
1409
  @if (icon || svgIcon) {
1392
1410
  <kendo-icon-wrapper
1393
1411
  size="small"
@@ -1452,12 +1470,13 @@ class ChipComponent {
1452
1470
  }
1453
1471
  </span>
1454
1472
  }
1455
- `, isInline: true, dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
1473
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1456
1474
  }
1457
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ChipComponent, decorators: [{
1475
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChipComponent, decorators: [{
1458
1476
  type: Component,
1459
1477
  args: [{
1460
1478
  selector: 'kendo-chip',
1479
+ changeDetection: ChangeDetectionStrategy.OnPush,
1461
1480
  template: `
1462
1481
  @if (icon || svgIcon) {
1463
1482
  <kendo-icon-wrapper
@@ -1534,7 +1553,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
1534
1553
  standalone: true,
1535
1554
  imports: [NgStyle, IconWrapperComponent]
1536
1555
  }]
1537
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: i1.LocalizationService }], propDecorators: { label: [{
1556
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.LocalizationService }, { type: i0.NgZone }], propDecorators: { label: [{
1538
1557
  type: Input
1539
1558
  }], icon: [{
1540
1559
  type: Input
@@ -1623,7 +1642,9 @@ class ChipListComponent {
1623
1642
  /**
1624
1643
  * @hidden
1625
1644
  */
1626
- direction;
1645
+ get direction() {
1646
+ return this._direction();
1647
+ }
1627
1648
  /**
1628
1649
  * Sets the selection mode of the ChipList.
1629
1650
  *
@@ -1662,6 +1683,7 @@ class ChipListComponent {
1662
1683
  _size = undefined;
1663
1684
  subs = new Subscription();
1664
1685
  _navigable = true;
1686
+ _direction = signal('', ...(ngDevMode ? [{ debugName: "_direction" }] : []));
1665
1687
  /**
1666
1688
  * @hidden
1667
1689
  */
@@ -1712,11 +1734,11 @@ class ChipListComponent {
1712
1734
  this.element = element;
1713
1735
  this.ngZone = ngZone;
1714
1736
  validatePackage(packageMetadata);
1715
- this.direction = localizationService.rtl ? 'rtl' : 'ltr';
1737
+ this._direction.set(localizationService.rtl ? 'rtl' : 'ltr');
1716
1738
  }
1717
1739
  ngOnInit() {
1718
1740
  this.dynamicRTLSubscription = this.localizationService.changes
1719
- .subscribe(({ rtl }) => this.direction = rtl ? 'rtl' : 'ltr');
1741
+ .subscribe(({ rtl }) => this._direction.set(rtl ? 'rtl' : 'ltr'));
1720
1742
  }
1721
1743
  ngAfterViewInit() {
1722
1744
  const stylingInputs = ['size'];
@@ -1871,8 +1893,8 @@ class ChipListComponent {
1871
1893
  chip.sizeIsSet = false;
1872
1894
  }
1873
1895
  }
1874
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ChipListComponent, deps: [{ token: i1.LocalizationService }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1875
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: ChipListComponent, isStandalone: true, selector: "kendo-chiplist, kendo-chip-list", inputs: { orientation: "orientation", selection: "selection", size: "size", role: "role", navigable: "navigable" }, 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", "attr.aria-multiselectable": "this.multiple", "attr.role": "this.role" } }, providers: [
1896
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChipListComponent, deps: [{ token: i1.LocalizationService }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1897
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: ChipListComponent, isStandalone: true, selector: "kendo-chiplist, kendo-chip-list", inputs: { orientation: "orientation", selection: "selection", size: "size", role: "role", navigable: "navigable" }, 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", "attr.aria-multiselectable": "this.multiple", "attr.role": "this.role" } }, providers: [
1876
1898
  LocalizationService,
1877
1899
  {
1878
1900
  provide: L10N_PREFIX,
@@ -1880,12 +1902,13 @@ class ChipListComponent {
1880
1902
  }
1881
1903
  ], queries: [{ propertyName: "chips", predicate: ChipComponent }], ngImport: i0, template: `
1882
1904
  <ng-content></ng-content>
1883
- `, isInline: true });
1905
+ `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
1884
1906
  }
1885
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ChipListComponent, decorators: [{
1907
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChipListComponent, decorators: [{
1886
1908
  type: Component,
1887
1909
  args: [{
1888
1910
  selector: 'kendo-chiplist, kendo-chip-list',
1911
+ changeDetection: ChangeDetectionStrategy.OnPush,
1889
1912
  template: `
1890
1913
  <ng-content></ng-content>
1891
1914
  `,
@@ -1966,10 +1989,10 @@ class ButtonItemTemplateDirective {
1966
1989
  constructor(templateRef) {
1967
1990
  this.templateRef = templateRef;
1968
1991
  }
1969
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ButtonItemTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
1970
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.25", type: ButtonItemTemplateDirective, isStandalone: true, selector: "[kendoDropDownButtonItemTemplate],[kendoSplitButtonItemTemplate]", ngImport: i0 });
1992
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ButtonItemTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
1993
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.25", type: ButtonItemTemplateDirective, isStandalone: true, selector: "[kendoDropDownButtonItemTemplate],[kendoSplitButtonItemTemplate]", ngImport: i0 });
1971
1994
  }
1972
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ButtonItemTemplateDirective, decorators: [{
1995
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ButtonItemTemplateDirective, decorators: [{
1973
1996
  type: Directive,
1974
1997
  args: [{
1975
1998
  selector: '[kendoDropDownButtonItemTemplate],[kendoSplitButtonItemTemplate]',
@@ -2003,10 +2026,10 @@ class FocusService {
2003
2026
  this.focusedIndex = index;
2004
2027
  this.onFocus.emit(index);
2005
2028
  }
2006
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: FocusService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2007
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: FocusService });
2029
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FocusService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2030
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FocusService });
2008
2031
  }
2009
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: FocusService, decorators: [{
2032
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FocusService, decorators: [{
2010
2033
  type: Injectable
2011
2034
  }] });
2012
2035
 
@@ -2132,10 +2155,10 @@ class NavigationService {
2132
2155
  return args.current !== args.end ? args.current + args.step : args.end;
2133
2156
  }
2134
2157
  }
2135
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: NavigationService, deps: [{ token: NAVIGATION_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable });
2136
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: NavigationService });
2158
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: NavigationService, deps: [{ token: NAVIGATION_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable });
2159
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: NavigationService });
2137
2160
  }
2138
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: NavigationService, decorators: [{
2161
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: NavigationService, decorators: [{
2139
2162
  type: Injectable
2140
2163
  }], ctorParameters: () => [{ type: undefined, decorators: [{
2141
2164
  type: Inject,
@@ -2148,10 +2171,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
2148
2171
  class PopupContainerService {
2149
2172
  container;
2150
2173
  template;
2151
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: PopupContainerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2152
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: PopupContainerService });
2174
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PopupContainerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2175
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PopupContainerService });
2153
2176
  }
2154
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: PopupContainerService, decorators: [{
2177
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PopupContainerService, decorators: [{
2155
2178
  type: Injectable
2156
2179
  }] });
2157
2180
 
@@ -2200,10 +2223,10 @@ class FocusableDirective {
2200
2223
  }
2201
2224
  }));
2202
2225
  }
2203
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: FocusableDirective, deps: [{ token: FocusService }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
2204
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.25", type: FocusableDirective, isStandalone: true, selector: "[kendoButtonFocusable]", inputs: { index: "index" }, ngImport: i0 });
2226
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FocusableDirective, deps: [{ token: FocusService }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
2227
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.25", type: FocusableDirective, isStandalone: true, selector: "[kendoButtonFocusable]", inputs: { index: "index" }, ngImport: i0 });
2205
2228
  }
2206
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: FocusableDirective, decorators: [{
2229
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FocusableDirective, decorators: [{
2207
2230
  type: Directive,
2208
2231
  args: [{
2209
2232
  selector: '[kendoButtonFocusable]',
@@ -2252,8 +2275,8 @@ class ListComponent {
2252
2275
  onBlur() {
2253
2276
  this.onItemBlur.emit();
2254
2277
  }
2255
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2256
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: ListComponent, isStandalone: true, selector: "kendo-button-list", inputs: { data: "data", textField: "textField", itemTemplate: "itemTemplate", size: "size" }, outputs: { onItemClick: "onItemClick", onItemBlur: "onItemBlur" }, ngImport: i0, template: `
2278
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2279
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: ListComponent, isStandalone: true, selector: "kendo-button-list", inputs: { data: "data", textField: "textField", itemTemplate: "itemTemplate", size: "size" }, outputs: { onItemClick: "onItemClick", onItemBlur: "onItemBlur" }, ngImport: i0, template: `
2257
2280
  <ul class="k-menu-group" role="list" [ngClass]="sizeClass">
2258
2281
  @for (dataItem of data; track dataItem; let index = $index; let isFirst = $first; let isLast = $last) {
2259
2282
  <li kendoButtonFocusable
@@ -2307,7 +2330,7 @@ class ListComponent {
2307
2330
  </ul>
2308
2331
  `, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: FocusableDirective, selector: "[kendoButtonFocusable]", inputs: ["index"] }, { kind: "directive", type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
2309
2332
  }
2310
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ListComponent, decorators: [{
2333
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ListComponent, decorators: [{
2311
2334
  type: Component,
2312
2335
  args: [{
2313
2336
  selector: 'kendo-button-list',
@@ -2388,7 +2411,7 @@ class ListButton extends MultiTabStop {
2388
2411
  focusService;
2389
2412
  navigationService;
2390
2413
  wrapperRef;
2391
- _zone;
2414
+ zone;
2392
2415
  popupService;
2393
2416
  elRef;
2394
2417
  cdr;
@@ -2396,16 +2419,16 @@ class ListButton extends MultiTabStop {
2396
2419
  listId = guid();
2397
2420
  buttonId = guid();
2398
2421
  _data;
2399
- _open = false;
2422
+ _open = signal(false, ...(ngDevMode ? [{ debugName: "_open" }] : []));
2400
2423
  _disabled = false;
2401
- _active = false;
2424
+ _active = signal(false, ...(ngDevMode ? [{ debugName: "_active" }] : []));
2402
2425
  _popupSettings = { animate: true, popupClass: '' };
2403
2426
  _isFocused = false;
2404
2427
  _itemClick;
2405
2428
  _blur;
2406
2429
  wrapper;
2407
2430
  subs = new Subscription();
2408
- direction;
2431
+ direction = signal(undefined, ...(ngDevMode ? [{ debugName: "direction" }] : []));
2409
2432
  popupRef;
2410
2433
  popupSubs = new Subscription();
2411
2434
  button;
@@ -2480,7 +2503,7 @@ class ListButton extends MultiTabStop {
2480
2503
  */
2481
2504
  get anchorAlign() {
2482
2505
  const align = { horizontal: this.popupSettings.align || 'left', vertical: 'bottom' };
2483
- if (this.direction === 'rtl' && !isPresent(this.popupSettings.align)) {
2506
+ if (this.direction() === 'rtl' && !isPresent(this.popupSettings.align)) {
2484
2507
  align.horizontal = 'right';
2485
2508
  }
2486
2509
  return align;
@@ -2490,18 +2513,18 @@ class ListButton extends MultiTabStop {
2490
2513
  */
2491
2514
  get popupAlign() {
2492
2515
  const align = { horizontal: this.popupSettings.align || 'left', vertical: 'top' };
2493
- if (this.direction === 'rtl' && !isPresent(this.popupSettings.align)) {
2516
+ if (this.direction() === 'rtl' && !isPresent(this.popupSettings.align)) {
2494
2517
  align.horizontal = 'right';
2495
2518
  }
2496
2519
  return align;
2497
2520
  }
2498
2521
  isClosePrevented = false;
2499
- constructor(focusService, navigationService, wrapperRef, _zone, popupService, elRef, localization, cdr, containerService) {
2522
+ constructor(focusService, navigationService, wrapperRef, zone, popupService, elRef, localization, cdr, containerService) {
2500
2523
  super();
2501
2524
  this.focusService = focusService;
2502
2525
  this.navigationService = navigationService;
2503
2526
  this.wrapperRef = wrapperRef;
2504
- this._zone = _zone;
2527
+ this.zone = zone;
2505
2528
  this.popupService = popupService;
2506
2529
  this.elRef = elRef;
2507
2530
  this.cdr = cdr;
@@ -2510,7 +2533,7 @@ class ListButton extends MultiTabStop {
2510
2533
  this.focusService = focusService;
2511
2534
  this.navigationService = navigationService;
2512
2535
  this.wrapper = wrapperRef.nativeElement;
2513
- this.subs.add(localization.changes.subscribe(({ rtl }) => (this.direction = rtl ? 'rtl' : 'ltr')));
2536
+ this.subs.add(localization.changes.subscribe(({ rtl }) => (this.direction.set(rtl ? 'rtl' : 'ltr'))));
2514
2537
  this.subscribeEvents();
2515
2538
  }
2516
2539
  ngOnChanges(changes) {
@@ -2534,7 +2557,7 @@ class ListButton extends MultiTabStop {
2534
2557
  return popupClasses.join(' ');
2535
2558
  }
2536
2559
  get openState() {
2537
- return this._open;
2560
+ return this._open();
2538
2561
  }
2539
2562
  /**
2540
2563
  * @hidden
@@ -2543,13 +2566,13 @@ class ListButton extends MultiTabStop {
2543
2566
  if (this.disabled) {
2544
2567
  return;
2545
2568
  }
2546
- this._open = open;
2569
+ this._open.set(open);
2547
2570
  }
2548
2571
  /**
2549
2572
  * Returns the current open state of the popup.
2550
2573
  */
2551
2574
  get isOpen() {
2552
- return this._open;
2575
+ return this._open();
2553
2576
  }
2554
2577
  /**
2555
2578
  * @hidden
@@ -2596,11 +2619,11 @@ class ListButton extends MultiTabStop {
2596
2619
  }));
2597
2620
  }
2598
2621
  subscribeComponentBlurredEvent() {
2599
- this._zone.runOutsideAngular(() => {
2622
+ this.zone.runOutsideAngular(() => {
2600
2623
  this.subs.add(this.navigationService.tab.pipe(filter(() => this._isFocused), tap(() => this.focusButton())).subscribe(this.handleTab.bind(this)));
2601
2624
  this.subs.add(fromEvent(document, 'click')
2602
2625
  .pipe(filter((event) => !this.wrapperContains(event.target)), filter(() => this._isFocused))
2603
- .subscribe(() => this._zone.run(() => this.blurWrapper())));
2626
+ .subscribe(() => this.zone.run(() => this.blurWrapper())));
2604
2627
  });
2605
2628
  }
2606
2629
  subscribeNavigationEvents() {
@@ -2707,7 +2730,7 @@ class ListButton extends MultiTabStop {
2707
2730
  }
2708
2731
  onNavigationEnterUp(_args) {
2709
2732
  if (!this._disabled && !this.openState) {
2710
- this._active = false;
2733
+ this._active.set(false);
2711
2734
  }
2712
2735
  if (this.openState) {
2713
2736
  const focused = this.focusService.focused;
@@ -2787,12 +2810,13 @@ class ListButton extends MultiTabStop {
2787
2810
  this.isClosePrevented = false;
2788
2811
  }
2789
2812
  }
2790
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", 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 });
2791
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: ListButton, isStandalone: true, selector: "ng-component", inputs: { disabled: "disabled", tabIndex: "tabIndex", buttonClass: "buttonClass", popupSettings: "popupSettings" }, outputs: { open: "open", close: "close", escape: "escape" }, 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 }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: '', isInline: true });
2813
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", 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 });
2814
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: ListButton, isStandalone: true, selector: "ng-component", inputs: { disabled: "disabled", tabIndex: "tabIndex", buttonClass: "buttonClass", popupSettings: "popupSettings" }, outputs: { open: "open", close: "close", escape: "escape" }, 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 }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
2792
2815
  }
2793
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ListButton, decorators: [{
2816
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ListButton, decorators: [{
2794
2817
  type: Component,
2795
2818
  args: [{
2819
+ changeDetection: ChangeDetectionStrategy.OnPush,
2796
2820
  template: ''
2797
2821
  }]
2798
2822
  }], ctorParameters: () => [{ 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: { button: [{
@@ -2897,24 +2921,39 @@ class DropDownButtonComponent extends ListButton {
2897
2921
  /**
2898
2922
  * Specifies the padding of the DropDownButton. See [DropDownButton Appearance](https://www.telerik.com/kendo-angular-ui/components/buttons/dropdownbutton/appearance#size). The default value is set by the Kendo theme.
2899
2923
  */
2900
- size = undefined;
2924
+ set size(size) {
2925
+ this._size.set(size);
2926
+ }
2927
+ get size() {
2928
+ return this._size();
2929
+ }
2901
2930
  /**
2902
2931
  * Specifies the border radius of the DropDownButton. See [DropDownButton Appearance](https://www.telerik.com/kendo-angular-ui/components/buttons/dropdownbutton/appearance#roundness). The default value is set by the Kendo theme.
2903
2932
  */
2904
- rounded = undefined;
2933
+ set rounded(rounded) {
2934
+ this._rounded.set(rounded);
2935
+ }
2936
+ get rounded() {
2937
+ return this._rounded();
2938
+ }
2905
2939
  /**
2906
2940
  * Specifies the background and border styles of the DropDownButton. See [DropDownButton Appearance](https://www.telerik.com/kendo-angular-ui/components/buttons/dropdownbutton/appearance#fill-mode). The default value is set by the Kendo theme.
2907
2941
  */
2908
2942
  set fillMode(fillMode) {
2909
- this._fillMode = fillMode === 'clear' ? 'flat' : fillMode;
2943
+ this._fillMode.set(fillMode === 'clear' ? 'flat' : fillMode);
2910
2944
  }
2911
2945
  get fillMode() {
2912
- return this._fillMode;
2946
+ return this._fillMode();
2913
2947
  }
2914
2948
  /**
2915
2949
  * Specifies predefined theme colors for the DropDownButton. See [DropDownButton Appearance](https://www.telerik.com/kendo-angular-ui/components/buttons/dropdownbutton/appearance#theme-colors).
2916
2950
  */
2917
- themeColor = undefined;
2951
+ set themeColor(themeColor) {
2952
+ this._themeColor.set(themeColor);
2953
+ }
2954
+ get themeColor() {
2955
+ return this._themeColor();
2956
+ }
2918
2957
  /**
2919
2958
  * Sets attributes for the main button.
2920
2959
  */
@@ -2944,16 +2983,19 @@ class DropDownButtonComponent extends ListButton {
2944
2983
  }
2945
2984
  hostDisplayStyle = 'inline-flex';
2946
2985
  get dir() {
2947
- return this.direction;
2986
+ return this.direction();
2948
2987
  }
2949
2988
  /**
2950
2989
  * @hidden
2951
2990
  */
2952
2991
  get active() {
2953
- return this._active;
2992
+ return this._active();
2954
2993
  }
2955
2994
  itemTemplate;
2956
- _fillMode = undefined;
2995
+ _size = signal(undefined, ...(ngDevMode ? [{ debugName: "_size" }] : []));
2996
+ _rounded = signal(undefined, ...(ngDevMode ? [{ debugName: "_rounded" }] : []));
2997
+ _fillMode = signal(undefined, ...(ngDevMode ? [{ debugName: "_fillMode" }] : []));
2998
+ _themeColor = signal(undefined, ...(ngDevMode ? [{ debugName: "_themeColor" }] : []));
2957
2999
  _buttonAttributes = null;
2958
3000
  documentMouseUpSub;
2959
3001
  /**
@@ -2963,10 +3005,10 @@ class DropDownButtonComponent extends ListButton {
2963
3005
  this.keyDownHandler(event, true);
2964
3006
  const code = normalizeKeys(event);
2965
3007
  if (code === Keys.Space) {
2966
- this._active = true;
3008
+ this._active.set(true);
2967
3009
  }
2968
3010
  if (code === Keys.Enter) {
2969
- this._active = true;
3011
+ this._active.set(true);
2970
3012
  event.preventDefault();
2971
3013
  }
2972
3014
  }
@@ -2975,7 +3017,7 @@ class DropDownButtonComponent extends ListButton {
2975
3017
  */
2976
3018
  keyup(event) {
2977
3019
  this.keyUpHandler(event);
2978
- this._active = false;
3020
+ this._active.set(false);
2979
3021
  }
2980
3022
  /**
2981
3023
  * @hidden
@@ -2985,7 +3027,7 @@ class DropDownButtonComponent extends ListButton {
2985
3027
  event.preventDefault();
2986
3028
  }
2987
3029
  else {
2988
- this._active = true;
3030
+ this._active.set(true);
2989
3031
  }
2990
3032
  }
2991
3033
  /**
@@ -2995,7 +3037,7 @@ class DropDownButtonComponent extends ListButton {
2995
3037
  if (this._disabled) {
2996
3038
  event.preventDefault();
2997
3039
  }
2998
- this._active = false;
3040
+ this._active.set(false);
2999
3041
  }
3000
3042
  /**
3001
3043
  * @hidden
@@ -3038,7 +3080,7 @@ class DropDownButtonComponent extends ListButton {
3038
3080
  zone.runOutsideAngular(() => {
3039
3081
  this.documentMouseUpSub = this.renderer.listen('document', 'mouseup', () => {
3040
3082
  if (this.active) {
3041
- zone.run(() => this._active = false);
3083
+ zone.run(() => this._active.set(false));
3042
3084
  }
3043
3085
  });
3044
3086
  });
@@ -3098,8 +3140,8 @@ class DropDownButtonComponent extends ListButton {
3098
3140
  }
3099
3141
  super.ngOnDestroy();
3100
3142
  }
3101
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", 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 }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
3102
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: DropDownButtonComponent, isStandalone: true, selector: "kendo-dropdownbutton", inputs: { arrowIcon: "arrowIcon", icon: "icon", svgIcon: "svgIcon", iconClass: "iconClass", imageUrl: "imageUrl", textField: "textField", data: "data", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor", buttonAttributes: "buttonAttributes" }, 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", "style.display": "this.hostDisplayStyle", "attr.dir": "this.dir" } }, providers: [
3143
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", 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 }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
3144
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: DropDownButtonComponent, isStandalone: true, selector: "kendo-dropdownbutton", inputs: { arrowIcon: "arrowIcon", icon: "icon", svgIcon: "svgIcon", iconClass: "iconClass", imageUrl: "imageUrl", textField: "textField", data: "data", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor", buttonAttributes: "buttonAttributes" }, 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", "style.display": "this.hostDisplayStyle", "attr.dir": "this.dir" } }, providers: [
3103
3145
  FocusService,
3104
3146
  NavigationService,
3105
3147
  NAVIGATION_SETTINGS_PROVIDER$2,
@@ -3153,11 +3195,13 @@ class DropDownButtonComponent extends ListButton {
3153
3195
  </kendo-button-list>
3154
3196
  </ng-template>
3155
3197
  <ng-container #container></ng-container>
3156
- `, isInline: true, dependencies: [{ kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconPosition", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ListComponent, selector: "kendo-button-list", inputs: ["data", "textField", "itemTemplate", "size"], outputs: ["onItemClick", "onItemBlur"] }] });
3198
+ `, isInline: true, dependencies: [{ kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconPosition", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ListComponent, selector: "kendo-button-list", inputs: ["data", "textField", "itemTemplate", "size"], outputs: ["onItemClick", "onItemBlur"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3157
3199
  }
3158
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DropDownButtonComponent, decorators: [{
3200
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DropDownButtonComponent, decorators: [{
3159
3201
  type: Component,
3160
3202
  args: [{
3203
+ selector: 'kendo-dropdownbutton',
3204
+ changeDetection: ChangeDetectionStrategy.OnPush,
3161
3205
  exportAs: 'kendoDropDownButton',
3162
3206
  providers: [
3163
3207
  FocusService,
@@ -3170,7 +3214,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
3170
3214
  },
3171
3215
  PopupContainerService
3172
3216
  ],
3173
- selector: 'kendo-dropdownbutton',
3174
3217
  template: `
3175
3218
  <button kendoButton #button
3176
3219
  type="button"
@@ -3360,10 +3403,10 @@ class DialItemTemplateDirective {
3360
3403
  constructor(templateRef) {
3361
3404
  this.templateRef = templateRef;
3362
3405
  }
3363
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DialItemTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
3364
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.25", type: DialItemTemplateDirective, isStandalone: true, selector: "[kendoDialItemTemplate]", ngImport: i0 });
3406
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DialItemTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
3407
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.25", type: DialItemTemplateDirective, isStandalone: true, selector: "[kendoDialItemTemplate]", ngImport: i0 });
3365
3408
  }
3366
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DialItemTemplateDirective, decorators: [{
3409
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DialItemTemplateDirective, decorators: [{
3367
3410
  type: Directive,
3368
3411
  args: [{
3369
3412
  selector: '[kendoDialItemTemplate]',
@@ -3393,10 +3436,10 @@ class FloatingActionButtonTemplateDirective {
3393
3436
  constructor(templateRef) {
3394
3437
  this.templateRef = templateRef;
3395
3438
  }
3396
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: FloatingActionButtonTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
3397
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.25", type: FloatingActionButtonTemplateDirective, isStandalone: true, selector: "[kendoFloatingActionButtonTemplate]", ngImport: i0 });
3439
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FloatingActionButtonTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
3440
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.25", type: FloatingActionButtonTemplateDirective, isStandalone: true, selector: "[kendoFloatingActionButtonTemplate]", ngImport: i0 });
3398
3441
  }
3399
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: FloatingActionButtonTemplateDirective, decorators: [{
3442
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FloatingActionButtonTemplateDirective, decorators: [{
3400
3443
  type: Directive,
3401
3444
  args: [{
3402
3445
  selector: '[kendoFloatingActionButtonTemplate]',
@@ -3467,8 +3510,8 @@ class DialItemComponent {
3467
3510
  };
3468
3511
  return directions[dir][align];
3469
3512
  }
3470
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DialItemComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
3471
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: DialItemComponent, isStandalone: true, 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: `
3513
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DialItemComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
3514
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: DialItemComponent, isStandalone: true, 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: `
3472
3515
  @if (dialItemTemplate) {
3473
3516
  <ng-template
3474
3517
  [ngTemplateOutlet]="dialItemTemplate"
@@ -3491,7 +3534,7 @@ class DialItemComponent {
3491
3534
  }
3492
3535
  `, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
3493
3536
  }
3494
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DialItemComponent, decorators: [{
3537
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DialItemComponent, decorators: [{
3495
3538
  type: Component,
3496
3539
  args: [{
3497
3540
  selector: '[kendoDialItem]',
@@ -3585,8 +3628,8 @@ class DialListComponent {
3585
3628
  ngOnDestroy() {
3586
3629
  this.subscriptions.unsubscribe();
3587
3630
  }
3588
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DialListComponent, deps: [{ token: FocusService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
3589
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: DialListComponent, isStandalone: true, 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: `
3631
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DialListComponent, deps: [{ token: FocusService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
3632
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: DialListComponent, isStandalone: true, 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: `
3590
3633
  @for (item of dialItems; track item; let idx = $index) {
3591
3634
  <li
3592
3635
  kendoButtonFocusable
@@ -3603,7 +3646,7 @@ class DialListComponent {
3603
3646
  }
3604
3647
  `, isInline: true, dependencies: [{ kind: "directive", type: FocusableDirective, selector: "[kendoButtonFocusable]", inputs: ["index"] }, { kind: "component", type: DialItemComponent, selector: "[kendoDialItem]", inputs: ["cssClass", "cssStyle", "isFocused", "index", "item", "dialItemTemplate", "align"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
3605
3648
  }
3606
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DialListComponent, decorators: [{
3649
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DialListComponent, decorators: [{
3607
3650
  type: Component,
3608
3651
  args: [{
3609
3652
  selector: '[kendoDialList]',
@@ -3684,17 +3727,19 @@ class FloatingActionButtonComponent {
3684
3727
  element;
3685
3728
  focusService;
3686
3729
  navigationService;
3687
- ngZone;
3688
3730
  popupService;
3689
3731
  builder;
3690
3732
  localizationService;
3733
+ ngZone;
3691
3734
  get fixedClass() {
3692
3735
  return this.positionMode === 'fixed';
3693
3736
  }
3694
3737
  get absoluteClass() {
3695
3738
  return this.positionMode === 'absolute';
3696
3739
  }
3697
- direction;
3740
+ get direction() {
3741
+ return this._direction();
3742
+ }
3698
3743
  button;
3699
3744
  popupTemplate;
3700
3745
  dialItemTemplate;
@@ -3850,6 +3895,7 @@ class FloatingActionButtonComponent {
3850
3895
  _disabled = false;
3851
3896
  _align = { horizontal: 'end', vertical: 'bottom' };
3852
3897
  _offset = { x: DEFAULT_OFFSET, y: DEFAULT_OFFSET };
3898
+ _direction = signal(undefined, ...(ngDevMode ? [{ debugName: "_direction" }] : []));
3853
3899
  subscriptions = new Subscription();
3854
3900
  popupMouseDownListener;
3855
3901
  rtl = false;
@@ -3857,20 +3903,21 @@ class FloatingActionButtonComponent {
3857
3903
  popupRef;
3858
3904
  initialSetup = true;
3859
3905
  focusChangedProgrammatically = false;
3860
- constructor(renderer, element, focusService, navigationService, ngZone, popupService, builder, localizationService) {
3906
+ constructor(renderer, element, focusService, navigationService, popupService, builder, localizationService, ngZone) {
3861
3907
  this.renderer = renderer;
3862
3908
  this.element = element;
3863
3909
  this.focusService = focusService;
3864
3910
  this.navigationService = navigationService;
3865
- this.ngZone = ngZone;
3866
3911
  this.popupService = popupService;
3867
3912
  this.builder = builder;
3868
3913
  this.localizationService = localizationService;
3914
+ this.ngZone = ngZone;
3869
3915
  validatePackage(packageMetadata);
3870
3916
  this.subscribeNavigationEvents();
3917
+ this._direction.set(this.localizationService.rtl ? 'rtl' : 'ltr');
3871
3918
  this.subscriptions.add(this.localizationService.changes.subscribe(({ rtl }) => {
3872
3919
  this.rtl = rtl;
3873
- this.direction = this.rtl ? 'rtl' : 'ltr';
3920
+ this._direction.set(rtl ? 'rtl' : 'ltr');
3874
3921
  }));
3875
3922
  }
3876
3923
  ngAfterViewInit() {
@@ -3926,7 +3973,9 @@ class FloatingActionButtonComponent {
3926
3973
  return;
3927
3974
  }
3928
3975
  if (shouldOpen) {
3929
- setTimeout(() => this.openDial());
3976
+ this.ngZone.runOutsideAngular(() => {
3977
+ setTimeout(() => this.openDial());
3978
+ });
3930
3979
  }
3931
3980
  else {
3932
3981
  this.closeDial();
@@ -4337,8 +4386,8 @@ class FloatingActionButtonComponent {
4337
4386
  }
4338
4387
  return DEFAULT_DURATION;
4339
4388
  }
4340
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", 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 });
4341
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: FloatingActionButtonComponent, isStandalone: true, 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: [
4389
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FloatingActionButtonComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: FocusService }, { token: NavigationService }, { token: i3.PopupService }, { token: i4.AnimationBuilder }, { token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
4390
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: FloatingActionButtonComponent, isStandalone: true, 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: [
4342
4391
  FocusService,
4343
4392
  NavigationService,
4344
4393
  NAVIGATION_SETTINGS_PROVIDER$1,
@@ -4409,12 +4458,13 @@ class FloatingActionButtonComponent {
4409
4458
  >
4410
4459
  </ul>
4411
4460
  </ng-template>
4412
- `, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: DialListComponent, selector: "[kendoDialList]", inputs: ["dialItems", "dialItemTemplate", "align"] }] });
4461
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: DialListComponent, selector: "[kendoDialList]", inputs: ["dialItems", "dialItemTemplate", "align"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4413
4462
  }
4414
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: FloatingActionButtonComponent, decorators: [{
4463
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FloatingActionButtonComponent, decorators: [{
4415
4464
  type: Component,
4416
4465
  args: [{
4417
4466
  selector: 'kendo-floatingactionbutton',
4467
+ changeDetection: ChangeDetectionStrategy.OnPush,
4418
4468
  providers: [
4419
4469
  FocusService,
4420
4470
  NavigationService,
@@ -4491,7 +4541,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
4491
4541
  standalone: true,
4492
4542
  imports: [NgClass, EventsOutsideAngularDirective, NgTemplateOutlet, IconWrapperComponent, DialListComponent]
4493
4543
  }]
4494
- }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: FocusService }, { type: NavigationService }, { type: i0.NgZone }, { type: i3.PopupService }, { type: i4.AnimationBuilder }, { type: i1.LocalizationService }], propDecorators: { fixedClass: [{
4544
+ }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: FocusService }, { type: NavigationService }, { type: i3.PopupService }, { type: i4.AnimationBuilder }, { type: i1.LocalizationService }, { type: i0.NgZone }], propDecorators: { fixedClass: [{
4495
4545
  type: HostBinding,
4496
4546
  args: ['class.k-pos-fixed']
4497
4547
  }], absoluteClass: [{
@@ -4583,15 +4633,27 @@ class Messages extends ComponentMessages {
4583
4633
  * </kendo-splitbutton>
4584
4634
  * ```
4585
4635
  */
4586
- splitButtonLabel;
4636
+ set splitButtonLabel(value) {
4637
+ this._splitButtonLabel.set(value);
4638
+ }
4639
+ get splitButtonLabel() {
4640
+ return this._splitButtonLabel();
4641
+ }
4587
4642
  /**
4588
4643
  * Specifies the text for the SplitButton toggle button `aria-label`.
4589
4644
  */
4590
- toggleButtonLabel;
4591
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: Messages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
4592
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.25", type: Messages, isStandalone: true, selector: "kendo-splitbutton-messages-base", inputs: { splitButtonLabel: "splitButtonLabel", toggleButtonLabel: "toggleButtonLabel" }, usesInheritance: true, ngImport: i0 });
4645
+ set toggleButtonLabel(value) {
4646
+ this._toggleButtonLabel.set(value);
4647
+ }
4648
+ get toggleButtonLabel() {
4649
+ return this._toggleButtonLabel();
4650
+ }
4651
+ _toggleButtonLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_toggleButtonLabel" }] : []));
4652
+ _splitButtonLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_splitButtonLabel" }] : []));
4653
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: Messages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
4654
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.25", type: Messages, isStandalone: true, selector: "kendo-splitbutton-messages-base", inputs: { splitButtonLabel: "splitButtonLabel", toggleButtonLabel: "toggleButtonLabel" }, usesInheritance: true, ngImport: i0 });
4593
4655
  }
4594
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: Messages, decorators: [{
4656
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: Messages, decorators: [{
4595
4657
  type: Directive,
4596
4658
  args: [{
4597
4659
  selector: 'kendo-splitbutton-messages-base'
@@ -4615,13 +4677,13 @@ class SplitButtonCustomMessagesComponent extends Messages {
4615
4677
  get override() {
4616
4678
  return true;
4617
4679
  }
4618
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SplitButtonCustomMessagesComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
4619
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: SplitButtonCustomMessagesComponent, isStandalone: true, selector: "kendo-splitbutton-messages", providers: [{
4680
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SplitButtonCustomMessagesComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
4681
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: SplitButtonCustomMessagesComponent, isStandalone: true, selector: "kendo-splitbutton-messages", providers: [{
4620
4682
  provide: Messages,
4621
4683
  useExisting: forwardRef(() => SplitButtonCustomMessagesComponent)
4622
4684
  }], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
4623
4685
  }
4624
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SplitButtonCustomMessagesComponent, decorators: [{
4686
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SplitButtonCustomMessagesComponent, decorators: [{
4625
4687
  type: Component,
4626
4688
  args: [{
4627
4689
  providers: [{
@@ -4643,15 +4705,15 @@ class LocalizedSplitButtonMessagesDirective extends Messages {
4643
4705
  super();
4644
4706
  this.service = service;
4645
4707
  }
4646
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: LocalizedSplitButtonMessagesDirective, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
4647
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.25", type: LocalizedSplitButtonMessagesDirective, isStandalone: true, selector: "[kendoSplitButtonLocalizedMessages]", providers: [
4708
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: LocalizedSplitButtonMessagesDirective, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
4709
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.25", type: LocalizedSplitButtonMessagesDirective, isStandalone: true, selector: "[kendoSplitButtonLocalizedMessages]", providers: [
4648
4710
  {
4649
4711
  provide: Messages,
4650
4712
  useExisting: forwardRef(() => LocalizedSplitButtonMessagesDirective)
4651
4713
  }
4652
4714
  ], usesInheritance: true, ngImport: i0 });
4653
4715
  }
4654
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: LocalizedSplitButtonMessagesDirective, decorators: [{
4716
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: LocalizedSplitButtonMessagesDirective, decorators: [{
4655
4717
  type: Directive,
4656
4718
  args: [{
4657
4719
  providers: [
@@ -4734,30 +4796,40 @@ class SplitButtonComponent extends ListButton {
4734
4796
  /**
4735
4797
  * Configures the padding of the SplitButton ([see example](https://www.telerik.com/kendo-angular-ui/components/buttons/api/splitbuttoncomponent#size)). The default value is set by the Kendo theme.
4736
4798
  */
4737
- size = undefined;
4799
+ set size(size) {
4800
+ this._size.set(size);
4801
+ }
4802
+ get size() {
4803
+ return this._size();
4804
+ }
4738
4805
  /**
4739
4806
  * Configures the border radius of the SplitButton ([see example](https://www.telerik.com/kendo-angular-ui/components/buttons/api/splitbuttoncomponent#rounded)). The default value is set by the Kendo theme.
4740
4807
  */
4741
4808
  set rounded(rounded) {
4742
4809
  this.handleClasses(rounded, 'rounded');
4743
- this._rounded = rounded;
4810
+ this._rounded.set(rounded);
4744
4811
  }
4745
4812
  get rounded() {
4746
- return this._rounded;
4813
+ return this._rounded();
4747
4814
  }
4748
4815
  /**
4749
4816
  * Configures the background and border styles of the SplitButton ([see example](https://www.telerik.com/kendo-angular-ui/components/buttons/api/splitbuttoncomponent#fillmode)). The default value is set by the Kendo theme.
4750
4817
  */
4751
4818
  set fillMode(fillMode) {
4752
- this._fillMode = fillMode === 'clear' ? 'flat' : fillMode;
4819
+ this._fillMode.set(fillMode === 'clear' ? 'flat' : fillMode);
4753
4820
  }
4754
4821
  get fillMode() {
4755
- return this._fillMode;
4822
+ return this._fillMode();
4756
4823
  }
4757
4824
  /**
4758
4825
  * Configures the theme color of the SplitButton. The theme color applies to the background, border, and text ([see example](https://www.telerik.com/kendo-angular-ui/components/buttons/api/splitbuttoncomponent#themecolor)). The default value is set by the Kendo theme.
4759
4826
  */
4760
- themeColor = undefined;
4827
+ set themeColor(themeColor) {
4828
+ this._themeColor.set(themeColor);
4829
+ }
4830
+ get themeColor() {
4831
+ return this._themeColor();
4832
+ }
4761
4833
  /**
4762
4834
  * Disables the SplitButton when set to `true` ([see example](https://www.telerik.com/kendo-angular-ui/components/buttons/splitbutton/data-binding#arrays-of-complex-data)).
4763
4835
  */
@@ -4853,7 +4925,9 @@ class SplitButtonComponent extends ListButton {
4853
4925
  * Specifies a template to customize the content of the items in the drop-down list.
4854
4926
  */
4855
4927
  itemTemplate;
4856
- activeArrow = false;
4928
+ get activeArrow() {
4929
+ return this._activeArrow();
4930
+ }
4857
4931
  listId = guid();
4858
4932
  /**
4859
4933
  * @hidden
@@ -4865,7 +4939,7 @@ class SplitButtonComponent extends ListButton {
4865
4939
  * @hidden
4866
4940
  */
4867
4941
  get active() {
4868
- return this._active;
4942
+ return this._active();
4869
4943
  }
4870
4944
  /**
4871
4945
  * @hidden
@@ -4873,11 +4947,14 @@ class SplitButtonComponent extends ListButton {
4873
4947
  get componentTabIndex() {
4874
4948
  return this.disabled ? -1 : this.tabIndex;
4875
4949
  }
4876
- buttonText = '';
4950
+ buttonText = signal('', ...(ngDevMode ? [{ debugName: "buttonText" }] : []));
4877
4951
  arrowButtonClicked = false;
4878
- _rounded = undefined;
4879
- _fillMode = undefined;
4952
+ _rounded = signal(undefined, ...(ngDevMode ? [{ debugName: "_rounded" }] : []));
4953
+ _fillMode = signal(undefined, ...(ngDevMode ? [{ debugName: "_fillMode" }] : []));
4954
+ _themeColor = signal(undefined, ...(ngDevMode ? [{ debugName: "_themeColor" }] : []));
4955
+ _size = signal(undefined, ...(ngDevMode ? [{ debugName: "_size" }] : []));
4880
4956
  _buttonAttributes = null;
4957
+ _activeArrow = signal(false, ...(ngDevMode ? [{ debugName: "_activeArrow" }] : []));
4881
4958
  documentMouseUpSub;
4882
4959
  set isFocused(value) {
4883
4960
  this._isFocused = value;
@@ -4889,14 +4966,14 @@ class SplitButtonComponent extends ListButton {
4889
4966
  return true;
4890
4967
  }
4891
4968
  get dir() {
4892
- return this.direction;
4969
+ return this.direction();
4893
4970
  }
4894
4971
  /**
4895
4972
  * @hidden
4896
4973
  */
4897
4974
  get ariaLabel() {
4898
4975
  const localizationMsg = this.messageFor('splitButtonLabel') || '';
4899
- return replaceMessagePlaceholder(localizationMsg, 'buttonText', this.buttonText);
4976
+ return replaceMessagePlaceholder(localizationMsg, 'buttonText', this.buttonText());
4900
4977
  }
4901
4978
  /**
4902
4979
  * @hidden
@@ -4934,14 +5011,14 @@ class SplitButtonComponent extends ListButton {
4934
5011
  * @hidden
4935
5012
  */
4936
5013
  toggleButtonActiveState(enable) {
4937
- this._active = enable;
5014
+ this._active.set(enable);
4938
5015
  }
4939
5016
  /**
4940
5017
  * @hidden
4941
5018
  */
4942
5019
  toggleArrowButtonActiveState(enable) {
4943
5020
  this.arrowButtonClicked = true;
4944
- this.activeArrow = enable;
5021
+ this._activeArrow.set(enable);
4945
5022
  }
4946
5023
  /**
4947
5024
  * @hidden
@@ -4963,14 +5040,14 @@ class SplitButtonComponent extends ListButton {
4963
5040
  keydown(event) {
4964
5041
  this.keyDownHandler(event, true);
4965
5042
  if (event.code === Keys.Space) {
4966
- this._active = true;
5043
+ this._active.set(true);
4967
5044
  }
4968
5045
  }
4969
5046
  /**
4970
5047
  * @hidden
4971
5048
  */
4972
5049
  keyup(event) {
4973
- this._active = false;
5050
+ this._active.set(false);
4974
5051
  if (event.code !== Keys.Space) {
4975
5052
  this.keyUpHandler(event);
4976
5053
  }
@@ -5036,7 +5113,7 @@ class SplitButtonComponent extends ListButton {
5036
5113
  */
5037
5114
  get anchorAlign() {
5038
5115
  const align = { horizontal: this.popupSettings.align || 'left', vertical: 'bottom' };
5039
- if (this.direction === 'rtl' && !isPresent(this.popupSettings.align)) {
5116
+ if (this.direction() === 'rtl' && !isPresent(this.popupSettings.align)) {
5040
5117
  align.horizontal = 'right';
5041
5118
  }
5042
5119
  return align;
@@ -5046,7 +5123,7 @@ class SplitButtonComponent extends ListButton {
5046
5123
  */
5047
5124
  get popupAlign() {
5048
5125
  const align = { horizontal: this.popupSettings.align || 'left', vertical: 'top' };
5049
- if (this.direction === 'rtl' && !isPresent(this.popupSettings.align)) {
5126
+ if (this.direction() === 'rtl' && !isPresent(this.popupSettings.align)) {
5050
5127
  align.horizontal = 'right';
5051
5128
  }
5052
5129
  return align;
@@ -5085,10 +5162,10 @@ class SplitButtonComponent extends ListButton {
5085
5162
  zone.runOutsideAngular(() => {
5086
5163
  this.documentMouseUpSub = this.renderer.listen('document', 'mouseup', () => {
5087
5164
  if (this.active) {
5088
- zone.run(() => this._active = false);
5165
+ zone.run(() => this._active.set(false));
5089
5166
  }
5090
5167
  if (this.activeArrow) {
5091
- zone.run(() => this.activeArrow = false);
5168
+ zone.run(() => this._activeArrow.set(false));
5092
5169
  }
5093
5170
  });
5094
5171
  });
@@ -5105,8 +5182,8 @@ class SplitButtonComponent extends ListButton {
5105
5182
  .split('\n')
5106
5183
  .join('')
5107
5184
  .trim();
5108
- if (innerText !== this.buttonText) {
5109
- this.buttonText = innerText;
5185
+ if (innerText !== this.buttonText()) {
5186
+ this.buttonText.set(innerText);
5110
5187
  }
5111
5188
  }
5112
5189
  }
@@ -5136,8 +5213,8 @@ class SplitButtonComponent extends ListButton {
5136
5213
  }
5137
5214
  }
5138
5215
  }
5139
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", 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 });
5140
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: SplitButtonComponent, isStandalone: true, 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", arrowButtonClass: "arrowButtonClass", arrowButtonIcon: "arrowButtonIcon", arrowButtonSvgIcon: "arrowButtonSvgIcon", buttonAttributes: "buttonAttributes" }, 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: [
5216
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", 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 });
5217
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: SplitButtonComponent, isStandalone: true, 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", arrowButtonClass: "arrowButtonClass", arrowButtonIcon: "arrowButtonIcon", arrowButtonSvgIcon: "arrowButtonSvgIcon", buttonAttributes: "buttonAttributes" }, 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: [
5141
5218
  FocusService,
5142
5219
  NavigationService,
5143
5220
  NAVIGATION_SETTINGS_PROVIDER,
@@ -5154,7 +5231,7 @@ class SplitButtonComponent extends ListButton {
5154
5231
  ], queries: [{ propertyName: "itemTemplate", first: true, predicate: ButtonItemTemplateDirective, descendants: true }], exportAs: ["kendoSplitButton"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: `
5155
5232
  <ng-container kendoSplitButtonLocalizedMessages
5156
5233
  i18n-splitButtonLabel="kendo.splitbutton.splitButtonLabel|The text for the SplitButton aria-label"
5157
- splitButtonLabel="{{ '{buttonText} splitbutton' }}"
5234
+ splitButtonLabel="[[buttonText]] splitbutton"
5158
5235
  i18n-toggleButtonLabel="kendo.splitbutton.toggleButtonLabel|The text for the SplitButton toggle button aria-label"
5159
5236
  toggleButtonLabel="Toggle options"
5160
5237
  ></ng-container>
@@ -5220,11 +5297,13 @@ class SplitButtonComponent extends ListButton {
5220
5297
  </kendo-button-list>
5221
5298
  </ng-template>
5222
5299
  <ng-container #container></ng-container>
5223
- `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedSplitButtonMessagesDirective, selector: "[kendoSplitButtonLocalizedMessages]" }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconPosition", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ListComponent, selector: "kendo-button-list", inputs: ["data", "textField", "itemTemplate", "size"], outputs: ["onItemClick", "onItemBlur"] }] });
5300
+ `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedSplitButtonMessagesDirective, selector: "[kendoSplitButtonLocalizedMessages]" }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconPosition", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ListComponent, selector: "kendo-button-list", inputs: ["data", "textField", "itemTemplate", "size"], outputs: ["onItemClick", "onItemBlur"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5224
5301
  }
5225
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SplitButtonComponent, decorators: [{
5302
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SplitButtonComponent, decorators: [{
5226
5303
  type: Component,
5227
5304
  args: [{
5305
+ selector: 'kendo-splitbutton',
5306
+ changeDetection: ChangeDetectionStrategy.OnPush,
5228
5307
  exportAs: 'kendoSplitButton',
5229
5308
  providers: [
5230
5309
  FocusService,
@@ -5241,11 +5320,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
5241
5320
  useExisting: forwardRef(() => SplitButtonComponent)
5242
5321
  }
5243
5322
  ],
5244
- selector: 'kendo-splitbutton',
5245
5323
  template: `
5246
5324
  <ng-container kendoSplitButtonLocalizedMessages
5247
5325
  i18n-splitButtonLabel="kendo.splitbutton.splitButtonLabel|The text for the SplitButton aria-label"
5248
- splitButtonLabel="{{ '{buttonText} splitbutton' }}"
5326
+ splitButtonLabel="[[buttonText]] splitbutton"
5249
5327
  i18n-toggleButtonLabel="kendo.splitbutton.toggleButtonLabel|The text for the SplitButton toggle button aria-label"
5250
5328
  toggleButtonLabel="Toggle options"
5251
5329
  ></ng-container>
@@ -5520,7 +5598,7 @@ class SpeechToTextButtonComponent {
5520
5598
  return this.isDisabled;
5521
5599
  }
5522
5600
  get getDirection() {
5523
- return this.direction;
5601
+ return this._direction();
5524
5602
  }
5525
5603
  /**
5526
5604
  * @hidden
@@ -5600,15 +5678,20 @@ class SpeechToTextButtonComponent {
5600
5678
  this.renderer = renderer;
5601
5679
  this.ngZone = ngZone;
5602
5680
  validatePackage(packageMetadata);
5603
- this.direction = localization.rtl ? 'rtl' : 'ltr';
5604
- this.subs.add(localization.changes.subscribe(({ rtl }) => (this.direction = rtl ? 'rtl' : 'ltr')));
5681
+ this._direction.set(localization.rtl ? 'rtl' : 'ltr');
5682
+ this.subs.add(localization.changes.subscribe(({ rtl }) => this._direction.set(rtl ? 'rtl' : 'ltr')));
5605
5683
  this.element = element.nativeElement;
5606
5684
  this.renderer.addClass(this.element, 'k-button');
5607
5685
  }
5608
5686
  /**
5609
5687
  * Indicates whether the button is actively listening for incoming audio.
5610
5688
  */
5611
- isListening = false;
5689
+ get isListening() {
5690
+ return this._isListening();
5691
+ }
5692
+ set isListening(value) {
5693
+ this._isListening.set(value);
5694
+ }
5612
5695
  /**
5613
5696
  * Indicates whether web speech functionality is supported.
5614
5697
  */
@@ -5653,7 +5736,7 @@ class SpeechToTextButtonComponent {
5653
5736
  }
5654
5737
  const result = asyncFactory();
5655
5738
  const observable = this.toObservable(result);
5656
- observable.pipe(take(1)).subscribe(() => this.isListening = !this.isListening);
5739
+ observable.pipe(take(1)).subscribe(() => this._isListening.set(!this._isListening()));
5657
5740
  });
5658
5741
  }
5659
5742
  }
@@ -5688,8 +5771,9 @@ class SpeechToTextButtonComponent {
5688
5771
  _rounded = undefined;
5689
5772
  _fillMode = undefined;
5690
5773
  _themeColor = undefined;
5774
+ _isListening = signal(false, ...(ngDevMode ? [{ debugName: "_isListening" }] : []));
5691
5775
  _focused = false;
5692
- direction;
5776
+ _direction = signal('', ...(ngDevMode ? [{ debugName: "_direction" }] : []));
5693
5777
  handleClasses(value, input) {
5694
5778
  const elem = this.element;
5695
5779
  const classes = getStylingClasses('button', input, this[input], value);
@@ -5705,13 +5789,13 @@ class SpeechToTextButtonComponent {
5705
5789
  }
5706
5790
  handleStart() {
5707
5791
  this.ngZone.run(() => {
5708
- this.isListening = true;
5792
+ this._isListening.set(true);
5709
5793
  this.start.emit();
5710
5794
  });
5711
5795
  }
5712
5796
  handleEnd() {
5713
5797
  this.ngZone.run(() => {
5714
- this.isListening = false;
5798
+ this._isListening.set(false);
5715
5799
  this.end.emit();
5716
5800
  });
5717
5801
  }
@@ -5756,7 +5840,7 @@ class SpeechToTextButtonComponent {
5756
5840
  this.speechRecognition.stop();
5757
5841
  this.speechRecognition.destroy();
5758
5842
  this.speechRecognition = null;
5759
- this.isListening = false;
5843
+ this._isListening.set(false);
5760
5844
  }
5761
5845
  }
5762
5846
  createWebSpeech() {
@@ -5776,8 +5860,8 @@ class SpeechToTextButtonComponent {
5776
5860
  }
5777
5861
  });
5778
5862
  }
5779
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SpeechToTextButtonComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
5780
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.25", type: SpeechToTextButtonComponent, isStandalone: true, selector: "button[kendoSpeechToTextButton]", inputs: { disabled: "disabled", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor", integrationMode: "integrationMode", lang: "lang", continuous: "continuous", interimResults: "interimResults", maxAlternatives: "maxAlternatives" }, outputs: { start: "start", end: "end", result: "result", error: "error", click: "click" }, host: { listeners: { "focus": "onFocus()", "blur": "onBlur()" }, properties: { "class.k-icon-button": "this.iconButtonClass", "class.k-listening": "this.listeningClass", "class.k-speech-to-text-button": "this.speechToTextButtonClass", "class.k-disabled": "this.classDisabled", "attr.dir": "this.getDirection" } }, providers: [
5863
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SpeechToTextButtonComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
5864
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.25", type: SpeechToTextButtonComponent, isStandalone: true, selector: "button[kendoSpeechToTextButton]", inputs: { disabled: "disabled", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor", integrationMode: "integrationMode", lang: "lang", continuous: "continuous", interimResults: "interimResults", maxAlternatives: "maxAlternatives" }, outputs: { start: "start", end: "end", result: "result", error: "error", click: "click" }, host: { listeners: { "focus": "onFocus()", "blur": "onBlur()" }, properties: { "class.k-icon-button": "this.iconButtonClass", "class.k-listening": "this.listeningClass", "class.k-speech-to-text-button": "this.speechToTextButtonClass", "class.k-disabled": "this.classDisabled", "attr.dir": "this.getDirection" } }, providers: [
5781
5865
  LocalizationService,
5782
5866
  {
5783
5867
  provide: L10N_PREFIX,
@@ -5790,11 +5874,13 @@ class SpeechToTextButtonComponent {
5790
5874
  [svgIcon]="buttonSvgIcon">
5791
5875
  </kendo-icon-wrapper>
5792
5876
  <span class="k-button-text"><ng-content></ng-content></span>
5793
- `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
5877
+ `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5794
5878
  }
5795
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SpeechToTextButtonComponent, decorators: [{
5879
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SpeechToTextButtonComponent, decorators: [{
5796
5880
  type: Component,
5797
5881
  args: [{
5882
+ selector: 'button[kendoSpeechToTextButton]',
5883
+ changeDetection: ChangeDetectionStrategy.OnPush,
5798
5884
  exportAs: 'kendoSpeechToTextButton',
5799
5885
  providers: [
5800
5886
  LocalizationService,
@@ -5803,7 +5889,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
5803
5889
  useValue: 'kendo.speechtotextbutton'
5804
5890
  }
5805
5891
  ],
5806
- selector: 'button[kendoSpeechToTextButton]',
5807
5892
  template: `
5808
5893
  <kendo-icon-wrapper
5809
5894
  innerCssClass="k-button-icon"
@@ -6204,7 +6289,7 @@ class SmartPasteButtonComponent {
6204
6289
  return this.isDisabled;
6205
6290
  }
6206
6291
  get getDirection() {
6207
- return this.direction;
6292
+ return this._direction();
6208
6293
  }
6209
6294
  onFocus() {
6210
6295
  this.isFocused = true;
@@ -6248,7 +6333,7 @@ class SmartPasteButtonComponent {
6248
6333
  _fillMode = undefined;
6249
6334
  _themeColor = undefined;
6250
6335
  _focused = false;
6251
- direction;
6336
+ _direction = signal('', ...(ngDevMode ? [{ debugName: "_direction" }] : []));
6252
6337
  _iconClass;
6253
6338
  _icon = DEFAULT_ICON;
6254
6339
  _svgIcon = DEFAULT_SVG_ICON;
@@ -6262,8 +6347,8 @@ class SmartPasteButtonComponent {
6262
6347
  this.http = http;
6263
6348
  this.controlContainer = controlContainer;
6264
6349
  validatePackage(packageMetadata);
6265
- this.direction = localization.rtl ? 'rtl' : 'ltr';
6266
- this.subs.add(localization.changes.subscribe(({ rtl }) => (this.direction = rtl ? 'rtl' : 'ltr')));
6350
+ this._direction.set(localization.rtl ? 'rtl' : 'ltr');
6351
+ this.subs.add(localization.changes.subscribe(({ rtl }) => this._direction.set(rtl ? 'rtl' : 'ltr')));
6267
6352
  this.element = elementRef.nativeElement;
6268
6353
  this.renderer.addClass(this.element, 'k-button');
6269
6354
  }
@@ -6295,7 +6380,7 @@ class SmartPasteButtonComponent {
6295
6380
  * Reads clipboard content and sends it to the AI service for processing.
6296
6381
  */
6297
6382
  async paste() {
6298
- if (!this.nativeForm) {
6383
+ if (!this.nativeForm || this.isDisabled) {
6299
6384
  return;
6300
6385
  }
6301
6386
  if (this.smartPasteBusy) {
@@ -6472,8 +6557,8 @@ class SmartPasteButtonComponent {
6472
6557
  this.currentRequestSubscription = null;
6473
6558
  });
6474
6559
  }
6475
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SmartPasteButtonComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i0.NgZone }, { token: i2.HttpClient }, { token: i3$1.ControlContainer, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
6476
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: SmartPasteButtonComponent, isStandalone: true, selector: "button[kendoSmartPasteButton]", inputs: { formFields: "formFields", disabled: "disabled", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor", svgIcon: "svgIcon", imageUrl: "imageUrl", iconClass: "iconClass", icon: "icon", requestUrl: "requestUrl", requestOptions: "requestOptions", smartPasteFormFields: "smartPasteFormFields" }, outputs: { requestStart: "requestStart", requestEnd: "requestEnd", requestCancel: "requestCancel" }, host: { listeners: { "focus": "onFocus()", "blur": "onBlur()" }, properties: { "class.k-icon-button": "this.iconButtonClass", "class.k-disabled": "this.classDisabled", "attr.dir": "this.getDirection" } }, providers: [
6560
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SmartPasteButtonComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i0.NgZone }, { token: i2.HttpClient }, { token: i3$1.ControlContainer, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
6561
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: SmartPasteButtonComponent, isStandalone: true, selector: "button[kendoSmartPasteButton]", inputs: { formFields: "formFields", disabled: "disabled", size: "size", rounded: "rounded", fillMode: "fillMode", themeColor: "themeColor", svgIcon: "svgIcon", imageUrl: "imageUrl", iconClass: "iconClass", icon: "icon", requestUrl: "requestUrl", requestOptions: "requestOptions", smartPasteFormFields: "smartPasteFormFields" }, outputs: { requestStart: "requestStart", requestEnd: "requestEnd", requestCancel: "requestCancel" }, host: { listeners: { "focus": "onFocus()", "blur": "onBlur()" }, properties: { "class.k-icon-button": "this.iconButtonClass", "class.k-disabled": "this.classDisabled", "attr.dir": "this.getDirection" } }, providers: [
6477
6562
  LocalizationService,
6478
6563
  {
6479
6564
  provide: L10N_PREFIX,
@@ -6495,11 +6580,13 @@ class SmartPasteButtonComponent {
6495
6580
  <span class="k-button-icon" [ngClass]="iconClass"></span>
6496
6581
  }
6497
6582
  <span class="k-button-text"><ng-content></ng-content></span>
6498
- `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
6583
+ `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6499
6584
  }
6500
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SmartPasteButtonComponent, decorators: [{
6585
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SmartPasteButtonComponent, decorators: [{
6501
6586
  type: Component,
6502
6587
  args: [{
6588
+ selector: 'button[kendoSmartPasteButton]',
6589
+ changeDetection: ChangeDetectionStrategy.OnPush,
6503
6590
  exportAs: 'kendoSmartPasteButton',
6504
6591
  providers: [
6505
6592
  LocalizationService,
@@ -6508,7 +6595,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
6508
6595
  useValue: 'kendo.smartpastebutton'
6509
6596
  }
6510
6597
  ],
6511
- selector: 'button[kendoSmartPasteButton]',
6512
6598
  standalone: true,
6513
6599
  imports: [IconWrapperComponent, NgClass],
6514
6600
  template: `
@@ -6597,12 +6683,13 @@ class SegmentedControlComponent {
6597
6683
  renderer;
6598
6684
  wrapper;
6599
6685
  zone;
6686
+ injector;
6600
6687
  hostClass = true;
6601
6688
  get stretchedClass() {
6602
6689
  return this._layoutMode === 'stretch';
6603
6690
  }
6604
6691
  get direction() {
6605
- return this._direction;
6692
+ return this._direction();
6606
6693
  }
6607
6694
  hostRole = 'group';
6608
6695
  thumb;
@@ -6664,16 +6751,17 @@ class SegmentedControlComponent {
6664
6751
  _items = [];
6665
6752
  _size;
6666
6753
  _layoutMode = 'compact';
6667
- _direction;
6754
+ _direction = signal('', ...(ngDevMode ? [{ debugName: "_direction" }] : []));
6668
6755
  subs = new Subscription();
6669
- constructor(renderer, wrapper, zone, localization) {
6756
+ constructor(renderer, wrapper, zone, injector, localization) {
6670
6757
  this.renderer = renderer;
6671
6758
  this.wrapper = wrapper;
6672
6759
  this.zone = zone;
6760
+ this.injector = injector;
6673
6761
  validatePackage(packageMetadata);
6674
- this._direction = localization.rtl ? 'rtl' : 'ltr';
6762
+ this._direction.set(localization.rtl ? 'rtl' : 'ltr');
6675
6763
  this.subs.add(localization.changes.subscribe(({ rtl }) => {
6676
- this._direction = rtl ? 'rtl' : 'ltr';
6764
+ this._direction.set(rtl ? 'rtl' : 'ltr');
6677
6765
  }));
6678
6766
  }
6679
6767
  ngAfterViewInit() {
@@ -6725,7 +6813,7 @@ class SegmentedControlComponent {
6725
6813
  if (!isDocumentAvailable()) {
6726
6814
  return;
6727
6815
  }
6728
- this.zone.onStable.pipe(take(1)).subscribe(() => {
6816
+ afterNextRender(() => {
6729
6817
  const element = this.wrapper.nativeElement;
6730
6818
  if (!element?.getBoundingClientRect) {
6731
6819
  return;
@@ -6741,10 +6829,10 @@ class SegmentedControlComponent {
6741
6829
  const right = controlRect.right - itemRect.right;
6742
6830
  this.renderer.setStyle(selectionIndicator, 'left', `${left}px`);
6743
6831
  this.renderer.setStyle(selectionIndicator, 'right', `${right}px`);
6744
- });
6832
+ }, { injector: this.injector });
6745
6833
  }
6746
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SegmentedControlComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
6747
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.25", type: SegmentedControlComponent, isStandalone: true, selector: "kendo-segmented-control", inputs: { items: "items", layoutMode: "layoutMode", size: "size", selected: "selected" }, outputs: { selectedChange: "selectedChange" }, host: { properties: { "class.k-segmented-control": "this.hostClass", "class.k-segmented-control-stretched": "this.stretchedClass", "attr.dir": "this.direction", "attr.role": "this.hostRole" } }, providers: [
6834
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SegmentedControlComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Injector }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
6835
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: SegmentedControlComponent, isStandalone: true, selector: "kendo-segmented-control", inputs: { items: "items", layoutMode: "layoutMode", size: "size", selected: "selected" }, outputs: { selectedChange: "selectedChange" }, host: { properties: { "class.k-segmented-control": "this.hostClass", "class.k-segmented-control-stretched": "this.stretchedClass", "attr.dir": "this.direction", "attr.role": "this.hostRole" } }, providers: [
6748
6836
  LocalizationService,
6749
6837
  {
6750
6838
  provide: L10N_PREFIX,
@@ -6778,7 +6866,7 @@ class SegmentedControlComponent {
6778
6866
  }
6779
6867
  `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6780
6868
  }
6781
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SegmentedControlComponent, decorators: [{
6869
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SegmentedControlComponent, decorators: [{
6782
6870
  type: Component,
6783
6871
  args: [{
6784
6872
  selector: 'kendo-segmented-control',
@@ -6820,7 +6908,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
6820
6908
  }
6821
6909
  `
6822
6910
  }]
6823
- }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.LocalizationService }], propDecorators: { hostClass: [{
6911
+ }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Injector }, { type: i1.LocalizationService }], propDecorators: { hostClass: [{
6824
6912
  type: HostBinding,
6825
6913
  args: ['class.k-segmented-control']
6826
6914
  }], stretchedClass: [{
@@ -7071,11 +7159,11 @@ const KENDO_BUTTONS = [
7071
7159
  * ```
7072
7160
  */
7073
7161
  class ButtonGroupModule {
7074
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ButtonGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7075
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.25", ngImport: i0, type: ButtonGroupModule, imports: [ButtonComponent, ButtonGroupComponent], exports: [ButtonComponent, ButtonGroupComponent] });
7076
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ButtonGroupModule, providers: [IconsService], imports: [ButtonComponent] });
7162
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ButtonGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7163
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.25", ngImport: i0, type: ButtonGroupModule, imports: [ButtonComponent, ButtonGroupComponent], exports: [ButtonComponent, ButtonGroupComponent] });
7164
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ButtonGroupModule, providers: [IconsService], imports: [ButtonComponent] });
7077
7165
  }
7078
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ButtonGroupModule, decorators: [{
7166
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ButtonGroupModule, decorators: [{
7079
7167
  type: NgModule,
7080
7168
  args: [{
7081
7169
  exports: [...KENDO_BUTTONGROUP],
@@ -7107,11 +7195,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
7107
7195
  * ```
7108
7196
  */
7109
7197
  class ButtonModule {
7110
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7111
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.25", ngImport: i0, type: ButtonModule, imports: [ButtonComponent], exports: [ButtonComponent] });
7112
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ButtonModule, providers: [IconsService], imports: [ButtonComponent] });
7198
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7199
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.25", ngImport: i0, type: ButtonModule, imports: [ButtonComponent], exports: [ButtonComponent] });
7200
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ButtonModule, providers: [IconsService], imports: [ButtonComponent] });
7113
7201
  }
7114
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ButtonModule, decorators: [{
7202
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ButtonModule, decorators: [{
7115
7203
  type: NgModule,
7116
7204
  args: [{
7117
7205
  imports: [ButtonComponent],
@@ -7143,11 +7231,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
7143
7231
  * ```
7144
7232
  */
7145
7233
  class ButtonsModule {
7146
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ButtonsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7147
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.25", ngImport: i0, type: ButtonsModule, imports: [ButtonComponent, ButtonComponent, ButtonGroupComponent, DropDownButtonComponent, ButtonItemTemplateDirective, ChipComponent, ChipComponent, ChipListComponent, FloatingActionButtonComponent, DialItemTemplateDirective, FloatingActionButtonTemplateDirective, SplitButtonComponent, SplitButtonCustomMessagesComponent, i12.ToggleButtonTabStopDirective, ButtonItemTemplateDirective, SpeechToTextButtonComponent, SmartPasteButtonComponent, SegmentedControlComponent, i12.ToggleButtonTabStopDirective], exports: [ButtonComponent, ButtonComponent, ButtonGroupComponent, DropDownButtonComponent, ButtonItemTemplateDirective, ChipComponent, ChipComponent, ChipListComponent, FloatingActionButtonComponent, DialItemTemplateDirective, FloatingActionButtonTemplateDirective, SplitButtonComponent, SplitButtonCustomMessagesComponent, i12.ToggleButtonTabStopDirective, ButtonItemTemplateDirective, SpeechToTextButtonComponent, SmartPasteButtonComponent, SegmentedControlComponent, i12.ToggleButtonTabStopDirective] });
7148
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ButtonsModule, providers: [IconsService, PopupService, ResizeBatchService], imports: [ButtonComponent, ButtonComponent, DropDownButtonComponent, ChipComponent, ChipComponent, FloatingActionButtonComponent, SplitButtonComponent, SpeechToTextButtonComponent, SmartPasteButtonComponent, SegmentedControlComponent] });
7234
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ButtonsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7235
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.25", ngImport: i0, type: ButtonsModule, imports: [ButtonComponent, ButtonComponent, ButtonGroupComponent, DropDownButtonComponent, ButtonItemTemplateDirective, ChipComponent, ChipComponent, ChipListComponent, FloatingActionButtonComponent, DialItemTemplateDirective, FloatingActionButtonTemplateDirective, SplitButtonComponent, SplitButtonCustomMessagesComponent, i12.ToggleButtonTabStopDirective, ButtonItemTemplateDirective, SpeechToTextButtonComponent, SmartPasteButtonComponent, SegmentedControlComponent, i12.ToggleButtonTabStopDirective], exports: [ButtonComponent, ButtonComponent, ButtonGroupComponent, DropDownButtonComponent, ButtonItemTemplateDirective, ChipComponent, ChipComponent, ChipListComponent, FloatingActionButtonComponent, DialItemTemplateDirective, FloatingActionButtonTemplateDirective, SplitButtonComponent, SplitButtonCustomMessagesComponent, i12.ToggleButtonTabStopDirective, ButtonItemTemplateDirective, SpeechToTextButtonComponent, SmartPasteButtonComponent, SegmentedControlComponent, i12.ToggleButtonTabStopDirective] });
7236
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ButtonsModule, providers: [IconsService, PopupService, ResizeBatchService], imports: [ButtonComponent, ButtonComponent, DropDownButtonComponent, ChipComponent, ChipComponent, FloatingActionButtonComponent, SplitButtonComponent, SpeechToTextButtonComponent, SmartPasteButtonComponent, SegmentedControlComponent] });
7149
7237
  }
7150
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ButtonsModule, decorators: [{
7238
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ButtonsModule, decorators: [{
7151
7239
  type: NgModule,
7152
7240
  args: [{
7153
7241
  imports: [...KENDO_BUTTONS, ...KENDO_TOGGLEBUTTONTABSTOP],
@@ -7167,11 +7255,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
7167
7255
  * - `SplitButtonCustomMessagesComponent`&mdash;The SplitButton custom messages component class.
7168
7256
  */
7169
7257
  class SplitButtonModule {
7170
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SplitButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7171
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.25", ngImport: i0, type: SplitButtonModule, imports: [SplitButtonComponent, SplitButtonCustomMessagesComponent, i12.ToggleButtonTabStopDirective, ButtonItemTemplateDirective, i12.ToggleButtonTabStopDirective], exports: [SplitButtonComponent, SplitButtonCustomMessagesComponent, i12.ToggleButtonTabStopDirective, ButtonItemTemplateDirective, i12.ToggleButtonTabStopDirective] });
7172
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SplitButtonModule, providers: [IconsService, PopupService, ResizeBatchService], imports: [SplitButtonComponent] });
7258
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SplitButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7259
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.25", ngImport: i0, type: SplitButtonModule, imports: [SplitButtonComponent, SplitButtonCustomMessagesComponent, i12.ToggleButtonTabStopDirective, ButtonItemTemplateDirective, i12.ToggleButtonTabStopDirective], exports: [SplitButtonComponent, SplitButtonCustomMessagesComponent, i12.ToggleButtonTabStopDirective, ButtonItemTemplateDirective, i12.ToggleButtonTabStopDirective] });
7260
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SplitButtonModule, providers: [IconsService, PopupService, ResizeBatchService], imports: [SplitButtonComponent] });
7173
7261
  }
7174
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SplitButtonModule, decorators: [{
7262
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SplitButtonModule, decorators: [{
7175
7263
  type: NgModule,
7176
7264
  args: [{
7177
7265
  exports: [...KENDO_SPLITBUTTON, ...KENDO_TOGGLEBUTTONTABSTOP],
@@ -7206,11 +7294,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
7206
7294
  * ```
7207
7295
  */
7208
7296
  class DropDownButtonModule {
7209
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DropDownButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7210
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.25", ngImport: i0, type: DropDownButtonModule, imports: [DropDownButtonComponent, ButtonItemTemplateDirective], exports: [DropDownButtonComponent, ButtonItemTemplateDirective] });
7211
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DropDownButtonModule, providers: [IconsService, PopupService, ResizeBatchService], imports: [DropDownButtonComponent] });
7297
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DropDownButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7298
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.25", ngImport: i0, type: DropDownButtonModule, imports: [DropDownButtonComponent, ButtonItemTemplateDirective], exports: [DropDownButtonComponent, ButtonItemTemplateDirective] });
7299
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DropDownButtonModule, providers: [IconsService, PopupService, ResizeBatchService], imports: [DropDownButtonComponent] });
7212
7300
  }
7213
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: DropDownButtonModule, decorators: [{
7301
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: DropDownButtonModule, decorators: [{
7214
7302
  type: NgModule,
7215
7303
  args: [{
7216
7304
  exports: [...KENDO_DROPDOWNBUTTON],
@@ -7242,11 +7330,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
7242
7330
  * ```
7243
7331
  */
7244
7332
  class ChipModule {
7245
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ChipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7246
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.25", ngImport: i0, type: ChipModule, imports: [ChipComponent, ChipListComponent], exports: [ChipComponent, ChipListComponent] });
7247
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ChipModule, providers: [IconsService], imports: [ChipComponent] });
7333
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7334
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.25", ngImport: i0, type: ChipModule, imports: [ChipComponent, ChipListComponent], exports: [ChipComponent, ChipListComponent] });
7335
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChipModule, providers: [IconsService], imports: [ChipComponent] });
7248
7336
  }
7249
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: ChipModule, decorators: [{
7337
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: ChipModule, decorators: [{
7250
7338
  type: NgModule,
7251
7339
  args: [{
7252
7340
  exports: [...KENDO_CHIPLIST],
@@ -7277,11 +7365,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
7277
7365
  * ```
7278
7366
  */
7279
7367
  class FloatingActionButtonModule {
7280
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: FloatingActionButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7281
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.25", ngImport: i0, type: FloatingActionButtonModule, imports: [FloatingActionButtonComponent, DialItemTemplateDirective, FloatingActionButtonTemplateDirective], exports: [FloatingActionButtonComponent, DialItemTemplateDirective, FloatingActionButtonTemplateDirective] });
7282
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: FloatingActionButtonModule, providers: [IconsService, PopupService, ResizeBatchService], imports: [FloatingActionButtonComponent] });
7368
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FloatingActionButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7369
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.25", ngImport: i0, type: FloatingActionButtonModule, imports: [FloatingActionButtonComponent, DialItemTemplateDirective, FloatingActionButtonTemplateDirective], exports: [FloatingActionButtonComponent, DialItemTemplateDirective, FloatingActionButtonTemplateDirective] });
7370
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FloatingActionButtonModule, providers: [IconsService, PopupService, ResizeBatchService], imports: [FloatingActionButtonComponent] });
7283
7371
  }
7284
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: FloatingActionButtonModule, decorators: [{
7372
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: FloatingActionButtonModule, decorators: [{
7285
7373
  type: NgModule,
7286
7374
  args: [{
7287
7375
  exports: [...KENDO_FLOATINGACTIONBUTTON],
@@ -7300,11 +7388,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
7300
7388
  * - `SpeechToTextButtonComponent`&mdash;The SpeechToTextButton component class.
7301
7389
  */
7302
7390
  class SpeechToTextButtonModule {
7303
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SpeechToTextButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7304
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.25", ngImport: i0, type: SpeechToTextButtonModule, imports: [SpeechToTextButtonComponent], exports: [SpeechToTextButtonComponent] });
7305
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SpeechToTextButtonModule, providers: [IconsService], imports: [KENDO_SPEECHTOTEXTBUTTON] });
7391
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SpeechToTextButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7392
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.25", ngImport: i0, type: SpeechToTextButtonModule, imports: [SpeechToTextButtonComponent], exports: [SpeechToTextButtonComponent] });
7393
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SpeechToTextButtonModule, providers: [IconsService], imports: [KENDO_SPEECHTOTEXTBUTTON] });
7306
7394
  }
7307
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SpeechToTextButtonModule, decorators: [{
7395
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SpeechToTextButtonModule, decorators: [{
7308
7396
  type: NgModule,
7309
7397
  args: [{
7310
7398
  exports: [...KENDO_SPEECHTOTEXTBUTTON],
@@ -7330,11 +7418,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
7330
7418
  * ```
7331
7419
  */
7332
7420
  class SmartPasteButtonModule {
7333
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SmartPasteButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7334
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.25", ngImport: i0, type: SmartPasteButtonModule, imports: [SmartPasteButtonComponent], exports: [SmartPasteButtonComponent] });
7335
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SmartPasteButtonModule, imports: [SmartPasteButtonComponent] });
7421
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SmartPasteButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7422
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.25", ngImport: i0, type: SmartPasteButtonModule, imports: [SmartPasteButtonComponent], exports: [SmartPasteButtonComponent] });
7423
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SmartPasteButtonModule, imports: [SmartPasteButtonComponent] });
7336
7424
  }
7337
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SmartPasteButtonModule, decorators: [{
7425
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SmartPasteButtonModule, decorators: [{
7338
7426
  type: NgModule,
7339
7427
  args: [{
7340
7428
  exports: [SmartPasteButtonComponent],
@@ -7352,11 +7440,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImpo
7352
7440
  * - `SegmentedControlComponent`&mdash;The SegmentedControl component class.
7353
7441
  */
7354
7442
  class SegmentedControlModule {
7355
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SegmentedControlModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7356
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.25", ngImport: i0, type: SegmentedControlModule, imports: [SegmentedControlComponent], exports: [SegmentedControlComponent] });
7357
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SegmentedControlModule, providers: [IconsService], imports: [KENDO_SEGMENTEDCONTROL] });
7443
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SegmentedControlModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7444
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.25", ngImport: i0, type: SegmentedControlModule, imports: [SegmentedControlComponent], exports: [SegmentedControlComponent] });
7445
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SegmentedControlModule, providers: [IconsService], imports: [KENDO_SEGMENTEDCONTROL] });
7358
7446
  }
7359
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.25", ngImport: i0, type: SegmentedControlModule, decorators: [{
7447
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: SegmentedControlModule, decorators: [{
7360
7448
  type: NgModule,
7361
7449
  args: [{
7362
7450
  exports: [...KENDO_SEGMENTEDCONTROL],