@progress/kendo-angular-dateinputs 5.2.4-dev.202110060847 → 5.3.0

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 (50) hide show
  1. package/dist/cdn/js/kendo-angular-dateinputs.js +1 -1
  2. package/dist/cdn/main.js +1 -1
  3. package/dist/es/calendar/calendar.component.js +33 -2
  4. package/dist/es/calendar/header.component.js +3 -4
  5. package/dist/es/calendar/horizontal-view-list.component.js +3 -1
  6. package/dist/es/calendar/multiview-calendar.component.js +40 -3
  7. package/dist/es/calendar/services/century-view.service.js +7 -1
  8. package/dist/es/calendar/services/decade-view.service.js +6 -1
  9. package/dist/es/calendar/services/month-view.service.js +3 -0
  10. package/dist/es/calendar/services/year-view.service.js +5 -1
  11. package/dist/es/daterange/date-range-input.js +3 -3
  12. package/dist/es/daterange/date-range-popup.component.js +2 -2
  13. package/dist/es/daterange/date-range-selection.directive.js +1 -1
  14. package/dist/es/package-metadata.js +1 -1
  15. package/dist/es2015/calendar/calendar.component.d.ts +17 -0
  16. package/dist/es2015/calendar/calendar.component.js +34 -2
  17. package/dist/es2015/calendar/header.component.js +3 -4
  18. package/dist/es2015/calendar/horizontal-view-list.component.js +3 -1
  19. package/dist/es2015/calendar/models/view-service.interface.d.ts +1 -0
  20. package/dist/es2015/calendar/multiview-calendar.component.d.ts +20 -1
  21. package/dist/es2015/calendar/multiview-calendar.component.js +42 -5
  22. package/dist/es2015/calendar/services/century-view.service.d.ts +1 -0
  23. package/dist/es2015/calendar/services/century-view.service.js +7 -1
  24. package/dist/es2015/calendar/services/decade-view.service.d.ts +1 -0
  25. package/dist/es2015/calendar/services/decade-view.service.js +6 -1
  26. package/dist/es2015/calendar/services/month-view.service.d.ts +1 -0
  27. package/dist/es2015/calendar/services/month-view.service.js +3 -0
  28. package/dist/es2015/calendar/services/year-view.service.d.ts +1 -0
  29. package/dist/es2015/calendar/services/year-view.service.js +5 -1
  30. package/dist/es2015/daterange/date-range-input.js +3 -3
  31. package/dist/es2015/daterange/date-range-popup.component.js +2 -2
  32. package/dist/es2015/daterange/date-range-selection.directive.js +1 -1
  33. package/dist/es2015/index.metadata.json +1 -1
  34. package/dist/es2015/package-metadata.js +1 -1
  35. package/dist/fesm2015/index.js +108 -20
  36. package/dist/fesm5/index.js +105 -18
  37. package/dist/npm/calendar/calendar.component.js +33 -2
  38. package/dist/npm/calendar/header.component.js +3 -4
  39. package/dist/npm/calendar/horizontal-view-list.component.js +3 -1
  40. package/dist/npm/calendar/multiview-calendar.component.js +40 -3
  41. package/dist/npm/calendar/services/century-view.service.js +6 -0
  42. package/dist/npm/calendar/services/decade-view.service.js +5 -0
  43. package/dist/npm/calendar/services/month-view.service.js +3 -0
  44. package/dist/npm/calendar/services/year-view.service.js +4 -0
  45. package/dist/npm/daterange/date-range-input.js +3 -3
  46. package/dist/npm/daterange/date-range-popup.component.js +2 -2
  47. package/dist/npm/daterange/date-range-selection.directive.js +1 -1
  48. package/dist/npm/package-metadata.js +1 -1
  49. package/dist/systemjs/kendo-angular-dateinputs.js +1 -1
  50. package/package.json +5 -5
