@progress/kendo-angular-buttons 21.1.1-develop.2 → 21.2.0-develop.10

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.
@@ -7,7 +7,7 @@ import { Subscription } from 'rxjs';
7
7
  import { FocusService } from '../focusable/focus.service';
8
8
  import { DialItemComponent } from "./dial-item.component";
9
9
  import { FocusableDirective } from "../focusable/focusable.directive";
10
- import { NgFor, NgClass, NgStyle } from "@angular/common";
10
+ import { NgClass, NgStyle } from "@angular/common";
11
11
  import * as i0 from "@angular/core";
12
12
  import * as i1 from "../focusable/focus.service";
13
13
  /**
@@ -39,22 +39,22 @@ export class DialListComponent {
39
39
  this.subscriptions.unsubscribe();
40
40
  }
41
41
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DialListComponent, deps: [{ token: i1.FocusService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
42
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", 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: `
43
- <ng-container *ngFor='let item of dialItems; let idx = index'>
44
- <li
45
- kendoButtonFocusable
46
- kendoDialItem
47
- [item]="dialItems[idx]"
48
- [index]="idx"
49
- [dialItemTemplate]="dialItemTemplate"
50
- [isFocused]="isFocused(idx)"
51
- [ngClass]='item.cssClass'
52
- [ngStyle]='item.cssStyle'
53
- [align]="align"
42
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", 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: `
43
+ @for (item of dialItems; track item; let idx = $index) {
44
+ <li
45
+ kendoButtonFocusable
46
+ kendoDialItem
47
+ [item]="dialItems[idx]"
48
+ [index]="idx"
49
+ [dialItemTemplate]="dialItemTemplate"
50
+ [isFocused]="isFocused(idx)"
51
+ [ngClass]='item.cssClass'
52
+ [ngStyle]='item.cssStyle'
53
+ [align]="align"
54
54
  >
55
- </li>
56
- </ng-container>
57
- `, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { 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"] }] });
55
+ </li>
56
+ }
57
+ `, 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"] }] });
58
58
  }
59
59
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DialListComponent, decorators: [{
60
60
  type: Component,
@@ -62,23 +62,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
62
62
  // eslint-disable-next-line @angular-eslint/component-selector
63
63
  selector: '[kendoDialList]',
64
64
  template: `
65
- <ng-container *ngFor='let item of dialItems; let idx = index'>
66
- <li
67
- kendoButtonFocusable
68
- kendoDialItem
69
- [item]="dialItems[idx]"
70
- [index]="idx"
71
- [dialItemTemplate]="dialItemTemplate"
72
- [isFocused]="isFocused(idx)"
73
- [ngClass]='item.cssClass'
74
- [ngStyle]='item.cssStyle'
75
- [align]="align"
65
+ @for (item of dialItems; track item; let idx = $index) {
66
+ <li
67
+ kendoButtonFocusable
68
+ kendoDialItem
69
+ [item]="dialItems[idx]"
70
+ [index]="idx"
71
+ [dialItemTemplate]="dialItemTemplate"
72
+ [isFocused]="isFocused(idx)"
73
+ [ngClass]='item.cssClass'
74
+ [ngStyle]='item.cssStyle'
75
+ [align]="align"
76
76
  >
77
- </li>
78
- </ng-container>
79
- `,
77
+ </li>
78
+ }
79
+ `,
80
80
  standalone: true,
81
- imports: [NgFor, FocusableDirective, DialItemComponent, NgClass, NgStyle]
81
+ imports: [FocusableDirective, DialItemComponent, NgClass, NgStyle]
82
82
  }]
83
83
  }], ctorParameters: () => [{ type: i1.FocusService }, { type: i0.ChangeDetectorRef }], propDecorators: { hostClass: [{
84
84
  type: HostBinding,
@@ -9,7 +9,7 @@ import { take } from 'rxjs/operators';
9
9
  import { L10N_PREFIX, LocalizationService } from '@progress/kendo-angular-l10n';
10
10
  import { validatePackage } from '@progress/kendo-licensing';
11
11
  import { packageMetadata } from '../package-metadata';
12
- import { guid, isDocumentAvailable, normalizeNumpadKeys } from '@progress/kendo-angular-common';
12
+ import { guid, isDocumentAvailable, normalizeKeys } from '@progress/kendo-angular-common';
13
13
  import { PopupService } from '@progress/kendo-angular-popup';
14
14
  import { FocusService } from '../focusable/focus.service';
15
15
  import { NavigationAction } from '../navigation/navigation-action';
@@ -24,7 +24,7 @@ import { FloatingActionButtonTemplateDirective } from './templates/fab-template.
24
24
  import { DialListComponent } from './dial-list.component';
25
25
  import { IconWrapperComponent } from '@progress/kendo-angular-icons';
26
26
  import { EventsOutsideAngularDirective } from '@progress/kendo-angular-common';
27
- import { NgClass, NgIf, NgTemplateOutlet } from '@angular/common';
27
+ import { NgClass, NgTemplateOutlet } from '@angular/common';
28
28
  import * as i0 from "@angular/core";
29
29
  import * as i1 from "../focusable/focus.service";
30
30
  import * as i2 from "../navigation/navigation.service";
@@ -389,7 +389,7 @@ export class FloatingActionButtonComponent {
389
389
  return;
390
390
  }
391
391
  const focused = this.focusService.focused || 0;
392
- const code = normalizeNumpadKeys(event);
392
+ const code = normalizeKeys(event);
393
393
  const action = this.navigationService.process({
394
394
  altKey: event.altKey,
395
395
  current: focused,
@@ -732,7 +732,7 @@ export class FloatingActionButtonComponent {
732
732
  return DEFAULT_DURATION;
733
733
  }
734
734
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FloatingActionButtonComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.FocusService }, { token: i2.NavigationService }, { token: i0.NgZone }, { token: i3.PopupService }, { token: i4.AnimationBuilder }, { token: i5.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
735
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", 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: [
735
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", 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: [
736
736
  FocusService,
737
737
  NavigationService,
738
738
  NAVIGATION_SETTINGS_PROVIDER,
@@ -743,62 +743,67 @@ export class FloatingActionButtonComponent {
743
743
  }
744
744
  ], queries: [{ propertyName: "dialItemTemplate", first: true, predicate: DialItemTemplateDirective, descendants: true }, { propertyName: "fabTemplate", first: true, predicate: FloatingActionButtonTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "button", first: true, predicate: ["button"], descendants: true, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }], ngImport: i0, template: `
745
745
  <button
746
- #button
747
- [attr.id]="id"
748
- [tabIndex]="componentTabIndex"
749
- type="button"
750
- class="k-fab k-fab-solid"
751
- [class.k-disabled]="disabled"
752
- [ngClass]="buttonClass"
753
- [disabled]="disabled"
754
- [attr.aria-disabled]="disabled"
755
- [attr.aria-expanded]="ariaExpanded"
756
- [attr.aria-haspopup]="ariaHasPopup"
757
- [attr.aria-controls]="ariaControls"
758
- (focus)="focusHandler()"
759
- (blur)="blurHandler($event)"
746
+ #button
747
+ [attr.id]="id"
748
+ [tabIndex]="componentTabIndex"
749
+ type="button"
750
+ class="k-fab k-fab-solid"
751
+ [class.k-disabled]="disabled"
752
+ [ngClass]="buttonClass"
753
+ [disabled]="disabled"
754
+ [attr.aria-disabled]="disabled"
755
+ [attr.aria-expanded]="ariaExpanded"
756
+ [attr.aria-haspopup]="ariaHasPopup"
757
+ [attr.aria-controls]="ariaControls"
758
+ (focus)="focusHandler()"
759
+ (blur)="blurHandler($event)"
760
760
  [kendoEventsOutsideAngular]="{
761
761
  keydown: keyDownHandler,
762
762
  click: clickHandler,
763
763
  pointerdown: pointerdownHandler
764
764
  }"
765
- [scope]="this"
766
- >
767
- <ng-template *ngIf="fabTemplate"
768
- [ngTemplateOutlet]="fabTemplate?.templateRef"
769
- >
765
+ [scope]="this"
766
+ >
767
+ @if (fabTemplate) {
768
+ <ng-template
769
+ [ngTemplateOutlet]="fabTemplate?.templateRef"
770
+ >
770
771
  </ng-template>
771
-
772
- <ng-container *ngIf="!fabTemplate">
773
- <kendo-icon-wrapper
774
- *ngIf="icon || iconClass || svgIcon"
775
- [name]="icon"
776
- innerCssClass="k-fab-icon"
777
- [customFontClass]="iconClass"
778
- [svgIcon]="svgIcon"></kendo-icon-wrapper>
779
- <span *ngIf="text" class="k-fab-text">{{ text }}</span>
780
- </ng-container>
772
+ }
773
+
774
+ @if (!fabTemplate) {
775
+ @if (icon || iconClass || svgIcon) {
776
+ <kendo-icon-wrapper
777
+ [name]="icon"
778
+ innerCssClass="k-fab-icon"
779
+ [customFontClass]="iconClass"
780
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
781
+ }
782
+ @if (text) {
783
+ <span class="k-fab-text">{{ text }}</span>
784
+ }
785
+ }
781
786
  </button>
782
-
787
+
783
788
  <ng-template #popupTemplate>
784
- <ul
785
- kendoDialList
786
- role="menu"
787
- [id]="dialListId"
788
- [ngClass]="dialClass"
789
- [dialItems]="dialItems"
790
- [dialItemTemplate]='dialItemTemplate?.templateRef'
791
- [align]="align"
792
- [attr.aria-labelledby]="id"
793
- (click)="onItemClick($event)"
789
+ <ul
790
+ kendoDialList
791
+ role="menu"
792
+ [id]="dialListId"
793
+ [ngClass]="dialClass"
794
+ [dialItems]="dialItems"
795
+ [dialItemTemplate]='dialItemTemplate?.templateRef'
796
+ [align]="align"
797
+ [attr.aria-labelledby]="id"
798
+ (click)="onItemClick($event)"
794
799
  [kendoEventsOutsideAngular]="{
795
800
  keydown: keyDownHandler.bind(this),
796
801
  focusout: focusOutHandler.bind(this)
797
802
  }"
798
803
  >
799
- </ul>
804
+ </ul>
800
805
  </ng-template>
801
- `, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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"] }] });
806
+ `, 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"] }] });
802
807
  }
803
808
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FloatingActionButtonComponent, decorators: [{
804
809
  type: Component,
@@ -816,64 +821,69 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
816
821
  ],
817
822
  template: `
818
823
  <button
819
- #button
820
- [attr.id]="id"
821
- [tabIndex]="componentTabIndex"
822
- type="button"
823
- class="k-fab k-fab-solid"
824
- [class.k-disabled]="disabled"
825
- [ngClass]="buttonClass"
826
- [disabled]="disabled"
827
- [attr.aria-disabled]="disabled"
828
- [attr.aria-expanded]="ariaExpanded"
829
- [attr.aria-haspopup]="ariaHasPopup"
830
- [attr.aria-controls]="ariaControls"
831
- (focus)="focusHandler()"
832
- (blur)="blurHandler($event)"
824
+ #button
825
+ [attr.id]="id"
826
+ [tabIndex]="componentTabIndex"
827
+ type="button"
828
+ class="k-fab k-fab-solid"
829
+ [class.k-disabled]="disabled"
830
+ [ngClass]="buttonClass"
831
+ [disabled]="disabled"
832
+ [attr.aria-disabled]="disabled"
833
+ [attr.aria-expanded]="ariaExpanded"
834
+ [attr.aria-haspopup]="ariaHasPopup"
835
+ [attr.aria-controls]="ariaControls"
836
+ (focus)="focusHandler()"
837
+ (blur)="blurHandler($event)"
833
838
  [kendoEventsOutsideAngular]="{
834
839
  keydown: keyDownHandler,
835
840
  click: clickHandler,
836
841
  pointerdown: pointerdownHandler
837
842
  }"
838
- [scope]="this"
839
- >
840
- <ng-template *ngIf="fabTemplate"
841
- [ngTemplateOutlet]="fabTemplate?.templateRef"
842
- >
843
+ [scope]="this"
844
+ >
845
+ @if (fabTemplate) {
846
+ <ng-template
847
+ [ngTemplateOutlet]="fabTemplate?.templateRef"
848
+ >
843
849
  </ng-template>
844
-
845
- <ng-container *ngIf="!fabTemplate">
846
- <kendo-icon-wrapper
847
- *ngIf="icon || iconClass || svgIcon"
848
- [name]="icon"
849
- innerCssClass="k-fab-icon"
850
- [customFontClass]="iconClass"
851
- [svgIcon]="svgIcon"></kendo-icon-wrapper>
852
- <span *ngIf="text" class="k-fab-text">{{ text }}</span>
853
- </ng-container>
850
+ }
851
+
852
+ @if (!fabTemplate) {
853
+ @if (icon || iconClass || svgIcon) {
854
+ <kendo-icon-wrapper
855
+ [name]="icon"
856
+ innerCssClass="k-fab-icon"
857
+ [customFontClass]="iconClass"
858
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
859
+ }
860
+ @if (text) {
861
+ <span class="k-fab-text">{{ text }}</span>
862
+ }
863
+ }
854
864
  </button>
855
-
865
+
856
866
  <ng-template #popupTemplate>
857
- <ul
858
- kendoDialList
859
- role="menu"
860
- [id]="dialListId"
861
- [ngClass]="dialClass"
862
- [dialItems]="dialItems"
863
- [dialItemTemplate]='dialItemTemplate?.templateRef'
864
- [align]="align"
865
- [attr.aria-labelledby]="id"
866
- (click)="onItemClick($event)"
867
+ <ul
868
+ kendoDialList
869
+ role="menu"
870
+ [id]="dialListId"
871
+ [ngClass]="dialClass"
872
+ [dialItems]="dialItems"
873
+ [dialItemTemplate]='dialItemTemplate?.templateRef'
874
+ [align]="align"
875
+ [attr.aria-labelledby]="id"
876
+ (click)="onItemClick($event)"
867
877
  [kendoEventsOutsideAngular]="{
868
878
  keydown: keyDownHandler.bind(this),
869
879
  focusout: focusOutHandler.bind(this)
870
880
  }"
871
881
  >
872
- </ul>
882
+ </ul>
873
883
  </ng-template>
874
- `,
884
+ `,
875
885
  standalone: true,
876
- imports: [NgClass, EventsOutsideAngularDirective, NgIf, NgTemplateOutlet, IconWrapperComponent, DialListComponent]
886
+ imports: [NgClass, EventsOutsideAngularDirective, NgTemplateOutlet, IconWrapperComponent, DialListComponent]
877
887
  }]
878
888
  }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.FocusService }, { type: i2.NavigationService }, { type: i0.NgZone }, { type: i3.PopupService }, { type: i4.AnimationBuilder }, { type: i5.LocalizationService }], propDecorators: { fixedClass: [{
879
889
  type: HostBinding,
@@ -9,7 +9,7 @@ import { FocusService } from './../focusable/focus.service';
9
9
  import { KeyEvents } from './../navigation/key-events';
10
10
  import { NavigationService } from './../navigation/navigation.service';
11
11
  import { NavigationAction } from './../navigation/navigation-action';
12
- import { isDocumentAvailable, guid, Keys, isChanged, hasObservers, normalizeNumpadKeys } from '@progress/kendo-angular-common';
12
+ import { isDocumentAvailable, guid, Keys, isChanged, hasObservers, normalizeKeys } from '@progress/kendo-angular-common';
13
13
  import { LocalizationService } from '@progress/kendo-angular-l10n';
14
14
  import { validatePackage } from '@progress/kendo-licensing';
15
15
  import { packageMetadata } from '../package-metadata';
@@ -283,7 +283,7 @@ export class ListButton extends MultiTabStop {
283
283
  eventData.stopImmediatePropagation();
284
284
  }
285
285
  const focused = this.focusService.focused || 0;
286
- const code = normalizeNumpadKeys(eventData);
286
+ const code = normalizeKeys(eventData);
287
287
  const action = this.navigationService.process({
288
288
  altKey: eventData.altKey,
289
289
  current: focused,
@@ -9,7 +9,7 @@ import { ButtonItemTemplateDirective } from './button-item-template.directive';
9
9
  import { SIZES } from '../util';
10
10
  import { IconWrapperComponent } from '@progress/kendo-angular-icons';
11
11
  import { FocusableDirective } from '../focusable/focusable.directive';
12
- import { NgClass, NgFor, NgIf } from '@angular/common';
12
+ import { NgClass } from '@angular/common';
13
13
  import { TemplateContextDirective } from '@progress/kendo-angular-common';
14
14
  import * as i0 from "@angular/core";
15
15
  /**
@@ -52,52 +52,57 @@ export class ListComponent {
52
52
  this.onItemBlur.emit();
53
53
  }
54
54
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
55
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", 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: `
55
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", 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: `
56
56
  <ul class="k-group k-menu-group k-reset" role="list" [ngClass]="sizeClass">
57
+ @for (dataItem of data; track dataItem; let index = $index) {
57
58
  <li kendoButtonFocusable
58
- *ngFor="let dataItem of data; let index = index;"
59
- [index]="index"
60
- tabindex="-1"
61
- class="k-item k-menu-item"
62
- role="listitem"
63
- [attr.aria-disabled]="dataItem.disabled ? true : false"
64
- (click)="$event.stopImmediatePropagation(); onClick(index);"
65
- (blur)="onBlur()">
66
- <ng-template [ngIf]="itemTemplate?.templateRef">
67
- <span
68
- class="k-link k-menu-link"
69
- [class.k-disabled]="dataItem.disabled"
70
- [ngClass]="dataItem.cssClass">
71
- <ng-template
72
- [templateContext]="{ templateRef: itemTemplate?.templateRef, $implicit: dataItem }"
73
- ></ng-template>
59
+ [index]="index"
60
+ tabindex="-1"
61
+ class="k-item k-menu-item"
62
+ role="listitem"
63
+ [attr.aria-disabled]="dataItem.disabled ? true : false"
64
+ (click)="$event.stopImmediatePropagation(); onClick(index);"
65
+ (blur)="onBlur()">
66
+ @if (itemTemplate?.templateRef) {
67
+ <span
68
+ class="k-link k-menu-link"
69
+ [class.k-disabled]="dataItem.disabled"
70
+ [ngClass]="dataItem.cssClass">
71
+ <ng-template
72
+ [templateContext]="{ templateRef: itemTemplate?.templateRef, $implicit: dataItem }"
73
+ ></ng-template>
74
+ </span>
75
+ }
76
+ @if (!itemTemplate?.templateRef) {
77
+ <span
78
+ class="k-link k-menu-link"
79
+ [class.k-disabled]="dataItem.disabled"
80
+ [ngClass]="dataItem.cssClass">
81
+ @if (dataItem.icon || dataItem.iconClass || dataItem.svgIcon) {
82
+ <kendo-icon-wrapper
83
+ [name]="dataItem.icon"
84
+ [svgIcon]="dataItem.svgIcon"
85
+ [customFontClass]="dataItem.iconClass"
86
+ ></kendo-icon-wrapper>
87
+ }
88
+ @if (dataItem.imageUrl) {
89
+ <img
90
+ class="k-image"
91
+ [src]="dataItem.imageUrl"
92
+ [alt]="dataItem.imageAlt"
93
+ >
94
+ }
95
+ @if (getText(dataItem)) {
96
+ <span class="k-menu-link-text">
97
+ {{ getText(dataItem) }}
74
98
  </span>
75
- </ng-template>
76
- <ng-template [ngIf]="!itemTemplate?.templateRef">
77
- <span
78
- class="k-link k-menu-link"
79
- [class.k-disabled]="dataItem.disabled"
80
- [ngClass]="dataItem.cssClass">
81
- <kendo-icon-wrapper
82
- *ngIf="dataItem.icon || dataItem.iconClass || dataItem.svgIcon"
83
- [name]="dataItem.icon"
84
- [svgIcon]="dataItem.svgIcon"
85
- [customFontClass]="dataItem.iconClass"
86
- ></kendo-icon-wrapper>
87
- <img
88
- *ngIf="dataItem.imageUrl"
89
- class="k-image"
90
- [src]="dataItem.imageUrl"
91
- [alt]="dataItem.imageAlt"
92
- >
93
- <span *ngIf="getText(dataItem)" class="k-menu-link-text">
94
- {{ getText(dataItem) }}
95
- </span>
96
- </span>
97
- </ng-template>
99
+ }
100
+ </span>
101
+ }
98
102
  </li>
103
+ }
99
104
  </ul>
100
- `, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: FocusableDirective, selector: "[kendoButtonFocusable]", inputs: ["index"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
105
+ `, 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"] }] });
101
106
  }
102
107
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ListComponent, decorators: [{
103
108
  type: Component,
@@ -105,52 +110,57 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
105
110
  selector: 'kendo-button-list',
106
111
  template: `
107
112
  <ul class="k-group k-menu-group k-reset" role="list" [ngClass]="sizeClass">
113
+ @for (dataItem of data; track dataItem; let index = $index) {
108
114
  <li kendoButtonFocusable
109
- *ngFor="let dataItem of data; let index = index;"
110
- [index]="index"
111
- tabindex="-1"
112
- class="k-item k-menu-item"
113
- role="listitem"
114
- [attr.aria-disabled]="dataItem.disabled ? true : false"
115
- (click)="$event.stopImmediatePropagation(); onClick(index);"
116
- (blur)="onBlur()">
117
- <ng-template [ngIf]="itemTemplate?.templateRef">
118
- <span
119
- class="k-link k-menu-link"
120
- [class.k-disabled]="dataItem.disabled"
121
- [ngClass]="dataItem.cssClass">
122
- <ng-template
123
- [templateContext]="{ templateRef: itemTemplate?.templateRef, $implicit: dataItem }"
124
- ></ng-template>
125
- </span>
126
- </ng-template>
127
- <ng-template [ngIf]="!itemTemplate?.templateRef">
128
- <span
129
- class="k-link k-menu-link"
130
- [class.k-disabled]="dataItem.disabled"
131
- [ngClass]="dataItem.cssClass">
132
- <kendo-icon-wrapper
133
- *ngIf="dataItem.icon || dataItem.iconClass || dataItem.svgIcon"
134
- [name]="dataItem.icon"
135
- [svgIcon]="dataItem.svgIcon"
136
- [customFontClass]="dataItem.iconClass"
137
- ></kendo-icon-wrapper>
138
- <img
139
- *ngIf="dataItem.imageUrl"
140
- class="k-image"
141
- [src]="dataItem.imageUrl"
142
- [alt]="dataItem.imageAlt"
143
- >
144
- <span *ngIf="getText(dataItem)" class="k-menu-link-text">
145
- {{ getText(dataItem) }}
146
- </span>
115
+ [index]="index"
116
+ tabindex="-1"
117
+ class="k-item k-menu-item"
118
+ role="listitem"
119
+ [attr.aria-disabled]="dataItem.disabled ? true : false"
120
+ (click)="$event.stopImmediatePropagation(); onClick(index);"
121
+ (blur)="onBlur()">
122
+ @if (itemTemplate?.templateRef) {
123
+ <span
124
+ class="k-link k-menu-link"
125
+ [class.k-disabled]="dataItem.disabled"
126
+ [ngClass]="dataItem.cssClass">
127
+ <ng-template
128
+ [templateContext]="{ templateRef: itemTemplate?.templateRef, $implicit: dataItem }"
129
+ ></ng-template>
130
+ </span>
131
+ }
132
+ @if (!itemTemplate?.templateRef) {
133
+ <span
134
+ class="k-link k-menu-link"
135
+ [class.k-disabled]="dataItem.disabled"
136
+ [ngClass]="dataItem.cssClass">
137
+ @if (dataItem.icon || dataItem.iconClass || dataItem.svgIcon) {
138
+ <kendo-icon-wrapper
139
+ [name]="dataItem.icon"
140
+ [svgIcon]="dataItem.svgIcon"
141
+ [customFontClass]="dataItem.iconClass"
142
+ ></kendo-icon-wrapper>
143
+ }
144
+ @if (dataItem.imageUrl) {
145
+ <img
146
+ class="k-image"
147
+ [src]="dataItem.imageUrl"
148
+ [alt]="dataItem.imageAlt"
149
+ >
150
+ }
151
+ @if (getText(dataItem)) {
152
+ <span class="k-menu-link-text">
153
+ {{ getText(dataItem) }}
147
154
  </span>
148
- </ng-template>
155
+ }
156
+ </span>
157
+ }
149
158
  </li>
159
+ }
150
160
  </ul>
151
- `,
161
+ `,
152
162
  standalone: true,
153
- imports: [NgClass, NgFor, FocusableDirective, NgIf, TemplateContextDirective, IconWrapperComponent]
163
+ imports: [NgClass, FocusableDirective, TemplateContextDirective, IconWrapperComponent]
154
164
  }]
155
165
  }], ctorParameters: () => [], propDecorators: { data: [{
156
166
  type: Input
@@ -10,7 +10,7 @@ export const packageMetadata = {
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCode: 'KENDOUIANGULAR',
12
12
  productCodes: ['KENDOUIANGULAR'],
13
- publishDate: 1763728908,
14
- version: '21.1.1-develop.2',
13
+ publishDate: 1764592806,
14
+ version: '21.2.0-develop.10',
15
15
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
16
16
  };