@progress/kendo-angular-scheduler 18.1.0-develop.29 → 18.1.0-develop.3

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.
@@ -10,7 +10,7 @@ export const packageMetadata = {
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCode: 'KENDOUIANGULAR',
12
12
  productCodes: ['KENDOUIANGULAR'],
13
- publishDate: 1738943463,
14
- version: '18.1.0-develop.29',
13
+ publishDate: 1738246147,
14
+ version: '18.1.0-develop.3',
15
15
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
16
16
  };
@@ -2,23 +2,21 @@
2
2
  * Copyright © 2025 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- import { Component, Input, ChangeDetectionStrategy, TemplateRef, HostBinding } from '@angular/core';
5
+ import { Component, Input, ChangeDetectionStrategy, TemplateRef, HostBinding, Inject, LOCALE_ID } from '@angular/core';
6
6
  import { LocalizationService } from '@progress/kendo-angular-l10n';
7
7
  import { toLocalDate } from '@progress/kendo-date-math';
8
8
  import { arrowRotateCwIcon, arrowsNoRepeatIcon, xIcon } from '@progress/kendo-svg-icons';
9
9
  import { isRecurrence, isRecurrenceException, formatEventTime } from '../utils';
10
10
  import { IconWrapperComponent } from '@progress/kendo-angular-icons';
11
11
  import { NgIf, NgTemplateOutlet } from '@angular/common';
12
- import { IntlService } from '@progress/kendo-angular-intl';
13
12
  import * as i0 from "@angular/core";
14
13
  import * as i1 from "@progress/kendo-angular-l10n";
15
- import * as i2 from "@progress/kendo-angular-intl";
16
14
  /**
17
15
  * @hidden
18
16
  */
