@progress/kendo-angular-scheduler 14.4.0-develop.15 → 14.4.0-develop.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/NOTICE.txt +146 -593
  2. package/esm2020/index.mjs +1 -0
  3. package/esm2020/localization/messages.mjs +5 -1
  4. package/esm2020/navigation/shortcuts.directive.mjs +9 -0
  5. package/esm2020/package-metadata.mjs +2 -2
  6. package/esm2020/scheduler.component.mjs +12 -0
  7. package/esm2020/scheduler.module.mjs +8 -1
  8. package/esm2020/toolbar/navigation.component.mjs +9 -1
  9. package/esm2020/toolbar/toolbar.component.mjs +25 -3
  10. package/esm2020/views/timeline/timeline-month-view.component.mjs +13 -5
  11. package/esm2020/views/timeline/timeline-view.component.mjs +13 -5
  12. package/esm2020/views/timeline/timeline-week-view.component.mjs +12 -5
  13. package/esm2020/views/year/utils.mjs +60 -0
  14. package/esm2020/views/year/year-view-internal.component.mjs +418 -0
  15. package/esm2020/views/year/year-view.component.mjs +115 -0
  16. package/esm2020/views/year/year-view.module.mjs +47 -0
  17. package/fesm2015/progress-kendo-angular-scheduler.mjs +696 -32
  18. package/fesm2020/progress-kendo-angular-scheduler.mjs +690 -32
  19. package/index.d.ts +1 -0
  20. package/localization/messages.d.ts +9 -1
  21. package/package.json +13 -12
  22. package/scheduler.module.d.ts +15 -13
  23. package/schematics/ngAdd/index.js +2 -2
  24. package/toolbar/navigation.component.d.ts +10 -2
  25. package/toolbar/toolbar.component.d.ts +9 -0
  26. package/types/scheduler-slot.interface.d.ts +4 -0
  27. package/types/slot-class-args.interface.d.ts +4 -0
  28. package/views/timeline/timeline-month-view.component.d.ts +4 -1
  29. package/views/timeline/timeline-view.component.d.ts +4 -1
  30. package/views/timeline/timeline-week-view.component.d.ts +3 -1
  31. package/views/year/utils.d.ts +21 -0
  32. package/views/year/year-view-internal.component.d.ts +82 -0
  33. package/views/year/year-view.component.d.ts +56 -0
  34. package/views/year/year-view.module.d.ts +19 -0
@@ -8,11 +8,11 @@ import * as i1$1 from '@progress/kendo-angular-l10n';
8
8
  import { LocalizationService, L10N_PREFIX, RTL, ComponentMessages } from '@progress/kendo-angular-l10n';
9
9
  import * as i7 from '@progress/kendo-angular-common';
10
10
  import { hasObservers, isDocumentAvailable, isVisible as isVisible$1, scrollbarWidth, isChanged, Keys, shouldShowValidationUI, anyChanged, ResizeSensorComponent, EventsModule, ResizeSensorModule, guid, WatermarkModule } from '@progress/kendo-angular-common';
11
- import { isEqualDate, timezoneNames, ZonedDate, toLocalDate, getDate, Day, MS_PER_DAY as MS_PER_DAY$1, addDays, firstDayOfMonth, firstDayInWeek, addMonths, addWeeks } from '@progress/kendo-date-math';
11
+ import { isEqualDate, timezoneNames, ZonedDate, toLocalDate, getDate, Day, MS_PER_DAY as MS_PER_DAY$1, addDays, firstDayOfMonth, firstDayInWeek, addMonths, addWeeks, addYears } from '@progress/kendo-date-math';
12
12
  import { auditTime, buffer, filter, map, debounceTime, take, switchMap, tap, distinctUntilChanged } from 'rxjs/operators';
13
13
  import { validatePackage } from '@progress/kendo-licensing';
14
14
  import * as i2 from '@progress/kendo-angular-dateinputs';
15
- import { PreventableEvent as PreventableEvent$1, CalendarModule, DateInputsModule } from '@progress/kendo-angular-dateinputs';
15
+ import { PreventableEvent as PreventableEvent$1, CalendarModule, MultiViewCalendarComponent, CalendarsModule, DateInputsModule } from '@progress/kendo-angular-dateinputs';
16
16
  import { Subject, BehaviorSubject, fromEvent, Subscription, combineLatest, merge } from 'rxjs';
17
17
  import * as i14 from '@angular/forms';
18
18
  import { NG_VALUE_ACCESSOR, FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms';
@@ -38,6 +38,8 @@ import { orderBy, groupBy } from '@progress/kendo-data-query';
38
38
  import * as i4$1 from '@progress/kendo-angular-icons';
39
39
  import { IconsModule } from '@progress/kendo-angular-icons';
40
40
  import { Draggable } from '@progress/kendo-draggable';
41
+ import * as i11$1 from '@progress/kendo-angular-tooltip';
42
+ import { TooltipDirective, TooltipsModule } from '@progress/kendo-angular-tooltip';
41
43
  import { drawDOM, exportPDF } from '@progress/kendo-drawing';
42
44
  import { saveAs } from '@progress/kendo-file-saver';
43
45
 
@@ -48,8 +50,8 @@ const packageMetadata = {
48
50
  name: '@progress/kendo-angular-scheduler',
49
51
  productName: 'Kendo UI for Angular',
50
52
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
51
- publishDate: 1706010519,
52
- version: '14.4.0-develop.15',
53
+ publishDate: 1706192872,
54
+ version: '14.4.0-develop.17',
53
55
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
54
56
  };
55
57
 
@@ -2459,7 +2461,7 @@ class ToolbarNavigationComponent {
2459
2461
  }
2460
2462
  }
2461
2463
  ToolbarNavigationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ToolbarNavigationComponent, deps: [{ token: i1$2.PopupService }, { token: ToolbarService }, { token: i1$1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: ViewContextService }], target: i0.ɵɵFactoryTarget.Component });
