@progress/kendo-angular-dateinputs 15.3.1-develop.2 → 15.4.0-develop.1

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 (35) hide show
  1. package/calendar/calendar-common.module.d.ts +7 -5
  2. package/calendar/calendar.component.d.ts +45 -1
  3. package/calendar/footer.component.d.ts +22 -0
  4. package/calendar/header.component.d.ts +3 -2
  5. package/calendar/horizontal-view-list.component.d.ts +3 -1
  6. package/calendar/multiview-calendar.component.d.ts +44 -1
  7. package/calendar/services/weeknames.service.d.ts +2 -1
  8. package/calendar/templates/footer-template.directiv/320/265.d.ts +36 -0
  9. package/calendar/templates/header-template.directive.d.ts +37 -0
  10. package/calendar/templates.module.d.ts +3 -1
  11. package/calendar/view-list.component.d.ts +8 -1
  12. package/common/models/week-days-format.d.ts +10 -0
  13. package/datepicker/datepicker.component.d.ts +30 -1
  14. package/datetimepicker/datetimepicker.component.d.ts +30 -1
  15. package/esm2020/calendar/calendar-common.module.mjs +6 -0
  16. package/esm2020/calendar/calendar.component.mjs +70 -3
  17. package/esm2020/calendar/footer.component.mjs +69 -0
  18. package/esm2020/calendar/header.component.mjs +139 -125
  19. package/esm2020/calendar/horizontal-view-list.component.mjs +6 -3
  20. package/esm2020/calendar/multiview-calendar.component.mjs +76 -7
  21. package/esm2020/calendar/templates/footer-template.directiv/320/265.mjs +43 -0
  22. package/esm2020/calendar/templates/header-template.directive.mjs +44 -0
  23. package/esm2020/calendar/templates.module.mjs +14 -4
  24. package/esm2020/calendar/view-list.component.mjs +37 -9
  25. package/esm2020/calendar/view.component.mjs +3 -8
  26. package/esm2020/common/models/week-days-format.mjs +5 -0
  27. package/esm2020/datepicker/datepicker.component.mjs +51 -3
  28. package/esm2020/daterange/date-range-popup.component.mjs +1 -1
  29. package/esm2020/datetimepicker/datetimepicker.component.mjs +51 -3
  30. package/esm2020/index.mjs +3 -0
  31. package/esm2020/package-metadata.mjs +2 -2
  32. package/fesm2015/progress-kendo-angular-dateinputs.mjs +584 -172
  33. package/fesm2020/progress-kendo-angular-dateinputs.mjs +584 -172
  34. package/index.d.ts +4 -0
  35. package/package.json +11 -11
@@ -14,14 +14,14 @@ import { validatePackage } from '@progress/kendo-licensing';
14
14
  import * as i1 from '@progress/kendo-angular-intl';
15
15
  import { localeData, IntlModule } from '@progress/kendo-angular-intl';
16
16
  import { Subject, Subscription, ReplaySubject, Observable, combineLatest, of, interval, animationFrameScheduler, fromEvent, EMPTY, from, BehaviorSubject, merge } from 'rxjs';
17
- import * as i7 from '@angular/common';
17
+ import * as i4 from '@angular/common';
18
18
  import { CommonModule } from '@angular/common';
19
19
  import { chevronRightIcon, chevronLeftIcon, caretAltUpIcon, caretAltDownIcon, calendarIcon, xIcon, clockIcon } from '@progress/kendo-svg-icons';
20
20
  import * as i10 from '@progress/kendo-angular-buttons';
21
21
  import { ButtonModule } from '@progress/kendo-angular-buttons';
22
22
  import { map, scan, takeWhile, debounceTime, tap, filter } from 'rxjs/operators';
23
23
  import { DateInput } from '@progress/kendo-dateinputs-common';
24
- import * as i7$1 from '@progress/kendo-angular-icons';
24
+ import * as i7 from '@progress/kendo-angular-icons';
25
25
  import { IconsModule } from '@progress/kendo-angular-icons';
26
26
  import * as i1$2 from '@progress/kendo-angular-popup';
27
27
  import { PopupModule } from '@progress/kendo-angular-popup';
@@ -37,8 +37,8 @@ const packageMetadata = {
37
37
  name: '@progress/kendo-angular-dateinputs',
38
38
  productName: 'Kendo UI for Angular',
39
39
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
40
- publishDate: 1711112104,
41
- version: '15.3.1-develop.2',
40
+ publishDate: 1711115601,
41
+ version: '15.4.0-develop.1',
42
42
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
43
43
  };
44
44
 
@@ -1801,9 +1801,7 @@ ViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
1801
1801
  class="k-alt k-calendar-td"
1802
1802
  role="gridcell"
1803
1803
  *ngIf="firstDate(row); else emptyCell"
1804
- [kendoEventsOutsideAngular]="{
1805
- click: handleWeekNumberClick.bind(this, row)
1806
- }"
1804
+ (click)="handleWeekNumberClick(row)"
1807
1805
  >
1808
1806
  <ng-template [ngIf]="!weekNumberTemplateRef">
1809
1807
  {{getWeekNumber(firstDate(row))}}
@@ -1841,7 +1839,7 @@ ViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
1841
1839
  </td>
1842
1840
  </ng-container>
1843
1841
  </tr>