19
17
  export class AgendaTaskItemComponent {
20
18
  localization;
21
- intl;
19
+ localeId;
22
20
  arrowRotateCWIcon = arrowRotateCwIcon;
23
21
  arrowsNoRepeatIcon = arrowsNoRepeatIcon;
24
22
  xIcon = xIcon;
@@ -30,7 +28,7 @@ export class AgendaTaskItemComponent {
30
28
  get eventTitle() {
31
29
  const start = toLocalDate(this.item.start);
32
30
  const end = toLocalDate(this.item.end);
33
- const time = formatEventTime(start, end, this.item.isAllDay, this.intl.localeId);
31
+ const time = formatEventTime(start, end, this.item.isAllDay, this.localeId);
34
32
  return `${time}, ${this.item.event.title}`;
35
33
  }
36
34
  get eventColor() {
@@ -48,11 +46,11 @@ export class AgendaTaskItemComponent {
48
46
  get removable() {
49
47
  return this.editable && this.editable.remove !== false;
50
48
  }
51
- constructor(localization, intl) {
49
+ constructor(localization, localeId) {
52
50
  this.localization = localization;
53
- this.intl = intl;
51
+ this.localeId = localeId;
54
52
  }
55
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AgendaTaskItemComponent, deps: [{ token: i1.LocalizationService }, { token: i2.IntlService }], target: i0.ɵɵFactoryTarget.Component });
53
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AgendaTaskItemComponent, deps: [{ token: i1.LocalizationService }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Component });
56
54
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AgendaTaskItemComponent, isStandalone: true, selector: "[kendoSchedulerAgendaTaskItem]", inputs: { item: ["kendoSchedulerAgendaTaskItem", "item"], color: "color", eventTemplate: "eventTemplate", editable: "editable" }, host: { properties: { "class.k-scheduler-cell": "this.cellClass", "attr.aria-label": "this.eventTitle" } }, ngImport: i0, template: `
57
55
  <div class="k-task" [title]="item.title">
58
56
  <span class="k-scheduler-mark" *ngIf="eventColor" [style.background-color]="eventColor"></span>
@@ -99,7 +97,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
99
97
  standalone: true,
100
98
  imports: [NgIf, IconWrapperComponent, NgTemplateOutlet]
101
99
  }]
102
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i2.IntlService }]; }, propDecorators: { item: [{
100
+ }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: undefined, decorators: [{
101
+ type: Inject,
102
+ args: [LOCALE_ID]
103
+ }] }]; }, propDecorators: { item: [{
103
104
  type: Input,
104
105
  args: ["kendoSchedulerAgendaTaskItem"]
105
106
  }], color: [{
@@ -58,23 +58,11 @@ function initTimeColumns(slotKeys, slotItems) {
58
58
  events.splice(event.columnIndex, 0, event);
59
59
  break;
60
60
  }
61
- //events that don't intersect their start or end times but overlap in rendered height due to the minimum event height
62
- const anyOverlappingEvents = events.filter(e => e !== current && e.rect).some(event => {
63
- const areIntersecting = intersects(event.item.startTime, event.item.endTime, current.item.startTime, current.item.endTime);
64
- const areOverlapping = minHeightOverlaps(current.rect.top, event.rect.top);
65
- return !areIntersecting && areOverlapping;
66
- });
67
- const intersectingEvents = intersects(event.item.startTime, event.item.endTime, current.item.startTime, current.item.endTime);
68
- const overlappingEvents = minHeightOverlaps(current.rect.top, event.rect.top);
69
- if (!(anyOverlappingEvents || intersectingEvents || overlappingEvents)) {
70
- columns--;
61
+ if (!intersects(event.item.startTime, event.item.endTime, current.item.startTime, current.item.endTime) &&
62
+ !minHeightOverlaps(current.rect.top, event.rect.top)) {
71
63
  event.columnIndex = idx;
72
- event.lastColumn = !events.some((e) => {
73
- const hasColumnIndex = e.columnIndex;
74
- const isBeforeCurrentIndex = idx < e.columnIndex;
75
- const areIntersecting = intersects(event.item.startTime, event.item.endTime, e.item.startTime, e.item.endTime);
76
- return hasColumnIndex && isBeforeCurrentIndex && areIntersecting;
77
- });
64
+ event.lastColumn = !events.some(e => e.columnIndex && idx < e.columnIndex &&
65
+ intersects(event.item.startTime, event.item.endTime, e.item.startTime, e.item.endTime));
78
66
  events.splice(eventIdx, 1);
79
67
  events.splice(idx, 0, event);
80
68
  break;
@@ -2,7 +2,7 @@
2
2
  * Copyright © 2025 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- import { Component, ElementRef, Input, Renderer2 } from '@angular/core';
5
+ import { Component, ElementRef, Input, Renderer2, Inject, LOCALE_ID } from '@angular/core';
6
6
  import { IntlService } from '@progress/kendo-angular-intl';
7
7
  import { LocalizationService } from '@progress/kendo-angular-l10n';
8
8
  import { toLocalDate } from '@progress/kendo-date-math';
@@ -13,15 +13,16 @@ import { BaseViewItem } from '../view-items/base-view-item';
13
13
  import { IconWrapperComponent } from '@progress/kendo-angular-icons';
14
14
  import { NgIf, NgTemplateOutlet } from '@angular/common';
15
15
  import * as i0 from "@angular/core";
16
- import * as i1 from "../day-time/day-time-slot.service";
17
- import * as i2 from "@progress/kendo-angular-l10n";
18
- import * as i3 from "../../navigation";
19
- import * as i4 from "@progress/kendo-angular-intl";
16
+ import * as i1 from "@progress/kendo-angular-intl";
17
+ import * as i2 from "../day-time/day-time-slot.service";
18
+ import * as i3 from "@progress/kendo-angular-l10n";
19
+ import * as i4 from "../../navigation";
20
20
  /**
21
21
  * @hidden
22
22
  */
23
23
  export class DayTimeViewItemComponent extends BaseViewItem {
24
24
  intlService;
25
+ localeId;
25
26
  caretAltLeftIcon = caretAltLeftIcon;
26
27
  caretAltRightIcon = caretAltRightIcon;
27
28
  caretAltUpIcon = caretAltUpIcon;
@@ -31,16 +32,16 @@ export class DayTimeViewItemComponent extends BaseViewItem {
31
32
  xIcon = xIcon;
32
33
  vertical;
33
34
  isAllDay;
34
- name;
35
35
  get eventTime() {
36
36
  return this.intlService.format('{0:t}–{1:t}', toLocalDate(this.item.startTime), toLocalDate(this.item.endTime));
37
37
  }
38
- constructor(slotService, localization, focusService, element, renderer, intlService) {
39
- super(slotService, localization, focusService, element, renderer, intlService);
38
+ constructor(intlService, slotService, localization, focusService, element, renderer, localeId) {
39
+ super(slotService, localization, focusService, element, renderer, localeId);
40
40
  this.intlService = intlService;
41
+ this.localeId = localeId;
41
42
  }
42
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DayTimeViewItemComponent, deps: [{ token: i1.DayTimeSlotService }, { token: i2.LocalizationService }, { token: i3.FocusService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i4.IntlService }], target: i0.ɵɵFactoryTarget.Component });
43
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DayTimeViewItemComponent, isStandalone: true, selector: "[dayTimeViewItem]", inputs: { vertical: "vertical", isAllDay: "isAllDay", name: "name" }, usesInheritance: true, ngImport: i0, template: `
43
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DayTimeViewItemComponent, deps: [{ token: i1.IntlService }, { token: i2.DayTimeSlotService }, { token: i3.LocalizationService }, { token: i4.FocusService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Component });
44
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DayTimeViewItemComponent, isStandalone: true, selector: "[dayTimeViewItem]", inputs: { vertical: "vertical", isAllDay: "isAllDay" }, usesInheritance: true, ngImport: i0, template: `
44
45
  <span class="k-event-actions">
45
46
  <kendo-icon-wrapper
46
47
  *ngIf="item.tail && !vertical"
@@ -94,7 +95,7 @@ export class DayTimeViewItemComponent extends BaseViewItem {
94
95
  <span class="k-resize-handle k-resize-s" *ngIf="!item.head"></span>
95
96
  </ng-container>
96
97
 
97
- <ng-container *ngIf="resizable && !vertical && !(isAllDay && name === 'day')">
98
+ <ng-container *ngIf="resizable && !vertical">
98
99
  <span class="k-resize-handle k-resize-w"></span>
99
100
  <span class="k-resize-handle k-resize-e"></span>
100
101
  </ng-container>
@@ -159,7 +160,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
159
160
  <span class="k-resize-handle k-resize-s" *ngIf="!item.head"></span>
160
161
  </ng-container>
161
162
 
162
- <ng-container *ngIf="resizable && !vertical && !(isAllDay && name === 'day')">
163
+ <ng-container *ngIf="resizable && !vertical">
163
164
  <span class="k-resize-handle k-resize-w"></span>
164
165
  <span class="k-resize-handle k-resize-e"></span>
165
166
  </ng-container>
@@ -167,10 +168,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
167
168
  standalone: true,
168
169
  imports: [NgIf, IconWrapperComponent, NgTemplateOutlet]
169
170
  }]
170
- }], ctorParameters: function () { return [{ type: i1.DayTimeSlotService }, { type: i2.LocalizationService }, { type: i3.FocusService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i4.IntlService }]; }, propDecorators: { vertical: [{
171
+ }], ctorParameters: function () { return [{ type: i1.IntlService }, { type: i2.DayTimeSlotService }, { type: i3.LocalizationService }, { type: i4.FocusService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
172
+ type: Inject,
173
+ args: [LOCALE_ID]
174
+ }] }]; }, propDecorators: { vertical: [{
171
175
  type: Input
172
176
  }], isAllDay: [{
173
177
  type: Input
174
- }], name: [{
175
- type: Input
176
178
  }] } });
@@ -2,7 +2,7 @@
2
2
  * Copyright © 2025 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- import { Component, ElementRef, Renderer2 } from '@angular/core';
5
+ import { Component, ElementRef, Renderer2, Inject, LOCALE_ID } from '@angular/core';
6
6
  import { LocalizationService } from '@progress/kendo-angular-l10n';
7
7
  import { MonthSlotService } from './month-slot.service';
8
8
  import { BaseViewItem } from '../view-items/base-view-item';
@@ -10,23 +10,23 @@ import { FocusService } from '../../navigation';
10
10
  import { arrowRotateCwIcon, arrowsNoRepeatIcon, caretAltLeftIcon, caretAltRightIcon, xIcon } from '@progress/kendo-svg-icons';
11
11
  import { IconWrapperComponent } from '@progress/kendo-angular-icons';
12
12
  import { NgIf, NgTemplateOutlet } from '@angular/common';
13
- import { IntlService } from '@progress/kendo-angular-intl';
14
13
  import * as i0 from "@angular/core";
15
14
  import * as i1 from "./month-slot.service";
16
15
  import * as i2 from "@progress/kendo-angular-l10n";
17
16
  import * as i3 from "../../navigation";
18
- import * as i4 from "@progress/kendo-angular-intl";
19
17
  /**
20
18
  * @hidden
21
19
  */
22
20
  export class MonthViewItemComponent extends BaseViewItem {
21
+ localeId;
23
22
  caretAltLeftIcon = caretAltLeftIcon;
24
23
  caretAltRightIcon = caretAltRightIcon;
25
24
  arrowRotateCwIcon = arrowRotateCwIcon;
26
25
  arrowsNoRepeatIcon = arrowsNoRepeatIcon;
27
26
  xIcon = xIcon;
28
- constructor(slotService, localization, focusService, element, renderer, intl) {
29
- super(slotService, localization, focusService, element, renderer, intl);
27
+ constructor(slotService, localization, focusService, element, renderer, localeId) {
28
+ super(slotService, localization, focusService, element, renderer, localeId);
29
+ this.localeId = localeId;
30
30
  }
31
31
  reflow() {
32
32
  if (this.item.data[this.resourceIndex].hidden) {
@@ -38,7 +38,7 @@ export class MonthViewItemComponent extends BaseViewItem {
38
38
  }
39
39
  super.reflow();
40
40
  }
41
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MonthViewItemComponent, deps: [{ token: i1.MonthSlotService }, { token: i2.LocalizationService }, { token: i3.FocusService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i4.IntlService }], target: i0.ɵɵFactoryTarget.Component });
41
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MonthViewItemComponent, deps: [{ token: i1.MonthSlotService }, { token: i2.LocalizationService }, { token: i3.FocusService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Component });
42
42
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MonthViewItemComponent, isStandalone: true, selector: "[monthViewItem]", usesInheritance: true, ngImport: i0, template: `
43
43
  <span class="k-event-actions">
44
44
  <kendo-icon-wrapper
@@ -138,4 +138,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
138
138
  standalone: true,
139
139
  imports: [NgIf, IconWrapperComponent, NgTemplateOutlet]
140
140
  }]
