@progress/kendo-angular-layout 24.0.0-develop.2 → 24.0.0-develop.20

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.
@@ -16,10 +16,10 @@ import { chevronUpIcon, chevronDownIcon, caretAltLeftIcon, caretAltRightIcon, ca
16
16
  import { IconWrapperComponent } from '@progress/kendo-angular-icons';
17
17
  import { NgTemplateOutlet, NgStyle, NgClass } from '@angular/common';
18
18
  import { delay, takeUntil, map, tap, filter, switchMap, take } from 'rxjs/operators';
19
- import { ProgressBarComponent } from '@progress/kendo-angular-progressbar';
19
+ import { ProgressBarComponent, ProgressBarCustomMessagesComponent } from '@progress/kendo-angular-progressbar';
20
20
  import { Draggable } from '@progress/kendo-draggable';
21
- import { ButtonComponent } from '@progress/kendo-angular-buttons';
22
21
  import { DatePipe } from '@progress/kendo-angular-intl';
22
+ import { ButtonComponent } from '@progress/kendo-angular-buttons';
23
23
 
24
24
  /**
25
25
  * @hidden
@@ -29,8 +29,8 @@ const packageMetadata = {
29
29
  productName: 'Kendo UI for Angular',
30
30
  productCode: 'KENDOUIANGULAR',
31
31
  productCodes: ['KENDOUIANGULAR'],
32
- publishDate: 1776936085,
33
- version: '24.0.0-develop.2',
32
+ publishDate: 1778149392,
33
+ version: '24.0.0-develop.20',
34
34
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
35
35
  };
36
36
 
@@ -428,7 +428,7 @@ class PanelBarItemComponent {
428
428
  return (this.hasChildItems || this.hasContent) ? !this.disabled && this.expanded : null;
429
429
  }
430
430
  get ariaSelected() {
431
- return !this.disabled && this.selected;
431
+ return !this.disabled && (this.selected || this.expanded);
432
432
  }
433
433
  get ariaDisabled() {
434
434
  return this.disabled ? true : null;
@@ -669,8 +669,8 @@ class PanelBarItemComponent {
669
669
  <div
670
670
  #contentWrapper
671
671
  [@toggle]="state"
672
- [attr.role]="'group'"
673
- [attr.aria-hidden]="!disabled && !expanded"
672
+ [attr.role]="hasChildItems ? 'group' : null"
673
+ [attr.aria-hidden]="(!disabled && !expanded) || null"
674
674
  >
675
675
  @if (hasChildItems && !items?.length) {
676
676
  <div
@@ -843,8 +843,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
843
843
  <div
844
844
  #contentWrapper
845
845
  [@toggle]="state"
846
- [attr.role]="'group'"
847
- [attr.aria-hidden]="!disabled && !expanded"
846
+ [attr.role]="hasChildItems ? 'group' : null"
847
+ [attr.aria-hidden]="(!disabled && !expanded) || null"
848
848
  >
849
849
  @if (hasChildItems && !items?.length) {
850
850
  <div
@@ -1236,7 +1236,7 @@ class PanelBarComponent {
1236
1236
  hostClasses = true;
1237
1237
  tabIndex = 0;
1238
1238
  role = 'tree';
1239
- activeDescendant = '';
1239
+ activeDescendant = null;
1240
1240
  get hostHeight() {
1241
1241
  return this.expandMode === PanelBarExpandMode.Full ? this.height : 'auto';
1242
1242
  }
@@ -1369,7 +1369,7 @@ class PanelBarComponent {
1369
1369
  onComponentBlur() {
1370
1370
  this.eventService.onBlur();
1371
1371
  this.focused = false;
1372
- this.activeDescendant = '';
1372
+ this.activeDescendant = null;
1373
1373
  }
1374
1374
  /**
1375
1375
  * @hidden
@@ -1455,7 +1455,7 @@ class PanelBarComponent {
1455
1455
  if (currentItem.selected !== selectedState || currentItem.focused !== focusedState) {
1456
1456
  currentItem.selected = selectedState;
1457
1457
  currentItem.focused = focusedState;
1458
- this.activeDescendant = focusedState ? currentItem.itemId : '';
1458
+ this.activeDescendant = focusedState ? currentItem.itemId : null;
1459
1459
  modifiedItems.push(currentItem);
1460
1460
  }
1461
1461
  });
@@ -1466,7 +1466,7 @@ class PanelBarComponent {
1466
1466
  const focusedState = currentItem === item;
1467
1467
  if (currentItem.focused !== focusedState) {
1468
1468
  currentItem.focused = focusedState;
1469
- this.activeDescendant = focusedState ? currentItem.itemId : '';
1469
+ this.activeDescendant = focusedState ? currentItem.itemId : null;
1470
1470
  modifiedItems.push(currentItem);
1471
1471
  }
1472
1472
  });
@@ -2377,8 +2377,9 @@ class SplitterBarComponent {
2377
2377
  ariaLabel = 'Splitter pane';
2378
2378
  focused = false;
2379
2379
  get hostOrientation() {
2380
- return this.orientation === 'horizontal' ? 'vertical' : 'horizontal';
2380
+ return this.orientation === 'horizontal' ? 'vertical' : null;
2381
2381
  }
2382
+ ariaKeyShortcuts = 'ArrowLeft ArrowRight ArrowUp ArrowDown';
2382
2383
  get tabIndex() {
2383
2384
  return this.splitterService.isStatic(this.index) ? -1 : 0;
2384
2385
  }
@@ -2587,7 +2588,7 @@ class SplitterBarComponent {
2587
2588
  setHTMLAttributes(attributesToRender, this.renderer, this.element.nativeElement);
2588
2589
  }
2589
2590
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: SplitterBarComponent, deps: [{ token: i1$1.DraggableDirective, host: true }, { token: i1.LocalizationService }, { token: SplitterService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2590
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: SplitterBarComponent, isStandalone: true, selector: "kendo-splitter-bar", inputs: { orientation: "orientation", index: "index", htmlAttributes: "htmlAttributes" }, host: { properties: { "attr.role": "this.ariaRole", "attr.aria-label": "this.ariaLabel", "class.k-focus": "this.focused", "attr.aria-orientation": "this.hostOrientation", "attr.tabindex": "this.tabIndex", "class": "this.hostClasses", "style.-ms-flex-order": "this.order", "style.order": "this.order" } }, ngImport: i0, template: `
2591
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: SplitterBarComponent, isStandalone: true, selector: "kendo-splitter-bar", inputs: { orientation: "orientation", index: "index", htmlAttributes: "htmlAttributes" }, host: { properties: { "attr.role": "this.ariaRole", "attr.aria-label": "this.ariaLabel", "class.k-focus": "this.focused", "attr.aria-orientation": "this.hostOrientation", "attr.aria-keyshortcuts": "this.ariaKeyShortcuts", "attr.tabindex": "this.tabIndex", "class": "this.hostClasses", "style.-ms-flex-order": "this.order", "style.order": "this.order" } }, ngImport: i0, template: `
2591
2592
  @if (shouldShowIcon('prev')) {
2592
2593
  <div class="k-collapse-prev" (click)="togglePrevious()">
2593
2594
  <kendo-icon-wrapper
@@ -2597,7 +2598,7 @@ class SplitterBarComponent {
2597
2598
  ></kendo-icon-wrapper>
2598
2599
  </div>
2599
2600
  }
2600
- <div class="k-resize-handle"></div>
2601
+ <div class="k-resize-handle" aria-hidden="true"></div>
2601
2602
  @if (shouldShowIcon('next')) {
2602
2603
  <div class="k-collapse-next" (click)="toggleNext()">
2603
2604
  <kendo-icon-wrapper
@@ -2623,7 +2624,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
2623
2624
  ></kendo-icon-wrapper>
2624
2625
  </div>
2625
2626
  }
2626
- <div class="k-resize-handle"></div>
2627
+ <div class="k-resize-handle" aria-hidden="true"></div>
2627
2628
  @if (shouldShowIcon('next')) {
2628
2629
  <div class="k-collapse-next" (click)="toggleNext()">
2629
2630
  <kendo-icon-wrapper
@@ -2651,6 +2652,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
2651
2652
  }], hostOrientation: [{
2652
2653
  type: HostBinding,
2653
2654
  args: ['attr.aria-orientation']
2655
+ }], ariaKeyShortcuts: [{
2656
+ type: HostBinding,
2657
+ args: ['attr.aria-keyshortcuts']
2654
2658
  }], tabIndex: [{
2655
2659
  type: HostBinding,
2656
2660
  args: ['attr.tabindex']
@@ -3878,7 +3882,7 @@ class TabComponent {
3878
3882
  return this.tab.selected;
3879
3883
  }
3880
3884
  get disabledClass() {
3881
- return this.tab.disabled;
3885
+ return this.tab.disabled || null;
3882
3886
  }
3883
3887
  get focusedClass() {
3884
3888
  return this.tab.focused;
@@ -4657,7 +4661,7 @@ class TabStripComponent {
4657
4661
  'k-tabstrip-items-justify': tabAlignment === 'justify',
4658
4662
  'k-tabstrip-items-scroll': mouseScrollEnabled
4659
4663
  }"
4660
- [attr.aria-orientation]="tabPosition === 'left' || tabPosition === 'right' ? 'vertical' : 'horizontal'"
4664
+ [attr.aria-orientation]="tabPosition === 'left' || tabPosition === 'right' ? 'vertical' : null"
4661
4665
  >
4662
4666
  @for (tab of tabs; track tab; let i = $index) {
4663
4667
  <li
@@ -4728,9 +4732,9 @@ class TabStripComponent {
4728
4732
  [tabIndex]="0"
4729
4733
  role="tabpanel"
4730
4734
  [id]="getTabPanelId(i)"
4731
- [attr.aria-hidden]="!tab.selected"
4735
+ [attr.aria-hidden]="!tab.selected || null"
4732
4736
  [attr.aria-labelledby]="getTabId(i)"
4733
- [attr.aria-disabled]="tab.disabled"
4737
+ [attr.aria-disabled]="tab.disabled || null"
4734
4738
  >
4735
4739
  <ng-template [ngTemplateOutlet]="tab.tabContent?.templateRef"></ng-template>
4736
4740
  </div>
@@ -4850,7 +4854,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
4850
4854
  'k-tabstrip-items-justify': tabAlignment === 'justify',
4851
4855
  'k-tabstrip-items-scroll': mouseScrollEnabled
4852
4856
  }"
4853
- [attr.aria-orientation]="tabPosition === 'left' || tabPosition === 'right' ? 'vertical' : 'horizontal'"
4857
+ [attr.aria-orientation]="tabPosition === 'left' || tabPosition === 'right' ? 'vertical' : null"
4854
4858
  >
4855
4859
  @for (tab of tabs; track tab; let i = $index) {
4856
4860
  <li
@@ -4921,9 +4925,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
4921
4925
  [tabIndex]="0"
4922
4926
  role="tabpanel"
4923
4927
  [id]="getTabPanelId(i)"
4924
- [attr.aria-hidden]="!tab.selected"
4928
+ [attr.aria-hidden]="!tab.selected || null"
4925
4929
  [attr.aria-labelledby]="getTabId(i)"
4926
- [attr.aria-disabled]="tab.disabled"
4930
+ [attr.aria-disabled]="tab.disabled || null"
4927
4931
  >
4928
4932
  <ng-template [ngTemplateOutlet]="tab.tabContent?.templateRef"></ng-template>
4929
4933
  </div>
@@ -5344,20 +5348,20 @@ function collapsePush(duration, width) {
5344
5348
  /**
5345
5349
  * @hidden
5346
5350
  */
5347
- function expandRTLOverlay(duration) {
5351
+ function expandRTLOverlay(duration, width) {
5348
5352
  return [
5349
- style({ transform: `translateX(100%)` }),
5350
- animate(`${duration}ms ease-in`, style({ overflow: 'hidden', transform: `translateX(0)` }))
5353
+ style({ marginRight: `-${width}px` }),
5354
+ animate(`${duration}ms ease-in`, style({ overflow: 'hidden', marginRight: `0px` }))
5351
5355
  ];
5352
5356
  }
5353
5357
  /**
5354
5358
  * @hidden
5355
5359
  */
5356
- function expandOverlay(duration, position) {
5357
- const translateDir = position !== 'end' ? `-100%` : `100%`;
5360
+ function expandOverlay(duration, width, position) {
5361
+ const marginProp = position !== 'end' ? 'marginLeft' : 'marginRight';
5358
5362
  return [
5359
- style({ transform: `translateX(${translateDir})` }),
5360
- animate(`${duration}ms ease-in`, style({ overflow: 'hidden', transform: `translateX(0)` }))
5363
+ style({ [marginProp]: `-${width}px` }),
5364
+ animate(`${duration}ms ease-in`, style({ overflow: 'hidden', [marginProp]: `0px` }))
5361
5365
  ];
5362
5366
  }
5363
5367
  /**
@@ -5372,20 +5376,20 @@ function miniCollapseOverlay(duration, width, miniWidth) {
5372
5376
  /**
5373
5377
  * @hidden
5374
5378
  */
5375
- function collapseOverlay(duration, position) {
5376
- const translateDir = position !== 'end' ? '-100%' : '100%';
5379
+ function collapseOverlay(duration, width, position) {
5380
+ const marginProp = position !== 'end' ? 'marginLeft' : 'marginRight';
5377
5381
  return [
5378
- style({ transform: `translateX(0)` }),
5379
- animate(`${duration}ms ease-in`, style({ overflow: 'hidden', transform: `translateX(${translateDir})` }))
5382
+ style({ [marginProp]: `0px` }),
5383
+ animate(`${duration}ms ease-in`, style({ overflow: 'hidden', [marginProp]: `-${width}px` }))
5380
5384
  ];
5381
5385
  }
5382
5386
  /**
5383
5387
  * @hidden
5384
5388
  */
5385
- function collapseRTLOverlay(duration) {
5389
+ function collapseRTLOverlay(duration, width) {
5386
5390
  return [
5387
- style({ transform: `translateX(0)` }),
5388
- animate(`${duration}ms ease-in`, style({ overflow: 'hidden', transform: `translateX(100%)` }))
5391
+ style({ marginRight: `0px` }),
5392
+ animate(`${duration}ms ease-in`, style({ overflow: 'hidden', marginRight: `-${width}px` }))
5389
5393
  ];
5390
5394
  }
5391
5395
  /**
@@ -5406,7 +5410,7 @@ function expandAnimation(settings) {
5406
5410
  return expandPush(duration, width);
5407
5411
  }
5408
5412
  if (!mini && mode === 'overlay') {
5409
- return rtl ? expandRTLOverlay(duration) : expandOverlay(duration, position);
5413
+ return rtl ? expandRTLOverlay(duration, width) : expandOverlay(duration, width, position);
5410
5414
  }
5411
5415
  if (mini && mode === 'overlay') {
5412
5416
  return miniExpandOverlay(duration, width, miniWidth);
@@ -5430,7 +5434,7 @@ function collapseAnimation(settings) {
5430
5434
  return collapsePush(duration, width);
5431
5435
  }
5432
5436
  if (!mini && mode === 'overlay') {
5433
- return rtl ? collapseRTLOverlay(duration) : collapseOverlay(duration, position);
5437
+ return rtl ? collapseRTLOverlay(duration, width) : collapseOverlay(duration, width, position);
5434
5438
  }
5435
5439
  if (mini && mode === 'overlay') {
5436
5440
  return miniCollapseOverlay(duration, width, miniWidth);
@@ -5776,7 +5780,7 @@ class DrawerListComponent {
5776
5780
  }
5777
5781
  }
5778
5782
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DrawerListComponent, deps: [{ token: DrawerService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
5779
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: DrawerListComponent, isStandalone: true, selector: "[kendoDrawerList]", inputs: { itemTemplate: "itemTemplate", mini: "mini", expanded: "expanded", view: "view" }, outputs: { select: "select", viewChange: "viewChange" }, viewQueries: [{ propertyName: "items", predicate: DrawerItemComponent, descendants: true, read: ElementRef }], ngImport: i0, template: "\n @for (v of view; track identifyItem(idx, v); let idx = $index) {\n @if (!v.item.separator) {\n <li kendoDrawerItem\n class=\"k-drawer-item {{expanded ? ' k-level-' + v.level : ''}}\"\n role=\"menuitem\"\n [viewItem]=\"v\"\n [index]=\"idx\"\n [mini]=\"mini\"\n [expanded]=\"expanded\"\n [itemTemplate]=\"itemTemplate\"\n [attr.data-kendo-drawer-index]=\"v.index\"\n [ngClass]=\"v.item.cssClass\"\n [ngStyle]=\"v.item.cssStyle\"\n [tabindex]=\"v.index === 0 ? '0' : '-1'\">\n </li>\n }\n @if (v.item.separator) {\n <li\n role=\"separator\"\n class=\"k-drawer-item k-drawer-separator\"\n [ngClass]=\"v.item.cssClass\"\n [ngStyle]=\"v.item.cssStyle\">\n &nbsp;\n </li>\n }\n }\n ", isInline: true, dependencies: [{ kind: "component", type: DrawerItemComponent, selector: "[kendoDrawerItem]", inputs: ["viewItem", "index", "itemTemplate", "mini", "expanded", "disabled", "cssClass", "cssStyle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
5783
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: DrawerListComponent, isStandalone: true, selector: "[kendoDrawerList]", inputs: { itemTemplate: "itemTemplate", mini: "mini", expanded: "expanded", view: "view" }, outputs: { select: "select", viewChange: "viewChange" }, viewQueries: [{ propertyName: "items", predicate: DrawerItemComponent, descendants: true, read: ElementRef }], ngImport: i0, template: "\n @for (v of view; track identifyItem(idx, v); let idx = $index) {\n @if (!v.item.separator) {\n <li kendoDrawerItem\n class=\"k-drawer-item {{expanded ? ' k-level-' + v.level : ''}}\"\n role=\"menuitem\"\n [viewItem]=\"v\"\n [index]=\"idx\"\n [mini]=\"mini\"\n [expanded]=\"expanded\"\n [itemTemplate]=\"itemTemplate\"\n [attr.data-kendo-drawer-index]=\"v.index\"\n [ngClass]=\"v.item.cssClass\"\n [ngStyle]=\"v.item.cssStyle\"\n [tabindex]=\"v.index === 0 ? '0' : '-1'\">\n </li>\n }\n @if (v.item.separator) {\n <li\n role=\"separator\"\n class=\"k-drawer-item k-drawer-separator\"\n [ngClass]=\"v.item.cssClass\"\n [ngStyle]=\"v.item.cssStyle\">\n </li>\n }\n }\n ", isInline: true, dependencies: [{ kind: "component", type: DrawerItemComponent, selector: "[kendoDrawerItem]", inputs: ["viewItem", "index", "itemTemplate", "mini", "expanded", "disabled", "cssClass", "cssStyle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
5780
5784
  }
5781
5785
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DrawerListComponent, decorators: [{
5782
5786
  type: Component,
@@ -5805,7 +5809,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
5805
5809
  class="k-drawer-item k-drawer-separator"
5806
5810
  [ngClass]="v.item.cssClass"
5807
5811
  [ngStyle]="v.item.cssStyle">
5808
- &nbsp;
5809
5812
  </li>
5810
5813
  }
5811
5814
  }
@@ -5873,14 +5876,23 @@ class DrawerComponent {
5873
5876
  get endPositionClass() {
5874
5877
  return this.position === 'end';
5875
5878
  }
5876
- get overlayTransofrmStyles() {
5877
- if (this.mode === 'push') {
5878
- return;
5879
+ get overlayMarginLeft() {
5880
+ if (!this.shouldApplyOverlayMargin()) {
5881
+ return null;
5879
5882
  }
5880
- if (this.expanded || this.minimized) {
5881
- return `translateX(0px)`;
5883
+ if (this.rtl || this.position === 'end') {
5884
+ return null;
5882
5885
  }
5883
- return `translateX(-100%)`;
5886
+ return `-${this.drawerWidth}px`;
5887
+ }
5888
+ get overlayMarginRight() {
5889
+ if (!this.shouldApplyOverlayMargin()) {
5890
+ return null;
5891
+ }
5892
+ if (!this.rtl && this.position !== 'end') {
5893
+ return null;
5894
+ }
5895
+ return `-${this.drawerWidth}px`;
5884
5896
  }
5885
5897
  get flexStyles() {
5886
5898
  if (this.mode === 'overlay') {
@@ -6095,6 +6107,9 @@ class DrawerComponent {
6095
6107
  this.expanded = value;
6096
6108
  this.expandedChange.emit(value);
6097
6109
  }
6110
+ shouldApplyOverlayMargin() {
6111
+ return this.mode !== 'push' && !this.expanded && !this.minimized;
6112
+ }
6098
6113
  animate(expanded) {
6099
6114
  const settings = {
6100
6115
  mode: this.mode,
@@ -6122,7 +6137,7 @@ class DrawerComponent {
6122
6137
  return player;
6123
6138
  }
6124
6139
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: DrawerComponent, deps: [{ token: i0.ElementRef }, { token: i1$2.AnimationBuilder }, { token: i1.LocalizationService }, { token: DrawerService }], target: i0.ɵɵFactoryTarget.Component });
6125
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: DrawerComponent, isStandalone: true, selector: "kendo-drawer", inputs: { mode: "mode", position: "position", mini: "mini", expanded: "expanded", width: "width", miniWidth: "miniWidth", autoCollapse: "autoCollapse", items: "items", isItemExpanded: "isItemExpanded", animation: "animation" }, outputs: { expand: "expand", collapse: "collapse", select: "select", expandedChange: "expandedChange" }, host: { properties: { "class.k-drawer": "this.hostClasses", "class.k-drawer-start": "this.startPositionClass", "class.k-drawer-end": "this.endPositionClass", "style.transform": "this.overlayTransofrmStyles", "style.flexBasis.px": "this.flexStyles", "attr.dir": "this.direction" } }, providers: [
6140
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: DrawerComponent, isStandalone: true, selector: "kendo-drawer", inputs: { mode: "mode", position: "position", mini: "mini", expanded: "expanded", width: "width", miniWidth: "miniWidth", autoCollapse: "autoCollapse", items: "items", isItemExpanded: "isItemExpanded", animation: "animation" }, outputs: { expand: "expand", collapse: "collapse", select: "select", expandedChange: "expandedChange" }, host: { properties: { "class.k-drawer": "this.hostClasses", "class.k-drawer-start": "this.startPositionClass", "class.k-drawer-end": "this.endPositionClass", "style.marginLeft": "this.overlayMarginLeft", "style.marginRight": "this.overlayMarginRight", "style.flexBasis.px": "this.flexStyles", "attr.dir": "this.direction" } }, providers: [
6126
6141
  LocalizationService,
6127
6142
  DrawerService,
6128
6143
  {
@@ -6229,9 +6244,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
6229
6244
  }], endPositionClass: [{
6230
6245
  type: HostBinding,
6231
6246
  args: ['class.k-drawer-end']
6232
- }], overlayTransofrmStyles: [{
6247
+ }], overlayMarginLeft: [{
6248
+ type: HostBinding,
6249
+ args: ['style.marginLeft']
6250
+ }], overlayMarginRight: [{
6233
6251
  type: HostBinding,
6234
- args: ['style.transform']
6252
+ args: ['style.marginRight']
6235
6253
  }], flexStyles: [{
6236
6254
  type: HostBinding,
6237
6255
  args: ['style.flexBasis.px']
@@ -6942,6 +6960,7 @@ class StepperStepComponent {
6942
6960
  <a href='#' class='k-step-link' #stepLink
6943
6961
  [attr.tabindex]='tabIndexAttr'
6944
6962
  [attr.title]='step.label'
6963
+ [attr.aria-label]='step.label'
6945
6964
  [attr.aria-disabled]='step.disabled'
6946
6965
  [attr.aria-current]='index === current ? "step" : null'
6947
6966
  (focus)='onFocus()'
@@ -6957,7 +6976,6 @@ class StepperStepComponent {
6957
6976
  @if (showIndicator) {
6958
6977
  <span
6959
6978
  class='k-step-indicator'
6960
- aria-hidden='true'
6961
6979
  [style.transition-duration.ms]='transitionDuration'
6962
6980
  >
6963
6981
  @if (indicatorTemplate) {
@@ -7021,6 +7039,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
7021
7039
  <a href='#' class='k-step-link' #stepLink
7022
7040
  [attr.tabindex]='tabIndexAttr'
7023
7041
  [attr.title]='step.label'
7042
+ [attr.aria-label]='step.label'
7024
7043
  [attr.aria-disabled]='step.disabled'
7025
7044
  [attr.aria-current]='index === current ? "step" : null'
7026
7045
  (focus)='onFocus()'
@@ -7036,7 +7055,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
7036
7055
  @if (showIndicator) {
7037
7056
  <span
7038
7057
  class='k-step-indicator'
7039
- aria-hidden='true'
7040
7058
  [style.transition-duration.ms]='transitionDuration'
7041
7059
  >
7042
7060
  @if (indicatorTemplate) {
@@ -7647,9 +7665,10 @@ class StepperComponent {
7647
7665
  [reverse]='!isHorizontal'
7648
7666
  [value]='currentStep'
7649
7667
  [ngStyle]='progressBarStyling'>
7668
+ <kendo-progressbar-messages progressBarLabel="progress"></kendo-progressbar-messages>
7650
7669
  </kendo-progressbar>
7651
7670
  }
7652
- `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedStepperMessagesDirective, selector: "\n [kendoStepperLocalizedMessages]\n " }, { kind: "component", type: StepperListComponent, selector: "[kendoStepperList]", inputs: ["linear", "stepType", "orientation", "currentStep", "steps", "successIcon", "successSVGIcon", "errorIcon", "errorSVGIcon", "svgIcon", "indicatorTemplate", "labelTemplate", "stepTemplate"], outputs: ["listKeydown", "listClick"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: ProgressBarComponent, selector: "kendo-progressbar", inputs: ["label", "progressCssStyle", "progressCssClass", "emptyCssStyle", "emptyCssClass", "animation"], outputs: ["animationEnd"], exportAs: ["kendoProgressBar"] }] });
7671
+ `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedStepperMessagesDirective, selector: "\n [kendoStepperLocalizedMessages]\n " }, { kind: "component", type: StepperListComponent, selector: "[kendoStepperList]", inputs: ["linear", "stepType", "orientation", "currentStep", "steps", "successIcon", "successSVGIcon", "errorIcon", "errorSVGIcon", "svgIcon", "indicatorTemplate", "labelTemplate", "stepTemplate"], outputs: ["listKeydown", "listClick"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: ProgressBarComponent, selector: "kendo-progressbar", inputs: ["label", "progressCssStyle", "progressCssClass", "emptyCssStyle", "emptyCssClass", "animation"], outputs: ["animationEnd"], exportAs: ["kendoProgressBar"] }, { kind: "component", type: ProgressBarCustomMessagesComponent, selector: "kendo-progressbar-messages" }] });
7653
7672
  }
7654
7673
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: StepperComponent, decorators: [{
7655
7674
  type: Component,
@@ -7702,11 +7721,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
7702
7721
  [reverse]='!isHorizontal'
7703
7722
  [value]='currentStep'
7704
7723
  [ngStyle]='progressBarStyling'>
7724
+ <kendo-progressbar-messages progressBarLabel="progress"></kendo-progressbar-messages>
7705
7725
  </kendo-progressbar>
7706
7726
  }
7707
7727
  `,
7708
7728
  standalone: true,
7709
- imports: [LocalizedStepperMessagesDirective, StepperListComponent, NgStyle, ProgressBarComponent]
7729
+ imports: [LocalizedStepperMessagesDirective, StepperListComponent, NgStyle, ProgressBarComponent, ProgressBarCustomMessagesComponent]
7710
7730
  }]
7711
7731
  }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.LocalizationService }, { type: StepperService }], propDecorators: { hostClasses: [{
7712
7732
  type: HostBinding,
@@ -9027,6 +9047,9 @@ class ExpansionPanelComponent {
9027
9047
  get expandedClass() {
9028
9048
  return this.expanded && !this.disabled;
9029
9049
  }
9050
+ get disabledClass() {
9051
+ return this.disabled;
9052
+ }
9030
9053
  direction;
9031
9054
  /**
9032
9055
  * @hidden
@@ -9232,7 +9255,7 @@ class ExpansionPanelComponent {
9232
9255
  this.renderer.removeClass(this.content.nativeElement, CONTENT_HIDDEN_CLASS);
9233
9256
  }
9234
9257
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: ExpansionPanelComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.LocalizationService }, { token: i1$2.AnimationBuilder }], target: i0.ɵɵFactoryTarget.Component });
9235
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: ExpansionPanelComponent, isStandalone: true, selector: "kendo-expansionpanel", inputs: { title: "title", subtitle: "subtitle", disabled: "disabled", expanded: "expanded", svgExpandIcon: "svgExpandIcon", svgCollapseIcon: "svgCollapseIcon", expandIcon: "expandIcon", collapseIcon: "collapseIcon", animation: "animation" }, outputs: { expandedChange: "expandedChange", action: "action", expand: "expand", collapse: "collapse" }, host: { properties: { "class.k-expander": "this.hostClass", "class.k-expanded": "this.expandedClass", "attr.dir": "this.direction" } }, providers: [
9258
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: ExpansionPanelComponent, isStandalone: true, selector: "kendo-expansionpanel", inputs: { title: "title", subtitle: "subtitle", disabled: "disabled", expanded: "expanded", svgExpandIcon: "svgExpandIcon", svgCollapseIcon: "svgCollapseIcon", expandIcon: "expandIcon", collapseIcon: "collapseIcon", animation: "animation" }, outputs: { expandedChange: "expandedChange", action: "action", expand: "expand", collapse: "collapse" }, host: { properties: { "class.k-expander": "this.hostClass", "class.k-expanded": "this.expandedClass", "class.k-disabled": "this.disabledClass", "attr.dir": "this.direction" } }, providers: [
9236
9259
  LocalizationService,
9237
9260
  {
9238
9261
  provide: L10N_PREFIX,
@@ -9242,8 +9265,7 @@ class ExpansionPanelComponent {
9242
9265
  <div
9243
9266
  #header
9244
9267
  [class.k-expander-header]="true"
9245
- [class.k-disabled]="disabled"
9246
- [attr.aria-disabled]="disabled"
9268
+ [attr.aria-disabled]="disabled || null"
9247
9269
  [attr.aria-expanded]="expanded && !disabled"
9248
9270
  role="button"
9249
9271
  tabindex="0"
@@ -9276,7 +9298,7 @@ class ExpansionPanelComponent {
9276
9298
  </span>
9277
9299
  </div>
9278
9300
  <div #content [id]="contentWrapperId" class="k-expander-content-wrapper">
9279
- <div class="k-expander-content" [attr.aria-hidden]="!expanded">
9301
+ <div class="k-expander-content">
9280
9302
  <ng-content></ng-content>
9281
9303
  </div>
9282
9304
  </div>
@@ -9298,8 +9320,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
9298
9320
  <div
9299
9321
  #header
9300
9322
  [class.k-expander-header]="true"
9301
- [class.k-disabled]="disabled"
9302
- [attr.aria-disabled]="disabled"
9323
+ [attr.aria-disabled]="disabled || null"
9303
9324
  [attr.aria-expanded]="expanded && !disabled"
9304
9325
  role="button"
9305
9326
  tabindex="0"
@@ -9332,7 +9353,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
9332
9353
  </span>
9333
9354
  </div>
9334
9355
  <div #content [id]="contentWrapperId" class="k-expander-content-wrapper">
9335
- <div class="k-expander-content" [attr.aria-hidden]="!expanded">
9356
+ <div class="k-expander-content">
9336
9357
  <ng-content></ng-content>
9337
9358
  </div>
9338
9359
  </div>
@@ -9381,6 +9402,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
9381
9402
  }], expandedClass: [{
9382
9403
  type: HostBinding,
9383
9404
  args: ['class.k-expanded']
9405
+ }], disabledClass: [{
9406
+ type: HostBinding,
9407
+ args: ['class.k-disabled']
9384
9408
  }], direction: [{
9385
9409
  type: HostBinding,
9386
9410
  args: ['attr.dir']
@@ -10401,18 +10425,12 @@ class TileLayoutItemComponent {
10401
10425
  resizable = true;
10402
10426
  itemClass = true;
10403
10427
  hostRole = 'listitem';
10404
- get hostDropEffect() {
10405
- return this.isResizable || this.isReorderable ? 'execute' : undefined;
10406
- }
10407
10428
  get hostTabindex() {
10408
10429
  return this.isNavigable ? '0' : undefined;
10409
10430
  }
10410
10431
  get ariaKeyShortcuts() {
10411
10432
  return this.isNavigable ? 'Enter' : undefined;
10412
10433
  }
10413
- get hostGrabbed() {
10414
- return this.isResizable || this.isReorderable;
10415
- }
10416
10434
  get hostLabelledBy() {
10417
10435
  return this.title ? this.titleId : undefined;
10418
10436
  }
@@ -10538,7 +10556,7 @@ class TileLayoutItemComponent {
10538
10556
  }
10539
10557
  }
10540
10558
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: TileLayoutItemComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: TileLayoutDraggingService }, { token: TileLayoutKeyboardNavigationService }], target: i0.ɵɵFactoryTarget.Component });
10541
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: TileLayoutItemComponent, isStandalone: true, selector: "kendo-tilelayout-item", inputs: { title: "title", rowSpan: "rowSpan", colSpan: "colSpan", order: "order", col: "col", row: "row", reorderable: "reorderable", resizable: "resizable" }, host: { properties: { "class.k-tilelayout-item": "this.itemClass", "class.k-card": "this.itemClass", "attr.role": "this.hostRole", "attr.aria-dropeffect": "this.hostDropEffect", "attr.tabindex": "this.hostTabindex", "attr.aria-keyshortcuts": "this.ariaKeyShortcuts", "attr.aria-grabbed": "this.hostGrabbed", "attr.aria-labelledby": "this.hostLabelledBy", "style.grid-column-end": "this.colEnd", "style.grid-row-end": "this.rowEnd", "style.grid-column-start": "this.colStart", "style.grid-row-start": "this.rowStart" } }, queries: [{ propertyName: "headers", predicate: TileLayoutItemHeaderComponent }], usesOnChanges: true, ngImport: i0, template: `
10559
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: TileLayoutItemComponent, isStandalone: true, selector: "kendo-tilelayout-item", inputs: { title: "title", rowSpan: "rowSpan", colSpan: "colSpan", order: "order", col: "col", row: "row", reorderable: "reorderable", resizable: "resizable" }, host: { properties: { "class.k-tilelayout-item": "this.itemClass", "class.k-card": "this.itemClass", "attr.role": "this.hostRole", "attr.tabindex": "this.hostTabindex", "attr.aria-keyshortcuts": "this.ariaKeyShortcuts", "attr.aria-labelledby": "this.hostLabelledBy", "style.grid-column-end": "this.colEnd", "style.grid-row-end": "this.rowEnd", "style.grid-column-start": "this.colStart", "style.grid-row-start": "this.rowStart" } }, queries: [{ propertyName: "headers", predicate: TileLayoutItemHeaderComponent }], usesOnChanges: true, ngImport: i0, template: `
10542
10560
  @if (title) {
10543
10561
  <kendo-tilelayout-item-header>
10544
10562
  <h5 [id]="titleId" class="k-card-title">{{ title }}</h5>
@@ -10607,18 +10625,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
10607
10625
  }], hostRole: [{
10608
10626
  type: HostBinding,
10609
10627
  args: ['attr.role']
10610
- }], hostDropEffect: [{
10611
- type: HostBinding,
10612
- args: ['attr.aria-dropeffect']
10613
10628
  }], hostTabindex: [{
10614
10629
  type: HostBinding,
10615
10630
  args: ['attr.tabindex']
10616
10631
  }], ariaKeyShortcuts: [{
10617
10632
  type: HostBinding,
10618
10633
  args: ['attr.aria-keyshortcuts']
10619
- }], hostGrabbed: [{
10620
- type: HostBinding,
10621
- args: ['attr.aria-grabbed']
10622
10634
  }], hostLabelledBy: [{
10623
10635
  type: HostBinding,
10624
10636
  args: ['attr.aria-labelledby']
@@ -11818,13 +11830,19 @@ class TimelineCardComponent {
11818
11830
  }
11819
11831
  }
11820
11832
  get role() {
11821
- return this.orientation === 'vertical' ? 'button' : 'tabpanel';
11833
+ if (this.orientation === 'vertical') {
11834
+ return 'button';
11835
+ }
11836
+ return this.event ? 'tabpanel' : null;
11837
+ }
11838
+ get ariaCardLabel() {
11839
+ return this.orientation === 'horizontal' && this.event ? this.event.subtitle : null;
11822
11840
  }
11823
11841
  get ariaLive() {
11824
11842
  return this.orientation === 'vertical' ? 'polite' : null;
11825
11843
  }
11826
11844
  get ariaExpanded() {
11827
- return this.orientation === 'vertical' ? this.expanded : null;
11845
+ return this.orientation === 'vertical' && this.collapsible ? this.expanded : null;
11828
11846
  }
11829
11847
  calloutSvgIcon = chevronRightIcon;
11830
11848
  calloutFontIcon = 'arrow-chevron-right';
@@ -11898,6 +11916,7 @@ class TimelineCardComponent {
11898
11916
  class="k-card-with-callout k-card-vertical"
11899
11917
  (click)="toggle()"
11900
11918
  [attr.role]="role"
11919
+ [attr.aria-label]="ariaCardLabel"
11901
11920
  [attr.aria-live]="ariaLive"
11902
11921
  [attr.aria-expanded]="ariaExpanded"
11903
11922
  [attr.tabindex]="tabIndex"
@@ -11926,16 +11945,13 @@ class TimelineCardComponent {
11926
11945
  <div kendoCardTitle>
11927
11946
  <span class="k-event-title">{{ event.title }}</span>
11928
11947
  @if (collapsible && orientation === 'vertical') {
11929
- <button
11930
- kendoButton
11931
- [icon]="calloutFontIcon"
11932
- [svgIcon]="calloutSvgIcon"
11933
- class="k-event-collapse"
11934
- fillMode="flat"
11935
- [attr.aria-hidden]="true"
11936
- tabindex="-1"
11937
- type="button"
11938
- ></button>
11948
+ <span class="k-event-collapse k-button k-button-flat k-icon-button">
11949
+ <kendo-icon-wrapper
11950
+ [name]="calloutFontIcon"
11951
+ [svgIcon]="calloutSvgIcon"
11952
+ innerCssClass="k-button-icon">
11953
+ </kendo-icon-wrapper>
11954
+ </span>
11939
11955
  }
11940
11956
  </div>
11941
11957
  }
@@ -12002,7 +12018,7 @@ class TimelineCardComponent {
12002
12018
  </div>
12003
12019
  }
12004
12020
  </kendo-card>
12005
- `, isInline: true, dependencies: [{ kind: "component", type: CardComponent, selector: "kendo-card", inputs: ["orientation", "width"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: CardHeaderComponent, selector: "kendo-card-header" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: CardTitleDirective, selector: "[kendoCardTitle]" }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconPosition", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: CardSubtitleDirective, selector: "[kendoCardSubtitle]" }, { kind: "component", type: CardBodyComponent, selector: "kendo-card-body" }, { kind: "directive", type: CardMediaDirective, selector: "[kendoCardMedia]" }, { kind: "component", type: CardActionsComponent, selector: "kendo-card-actions", inputs: ["orientation", "layout", "actions"], outputs: ["action"] }], animations: [
12021
+ `, isInline: true, dependencies: [{ kind: "component", type: CardComponent, selector: "kendo-card", inputs: ["orientation", "width"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: CardHeaderComponent, selector: "kendo-card-header" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: CardTitleDirective, selector: "[kendoCardTitle]" }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: CardSubtitleDirective, selector: "[kendoCardSubtitle]" }, { kind: "component", type: CardBodyComponent, selector: "kendo-card-body" }, { kind: "directive", type: CardMediaDirective, selector: "[kendoCardMedia]" }, { kind: "component", type: CardActionsComponent, selector: "kendo-card-actions", inputs: ["orientation", "layout", "actions"], outputs: ["action"] }], animations: [
12006
12022
  trigger('toggle', [
12007
12023
  state('collapsed', style({
12008
12024
  height: '0',
@@ -12050,6 +12066,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
12050
12066
  class="k-card-with-callout k-card-vertical"
12051
12067
  (click)="toggle()"
12052
12068
  [attr.role]="role"
12069
+ [attr.aria-label]="ariaCardLabel"
12053
12070
  [attr.aria-live]="ariaLive"
12054
12071
  [attr.aria-expanded]="ariaExpanded"
12055
12072
  [attr.tabindex]="tabIndex"
@@ -12078,16 +12095,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
12078
12095
  <div kendoCardTitle>
12079
12096
  <span class="k-event-title">{{ event.title }}</span>
12080
12097
  @if (collapsible && orientation === 'vertical') {
12081
- <button
12082
- kendoButton
12083
- [icon]="calloutFontIcon"
12084
- [svgIcon]="calloutSvgIcon"
12085
- class="k-event-collapse"
12086
- fillMode="flat"
12087
- [attr.aria-hidden]="true"
12088
- tabindex="-1"
12089
- type="button"
12090
- ></button>
12098
+ <span class="k-event-collapse k-button k-button-flat k-icon-button">
12099
+ <kendo-icon-wrapper
12100
+ [name]="calloutFontIcon"
12101
+ [svgIcon]="calloutSvgIcon"
12102
+ innerCssClass="k-button-icon">
12103
+ </kendo-icon-wrapper>
12104
+ </span>
12091
12105
  }
12092
12106
  </div>
12093
12107
  }
@@ -12156,7 +12170,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
12156
12170
  </kendo-card>
12157
12171
  `,
12158
12172
  standalone: true,
12159
- imports: [CardComponent, NgStyle, NgClass, CardHeaderComponent, NgTemplateOutlet, CardTitleDirective, ButtonComponent, CardSubtitleDirective, CardBodyComponent, CardMediaDirective, CardActionsComponent]
12173
+ imports: [CardComponent, NgStyle, NgClass, CardHeaderComponent, NgTemplateOutlet, CardTitleDirective, IconWrapperComponent, CardSubtitleDirective, CardBodyComponent, CardMediaDirective, CardActionsComponent]
12160
12174
  }]
12161
12175
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: TimelineService }, { type: i0.Renderer2 }], propDecorators: { event: [{
12162
12176
  type: Input
@@ -12538,9 +12552,10 @@ class TimelineHorizontalComponent {
12538
12552
  });
12539
12553
  }
12540
12554
  assignAriaLabel(cardElement, dateElement) {
12541
- const dateLabelId = `k-${guid()}`;
12542
- this.renderer.setAttribute(dateElement, 'id', dateLabelId);
12543
- this.renderer.setAttribute(cardElement, 'aria-label', dateLabelId);
12555
+ const dateSpan = dateElement.querySelector('.k-timeline-date');
12556
+ if (dateSpan) {
12557
+ this.renderer.setAttribute(cardElement, 'aria-label', dateSpan.textContent.trim());
12558
+ }
12544
12559
  }
12545
12560
  assignAriaDescribedBy(cardElement, dateElement) {
12546
12561
  const cardId = `k-${guid()}`;
@@ -12667,6 +12682,7 @@ class TimelineHorizontalComponent {
12667
12682
  class="k-timeline-arrow k-timeline-arrow-left"
12668
12683
  rounded="full"
12669
12684
  [title]="previousTitle"
12685
+ [attr.aria-hidden]="true"
12670
12686
  (click)="previousClick()"
12671
12687
  [disabled]="isFirstRange"
12672
12688
  tabindex="-1"
@@ -12679,6 +12695,7 @@ class TimelineHorizontalComponent {
12679
12695
  class="k-timeline-arrow k-timeline-arrow-right"
12680
12696
  rounded="full"
12681
12697
  [title]="nextTitle"
12698
+ [attr.aria-hidden]="true"
12682
12699
  (click)="nextClick()"
12683
12700
  [disabled]="isLastRange"
12684
12701
  tabindex="-1"
@@ -12821,6 +12838,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
12821
12838
  class="k-timeline-arrow k-timeline-arrow-left"
12822
12839
  rounded="full"
12823
12840
  [title]="previousTitle"
12841
+ [attr.aria-hidden]="true"
12824
12842
  (click)="previousClick()"
12825
12843
  [disabled]="isFirstRange"
12826
12844
  tabindex="-1"
@@ -12833,6 +12851,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImpo
12833
12851
  class="k-timeline-arrow k-timeline-arrow-right"
12834
12852
  rounded="full"
12835
12853
  [title]="nextTitle"
12854
+ [attr.aria-hidden]="true"
12836
12855
  (click)="nextClick()"
12837
12856
  [disabled]="isLastRange"
12838
12857
  tabindex="-1"