@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.
- package/NOTICE.txt +146 -593
- package/esm2020/index.mjs +1 -0
- package/esm2020/localization/messages.mjs +5 -1
- package/esm2020/navigation/shortcuts.directive.mjs +9 -0
- package/esm2020/package-metadata.mjs +2 -2
- package/esm2020/scheduler.component.mjs +12 -0
- package/esm2020/scheduler.module.mjs +8 -1
- package/esm2020/toolbar/navigation.component.mjs +9 -1
- package/esm2020/toolbar/toolbar.component.mjs +25 -3
- package/esm2020/views/timeline/timeline-month-view.component.mjs +13 -5
- package/esm2020/views/timeline/timeline-view.component.mjs +13 -5
- package/esm2020/views/timeline/timeline-week-view.component.mjs +12 -5
- package/esm2020/views/year/utils.mjs +60 -0
- package/esm2020/views/year/year-view-internal.component.mjs +418 -0
- package/esm2020/views/year/year-view.component.mjs +115 -0
- package/esm2020/views/year/year-view.module.mjs +47 -0
- package/fesm2015/progress-kendo-angular-scheduler.mjs +696 -32
- package/fesm2020/progress-kendo-angular-scheduler.mjs +690 -32
- package/index.d.ts +1 -0
- package/localization/messages.d.ts +9 -1
- package/package.json +13 -12
- package/scheduler.module.d.ts +15 -13
- package/schematics/ngAdd/index.js +2 -2
- package/toolbar/navigation.component.d.ts +10 -2
- package/toolbar/toolbar.component.d.ts +9 -0
- package/types/scheduler-slot.interface.d.ts +4 -0
- package/types/slot-class-args.interface.d.ts +4 -0
- package/views/timeline/timeline-month-view.component.d.ts +4 -1
- package/views/timeline/timeline-view.component.d.ts +4 -1
- package/views/timeline/timeline-week-view.component.d.ts +3 -1
- package/views/year/utils.d.ts +21 -0
- package/views/year/year-view-internal.component.d.ts +82 -0
- package/views/year/year-view.component.d.ts +56 -0
- 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:
|
|
52
|
-
version: '14.4.0-develop.
|
|
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
|
|
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
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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,
|
|
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
|
|