141
- }], ctorParameters: function () { return [{ type: i1.MonthSlotService }, { type: i2.LocalizationService }, { type: i3.FocusService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i4.IntlService }]; } });
141
+ }], ctorParameters: function () { return [{ type: i1.MonthSlotService }, { type: i2.LocalizationService }, { type: i3.FocusService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
142
+ type: Inject,
143
+ args: [LOCALE_ID]
144
+ }] }]; } });
@@ -327,7 +327,6 @@ export class MultiDayViewRendererComponent extends DayTimeViewComponent {
327
327
  [kendoSchedulerFocusIndex]="itemResource.leafIdx"
328
328
  [id]="item.elementId + '_' + itemResource.leafIdx"
329
329
  dayTimeViewItem
330
- [name]="name"
331
330
  [isAllDay]="true"
332
331
  [editable]="editable"
333
332
  [eventTemplate]="allDayEventTemplateRef"
@@ -530,7 +529,7 @@ export class MultiDayViewRendererComponent extends DayTimeViewComponent {
530
529
  </tr>
531
530
  </tbody>
532
531
  </table>
533
- `, 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: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: DaySlotDirective, selector: "[daySlot]", inputs: ["start", "end"] }, { kind: "component", type: DayTimeViewItemComponent, selector: "[dayTimeViewItem]", inputs: ["vertical", "isAllDay", "name"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: FocusableDirective, selector: "[kendoSchedulerFocusIndex]", inputs: ["kendoSchedulerFocusIndex", "containerType"] }, { kind: "component", type: HintContainerComponent, selector: "kendo-hint-container" }, { kind: "component", type: ResizeHintComponent, selector: "[kendoResizeHint]", inputs: ["hint", "format"] }, { kind: "directive", type: TimeSlotDirective, selector: "[timeSlot]", inputs: ["invariantStart", "invariantEnd", "workDayStart", "workDayEnd", "workWeekStart", "workWeekEnd", "date"], exportAs: ["timeSlot"] }, { kind: "pipe", type: ResourceIteratorPipe, name: "resourceIterator" }, { kind: "pipe", type: DatePipe, name: "kendoDate" }, { kind: "pipe", type: AsyncPipe, name: "async" }] });
532
+ `, 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: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: DaySlotDirective, selector: "[daySlot]", inputs: ["start", "end"] }, { kind: "component", type: DayTimeViewItemComponent, selector: "[dayTimeViewItem]", inputs: ["vertical", "isAllDay"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: FocusableDirective, selector: "[kendoSchedulerFocusIndex]", inputs: ["kendoSchedulerFocusIndex", "containerType"] }, { kind: "component", type: HintContainerComponent, selector: "kendo-hint-container" }, { kind: "component", type: ResizeHintComponent, selector: "[kendoResizeHint]", inputs: ["hint", "format"] }, { kind: "directive", type: TimeSlotDirective, selector: "[timeSlot]", inputs: ["invariantStart", "invariantEnd", "workDayStart", "workDayEnd", "workWeekStart", "workWeekEnd", "date"], exportAs: ["timeSlot"] }, { kind: "pipe", type: ResourceIteratorPipe, name: "resourceIterator" }, { kind: "pipe", type: DatePipe, name: "kendoDate" }, { kind: "pipe", type: AsyncPipe, name: "async" }] });
534
533
  }