1844
- `, isInline: true, directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: KForOf, selector: "[kFor][kForOf]", inputs: ["kForOf", "kForTrackBy", "kForTemplate"] }, { type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1842
+ `, isInline: true, directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: KForOf, selector: "[kFor][kForOf]", inputs: ["kForOf", "kForTrackBy", "kForTemplate"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
1845
1843
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ViewComponent, decorators: [{
1846
1844
  type: Component,
1847
1845
  args: [{
@@ -1856,9 +1854,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
1856
1854
  class="k-alt k-calendar-td"
1857
1855
  role="gridcell"
1858
1856
  *ngIf="firstDate(row); else emptyCell"
1859
- [kendoEventsOutsideAngular]="{
1860
- click: handleWeekNumberClick.bind(this, row)
1861
- }"
1857
+ (click)="handleWeekNumberClick(row)"
1862
1858
  >
1863
1859
  <ng-template [ngIf]="!weekNumberTemplateRef">
1864
1860
  {{getWeekNumber(firstDate(row))}}
@@ -1972,6 +1968,7 @@ class HorizontalViewListComponent {
1972
1968
  this.orientation = 'horizontal';
1973
1969
  this.tabIndex = 0;
1974
1970
  this.disabled = false;
1971
+ this.weekDaysFormat = 'short';
1975
1972
  this.cellClick = new EventEmitter();
1976
1973
  this.weekNumberCellClick = new EventEmitter();
1977
1974
  this.cellEnter = new EventEmitter();
@@ -2031,7 +2028,7 @@ class HorizontalViewListComponent {
2031
2028
  ngOnChanges(changes) {
2032
2029
  this.initService();
2033
2030
  if (this.weekNames.length === 0 || changes.weekNumber) {
2034
- this.weekNames = this.getWeekNames('short');
2031
+ this.weekNames = this.getWeekNames(this.weekDaysFormat);
2035
2032
  this.wideWeekNames = this.getWeekNames('wide');
2036
2033
  }
2037
2034
  if (!this.service) {
@@ -2176,7 +2173,7 @@ class HorizontalViewListComponent {
2176
2173
  }
2177
2174
  }
2178
2175
  intlChange() {
2179
- this.weekNames = this.getWeekNames('short');
2176
+ this.weekNames = this.getWeekNames(this.weekDaysFormat);
2180
2177
  this.wideWeekNames = this.getWeekNames('wide');
2181
2178
  this.cdr.markForCheck();
2182
2179
  }
@@ -2204,7 +2201,7 @@ class HorizontalViewListComponent {
2204
2201
  }
2205
2202
  }
2206
2203
  HorizontalViewListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: HorizontalViewListComponent, deps: [{ token: BusViewService }, { token: i1.IntlService }, { token: WeekNamesService }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
2207
- HorizontalViewListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: HorizontalViewListComponent, selector: "kendo-calendar-horizontal", inputs: { showOtherMonthDays: "showOtherMonthDays", cellTemplateRef: "cellTemplateRef", weekNumberTemplateRef: "weekNumberTemplateRef", activeRangeEnd: "activeRangeEnd", activeView: "activeView", cellUID: "cellUID", focusedDate: "focusedDate", isActive: "isActive", min: "min", max: "max", selectionRange: "selectionRange", selectedDates: "selectedDates", views: "views", showViewHeader: "showViewHeader", animateNavigation: "animateNavigation", orientation: "orientation", activeDescendant: "activeDescendant", tabIndex: "tabIndex", disabled: "disabled", id: "id", weekNumber: "weekNumber" }, outputs: { cellClick: "cellClick", weekNumberCellClick: "weekNumberCellClick", cellEnter: "cellEnter", cellLeave: "cellLeave", activeDateChange: "activeDateChange", focusCalendar: "focusCalendar", blurCalendar: "blurCalendar", focusedCellChange: "focusedCellChange" }, host: { listeners: { "focus": "handleMultiViewCalendarFocus()", "blur": "handleMultiViewCalendarBlur($event)" }, properties: { "class.k-calendar-view": "this.getComponentClass", "class.k-align-items-start": "this.getComponentClass", "class.k-justify-content-center": "this.getComponentClass", "class.k-hstack": "this.horizontalHostClass", "class.k-vstack": "this.verticalHostClass", "class.k-calendar-monthview": "this.getComponentMonthClass", "class.k-calendar-yearview": "this.getComponentYearClass", "class.k-calendar-decadeview": "this.getComponentDecadeClass", "class.k-calendar-centuryview": "this.getComponentCenturyClass", "attr.role": "this.role", "attr.tabindex": "this.tabindex" } }, usesOnChanges: true, ngImport: i0, template: `
2204
+ HorizontalViewListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: HorizontalViewListComponent, selector: "kendo-calendar-horizontal", inputs: { showOtherMonthDays: "showOtherMonthDays", cellTemplateRef: "cellTemplateRef", weekNumberTemplateRef: "weekNumberTemplateRef", activeRangeEnd: "activeRangeEnd", activeView: "activeView", cellUID: "cellUID", focusedDate: "focusedDate", isActive: "isActive", min: "min", max: "max", selectionRange: "selectionRange", selectedDates: "selectedDates", views: "views", showViewHeader: "showViewHeader", animateNavigation: "animateNavigation", orientation: "orientation", activeDescendant: "activeDescendant", tabIndex: "tabIndex", disabled: "disabled", id: "id", weekDaysFormat: "weekDaysFormat", weekNumber: "weekNumber" }, outputs: { cellClick: "cellClick", weekNumberCellClick: "weekNumberCellClick", cellEnter: "cellEnter", cellLeave: "cellLeave", activeDateChange: "activeDateChange", focusCalendar: "focusCalendar", blurCalendar: "blurCalendar", focusedCellChange: "focusedCellChange" }, host: { listeners: { "focus": "handleMultiViewCalendarFocus()", "blur": "handleMultiViewCalendarBlur($event)" }, properties: { "class.k-calendar-view": "this.getComponentClass", "class.k-align-items-start": "this.getComponentClass", "class.k-justify-content-center": "this.getComponentClass", "class.k-hstack": "this.horizontalHostClass", "class.k-vstack": "this.verticalHostClass", "class.k-calendar-monthview": "this.getComponentMonthClass", "class.k-calendar-yearview": "this.getComponentYearClass", "class.k-calendar-decadeview": "this.getComponentDecadeClass", "class.k-calendar-centuryview": "this.getComponentCenturyClass", "attr.role": "this.role", "attr.tabindex": "this.tabindex" } }, usesOnChanges: true, ngImport: i0, template: `
2208
2205
  <ng-template #tableTemplate let-date="date" let-class="className">
2209
2206
  <table
2210
2207
  [attr.role]="views >= 2 ? 'none' : 'grid'"
@@ -2286,7 +2283,7 @@ HorizontalViewListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.
2286
2283
  }"
2287
2284
  >
2288
2285
  </ng-template>
2289
- `, isInline: true, components: [{ type: ViewComponent, selector: "[kendoCalendarView]", inputs: ["showOtherMonthDays", "direction", "isActive", "activeView", "cellUID", "focusedDate", "viewDate", "activeRangeEnd", "selectionRange", "min", "max", "selectedDates", "weekNumber", "viewIndex", "templateRef", "weekNumberTemplateRef", "headerTitle"], outputs: ["cellClick", "weekNumberCellClick", "cellEnter", "cellLeave", "focusedCellId"] }], directives: [{ type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: KForOf, selector: "[kFor][kForOf]", inputs: ["kForOf", "kForTrackBy", "kForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2286
+ `, isInline: true, components: [{ type: ViewComponent, selector: "[kendoCalendarView]", inputs: ["showOtherMonthDays", "direction", "isActive", "activeView", "cellUID", "focusedDate", "viewDate", "activeRangeEnd", "selectionRange", "min", "max", "selectedDates", "weekNumber", "viewIndex", "templateRef", "weekNumberTemplateRef", "headerTitle"], outputs: ["cellClick", "weekNumberCellClick", "cellEnter", "cellLeave", "focusedCellId"] }], directives: [{ type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: KForOf, selector: "[kFor][kForOf]", inputs: ["kForOf", "kForTrackBy", "kForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2290
2287
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: HorizontalViewListComponent, decorators: [{
2291
2288
  type: Component,
2292
2289
  args: [{
@@ -2422,6 +2419,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
2422
2419
  type: Input
2423
2420
  }], id: [{
2424
2421
  type: Input
2422
+ }], weekDaysFormat: [{
2423
+ type: Input
2425
2424
  }], weekNumber: [{
2426
2425
  type: Input
2427
2426
  }], cellClick: [{
@@ -2585,139 +2584,151 @@ class HeaderComponent {
2585
2584
  }
2586
2585
  }
2587
2586
  HeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: HeaderComponent, deps: [{ token: BusViewService }, { token: i0.ChangeDetectorRef }, { token: i1$1.LocalizationService }, { token: i1.IntlService }, { token: DisabledDatesService }], target: i0.ɵɵFactoryTarget.Component });
2588
- HeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: HeaderComponent, selector: "kendo-calendar-header", inputs: { activeView: "activeView", currentDate: "currentDate", min: "min", max: "max", rangeLength: "rangeLength", templateRef: "templateRef", isPrevDisabled: "isPrevDisabled", isNextDisabled: "isNextDisabled", showNavigationButtons: "showNavigationButtons", orientation: "orientation", id: "id" }, outputs: { todayButtonClick: "todayButtonClick", prevButtonClick: "prevButtonClick", nextButtonClick: "nextButtonClick" }, host: { properties: { "class.k-calendar-header": "this.getComponentClass", "class.k-hstack": "this.horizontalHostClass", "class.k-vstack": "this.verticalHostClass" } }, usesOnChanges: true, ngImport: i0, template: `
2589
- <span class="k-button k-nav-fast k-button-md k-rounded-md k-button-flat k-button-flat-base k-calendar-title"
2590
- role="button"
2591
- [id]="id"
2592
- tabindex="-1"
2593
- [class.k-disabled]="!navigate"
2594
- [attr.aria-disabled]="isDisabled()"
2595
- [kendoEventsOutsideAngular]="{
2596
- click: handleNavigation
2597
- }"
2598
- [title]="parentViewButtonTitle"
2599
- [scope]="this">
2600
- <ng-template [ngIf]="!templateRef">{{title}}</ng-template>
2601
- <ng-template
2602
- [ngIf]="templateRef"
2603
- [ngTemplateOutlet]="templateRef"
2604
- [ngTemplateOutletContext]="{ $implicit: title, activeView: activeViewValue, date: currentDate }"
2605
- ></ng-template>
2606
- </span>
2607
- <span class="k-spacer"></span>
2608
- <span class="k-calendar-nav k-hstack">
2609
- <button
2610
- *ngIf="showNavigationButtons"
2611
- kendoButton
2612
- fillMode="flat"
2613
- [svgIcon]="chevronLeftIcon"
2614
- icon="chevron-left"
2615
- tabindex="-1"
2616
- type="button"
2617
- class="k-calendar-nav-prev"
2618
- [attr.aria-disabled]="isPrevDisabled"
2619
- [disabled]="isPrevDisabled"
2620
- [title]="prevButtonTitle"
2621
- (click)="prevButtonClick.emit()"
2622
- >
2623
- </button>
2624
- <button
2625
- class="k-calendar-nav-today k-button k-button-md k-button-flat k-button-flat-primary k-rounded-md"
2587
+ HeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: HeaderComponent, selector: "kendo-calendar-header", inputs: { activeView: "activeView", currentDate: "currentDate", min: "min", max: "max", rangeLength: "rangeLength", titleTemplateRef: "titleTemplateRef", headerTemplateRef: "headerTemplateRef", isPrevDisabled: "isPrevDisabled", isNextDisabled: "isNextDisabled", showNavigationButtons: "showNavigationButtons", orientation: "orientation", id: "id" }, outputs: { todayButtonClick: "todayButtonClick", prevButtonClick: "prevButtonClick", nextButtonClick: "nextButtonClick" }, host: { properties: { "class.k-calendar-header": "this.getComponentClass", "class.k-hstack": "this.horizontalHostClass", "class.k-vstack": "this.verticalHostClass" } }, usesOnChanges: true, ngImport: i0, template: `
2588
+ <ng-template *ngIf="headerTemplateRef; else defaultRendering"
2589
+ [ngTemplateOutlet]="headerTemplateRef"
2590
+ [ngTemplateOutletContext]="{ title: title, activeView: activeViewValue, date: currentDate }">
2591
+ </ng-template>
2592
+ <ng-template #defaultRendering>
2593
+ <span class="k-button k-nav-fast k-button-md k-rounded-md k-button-flat k-button-flat-base k-calendar-title"
2594
+ role="button"
2595
+ [id]="id"
2626
2596
  tabindex="-1"
2627
- [class.k-disabled]="!todayAvailable"
2597
+ [class.k-disabled]="!navigate"
2598
+ [attr.aria-disabled]="isDisabled()"
2628
2599
  [kendoEventsOutsideAngular]="{
2629
- click: handleTodayClick
2600
+ click: handleNavigation
2630
2601
  }"
2631
- [scope]="this"
2632
- type="button"
2633
- >
2634
- {{ todayMessage }}
2635
- </button>
2636
- <button
2637
- *ngIf="showNavigationButtons"
2638
- kendoButton
2639
- fillMode="flat"
2640
- [svgIcon]="chevronRightIcon"
2641
- icon="chevron-right"
2642
- class="k-calendar-nav-next"
2643
- tabindex="-1"
2644
- type="button"
2645
- [attr.aria-disabled]="isNextDisabled"
2646
- [disabled]="isNextDisabled"
2647
- [title]="nextButtonTitle"
2648
- (click)="nextButtonClick.emit()"
2649
- >
2650
- </button>
2651
- </span>
2652
- `, isInline: true, components: [{ type: i10.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }], directives: [{ type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
2602
+ [title]="parentViewButtonTitle"
2603
+ [scope]="this">
2604
+ <ng-template [ngIf]="!titleTemplateRef">{{title}}</ng-template>
2605
+ <ng-template
2606
+ [ngIf]="titleTemplateRef"
2607
+ [ngTemplateOutlet]="titleTemplateRef"
2608
+ [ngTemplateOutletContext]="{ $implicit: title, activeView: activeViewValue, date: currentDate }"
2609
+ ></ng-template>
2610
+ </span>
2611
+ <span class="k-spacer"></span>
2612
+ <span class="k-calendar-nav k-hstack">
2613
+ <button
2614
+ *ngIf="showNavigationButtons"
2615
+ kendoButton
2616
+ fillMode="flat"
2617
+ [svgIcon]="chevronLeftIcon"
2618
+ icon="chevron-left"
2619
+ tabindex="-1"
2620
+ type="button"
2621
+ class="k-calendar-nav-prev"
2622
+ [attr.aria-disabled]="isPrevDisabled"
2623
+ [disabled]="isPrevDisabled"
2624
+ [title]="prevButtonTitle"
2625
+ (click)="prevButtonClick.emit()"
2626
+ >
2627
+ </button>
2628
+ <button
2629
+ class="k-calendar-nav-today k-button k-button-md k-button-flat k-button-flat-primary k-rounded-md"
2630
+ tabindex="-1"
2631
+ [class.k-disabled]="!todayAvailable"
2632
+ [kendoEventsOutsideAngular]="{
2633
+ click: handleTodayClick
2634
+ }"
2635
+ [scope]="this"
2636
+ type="button"
2637
+ >
2638
+ {{ todayMessage }}
2639
+ </button>
2640
+ <button
2641
+ *ngIf="showNavigationButtons"
2642
+ kendoButton
2643
+ fillMode="flat"
2644
+ [svgIcon]="chevronRightIcon"
2645
+ icon="chevron-right"
2646
+ class="k-calendar-nav-next"
2647
+ tabindex="-1"
2648
+ type="button"
2649
+ [attr.aria-disabled]="isNextDisabled"
2650
+ [disabled]="isNextDisabled"
2651
+ [title]="nextButtonTitle"
2652
+ (click)="nextButtonClick.emit()"
2653
+ >
2654
+ </button>
2655
+ </span>
2656
+ </ng-template>
2657
+ `, isInline: true, components: [{ type: i10.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }] });
2653
2658
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: HeaderComponent, decorators: [{
2654
2659
  type: Component,
2655
2660
  args: [{
2656
2661
  selector: 'kendo-calendar-header',
2657
2662
  template: `
2658
- <span class="k-button k-nav-fast k-button-md k-rounded-md k-button-flat k-button-flat-base k-calendar-title"
2659
- role="button"
2660
- [id]="id"
2661
- tabindex="-1"
2662
- [class.k-disabled]="!navigate"
2663
- [attr.aria-disabled]="isDisabled()"
2664
- [kendoEventsOutsideAngular]="{
2665
- click: handleNavigation
2666
- }"
2667
- [title]="parentViewButtonTitle"
2668
- [scope]="this">
2669
- <ng-template [ngIf]="!templateRef">{{title}}</ng-template>
2670
- <ng-template
2671
- [ngIf]="templateRef"
2672
- [ngTemplateOutlet]="templateRef"
2673
- [ngTemplateOutletContext]="{ $implicit: title, activeView: activeViewValue, date: currentDate }"
2674
- ></ng-template>
2675
- </span>
2676
- <span class="k-spacer"></span>
2677
- <span class="k-calendar-nav k-hstack">
2678
- <button
2679
- *ngIf="showNavigationButtons"
2680
- kendoButton
2681
- fillMode="flat"
2682
- [svgIcon]="chevronLeftIcon"
2683
- icon="chevron-left"
2684
- tabindex="-1"
2685
- type="button"
2686
- class="k-calendar-nav-prev"
2687
- [attr.aria-disabled]="isPrevDisabled"
2688
- [disabled]="isPrevDisabled"
2689
- [title]="prevButtonTitle"
2690
- (click)="prevButtonClick.emit()"
2691
- >
2692
- </button>
2693
- <button
2694
- class="k-calendar-nav-today k-button k-button-md k-button-flat k-button-flat-primary k-rounded-md"
2663
+ <ng-template *ngIf="headerTemplateRef; else defaultRendering"
2664
+ [ngTemplateOutlet]="headerTemplateRef"
2665
+ [ngTemplateOutletContext]="{ title: title, activeView: activeViewValue, date: currentDate }">
2666
+ </ng-template>
2667
+ <ng-template #defaultRendering>
2668
+ <span class="k-button k-nav-fast k-button-md k-rounded-md k-button-flat k-button-flat-base k-calendar-title"
2669
+ role="button"
2670
+ [id]="id"
2695
2671
  tabindex="-1"
2696
- [class.k-disabled]="!todayAvailable"
2672
+ [class.k-disabled]="!navigate"
2673
+ [attr.aria-disabled]="isDisabled()"
2697
2674
  [kendoEventsOutsideAngular]="{
2698
- click: handleTodayClick
2675
+ click: handleNavigation
2699
2676
  }"
2700
- [scope]="this"
2701
- type="button"
2702
- >
2703
- {{ todayMessage }}
2704
- </button>
2705
- <button
2706
- *ngIf="showNavigationButtons"
2707
- kendoButton
2708
- fillMode="flat"
2709
- [svgIcon]="chevronRightIcon"
2710
- icon="chevron-right"
2711
- class="k-calendar-nav-next"
2712
- tabindex="-1"
2713
- type="button"
2714
- [attr.aria-disabled]="isNextDisabled"
2715
- [disabled]="isNextDisabled"
2716
- [title]="nextButtonTitle"
2717
- (click)="nextButtonClick.emit()"
2718
- >
2719
- </button>
2720
- </span>
2677
+ [title]="parentViewButtonTitle"
2678
+ [scope]="this">
2679
+ <ng-template [ngIf]="!titleTemplateRef">{{title}}</ng-template>
2680
+ <ng-template
2681
+ [ngIf]="titleTemplateRef"
2682
+ [ngTemplateOutlet]="titleTemplateRef"
2683
+ [ngTemplateOutletContext]="{ $implicit: title, activeView: activeViewValue, date: currentDate }"
2684
+ ></ng-template>
2685
+ </span>
2686
+ <span class="k-spacer"></span>
2687
+ <span class="k-calendar-nav k-hstack">
2688
+ <button
2689
+ *ngIf="showNavigationButtons"
2690
+ kendoButton
2691
+ fillMode="flat"
2692
+ [svgIcon]="chevronLeftIcon"
2693
+ icon="chevron-left"
2694
+ tabindex="-1"
2695
+ type="button"
2696
+ class="k-calendar-nav-prev"
2697
+ [attr.aria-disabled]="isPrevDisabled"
2698
+ [disabled]="isPrevDisabled"
2699
+ [title]="prevButtonTitle"
2700
+ (click)="prevButtonClick.emit()"
2701
+ >
2702
+ </button>
2703
+ <button
2704
+ class="k-calendar-nav-today k-button k-button-md k-button-flat k-button-flat-primary k-rounded-md"
2705
+ tabindex="-1"
2706
+ [class.k-disabled]="!todayAvailable"
2707
+ [kendoEventsOutsideAngular]="{
2708
+ click: handleTodayClick
2709
+ }"
2710
+ [scope]="this"
2711
+ type="button"
2712
+ >
2713
+ {{ todayMessage }}
2714
+ </button>
2715
+ <button
2716
+ *ngIf="showNavigationButtons"
2717
+ kendoButton
2718
+ fillMode="flat"
2719
+ [svgIcon]="chevronRightIcon"
2720
+ icon="chevron-right"
2721
+ class="k-calendar-nav-next"
2722
+ tabindex="-1"
2723
+ type="button"
2724
+ [attr.aria-disabled]="isNextDisabled"
2725
+ [disabled]="isNextDisabled"
2726
+ [title]="nextButtonTitle"
2727
+ (click)="nextButtonClick.emit()"
2728
+ >
2729
+ </button>
2730
+ </span>
2731
+ </ng-template>
2721
2732
  `
2722
2733
  }]
2723
2734
  }], ctorParameters: function () { return [{ type: BusViewService }, { type: i0.ChangeDetectorRef }, { type: i1$1.LocalizationService }, { type: i1.IntlService }, { type: DisabledDatesService }]; }, propDecorators: { activeView: [{
@@ -2730,7 +2741,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
2730
2741
  type: Input
2731
2742
  }], rangeLength: [{
2732
2743
  type: Input
2733
- }], templateRef: [{
2744
+ }], titleTemplateRef: [{
2745
+ type: Input
2746
+ }], headerTemplateRef: [{
2734
2747
  type: Input
2735
2748
  }], isPrevDisabled: [{
2736
2749
  type: Input
@@ -3189,6 +3202,142 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
3189
3202
  type: Injectable
3190
3203
  }], ctorParameters: function () { return [{ type: BusViewService }]; } });
3191
3204
 
3205
+ /**
3206
+ * Used for rendering the header of the Calendar. To define the header template, nest an `<ng-template>` tag
3207
+ * with the `kendoCalendarHeaderTemplate` directive inside the component tag. The template context is set to the
3208
+ * current component. To get a reference to the current title, use the `let-title` directive. To provide more details about
3209
+ * the current title, get a reference to the current `date` by using the `let-date` directive or get a reference to the
3210
+ * current active view by using the `let-activeView` directive.
3211
+ *
3212
+ * For more examples, refer to the article on [templates]({% slug templates_calendar %}).
3213
+ *
3214
+ * @example
3215
+ * ```ts
3216
+ * _@Component({
3217
+ * selector: 'my-app',
3218
+ * styles: ['.custom { color: red; }'],
3219
+ * template: `
3220
+ * <kendo-calendar>
3221
+ * <ng-template kendoCalendarHeaderTemplate let-title>
3222
+ * <span class="custom">{{title}}</span>
3223
+ * </ng-template>
3224
+ * </kendo-calendar>
3225
+ * `
3226
+ * })
3227
+ * export class AppComponent { }
3228
+ * ```
3229
+ */
3230
+ class HeaderTemplateDirective {
3231
+ constructor(templateRef) {
3232
+ this.templateRef = templateRef;
3233
+ }
3234
+ }
3235
+ HeaderTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: HeaderTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
3236
+ HeaderTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: HeaderTemplateDirective, selector: "[kendoCalendarHeaderTemplate]", ngImport: i0 });
3237
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: HeaderTemplateDirective, decorators: [{
3238
+ type: Directive,
3239
+ args: [{
3240
+ selector: '[kendoCalendarHeaderTemplate]'
3241
+ }]
3242
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
3243
+
3244
+ /**
3245
+ * Used for rendering the footer of the Calendar. To define the footer template, nest an `<ng-template>` tag
3246
+ * with the `kendoCalendarFooterTemplate` directive inside the component tag. The template context is set to the
3247
+ * current component. To get a reference to the current `date` use the `let-date` directive. To get a reference to the
3248
+ * current active view use the `let-activeView` directive.
3249
+ *
3250
+ * For more examples, refer to the article on [templates]({% slug templates_calendar %}).
3251
+ *
3252
+ * @example
3253
+ * ```ts
3254
+ * _@Component({
3255
+ * selector: 'my-app',
3256
+ * styles: ['.custom { color: red; }'],
3257
+ * template: `
3258
+ * <kendo-calendar>
3259
+ * <ng-template kendoCalendarFooterTemplate let-date>
3260
+ * <span class="custom">{{date}}</span>
3261
+ * </ng-template>
3262
+ * </kendo-calendar>
3263
+ * `
3264
+ * })
3265
+ * export class AppComponent { }
3266
+ * ```
3267
+ */
3268
+ class FooterTemplateDirective {
3269
+ constructor(templateRef) {
3270
+ this.templateRef = templateRef;
3271
+ }
3272
+ }
3273
+ FooterTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FooterTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
3274
+ FooterTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: FooterTemplateDirective, selector: "[kendoCalendarFooterTemplate]", ngImport: i0 });
3275
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FooterTemplateDirective, decorators: [{
3276
+ type: Directive,
3277
+ args: [{
3278
+ selector: '[kendoCalendarFooterTemplate]'
3279
+ }]
3280
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
3281
+
3282
+ /**
3283
+ * @hidden
3284
+ */
3285
+ class FooterComponent {
3286
+ constructor(intl) {
3287
+ this.intl = intl;
3288
+ this.showFooter = true;
3289
+ this.getToday = getToday;
3290
+ }
3291
+ }
3292
+ FooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FooterComponent, deps: [{ token: i1.IntlService }], target: i0.ɵɵFactoryTarget.Component });
3293
+ FooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: FooterComponent, selector: "kendo-calendar-footer", inputs: { footerTemplateRef: "footerTemplateRef", activeViewValue: "activeViewValue", currentDate: "currentDate" }, host: { properties: { "class.k-calendar-footer": "this.showFooter" } }, ngImport: i0, template: `
3294
+ <ng-template *ngIf="footerTemplateRef; else defaultRendering"
3295
+ [ngTemplateOutlet]="footerTemplateRef"
3296
+ [ngTemplateOutletContext]="{ activeView: activeViewValue, date: currentDate }">
3297
+ </ng-template>
3298
+ <ng-template #defaultRendering>
3299
+ <button kendoButton
3300
+ fillMode="flat"
3301
+ themeColor="primary"
3302
+ class="k-calendar-nav-today"
3303
+ type="button"
3304
+ tabindex="-1">
3305
+ {{intl.formatDate(getToday(), 'D')}}
3306
+ </button>
3307
+ </ng-template>
3308
+ `, isInline: true, components: [{ type: i10.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
3309
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FooterComponent, decorators: [{
3310
+ type: Component,
3311
+ args: [{
3312
+ selector: 'kendo-calendar-footer',
3313
+ template: `
3314
+ <ng-template *ngIf="footerTemplateRef; else defaultRendering"
3315
+ [ngTemplateOutlet]="footerTemplateRef"
3316
+ [ngTemplateOutletContext]="{ activeView: activeViewValue, date: currentDate }">
3317
+ </ng-template>
3318
+ <ng-template #defaultRendering>
3319
+ <button kendoButton
3320
+ fillMode="flat"
3321
+ themeColor="primary"
3322
+ class="k-calendar-nav-today"
3323
+ type="button"
3324
+ tabindex="-1">
3325
+ {{intl.formatDate(getToday(), 'D')}}
3326
+ </button>
3327
+ </ng-template>
3328
+ `
3329
+ }]
3330
+ }], ctorParameters: function () { return [{ type: i1.IntlService }]; }, propDecorators: { showFooter: [{
3331
+ type: HostBinding,
3332
+ args: ['class.k-calendar-footer']
3333
+ }], footerTemplateRef: [{
3334
+ type: Input
3335
+ }], activeViewValue: [{
3336
+ type: Input
3337
+ }], currentDate: [{
3338
+ type: Input
3339
+ }] } });
3340
+
3192
3341
  /**
3193
3342
  * @hidden
3194
3343
  */
@@ -3297,6 +3446,11 @@ class MultiViewCalendarComponent {
3297
3446
  * Determines whether to display the calendar header.
3298
3447
  */
3299
3448
  this.showCalendarHeader = true;
3449
+ /**
3450
+ * Toggles the visibility of the footer.
3451
+ * @default false
3452
+ */
3453
+ this.footer = false;
3300
3454
  /**
3301
3455
  * Determines whether the built-in min or max validators are enforced when validating a form.
3302
3456
  */
@@ -3329,6 +3483,11 @@ class MultiViewCalendarComponent {
3329
3483
  * it determines whether the component is focusable.
3330
3484
  */
3331
3485
  this.tabindex = 0;
3486
+ /**
3487
+ * Sets the format of the displayed Calendar week days' names.
3488
+ * @default 'short'
3489
+ */
3490
+ this.weekDaysFormat = "short";
3332
3491
  /**
3333
3492
  * @hidden
3334
3493
  */
@@ -3630,6 +3789,18 @@ class MultiViewCalendarComponent {
3630
3789
  get weekNumberTemplateRef() {
3631
3790
  return this._weekNumberTemplateRef || this.weekNumberTemplate;
3632
3791
  }
3792
+ /**
3793
+ * @hidden
3794
+ *
3795
+ * Defines the template for the Calendar footer.
3796
+ * Takes precedence over nested templates in the KendoMultiViewCalendar tag.
3797
+ */
3798
+ set footerTemplateRef(template) {
3799
+ this._footerTemplateRef = template;
3800
+ }
3801
+ get footerTemplateRef() {
3802
+ return this._footerTemplateRef || this.footerTemplate;
3803
+ }
3633
3804
  /**
3634
3805
  * @hidden
3635
3806
  *
@@ -3642,6 +3813,18 @@ class MultiViewCalendarComponent {
3642
3813
  get headerTitleTemplateRef() {
3643
3814
  return this._headerTitleTemplateRef || this.headerTitleTemplate;
3644
3815
  }
3816
+ /**
3817
+ * @hidden
3818
+ *
3819
+ * Defines the template for the Calendar header.
3820
+ * Takes precedence over nested templates in the KendoMultiViewCalendar tag.
3821
+ */
3822
+ set headerTemplateRef(template) {
3823
+ this._headerTemplateRef = template;
3824
+ }
3825
+ get headerTemplateRef() {
3826
+ return this._headerTemplateRef || this.headerTemplate;
3827
+ }
3645
3828
  get activeViewEnum() {
3646
3829
  const activeView = CalendarViewEnum[this.activeView];
3647
3830
  return activeView < this.bottomViewEnum ? this.bottomViewEnum : activeView;
@@ -4046,7 +4229,7 @@ class MultiViewCalendarComponent {
4046
4229
  }
4047
4230
  }
4048
4231
  MultiViewCalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MultiViewCalendarComponent, deps: [{ token: BusViewService }, { token: i0.ElementRef }, { token: NavigationService }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: DisabledDatesService }, { token: SelectionService }], target: i0.ɵɵFactoryTarget.Component });
4049
- MultiViewCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: MultiViewCalendarComponent, selector: "kendo-multiviewcalendar", inputs: { showOtherMonthDays: "showOtherMonthDays", showCalendarHeader: "showCalendarHeader", id: "id", focusedDate: "focusedDate", min: "min", max: "max", rangeValidation: "rangeValidation", disabledDatesRangeValidation: "disabledDatesRangeValidation", selection: "selection", value: "value", disabled: "disabled", tabindex: "tabindex", tabIndex: "tabIndex", isActive: "isActive", disabledDates: "disabledDates", activeView: "activeView", bottomView: "bottomView", topView: "topView", showViewHeader: "showViewHeader", animateNavigation: "animateNavigation", weekNumber: "weekNumber", activeRangeEnd: "activeRangeEnd", selectionRange: "selectionRange", views: "views", orientation: "orientation", cellTemplateRef: ["cellTemplate", "cellTemplateRef"], monthCellTemplateRef: ["monthCellTemplate", "monthCellTemplateRef"], yearCellTemplateRef: ["yearCellTemplate", "yearCellTemplateRef"], decadeCellTemplateRef: ["decadeCellTemplate", "decadeCellTemplateRef"], centuryCellTemplateRef: ["centuryCellTemplate", "centuryCellTemplateRef"], weekNumberTemplateRef: ["weekNumberTemplate", "weekNumberTemplateRef"], headerTitleTemplateRef: ["headerTitleTemplate", "headerTitleTemplateRef"] }, outputs: { activeViewChange: "activeViewChange", navigate: "navigate", cellEnter: "cellEnter", cellLeave: "cellLeave", valueChange: "valueChange", blurEvent: "blur", focusEvent: "focus", focusCalendar: "focusCalendar", onClosePopup: "onClosePopup", onTabPress: "onTabPress", onShiftTabPress: "onShiftTabPress" }, host: { listeners: { "mouseenter": "handleMouseEnter()", "mouseleave": "handleMouseLeave()", "mousedown": "handleMousedown($event)", "click": "handleClick()", "keydown": "keydown($event)" }, properties: { "attr.id": "this.widgetId", "attr.aria-disabled": "this.ariaDisabled", "class.k-disabled": "this.ariaDisabled" } }, providers: [
4232
+ MultiViewCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: MultiViewCalendarComponent, selector: "kendo-multiviewcalendar", inputs: { showOtherMonthDays: "showOtherMonthDays", showCalendarHeader: "showCalendarHeader", id: "id", focusedDate: "focusedDate", footer: "footer", min: "min", max: "max", rangeValidation: "rangeValidation", disabledDatesRangeValidation: "disabledDatesRangeValidation", selection: "selection", value: "value", disabled: "disabled", tabindex: "tabindex", tabIndex: "tabIndex", weekDaysFormat: "weekDaysFormat", isActive: "isActive", disabledDates: "disabledDates", activeView: "activeView", bottomView: "bottomView", topView: "topView", showViewHeader: "showViewHeader", animateNavigation: "animateNavigation", weekNumber: "weekNumber", activeRangeEnd: "activeRangeEnd", selectionRange: "selectionRange", views: "views", orientation: "orientation", cellTemplateRef: ["cellTemplate", "cellTemplateRef"], monthCellTemplateRef: ["monthCellTemplate", "monthCellTemplateRef"], yearCellTemplateRef: ["yearCellTemplate", "yearCellTemplateRef"], decadeCellTemplateRef: ["decadeCellTemplate", "decadeCellTemplateRef"], centuryCellTemplateRef: ["centuryCellTemplate", "centuryCellTemplateRef"], weekNumberTemplateRef: ["weekNumberTemplate", "weekNumberTemplateRef"], footerTemplateRef: ["footerTemplate", "footerTemplateRef"], headerTitleTemplateRef: ["headerTitleTemplate", "headerTitleTemplateRef"], headerTemplateRef: ["headerTemplate", "headerTemplateRef"] }, outputs: { activeViewChange: "activeViewChange", navigate: "navigate", cellEnter: "cellEnter", cellLeave: "cellLeave", valueChange: "valueChange", blurEvent: "blur", focusEvent: "focus", focusCalendar: "focusCalendar", onClosePopup: "onClosePopup", onTabPress: "onTabPress", onShiftTabPress: "onShiftTabPress" }, host: { listeners: { "mouseenter": "handleMouseEnter()", "mouseleave": "handleMouseLeave()", "mousedown": "handleMousedown($event)", "click": "handleClick()", "keydown": "keydown($event)" }, properties: { "attr.id": "this.widgetId", "attr.aria-disabled": "this.ariaDisabled", "class.k-disabled": "this.ariaDisabled" } }, providers: [
4050
4233
  BusViewService,
4051
4234
  RANGE_CALENDAR_VALUE_ACCESSOR,
4052
4235
  RANGE_CALENDAR_RANGE_VALIDATORS,
@@ -4058,7 +4241,7 @@ MultiViewCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0
4058
4241
  },
4059
4242
  NavigationService,
4060
4243
  SelectionService
4061
- ], queries: [{ propertyName: "cellTemplate", first: true, predicate: CellTemplateDirective, descendants: true }, { propertyName: "monthCellTemplate", first: true, predicate: MonthCellTemplateDirective, descendants: true }, { propertyName: "yearCellTemplate", first: true, predicate: YearCellTemplateDirective, descendants: true }, { propertyName: "decadeCellTemplate", first: true, predicate: DecadeCellTemplateDirective, descendants: true }, { propertyName: "centuryCellTemplate", first: true, predicate: CenturyCellTemplateDirective, descendants: true }, { propertyName: "weekNumberTemplate", first: true, predicate: WeekNumberCellTemplateDirective, descendants: true }, { propertyName: "headerTitleTemplate", first: true, predicate: HeaderTitleTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "headerElement", first: true, predicate: HeaderComponent, descendants: true, read: ElementRef }, { propertyName: "viewList", first: true, predicate: HorizontalViewListComponent, descendants: true }], exportAs: ["kendo-multiviewcalendar"], usesOnChanges: true, ngImport: i0, template: `
4244
+ ], queries: [{ propertyName: "cellTemplate", first: true, predicate: CellTemplateDirective, descendants: true }, { propertyName: "monthCellTemplate", first: true, predicate: MonthCellTemplateDirective, descendants: true }, { propertyName: "yearCellTemplate", first: true, predicate: YearCellTemplateDirective, descendants: true }, { propertyName: "decadeCellTemplate", first: true, predicate: DecadeCellTemplateDirective, descendants: true }, { propertyName: "centuryCellTemplate", first: true, predicate: CenturyCellTemplateDirective, descendants: true }, { propertyName: "weekNumberTemplate", first: true, predicate: WeekNumberCellTemplateDirective, descendants: true }, { propertyName: "headerTitleTemplate", first: true, predicate: HeaderTitleTemplateDirective, descendants: true }, { propertyName: "headerTemplate", first: true, predicate: HeaderTemplateDirective, descendants: true }, { propertyName: "footerTemplate", first: true, predicate: FooterTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "headerElement", first: true, predicate: HeaderComponent, descendants: true, read: ElementRef }, { propertyName: "viewList", first: true, predicate: HorizontalViewListComponent, descendants: true }], exportAs: ["kendo-multiviewcalendar"], usesOnChanges: true, ngImport: i0, template: `
4062
4245
  <ng-container kendoMultiViewCalendarLocalizedMessages
4063
4246
  i18n-today="kendo.multiviewcalendar.today|The label for the today button in the calendar header"
4064
4247
  today="Today"
@@ -4081,7 +4264,8 @@ MultiViewCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0
4081
4264
  [max]="max"
4082
4265
  [id]="headerId"
4083
4266
  [rangeLength]="views"
4084
- [templateRef]="headerTitleTemplateRef?.templateRef"
4267
+ [titleTemplateRef]="headerTitleTemplateRef?.templateRef"
4268
+ [headerTemplateRef]="headerTemplateRef?.templateRef"
4085
4269
  [isPrevDisabled]="isPrevDisabled"
4086
4270
  [isNextDisabled]="isNextDisabled"
4087
4271
  [showNavigationButtons]="true"
@@ -4101,6 +4285,7 @@ MultiViewCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0
4101
4285
  [cellTemplateRef]="activeCellTemplate()?.templateRef"
4102
4286
  [weekNumberTemplateRef]="weekNumberTemplateRef?.templateRef"
4103
4287
  [cellUID]="cellUID"
4288
+ [weekDaysFormat]="weekDaysFormat"
4104
4289
  [views]="views"
4105
4290
  [min]="min"
4106
4291
  [max]="max"
@@ -4123,7 +4308,13 @@ MultiViewCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0
4123
4308
  (blurCalendar)="handleFocusout($event)"
4124
4309
  >
4125
4310
  </kendo-calendar-horizontal>
4126
- `, isInline: true, components: [{ type: HeaderComponent, selector: "kendo-calendar-header", inputs: ["activeView", "currentDate", "min", "max", "rangeLength", "templateRef", "isPrevDisabled", "isNextDisabled", "showNavigationButtons", "orientation", "id"], outputs: ["todayButtonClick", "prevButtonClick", "nextButtonClick"] }, { type: HorizontalViewListComponent, selector: "kendo-calendar-horizontal", inputs: ["showOtherMonthDays", "cellTemplateRef", "weekNumberTemplateRef", "activeRangeEnd", "activeView", "cellUID", "focusedDate", "isActive", "min", "max", "selectionRange", "selectedDates", "views", "showViewHeader", "animateNavigation", "orientation", "activeDescendant", "tabIndex", "disabled", "id", "weekNumber"], outputs: ["cellClick", "weekNumberCellClick", "cellEnter", "cellLeave", "activeDateChange", "focusCalendar", "blurCalendar", "focusedCellChange"] }], directives: [{ type: MultiViewCalendarLocalizedMessagesDirective, selector: "[kendoMultiViewCalendarLocalizedMessages]" }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4311
+ <kendo-calendar-footer
4312
+ *ngIf="footer"
4313
+ [footerTemplateRef]="footerTemplateRef?.templateRef"
4314
+ [activeViewValue]="activeView"
4315
+ [currentDate]="activeDate">
4316
+ </kendo-calendar-footer>
4317
+ `, isInline: true, components: [{ type: HeaderComponent, selector: "kendo-calendar-header", inputs: ["activeView", "currentDate", "min", "max", "rangeLength", "titleTemplateRef", "headerTemplateRef", "isPrevDisabled", "isNextDisabled", "showNavigationButtons", "orientation", "id"], outputs: ["todayButtonClick", "prevButtonClick", "nextButtonClick"] }, { type: HorizontalViewListComponent, selector: "kendo-calendar-horizontal", inputs: ["showOtherMonthDays", "cellTemplateRef", "weekNumberTemplateRef", "activeRangeEnd", "activeView", "cellUID", "focusedDate", "isActive", "min", "max", "selectionRange", "selectedDates", "views", "showViewHeader", "animateNavigation", "orientation", "activeDescendant", "tabIndex", "disabled", "id", "weekDaysFormat", "weekNumber"], outputs: ["cellClick", "weekNumberCellClick", "cellEnter", "cellLeave", "activeDateChange", "focusCalendar", "blurCalendar", "focusedCellChange"] }, { type: FooterComponent, selector: "kendo-calendar-footer", inputs: ["footerTemplateRef", "activeViewValue", "currentDate"] }], directives: [{ type: MultiViewCalendarLocalizedMessagesDirective, selector: "[kendoMultiViewCalendarLocalizedMessages]" }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4127
4318
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MultiViewCalendarComponent, decorators: [{
4128
4319
  type: Component,
4129
4320
  args: [{
@@ -4166,7 +4357,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
4166
4357
  [max]="max"
4167
4358
  [id]="headerId"
4168
4359
  [rangeLength]="views"
4169
- [templateRef]="headerTitleTemplateRef?.templateRef"
4360
+ [titleTemplateRef]="headerTitleTemplateRef?.templateRef"
4361
+ [headerTemplateRef]="headerTemplateRef?.templateRef"
4170
4362
  [isPrevDisabled]="isPrevDisabled"
4171
4363
  [isNextDisabled]="isNextDisabled"
4172
4364
  [showNavigationButtons]="true"
@@ -4186,6 +4378,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
4186
4378
  [cellTemplateRef]="activeCellTemplate()?.templateRef"
4187
4379
  [weekNumberTemplateRef]="weekNumberTemplateRef?.templateRef"
4188
4380
  [cellUID]="cellUID"
4381
+ [weekDaysFormat]="weekDaysFormat"
4189
4382
  [views]="views"
4190
4383
  [min]="min"
4191
4384
  [max]="max"
@@ -4208,6 +4401,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
4208
4401
  (blurCalendar)="handleFocusout($event)"
4209
4402
  >
4210
4403
  </kendo-calendar-horizontal>
4404
+ <kendo-calendar-footer
4405
+ *ngIf="footer"
4406
+ [footerTemplateRef]="footerTemplateRef?.templateRef"
4407
+ [activeViewValue]="activeView"
4408
+ [currentDate]="activeDate">
4409
+ </kendo-calendar-footer>
4211
4410
  `
4212
4411
  }]
4213
4412
  }], ctorParameters: function () { return [{ type: BusViewService }, { type: i0.ElementRef }, { type: NavigationService }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: DisabledDatesService }, { type: SelectionService }]; }, propDecorators: { showOtherMonthDays: [{
@@ -4218,6 +4417,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
4218
4417
  type: Input
4219
4418
  }], focusedDate: [{
4220
4419
  type: Input
4420
+ }], footer: [{
4421
+ type: Input
4221
4422
  }], min: [{
4222
4423
  type: Input
4223
4424
  }], max: [{
@@ -4236,6 +4437,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
4236
4437
  type: Input
4237
4438
  }], tabIndex: [{
4238
4439
  type: Input
4440
+ }], weekDaysFormat: [{
4441
+ type: Input
4239
4442
  }], isActive: [{
4240
4443
  type: Input
4241
4444
  }], disabledDates: [{
@@ -4323,9 +4526,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
4323
4526
  }], headerTitleTemplate: [{
4324
4527
  type: ContentChild,
4325
4528
  args: [HeaderTitleTemplateDirective, { static: false }]
4529
+ }], headerTemplate: [{
4530
+ type: ContentChild,
4531
+ args: [HeaderTemplateDirective]
4532
+ }], footerTemplate: [{
4533
+ type: ContentChild,
4534
+ args: [FooterTemplateDirective]
4535
+ }], footerTemplateRef: [{
4536
+ type: Input,
4537
+ args: ['footerTemplate']
4326
4538
  }], headerTitleTemplateRef: [{
4327
4539
  type: Input,
4328
4540
  args: ['headerTitleTemplate']
4541
+ }], headerTemplateRef: [{
4542
+ type: Input,
4543
+ args: ['headerTemplate']
4329
4544
  }], headerElement: [{
4330
4545
  type: ViewChild,
4331
4546
  args: [HeaderComponent, { static: false, read: ElementRef }]
@@ -4917,7 +5132,7 @@ VirtualizationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
4917
5132
  [class.k-scrollable-horizontal-placeholder]="direction === 'horizontal'"
4918
5133
  [ngStyle]="totalVertexLength"
4919
5134
  ></div>
4920
- `, isInline: true, directives: [{ type: i7.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
5135
+ `, isInline: true, directives: [{ type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
4921
5136
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: VirtualizationComponent, decorators: [{
4922
5137
  type: Component,
4923
5138
  args: [{
@@ -5104,7 +5319,7 @@ NavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
5104
5319
  </li>
5105
5320
  </ul>
5106
5321
  </kendo-virtualization>
5107
- `, isInline: true, components: [{ type: VirtualizationComponent, selector: "kendo-virtualization", inputs: ["direction", "itemHeight", "itemWidth", "topOffset", "bottomOffset", "maxScrollDifference", "scrollOffsetSize", "scrollDuration", "skip", "take", "total"], outputs: ["activeIndexChange", "pageChange", "scrollChange"] }], directives: [{ type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: KForOf, selector: "[kFor][kForOf]", inputs: ["kForOf", "kForTrackBy", "kForTemplate"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5322
+ `, isInline: true, components: [{ type: VirtualizationComponent, selector: "kendo-virtualization", inputs: ["direction", "itemHeight", "itemWidth", "topOffset", "bottomOffset", "maxScrollDifference", "scrollOffsetSize", "scrollDuration", "skip", "take", "total"], outputs: ["activeIndexChange", "pageChange", "scrollChange"] }], directives: [{ type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: KForOf, selector: "[kFor][kForOf]", inputs: ["kForOf", "kForTrackBy", "kForTemplate"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5108
5323
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NavigationComponent, decorators: [{
5109
5324
  type: Component,
5110
5325
  args: [{
@@ -5183,6 +5398,8 @@ class ViewListComponent {
5183
5398
  this.selectedDates = [];
5184
5399
  this.tabIndex = 0;
5185
5400
  this.disabled = false;
5401
+ this.showFooter = false;
5402
+ this.weekDaysFormat = 'short';
5186
5403
  this.cellClick = new EventEmitter();
5187
5404
  this.weekNumberCellClick = new EventEmitter();
5188
5405
  this.activeDateChange = new EventEmitter();
@@ -5222,8 +5439,11 @@ class ViewListComponent {
5222
5439
  get getComponentCenturyClass() {
5223
5440
  return this.activeView === CalendarViewEnum.century;
5224
5441
  }
5442
+ get activeViewValue() {
5443
+ return CalendarViewEnum[this.activeView];
5444
+ }
5225
5445
  ngOnInit() {
5226
- this.weekNames = this.getWeekNames('short');
5446
+ this.weekNames = this.getWeekNames(this.weekDaysFormat);
5227
5447
  this.wideWeekNames = this.getWeekNames('wide');
5228
5448
  this.bottomOffset = this.getBottomOffset();
5229
5449
  this.viewOffset = -1 * this.dom.headerHeight;
@@ -5236,7 +5456,7 @@ class ViewListComponent {
5236
5456
  return;
5237
5457
  }
5238
5458
  this.cols = new Array(this.service.rowLength({ prependCell: this.weekNumber })).fill('');
5239
- this.weekNames = hasChange(changes, 'weekNumber') && this.weekNumber ? this.getWeekNames('short') : this.weekNames;
5459
+ this.weekNames = hasChange(changes, 'weekNumber') && this.weekNumber ? this.getWeekNames(this.weekDaysFormat) : this.weekNames;
5240
5460
  this.wideWeekNames = hasChange(changes, 'weekNumber') && this.weekNumber ? this.getWeekNames('wide') : this.weekNames;
5241
5461
  const activeViewChanged = hasChange(changes, 'activeView');
5242
5462
  const focusedDate = this.focusedDate;
@@ -5321,7 +5541,7 @@ class ViewListComponent {
5321
5541
  return this.weekNumber ? [''].concat(weekNames) : weekNames;
5322
5542
  }
5323
5543
  intlChange() {
5324
- this.weekNames = this.getWeekNames('short');
5544
+ this.weekNames = this.getWeekNames(this.weekDaysFormat);
5325
5545
  this.wideWeekNames = this.getWeekNames('wide');
5326
5546
  if (this.isMonthView()) {
5327
5547
  this.cdr.markForCheck();
@@ -5329,14 +5549,15 @@ class ViewListComponent {
5329
5549
  }
5330
5550
  }
5331
5551
  ViewListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ViewListComponent, deps: [{ token: BusViewService }, { token: i0.ChangeDetectorRef }, { token: i1.IntlService }, { token: CalendarDOMService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
5332
- ViewListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ViewListComponent, selector: "kendo-calendar-viewlist", inputs: { cellTemplateRef: "cellTemplateRef", weekNumberTemplateRef: "weekNumberTemplateRef", headerTitleTemplateRef: "headerTitleTemplateRef", showOtherMonthDays: "showOtherMonthDays", activeView: "activeView", cellUID: "cellUID", focusedDate: "focusedDate", isActive: "isActive", min: "min", max: "max", selectedDates: "selectedDates", tabIndex: "tabIndex", disabled: "disabled", id: "id", weekNumber: "weekNumber" }, outputs: { cellClick: "cellClick", weekNumberCellClick: "weekNumberCellClick", activeDateChange: "activeDateChange", todayButtonClick: "todayButtonClick", pageChange: "pageChange", focusCalendar: "focusCalendar", blurCalendar: "blurCalendar", focusedCellChange: "focusedCellChange" }, host: { properties: { "class.k-vstack": "this.getComponentClass", "class.k-calendar-view": "this.getComponentClass", "class.k-calendar-monthview": "this.getComponentMonthClass", "class.k-calendar-yearview": "this.getComponentYearClass", "class.k-calendar-decadeview": "this.getComponentDecadeClass", "class.k-calendar-centuryview": "this.getComponentCenturyClass" } }, viewQueries: [{ propertyName: "virtualization", first: true, predicate: VirtualizationComponent, descendants: true }, { propertyName: "headerComponent", first: true, predicate: HeaderComponent, descendants: true }, { propertyName: "list", first: true, predicate: ["list"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: `
5552
+ ViewListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ViewListComponent, selector: "kendo-calendar-viewlist", inputs: { cellTemplateRef: "cellTemplateRef", weekNumberTemplateRef: "weekNumberTemplateRef", headerTitleTemplateRef: "headerTitleTemplateRef", headerTemplateRef: "headerTemplateRef", footerTemplateRef: "footerTemplateRef", showOtherMonthDays: "showOtherMonthDays", activeView: "activeView", cellUID: "cellUID", focusedDate: "focusedDate", isActive: "isActive", min: "min", max: "max", selectedDates: "selectedDates", tabIndex: "tabIndex", disabled: "disabled", id: "id", showFooter: "showFooter", weekDaysFormat: "weekDaysFormat", weekNumber: "weekNumber" }, outputs: { cellClick: "cellClick", weekNumberCellClick: "weekNumberCellClick", activeDateChange: "activeDateChange", todayButtonClick: "todayButtonClick", pageChange: "pageChange", focusCalendar: "focusCalendar", blurCalendar: "blurCalendar", focusedCellChange: "focusedCellChange" }, host: { properties: { "class.k-vstack": "this.getComponentClass", "class.k-calendar-view": "this.getComponentClass", "class.k-calendar-monthview": "this.getComponentMonthClass", "class.k-calendar-yearview": "this.getComponentYearClass", "class.k-calendar-decadeview": "this.getComponentDecadeClass", "class.k-calendar-centuryview": "this.getComponentCenturyClass" } }, viewQueries: [{ propertyName: "virtualization", first: true, predicate: VirtualizationComponent, descendants: true }, { propertyName: "headerComponent", first: true, predicate: HeaderComponent, descendants: true }, { propertyName: "list", first: true, predicate: ["list"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: `
5333
5553
  <kendo-calendar-header
5334
5554
  [currentDate]="activeDate"
5335
5555
  [min]="min"
5336
5556
  [max]="max"
5337
5557
  [id]="id"
5338
5558
  [activeView]="activeView"
5339
- [templateRef]="headerTitleTemplateRef"
5559
+ [titleTemplateRef]="headerTitleTemplateRef"
5560
+ [headerTemplateRef]="headerTemplateRef"
5340
5561
  (todayButtonClick)="todayButtonClick.emit($event)"
5341
5562
  >
5342
5563
  </kendo-calendar-header>
@@ -5394,7 +5615,13 @@ ViewListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
5394
5615
  ></tbody>
5395
5616
  </table>
5396
5617
  </kendo-virtualization>
5397
- `, isInline: true, components: [{ type: HeaderComponent, selector: "kendo-calendar-header", inputs: ["activeView", "currentDate", "min", "max", "rangeLength", "templateRef", "isPrevDisabled", "isNextDisabled", "showNavigationButtons", "orientation", "id"], outputs: ["todayButtonClick", "prevButtonClick", "nextButtonClick"] }, { type: VirtualizationComponent, selector: "kendo-virtualization", inputs: ["direction", "itemHeight", "itemWidth", "topOffset", "bottomOffset", "maxScrollDifference", "scrollOffsetSize", "scrollDuration", "skip", "take", "total"], outputs: ["activeIndexChange", "pageChange", "scrollChange"] }, { type: ViewComponent, selector: "[kendoCalendarView]", inputs: ["showOtherMonthDays", "direction", "isActive", "activeView", "cellUID", "focusedDate", "viewDate", "activeRangeEnd", "selectionRange", "min", "max", "selectedDates", "weekNumber", "viewIndex", "templateRef", "weekNumberTemplateRef", "headerTitle"], outputs: ["cellClick", "weekNumberCellClick", "cellEnter", "cellLeave", "focusedCellId"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: KForOf, selector: "[kFor][kForOf]", inputs: ["kForOf", "kForTrackBy", "kForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5618
+ <kendo-calendar-footer
5619
+ *ngIf="showFooter"
5620
+ [footerTemplateRef]="footerTemplateRef"
5621
+ [activeViewValue]="activeViewValue"
5622
+ [currentDate]="activeDate">
5623
+ </kendo-calendar-footer>
5624
+ `, isInline: true, components: [{ type: HeaderComponent, selector: "kendo-calendar-header", inputs: ["activeView", "currentDate", "min", "max", "rangeLength", "titleTemplateRef", "headerTemplateRef", "isPrevDisabled", "isNextDisabled", "showNavigationButtons", "orientation", "id"], outputs: ["todayButtonClick", "prevButtonClick", "nextButtonClick"] }, { type: VirtualizationComponent, selector: "kendo-virtualization", inputs: ["direction", "itemHeight", "itemWidth", "topOffset", "bottomOffset", "maxScrollDifference", "scrollOffsetSize", "scrollDuration", "skip", "take", "total"], outputs: ["activeIndexChange", "pageChange", "scrollChange"] }, { type: ViewComponent, selector: "[kendoCalendarView]", inputs: ["showOtherMonthDays", "direction", "isActive", "activeView", "cellUID", "focusedDate", "viewDate", "activeRangeEnd", "selectionRange", "min", "max", "selectedDates", "weekNumber", "viewIndex", "templateRef", "weekNumberTemplateRef", "headerTitle"], outputs: ["cellClick", "weekNumberCellClick", "cellEnter", "cellLeave", "focusedCellId"] }, { type: FooterComponent, selector: "kendo-calendar-footer", inputs: ["footerTemplateRef", "activeViewValue", "currentDate"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: KForOf, selector: "[kFor][kForOf]", inputs: ["kForOf", "kForTrackBy", "kForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5398
5625
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ViewListComponent, decorators: [{
5399
5626
  type: Component,
5400
5627
  args: [{
@@ -5407,7 +5634,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
5407
5634
  [max]="max"
5408
5635
  [id]="id"
5409
5636
  [activeView]="activeView"
5410
- [templateRef]="headerTitleTemplateRef"
5637
+ [titleTemplateRef]="headerTitleTemplateRef"
5638
+ [headerTemplateRef]="headerTemplateRef"
5411
5639
  (todayButtonClick)="todayButtonClick.emit($event)"
5412
5640
  >
5413
5641
  </kendo-calendar-header>
@@ -5465,6 +5693,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
5465
5693
  ></tbody>
5466
5694
  </table>
5467
5695
  </kendo-virtualization>
5696
+ <kendo-calendar-footer
5697
+ *ngIf="showFooter"
5698
+ [footerTemplateRef]="footerTemplateRef"
5699
+ [activeViewValue]="activeViewValue"
5700
+ [currentDate]="activeDate">
5701
+ </kendo-calendar-footer>
5468
5702
  `
5469
5703
  }]
5470
5704
  }], ctorParameters: function () { return [{ type: BusViewService }, { type: i0.ChangeDetectorRef }, { type: i1.IntlService }, { type: CalendarDOMService }, { type: i0.Renderer2 }]; }, propDecorators: { cellTemplateRef: [{
@@ -5473,6 +5707,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
5473
5707
  type: Input
5474
5708
  }], headerTitleTemplateRef: [{
5475
5709
  type: Input
5710
+ }], headerTemplateRef: [{
5711
+ type: Input
5712
+ }], footerTemplateRef: [{
5713
+ type: Input
5476
5714
  }], showOtherMonthDays: [{
5477
5715
  type: Input
5478
5716
  }], activeView: [{
@@ -5495,6 +5733,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
5495
5733
  type: Input
5496
5734
  }], id: [{
5497
5735
  type: Input
5736
+ }], showFooter: [{
5737
+ type: Input
5738
+ }], weekDaysFormat: [{
5739
+ type: Input
5498
5740
  }], weekNumber: [{
5499
5741
  type: Input
5500
5742
  }], cellClick: [{
@@ -5814,6 +6056,16 @@ class CalendarComponent {
5814
6056
  * Determines whether the built-in min or max validators are enforced when validating a form.
5815
6057
  */
5816
6058
  this.rangeValidation = false;
6059
+ /**
6060
+ * Sets the format of the displayed Calendar week days' names.
6061
+ * @default 'short'
6062
+ */
6063
+ this.weekDaysFormat = "short";
6064
+ /**
6065
+ * Toggles the visibility of the footer.
6066
+ * @default false
6067
+ */
6068
+ this.footer = false;
5817
6069
  /**
5818
6070
  * Sets the Calendar selection mode
5819
6071
  * ([see example]({% slug multiple_selection_calendar %})).
@@ -6152,6 +6404,29 @@ class CalendarComponent {
6152
6404
  get headerTitleTemplateRef() {
6153
6405
  return this._headerTitleTemplateRef || this.headerTitleTemplate;
6154
6406
  }
6407
+ /**
6408
+ * @hidden
6409
+ *
6410
+ * Defines the template for the header.
6411
+ * Takes precedence over nested templates in the KendoCalendar tag.
6412
+ */
6413
+ set headerTemplateRef(template) {
6414
+ this._headerTemplateRef = template;
6415
+ }
6416
+ get headerTemplateRef() {
6417
+ return this._headerTemplateRef || this.headerTemplate;
6418
+ }
6419
+ /**
6420
+ * @hidden
6421
+ *
6422
+ * Defines the template for the footer.
6423
+ */
6424
+ set footerTemplateRef(template) {
6425
+ this._footerTemplateRef = template;
6426
+ }
6427
+ get footerTemplateRef() {
6428
+ return this._footerTemplateRef || this.footerTemplate;
6429
+ }
6155
6430
  /**
6156
6431
  * @hidden
6157
6432
  *
@@ -6679,7 +6954,7 @@ class CalendarComponent {
6679
6954
  }
6680
6955
  }
6681
6956
  CalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CalendarComponent, deps: [{ token: BusViewService }, { token: CalendarDOMService }, { token: i0.ElementRef }, { token: NavigationService }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.Injector }, { token: ScrollSyncService }, { token: DisabledDatesService }, { token: i1$1.LocalizationService }, { token: SelectionService }, { token: PickerService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
6682
- CalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: CalendarComponent, selector: "kendo-calendar", inputs: { showOtherMonthDays: "showOtherMonthDays", id: "id", focusedDate: "focusedDate", min: "min", max: "max", rangeValidation: "rangeValidation", selection: "selection", value: "value", disabled: "disabled", tabindex: "tabindex", tabIndex: "tabIndex", disabledDates: "disabledDates", navigation: "navigation", activeView: "activeView", bottomView: "bottomView", topView: "topView", type: "type", animateNavigation: "animateNavigation", weekNumber: "weekNumber", cellTemplateRef: ["cellTemplate", "cellTemplateRef"], monthCellTemplateRef: ["monthCellTemplate", "monthCellTemplateRef"], yearCellTemplateRef: ["yearCellTemplate", "yearCellTemplateRef"], decadeCellTemplateRef: ["decadeCellTemplate", "decadeCellTemplateRef"], centuryCellTemplateRef: ["centuryCellTemplate", "centuryCellTemplateRef"], weekNumberTemplateRef: ["weekNumberTemplate", "weekNumberTemplateRef"], headerTitleTemplateRef: ["headerTitleTemplate", "headerTitleTemplateRef"], navigationItemTemplateRef: ["navigationItemTemplate", "navigationItemTemplateRef"], size: "size" }, outputs: { activeViewChange: "activeViewChange", navigate: "navigate", activeViewDateChange: "activeViewDateChange", onBlur: "blur", onFocus: "focus", valueChange: "valueChange" }, host: { properties: { "class.k-week-number": "this.weekNumber", "attr.id": "this.widgetId", "attr.aria-disabled": "this.ariaDisabled", "class.k-disabled": "this.ariaDisabled" } }, providers: [
6957
+ CalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: CalendarComponent, selector: "kendo-calendar", inputs: { showOtherMonthDays: "showOtherMonthDays", id: "id", focusedDate: "focusedDate", min: "min", max: "max", rangeValidation: "rangeValidation", weekDaysFormat: "weekDaysFormat", footer: "footer", selection: "selection", value: "value", disabled: "disabled", tabindex: "tabindex", tabIndex: "tabIndex", disabledDates: "disabledDates", navigation: "navigation", activeView: "activeView", bottomView: "bottomView", topView: "topView", type: "type", animateNavigation: "animateNavigation", weekNumber: "weekNumber", cellTemplateRef: ["cellTemplate", "cellTemplateRef"], monthCellTemplateRef: ["monthCellTemplate", "monthCellTemplateRef"], yearCellTemplateRef: ["yearCellTemplate", "yearCellTemplateRef"], decadeCellTemplateRef: ["decadeCellTemplate", "decadeCellTemplateRef"], centuryCellTemplateRef: ["centuryCellTemplate", "centuryCellTemplateRef"], weekNumberTemplateRef: ["weekNumberTemplate", "weekNumberTemplateRef"], headerTitleTemplateRef: ["headerTitleTemplate", "headerTitleTemplateRef"], headerTemplateRef: ["headerTemplate", "headerTemplateRef"], footerTemplateRef: ["footerTemplate", "footerTemplateRef"], navigationItemTemplateRef: ["navigationItemTemplate", "navigationItemTemplateRef"], size: "size" }, outputs: { activeViewChange: "activeViewChange", navigate: "navigate", activeViewDateChange: "activeViewDateChange", onBlur: "blur", onFocus: "focus", valueChange: "valueChange" }, host: { properties: { "class.k-week-number": "this.weekNumber", "attr.id": "this.widgetId", "attr.aria-disabled": "this.ariaDisabled", "class.k-disabled": "this.ariaDisabled" } }, providers: [
6683
6958
  BusViewService,
6684
6959
  CALENDAR_VALUE_ACCESSOR,
6685
6960
  CALENDAR_RANGE_VALIDATORS,
@@ -6693,7 +6968,7 @@ CalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
6693
6968
  NavigationService,
6694
6969
  ScrollSyncService,
6695
6970
  SelectionService
6696
- ], queries: [{ propertyName: "cellTemplate", first: true, predicate: CellTemplateDirective, descendants: true }, { propertyName: "monthCellTemplate", first: true, predicate: MonthCellTemplateDirective, descendants: true }, { propertyName: "yearCellTemplate", first: true, predicate: YearCellTemplateDirective, descendants: true }, { propertyName: "decadeCellTemplate", first: true, predicate: DecadeCellTemplateDirective, descendants: true }, { propertyName: "centuryCellTemplate", first: true, predicate: CenturyCellTemplateDirective, descendants: true }, { propertyName: "weekNumberTemplate", first: true, predicate: WeekNumberCellTemplateDirective, descendants: true }, { propertyName: "headerTitleTemplate", first: true, predicate: HeaderTitleTemplateDirective, descendants: true }, { propertyName: "navigationItemTemplate", first: true, predicate: NavigationItemTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "navigationView", first: true, predicate: NavigationComponent, descendants: true }, { propertyName: "monthView", first: true, predicate: ViewListComponent, descendants: true }, { propertyName: "multiViewCalendar", first: true, predicate: MultiViewCalendarComponent, descendants: true }], exportAs: ["kendo-calendar"], usesOnChanges: true, ngImport: i0, template: `
6971
+ ], queries: [{ propertyName: "cellTemplate", first: true, predicate: CellTemplateDirective, descendants: true }, { propertyName: "monthCellTemplate", first: true, predicate: MonthCellTemplateDirective, descendants: true }, { propertyName: "yearCellTemplate", first: true, predicate: YearCellTemplateDirective, descendants: true }, { propertyName: "decadeCellTemplate", first: true, predicate: DecadeCellTemplateDirective, descendants: true }, { propertyName: "centuryCellTemplate", first: true, predicate: CenturyCellTemplateDirective, descendants: true }, { propertyName: "weekNumberTemplate", first: true, predicate: WeekNumberCellTemplateDirective, descendants: true }, { propertyName: "headerTitleTemplate", first: true, predicate: HeaderTitleTemplateDirective, descendants: true }, { propertyName: "headerTemplate", first: true, predicate: HeaderTemplateDirective, descendants: true }, { propertyName: "footerTemplate", first: true, predicate: FooterTemplateDirective, descendants: true }, { propertyName: "navigationItemTemplate", first: true, predicate: NavigationItemTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "navigationView", first: true, predicate: NavigationComponent, descendants: true }, { propertyName: "monthView", first: true, predicate: ViewListComponent, descendants: true }, { propertyName: "multiViewCalendar", first: true, predicate: MultiViewCalendarComponent, descendants: true }], exportAs: ["kendo-calendar"], usesOnChanges: true, ngImport: i0, template: `
6697
6972
  <ng-container kendoCalendarLocalizedMessages
6698
6973
  i18n-today="kendo.calendar.today|The label for the today button in the calendar header"
6699
6974
  today="Today"
@@ -6725,8 +7000,12 @@ CalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
6725
7000
  [showOtherMonthDays]="showOtherMonthDays"
6726
7001
  [isActive]="isActive"
6727
7002
  [id]="headerId"
7003
+ [weekDaysFormat]="weekDaysFormat"
6728
7004
  [cellTemplateRef]="activeCellTemplate()?.templateRef"
6729
7005
  [headerTitleTemplateRef]="headerTitleTemplateRef?.templateRef"
7006
+ [headerTemplateRef]="headerTemplateRef?.templateRef"
7007
+ [showFooter]="footer"
7008
+ [footerTemplateRef]="footerTemplateRef?.templateRef"
6730
7009
  [weekNumberTemplateRef]="weekNumberTemplateRef?.templateRef"
6731
7010
  [cellUID]="cellUID"
6732
7011
  [min]="min"
@@ -6764,6 +7043,7 @@ CalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
6764
7043
  [activeView]="activeView"
6765
7044
  [bottomView]="bottomView"
6766
7045
  [topView]="topView"
7046
+ [weekDaysFormat]="weekDaysFormat"
6767
7047
  [weekNumber]="weekNumber"
6768
7048
  [animateNavigation]="animateNavigation"
6769
7049
  [cellTemplate]="activeCellTemplate()"
@@ -6772,6 +7052,9 @@ CalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
6772
7052
  [decadeCellTemplate]="decadeCellTemplateRef"
6773
7053
  [centuryCellTemplate]="centuryCellTemplateRef"
6774
7054
  [headerTitleTemplate]="headerTitleTemplateRef"
7055
+ [headerTemplate]="headerTemplateRef"
7056
+ [footerTemplate]="footerTemplateRef"
7057
+ [footer]="footer"
6775
7058
  [weekNumberTemplate]="weekNumberTemplateRef"
6776
7059
  [focusedDate]="focusedDate"
6777
7060
  [selection]="selection"
@@ -6794,7 +7077,7 @@ CalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
6794
7077
  </kendo-multiviewcalendar-messages>
6795
7078
  </kendo-multiviewcalendar>
6796
7079
  </ng-container>
6797
- `, isInline: true, components: [{ type: NavigationComponent, selector: "kendo-calendar-navigation", inputs: ["activeView", "min", "max", "focusedDate", "templateRef"], outputs: ["valueChange", "pageChange"] }, { type: ViewListComponent, selector: "kendo-calendar-viewlist", inputs: ["cellTemplateRef", "weekNumberTemplateRef", "headerTitleTemplateRef", "showOtherMonthDays", "activeView", "cellUID", "focusedDate", "isActive", "min", "max", "selectedDates", "tabIndex", "disabled", "id", "weekNumber"], outputs: ["cellClick", "weekNumberCellClick", "activeDateChange", "todayButtonClick", "pageChange", "focusCalendar", "blurCalendar", "focusedCellChange"] }, { type: i8.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { type: MultiViewCalendarComponent, selector: "kendo-multiviewcalendar", inputs: ["showOtherMonthDays", "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: MultiViewCalendarCustomMessagesComponent, selector: "kendo-multiviewcalendar-messages" }], directives: [{ type: CalendarLocalizedMessagesDirective, selector: "[kendoCalendarLocalizedMessages]" }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
7080
+ `, isInline: true, components: [{ type: NavigationComponent, selector: "kendo-calendar-navigation", inputs: ["activeView", "min", "max", "focusedDate", "templateRef"], outputs: ["valueChange", "pageChange"] }, { type: ViewListComponent, selector: "kendo-calendar-viewlist", inputs: ["cellTemplateRef", "weekNumberTemplateRef", "headerTitleTemplateRef", "headerTemplateRef", "footerTemplateRef", "showOtherMonthDays", "activeView", "cellUID", "focusedDate", "isActive", "min", "max", "selectedDates", "tabIndex", "disabled", "id", "showFooter", "weekDaysFormat", "weekNumber"], outputs: ["cellClick", "weekNumberCellClick", "activeDateChange", "todayButtonClick", "pageChange", "focusCalendar", "blurCalendar", "focusedCellChange"] }, { type: i8.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { type: MultiViewCalendarComponent, selector: "kendo-multiviewcalendar", inputs: ["showOtherMonthDays", "showCalendarHeader", "id", "focusedDate", "footer", "min", "max", "rangeValidation", "disabledDatesRangeValidation", "selection", "value", "disabled", "tabindex", "tabIndex", "weekDaysFormat", "isActive", "disabledDates", "activeView", "bottomView", "topView", "showViewHeader", "animateNavigation", "weekNumber", "activeRangeEnd", "selectionRange", "views", "orientation", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "footerTemplate", "headerTitleTemplate", "headerTemplate"], outputs: ["activeViewChange", "navigate", "cellEnter", "cellLeave", "valueChange", "blur", "focus", "focusCalendar", "onClosePopup", "onTabPress", "onShiftTabPress"], exportAs: ["kendo-multiviewcalendar"] }, { type: MultiViewCalendarCustomMessagesComponent, selector: "kendo-multiviewcalendar-messages" }], directives: [{ type: CalendarLocalizedMessagesDirective, selector: "[kendoCalendarLocalizedMessages]" }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6798
7081
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CalendarComponent, decorators: [{
6799
7082
  type: Component,
6800
7083
  args: [{
@@ -6848,8 +7131,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
6848
7131
  [showOtherMonthDays]="showOtherMonthDays"
6849
7132
  [isActive]="isActive"
6850
7133
  [id]="headerId"
7134
+ [weekDaysFormat]="weekDaysFormat"
6851
7135
  [cellTemplateRef]="activeCellTemplate()?.templateRef"
6852
7136
  [headerTitleTemplateRef]="headerTitleTemplateRef?.templateRef"
7137
+ [headerTemplateRef]="headerTemplateRef?.templateRef"
7138
+ [showFooter]="footer"
7139
+ [footerTemplateRef]="footerTemplateRef?.templateRef"
6853
7140
  [weekNumberTemplateRef]="weekNumberTemplateRef?.templateRef"
6854
7141
  [cellUID]="cellUID"
6855
7142
  [min]="min"
@@ -6887,6 +7174,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
6887
7174
  [activeView]="activeView"
6888
7175
  [bottomView]="bottomView"
6889
7176
  [topView]="topView"
7177
+ [weekDaysFormat]="weekDaysFormat"
6890
7178
  [weekNumber]="weekNumber"
6891
7179
  [animateNavigation]="animateNavigation"
6892
7180
  [cellTemplate]="activeCellTemplate()"
@@ -6895,6 +7183,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
6895
7183
  [decadeCellTemplate]="decadeCellTemplateRef"
6896
7184
  [centuryCellTemplate]="centuryCellTemplateRef"
6897
7185
  [headerTitleTemplate]="headerTitleTemplateRef"
7186
+ [headerTemplate]="headerTemplateRef"
7187
+ [footerTemplate]="footerTemplateRef"
7188
+ [footer]="footer"
6898
7189
  [weekNumberTemplate]="weekNumberTemplateRef"
6899
7190
  [focusedDate]="focusedDate"
6900
7191
  [selection]="selection"
@@ -6933,6 +7224,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
6933
7224
  type: Input
6934
7225
  }], rangeValidation: [{
6935
7226
  type: Input
7227
+ }], weekDaysFormat: [{
7228
+ type: Input
7229
+ }], footer: [{
7230
+ type: Input
6936
7231
  }], selection: [{
6937
7232
  type: Input
6938
7233
  }], value: [{
@@ -7015,9 +7310,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7015
7310
  }], headerTitleTemplate: [{
7016
7311
  type: ContentChild,
7017
7312
  args: [HeaderTitleTemplateDirective, { static: false }]
7313
+ }], headerTemplate: [{
7314
+ type: ContentChild,
7315
+ args: [HeaderTemplateDirective]
7316
+ }], footerTemplate: [{
7317
+ type: ContentChild,
7318
+ args: [FooterTemplateDirective]
7018
7319
  }], headerTitleTemplateRef: [{
7019
7320
  type: Input,
7020
7321
  args: ['headerTitleTemplate']
7322
+ }], headerTemplateRef: [{
7323
+ type: Input,
7324
+ args: ['headerTemplate']
7325
+ }], footerTemplateRef: [{
7326
+ type: Input,
7327
+ args: ['footerTemplate']
7021
7328
  }], navigationItemTemplate: [{
7022
7329
  type: ContentChild,
7023
7330
  args: [NavigationItemTemplateDirective, { static: false }]
@@ -7984,7 +8291,7 @@ DateInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
7984
8291
  </kendo-icon-wrapper>
7985
8292
  </button>
7986
8293
  </span>
7987
- `, isInline: true, components: [{ type: i7$1.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: DateInputLocalizedMessagesDirective, selector: "[kendoDateInputLocalizedMessages]" }, { type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
8294
+ `, isInline: true, components: [{ type: i7.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: DateInputLocalizedMessagesDirective, selector: "[kendoDateInputLocalizedMessages]" }, { type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
7988
8295
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateInputComponent, decorators: [{
7989
8296
  type: Component,
7990
8297
  args: [{
@@ -8323,6 +8630,16 @@ class DatePickerComponent {
8323
8630
  * @hidden
8324
8631
  */
8325
8632
  this.calendarIcon = calendarIcon;
8633
+ /**
8634
+ * Toggles the visibility of the Calendar footer.
8635
+ * @default false
8636
+ */
8637
+ this.footer = false;
8638
+ /**
8639
+ * Sets the format of the displayed Calendar week days' names.
8640
+ * @default 'short'
8641
+ */
8642
+ this.weekDaysFormat = "short";
8326
8643
  /**
8327
8644
  * Defines the active view that the Calendar initially renders
8328
8645
  * ([see example]({% slug calendar_type_datepicker %}#toc-active-view)).
@@ -8599,6 +8916,18 @@ class DatePickerComponent {
8599
8916
  set headerTitleTemplateRef(template) {
8600
8917
  this.headerTitleTemplate = template;
8601
8918
  }
8919
+ /**
8920
+ * @hidden
8921
+ */
8922
+ set headerTemplateRef(template) {
8923
+ this.headerTemplate = template;
8924
+ }
8925
+ /**
8926
+ * @hidden
8927
+ */
8928
+ set footerTemplateRef(template) {
8929
+ this.footerTemplate = template;
8930
+ }
8602
8931
  /**
8603
8932
  * @hidden
8604
8933
  */
@@ -9299,7 +9628,7 @@ class DatePickerComponent {
9299
9628
  }
9300
9629
  }
9301
9630
  DatePickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DatePickerComponent, deps: [{ token: i0.NgZone }, { token: i1$1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i1$2.PopupService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.Injector }, { token: PickerService }, { token: DisabledDatesService }, { token: TOUCH_ENABLED, optional: true }], target: i0.ɵɵFactoryTarget.Component });
9302
- DatePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DatePickerComponent, selector: "kendo-datepicker", inputs: { focusableId: "focusableId", cellTemplateRef: ["cellTemplate", "cellTemplateRef"], monthCellTemplateRef: ["monthCellTemplate", "monthCellTemplateRef"], yearCellTemplateRef: ["yearCellTemplate", "yearCellTemplateRef"], decadeCellTemplateRef: ["decadeCellTemplate", "decadeCellTemplateRef"], centuryCellTemplateRef: ["centuryCellTemplate", "centuryCellTemplateRef"], weekNumberTemplateRef: ["weekNumberTemplate", "weekNumberTemplateRef"], headerTitleTemplateRef: ["headerTitleTemplate", "headerTitleTemplateRef"], navigationItemTemplateRef: ["navigationItemTemplate", "navigationItemTemplateRef"], showOtherMonthDays: "showOtherMonthDays", activeView: "activeView", bottomView: "bottomView", topView: "topView", calendarType: "calendarType", animateCalendarNavigation: "animateCalendarNavigation", disabled: "disabled", readonly: "readonly", readOnlyInput: "readOnlyInput", popupSettings: "popupSettings", navigation: "navigation", min: "min", max: "max", incompleteDateValidation: "incompleteDateValidation", autoCorrectParts: "autoCorrectParts", autoSwitchParts: "autoSwitchParts", autoSwitchKeys: "autoSwitchKeys", enableMouseWheel: "enableMouseWheel", allowCaretMode: "allowCaretMode", autoFill: "autoFill", focusedDate: "focusedDate", value: "value", format: "format", twoDigitYearMax: "twoDigitYearMax", formatPlaceholder: "formatPlaceholder", placeholder: "placeholder", tabindex: "tabindex", tabIndex: "tabIndex", disabledDates: "disabledDates", title: "title", subtitle: "subtitle", rangeValidation: "rangeValidation", disabledDatesValidation: "disabledDatesValidation", weekNumber: "weekNumber", size: "size", rounded: "rounded", fillMode: "fillMode", adaptiveMode: "adaptiveMode" }, outputs: { valueChange: "valueChange", onFocus: "focus", onBlur: "blur", open: "open", close: "close" }, host: { properties: { "class.k-readonly": "this.readonly", "class.k-datepicker": "this.wrapperClasses", "class.k-input": "this.wrapperClasses", "class.k-disabled": "this.disabledClass" } }, providers: [
9631
+ DatePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DatePickerComponent, selector: "kendo-datepicker", inputs: { focusableId: "focusableId", cellTemplateRef: ["cellTemplate", "cellTemplateRef"], monthCellTemplateRef: ["monthCellTemplate", "monthCellTemplateRef"], yearCellTemplateRef: ["yearCellTemplate", "yearCellTemplateRef"], decadeCellTemplateRef: ["decadeCellTemplate", "decadeCellTemplateRef"], centuryCellTemplateRef: ["centuryCellTemplate", "centuryCellTemplateRef"], weekNumberTemplateRef: ["weekNumberTemplate", "weekNumberTemplateRef"], headerTitleTemplateRef: ["headerTitleTemplate", "headerTitleTemplateRef"], headerTemplateRef: ["headerTemplate", "headerTemplateRef"], footerTemplateRef: ["footerTemplate", "footerTemplateRef"], footer: "footer", navigationItemTemplateRef: ["navigationItemTemplate", "navigationItemTemplateRef"], weekDaysFormat: "weekDaysFormat", showOtherMonthDays: "showOtherMonthDays", activeView: "activeView", bottomView: "bottomView", topView: "topView", calendarType: "calendarType", animateCalendarNavigation: "animateCalendarNavigation", disabled: "disabled", readonly: "readonly", readOnlyInput: "readOnlyInput", popupSettings: "popupSettings", navigation: "navigation", min: "min", max: "max", incompleteDateValidation: "incompleteDateValidation", autoCorrectParts: "autoCorrectParts", autoSwitchParts: "autoSwitchParts", autoSwitchKeys: "autoSwitchKeys", enableMouseWheel: "enableMouseWheel", allowCaretMode: "allowCaretMode", autoFill: "autoFill", focusedDate: "focusedDate", value: "value", format: "format", twoDigitYearMax: "twoDigitYearMax", formatPlaceholder: "formatPlaceholder", placeholder: "placeholder", tabindex: "tabindex", tabIndex: "tabIndex", disabledDates: "disabledDates", title: "title", subtitle: "subtitle", rangeValidation: "rangeValidation", disabledDatesValidation: "disabledDatesValidation", weekNumber: "weekNumber", size: "size", rounded: "rounded", fillMode: "fillMode", adaptiveMode: "adaptiveMode" }, outputs: { valueChange: "valueChange", onFocus: "focus", onBlur: "blur", open: "open", close: "close" }, host: { properties: { "class.k-readonly": "this.readonly", "class.k-datepicker": "this.wrapperClasses", "class.k-input": "this.wrapperClasses", "class.k-disabled": "this.disabledClass" } }, providers: [
9303
9632
  { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => DatePickerComponent), multi: true },
9304
9633
  { provide: NG_VALIDATORS, useExisting: forwardRef(() => DatePickerComponent), multi: true },
9305
9634
  { provide: KendoInput, useExisting: forwardRef(() => DatePickerComponent) },
@@ -9310,7 +9639,7 @@ DatePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
9310
9639
  provide: L10N_PREFIX,
9311
9640
  useValue: 'kendo.datepicker'
9312
9641
  }
9313
- ], queries: [{ propertyName: "cellTemplate", first: true, predicate: CellTemplateDirective, descendants: true }, { propertyName: "monthCellTemplate", first: true, predicate: MonthCellTemplateDirective, descendants: true }, { propertyName: "yearCellTemplate", first: true, predicate: YearCellTemplateDirective, descendants: true }, { propertyName: "decadeCellTemplate", first: true, predicate: DecadeCellTemplateDirective, descendants: true }, { propertyName: "centuryCellTemplate", first: true, predicate: CenturyCellTemplateDirective, descendants: true }, { propertyName: "weekNumberTemplate", first: true, predicate: WeekNumberCellTemplateDirective, descendants: true }, { propertyName: "headerTitleTemplate", first: true, predicate: HeaderTitleTemplateDirective, descendants: true }, { propertyName: "navigationItemTemplate", first: true, predicate: NavigationItemTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "toggleButton", first: true, predicate: ["toggleButton"], descendants: true, static: true }, { propertyName: "actionSheet", first: true, predicate: ["actionSheet"], descendants: true }], exportAs: ["kendo-datepicker"], usesOnChanges: true, ngImport: i0, template: `
9642
+ ], queries: [{ propertyName: "cellTemplate", first: true, predicate: CellTemplateDirective, descendants: true }, { propertyName: "monthCellTemplate", first: true, predicate: MonthCellTemplateDirective, descendants: true }, { propertyName: "yearCellTemplate", first: true, predicate: YearCellTemplateDirective, descendants: true }, { propertyName: "decadeCellTemplate", first: true, predicate: DecadeCellTemplateDirective, descendants: true }, { propertyName: "centuryCellTemplate", first: true, predicate: CenturyCellTemplateDirective, descendants: true }, { propertyName: "weekNumberTemplate", first: true, predicate: WeekNumberCellTemplateDirective, descendants: true }, { propertyName: "headerTitleTemplate", first: true, predicate: HeaderTitleTemplateDirective, descendants: true }, { propertyName: "headerTemplate", first: true, predicate: HeaderTemplateDirective, descendants: true }, { propertyName: "footerTemplate", first: true, predicate: FooterTemplateDirective, descendants: true }, { propertyName: "navigationItemTemplate", first: true, predicate: NavigationItemTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, static: true }, { propertyName: "toggleButton", first: true, predicate: ["toggleButton"], descendants: true, static: true }, { propertyName: "actionSheet", first: true, predicate: ["actionSheet"], descendants: true }], exportAs: ["kendo-datepicker"], usesOnChanges: true, ngImport: i0, template: `
9314
9643
  <ng-container kendoDatePickerLocalizedMessages
9315
9644
  i18n-today="kendo.datepicker.today|The label for the today button in the calendar header"
9316
9645
  today="Today"
@@ -9435,6 +9764,7 @@ DatePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
9435
9764
  [type]="calendarType"
9436
9765
  [min]="min"
9437
9766
  [max]="max"
9767
+ [weekDaysFormat]="weekDaysFormat"
9438
9768
  [navigation]="navigation"
9439
9769
  [animateNavigation]="animateCalendarNavigation"
9440
9770
  [activeView]="activeView"
@@ -9449,6 +9779,9 @@ DatePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
9449
9779
  [centuryCellTemplate]="centuryCellTemplate"
9450
9780
  [weekNumberTemplate]="weekNumberTemplate"
9451
9781
  [headerTitleTemplate]="headerTitleTemplate"
9782
+ [headerTemplate]="headerTemplate"
9783
+ [footerTemplate]="footerTemplate"
9784
+ [footer]="footer"
9452
9785
  [navigationItemTemplate]="navigationItemTemplate"
9453
9786
  [focusedDate]="focusedDate"
9454
9787
  [value]="value"
@@ -9468,7 +9801,7 @@ DatePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
9468
9801
  </kendo-calendar-messages>
9469
9802
  </kendo-calendar>
9470
9803
  </ng-template>
9471
- `, isInline: true, components: [{ type: DateInputComponent, selector: "kendo-dateinput", inputs: ["focusableId", "pickerType", "disabled", "readonly", "title", "tabindex", "role", "ariaReadOnly", "tabIndex", "format", "formatPlaceholder", "placeholder", "steps", "max", "min", "rangeValidation", "autoCorrectParts", "autoSwitchParts", "autoSwitchKeys", "allowCaretMode", "autoFill", "incompleteDateValidation", "twoDigitYearMax", "enableMouseWheel", "value", "spinners", "isPopupOpen", "hasPopup", "size", "rounded", "fillMode"], outputs: ["valueChange", "valueUpdate", "focus", "blur"], exportAs: ["kendo-dateinput"] }, { type: i7$1.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { type: i8.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { type: i9.ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["title", "subtitle", "items", "cssClass", "animation", "expanded", "titleId"], outputs: ["expandedChange", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { type: i10.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { type: CalendarComponent, selector: "kendo-calendar", inputs: ["showOtherMonthDays", "id", "focusedDate", "min", "max", "rangeValidation", "selection", "value", "disabled", "tabindex", "tabIndex", "disabledDates", "navigation", "activeView", "bottomView", "topView", "type", "animateNavigation", "weekNumber", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "navigationItemTemplate", "size"], outputs: ["activeViewChange", "navigate", "activeViewDateChange", "blur", "focus", "valueChange"], exportAs: ["kendo-calendar"] }, { type: CalendarCustomMessagesComponent, selector: "kendo-calendar-messages" }], directives: [{ type: DatePickerLocalizedMessagesDirective, selector: "[kendoDatePickerLocalizedMessages]" }, { type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.ActionSheetTemplateDirective, selector: "[kendoActionSheetTemplate]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
9804
+ `, isInline: true, components: [{ type: DateInputComponent, selector: "kendo-dateinput", inputs: ["focusableId", "pickerType", "disabled", "readonly", "title", "tabindex", "role", "ariaReadOnly", "tabIndex", "format", "formatPlaceholder", "placeholder", "steps", "max", "min", "rangeValidation", "autoCorrectParts", "autoSwitchParts", "autoSwitchKeys", "allowCaretMode", "autoFill", "incompleteDateValidation", "twoDigitYearMax", "enableMouseWheel", "value", "spinners", "isPopupOpen", "hasPopup", "size", "rounded", "fillMode"], outputs: ["valueChange", "valueUpdate", "focus", "blur"], exportAs: ["kendo-dateinput"] }, { type: i7.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { type: i8.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { type: i9.ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["title", "subtitle", "items", "cssClass", "animation", "expanded", "titleId"], outputs: ["expandedChange", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { type: i10.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { type: CalendarComponent, selector: "kendo-calendar", inputs: ["showOtherMonthDays", "id", "focusedDate", "min", "max", "rangeValidation", "weekDaysFormat", "footer", "selection", "value", "disabled", "tabindex", "tabIndex", "disabledDates", "navigation", "activeView", "bottomView", "topView", "type", "animateNavigation", "weekNumber", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "headerTemplate", "footerTemplate", "navigationItemTemplate", "size"], outputs: ["activeViewChange", "navigate", "activeViewDateChange", "blur", "focus", "valueChange"], exportAs: ["kendo-calendar"] }, { type: CalendarCustomMessagesComponent, selector: "kendo-calendar-messages" }], directives: [{ type: DatePickerLocalizedMessagesDirective, selector: "[kendoDatePickerLocalizedMessages]" }, { type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.ActionSheetTemplateDirective, selector: "[kendoActionSheetTemplate]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
9472
9805
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DatePickerComponent, decorators: [{
9473
9806
  type: Component,
9474
9807
  args: [{
@@ -9612,6 +9945,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
9612
9945
  [type]="calendarType"
9613
9946
  [min]="min"
9614
9947
  [max]="max"
9948
+ [weekDaysFormat]="weekDaysFormat"
9615
9949
  [navigation]="navigation"
9616
9950
  [animateNavigation]="animateCalendarNavigation"
9617
9951
  [activeView]="activeView"
@@ -9626,6 +9960,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
9626
9960
  [centuryCellTemplate]="centuryCellTemplate"
9627
9961
  [weekNumberTemplate]="weekNumberTemplate"
9628
9962
  [headerTitleTemplate]="headerTitleTemplate"
9963
+ [headerTemplate]="headerTemplate"
9964
+ [footerTemplate]="footerTemplate"
9965
+ [footer]="footer"
9629
9966
  [navigationItemTemplate]="navigationItemTemplate"
9630
9967
  [focusedDate]="focusedDate"
9631
9968
  [value]="value"
@@ -9708,12 +10045,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
9708
10045
  }], headerTitleTemplateRef: [{
9709
10046
  type: Input,
9710
10047
  args: ['headerTitleTemplate']
10048
+ }], headerTemplate: [{
10049
+ type: ContentChild,
10050
+ args: [HeaderTemplateDirective]
10051
+ }], headerTemplateRef: [{
10052
+ type: Input,
10053
+ args: ['headerTemplate']
10054
+ }], footerTemplate: [{
10055
+ type: ContentChild,
10056
+ args: [FooterTemplateDirective]
10057
+ }], footerTemplateRef: [{
10058
+ type: Input,
10059
+ args: ['footerTemplate']
10060
+ }], footer: [{
10061
+ type: Input
9711
10062
  }], navigationItemTemplate: [{
9712
10063
  type: ContentChild,
9713
10064
  args: [NavigationItemTemplateDirective, { static: false }]
9714
10065
  }], navigationItemTemplateRef: [{
9715
10066
  type: Input,
9716
10067
  args: ['navigationItemTemplate']
10068
+ }], weekDaysFormat: [{
10069
+ type: Input
9717
10070
  }], showOtherMonthDays: [{
9718
10071
  type: Input
9719
10072
  }], activeView: [{
@@ -10745,7 +11098,7 @@ TimeListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
10745
11098
  </li>
10746
11099
  </ul>
10747
11100
  </kendo-virtualization>
10748
- `, isInline: true, components: [{ type: VirtualizationComponent, selector: "kendo-virtualization", inputs: ["direction", "itemHeight", "itemWidth", "topOffset", "bottomOffset", "maxScrollDifference", "scrollOffsetSize", "scrollDuration", "skip", "take", "total"], outputs: ["activeIndexChange", "pageChange", "scrollChange"] }], directives: [{ type: i7.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
11101
+ `, isInline: true, components: [{ type: VirtualizationComponent, selector: "kendo-virtualization", inputs: ["direction", "itemHeight", "itemWidth", "topOffset", "bottomOffset", "maxScrollDifference", "scrollOffsetSize", "scrollDuration", "skip", "take", "total"], outputs: ["activeIndexChange", "pageChange", "scrollChange"] }], directives: [{ type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
10749
11102
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TimeListComponent, decorators: [{
10750
11103
  type: Component,
10751
11104
  args: [{
@@ -11438,7 +11791,7 @@ TimeSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
11438
11791
  [disabled]="disabled"
11439
11792
  >{{localization.get('cancel')}}</button>
11440
11793
  </div>
11441
- `, isInline: true, components: [{ type: TimeListComponent, selector: "kendo-timelist", inputs: ["min", "max", "part", "step", "disabled", "value", "isLast"], outputs: ["valueChange", "tabOutLastPart"] }], directives: [{ type: TimeSelectorLocalizedMessagesDirective, selector: "[kendoTimeSelectorLocalizedMessages]" }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
11794
+ `, isInline: true, components: [{ type: TimeListComponent, selector: "kendo-timelist", inputs: ["min", "max", "part", "step", "disabled", "value", "isLast"], outputs: ["valueChange", "tabOutLastPart"] }], directives: [{ type: TimeSelectorLocalizedMessagesDirective, selector: "[kendoTimeSelectorLocalizedMessages]" }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
11442
11795
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TimeSelectorComponent, decorators: [{
11443
11796
  type: Component,
11444
11797
  args: [{
@@ -12794,7 +13147,7 @@ TimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
12794
13147
  </kendo-timeselector-messages>
12795
13148
  </kendo-timeselector>
12796
13149
  </ng-template>
12797
- `, isInline: true, components: [{ type: DateInputComponent, selector: "kendo-dateinput", inputs: ["focusableId", "pickerType", "disabled", "readonly", "title", "tabindex", "role", "ariaReadOnly", "tabIndex", "format", "formatPlaceholder", "placeholder", "steps", "max", "min", "rangeValidation", "autoCorrectParts", "autoSwitchParts", "autoSwitchKeys", "allowCaretMode", "autoFill", "incompleteDateValidation", "twoDigitYearMax", "enableMouseWheel", "value", "spinners", "isPopupOpen", "hasPopup", "size", "rounded", "fillMode"], outputs: ["valueChange", "valueUpdate", "focus", "blur"], exportAs: ["kendo-dateinput"] }, { type: i7$1.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { type: i8.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { type: i9.ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["title", "subtitle", "items", "cssClass", "animation", "expanded", "titleId"], outputs: ["expandedChange", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { type: i10.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { type: TimeSelectorComponent, selector: "kendo-timeselector", inputs: ["format", "min", "max", "cancelButton", "setButton", "nowButton", "disabled", "isAdaptiveEnabled", "isDateTimePicker", "steps", "value"], outputs: ["valueChange", "valueReject", "tabOutLastPart"], exportAs: ["kendo-timeselector"] }, { type: TimeSelectorCustomMessagesComponent, selector: "kendo-timeselector-messages" }], directives: [{ type: TimePickerLocalizedMessagesDirective, selector: "[kendoTimePickerLocalizedMessages]" }, { type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.ActionSheetTemplateDirective, selector: "[kendoActionSheetTemplate]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
13150
+ `, isInline: true, components: [{ type: DateInputComponent, selector: "kendo-dateinput", inputs: ["focusableId", "pickerType", "disabled", "readonly", "title", "tabindex", "role", "ariaReadOnly", "tabIndex", "format", "formatPlaceholder", "placeholder", "steps", "max", "min", "rangeValidation", "autoCorrectParts", "autoSwitchParts", "autoSwitchKeys", "allowCaretMode", "autoFill", "incompleteDateValidation", "twoDigitYearMax", "enableMouseWheel", "value", "spinners", "isPopupOpen", "hasPopup", "size", "rounded", "fillMode"], outputs: ["valueChange", "valueUpdate", "focus", "blur"], exportAs: ["kendo-dateinput"] }, { type: i7.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { type: i8.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { type: i9.ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["title", "subtitle", "items", "cssClass", "animation", "expanded", "titleId"], outputs: ["expandedChange", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { type: i10.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { type: TimeSelectorComponent, selector: "kendo-timeselector", inputs: ["format", "min", "max", "cancelButton", "setButton", "nowButton", "disabled", "isAdaptiveEnabled", "isDateTimePicker", "steps", "value"], outputs: ["valueChange", "valueReject", "tabOutLastPart"], exportAs: ["kendo-timeselector"] }, { type: TimeSelectorCustomMessagesComponent, selector: "kendo-timeselector-messages" }], directives: [{ type: TimePickerLocalizedMessagesDirective, selector: "[kendoTimePickerLocalizedMessages]" }, { type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.ActionSheetTemplateDirective, selector: "[kendoActionSheetTemplate]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
12798
13151
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TimePickerComponent, decorators: [{
12799
13152
  type: Component,
12800
13153
  args: [{
@@ -13229,6 +13582,11 @@ class DateTimePickerComponent {
13229
13582
  * @hidden
13230
13583
  */
13231
13584
  this.hostClasses = true;
13585
+ /**
13586
+ * Sets the format of the displayed Calendar week days' names.
13587
+ * @default 'short'
13588
+ */
13589
+ this.weekDaysFormat = "short";
13232
13590
  /**
13233
13591
  * The maximum year to assume to be from the current century when typing two-digit year value
13234
13592
  * ([see example]({% slug formats_datetimepicker %}#toc-two-digit-year-format)).
@@ -13423,6 +13781,11 @@ class DateTimePickerComponent {
13423
13781
  * @hidden
13424
13782
  */
13425
13783
  this.xIcon = xIcon;
13784
+ /**
13785
+ * Toggles the visibility of the Calendar footer.
13786
+ * @default false
13787
+ */
13788
+ this.footer = false;
13426
13789
  this._popupSettings = { animate: true };
13427
13790
  this._value = null;
13428
13791
  this._format = DEFAULT_DATEINPUT_FORMAT;
@@ -13738,6 +14101,18 @@ class DateTimePickerComponent {
13738
14101
  }
13739
14102
  this.windowSize = windowSize();
13740
14103
  }
14104
+ /**
14105
+ * @hidden
14106
+ */
14107
+ set headerTemplateRef(template) {
14108
+ this.headerTemplate = template;
14109
+ }
14110
+ /**
14111
+ * @hidden
14112
+ */
14113
+ set footerTemplateRef(template) {
14114
+ this.footerTemplate = template;
14115
+ }
13741
14116
  get activeTabComponent() {
13742
14117
  if (!this.isOpen) {
13743
14118
  return;
@@ -14408,7 +14783,7 @@ class DateTimePickerComponent {
14408
14783
  }
14409
14784
  }
14410
14785
  DateTimePickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateTimePickerComponent, deps: [{ token: i1$2.PopupService }, { token: i1.IntlService }, { token: i0.ChangeDetectorRef }, { token: PickerService }, { token: i0.NgZone }, { token: i0.ElementRef }, { token: TOUCH_ENABLED }, { token: i1$1.LocalizationService }, { token: DisabledDatesService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
14411
- DateTimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DateTimePickerComponent, selector: "kendo-datetimepicker", inputs: { focusableId: "focusableId", showOtherMonthDays: "showOtherMonthDays", value: "value", format: "format", twoDigitYearMax: "twoDigitYearMax", tabindex: "tabindex", disabledDates: "disabledDates", popupSettings: "popupSettings", title: "title", subtitle: "subtitle", disabled: "disabled", readonly: "readonly", readOnlyInput: "readOnlyInput", cancelButton: "cancelButton", formatPlaceholder: "formatPlaceholder", placeholder: "placeholder", steps: "steps", focusedDate: "focusedDate", calendarType: "calendarType", animateCalendarNavigation: "animateCalendarNavigation", weekNumber: "weekNumber", min: "min", max: "max", rangeValidation: "rangeValidation", disabledDatesValidation: "disabledDatesValidation", incompleteDateValidation: "incompleteDateValidation", autoCorrectParts: "autoCorrectParts", autoSwitchParts: "autoSwitchParts", autoSwitchKeys: "autoSwitchKeys", enableMouseWheel: "enableMouseWheel", allowCaretMode: "allowCaretMode", autoFill: "autoFill", adaptiveMode: "adaptiveMode", defaultTab: "defaultTab", size: "size", rounded: "rounded", fillMode: "fillMode" }, outputs: { valueChange: "valueChange", open: "open", close: "close", onFocus: "focus", onBlur: "blur" }, host: { properties: { "class.k-datetimepicker": "this.hostClasses", "class.k-input": "this.hostClasses", "class.k-disabled": "this.disabledClass", "class.k-readonly": "this.readonly" } }, providers: [
14786
+ DateTimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DateTimePickerComponent, selector: "kendo-datetimepicker", inputs: { focusableId: "focusableId", weekDaysFormat: "weekDaysFormat", showOtherMonthDays: "showOtherMonthDays", value: "value", format: "format", twoDigitYearMax: "twoDigitYearMax", tabindex: "tabindex", disabledDates: "disabledDates", popupSettings: "popupSettings", title: "title", subtitle: "subtitle", disabled: "disabled", readonly: "readonly", readOnlyInput: "readOnlyInput", cancelButton: "cancelButton", formatPlaceholder: "formatPlaceholder", placeholder: "placeholder", steps: "steps", focusedDate: "focusedDate", calendarType: "calendarType", animateCalendarNavigation: "animateCalendarNavigation", weekNumber: "weekNumber", min: "min", max: "max", rangeValidation: "rangeValidation", disabledDatesValidation: "disabledDatesValidation", incompleteDateValidation: "incompleteDateValidation", autoCorrectParts: "autoCorrectParts", autoSwitchParts: "autoSwitchParts", autoSwitchKeys: "autoSwitchKeys", enableMouseWheel: "enableMouseWheel", allowCaretMode: "allowCaretMode", autoFill: "autoFill", adaptiveMode: "adaptiveMode", defaultTab: "defaultTab", size: "size", rounded: "rounded", fillMode: "fillMode", headerTemplateRef: ["headerTemplate", "headerTemplateRef"], footerTemplateRef: ["footerTemplate", "footerTemplateRef"], footer: "footer" }, outputs: { valueChange: "valueChange", open: "open", close: "close", onFocus: "focus", onBlur: "blur" }, host: { properties: { "class.k-datetimepicker": "this.hostClasses", "class.k-input": "this.hostClasses", "class.k-disabled": "this.disabledClass", "class.k-readonly": "this.readonly" } }, providers: [
14412
14787
  PickerService,
14413
14788
  LocalizationService,
14414
14789
  DisabledDatesService,
@@ -14416,7 +14791,7 @@ DateTimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
14416
14791
  { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => DateTimePickerComponent), multi: true },
14417
14792
  { provide: NG_VALIDATORS, useExisting: forwardRef(() => DateTimePickerComponent), multi: true },
14418
14793
  { provide: KendoInput, useExisting: forwardRef(() => DateTimePickerComponent) }
14419
- ], queries: [{ propertyName: "cellTemplate", first: true, predicate: CellTemplateDirective, descendants: true }, { propertyName: "monthCellTemplate", first: true, predicate: MonthCellTemplateDirective, descendants: true }, { propertyName: "yearCellTemplate", first: true, predicate: YearCellTemplateDirective, descendants: true }, { propertyName: "decadeCellTemplate", first: true, predicate: DecadeCellTemplateDirective, descendants: true }, { propertyName: "centuryCellTemplate", first: true, predicate: CenturyCellTemplateDirective, descendants: true }, { propertyName: "weekNumberTemplate", first: true, predicate: WeekNumberCellTemplateDirective, descendants: true }, { propertyName: "headerTitleTemplate", first: true, predicate: HeaderTitleTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "toggleButton", first: true, predicate: ["toggleButton"], descendants: true, static: true }, { propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "actionSheet", first: true, predicate: ["actionSheet"], descendants: true }], exportAs: ["kendo-datetimepicker"], usesOnChanges: true, ngImport: i0, template: `
14794
+ ], queries: [{ propertyName: "cellTemplate", first: true, predicate: CellTemplateDirective, descendants: true }, { propertyName: "monthCellTemplate", first: true, predicate: MonthCellTemplateDirective, descendants: true }, { propertyName: "yearCellTemplate", first: true, predicate: YearCellTemplateDirective, descendants: true }, { propertyName: "decadeCellTemplate", first: true, predicate: DecadeCellTemplateDirective, descendants: true }, { propertyName: "centuryCellTemplate", first: true, predicate: CenturyCellTemplateDirective, descendants: true }, { propertyName: "weekNumberTemplate", first: true, predicate: WeekNumberCellTemplateDirective, descendants: true }, { propertyName: "headerTitleTemplate", first: true, predicate: HeaderTitleTemplateDirective, descendants: true }, { propertyName: "headerTemplate", first: true, predicate: HeaderTemplateDirective, descendants: true }, { propertyName: "footerTemplate", first: true, predicate: FooterTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "toggleButton", first: true, predicate: ["toggleButton"], descendants: true, static: true }, { propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "actionSheet", first: true, predicate: ["actionSheet"], descendants: true }], exportAs: ["kendo-datetimepicker"], usesOnChanges: true, ngImport: i0, template: `
14420
14795
  <ng-container
14421
14796
  kendoDateTimePickerLocalizedMessages
14422
14797
 
@@ -14680,6 +15055,7 @@ DateTimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
14680
15055
  [type]="calendarType"
14681
15056
  [min]="calendarMin"
14682
15057
  [max]="calendarMax"
15058
+ [weekDaysFormat]="weekDaysFormat"
14683
15059
  [weekNumber]="weekNumber"
14684
15060
  [navigation]="false"
14685
15061
  [animateNavigation]="animateCalendarNavigation"
@@ -14691,6 +15067,9 @@ DateTimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
14691
15067
  [centuryCellTemplate]="centuryCellTemplate"
14692
15068
  [weekNumberTemplate]="weekNumberTemplate"
14693
15069
  [headerTitleTemplate]="headerTitleTemplate"
15070
+ [headerTemplate]="headerTemplate"
15071
+ [footerTemplate]="footerTemplate"
15072
+ [footer]="footer"
14694
15073
  [disabled]="disableCalendar"
14695
15074
  [disabledDates]="disabledDates"
14696
15075
  (valueChange)="handleCalendarValueChange()"
@@ -14778,7 +15157,7 @@ DateTimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
14778
15157
  </div>
14779
15158
  </div>
14780
15159
  </ng-template>
14781
- `, isInline: true, components: [{ type: DateInputComponent, selector: "kendo-dateinput", inputs: ["focusableId", "pickerType", "disabled", "readonly", "title", "tabindex", "role", "ariaReadOnly", "tabIndex", "format", "formatPlaceholder", "placeholder", "steps", "max", "min", "rangeValidation", "autoCorrectParts", "autoSwitchParts", "autoSwitchKeys", "allowCaretMode", "autoFill", "incompleteDateValidation", "twoDigitYearMax", "enableMouseWheel", "value", "spinners", "isPopupOpen", "hasPopup", "size", "rounded", "fillMode"], outputs: ["valueChange", "valueUpdate", "focus", "blur"], exportAs: ["kendo-dateinput"] }, { type: i7$1.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { type: i8.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { type: i9.ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["title", "subtitle", "items", "cssClass", "animation", "expanded", "titleId"], outputs: ["expandedChange", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { type: i10.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { type: CalendarComponent, selector: "kendo-calendar", inputs: ["showOtherMonthDays", "id", "focusedDate", "min", "max", "rangeValidation", "selection", "value", "disabled", "tabindex", "tabIndex", "disabledDates", "navigation", "activeView", "bottomView", "topView", "type", "animateNavigation", "weekNumber", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "navigationItemTemplate", "size"], outputs: ["activeViewChange", "navigate", "activeViewDateChange", "blur", "focus", "valueChange"], exportAs: ["kendo-calendar"] }, { type: CalendarCustomMessagesComponent, selector: "kendo-calendar-messages" }, { type: TimeSelectorComponent, selector: "kendo-timeselector", inputs: ["format", "min", "max", "cancelButton", "setButton", "nowButton", "disabled", "isAdaptiveEnabled", "isDateTimePicker", "steps", "value"], outputs: ["valueChange", "valueReject", "tabOutLastPart"], exportAs: ["kendo-timeselector"] }, { type: TimeSelectorCustomMessagesComponent, selector: "kendo-timeselector-messages" }], directives: [{ type: LocalizedMessagesDirective, selector: "[kendoDateTimePickerLocalizedMessages]" }, { type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i9.ActionSheetTemplateDirective, selector: "[kendoActionSheetTemplate]" }, { type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
15160
+ `, isInline: true, components: [{ type: DateInputComponent, selector: "kendo-dateinput", inputs: ["focusableId", "pickerType", "disabled", "readonly", "title", "tabindex", "role", "ariaReadOnly", "tabIndex", "format", "formatPlaceholder", "placeholder", "steps", "max", "min", "rangeValidation", "autoCorrectParts", "autoSwitchParts", "autoSwitchKeys", "allowCaretMode", "autoFill", "incompleteDateValidation", "twoDigitYearMax", "enableMouseWheel", "value", "spinners", "isPopupOpen", "hasPopup", "size", "rounded", "fillMode"], outputs: ["valueChange", "valueUpdate", "focus", "blur"], exportAs: ["kendo-dateinput"] }, { type: i7.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { type: i8.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { type: i9.ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["title", "subtitle", "items", "cssClass", "animation", "expanded", "titleId"], outputs: ["expandedChange", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { type: i10.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { type: CalendarComponent, selector: "kendo-calendar", inputs: ["showOtherMonthDays", "id", "focusedDate", "min", "max", "rangeValidation", "weekDaysFormat", "footer", "selection", "value", "disabled", "tabindex", "tabIndex", "disabledDates", "navigation", "activeView", "bottomView", "topView", "type", "animateNavigation", "weekNumber", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "headerTemplate", "footerTemplate", "navigationItemTemplate", "size"], outputs: ["activeViewChange", "navigate", "activeViewDateChange", "blur", "focus", "valueChange"], exportAs: ["kendo-calendar"] }, { type: CalendarCustomMessagesComponent, selector: "kendo-calendar-messages" }, { type: TimeSelectorComponent, selector: "kendo-timeselector", inputs: ["format", "min", "max", "cancelButton", "setButton", "nowButton", "disabled", "isAdaptiveEnabled", "isDateTimePicker", "steps", "value"], outputs: ["valueChange", "valueReject", "tabOutLastPart"], exportAs: ["kendo-timeselector"] }, { type: TimeSelectorCustomMessagesComponent, selector: "kendo-timeselector-messages" }], directives: [{ type: LocalizedMessagesDirective, selector: "[kendoDateTimePickerLocalizedMessages]" }, { type: i8.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i9.ActionSheetTemplateDirective, selector: "[kendoActionSheetTemplate]" }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
14782
15161
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateTimePickerComponent, decorators: [{
14783
15162
  type: Component,
14784
15163
  args: [{
@@ -15058,6 +15437,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
15058
15437
  [type]="calendarType"
15059
15438
  [min]="calendarMin"
15060
15439
  [max]="calendarMax"
15440
+ [weekDaysFormat]="weekDaysFormat"
15061
15441
  [weekNumber]="weekNumber"
15062
15442
  [navigation]="false"
15063
15443
  [animateNavigation]="animateCalendarNavigation"
@@ -15069,6 +15449,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
15069
15449
  [centuryCellTemplate]="centuryCellTemplate"
15070
15450
  [weekNumberTemplate]="weekNumberTemplate"
15071
15451
  [headerTitleTemplate]="headerTitleTemplate"
15452
+ [headerTemplate]="headerTemplate"
15453
+ [footerTemplate]="footerTemplate"
15454
+ [footer]="footer"
15072
15455
  [disabled]="disableCalendar"
15073
15456
  [disabledDates]="disabledDates"
15074
15457
  (valueChange)="handleCalendarValueChange()"
@@ -15175,6 +15558,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
15175
15558
  args: ['toggleButton', { static: true }]
15176
15559
  }], focusableId: [{
15177
15560
  type: Input
15561
+ }], weekDaysFormat: [{
15562
+ type: Input
15178
15563
  }], showOtherMonthDays: [{
15179
15564
  type: Input
15180
15565
  }], value: [{
@@ -15283,6 +15668,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
15283
15668
  }], headerTitleTemplate: [{
15284
15669
  type: ContentChild,
15285
15670
  args: [HeaderTitleTemplateDirective, { static: false }]
15671
+ }], headerTemplate: [{
15672
+ type: ContentChild,
15673
+ args: [HeaderTemplateDirective]
15674
+ }], headerTemplateRef: [{
15675
+ type: Input,
15676
+ args: ['headerTemplate']
15677
+ }], footerTemplate: [{
15678
+ type: ContentChild,
15679
+ args: [FooterTemplateDirective]
15680
+ }], footerTemplateRef: [{
15681
+ type: Input,
15682
+ args: ['footerTemplate']
15683
+ }], footer: [{
15684
+ type: Input
15286
15685
  }], container: [{
15287
15686
  type: ViewChild,
15288
15687
  args: ['container', { read: ViewContainerRef, static: true }]
@@ -16323,7 +16722,7 @@ DateRangePopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
16323
16722
  </div>
16324
16723
  </ng-template>
16325
16724
  </kendo-actionsheet>
16326
- `, isInline: true, components: [{ type: MultiViewCalendarComponent, selector: "kendo-multiviewcalendar", inputs: ["showOtherMonthDays", "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: i9.ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["title", "subtitle", "items", "cssClass", "animation", "expanded", "titleId"], outputs: ["expandedChange", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { type: i8.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { type: i10.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }], directives: [{ type: DateRangePopupLocalizedMessagesDirective, selector: "[kendoDateRangePopupLocalizedMessages]" }, { type: DateRangeSelectionDirective, selector: "[kendoDateRangeSelection]", inputs: ["autoCorrectOn", "selectionRange", "activeRangeEnd", "shouldSetRange"], outputs: ["activeRangeEndChange", "selectionRangeChange"] }, { type: i9.ActionSheetTemplateDirective, selector: "[kendoActionSheetTemplate]" }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
16725
+ `, isInline: true, components: [{ type: MultiViewCalendarComponent, selector: "kendo-multiviewcalendar", inputs: ["showOtherMonthDays", "showCalendarHeader", "id", "focusedDate", "footer", "min", "max", "rangeValidation", "disabledDatesRangeValidation", "selection", "value", "disabled", "tabindex", "tabIndex", "weekDaysFormat", "isActive", "disabledDates", "activeView", "bottomView", "topView", "showViewHeader", "animateNavigation", "weekNumber", "activeRangeEnd", "selectionRange", "views", "orientation", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "footerTemplate", "headerTitleTemplate", "headerTemplate"], outputs: ["activeViewChange", "navigate", "cellEnter", "cellLeave", "valueChange", "blur", "focus", "focusCalendar", "onClosePopup", "onTabPress", "onShiftTabPress"], exportAs: ["kendo-multiviewcalendar"] }, { type: i9.ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["title", "subtitle", "items", "cssClass", "animation", "expanded", "titleId"], outputs: ["expandedChange", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { type: i8.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { type: i10.ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }], directives: [{ type: DateRangePopupLocalizedMessagesDirective, selector: "[kendoDateRangePopupLocalizedMessages]" }, { type: DateRangeSelectionDirective, selector: "[kendoDateRangeSelection]", inputs: ["autoCorrectOn", "selectionRange", "activeRangeEnd", "shouldSetRange"], outputs: ["activeRangeEndChange", "selectionRangeChange"] }, { type: i9.ActionSheetTemplateDirective, selector: "[kendoActionSheetTemplate]" }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
16327
16726
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateRangePopupComponent, decorators: [{
16328
16727
  type: Component,
16329
16728
  args: [{
@@ -16544,7 +16943,7 @@ DateRangeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", versi
16544
16943
  DateRangeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DateRangeComponent, selector: "kendo-daterange", host: { listeners: { "keydown": "keydown($event)" }, properties: { "class.k-daterangepicker": "this.wrapperClass" } }, providers: [DateRangeService], queries: [{ propertyName: "contentPopup", predicate: DateRangePopupComponent }], ngImport: i0, template: `
16545
16944
  <ng-content></ng-content>
16546
16945
  <kendo-daterange-popup *ngIf="showDefault"></kendo-daterange-popup>
16547
- `, isInline: true, components: [{ type: DateRangePopupComponent, selector: "kendo-daterange-popup", inputs: ["animate", "anchor", "anchorAlign", "appendTo", "collision", "popupAlign", "margin", "adaptiveMode", "title", "subtitle"], outputs: ["open", "close", "blur", "focus", "cancel"], exportAs: ["kendo-daterange-popup"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
16946
+ `, isInline: true, components: [{ type: DateRangePopupComponent, selector: "kendo-daterange-popup", inputs: ["animate", "anchor", "anchorAlign", "appendTo", "collision", "popupAlign", "margin", "adaptiveMode", "title", "subtitle"], outputs: ["open", "close", "blur", "focus", "cancel"], exportAs: ["kendo-daterange-popup"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
16548
16947
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateRangeComponent, decorators: [{
16549
16948
  type: Component,
16550
16949
  args: [{
@@ -16850,14 +17249,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
16850
17249
  * The package exports:
16851
17250
  * - `HeaderComponent`&mdash;The component that renders the UI for vertical navigation.
16852
17251
  * - `ViewComponent`&mdash;The component that renders the active Calendar view.
17252
+ * - `FooterComponent`&mdash;The component that renders the Calendar footer.
16853
17253
  */
16854
17254
  class CalendarCommonModule {
16855
17255
  }
16856
17256
  CalendarCommonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CalendarCommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16857
17257
  CalendarCommonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CalendarCommonModule, declarations: [KForOf,
16858
17258
  HeaderComponent,
17259
+ FooterComponent,
16859
17260
  ViewComponent], imports: [CommonModule, EventsModule, ButtonModule], exports: [KForOf,
16860
17261
  HeaderComponent,
17262
+ FooterComponent,
16861
17263
  ViewComponent] });
16862
17264
  CalendarCommonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CalendarCommonModule, imports: [[CommonModule, EventsModule, ButtonModule]] });
16863
17265
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CalendarCommonModule, decorators: [{
@@ -16866,11 +17268,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
16866
17268
  declarations: [
16867
17269
  KForOf,
16868
17270
  HeaderComponent,
17271
+ FooterComponent,
16869
17272
  ViewComponent
16870
17273
  ],
16871
17274
  exports: [
16872
17275
  KForOf,
16873
17276
  HeaderComponent,
17277
+ FooterComponent,
16874
17278
  ViewComponent
16875
17279
  ],
16876
17280
  imports: [CommonModule, EventsModule, ButtonModule]
@@ -16902,14 +17306,18 @@ TemplatesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version
16902
17306
  CenturyCellTemplateDirective,
16903
17307
  WeekNumberCellTemplateDirective,
16904
17308
  HeaderTitleTemplateDirective,
16905
- NavigationItemTemplateDirective], exports: [CellTemplateDirective,
17309
+ NavigationItemTemplateDirective,
17310
+ HeaderTemplateDirective,
17311
+ FooterTemplateDirective], exports: [CellTemplateDirective,
16906
17312
  MonthCellTemplateDirective,
16907
17313
  YearCellTemplateDirective,
16908
17314
  DecadeCellTemplateDirective,
16909
17315
  CenturyCellTemplateDirective,
16910
17316
  WeekNumberCellTemplateDirective,
16911
17317
  HeaderTitleTemplateDirective,
16912
- NavigationItemTemplateDirective] });
17318
+ NavigationItemTemplateDirective,
17319
+ HeaderTemplateDirective,
17320
+ FooterTemplateDirective] });
16913
17321
  TemplatesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TemplatesModule });
16914
17322
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TemplatesModule, decorators: [{
16915
17323
  type: NgModule,
@@ -16922,7 +17330,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
16922
17330
  CenturyCellTemplateDirective,
16923
17331
  WeekNumberCellTemplateDirective,
16924
17332
  HeaderTitleTemplateDirective,
16925
- NavigationItemTemplateDirective
17333
+ NavigationItemTemplateDirective,
17334
+ HeaderTemplateDirective,
17335
+ FooterTemplateDirective
16926
17336
  ],
16927
17337
  exports: [
16928
17338
  CellTemplateDirective,
@@ -16932,7 +17342,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
16932
17342
  CenturyCellTemplateDirective,
16933
17343
  WeekNumberCellTemplateDirective,
16934
17344
  HeaderTitleTemplateDirective,
16935
- NavigationItemTemplateDirective
17345
+ NavigationItemTemplateDirective,
17346
+ HeaderTemplateDirective,
17347
+ FooterTemplateDirective
16936
17348
  ]
16937
17349
  }]
16938
17350
  }] });
@@ -17823,5 +18235,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
17823
18235
  * Generated bundle index. Do not edit.
17824
18236
  */
17825
18237
 
17826
- export { AdaptiveModule, CalendarCommonModule, CalendarComponent, CalendarCustomMessagesComponent, CalendarLocalizedMessagesDirective, CalendarModule, CalendarViewEnum, CalendarsModule, CellTemplateDirective, CenturyCellTemplateDirective, DateInputComponent, DateInputCustomMessagesComponent, DateInputLocalizedMessagesDirective, DateInputModule, DateInputsModule, DatePickerComponent, DatePickerCustomMessagesComponent, DatePickerLocalizedMessagesDirective, DatePickerModule, DateRangeComponent, DateRangeEndInputDirective, DateRangeModule, DateRangePopupComponent, DateRangePopupCustomMessagesComponent, DateRangePopupLocalizedMessagesDirective, DateRangePopupTemplateDirective, DateRangeSelectionDirective, DateRangeService, DateRangeStartInputDirective, DateTimePickerComponent, DateTimePickerCustomMessagesComponent, DateTimePickerModule, DecadeCellTemplateDirective, HeaderComponent, HeaderTitleTemplateDirective, HorizontalViewListComponent, KForOf, LocalizedMessagesDirective, MonthCellTemplateDirective, MultiViewCalendarComponent, MultiViewCalendarCustomMessagesComponent, MultiViewCalendarLocalizedMessagesDirective, MultiViewCalendarModule, NavigationComponent, NavigationItemTemplateDirective, PreventableEvent, TemplatesModule, TimeListComponent, TimePickerComponent, TimePickerCustomMessagesComponent, TimePickerLocalizedMessagesDirective, TimePickerModule, TimeSelectorComponent, TimeSelectorCustomMessagesComponent, TimeSelectorLocalizedMessagesDirective, ViewComponent, ViewListComponent, WeekNumberCellTemplateDirective, YearCellTemplateDirective };
18238
+ export { AdaptiveModule, CalendarCommonModule, CalendarComponent, CalendarCustomMessagesComponent, CalendarLocalizedMessagesDirective, CalendarModule, CalendarViewEnum, CalendarsModule, CellTemplateDirective, CenturyCellTemplateDirective, DateInputComponent, DateInputCustomMessagesComponent, DateInputLocalizedMessagesDirective, DateInputModule, DateInputsModule, DatePickerComponent, DatePickerCustomMessagesComponent, DatePickerLocalizedMessagesDirective, DatePickerModule, DateRangeComponent, DateRangeEndInputDirective, DateRangeModule, DateRangePopupComponent, DateRangePopupCustomMessagesComponent, DateRangePopupLocalizedMessagesDirective, DateRangePopupTemplateDirective, DateRangeSelectionDirective, DateRangeService, DateRangeStartInputDirective, DateTimePickerComponent, DateTimePickerCustomMessagesComponent, DateTimePickerModule, DecadeCellTemplateDirective, FooterComponent, FooterTemplateDirective, HeaderComponent, HeaderTemplateDirective, HeaderTitleTemplateDirective, HorizontalViewListComponent, KForOf, LocalizedMessagesDirective, MonthCellTemplateDirective, MultiViewCalendarComponent, MultiViewCalendarCustomMessagesComponent, MultiViewCalendarLocalizedMessagesDirective, MultiViewCalendarModule, NavigationComponent, NavigationItemTemplateDirective, PreventableEvent, TemplatesModule, TimeListComponent, TimePickerComponent, TimePickerCustomMessagesComponent, TimePickerLocalizedMessagesDirective, TimePickerModule, TimeSelectorComponent, TimeSelectorCustomMessagesComponent, TimeSelectorLocalizedMessagesDirective, ViewComponent, ViewListComponent, WeekNumberCellTemplateDirective, YearCellTemplateDirective };
17827
18239