2462
- ToolbarNavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ToolbarNavigationComponent, selector: "[kendoSchedulerToolbarNavigation]", inputs: { min: "min", max: "max" }, host: { properties: { "class.k-toolbar-group": "this.hostClass" } }, providers: [
2464
+ ToolbarNavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ToolbarNavigationComponent, selector: "[kendoSchedulerToolbarNavigation]", inputs: { min: "min", max: "max", activeView: "activeView", bottomView: "bottomView" }, host: { properties: { "class.k-toolbar-group": "this.hostClass" } }, providers: [
2463
2465
  PopupService
2464
2466
  ], viewQueries: [{ propertyName: "calendar", first: true, predicate: ["calendar"], descendants: true }], ngImport: i0, template: `
2465
2467
  <span class="k-scheduler-navigation k-button-group k-button-group-solid" role="group">
@@ -2517,6 +2519,8 @@ ToolbarNavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0
2517
2519
  <kendo-calendar
2518
2520
  #calendar
2519
2521
  (blur)="onBlur()"
2522
+ [activeView]="activeView"
2523
+ [bottomView]="bottomView"
2520
2524
  (keydown.escape)="toggleSelectedDate({ nativeElement: anchor }, template); anchor.focus();"
2521
2525
  (valueChange)="selectDate($event)"
2522
2526
  [value]="ctx.selectedDate | async" [min]="min" [max]="max">
@@ -2590,6 +2594,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
2590
2594
  <kendo-calendar
2591
2595
  #calendar
2592
2596
  (blur)="onBlur()"
2597
+ [activeView]="activeView"
2598
+ [bottomView]="bottomView"
2593
2599
  (keydown.escape)="toggleSelectedDate({ nativeElement: anchor }, template); anchor.focus();"
2594
2600
  (valueChange)="selectDate($event)"
2595
2601
  [value]="ctx.selectedDate | async" [min]="min" [max]="max">
@@ -2609,6 +2615,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
2609
2615
  type: Input
2610
2616
  }], max: [{
2611
2617
  type: Input
2618
+ }], activeView: [{
2619
+ type: Input
2620
+ }], bottomView: [{
2621
+ type: Input
2612
2622
  }] } });
2613
2623
 
2614
2624
  /**
@@ -2773,6 +2783,20 @@ class ToolbarComponent {
2773
2783
  this.subs = new Subscription();
2774
2784
  this.subs.add(service.action.subscribe(action => this.navigate.next(action)));
2775
2785
  }
2786
+ /**
2787
+ * @hidden
2788
+ */
2789
+ get activeView() {
2790
+ var _a;
2791
+ return ((_a = this.service.context.selectedView) === null || _a === void 0 ? void 0 : _a.name) === 'year' ? 'decade' : 'month';
2792
+ }
2793
+ /**
2794
+ * @hidden
2795
+ */
2796
+ get bottomView() {
2797
+ var _a;
2798
+ return ((_a = this.service.context.selectedView) === null || _a === void 0 ? void 0 : _a.name) === 'year' ? 'decade' : 'month';
2799
+ }
2776
2800
  ngOnInit() {
2777
2801
  this.subs.add(this.selectedDate.subscribe(date => this.templateContext.selectedDate = date));
2778
2802
  this.subs.add(this.dateRange.subscribe(dateRange => this.templateContext.dateRange = dateRange));
@@ -2812,13 +2836,18 @@ ToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versi
2812
2836
  </ng-template>
2813
2837
 
2814
2838
  <ng-template #defaultTemplate>
2815
- <div kendoSchedulerToolbarNavigation [min]="min" [max]="max"></div>
2839
+ <div kendoSchedulerToolbarNavigation
2840
+ [min]="min"
2841
+ [max]="max"
2842
+ [activeView]="activeView"
2843
+ [bottomView]="bottomView">
2844
+ </div>
2816
2845
  <span class="k-spacer"></span>
2817
2846
  <div kendoSchedulerToolbarViewSelector [toolbarWidth]="toolbarWidth"></div>
2818
2847
  </ng-template>
2819
2848
 
2820
2849
  <kendo-resize-sensor (resize)="resizeHandler()" [style]="'display: contents;'"></kendo-resize-sensor>
2821
- `, isInline: true, components: [{ type: ToolbarNavigationComponent, selector: "[kendoSchedulerToolbarNavigation]", inputs: ["min", "max"] }, { type: ToolbarViewSelectorComponent, selector: "[kendoSchedulerToolbarViewSelector]", inputs: ["toolbarWidth", "responsiveBreakpoint"] }, { type: i7.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], directives: [{ type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i11.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
2850
+ `, isInline: true, components: [{ type: ToolbarNavigationComponent, selector: "[kendoSchedulerToolbarNavigation]", inputs: ["min", "max", "activeView", "bottomView"] }, { type: ToolbarViewSelectorComponent, selector: "[kendoSchedulerToolbarViewSelector]", inputs: ["toolbarWidth", "responsiveBreakpoint"] }, { type: i7.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], directives: [{ type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i11.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
2822
2851
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ToolbarComponent, decorators: [{
2823
2852
  type: Component,
2824
2853
  args: [{
@@ -2832,7 +2861,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
2832
2861
  </ng-template>
2833
2862
 
2834
2863
  <ng-template #defaultTemplate>
2835
- <div kendoSchedulerToolbarNavigation [min]="min" [max]="max"></div>
2864
+ <div kendoSchedulerToolbarNavigation
2865
+ [min]="min"
2866
+ [max]="max"
2867
+ [activeView]="activeView"
2868
+ [bottomView]="bottomView">
2869
+ </div>
2836
2870
  <span class="k-spacer"></span>
2837
2871
  <div kendoSchedulerToolbarViewSelector [toolbarWidth]="toolbarWidth"></div>
2838
2872
  </ng-template>
@@ -5977,7 +6011,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
5977
6011
  class Messages extends ComponentMessages {
5978
6012
  }
5979
6013
  Messages.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: Messages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
5980
- Messages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: Messages, inputs: { allEvents: "allEvents", allDay: "allDay", dateHeader: "dateHeader", timeHeader: "timeHeader", eventHeader: "eventHeader", deleteTitle: "deleteTitle", nextTitle: "nextTitle", previousTitle: "previousTitle", today: "today", calendarToday: "calendarToday", showFullDay: "showFullDay", showWorkDay: "showWorkDay", dayViewTitle: "dayViewTitle", multiDayViewTitle: "multiDayViewTitle", weekViewTitle: "weekViewTitle", workWeekViewTitle: "workWeekViewTitle", monthViewTitle: "monthViewTitle", multiWeekViewTitle: "multiWeekViewTitle", timelineViewTitle: "timelineViewTitle", timelineWeekViewTitle: "timelineWeekViewTitle", timelineMonthViewTitle: "timelineMonthViewTitle", agendaViewTitle: "agendaViewTitle", cancel: "cancel", save: "save", editorEventTitle: "editorEventTitle", editorEventStart: "editorEventStart", editorEventStartTimeZone: "editorEventStartTimeZone", editorEventEnd: "editorEventEnd", editorEventEndTimeZone: "editorEventEndTimeZone", editorEventAllDay: "editorEventAllDay", editorEventDescription: "editorEventDescription", editorEventSeparateTimeZones: "editorEventSeparateTimeZones", editorEventTimeZone: "editorEventTimeZone", editorDateInputsToday: "editorDateInputsToday", editorDateInputsToggle: "editorDateInputsToggle", editorDateInputsParentViewButton: "editorDateInputsParentViewButton", editorDateInputsNow: "editorDateInputsNow", editorDateInputsNowLabel: "editorDateInputsNowLabel", editorDateInputsAccept: "editorDateInputsAccept", editorDateInputsAcceptLabel: "editorDateInputsAcceptLabel", editorDateInputsCancel: "editorDateInputsCancel", editorDateInputsCancelLabel: "editorDateInputsCancelLabel", editorDateInputsDateTab: "editorDateInputsDateTab", editorDateInputsDateTabLabel: "editorDateInputsDateTabLabel", editorDateInputsTimeTab: "editorDateInputsTimeTab", editorDateInputsTimeTabLabel: "editorDateInputsTimeTabLabel", recurrenceEditorNumericIncrement: "recurrenceEditorNumericIncrement", recurrenceEditorNumericDecrement: "recurrenceEditorNumericDecrement", recurrenceEditorRepeat: "recurrenceEditorRepeat", recurrenceEditorDailyInterval: "recurrenceEditorDailyInterval", recurrenceEditorDailyRepeatEvery: "recurrenceEditorDailyRepeatEvery", recurrenceEditorWeeklyInterval: "recurrenceEditorWeeklyInterval", recurrenceEditorWeeklyRepeatEvery: "recurrenceEditorWeeklyRepeatEvery", recurrenceEditorWeeklyRepeatOn: "recurrenceEditorWeeklyRepeatOn", recurrenceEditorMonthlyDay: "recurrenceEditorMonthlyDay", recurrenceEditorMonthlyInterval: "recurrenceEditorMonthlyInterval", recurrenceEditorMonthlyRepeatEvery: "recurrenceEditorMonthlyRepeatEvery", recurrenceEditorMonthlyRepeatOn: "recurrenceEditorMonthlyRepeatOn", recurrenceEditorYearlyOf: "recurrenceEditorYearlyOf", recurrenceEditorYearlyRepeatEvery: "recurrenceEditorYearlyRepeatEvery", recurrenceEditorYearlyRepeatOn: "recurrenceEditorYearlyRepeatOn", recurrenceEditorYearlyInterval: "recurrenceEditorYearlyInterval", recurrenceEditorFrequenciesDaily: "recurrenceEditorFrequenciesDaily", recurrenceEditorFrequenciesMonthly: "recurrenceEditorFrequenciesMonthly", recurrenceEditorFrequenciesNever: "recurrenceEditorFrequenciesNever", recurrenceEditorFrequenciesWeekly: "recurrenceEditorFrequenciesWeekly", recurrenceEditorFrequenciesYearly: "recurrenceEditorFrequenciesYearly", recurrenceEditorOffsetPositionsFirst: "recurrenceEditorOffsetPositionsFirst", recurrenceEditorOffsetPositionsSecond: "recurrenceEditorOffsetPositionsSecond", recurrenceEditorOffsetPositionsThird: "recurrenceEditorOffsetPositionsThird", recurrenceEditorOffsetPositionsFourth: "recurrenceEditorOffsetPositionsFourth", recurrenceEditorOffsetPositionsLast: "recurrenceEditorOffsetPositionsLast", recurrenceEditorWeekdaysDay: "recurrenceEditorWeekdaysDay", recurrenceEditorWeekdaysWeekday: "recurrenceEditorWeekdaysWeekday", recurrenceEditorWeekdaysWeekendday: "recurrenceEditorWeekdaysWeekendday", recurrenceEditorEndAfter: "recurrenceEditorEndAfter", recurrenceEditorEndOccurrence: "recurrenceEditorEndOccurrence", recurrenceEditorEndLabel: "recurrenceEditorEndLabel", recurrenceEditorEndNever: "recurrenceEditorEndNever", recurrenceEditorEndOn: "recurrenceEditorEndOn", editorTitle: "editorTitle", destroy: "destroy", deleteConfirmation: "deleteConfirmation", editRecurringConfirmation: "editRecurringConfirmation", editOccurrence: "editOccurrence", editSeries: "editSeries", deleteRecurringConfirmation: "deleteRecurringConfirmation", deleteOccurrence: "deleteOccurrence", deleteSeries: "deleteSeries", deleteDialogTitle: "deleteDialogTitle", deleteRecurringDialogTitle: "deleteRecurringDialogTitle", editRecurringDialogTitle: "editRecurringDialogTitle", selectView: "selectView" }, usesInheritance: true, ngImport: i0 });
6014
+ Messages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: Messages, inputs: { allEvents: "allEvents", allDay: "allDay", dateHeader: "dateHeader", timeHeader: "timeHeader", eventHeader: "eventHeader", deleteTitle: "deleteTitle", nextTitle: "nextTitle", previousTitle: "previousTitle", today: "today", calendarToday: "calendarToday", showFullDay: "showFullDay", showWorkDay: "showWorkDay", dayViewTitle: "dayViewTitle", multiDayViewTitle: "multiDayViewTitle", weekViewTitle: "weekViewTitle", workWeekViewTitle: "workWeekViewTitle", monthViewTitle: "monthViewTitle", multiWeekViewTitle: "multiWeekViewTitle", timelineViewTitle: "timelineViewTitle", timelineWeekViewTitle: "timelineWeekViewTitle", timelineMonthViewTitle: "timelineMonthViewTitle", agendaViewTitle: "agendaViewTitle", yearViewTitle: "yearViewTitle", yearViewNoEvents: "yearViewNoEvents", cancel: "cancel", save: "save", editorEventTitle: "editorEventTitle", editorEventStart: "editorEventStart", editorEventStartTimeZone: "editorEventStartTimeZone", editorEventEnd: "editorEventEnd", editorEventEndTimeZone: "editorEventEndTimeZone", editorEventAllDay: "editorEventAllDay", editorEventDescription: "editorEventDescription", editorEventSeparateTimeZones: "editorEventSeparateTimeZones", editorEventTimeZone: "editorEventTimeZone", editorDateInputsToday: "editorDateInputsToday", editorDateInputsToggle: "editorDateInputsToggle", editorDateInputsParentViewButton: "editorDateInputsParentViewButton", editorDateInputsNow: "editorDateInputsNow", editorDateInputsNowLabel: "editorDateInputsNowLabel", editorDateInputsAccept: "editorDateInputsAccept", editorDateInputsAcceptLabel: "editorDateInputsAcceptLabel", editorDateInputsCancel: "editorDateInputsCancel", editorDateInputsCancelLabel: "editorDateInputsCancelLabel", editorDateInputsDateTab: "editorDateInputsDateTab", editorDateInputsDateTabLabel: "editorDateInputsDateTabLabel", editorDateInputsTimeTab: "editorDateInputsTimeTab", editorDateInputsTimeTabLabel: "editorDateInputsTimeTabLabel", recurrenceEditorNumericIncrement: "recurrenceEditorNumericIncrement", recurrenceEditorNumericDecrement: "recurrenceEditorNumericDecrement", recurrenceEditorRepeat: "recurrenceEditorRepeat", recurrenceEditorDailyInterval: "recurrenceEditorDailyInterval", recurrenceEditorDailyRepeatEvery: "recurrenceEditorDailyRepeatEvery", recurrenceEditorWeeklyInterval: "recurrenceEditorWeeklyInterval", recurrenceEditorWeeklyRepeatEvery: "recurrenceEditorWeeklyRepeatEvery", recurrenceEditorWeeklyRepeatOn: "recurrenceEditorWeeklyRepeatOn", recurrenceEditorMonthlyDay: "recurrenceEditorMonthlyDay", recurrenceEditorMonthlyInterval: "recurrenceEditorMonthlyInterval", recurrenceEditorMonthlyRepeatEvery: "recurrenceEditorMonthlyRepeatEvery", recurrenceEditorMonthlyRepeatOn: "recurrenceEditorMonthlyRepeatOn", recurrenceEditorYearlyOf: "recurrenceEditorYearlyOf", recurrenceEditorYearlyRepeatEvery: "recurrenceEditorYearlyRepeatEvery", recurrenceEditorYearlyRepeatOn: "recurrenceEditorYearlyRepeatOn", recurrenceEditorYearlyInterval: "recurrenceEditorYearlyInterval", recurrenceEditorFrequenciesDaily: "recurrenceEditorFrequenciesDaily", recurrenceEditorFrequenciesMonthly: "recurrenceEditorFrequenciesMonthly", recurrenceEditorFrequenciesNever: "recurrenceEditorFrequenciesNever", recurrenceEditorFrequenciesWeekly: "recurrenceEditorFrequenciesWeekly", recurrenceEditorFrequenciesYearly: "recurrenceEditorFrequenciesYearly", recurrenceEditorOffsetPositionsFirst: "recurrenceEditorOffsetPositionsFirst", recurrenceEditorOffsetPositionsSecond: "recurrenceEditorOffsetPositionsSecond", recurrenceEditorOffsetPositionsThird: "recurrenceEditorOffsetPositionsThird", recurrenceEditorOffsetPositionsFourth: "recurrenceEditorOffsetPositionsFourth", recurrenceEditorOffsetPositionsLast: "recurrenceEditorOffsetPositionsLast", recurrenceEditorWeekdaysDay: "recurrenceEditorWeekdaysDay", recurrenceEditorWeekdaysWeekday: "recurrenceEditorWeekdaysWeekday", recurrenceEditorWeekdaysWeekendday: "recurrenceEditorWeekdaysWeekendday", recurrenceEditorEndAfter: "recurrenceEditorEndAfter", recurrenceEditorEndOccurrence: "recurrenceEditorEndOccurrence", recurrenceEditorEndLabel: "recurrenceEditorEndLabel", recurrenceEditorEndNever: "recurrenceEditorEndNever", recurrenceEditorEndOn: "recurrenceEditorEndOn", editorTitle: "editorTitle", destroy: "destroy", deleteConfirmation: "deleteConfirmation", editRecurringConfirmation: "editRecurringConfirmation", editOccurrence: "editOccurrence", editSeries: "editSeries", deleteRecurringConfirmation: "deleteRecurringConfirmation", deleteOccurrence: "deleteOccurrence", deleteSeries: "deleteSeries", deleteDialogTitle: "deleteDialogTitle", deleteRecurringDialogTitle: "deleteRecurringDialogTitle", editRecurringDialogTitle: "editRecurringDialogTitle", selectView: "selectView" }, usesInheritance: true, ngImport: i0 });
5981
6015
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: Messages, decorators: [{
5982
6016
  type: Directive
5983
6017
  }], propDecorators: { allEvents: [{
@@ -6024,6 +6058,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
6024
6058
  type: Input
6025
6059
  }], agendaViewTitle: [{
6026
6060
  type: Input
6061
+ }], yearViewTitle: [{
6062
+ type: Input
6063
+ }], yearViewNoEvents: [{
6064
+ type: Input
6027
6065
  }], cancel: [{
6028
6066
  type: Input
6029
6067
  }], save: [{
@@ -7096,6 +7134,12 @@ SchedulerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
7096
7134
  i18n-agendaViewTitle="kendo.scheduler.agendaViewTitle|The agenda view title."
7097
7135
  agendaViewTitle="Agenda"
7098
7136
 
7137
+ i18n-yearViewTitle="kendo.scheduler.yearViewTitle|The year view title."
7138
+ yearViewTitle="Year"
7139
+
7140
+ i18n-yearViewNoEvents="kendo.scheduler.yearViewNoEvents|The year view no events message."
7141
+ yearViewNoEvents="No events on this date."
7142
+
7099
7143
  i18n-cancel="kendo.scheduler.cancel|The text similar to 'Cancel' displayed in the Scheduler."
7100
7144
  cancel="Cancel"
7101
7145
 
@@ -7437,6 +7481,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7437
7481
  i18n-agendaViewTitle="kendo.scheduler.agendaViewTitle|The agenda view title."
7438
7482
  agendaViewTitle="Agenda"
7439
7483
 
7484
+ i18n-yearViewTitle="kendo.scheduler.yearViewTitle|The year view title."
7485
+ yearViewTitle="Year"
7486
+
7487
+ i18n-yearViewNoEvents="kendo.scheduler.yearViewNoEvents|The year view no events message."
7488
+ yearViewNoEvents="No events on this date."
7489
+
7440
7490
  i18n-cancel="kendo.scheduler.cancel|The text similar to 'Cancel' displayed in the Scheduler."
7441
7491
  cancel="Cancel"
7442
7492
 
@@ -8038,7 +8088,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
8038
8088
  /**
8039
8089
  * @hidden
8040
8090
  */
8041
- const createTasks$2 = (periodStart, periodEnd, items) => {
8091
+ const createTasks$3 = (periodStart, periodEnd, items) => {
8042
8092
  const tasks = [];
8043
8093
  const utcStart = toUTCDate(periodStart);
8044
8094
  const utcEnd = toUTCDate(periodEnd);
@@ -10097,7 +10147,7 @@ const last = (arr) => arr[arr.length - 1];
10097
10147
  /**
10098
10148
  * @hidden
10099
10149
  */
10100
- const createTasks$1 = (periodStart, periodEnd, items, ranges) => {
10150
+ const createTasks$2 = (periodStart, periodEnd, items, ranges) => {
10101
10151
  const tasks = [];
10102
10152
  const utcStart = toUTCDate(periodStart);
10103
10153
  const utcEnd = toUTCDate(periodEnd);
@@ -11618,7 +11668,7 @@ class MonthViewRendererComponent extends BaseView {
11618
11668
  }
11619
11669
  createTasks(items, dateRange) {
11620
11670
  this.weeks = this.createDaySlots(dateRange);
11621
- return createTasks$1(dateRange.start, dateRange.end, items, this.weeks);
11671
+ return createTasks$2(dateRange.start, dateRange.end, items, this.weeks);
11622
11672
  }
11623
11673
  onTasksChange() {
11624
11674
  updateTaskData(this.tasks);
@@ -13237,7 +13287,7 @@ const isMultiDay = ({ start, end }) => {
13237
13287
  };
13238
13288
  //check start and times or update day ranges to have them
13239
13289
  /** @hidden */
13240
- const createTasks = (periodStart, periodEnd, items, ranges) => {
13290
+ const createTasks$1 = (periodStart, periodEnd, items, ranges) => {
13241
13291
  const tasks = [];
13242
13292
  const utcStart = toUTCDate(periodStart);
13243
13293
  const utcEnd = toUTCDate(periodEnd);
@@ -14033,7 +14083,7 @@ class MultiDayViewRendererComponent extends DayTimeViewComponent {
14033
14083
  start: toUTCTime(daySlot.start, startTimeSlot.start),
14034
14084
  end: nextDateEnd ? toUTCDate(daySlot.end) : toUTCTime(daySlot.start, endTimeSlot)
14035
14085
  }));
14036
- return createTasks(dateRange.start, dateRange.end, items, ranges);
14086
+ return createTasks$1(dateRange.start, dateRange.end, items, ranges);
14037
14087
  }
14038
14088
  onTasksChange() {
14039
14089
  this.items.next(this.tasks.filter(task => !task.isAllDay));
@@ -15458,7 +15508,7 @@ class TimelineMultiDayViewComponent extends DayTimeViewComponent {
15458
15508
  return result;
15459
15509
  }
15460
15510
  createTasks(items, dateRange) {
15461
- return createTasks$2(dateRange.start, dateRange.end, items);
15511
+ return createTasks$3(dateRange.start, dateRange.end, items);
15462
15512
  }
15463
15513
  onTasksChange() {
15464
15514
  this.items.next(this.tasks);
@@ -15881,11 +15931,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
15881
15931
  class TimelineViewComponent extends TimelineBase {
15882
15932
  constructor(localization, changeDetector, viewContext, viewState) {
15883
15933
  super(localization, changeDetector, viewContext, viewState);
15884
- /**
15885
- * Specifies the number of days that the view will render.
15886
- * @default 1
15887
- */
15888
- this.numberOfDays = 1;
15934
+ this._numberOfDays = 1;
15889
15935
  /**
15890
15936
  * The invariant name for this view.
15891
15937
  * @default 'timeline'
@@ -15930,6 +15976,18 @@ class TimelineViewComponent extends TimelineBase {
15930
15976
  }
15931
15977
  return this.numberOfDays && this.numberOfDays > 1 ? '{0:d} - {1:d}' : '{0:d}';
15932
15978
  }
15979
+ /**
15980
+ * Specifies the number of days that the view will render.
15981
+ * > Normalized to `1` if the provided value is <= 0.
15982
+ * @default 1
15983
+ */
15984
+ set numberOfDays(days) {
15985
+ this._numberOfDays = days > 0 ? days : 1;
15986
+ }
15987
+ ;
15988
+ get numberOfDays() {
15989
+ return this._numberOfDays;
15990
+ }
15933
15991
  }
15934
15992
  TimelineViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TimelineViewComponent, deps: [{ token: i1$1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: ViewContextService }, { token: ViewStateService }], target: i0.ɵɵFactoryTarget.Component });
15935
15993
  TimelineViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: TimelineViewComponent, selector: "kendo-scheduler-timeline-view", inputs: { selectedDateFormat: "selectedDateFormat", selectedShortDateFormat: "selectedShortDateFormat", numberOfDays: "numberOfDays" }, providers: [{
@@ -16045,11 +16103,7 @@ class TimelineWeekViewComponent extends TimelineBase {
16045
16103
  * @default '{0:d} - {1:d}'
16046
16104
  */
16047
16105
  this.selectedShortDateFormat = '{0:d} - {1:d}';
16048
- /**
16049
- * Specifies the number of weeks that the view will render.
16050
- * @default 1
16051
- */
16052
- this.numberOfWeeks = 1;
16106
+ this._numberOfWeeks = 1;
16053
16107
  /**
16054
16108
  * The invariant name for this view.
16055
16109
  * @default 'timelineWeek'
@@ -16068,6 +16122,17 @@ class TimelineWeekViewComponent extends TimelineBase {
16068
16122
  get title() {
16069
16123
  return this.localization.get('timelineWeekViewTitle');
16070
16124
  }
16125
+ /**
16126
+ * Specifies the number of weeks that the view will render.
16127
+ * @default 1
16128
+ */
16129
+ set numberOfWeeks(weeks) {
16130
+ this._numberOfWeeks = weeks > 0 ? weeks : 1;
16131
+ }
16132
+ ;
16133
+ get numberOfWeeks() {
16134
+ return this._numberOfWeeks;
16135
+ }
16071
16136
  }
16072
16137
  TimelineWeekViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TimelineWeekViewComponent, deps: [{ token: i1$4.IntlService }, { token: i1$1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: ViewContextService }, { token: ViewStateService }], target: i0.ɵɵFactoryTarget.Component });
16073
16138
  TimelineWeekViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: TimelineWeekViewComponent, selector: "kendo-scheduler-timeline-week-view", inputs: { selectedDateFormat: "selectedDateFormat", selectedShortDateFormat: "selectedShortDateFormat", numberOfWeeks: "numberOfWeeks" }, providers: [{
@@ -16171,11 +16236,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
16171
16236
  class TimelineMonthViewComponent extends TimelineBase {
16172
16237
  constructor(localization, changeDetector, viewContext, viewState) {
16173
16238
  super(localization, changeDetector, viewContext, viewState);
16174
- /**
16175
- * Specifies the number of months that the view will render.
16176
- * @default 1
16177
- */
16178
- this.numberOfMonths = 1;
16239
+ this._numberOfMonths = 1;
16179
16240
  /**
16180
16241
  * The invariant name for this view.
16181
16242
  * @default 'timelineMonth'
@@ -16238,6 +16299,18 @@ class TimelineMonthViewComponent extends TimelineBase {
16238
16299
  }
16239
16300
  return this.numberOfMonths && this.numberOfMonths > 1 ? '{0:y} - {1:y}' : '{0:y}';
16240
16301
  }
16302
+ /**
16303
+ * Specifies the number of months that the view will render.
16304
+ * > Normalized to `1` if the provided value is <= 0.
16305
+ * @default 1
16306
+ */
16307
+ set numberOfMonths(months) {
16308
+ this._numberOfMonths = months > 0 ? months : 1;
16309
+ }
16310
+ ;
16311
+ get numberOfMonths() {
16312
+ return this._numberOfMonths;
16313
+ }
16241
16314
  }
16242
16315
  TimelineMonthViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TimelineMonthViewComponent, deps: [{ token: i1$1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: ViewContextService }, { token: ViewStateService }], target: i0.ɵɵFactoryTarget.Component });
16243
16316
  TimelineMonthViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: TimelineMonthViewComponent, selector: "kendo-scheduler-timeline-month-view", inputs: { selectedDateFormat: "selectedDateFormat", selectedShortDateFormat: "selectedShortDateFormat", numberOfMonths: "numberOfMonths" }, providers: [{
@@ -16884,6 +16957,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
16884
16957
  }], ctorParameters: function () { return [{ type: i1$1.LocalizationService }]; } });
16885
16958
 
16886
16959
  const isContentWrapper = element => hasClasses(element, 'k-scheduler-content');
16960
+ const CALENDAR_TAG = 'KENDO-CALENDAR-HORIZONTAL';
16887
16961
  /**
16888
16962
  * @hidden
16889
16963
  */
@@ -16976,6 +17050,10 @@ class ShortcutsDirective {
16976
17050
  }, {
16977
17051
  match: e => (e.keyCode === Keys.ArrowUp || e.keyCode === Keys.ArrowLeft) && noModifiers(e) && !isContentWrapper(e.target),
16978
17052
  action: e => {
17053
+ //use the MultiViewCalendar navigation for Year View
17054
+ if (e.target.tagName === CALENDAR_TAG) {
17055
+ return;
17056
+ }
16979
17057
  const prevented = this.scheduler.onNavigationAction({ type: 'focus-prev' });
16980
17058
  if (!prevented) {
16981
17059
  const item = this.focusService.activeItem;
@@ -16989,6 +17067,10 @@ class ShortcutsDirective {
16989
17067
  }, {
16990
17068
  match: e => (e.keyCode === Keys.ArrowDown || e.keyCode === Keys.ArrowRight) && noModifiers(e) && !isContentWrapper(e.target),
16991
17069
  action: e => {
17070
+ //use the MultiViewCalendar navigation for Year View
17071
+ if (e.target.tagName === CALENDAR_TAG) {
17072
+ return;
17073
+ }
16992
17074
  const prevented = this.scheduler.onNavigationAction({ type: 'focus-next' });
16993
17075
  if (!prevented) {
16994
17076
  const isInToolbar = this.focusService.activeItem.containerType === 'toolbar';
@@ -17150,6 +17232,583 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
17150
17232
  type: Output
17151
17233
  }] } });
17152
17234
 
17235
+ /**
17236
+ * @hidden
17237
+ */
17238
+ const createTasks = (periodStart, periodEnd, items, ranges) => {
17239
+ const tasks = [];
17240
+ const utcStart = toUTCDateTime(periodStart);
17241
+ const utcEnd = toUTCDateTime(periodEnd);
17242
+ for (let index = 0; index < items.length; index++) {
17243
+ const item = items[index];
17244
+ const data = {};
17245
+ const startTime = item.start.toUTCDate();
17246
+ const end = item.end;
17247
+ const endTime = (item.end.getTime() !== end.getTime() ? end.addDays(1) : end).toUTCDate();
17248
+ if (intersects(startTime, endTime, utcStart, utcEnd)) {
17249
+ for (let rangeIdx = 0; rangeIdx < ranges.length; rangeIdx++) {
17250
+ const range = ranges[rangeIdx];
17251
+ const rangeStart = toUTCDate(range);
17252
+ const rangeEnd = toUTCDate(addDays(range, 1));
17253
+ if (intersects(startTime, endTime, rangeStart, rangeEnd)) {
17254
+ const task = {
17255
+ index,
17256
+ startTime: startTime > rangeStart ? startTime : rangeStart,
17257
+ endTime: endTime < rangeEnd ? endTime : rangeEnd,
17258
+ start: item.start,
17259
+ end: item.end,
17260
+ event: item.event,
17261
+ isAllDay: item.event.isAllDay,
17262
+ rangeIndex: rangeIdx,
17263
+ data: data
17264
+ };
17265
+ task.head = endTime > rangeEnd && startTime > rangeStart;
17266
+ task.tail = startTime < rangeStart && endTime < rangeEnd;
17267
+ task.mid = endTime > rangeEnd && startTime < rangeStart;
17268
+ task.isMultiDay = task.head || task.mid || task.tail;
17269
+ tasks.push(task);
17270
+ }
17271
+ }
17272
+ }
17273
+ }
17274
+ return sortTasksByTime(tasks);
17275
+ };
17276
+ /**
17277
+ * @hidden
17278
+ */
17279
+ const noop = (_) => { };
17280
+ /**
17281
+ * @hidden
17282
+ */
17283
+ const yearEnd = (year) => new Date(year, 11, 31, 23, 59, 59, 999);
17284
+ /**
17285
+ * @hidden
17286
+ */
17287
+ const yearStart = (year) => new Date(year, 0, 1, 0, 0, 0, 0);
17288
+
17289
+ const today = new Date(Date.now());
17290
+ const getDateAttribute = (element) => { var _a; return (_a = element === null || element === void 0 ? void 0 : element.querySelector('span>span[date]')) === null || _a === void 0 ? void 0 : _a.getAttribute('date'); };
17291
+ /**
17292
+ * @hidden
17293
+ */
17294
+ class YearViewInternalComponent extends BaseView {
17295
+ constructor(localization, focusService, intl, viewContext, viewState, zone, renderer, pdfService, element, slotService, scrollBarWidthService, changeDetector, localeId) {
17296
+ super(viewContext, viewState, intl, slotService, zone, renderer, element, pdfService, localization, changeDetector, scrollBarWidthService);
17297
+ this.localization = localization;
17298
+ this.focusService = focusService;
17299
+ this.intl = intl;
17300
+ this.localeId = localeId;
17301
+ this.caretAltLeftIcon = caretAltLeftIcon;
17302
+ this.caretAltRightIcon = caretAltRightIcon;
17303
+ this.eventsPerSelectedDay = [];
17304
+ this.days = [];
17305
+ this.tds = [];
17306
+ this.isTooltipClicked = false;
17307
+ this.slotByIndex = (slotIndex, args) => noop(slotIndex);
17308
+ this.dragHintSize = (startSlot, endSlot) => noop(startSlot);
17309
+ this.dragRanges = (slot) => noop(slot);
17310
+ this.slotByPosition = (x, y, container) => noop(x);
17311
+ this.cachedTds = [];
17312
+ }
17313
+ get arrowIcons() {
17314
+ return !this.localization.rtl
17315
+ ? ['caret-alt-left', 'caret-alt-right']
17316
+ : ['caret-alt-right', 'caret-alt-left'];
17317
+ }
17318
+ get arrowSVGIcons() {
17319
+ return !this.localization.rtl
17320
+ ? [this.caretAltLeftIcon, this.caretAltRightIcon]
17321
+ : [this.caretAltRightIcon, this.caretAltLeftIcon];
17322
+ }
17323
+ ngAfterViewInit() {
17324
+ this.updateTds();
17325
+ super.ngAfterViewInit();
17326
+ }
17327
+ getSlotClass(date) {
17328
+ if (this.slotClass) {
17329
+ return this.slotClass({
17330
+ start: date,
17331
+ end: addDays(date, 1),
17332
+ events: this.eventsPerDay(date),
17333
+ });
17334
+ }
17335
+ }
17336
+ getEventClasses(item, resources, isAllDay) {
17337
+ if (this.eventClass) {
17338
+ return this.eventClass({
17339
+ event: item.event,
17340
+ resources,
17341
+ isAllDay,
17342
+ });
17343
+ }
17344
+ }
17345
+ onBlur() {
17346
+ if (!this.isTooltipClicked) {
17347
+ this.tooltip.hide();
17348
+ }
17349
+ this.isTooltipClicked = false;
17350
+ }
17351
+ getDate(element) {
17352
+ return new Date(getDateAttribute(element.nativeElement));
17353
+ }
17354
+ eventTitle(event) {
17355
+ const startTime = toLocalDate(event.startTime);
17356
+ const endTime = toLocalDate(event.endTime);
17357
+ const time = formatEventTime(startTime, endTime, event.isAllDay, this.localeId);
17358
+ return `${time}, ${event.event.title}`;
17359
+ }
17360
+ onClick(event) {
17361
+ if (event.target.tagName === 'SPAN') {
17362
+ const clickedDate = getDateAttribute(event.target.closest('td.k-calendar-td'));
17363
+ if (clickedDate === getDateAttribute(this.currentTd)) {
17364
+ this.tooltip.show(this.currentTd);
17365
+ }
17366
+ }
17367
+ else {
17368
+ this.tooltip.hide();
17369
+ }
17370
+ }
17371
+ onMouseDown() {
17372
+ this.isTooltipClicked = true;
17373
+ }
17374
+ onKeydown(event) {
17375
+ if (event.key === 'Backspace' || event.key === 'Delete') {
17376
+ this.tooltip.hide();
17377
+ }
17378
+ if (event.key === 'Enter' && !this.tooltip.popupRef) {
17379
+ this.tooltip.show(this.currentTd);
17380
+ return;
17381
+ }
17382
+ if (event.key === 'Enter' && this.tooltip.popupRef && (getDateAttribute(this.currentTd) === this.calendar.focusedDate.toString())) {
17383
+ this.navigateToDay(new Date(getDateAttribute(this.currentTd)));
17384
+ }
17385
+ }
17386
+ navigateToDay(date) {
17387
+ this.tooltip.hide();
17388
+ this.zone.run(() => {
17389
+ this.viewState.navigateTo({ viewName: 'day', date: new Date(date) });
17390
+ });
17391
+ }
17392
+ eventsPerDay(date) {
17393
+ var _a;
17394
+ return ((_a = this.tasksPerDay(date)) === null || _a === void 0 ? void 0 : _a.map((task) => task.event)) || [];
17395
+ }
17396
+ tasksPerDay(date) {
17397
+ var _a, _b, _c;
17398
+ if (((_a = this.resources) === null || _a === void 0 ? void 0 : _a.length) > 0) {
17399
+ return (_b = this.tasks) === null || _b === void 0 ? void 0 : _b.filter((event) => event.resources.length > 0 &&
17400
+ event.startTime.getUTCDate() === date.getDate() &&
17401
+ event.startTime.getUTCMonth() === date.getMonth());
17402
+ }
17403
+ else {
17404
+ return (_c = this.tasks) === null || _c === void 0 ? void 0 : _c.filter((event) => event.startTime.getUTCDate() === date.getDate() && event.startTime.getUTCMonth() === date.getMonth());
17405
+ }
17406
+ }
17407
+ onValueChange(date) {
17408
+ this.eventsPerSelectedDay = this.tasksPerDay(date);
17409
+ this.currentTd = this.tds.find((td) => getDateAttribute(td) === date.toString());
17410
+ if (this.tooltip.popupRef) {
17411
+ this.tooltip.hide();
17412
+ }
17413
+ }
17414
+ hasEvent(date) {
17415
+ return this.tasksPerDay(date).length > 0;
17416
+ }
17417
+ createPDFElement() {
17418
+ const element = this.element.nativeElement.cloneNode(true);
17419
+ element.style.width = `${this.element.nativeElement.offsetWidth}px`;
17420
+ element.querySelector('.k-scheduler-layout').style.height = 'auto';
17421
+ this.pdfService.elementReady.emit({
17422
+ element: element,
17423
+ });
17424
+ }
17425
+ onSelectDate(date) {
17426
+ const year = date.getFullYear();
17427
+ this.focusedDate = new Date(year, today.getMonth(), today.getDate());
17428
+ const start = yearStart(year);
17429
+ this.selectedDate = start;
17430
+ const dateRange = this.dateRange(date);
17431
+ this.viewState.notifyDateRange(dateRange);
17432
+ this.days = this.createDaySlots(dateRange);
17433
+ if (this.calendar) {
17434
+ this.calendar.min = start;
17435
+ this.calendar.max = yearEnd(start.getFullYear());
17436
+ this.updateTds();
17437
+ }
17438
+ }
17439
+ onAction(e) {
17440
+ const now = this.selectedDate;
17441
+ if (e.type === 'next' || e.type === 'prev') {
17442
+ const offset = e.type === 'next' ? 1 : -1;
17443
+ const next = addYears(now, offset);
17444
+ this.viewState.notifyNextDate(next);
17445
+ this.calendar.min = next;
17446
+ this.calendar.max = yearEnd(next.getFullYear());
17447
+ this.focusedDate = new Date(next.getFullYear(), today.getMonth(), today.getDate());
17448
+ }
17449
+ }
17450
+ createTasks(items, dateRange) {
17451
+ this.days = this.createDaySlots(dateRange);
17452
+ return createTasks(dateRange.start, dateRange.end, items, this.days);
17453
+ }
17454
+ reflow() {
17455
+ this.updateContentHeight();
17456
+ const content = this.content.nativeElement;
17457
+ if (this.contentHeight === 'auto') {
17458
+ // bigger size changes cause the table to overflow the container and in horizontal scrollbars
17459
+ // this changes the table and slots size during rendering before the browser re-adjusts the 100% table width
17460
+ content.style.overflow = 'visible';
17461
+ }
17462
+ if (this.contentHeight === 'auto') {
17463
+ content.style.overflow = '';
17464
+ }
17465
+ }
17466
+ dateRange(date = this.selectedDate) {
17467
+ return this.dateRangeFn(date);
17468
+ }
17469
+ onTasksChange() {
17470
+ this.items.next(this.tasks);
17471
+ }
17472
+ createDaySlots({ start }) {
17473
+ const days = [];
17474
+ const monthsPerYear = 12;
17475
+ let date = start;
17476
+ for (let idx = 0; idx < monthsPerYear; idx++) {
17477
+ const monthTotalDays = this.getLastDayOfMonth(date.getFullYear(), date.getMonth());
17478
+ for (let dayIdx = 0; dayIdx < monthTotalDays; dayIdx++) {
17479
+ days.push(date);
17480
+ const nextDay = addDays(date, 1);
17481
+ date = nextDay;
17482
+ }
17483
+ }
17484
+ return days;
17485
+ }
17486
+ getLastDayOfMonth(year, month) {
17487
+ return new Date(year, month + 1, 0).getDate();
17488
+ }
17489
+ updateTds() {
17490
+ this.cachedTds.forEach((td) => {
17491
+ this.renderer.setAttribute(td, 'class', 'k-calendar-td');
17492
+ });
17493
+ this.cachedTds = [];
17494
+ this.tds = Array.from(this.calendar.element.nativeElement.querySelectorAll('.k-calendar-td:not(.k-other-month)'));
17495
+ if (this.slotClass) {
17496
+ this.tds.forEach((td) => {
17497
+ const date = toUTCDate(new Date(getDateAttribute(td)));
17498
+ const userClass = this.getSlotClass(date);
17499
+ if (userClass) {
17500
+ this.renderer.addClass(td, userClass);
17501
+ this.cachedTds.push(td);
17502
+ }
17503
+ });
17504
+ }
17505
+ }
17506
+ }
17507
+ YearViewInternalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: YearViewInternalComponent, deps: [{ token: i1$1.LocalizationService }, { token: FocusService }, { token: i1$4.IntlService }, { token: ViewContextService }, { token: ViewStateService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: PDFService }, { token: i0.ElementRef }, { token: MonthSlotService }, { token: i7.ScrollbarWidthService }, { token: i0.ChangeDetectorRef }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Component });
17508
+ YearViewInternalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: YearViewInternalComponent, selector: "year-view-internal", inputs: { newRange: "newRange", dateRangeFn: "dateRangeFn", selectedDateFormat: "selectedDateFormat", selectedShortDateFormat: "selectedShortDateFormat" }, providers: [MonthSlotService], viewQueries: [{ propertyName: "calendar", first: true, predicate: MultiViewCalendarComponent, descendants: true }, { propertyName: "tooltip", first: true, predicate: TooltipDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: `
17509
+ <div #content class="k-scheduler-layout k-scheduler-layout-flex k-scheduler-yearview">
17510
+ <div class="k-scheduler-body">
17511
+ <kendo-multiviewcalendar
17512
+ [showOtherMonthDates]="false"
17513
+ [showCalendarHeader]="false"
17514
+ [showViewHeader]="true"
17515
+ [views]="12"
17516
+ [focusedDate]="focusedDate"
17517
+ kendoTooltip
17518
+ filter=".k-calendar-td"
17519
+ showOn="none"
17520
+ [tooltipTemplate]="template"
17521
+ position="right"
17522
+ tooltipContentClass="k-scheduler-tooltip"
17523
+ [tooltipWidth]="220"
17524
+ [collision]="{ horizontal: 'flip', vertical: 'flip' }"
17525
+ (valueChange)="onValueChange($event)"
17526
+ (blur)="onBlur()"
17527
+ >
17528
+ <ng-template kendoCalendarMonthCellTemplate let-date let-context="cellContext">
17529
+ <span *ngIf="!context.isOtherMonth" [attr.date]="date">{{ date.getDate() }}</span>
17530
+ <span *ngIf="!context.isOtherMonth && hasEvent(date)" class="k-day-indicator"></span>
17531
+ </ng-template>
17532
+ </kendo-multiviewcalendar>
17533
+ </div>
17534
+ </div>
17535
+ <ng-template #template let-anchor>
17536
+ <div
17537
+ class="k-tooltip-title k-text-center"
17538
+ (click)="navigateToDay(getDate(anchor))"
17539
+ (mousedown)="onMouseDown()"
17540
+ >
17541
+ <div class="k-month">{{ intl.formatDate(getDate(anchor), 'MMM') }}</div>
17542
+ <div class="k-link k-day k-text-primary">{{ intl.formatDate(getDate(anchor), 'dd') }}</div>
17543
+ </div>
17544
+ <div class="k-tooltip-events-container" (mousedown)="onMouseDown()">
17545
+ <div class="k-tooltip-events">
17546
+ <div
17547
+ *ngFor="let event of eventsPerSelectedDay"
17548
+ class="k-tooltip-event k-event"
17549
+ [title]="eventTitle(event)"
17550
+ [ngClass]="getEventClasses(event, event.resources)"
17551
+ [ngStyle]="getEventStyles(event, event.resources[0], event.isAllDay)"
17552
+ >
17553
+ <kendo-icon-wrapper
17554
+ *ngIf="event.tail || event.mid"
17555
+ [name]="arrowIcons[0]"
17556
+ [svgIcon]="arrowSVGIcons[0]"
17557
+ >
17558
+ </kendo-icon-wrapper>
17559
+ <div class="k-event-title k-text-ellipsis">{{ event.event.title }}</div>
17560
+ <span class="k-spacer"></span>
17561
+ <span
17562
+ class="k-event-time"
17563
+ *ngIf="(event.isMultiDay && event.head && !event.isAllDay) || !event.isMultiDay"
17564
+ >{{ intl.formatDate(event.start, 't') }}</span
17565
+ >
17566
+ <kendo-icon-wrapper
17567
+ *ngIf="event.head || event.mid"
17568
+ [name]="arrowIcons[1]"
17569
+ [svgIcon]="arrowSVGIcons[1]"
17570
+ >
17571
+ </kendo-icon-wrapper>
17572
+ </div>
17573
+ </div>
17574
+ </div>
17575
+ <div *ngIf="eventsPerSelectedDay.length === 0" class="k-no-data k-text-center">
17576
+ {{ localization.get('yearViewNoEvents') }}
17577
+ </div>
17578
+ </ng-template>
17579
+ `, isInline: true, components: [{ type: i2.MultiViewCalendarComponent, selector: "kendo-multiviewcalendar", inputs: ["showOtherMonthDates", "showCalendarHeader", "id", "focusedDate", "min", "max", "rangeValidation", "disabledDatesRangeValidation", "selection", "value", "disabled", "tabindex", "tabIndex", "isActive", "disabledDates", "activeView", "bottomView", "topView", "showViewHeader", "animateNavigation", "weekNumber", "activeRangeEnd", "selectionRange", "views", "orientation", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate"], outputs: ["activeViewChange", "navigate", "cellEnter", "cellLeave", "valueChange", "blur", "focus", "focusCalendar", "onClosePopup", "onTabPress", "onShiftTabPress"], exportAs: ["kendo-multiviewcalendar"] }, { type: i4$1.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i11$1.TooltipDirective, selector: "[kendoTooltip]", inputs: ["filter", "position", "titleTemplate", "showOn", "showAfter", "callout", "closable", "offset", "tooltipWidth", "tooltipHeight", "tooltipClass", "tooltipContentClass", "collision", "closeTitle", "tooltipTemplate"], exportAs: ["kendoTooltip"] }, { type: i2.MonthCellTemplateDirective, selector: "[kendoCalendarMonthCellTemplate]" }, { type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i11.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i11.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i11.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
17580
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: YearViewInternalComponent, decorators: [{
17581
+ type: Component,
17582
+ args: [{
17583
+ selector: 'year-view-internal',
17584
+ providers: [MonthSlotService],
17585
+ template: `
17586
+ <div #content class="k-scheduler-layout k-scheduler-layout-flex k-scheduler-yearview">
17587
+ <div class="k-scheduler-body">
17588
+ <kendo-multiviewcalendar
17589
+ [showOtherMonthDates]="false"
17590
+ [showCalendarHeader]="false"
17591
+ [showViewHeader]="true"
17592
+ [views]="12"
17593
+ [focusedDate]="focusedDate"
17594
+ kendoTooltip
17595
+ filter=".k-calendar-td"
17596
+ showOn="none"
17597
+ [tooltipTemplate]="template"
17598
+ position="right"
17599
+ tooltipContentClass="k-scheduler-tooltip"
17600
+ [tooltipWidth]="220"
17601
+ [collision]="{ horizontal: 'flip', vertical: 'flip' }"
17602
+ (valueChange)="onValueChange($event)"
17603
+ (blur)="onBlur()"
17604
+ >
17605
+ <ng-template kendoCalendarMonthCellTemplate let-date let-context="cellContext">
17606
+ <span *ngIf="!context.isOtherMonth" [attr.date]="date">{{ date.getDate() }}</span>
17607
+ <span *ngIf="!context.isOtherMonth && hasEvent(date)" class="k-day-indicator"></span>
17608
+ </ng-template>
17609
+ </kendo-multiviewcalendar>
17610
+ </div>
17611
+ </div>
17612
+ <ng-template #template let-anchor>
17613
+ <div
17614
+ class="k-tooltip-title k-text-center"
17615
+ (click)="navigateToDay(getDate(anchor))"
17616
+ (mousedown)="onMouseDown()"
17617
+ >
17618
+ <div class="k-month">{{ intl.formatDate(getDate(anchor), 'MMM') }}</div>
17619
+ <div class="k-link k-day k-text-primary">{{ intl.formatDate(getDate(anchor), 'dd') }}</div>
17620
+ </div>
17621
+ <div class="k-tooltip-events-container" (mousedown)="onMouseDown()">
17622
+ <div class="k-tooltip-events">
17623
+ <div
17624
+ *ngFor="let event of eventsPerSelectedDay"
17625
+ class="k-tooltip-event k-event"
17626
+ [title]="eventTitle(event)"
17627
+ [ngClass]="getEventClasses(event, event.resources)"
17628
+ [ngStyle]="getEventStyles(event, event.resources[0], event.isAllDay)"
17629
+ >
17630
+ <kendo-icon-wrapper
17631
+ *ngIf="event.tail || event.mid"
17632
+ [name]="arrowIcons[0]"
17633
+ [svgIcon]="arrowSVGIcons[0]"
17634
+ >
17635
+ </kendo-icon-wrapper>
17636
+ <div class="k-event-title k-text-ellipsis">{{ event.event.title }}</div>
17637
+ <span class="k-spacer"></span>
17638
+ <span
17639
+ class="k-event-time"
17640
+ *ngIf="(event.isMultiDay && event.head && !event.isAllDay) || !event.isMultiDay"
17641
+ >{{ intl.formatDate(event.start, 't') }}</span
17642
+ >
17643
+ <kendo-icon-wrapper
17644
+ *ngIf="event.head || event.mid"
17645
+ [name]="arrowIcons[1]"
17646
+ [svgIcon]="arrowSVGIcons[1]"
17647
+ >
17648
+ </kendo-icon-wrapper>
17649
+ </div>
17650
+ </div>
17651
+ </div>
17652
+ <div *ngIf="eventsPerSelectedDay.length === 0" class="k-no-data k-text-center">
17653
+ {{ localization.get('yearViewNoEvents') }}
17654
+ </div>
17655
+ </ng-template>
17656
+ `,
17657
+ }]
17658
+ }], ctorParameters: function () {
17659
+ return [{ type: i1$1.LocalizationService }, { type: FocusService }, { type: i1$4.IntlService }, { type: ViewContextService }, { type: ViewStateService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: PDFService }, { type: i0.ElementRef }, { type: MonthSlotService }, { type: i7.ScrollbarWidthService }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
17660
+ type: Inject,
17661
+ args: [LOCALE_ID]
17662
+ }] }];
17663
+ }, propDecorators: { newRange: [{
17664
+ type: Input
17665
+ }], dateRangeFn: [{
17666
+ type: Input
17667
+ }], calendar: [{
17668
+ type: ViewChild,
17669
+ args: [MultiViewCalendarComponent]
17670
+ }], tooltip: [{
17671
+ type: ViewChild,
17672
+ args: [TooltipDirective]
17673
+ }], selectedDateFormat: [{
17674
+ type: Input
17675
+ }], selectedShortDateFormat: [{
17676
+ type: Input
17677
+ }] } });
17678
+
17679
+ /**
17680
+ * The component for rendering the **Year** view.
17681
+ */
17682
+ class YearViewComponent extends ConfigurationViewBase {
17683
+ constructor(localization, changeDetector, viewContext, viewState, intl) {
17684
+ super(localization, changeDetector, viewContext, viewState);
17685
+ this.intl = intl;
17686
+ /**
17687
+ * The long-date format for displaying the
17688
+ * selected year in the Scheduler toolbar.
17689
+ * For more information, see [Parsing and Formatting Dates and Numbers]({% slug parsingandformatting_intl %}#toc-date-formatting).
17690
+ * @default '{0:yyy}'
17691
+ */
17692
+ this.selectedDateFormat = '{0:yyy}';
17693
+ /**
17694
+ * The short-date format for displaying the
17695
+ * selected year in the Scheduler toolbar.
17696
+ * For more information, see [Parsing and Formatting Dates and Numbers]({% slug parsingandformatting_intl %}#toc-date-formatting).
17697
+ * @default '{0:yyy}'
17698
+ */
17699
+ this.selectedShortDateFormat = '{0:yyy}';
17700
+ /**
17701
+ * The invariant name for this view.
17702
+ * @default 'year'
17703
+ */
17704
+ this.name = 'year';
17705
+ }
17706
+ /**
17707
+ * @hidden
17708
+ */
17709
+ get title() {
17710
+ return this.localization.get('yearViewTitle');
17711
+ }
17712
+ /**
17713
+ * @hidden
17714
+ */
17715
+ dateRange(date) {
17716
+ const year = date.getFullYear();
17717
+ const start = yearStart(year);
17718
+ const end = yearEnd(year);
17719
+ const text = this.intl.format(this.selectedDateFormat, start);
17720
+ const shortText = this.intl.format(this.selectedShortDateFormat, start);
17721
+ return { start, end, text, shortText };
17722
+ }
17723
+ /**
17724
+ * @hidden
17725
+ */
17726
+ newRange(date, direction = 1) {
17727
+ return new Date(addYears(date, direction));
17728
+ }
17729
+ }
17730
+ YearViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: YearViewComponent, deps: [{ token: i1$1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: ViewContextService }, { token: ViewStateService }, { token: i1$4.IntlService }], target: i0.ɵɵFactoryTarget.Component });
17731
+ YearViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: YearViewComponent, selector: "kendo-scheduler-year-view", inputs: { selectedDateFormat: "selectedDateFormat", selectedShortDateFormat: "selectedShortDateFormat" }, providers: [{
17732
+ provide: SchedulerView,
17733
+ useExisting: forwardRef(() => YearViewComponent)
17734
+ }], usesInheritance: true, ngImport: i0, template: `
17735
+ <ng-template #content>
17736
+ <year-view-internal
17737
+ [selectedDateFormat]="selectedDateFormat"
17738
+ [selectedShortDateFormat]="selectedShortDateFormat"
17739
+ [slotClass]="viewSlotClass"
17740
+ [eventClass]="viewEventClass"
17741
+ [eventStyles]="viewEventStyles"
17742
+ [dateRangeFn]="dateRange"
17743
+ [newRange]="newRange">
17744
+ </year-view-internal>
17745
+ </ng-template>
17746
+ `, isInline: true, components: [{ type: YearViewInternalComponent, selector: "year-view-internal", inputs: ["newRange", "dateRangeFn", "selectedDateFormat", "selectedShortDateFormat"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
17747
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: YearViewComponent, decorators: [{
17748
+ type: Component,
17749
+ args: [{
17750
+ changeDetection: ChangeDetectionStrategy.OnPush,
17751
+ selector: 'kendo-scheduler-year-view',
17752
+ providers: [{
17753
+ provide: SchedulerView,
17754
+ useExisting: forwardRef(() => YearViewComponent)
17755
+ }],
17756
+ template: `
17757
+ <ng-template #content>
17758
+ <year-view-internal
17759
+ [selectedDateFormat]="selectedDateFormat"
17760
+ [selectedShortDateFormat]="selectedShortDateFormat"
17761
+ [slotClass]="viewSlotClass"
17762
+ [eventClass]="viewEventClass"
17763
+ [eventStyles]="viewEventStyles"
17764
+ [dateRangeFn]="dateRange"
17765
+ [newRange]="newRange">
17766
+ </year-view-internal>
17767
+ </ng-template>
17768
+ `
17769
+ }]
17770
+ }], ctorParameters: function () { return [{ type: i1$1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: ViewContextService }, { type: ViewStateService }, { type: i1$4.IntlService }]; }, propDecorators: { selectedDateFormat: [{
17771
+ type: Input
17772
+ }], selectedShortDateFormat: [{
17773
+ type: Input
17774
+ }] } });
17775
+
17776
+ /**
17777
+ * @hidden
17778
+ */
17779
+ class YearViewModule {
17780
+ }
17781
+ YearViewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: YearViewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
17782
+ YearViewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: YearViewModule, declarations: [YearViewComponent,
17783
+ YearViewInternalComponent], imports: [ViewsSharedModule,
17784
+ CalendarsModule,
17785
+ TooltipsModule,
17786
+ IntlModule], exports: [YearViewComponent] });
17787
+ YearViewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: YearViewModule, imports: [[
17788
+ ViewsSharedModule,
17789
+ CalendarsModule,
17790
+ TooltipsModule,
17791
+ IntlModule
17792
+ ]] });
17793
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: YearViewModule, decorators: [{
17794
+ type: NgModule,
17795
+ args: [{
17796
+ imports: [
17797
+ ViewsSharedModule,
17798
+ CalendarsModule,
17799
+ TooltipsModule,
17800
+ IntlModule
17801
+ ],
17802
+ exports: [
17803
+ YearViewComponent
17804
+ ],
17805
+ declarations: [
17806
+ YearViewComponent,
17807
+ YearViewInternalComponent
17808
+ ]
17809
+ }]
17810
+ }] });
17811
+
17153
17812
  const TEMPLATES = [
17154
17813
  AgendaDateTemplateDirective,
17155
17814
  AgendaTimeTemplateDirective,
@@ -17195,6 +17854,7 @@ const declarations$1 = [
17195
17854
  const publicDirectives = [
17196
17855
  AgendaViewComponent,
17197
17856
  MonthViewModule,
17857
+ YearViewComponent,
17198
17858
  MultiDayViewModule,
17199
17859
  ReactiveEditingDirective,
17200
17860
  TimelineViewModule,
@@ -17279,7 +17939,8 @@ SchedulerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version
17279
17939
  ResizeSensorModule,
17280
17940
  MonthViewModule,
17281
17941
  TimelineViewModule,
17282
- WatermarkModule, ButtonsModule,
17942
+ WatermarkModule,
17943
+ YearViewModule, ButtonsModule,
17283
17944
  CheckBoxModule,
17284
17945
  TextAreaModule,
17285
17946
  DateInputsModule,
@@ -17292,6 +17953,7 @@ SchedulerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version
17292
17953
  LabelModule,
17293
17954
  FormFieldModule], exports: [AgendaViewComponent,
17294
17955
  MonthViewModule,
17956
+ YearViewComponent,
17295
17957
  MultiDayViewModule,
17296
17958
  ReactiveEditingDirective,
17297
17959
  TimelineViewModule, ToolbarNavigationComponent, ToolbarTemplateDirective, ToolbarViewSelectorComponent, SchedulerComponent,
@@ -17342,6 +18004,7 @@ SchedulerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version
17342
18004
  MonthViewModule,
17343
18005
  TimelineViewModule,
17344
18006
  WatermarkModule,
18007
+ YearViewModule,
17345
18008
  ...importedKendoModules
17346
18009
  ], MonthViewModule,
17347
18010
  MultiDayViewModule,
@@ -17358,6 +18021,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
17358
18021
  MonthViewModule,
17359
18022
  TimelineViewModule,
17360
18023
  WatermarkModule,
18024
+ YearViewModule,
17361
18025
  ...importedKendoModules
17362
18026
  ],
17363
18027
  declarations: declarations$1,
@@ -17914,5 +18578,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
17914
18578
  * Generated bundle index. Do not edit.
17915
18579
  */
17916
18580
 
17917
- export { AddEvent, AgendaDateTemplateDirective, AgendaTimeTemplateDirective, AgendaViewComponent, AllDayEventTemplateDirective, AllDaySlotTemplateDirective, BaseEditService, CancelEvent, CrudOperation, DataBindingDirective, DateChangeEvent, DateHeaderTemplateDirective, DaySlotDirective, DayTimeModule, DayTimeSlotService, DayTimeViewItemComponent, DayViewComponent, DragEndEvent, DragEvent, DragStartEvent, EditDialogComponent, EditDialogTemplateDirective, EditEvent, EditEventBase, EditMode, EndRuleRadioButtonDirective, EventClickEvent, EventKeydownEvent, EventTemplateDirective, FocusService, FocusableDirective, GroupHeaderTemplateDirective, HintContainerComponent, IsSlotSelectedArgs, LoadingComponent, LocalizedMessagesDirective, MajorTimeHeaderTemplateDirective, MinorTimeHeaderTemplateDirective, MonthDaySlotTemplateDirective, MonthViewComponent, MonthViewModule, MultiDayViewComponent, MultiDayViewModule, MultiWeekDaySlotTemplateDirective, MultiWeekViewComponent, MultipleResourceEditorComponent, NavigateEvent, PDFCommandDirective, PDFComponent, PDFExportEvent, PDFModule, PDFService, ReactiveEditingDirective, RecurrenceEditorComponent, RecurrenceEditorCustomMessagesComponent, RecurrenceEditorLocalizedMessagesDirective, RecurrenceEndRuleEditorComponent, RecurrenceFrequencyEditorComponent, RecurrenceIntervalEditorComponent, RecurrenceMonthlyYearlyEditorComponent, RecurrenceWeekdayRuleEditorComponent, RemoveEvent, RepeatOnRadioButtonDirective, RepeatPipe, ResizeEndEvent, ResizeEvent, ResizeHintComponent, ResizeStartEvent, ResourceIteratorPipe, SaveEvent, SchedulerComponent, SchedulerCustomMessagesComponent, SchedulerDateTimePickerComponent, SchedulerModule, SchedulerView, SchedulerViewDirective, SharedModule, ShortcutsDirective, SingleResourceEditorComponent, SlotClickEvent, SlotDragEndEvent, SlotDragEvent, SlotDragStartEvent, SlotSelectableDirective, SortPipe, TimeSlotDirective, TimeSlotTemplateDirective, TimeZoneEditorComponent, TimelineBase, TimelineMonthViewComponent, TimelineMultiDayViewComponent, TimelineViewComponent, TimelineViewModule, TimelineWeekViewComponent, ToolbarNavigationComponent, ToolbarService, ToolbarTemplateDirective, ToolbarViewSelectorComponent, VIEW_EVENT_MAP, ViewContextService, ViewFooterComponent, ViewStateService, ViewsSharedModule, WeekViewComponent, WorkHoursFooterDirective, WorkWeekViewComponent };
18581
+ export { AddEvent, AgendaDateTemplateDirective, AgendaTimeTemplateDirective, AgendaViewComponent, AllDayEventTemplateDirective, AllDaySlotTemplateDirective, BaseEditService, CancelEvent, CrudOperation, DataBindingDirective, DateChangeEvent, DateHeaderTemplateDirective, DaySlotDirective, DayTimeModule, DayTimeSlotService, DayTimeViewItemComponent, DayViewComponent, DragEndEvent, DragEvent, DragStartEvent, EditDialogComponent, EditDialogTemplateDirective, EditEvent, EditEventBase, EditMode, EndRuleRadioButtonDirective, EventClickEvent, EventKeydownEvent, EventTemplateDirective, FocusService, FocusableDirective, GroupHeaderTemplateDirective, HintContainerComponent, IsSlotSelectedArgs, LoadingComponent, LocalizedMessagesDirective, MajorTimeHeaderTemplateDirective, MinorTimeHeaderTemplateDirective, MonthDaySlotTemplateDirective, MonthViewComponent, MonthViewModule, MultiDayViewComponent, MultiDayViewModule, MultiWeekDaySlotTemplateDirective, MultiWeekViewComponent, MultipleResourceEditorComponent, NavigateEvent, PDFCommandDirective, PDFComponent, PDFExportEvent, PDFModule, PDFService, ReactiveEditingDirective, RecurrenceEditorComponent, RecurrenceEditorCustomMessagesComponent, RecurrenceEditorLocalizedMessagesDirective, RecurrenceEndRuleEditorComponent, RecurrenceFrequencyEditorComponent, RecurrenceIntervalEditorComponent, RecurrenceMonthlyYearlyEditorComponent, RecurrenceWeekdayRuleEditorComponent, RemoveEvent, RepeatOnRadioButtonDirective, RepeatPipe, ResizeEndEvent, ResizeEvent, ResizeHintComponent, ResizeStartEvent, ResourceIteratorPipe, SaveEvent, SchedulerComponent, SchedulerCustomMessagesComponent, SchedulerDateTimePickerComponent, SchedulerModule, SchedulerView, SchedulerViewDirective, SharedModule, ShortcutsDirective, SingleResourceEditorComponent, SlotClickEvent, SlotDragEndEvent, SlotDragEvent, SlotDragStartEvent, SlotSelectableDirective, SortPipe, TimeSlotDirective, TimeSlotTemplateDirective, TimeZoneEditorComponent, TimelineBase, TimelineMonthViewComponent, TimelineMultiDayViewComponent, TimelineViewComponent, TimelineViewModule, TimelineWeekViewComponent, ToolbarNavigationComponent, ToolbarService, ToolbarTemplateDirective, ToolbarViewSelectorComponent, VIEW_EVENT_MAP, ViewContextService, ViewFooterComponent, ViewStateService, ViewsSharedModule, WeekViewComponent, WorkHoursFooterDirective, WorkWeekViewComponent, YearViewComponent };
17918
18582