535
534
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MultiDayViewRendererComponent, decorators: [{
536
535
  type: Component,
@@ -616,7 +615,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
616
615
  [kendoSchedulerFocusIndex]="itemResource.leafIdx"
617
616
  [id]="item.elementId + '_' + itemResource.leafIdx"
618
617
  dayTimeViewItem
619
- [name]="name"
620
618
  [isAllDay]="true"
621
619
  [editable]="editable"
622
620
  [eventTemplate]="allDayEventTemplateRef"
@@ -331,7 +331,7 @@ export class TimelineMultiDayViewComponent extends DayTimeViewComponent {
331
331
  </tr>
332
332
  </tbody>
333
333
  </table>
334
- `, 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: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: TimeSlotDirective, selector: "[timeSlot]", inputs: ["invariantStart", "invariantEnd", "workDayStart", "workDayEnd", "workWeekStart", "workWeekEnd", "date"], exportAs: ["timeSlot"] }, { kind: "component", type: DayTimeViewItemComponent, selector: "[dayTimeViewItem]", inputs: ["vertical", "isAllDay", "name"] }, { kind: "directive", type: FocusableDirective, selector: "[kendoSchedulerFocusIndex]", inputs: ["kendoSchedulerFocusIndex", "containerType"] }, { kind: "component", type: HintContainerComponent, selector: "kendo-hint-container" }, { kind: "component", type: ResizeHintComponent, selector: "[kendoResizeHint]", inputs: ["hint", "format"] }, { kind: "pipe", type: ResourceIteratorPipe, name: "resourceIterator" }, { kind: "pipe", type: DatePipe, name: "kendoDate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SortPipe, name: "sort" }] });
334
+ `, 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: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: TimeSlotDirective, selector: "[timeSlot]", inputs: ["invariantStart", "invariantEnd", "workDayStart", "workDayEnd", "workWeekStart", "workWeekEnd", "date"], exportAs: ["timeSlot"] }, { kind: "component", type: DayTimeViewItemComponent, selector: "[dayTimeViewItem]", inputs: ["vertical", "isAllDay"] }, { kind: "directive", type: FocusableDirective, selector: "[kendoSchedulerFocusIndex]", inputs: ["kendoSchedulerFocusIndex", "containerType"] }, { kind: "component", type: HintContainerComponent, selector: "kendo-hint-container" }, { kind: "component", type: ResizeHintComponent, selector: "[kendoResizeHint]", inputs: ["hint", "format"] }, { kind: "pipe", type: ResourceIteratorPipe, name: "resourceIterator" }, { kind: "pipe", type: DatePipe, name: "kendoDate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: SortPipe, name: "sort" }] });
335
335
  }
336
336
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TimelineMultiDayViewComponent, decorators: [{
337
337
  type: Component,
@@ -11,12 +11,10 @@ import { isRecurrence, isRecurrenceException, formatEventTime } from '../utils';
11
11
  import { FocusService } from '../../navigation';
12
12
  import { toLocalDate } from '@progress/kendo-date-math';
13
13
  import { caretAltLeftIcon, caretAltRightIcon } from '@progress/kendo-svg-icons';
14
- import { IntlService } from '@progress/kendo-angular-intl';
15
14
  import * as i0 from "@angular/core";
16
15
  import * as i1 from "./base-slot.service";
17
16
  import * as i2 from "@progress/kendo-angular-l10n";
18
17
  import * as i3 from "../../navigation";
19
- import * as i4 from "@progress/kendo-angular-intl";
20
18
  /**
21
19
  * @hidden
22
20
  */
@@ -26,7 +24,7 @@ export class BaseViewItem {
26
24
  focusService;
27
25
  element;
28
26
  renderer;
29
- intl;
27
+ localeId;
30
28
  item;
31
29
  resourceIndex;
32
30
  rangeIndex;
@@ -45,7 +43,7 @@ export class BaseViewItem {
45
43
  get eventTitle() {
46
44
  const startTime = toLocalDate(this.item.startTime);
47
45
  const endTime = toLocalDate(this.item.endTime);
48
- const time = formatEventTime(startTime, endTime, this.item.isAllDay, this.intl.localeId);
46
+ const time = formatEventTime(startTime, endTime, this.item.isAllDay, this.localeId);
49
47
  return `${time}, ${this.item.event.title}`;
50
48
  }
51
49
  get deleteMessage() {
@@ -61,13 +59,13 @@ export class BaseViewItem {
61
59
  caretAltRightIcon = caretAltRightIcon;
62
60
  rect;
63
61
  subs = new Subscription();
64
- constructor(slotService, localization, focusService, element, renderer, intl) {
62
+ constructor(slotService, localization, focusService, element, renderer, localeId) {
65
63
  this.slotService = slotService;
66
64
  this.localization = localization;
67
65
  this.focusService = focusService;
68
66
  this.element = element;
69
67
  this.renderer = renderer;
70
- this.intl = intl;
68
+ this.localeId = localeId;
71
69
  }
72
70
  get isRecurrence() {
73
71
  return isRecurrence(this.item);
@@ -158,12 +156,12 @@ export class BaseViewItem {
158
156
  get arrowSVGIcons() {
159
157
  return !this.localization.rtl ? [this.caretAltLeftIcon, this.caretAltRightIcon] : [this.caretAltRightIcon, this.caretAltLeftIcon];
160
158
  }
161
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: BaseViewItem, deps: [{ token: i1.BaseSlotService }, { token: i2.LocalizationService }, { token: i3.FocusService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i4.IntlService }], target: i0.ɵɵFactoryTarget.Directive });
159
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: BaseViewItem, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
162
160
  static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: BaseViewItem, inputs: { item: "item", resourceIndex: "resourceIndex", rangeIndex: "rangeIndex", index: "index", eventTemplate: "eventTemplate", editable: "editable", dragHint: "dragHint", resources: "resources" }, host: { properties: { "class.k-event": "this.className", "attr.data-task-index": "this.taskIndex", "style.touch-action": "this.touchAction", "attr.aria-label": "this.eventTitle" } }, usesOnChanges: true, ngImport: i0 });
163
161
  }
164
162
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: BaseViewItem, decorators: [{
165
163
  type: Directive
166
- }], ctorParameters: function () { return [{ type: i1.BaseSlotService }, { type: i2.LocalizationService }, { type: i3.FocusService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i4.IntlService }]; }, propDecorators: { item: [{
164
+ }], ctorParameters: function () { return [{ type: i1.BaseSlotService }, { type: i2.LocalizationService }, { type: i3.FocusService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: undefined }]; }, propDecorators: { item: [{
167
165
  type: Input
168
166
  }], resourceIndex: [{
169
167
  type: Input
@@ -2,7 +2,7 @@
2
2
  * Copyright © 2025 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- import { ChangeDetectorRef, Component, ElementRef, Input, NgZone, Renderer2, ViewChild, } from '@angular/core';
5
+ import { ChangeDetectorRef, Component, ElementRef, Inject, Input, LOCALE_ID, NgZone, Renderer2, ViewChild, } from '@angular/core';
6
6
  import { ScrollbarWidthService } from '@progress/kendo-angular-common';
7
7
  import { ViewContextService } from '../view-context.service';
8
8
  import { ViewStateService } from '../view-state.service';
@@ -39,6 +39,7 @@ export class YearViewInternalComponent extends BaseView {
39
39
  localization;
40
40
  focusService;
41
41
  intl;
42
+ localeId;
42
43
  /**
43
44
  * Calculates the next or previous range to be displayed
44
45
  */
@@ -67,11 +68,12 @@ export class YearViewInternalComponent extends BaseView {
67
68
  currentTd;
68
69
  tds = [];
69
70
  isTooltipClicked = false;
70
- constructor(localization, focusService, intl, viewContext, viewState, zone, renderer, pdfService, element, slotService, scrollBarWidthService, changeDetector) {
71
+ constructor(localization, focusService, intl, viewContext, viewState, zone, renderer, pdfService, element, slotService, scrollBarWidthService, changeDetector, localeId) {
71
72
  super(viewContext, viewState, intl, slotService, zone, renderer, element, pdfService, localization, changeDetector, scrollBarWidthService);
72
73
  this.localization = localization;
73
74
  this.focusService = focusService;
74
75
  this.intl = intl;
76
+ this.localeId = localeId;
75
77
  }
76
78
  ngAfterViewInit() {
77
79
  this.updateTds();
@@ -108,7 +110,7 @@ export class YearViewInternalComponent extends BaseView {
108
110
  eventTitle(event) {
109
111
  const startTime = toLocalDate(event.startTime);
110
112
  const endTime = toLocalDate(event.endTime);
111
- const time = formatEventTime(startTime, endTime, event.isAllDay, this.intl.localeId);
113
+ const time = formatEventTime(startTime, endTime, event.isAllDay, this.localeId);
112
114
  return `${time}, ${event.event.title}`;
113
115
  }
114
116
  onClick(event) {
@@ -265,7 +267,7 @@ export class YearViewInternalComponent extends BaseView {
265
267
  });
266
268
  }
267
269
  }
268
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: YearViewInternalComponent, deps: [{ token: i1.LocalizationService }, { token: i2.FocusService }, { token: i3.IntlService }, { token: i4.ViewContextService }, { token: i5.ViewStateService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i6.PDFService }, { token: i0.ElementRef }, { token: i7.MonthSlotService }, { token: i8.ScrollbarWidthService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
270
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: YearViewInternalComponent, deps: [{ token: i1.LocalizationService }, { token: i2.FocusService }, { token: i3.IntlService }, { token: i4.ViewContextService }, { token: i5.ViewStateService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i6.PDFService }, { token: i0.ElementRef }, { token: i7.MonthSlotService }, { token: i8.ScrollbarWidthService }, { token: i0.ChangeDetectorRef }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Component });
269
271
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: YearViewInternalComponent, isStandalone: true, selector: "year-view-internal", inputs: { newRange: "newRange", dateRangeFn: "dateRangeFn" }, providers: [MonthSlotService], viewQueries: [{ propertyName: "calendar", first: true, predicate: MultiViewCalendarComponent, descendants: true }, { propertyName: "tooltip", first: true, predicate: TooltipDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: `
270
272
  <div #content class="k-scheduler-layout k-scheduler-layout-flex k-scheduler-yearview">
271
273
  <div class="k-scheduler-body">
@@ -419,7 +421,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
419
421
  standalone: true,
420
422
  imports: [MultiViewCalendarComponent, TooltipDirective, MonthCellTemplateDirective, NgIf, NgFor, NgClass, NgStyle, IconWrapperComponent]
421
423
  }]
422
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i2.FocusService }, { type: i3.IntlService }, { type: i4.ViewContextService }, { type: i5.ViewStateService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i6.PDFService }, { type: i0.ElementRef }, { type: i7.MonthSlotService }, { type: i8.ScrollbarWidthService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { newRange: [{
424
+ }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i2.FocusService }, { type: i3.IntlService }, { type: i4.ViewContextService }, { type: i5.ViewStateService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i6.PDFService }, { type: i0.ElementRef }, { type: i7.MonthSlotService }, { type: i8.ScrollbarWidthService }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
425
+ type: Inject,
426
+ args: [LOCALE_ID]
427
+ }] }]; }, propDecorators: { newRange: [{
423
428
  type: Input
424
429
  }], dateRangeFn: [{
425
430
  type: Input