@@ -171,6 +171,11 @@ var CalendarComponent = /** @class */ (function () {
171
171
  * ([more information and example]({% slug overview_calendar %}#toc-events)).
172
172
  */
173
173
  this.activeViewChange = new core_1.EventEmitter();
174
+ /**
175
+ * Fires when navigating in the currently active view
176
+ * ([more information and example]({% slug events_calendar %})).
177
+ */
178
+ this.navigate = new core_1.EventEmitter();
174
179
  /**
175
180
  * Fires when the active view date is changed
176
181
  * ([more information and example]({% slug overview_calendar %}#toc-events)).
@@ -216,6 +221,14 @@ var CalendarComponent = /** @class */ (function () {
216
221
  * > If the Calendar is out of the min or max range, it normalizes the defined `focusedDate`.
217
222
  */
218
223
  set: function (focusedDate) {
224
+ if (this.activeViewDate && !kendo_date_math_1.isEqual(this._focusedDate, focusedDate)) {
225
+ var service = this.bus.service(this.activeViewEnum);
226
+ var lastDayInPeriod = service.lastDayOfPeriod(this.activeViewDate);
227
+ var isFocusedDateInRange = service.isInRange(focusedDate, this.activeViewDate, lastDayInPeriod);
228
+ if (!isFocusedDateInRange) {
229
+ this.emitNavigate(focusedDate);
230
+ }
231
+ }
219
232
  this._focusedDate = focusedDate || util_1.getToday();
220
233
  this.setAriaActivedescendant();
221
234
  },
@@ -447,7 +460,7 @@ var CalendarComponent = /** @class */ (function () {
447
460
  });
448
461
  Object.defineProperty(CalendarComponent.prototype, "calendarTabIndex", {
449
462
  get: function () {
450
- return this.disabled ? undefined : this.tabIndex;
463
+ return this.disabled || this.type === 'classic' ? undefined : this.tabIndex;
451
464
  },
452
465
  enumerable: true,
453
466
  configurable: true
@@ -681,6 +694,13 @@ var CalendarComponent = /** @class */ (function () {
681
694
  return null;
682
695
  }
683
696
  };
697
+ /**
698
+ * @hidden
699
+ */
700
+ CalendarComponent.prototype.emitNavigate = function (focusedDate) {
701
+ var activeView = view_enum_1.CalendarViewEnum[this.activeViewEnum];
702
+ this.navigate.emit({ activeView: activeView, focusedDate: focusedDate });
703
+ };
684
704
  /**
685
705
  * @hidden
686
706
  */
@@ -691,6 +711,13 @@ var CalendarComponent = /** @class */ (function () {
691
711
  });
692
712
  }
693
713
  };
714
+ /**
715
+ * @hidden
716
+ */
717
+ CalendarComponent.prototype.handleActiveDateChange = function (date) {
718
+ this.activeViewDate = date;
719
+ this.emitEvent(this.activeViewDateChange, date);
720
+ };
694
721
  /**
695
722
  * @hidden
696
723
  */
@@ -934,6 +961,10 @@ var CalendarComponent = /** @class */ (function () {
934
961
  core_1.Output(),
935
962
  tslib_1.__metadata("design:type", core_1.EventEmitter)
936
963
  ], CalendarComponent.prototype, "activeViewChange", void 0);
964
+ tslib_1.__decorate([
965
+ core_1.Output(),
966
+ tslib_1.__metadata("design:type", core_1.EventEmitter)
967
+ ], CalendarComponent.prototype, "navigate", void 0);
937
968
  tslib_1.__decorate([
938
969
  core_1.Output(),
939
970
  tslib_1.__metadata("design:type", core_1.EventEmitter)
@@ -1063,7 +1094,7 @@ var CalendarComponent = /** @class */ (function () {
1063
1094
  selection_service_1.SelectionService
1064
1095
  ],
1065
1096
  selector: 'kendo-calendar',
1066
- template: "\n <ng-container kendoCalendarLocalizedMessages\n i18n-today=\"kendo.calendar.today|The label for the today button in the calendar header\"\n today=\"Today\"\n\n i18n-prevButtonTitle=\"kendo.calendar.prevButtonTitle|The title of the previous button in the Classic calendar\"\n prevButtonTitle=\"Navigate to previous view\"\n\n i18n-nextButtonTitle=\"kendo.calendar.nextButtonTitle|The title of the next button in the Classic calendar\"\n nextButtonTitle=\"Navigate to next view\"\n >\n </ng-container>\n <ng-container *ngIf=\"type === 'infinite'\">\n <kendo-calendar-navigation\n *ngIf=\"navigation\"\n [activeView]=\"activeViewEnum\"\n [focusedDate]=\"focusedDate\"\n [min]=\"min\"\n [max]=\"max\"\n [templateRef]=\"navigationItemTemplate?.templateRef\"\n (valueChange)=\"handleNavigation($event)\"\n (pageChange)=\"onPageChange()\"\n >\n </kendo-calendar-navigation>\n <kendo-calendar-viewlist\n [activeView]=\"activeViewEnum\"\n [isActive]=\"isActive\"\n [cellTemplateRef]=\"activeCellTemplate()?.templateRef\"\n [headerTitleTemplateRef]=\"headerTitleTemplate?.templateRef\"\n [weekNumberTemplateRef]=\"weekNumberTemplate?.templateRef\"\n [cellUID]=\"cellUID\"\n [min]=\"min\"\n [max]=\"max\"\n [focusedDate]=\"focusedDate\"\n [weekNumber]=\"weekNumber\"\n [selectedDates]=\"selectedDates\"\n (todayButtonClick)=\"handleDateChange({\n selectedDates: [$event],\n focusedDate: $event\n })\"\n (cellClick)=\"handleCellClick($event)\"\n (weekNumberCellClick)=\"handleWeekNumberClick($event)\"\n (activeDateChange)=\"emitEvent(activeViewDateChange, $event)\"\n (pageChange)=\"onPageChange()\"\n >\n </kendo-calendar-viewlist>\n <kendo-resize-sensor (resize)=\"onResize()\"></kendo-resize-sensor>\n </ng-container>\n <ng-container *ngIf=\"type === 'classic'\">\n <kendo-multiviewcalendar\n #multiviewcalendar\n [views]=\"1\"\n [min]=\"min\"\n [max]=\"max\"\n [isActive]=\"isActive\"\n [activeView]=\"activeView\"\n [bottomView]=\"bottomView\"\n [topView]=\"topView\"\n [weekNumber]=\"weekNumber\"\n [animateNavigation]=\"animateNavigation\"\n [cellTemplate]=\"activeCellTemplate()\"\n [monthCellTemplate]=\"monthCellTemplate\"\n [yearCellTemplate]=\"yearCellTemplate\"\n [decadeCellTemplate]=\"decadeCellTemplate\"\n [centuryCellTemplate]=\"centuryCellTemplate\"\n [headerTitleTemplate]=\"headerTitleTemplate\"\n [weekNumberTemplate]=\"weekNumberTemplate\"\n [focusedDate]=\"focusedDate\"\n [selection]=\"selection\"\n [value]=\"value\"\n [disabledDates]=\"disabledDates\"\n (activeViewChange)=\"handleActiveViewChange($event)\"\n (valueChange)=\"handleMultiViewCalendarValueChange($event, multiviewcalendar.focusedDate)\"\n >\n <kendo-multiviewcalendar-messages\n [today]=\"localization.get('today')\"\n [prevButtonTitle]=\"localization.get('prevButtonTitle')\"\n [nextButtonTitle]=\"localization.get('nextButtonTitle')\"\n >\n </kendo-multiviewcalendar-messages>\n </kendo-multiviewcalendar>\n </ng-container>\n "
1097
+ template: "\n <ng-container kendoCalendarLocalizedMessages\n i18n-today=\"kendo.calendar.today|The label for the today button in the calendar header\"\n today=\"Today\"\n\n i18n-prevButtonTitle=\"kendo.calendar.prevButtonTitle|The title of the previous button in the Classic calendar\"\n prevButtonTitle=\"Navigate to previous view\"\n\n i18n-nextButtonTitle=\"kendo.calendar.nextButtonTitle|The title of the next button in the Classic calendar\"\n nextButtonTitle=\"Navigate to next view\"\n >\n </ng-container>\n <ng-container *ngIf=\"type === 'infinite'\">\n <kendo-calendar-navigation\n *ngIf=\"navigation\"\n [activeView]=\"activeViewEnum\"\n [focusedDate]=\"focusedDate\"\n [min]=\"min\"\n [max]=\"max\"\n [templateRef]=\"navigationItemTemplate?.templateRef\"\n (valueChange)=\"handleNavigation($event)\"\n (pageChange)=\"onPageChange()\"\n >\n </kendo-calendar-navigation>\n <kendo-calendar-viewlist\n [activeView]=\"activeViewEnum\"\n [isActive]=\"isActive\"\n [cellTemplateRef]=\"activeCellTemplate()?.templateRef\"\n [headerTitleTemplateRef]=\"headerTitleTemplate?.templateRef\"\n [weekNumberTemplateRef]=\"weekNumberTemplate?.templateRef\"\n [cellUID]=\"cellUID\"\n [min]=\"min\"\n [max]=\"max\"\n [focusedDate]=\"focusedDate\"\n [weekNumber]=\"weekNumber\"\n [selectedDates]=\"selectedDates\"\n (todayButtonClick)=\"handleDateChange({\n selectedDates: [$event],\n focusedDate: $event\n })\"\n (cellClick)=\"handleCellClick($event)\"\n (weekNumberCellClick)=\"handleWeekNumberClick($event)\"\n (activeDateChange)=\"handleActiveDateChange($event)\"\n (pageChange)=\"onPageChange()\"\n >\n </kendo-calendar-viewlist>\n <kendo-resize-sensor (resize)=\"onResize()\"></kendo-resize-sensor>\n </ng-container>\n <ng-container *ngIf=\"type === 'classic'\">\n <kendo-multiviewcalendar\n #multiviewcalendar\n [views]=\"1\"\n [min]=\"min\"\n [max]=\"max\"\n [isActive]=\"isActive\"\n [activeView]=\"activeView\"\n [bottomView]=\"bottomView\"\n [topView]=\"topView\"\n [weekNumber]=\"weekNumber\"\n [animateNavigation]=\"animateNavigation\"\n [cellTemplate]=\"activeCellTemplate()\"\n [monthCellTemplate]=\"monthCellTemplate\"\n [yearCellTemplate]=\"yearCellTemplate\"\n [decadeCellTemplate]=\"decadeCellTemplate\"\n [centuryCellTemplate]=\"centuryCellTemplate\"\n [headerTitleTemplate]=\"headerTitleTemplate\"\n [weekNumberTemplate]=\"weekNumberTemplate\"\n [focusedDate]=\"focusedDate\"\n [selection]=\"selection\"\n [value]=\"value\"\n [disabledDates]=\"disabledDates\"\n (activeViewChange)=\"handleActiveViewChange($event)\"\n (navigate)=\"navigate.emit($event)\"\n (valueChange)=\"handleMultiViewCalendarValueChange($event, multiviewcalendar.focusedDate)\"\n >\n <kendo-multiviewcalendar-messages\n [today]=\"localization.get('today')\"\n [prevButtonTitle]=\"localization.get('prevButtonTitle')\"\n [nextButtonTitle]=\"localization.get('nextButtonTitle')\"\n >\n </kendo-multiviewcalendar-messages>\n </kendo-multiviewcalendar>\n </ng-container>\n "
1067
1098
  }),
1068
1099
  tslib_1.__param(12, core_1.Optional()),
1069
1100
  tslib_1.__metadata("design:paramtypes", [bus_view_service_1.BusViewService,
@@ -40,10 +40,9 @@ var HeaderComponent = /** @class */ (function () {
40
40
  this.subscriptions = new rxjs_1.Subscription();
41
41
  }
42
42
  HeaderComponent.prototype.ngOnInit = function () {
43
- this.subscriptions
44
- .add(this.intl.changes.subscribe(this.intlChange.bind(this)))
45
- .add(this.localization.changes.subscribe(this.l10nChange.bind(this)))
46
- .add(this.disabledDatesService.changes.subscribe(this.setTodayAvailability.bind(this)));
43
+ this.subscriptions.add(this.intl.changes.subscribe(this.intlChange.bind(this)));
44
+ this.subscriptions.add(this.localization.changes.subscribe(this.l10nChange.bind(this)));
45
+ this.subscriptions.add(this.disabledDatesService.changes.subscribe(this.setTodayAvailability.bind(this)));
47
46
  };
48
47
  HeaderComponent.prototype.ngOnChanges = function (_) {
49
48
  var service = this.bus.service(this.activeView);
@@ -322,7 +322,9 @@ var HorizontalViewListComponent = /** @class */ (function () {
322
322
  ], HorizontalViewListComponent.prototype, "activeDateChange", void 0);
323
323
  tslib_1.__decorate([
324
324
  core_1.HostBinding("class.k-calendar-view"),
325
- core_1.HostBinding("class.k-justify-align-start"),
325
+ core_1.HostBinding("class.k-hstack"),
326
+ core_1.HostBinding("class.k-align-items-start"),
327
+ core_1.HostBinding("class.k-justify-content-center"),
326
328
  tslib_1.__metadata("design:type", Boolean)
327
329
  ], HorizontalViewListComponent.prototype, "getComponentClass", void 0);
328
330
  tslib_1.__decorate([
@@ -160,6 +160,11 @@ var MultiViewCalendarComponent = /** @class */ (function () {
160
160
  * ([more information and example]({% slug overview_multiviewcalendar %}#toc-events)).
161
161
  */
162
162
  this.activeViewChange = new core_1.EventEmitter();
163
+ /**
164
+ * Fires when navigating in the currently active view
165
+ * ([more information and example]({% slug events_multiviewcalendar %})).
166
+ */
167
+ this.navigate = new core_1.EventEmitter();
163
168
  /**
164
169
  * Fires when a view cell is entered
165
170
  * ([more information and example]({% slug overview_multiviewcalendar %}#toc-events)).
@@ -192,7 +197,7 @@ var MultiViewCalendarComponent = /** @class */ (function () {
192
197
  this.minValidateFn = util_1.noop;
193
198
  this.maxValidateFn = util_1.noop;
194
199
  this.disabledDatesRangeValidateFn = util_1.noop;
195
- this.subscriptions = new rxjs_1.Subscription(function () { });
200
+ this.subscriptions = new rxjs_1.Subscription();
196
201
  this.setClasses(element.nativeElement);
197
202
  }
198
203
  Object.defineProperty(MultiViewCalendarComponent.prototype, "focusedDate", {
@@ -492,6 +497,10 @@ var MultiViewCalendarComponent = /** @class */ (function () {
492
497
  }
493
498
  this.focusedDate = candidate;
494
499
  event.preventDefault();
500
+ var isSameView = this.bus.service(this.activeViewEnum).isInArray(this.focusedDate, this.viewList.dates);
501
+ if (!isSameView) {
502
+ this.emitNavigate(this.focusedDate);
503
+ }
495
504
  };
496
505
  MultiViewCalendarComponent.prototype.ngOnInit = function () {
497
506
  var _this = this;
@@ -580,6 +589,18 @@ var MultiViewCalendarComponent = /** @class */ (function () {
580
589
  this.onControlChange(this.parseSelectionToValue(availableDates));
581
590
  this.valueChange.emit(this.parseSelectionToValue(availableDates));
582
591
  };
592
+ /**
593
+ * @hidden
594
+ */
595
+ MultiViewCalendarComponent.prototype.handleTodayButtonClick = function (args) {
596
+ var todayDate = args.focusedDate;
597
+ var isSameView = this.bus.service(this.activeViewEnum).isInArray(todayDate, this.viewList.dates);
598
+ var isBottomView = !this.bus.canMoveDown(this.activeViewEnum);
599
+ if (!isSameView && isBottomView) {
600
+ this.emitNavigate(todayDate);
601
+ }
602
+ this.handleDateChange(args);
603
+ };
583
604
  /**
584
605
  * @hidden
585
606
  */
@@ -646,9 +667,17 @@ var MultiViewCalendarComponent = /** @class */ (function () {
646
667
  /**
647
668
  * @hidden
648
669
  */
649
- MultiViewCalendarComponent.prototype.navigate = function (action) {
670
+ MultiViewCalendarComponent.prototype.navigateView = function (action) {
650
671
  this.focusedDate = this.viewList.navigate(action);
651
672
  this.updateButtonState();
673
+ this.emitNavigate(this.focusedDate);
674
+ };
675
+ /**
676
+ * @hidden
677
+ */
678
+ MultiViewCalendarComponent.prototype.emitNavigate = function (focusedDate) {
679
+ var activeView = view_enum_1.CalendarViewEnum[this.activeViewEnum];
680
+ this.navigate.emit({ activeView: activeView, focusedDate: focusedDate });
652
681
  };
653
682
  /**
654
683
  * @hidden
@@ -666,6 +695,10 @@ var MultiViewCalendarComponent = /** @class */ (function () {
666
695
  MultiViewCalendarComponent.prototype.handleCellClick = function (_a) {
667
696
  var date = _a.date, modifiers = _a.modifiers;
668
697
  this.performSelection(date, modifiers);
698
+ var isSameView = this.bus.service(this.activeViewEnum).isInArray(this.focusedDate, this.viewList.dates);
699
+ if (!isSameView) {
700
+ this.emitNavigate(this.focusedDate);
701
+ }
669
702
  };
670
703
  /**
671
704
  * @hidden
@@ -838,6 +871,10 @@ var MultiViewCalendarComponent = /** @class */ (function () {
838
871
  core_1.Output(),
839
872
  tslib_1.__metadata("design:type", core_1.EventEmitter)
840
873
  ], MultiViewCalendarComponent.prototype, "activeViewChange", void 0);
874
+ tslib_1.__decorate([
875
+ core_1.Output(),
876
+ tslib_1.__metadata("design:type", core_1.EventEmitter)
877
+ ], MultiViewCalendarComponent.prototype, "navigate", void 0);
841
878
  tslib_1.__decorate([
842
879
  core_1.Output(),
843
880
  tslib_1.__metadata("design:type", core_1.EventEmitter)
@@ -1003,7 +1040,7 @@ var MultiViewCalendarComponent = /** @class */ (function () {
1003
1040
  selection_service_1.SelectionService
1004
1041
  ],
1005
1042
  selector: 'kendo-multiviewcalendar',
1006
- template: "\n <ng-container kendoMultiViewCalendarLocalizedMessages\n i18n-today=\"kendo.multiviewcalendar.today|The label for the today button in the calendar header\"\n today=\"Today\"\n\n i18n-prevButtonTitle=\"kendo.multiviewcalendar.prevButtonTitle|The label for the previous button in the Multiview calendar\"\n prevButtonTitle=\"Navigate to previous view\"\n\n i18n-nextButtonTitle=\"kendo.multiviewcalendar.nextButtonTitle|The label for the next button in the Multiview calendar\"\n nextButtonTitle=\"Navigate to next view\"\n >\n </ng-container>\n <kendo-calendar-header\n [activeView]=\"activeViewEnum\"\n [currentDate]=\"activeDate\"\n [min]=\"min\"\n [max]=\"max\"\n [rangeLength]=\"views\"\n [templateRef]=\"headerTitleTemplate?.templateRef\"\n [isPrevDisabled]=\"isPrevDisabled\"\n [isNextDisabled]=\"isNextDisabled\"\n [showNavigationButtons]=\"true\"\n (todayButtonClick)=\"handleDateChange({ selectedDates: [$event], focusedDate: $event })\"\n (prevButtonClick)=\"navigate(prevView)\"\n (nextButtonClick)=\"navigate(nextView)\"\n >\n </kendo-calendar-header>\n <kendo-calendar-horizontal\n [activeView]=\"activeViewEnum\"\n [isActive]=\"isActive || isHovered\"\n [cellTemplateRef]=\"activeCellTemplate()?.templateRef\"\n [weekNumberTemplateRef]=\"weekNumberTemplate?.templateRef\"\n [cellUID]=\"cellUID\"\n [views]=\"views\"\n [min]=\"min\"\n [max]=\"max\"\n [focusedDate]=\"focusedDate\"\n [animateNavigation]=\"animateNavigation\"\n [showViewHeader]=\"showViewHeader\"\n [weekNumber]=\"weekNumber\"\n [activeRangeEnd]=\"activeRangeEnd\"\n [selectionRange]=\"selectionRange\"\n [selectedDates]=\"selectedDates\"\n (valueChange)=\"handleDateChange($event)\"\n (cellClick)=\"handleCellClick($event)\"\n (weekNumberCellClick)=\"handleWeekNumberClick($event)\"\n (cellEnter)=\"emitCellEvent(cellEnter, $event)\"\n (cellLeave)=\"emitCellEvent(cellLeave, $event)\"\n (activeDateChange)=\"setActiveDate($event)\"\n >\n </kendo-calendar-horizontal>\n "
1043
+ template: "\n <ng-container kendoMultiViewCalendarLocalizedMessages\n i18n-today=\"kendo.multiviewcalendar.today|The label for the today button in the calendar header\"\n today=\"Today\"\n\n i18n-prevButtonTitle=\"kendo.multiviewcalendar.prevButtonTitle|The label for the previous button in the Multiview calendar\"\n prevButtonTitle=\"Navigate to previous view\"\n\n i18n-nextButtonTitle=\"kendo.multiviewcalendar.nextButtonTitle|The label for the next button in the Multiview calendar\"\n nextButtonTitle=\"Navigate to next view\"\n >\n </ng-container>\n <kendo-calendar-header\n [activeView]=\"activeViewEnum\"\n [currentDate]=\"activeDate\"\n [min]=\"min\"\n [max]=\"max\"\n [rangeLength]=\"views\"\n [templateRef]=\"headerTitleTemplate?.templateRef\"\n [isPrevDisabled]=\"isPrevDisabled\"\n [isNextDisabled]=\"isNextDisabled\"\n [showNavigationButtons]=\"true\"\n (todayButtonClick)=\"handleTodayButtonClick({ selectedDates: [$event], focusedDate: $event })\"\n (prevButtonClick)=\"navigateView(prevView)\"\n (nextButtonClick)=\"navigateView(nextView)\"\n >\n </kendo-calendar-header>\n <kendo-calendar-horizontal\n [activeView]=\"activeViewEnum\"\n [isActive]=\"isActive || isHovered\"\n [cellTemplateRef]=\"activeCellTemplate()?.templateRef\"\n [weekNumberTemplateRef]=\"weekNumberTemplate?.templateRef\"\n [cellUID]=\"cellUID\"\n [views]=\"views\"\n [min]=\"min\"\n [max]=\"max\"\n [focusedDate]=\"focusedDate\"\n [animateNavigation]=\"animateNavigation\"\n [showViewHeader]=\"showViewHeader\"\n [weekNumber]=\"weekNumber\"\n [activeRangeEnd]=\"activeRangeEnd\"\n [selectionRange]=\"selectionRange\"\n [selectedDates]=\"selectedDates\"\n (valueChange)=\"handleDateChange($event)\"\n (cellClick)=\"handleCellClick($event)\"\n (weekNumberCellClick)=\"handleWeekNumberClick($event)\"\n (cellEnter)=\"emitCellEvent(cellEnter, $event)\"\n (cellLeave)=\"emitCellEvent(cellLeave, $event)\"\n (activeDateChange)=\"setActiveDate($event)\"\n >\n </kendo-calendar-horizontal>\n "
1007
1044
  }),
1008
1045
  tslib_1.__metadata("design:paramtypes", [bus_view_service_1.BusViewService,
1009
1046
  core_1.ElementRef,
@@ -116,6 +116,12 @@ var CenturyViewService = /** @class */ (function () {
116
116
  var firstYear = kendo_date_math_1.firstYearOfDecade(kendo_date_math_1.firstDecadeOfCentury(date));
117
117
  return kendo_date_math_1.createDate(firstYear.getFullYear(), 0, 1);
118
118
  };
119
+ CenturyViewService.prototype.lastDayOfPeriod = function (date) {
120
+ var decade = kendo_date_math_1.lastDecadeOfCentury(date);
121
+ var year = kendo_date_math_1.lastYearOfDecade(decade);
122
+ var month = kendo_date_math_1.lastMonthOfYear(year);
123
+ return kendo_date_math_1.lastDayOfMonth(month);
124
+ };
119
125
  CenturyViewService.prototype.isRangeStart = function (value) {
120
126
  return value.getFullYear() % 1000 === 0;
121
127
  };
@@ -116,6 +116,11 @@ var DecadeViewService = /** @class */ (function () {
116
116
  var firstYear = kendo_date_math_1.firstYearOfDecade(date);
117
117
  return kendo_date_math_1.createDate(firstYear.getFullYear(), 0, 1);
118
118
  };
119
+ DecadeViewService.prototype.lastDayOfPeriod = function (date) {
120
+ var year = kendo_date_math_1.lastYearOfDecade(date);
121
+ var month = kendo_date_math_1.lastMonthOfYear(year);
122
+ return kendo_date_math_1.lastDayOfMonth(month);
123
+ };
119
124
  DecadeViewService.prototype.isRangeStart = function (value) {
120
125
  return value.getFullYear() % 100 === 0;
121
126
  };
@@ -126,6 +126,9 @@ var MonthViewService = /** @class */ (function () {
126
126
  }
127
127
  return kendo_date_math_1.createDate(date.getFullYear(), date.getMonth(), 1);
128
128
  };
129
+ MonthViewService.prototype.lastDayOfPeriod = function (date) {
130
+ return kendo_date_math_1.lastDayOfMonth(date);
131
+ };
129
132
  MonthViewService.prototype.isRangeStart = function (value) {
130
133
  return !value.getMonth();
131
134
  };
@@ -142,6 +142,10 @@ var YearViewService = /** @class */ (function () {
142
142
  }
143
143
  return kendo_date_math_1.createDate(date.getFullYear(), 0, 1);
144
144
  };
145
+ YearViewService.prototype.lastDayOfPeriod = function (date) {
146
+ var month = kendo_date_math_1.lastMonthOfYear(date);
147
+ return kendo_date_math_1.lastDayOfMonth(month);
148
+ };
145
149
  YearViewService.prototype.isRangeStart = function (value) {
146
150
  return value.getFullYear() % 10 === 0;
147
151
  };
@@ -21,8 +21,8 @@ var DateRangeInput = /** @class */ (function () {
21
21
  this.renderer = renderer;
22
22
  this.zone = zone;
23
23
  this.navigateCalendarOnFocus = false;
24
- this.popupSubscriptions = new rxjs_1.Subscription(function () { });
25
- this.subscriptions = new rxjs_1.Subscription(function () { });
24
+ this.popupSubscriptions = new rxjs_1.Subscription();
25
+ this.subscriptions = new rxjs_1.Subscription();
26
26
  }
27
27
  Object.defineProperty(DateRangeInput.prototype, "isActiveEnd", {
28
28
  get: function () {
@@ -81,7 +81,7 @@ var DateRangeInput = /** @class */ (function () {
81
81
  };
82
82
  DateRangeInput.prototype.unsubscribePopup = function () {
83
83
  this.popupSubscriptions.unsubscribe();
84
- this.popupSubscriptions = new rxjs_1.Subscription(function () { });
84
+ this.popupSubscriptions = new rxjs_1.Subscription();
85
85
  };
86
86
  DateRangeInput.prototype.activate = function () {
87
87
  this.dateRangeService.setActiveRangeEnd(this.activeRangeEnd);
@@ -86,8 +86,8 @@ var DateRangePopupComponent = /** @class */ (function () {
86
86
  * @hidden
87
87
  */
88
88
  this.popupUID = kendo_angular_common_1.guid();
89
- this.calendarSubscriptions = new rxjs_1.Subscription(function () { });
90
- this.popupSubscriptions = new rxjs_1.Subscription(function () { });
89
+ this.calendarSubscriptions = new rxjs_1.Subscription();
90
+ this.popupSubscriptions = new rxjs_1.Subscription();
91
91
  this.resolvedPromise = Promise.resolve();
92
92
  }
93
93
  Object.defineProperty(DateRangePopupComponent.prototype, "calendar", {
@@ -40,7 +40,7 @@ var DateRangeSelectionDirective = /** @class */ (function () {
40
40
  * the section on [events]({% slug overview_multiviewcalendar %}#toc-events).
41
41
  */
42
42
  this.selectionRangeChange = new core_1.EventEmitter();
43
- this.calendarSubscriptions = new rxjs_1.Subscription(function () { });
43
+ this.calendarSubscriptions = new rxjs_1.Subscription();
44
44
  this.dateRangeService = this.dateRangeService || new date_range_service_1.DateRangeService();
45
45
  renderer.setAttribute(element.nativeElement, 'aria-multiselectable', 'true');
46
46
  }
@@ -11,7 +11,7 @@ exports.packageMetadata = {
11
11
  name: '@progress/kendo-angular-dateinputs',
12
12
  productName: 'Kendo UI for Angular',
13
13
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
14
- publishDate: 1633509845,
14
+ publishDate: 1635945725,
15
15
  version: '',
16
16
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
17
17
  };