@progress/kendo-angular-dateinputs 17.0.0-develop.2 → 17.0.0-develop.21

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.
@@ -20,6 +20,7 @@ import { ActionSheetComponent, ActionSheetTemplateDirective } from '@progress/ke
20
20
  import { ButtonComponent } from '@progress/kendo-angular-buttons';
21
21
  import { NgIf } from '@angular/common';
22
22
  import { DateRangePopupLocalizedMessagesDirective } from './localization/daterange-popup-localized-messages.directive';
23
+ import { CalendarViewEnum } from '../calendar/models/view.enum';
23
24
  import * as i0 from "@angular/core";
24
25
  import * as i1 from "@progress/kendo-angular-popup";
25
26
  import * as i2 from "./date-range.service";
@@ -53,12 +54,58 @@ export class DateRangePopupComponent {
53
54
  this.cdr = cdr;
54
55
  this.rtl = rtl;
55
56
  /**
56
- * Allows reverse selection when using `range` selection.
57
+ * @hidden
58
+ *
59
+ * Determines whether to display the MultiViewCalendar header.
60
+ */
61
+ this.showCalendarHeader = true;
62
+ /**
63
+ * Defines the active view that the MultiViewCalendar initially renders
64
+ * ([see example]({% slug viewoptions_multiviewcalendar %})).
65
+ * By default, the active view is `month`.
66
+ *
67
+ * > You have to set `activeView` within the `topView`-`bottomView` range.
68
+ */
69
+ this.activeView = CalendarViewEnum[CalendarViewEnum.month];
70
+ /**
71
+ * Defines the bottommost view, to which the user can navigate
72
+ * ([see example](slug:viewdepth_multiviewcalendar)).
73
+ */
74
+ this.bottomView = CalendarViewEnum[CalendarViewEnum.month];
75
+ /**
76
+ * Defines the topmost view, to which the user can navigate.
77
+ */
78
+ this.topView = CalendarViewEnum[CalendarViewEnum.century];
79
+ /**
80
+ * Allows reverse selection.
57
81
  * If `allowReverse` is set to `true`, the component skips the validation of whether the start date is after the end date.
58
82
  *
59
83
  * @default false
60
84
  */
61
85
  this.allowReverse = false;
86
+ /**
87
+ * Determines whether to enable animation when navigating to previous/next view.
88
+ * @default false
89
+ */
90
+ this.animateNavigation = false;
91
+ /**
92
+ * Sets or gets the `disabled` property of the MultiViewCalendar and
93
+ * determines whether the component is active
94
+ * ([see example]({% slug disabled_multiviewcalendar %})).
95
+ */
96
+ this.disabled = false;
97
+ /**
98
+ * Sets or gets the `views` property of the MultiViewCalendar and
99
+ * defines the number of rendered months.
100
+ *
101
+ * @default 2
102
+ */
103
+ this.views = 2;
104
+ /**
105
+ * Determines whether to display a week number column in the `month` view
106
+ * ([see example]({% slug weeknumcolumn_multiviewcalendar %})).
107
+ */
108
+ this.weekNumber = false;
62
109
  /**
63
110
  * Controls the popup animation.
64
111
  * By default, the opening and closing animations are enabled.
@@ -66,6 +113,17 @@ export class DateRangePopupComponent {
66
113
  * refer to the article on [animations]({% slug animations_popup %}).
67
114
  */
68
115
  this.animate = true;
116
+ /**
117
+ * Determines whether to display a header for every view (for example the month name).
118
+ *
119
+ * @default false
120
+ */
121
+ this.showViewHeader = false;
122
+ /**
123
+ * Displays the days that fall out of the current month ([see example]({% slug viewoptions_multiviewcalendar %}#toc-displaying-other-month-days)).
124
+ * @default false
125
+ */
126
+ this.showOtherMonthDays = false;
69
127
  /**
70
128
  * Configures the collision behavior of the popup.
71
129
  * For more information, refer to the article on
@@ -500,7 +558,7 @@ export class DateRangePopupComponent {
500
558
  }
501
559
  }
502
560
  DateRangePopupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DateRangePopupComponent, deps: [{ token: i1.PopupService }, { token: i2.DateRangeService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i3.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: RTL, optional: true }], target: i0.ɵɵFactoryTarget.Component });
503
- DateRangePopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DateRangePopupComponent, isStandalone: true, selector: "kendo-daterange-popup", inputs: { allowReverse: "allowReverse", animate: "animate", anchor: "anchor", anchorAlign: "anchorAlign", appendTo: "appendTo", collision: "collision", popupAlign: "popupAlign", margin: "margin", adaptiveMode: "adaptiveMode", title: "title", subtitle: "subtitle", size: "size" }, outputs: { open: "open", close: "close", onBlur: "blur", onFocus: "focus", cancel: "cancel" }, providers: [
561
+ DateRangePopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DateRangePopupComponent, isStandalone: true, selector: "kendo-daterange-popup", inputs: { showCalendarHeader: "showCalendarHeader", focusedDate: "focusedDate", disabledDates: "disabledDates", activeView: "activeView", bottomView: "bottomView", topView: "topView", min: "min", max: "max", allowReverse: "allowReverse", animateNavigation: "animateNavigation", disabled: "disabled", views: "views", weekNumber: "weekNumber", animate: "animate", anchor: "anchor", anchorAlign: "anchorAlign", showViewHeader: "showViewHeader", showOtherMonthDays: "showOtherMonthDays", appendTo: "appendTo", collision: "collision", popupAlign: "popupAlign", margin: "margin", adaptiveMode: "adaptiveMode", title: "title", subtitle: "subtitle", size: "size" }, outputs: { open: "open", close: "close", onBlur: "blur", onFocus: "focus", cancel: "cancel" }, providers: [
504
562
  LocalizationService,
505
563
  {
506
564
  provide: L10N_PREFIX,
@@ -524,7 +582,22 @@ DateRangePopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0"
524
582
  <ng-container #container></ng-container>
525
583
  <ng-template #defaultTemplate>
526
584
  <kendo-multiviewcalendar
585
+ [activeView]="activeView"
586
+ [bottomView]="bottomView"
587
+ [animateNavigation]="animateNavigation"
588
+ [disabled]="disabled"
589
+ orientation="horizontal"
590
+ [views]="views"
591
+ [weekNumber]="weekNumber"
592
+ [topView]="topView"
593
+ [disabledDates]="disabledDates"
594
+ [min]="min"
595
+ [max]="max"
596
+ [showCalendarHeader]="showCalendarHeader"
597
+ [focusedDate]="focusedDate"
527
598
  [allowReverse]="allowReverse"
599
+ [showViewHeader]="showViewHeader"
600
+ [showOtherMonthDays]="showOtherMonthDays"
528
601
  selection="range"
529
602
  [size]="size"
530
603
  [value]="dateRangeService.selectionRange"
@@ -572,8 +645,22 @@ DateRangePopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0"
572
645
  <div class="k-scrollable-wrap">
573
646
  <kendo-multiviewcalendar
574
647
  size="large"
648
+ [animateNavigation]="animateNavigation"
649
+ [disabled]="disabled"
575
650
  orientation="vertical"
651
+ [views]="views"
652
+ [weekNumber]="weekNumber"
653
+ [disabledDates]="disabledDates"
654
+ [activeView]="activeView"
655
+ [bottomView]="bottomView"
656
+ [topView]="topView"
657
+ [min]="min"
658
+ [max]="max"
659
+ [showCalendarHeader]="showCalendarHeader"
660
+ [focusedDate]="focusedDate"
576
661
  [allowReverse]="allowReverse"
662
+ [showViewHeader]="showViewHeader"
663
+ [showOtherMonthDays]="showOtherMonthDays"
577
664
  [focusedDate]="dateRangeService.focusedDate"
578
665
  [value]="dateRangeService.selectionRange"
579
666
  selection="range"
@@ -606,7 +693,7 @@ DateRangePopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0"
606
693
  </div>
607
694
  </ng-template>
608
695
  </kendo-actionsheet>
609
- `, isInline: true, dependencies: [{ kind: "directive", type: DateRangePopupLocalizedMessagesDirective, selector: "[kendoDateRangePopupLocalizedMessages]" }, { kind: "component", type: MultiViewCalendarComponent, selector: "kendo-multiviewcalendar", inputs: ["showOtherMonthDays", "showCalendarHeader", "size", "id", "focusedDate", "footer", "min", "max", "rangeValidation", "disabledDatesRangeValidation", "selection", "allowReverse", "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", "rangeSelectionChange", "blur", "focus", "focusCalendar", "onClosePopup", "onTabPress", "onShiftTabPress"], exportAs: ["kendo-multiviewcalendar"] }, { kind: "component", type: ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["title", "subtitle", "items", "cssClass", "animation", "expanded", "titleId"], outputs: ["expandedChange", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { kind: "directive", type: ActionSheetTemplateDirective, selector: "[kendoActionSheetTemplate]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { kind: "component", type: 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"] }] });
696
+ `, isInline: true, dependencies: [{ kind: "directive", type: DateRangePopupLocalizedMessagesDirective, selector: "[kendoDateRangePopupLocalizedMessages]" }, { kind: "component", type: MultiViewCalendarComponent, selector: "kendo-multiviewcalendar", inputs: ["showOtherMonthDays", "showCalendarHeader", "size", "id", "focusedDate", "footer", "min", "max", "rangeValidation", "disabledDatesRangeValidation", "selection", "allowReverse", "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", "rangeSelectionChange", "blur", "focus", "focusCalendar", "onClosePopup", "onTabPress", "onShiftTabPress"], exportAs: ["kendo-multiviewcalendar"] }, { kind: "component", type: ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["title", "subtitle", "items", "cssClass", "animation", "expanded", "titleId"], outputs: ["expandedChange", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { kind: "directive", type: ActionSheetTemplateDirective, selector: "[kendoActionSheetTemplate]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }] });
610
697
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DateRangePopupComponent, decorators: [{
611
698
  type: Component,
612
699
  args: [{
@@ -637,7 +724,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
637
724
  <ng-container #container></ng-container>
638
725
  <ng-template #defaultTemplate>
639
726
  <kendo-multiviewcalendar
727
+ [activeView]="activeView"
728
+ [bottomView]="bottomView"
729
+ [animateNavigation]="animateNavigation"
730
+ [disabled]="disabled"
731
+ orientation="horizontal"
732
+ [views]="views"
733
+ [weekNumber]="weekNumber"
734
+ [topView]="topView"
735
+ [disabledDates]="disabledDates"
736
+ [min]="min"
737
+ [max]="max"
738
+ [showCalendarHeader]="showCalendarHeader"
739
+ [focusedDate]="focusedDate"
640
740
  [allowReverse]="allowReverse"
741
+ [showViewHeader]="showViewHeader"
742
+ [showOtherMonthDays]="showOtherMonthDays"
641
743
  selection="range"
642
744
  [size]="size"
643
745
  [value]="dateRangeService.selectionRange"
@@ -685,8 +787,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
685
787
  <div class="k-scrollable-wrap">
686
788
  <kendo-multiviewcalendar
687
789
  size="large"
790
+ [animateNavigation]="animateNavigation"
791
+ [disabled]="disabled"
688
792
  orientation="vertical"
793
+ [views]="views"
794
+ [weekNumber]="weekNumber"
795
+ [disabledDates]="disabledDates"
796
+ [activeView]="activeView"
797
+ [bottomView]="bottomView"
798
+ [topView]="topView"
799
+ [min]="min"
800
+ [max]="max"
801
+ [showCalendarHeader]="showCalendarHeader"
802
+ [focusedDate]="focusedDate"
689
803
  [allowReverse]="allowReverse"
804
+ [showViewHeader]="showViewHeader"
805
+ [showOtherMonthDays]="showOtherMonthDays"
690
806
  [focusedDate]="dateRangeService.focusedDate"
691
807
  [value]="dateRangeService.selectionRange"
692
808
  selection="range"
@@ -749,14 +865,42 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
749
865
  }], contentCalendar: [{
750
866
  type: ContentChildren,
751
867
  args: [MultiViewCalendarComponent]
868
+ }], showCalendarHeader: [{
869
+ type: Input
870
+ }], focusedDate: [{
871
+ type: Input
872
+ }], disabledDates: [{
873
+ type: Input
874
+ }], activeView: [{
875
+ type: Input
876
+ }], bottomView: [{
877
+ type: Input
878
+ }], topView: [{
879
+ type: Input
880
+ }], min: [{
881
+ type: Input
882
+ }], max: [{
883
+ type: Input
752
884
  }], allowReverse: [{
753
885
  type: Input
886
+ }], animateNavigation: [{
887
+ type: Input
888
+ }], disabled: [{
889
+ type: Input
890
+ }], views: [{
891
+ type: Input
892
+ }], weekNumber: [{
893
+ type: Input
754
894
  }], animate: [{
755
895
  type: Input
756
896
  }], anchor: [{
757
897
  type: Input
758
898
  }], anchorAlign: [{
759
899
  type: Input
900
+ }], showViewHeader: [{
901
+ type: Input
902
+ }], showOtherMonthDays: [{
903
+ type: Input
760
904
  }], appendTo: [{
761
905
  type: Input
762
906
  }], collision: [{
@@ -70,7 +70,7 @@ DateRangeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", versi
70
70
  DateRangeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: DateRangeComponent, isStandalone: true, selector: "kendo-daterange", inputs: { size: "size" }, host: { listeners: { "keydown": "keydown($event)" }, properties: { "class.k-daterangepicker": "this.wrapperClass" } }, providers: [DateRangeService], queries: [{ propertyName: "contentPopup", predicate: DateRangePopupComponent }], ngImport: i0, template: `
71
71
  <ng-content></ng-content>
72
72
  <kendo-daterange-popup *ngIf="showDefault" [size]="size"></kendo-daterange-popup>
73
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: DateRangePopupComponent, selector: "kendo-daterange-popup", inputs: ["allowReverse", "animate", "anchor", "anchorAlign", "appendTo", "collision", "popupAlign", "margin", "adaptiveMode", "title", "subtitle", "size"], outputs: ["open", "close", "blur", "focus", "cancel"], exportAs: ["kendo-daterange-popup"] }] });
73
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: DateRangePopupComponent, selector: "kendo-daterange-popup", inputs: ["showCalendarHeader", "focusedDate", "disabledDates", "activeView", "bottomView", "topView", "min", "max", "allowReverse", "animateNavigation", "disabled", "views", "weekNumber", "animate", "anchor", "anchorAlign", "showViewHeader", "showOtherMonthDays", "appendTo", "collision", "popupAlign", "margin", "adaptiveMode", "title", "subtitle", "size"], outputs: ["open", "close", "blur", "focus", "cancel"], exportAs: ["kendo-daterange-popup"] }] });
74
74
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DateRangeComponent, decorators: [{
75
75
  type: Component,
76
76
  args: [{
@@ -657,10 +657,20 @@ export class DateTimePickerComponent extends MultiTabStop {
657
657
  }
658
658
  }
659
659
  get dateTabButton() {
660
- return this.popupRef?.popup.instance.container.nativeElement.querySelector(DATE_TAB_BUTTON_SELECTOR);
660
+ if (this.isAdaptive) {
661
+ return this.actionSheet.element.nativeElement.querySelector(DATE_TAB_BUTTON_SELECTOR);
662
+ }
663
+ else {
664
+ return this.popupRef?.popup.instance.container.nativeElement.querySelector(DATE_TAB_BUTTON_SELECTOR);
665
+ }
661
666
  }
662
667
  get timeTabButton() {
663
- return this.popupRef?.popup.instance.container.nativeElement.querySelector(TIME_TAB_BUTTON_SELECTOR);
668
+ if (this.isAdaptive) {
669
+ return this.actionSheet.element.nativeElement.querySelector(TIME_TAB_BUTTON_SELECTOR);
670
+ }
671
+ else {
672
+ return this.popupRef?.popup.instance.container.nativeElement.querySelector(TIME_TAB_BUTTON_SELECTOR);
673
+ }
664
674
  }
665
675
  /**
666
676
  * @hidden
@@ -1531,6 +1541,18 @@ DateTimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0"
1531
1541
  <ng-container *ngTemplateOutlet="dateTimeTemplate"></ng-container>
1532
1542
  </div>
1533
1543
  <div class="k-actions k-actions-stretched k-actions-horizontal k-actionsheet-footer">
1544
+ <button kendoButton
1545
+ *ngIf="cancelButton"
1546
+ class="k-time-cancel"
1547
+ type="button"
1548
+ (click)="handleCancel()"
1549
+ size="large"
1550
+ [attr.title]="localization.get('cancelLabel')"
1551
+ [attr.aria-label]="localization.get('cancelLabel')"
1552
+ >
1553
+ {{localization.get('cancel')}}
1554
+ </button>
1555
+
1534
1556
  <button kendoButton
1535
1557
  type="button"
1536
1558
  class="k-time-accept"
@@ -1543,18 +1565,6 @@ DateTimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0"
1543
1565
  >
1544
1566
  {{localization.get('accept')}}
1545
1567
  </button>
1546
-
1547
- <button kendoButton
1548
- *ngIf="cancelButton"
1549
- class="k-time-cancel"
1550
- type="button"
1551
- (click)="handleCancel()"
1552
- size="large"
1553
- [attr.title]="localization.get('cancelLabel')"
1554
- [attr.aria-label]="localization.get('cancelLabel')"
1555
- >
1556
- {{localization.get('cancel')}}
1557
- </button>
1558
1568
  </div>
1559
1569
  </ng-template>
1560
1570
  </kendo-actionsheet>
@@ -1733,7 +1743,7 @@ DateTimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0"
1733
1743
  </div>
1734
1744
  </div>
1735
1745
  </ng-template>
1736
- `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "[kendoDateTimePickerLocalizedMessages]" }, { kind: "component", type: DateInputComponent, selector: "kendo-dateinput", inputs: ["focusableId", "pickerType", "clearButton", "disabled", "readonly", "title", "tabindex", "role", "ariaReadOnly", "tabIndex", "isRequired", "format", "formatPlaceholder", "placeholder", "steps", "max", "min", "rangeValidation", "autoCorrectParts", "autoSwitchParts", "autoSwitchKeys", "allowCaretMode", "autoFill", "incompleteDateValidation", "twoDigitYearMax", "enableMouseWheel", "value", "spinners", "isPopupOpen", "hasPopup", "size", "rounded", "fillMode", "inputAttributes"], outputs: ["valueChange", "valueUpdate", "focus", "blur"], exportAs: ["kendo-dateinput"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "component", type: DateInputCustomMessagesComponent, selector: "kendo-dateinput-messages" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { kind: "component", type: ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["title", "subtitle", "items", "cssClass", "animation", "expanded", "titleId"], outputs: ["expandedChange", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { kind: "directive", type: ActionSheetTemplateDirective, selector: "[kendoActionSheetTemplate]" }, { kind: "component", type: 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"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: CalendarComponent, selector: "kendo-calendar", inputs: ["showOtherMonthDays", "id", "focusedDate", "min", "max", "rangeValidation", "weekDaysFormat", "footer", "selection", "allowReverse", "value", "disabled", "tabindex", "tabIndex", "disabledDates", "navigation", "activeView", "bottomView", "topView", "type", "animateNavigation", "weekNumber", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "headerTemplate", "footerTemplate", "navigationItemTemplate", "size", "activeRangeEnd"], outputs: ["activeViewChange", "navigate", "activeViewDateChange", "blur", "focus", "valueChange"], exportAs: ["kendo-calendar"] }, { kind: "component", type: CalendarCustomMessagesComponent, selector: "kendo-calendar-messages" }, { kind: "component", type: TimeSelectorComponent, selector: "kendo-timeselector", inputs: ["format", "min", "max", "cancelButton", "setButton", "nowButton", "disabled", "isAdaptiveEnabled", "isDateTimePicker", "steps", "value"], outputs: ["valueChange", "valueReject", "tabOutLastPart", "tabOutNow"], exportAs: ["kendo-timeselector"] }, { kind: "component", type: TimeSelectorCustomMessagesComponent, selector: "kendo-timeselector-messages" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1746
+ `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "[kendoDateTimePickerLocalizedMessages]" }, { kind: "component", type: DateInputComponent, selector: "kendo-dateinput", inputs: ["focusableId", "pickerType", "clearButton", "disabled", "readonly", "title", "tabindex", "role", "ariaReadOnly", "tabIndex", "isRequired", "format", "formatPlaceholder", "placeholder", "steps", "max", "min", "rangeValidation", "autoCorrectParts", "autoSwitchParts", "autoSwitchKeys", "allowCaretMode", "autoFill", "incompleteDateValidation", "twoDigitYearMax", "enableMouseWheel", "value", "spinners", "isPopupOpen", "hasPopup", "size", "rounded", "fillMode", "inputAttributes"], outputs: ["valueChange", "valueUpdate", "focus", "blur"], exportAs: ["kendo-dateinput"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "component", type: DateInputCustomMessagesComponent, selector: "kendo-dateinput-messages" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { kind: "component", type: ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["title", "subtitle", "items", "cssClass", "animation", "expanded", "titleId"], outputs: ["expandedChange", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { kind: "directive", type: ActionSheetTemplateDirective, selector: "[kendoActionSheetTemplate]" }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: CalendarComponent, selector: "kendo-calendar", inputs: ["showOtherMonthDays", "id", "focusedDate", "min", "max", "rangeValidation", "weekDaysFormat", "footer", "selection", "allowReverse", "value", "disabled", "tabindex", "tabIndex", "disabledDates", "navigation", "activeView", "bottomView", "topView", "type", "animateNavigation", "weekNumber", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "headerTemplate", "footerTemplate", "navigationItemTemplate", "size", "activeRangeEnd"], outputs: ["activeViewChange", "navigate", "activeViewDateChange", "blur", "focus", "valueChange"], exportAs: ["kendo-calendar"] }, { kind: "component", type: CalendarCustomMessagesComponent, selector: "kendo-calendar-messages" }, { kind: "component", type: TimeSelectorComponent, selector: "kendo-timeselector", inputs: ["format", "min", "max", "cancelButton", "setButton", "nowButton", "disabled", "isAdaptiveEnabled", "isDateTimePicker", "steps", "value"], outputs: ["valueChange", "valueReject", "tabOutLastPart", "tabOutNow"], exportAs: ["kendo-timeselector"] }, { kind: "component", type: TimeSelectorCustomMessagesComponent, selector: "kendo-timeselector-messages" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1737
1747
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DateTimePickerComponent, decorators: [{
1738
1748
  type: Component,
1739
1749
  args: [{
@@ -1934,6 +1944,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1934
1944
  <ng-container *ngTemplateOutlet="dateTimeTemplate"></ng-container>
1935
1945
  </div>
1936
1946
  <div class="k-actions k-actions-stretched k-actions-horizontal k-actionsheet-footer">
1947
+ <button kendoButton
1948
+ *ngIf="cancelButton"
1949
+ class="k-time-cancel"
1950
+ type="button"
1951
+ (click)="handleCancel()"
1952
+ size="large"
1953
+ [attr.title]="localization.get('cancelLabel')"
1954
+ [attr.aria-label]="localization.get('cancelLabel')"
1955
+ >
1956
+ {{localization.get('cancel')}}
1957
+ </button>
1958
+
1937
1959
  <button kendoButton
1938
1960
  type="button"
1939
1961
  class="k-time-accept"
@@ -1946,18 +1968,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1946
1968
  >
1947
1969
  {{localization.get('accept')}}
1948
1970
  </button>
1949
-
1950
- <button kendoButton
1951
- *ngIf="cancelButton"
1952
- class="k-time-cancel"
1953
- type="button"
1954
- (click)="handleCancel()"
1955
- size="large"
1956
- [attr.title]="localization.get('cancelLabel')"
1957
- [attr.aria-label]="localization.get('cancelLabel')"
1958
- >
1959
- {{localization.get('cancel')}}
1960
- </button>
1961
1971
  </div>
1962
1972
  </ng-template>
1963
1973
  </kendo-actionsheet>
@@ -9,7 +9,7 @@ export const packageMetadata = {
9
9
  name: '@progress/kendo-angular-dateinputs',
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
12
- publishDate: 1728914464,
13
- version: '17.0.0-develop.2',
12
+ publishDate: 1729874227,
13
+ version: '17.0.0-develop.21',
14
14
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
15
15
  };
@@ -42,6 +42,7 @@ const VALUE_DOC_LINK = 'https://www.telerik.com/kendo-angular-ui/components/date
42
42
  const INTL_DATE_FORMAT = 'https://github.com/telerik/kendo-intl/blob/master/docs/date-formatting/index.md';
43
43
  const formatRegExp = new RegExp(`${TIME_PART.hour}|${TIME_PART.minute}|${TIME_PART.second}|${TIME_PART.millisecond}|${TIME_PART.dayperiod}|literal`);
44
44
  const ACCEPT_BUTTON_SELECTOR = '.k-button.k-time-accept';
45
+ const CANCEL_BUTTON_SELECTOR = '.k-button.k-time-cancel';
45
46
  /**
46
47
  * Represents the [Kendo UI TimePicker component for Angular](slug:overview_timepicker).
47
48
  */
@@ -455,6 +456,9 @@ export class TimePickerComponent extends MultiTabStop {
455
456
  get adaptiveAcceptButton() {
456
457
  return this.actionSheet.element.nativeElement.querySelector(ACCEPT_BUTTON_SELECTOR);
457
458
  }
459
+ get adaptiveCancelButton() {
460
+ return this.actionSheet.element.nativeElement.querySelector(CANCEL_BUTTON_SELECTOR);
461
+ }
458
462
  get inputElement() {
459
463
  return this.wrapper.nativeElement.querySelector('input');
460
464
  }
@@ -775,7 +779,12 @@ export class TimePickerComponent extends MultiTabStop {
775
779
  * @hidden
776
780
  */
777
781
  onTabOutLastPart() {
778
- this.isAdaptive ? this.adaptiveAcceptButton.focus() : this.timeSelector.accept.nativeElement.focus();
782
+ if (this.isAdaptive) {
783
+ this.cancelButton ? this.adaptiveCancelButton.focus() : this.adaptiveAcceptButton.focus();
784
+ }
785
+ else {
786
+ this.timeSelector.accept.nativeElement.focus();
787
+ }
779
788
  }
780
789
  toggleTimeSelector(show) {
781
790
  this.windowSize = windowSize();
@@ -1119,6 +1128,17 @@ TimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
1119
1128
  <ng-container *ngTemplateOutlet="timeSelectorTemplate"></ng-container>
1120
1129
  </div>
1121
1130
  <div class="k-actions k-actions-stretched k-actions-horizontal k-actionsheet-footer">
1131
+ <button kendoButton
1132
+ type="button"
1133
+ (click)="handleReject()"
1134
+ size="large"
1135
+ class="k-time-cancel"
1136
+ [attr.title]="localization.get('cancelLabel')"
1137
+ [attr.aria-label]="localization.get('cancelLabel')"
1138
+ >
1139
+ {{localization.get('cancel')}}
1140
+ </button>
1141
+
1122
1142
  <button kendoButton
1123
1143
  type="button"
1124
1144
  (click)="handleActionSheetAccept()"
@@ -1130,17 +1150,6 @@ TimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
1130
1150
  >
1131
1151
  {{localization.get('accept')}}
1132
1152
  </button>
1133
-
1134
- <button kendoButton
1135
- type="button"
1136
- (click)="handleReject()"
1137
- size="large"
1138
- class="k-time-cancel"
1139
- [attr.title]="localization.get('cancelLabel')"
1140
- [attr.aria-label]="localization.get('cancelLabel')"
1141
- >
1142
- {{localization.get('cancel')}}
1143
- </button>
1144
1153
  </div>
1145
1154
  </ng-template>
1146
1155
  </kendo-actionsheet>
@@ -1183,7 +1192,7 @@ TimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
1183
1192
  </kendo-timeselector-messages>
1184
1193
  </kendo-timeselector>
1185
1194
  </ng-template>
1186
- `, isInline: true, dependencies: [{ kind: "directive", type: TimePickerLocalizedMessagesDirective, selector: "[kendoTimePickerLocalizedMessages]" }, { kind: "component", type: DateInputComponent, selector: "kendo-dateinput", inputs: ["focusableId", "pickerType", "clearButton", "disabled", "readonly", "title", "tabindex", "role", "ariaReadOnly", "tabIndex", "isRequired", "format", "formatPlaceholder", "placeholder", "steps", "max", "min", "rangeValidation", "autoCorrectParts", "autoSwitchParts", "autoSwitchKeys", "allowCaretMode", "autoFill", "incompleteDateValidation", "twoDigitYearMax", "enableMouseWheel", "value", "spinners", "isPopupOpen", "hasPopup", "size", "rounded", "fillMode", "inputAttributes"], outputs: ["valueChange", "valueUpdate", "focus", "blur"], exportAs: ["kendo-dateinput"] }, { kind: "component", type: DateInputCustomMessagesComponent, selector: "kendo-dateinput-messages" }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { kind: "component", type: ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["title", "subtitle", "items", "cssClass", "animation", "expanded", "titleId"], outputs: ["expandedChange", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { kind: "directive", type: ActionSheetTemplateDirective, selector: "[kendoActionSheetTemplate]" }, { kind: "component", type: 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"] }, { kind: "component", type: TimeSelectorComponent, selector: "kendo-timeselector", inputs: ["format", "min", "max", "cancelButton", "setButton", "nowButton", "disabled", "isAdaptiveEnabled", "isDateTimePicker", "steps", "value"], outputs: ["valueChange", "valueReject", "tabOutLastPart", "tabOutNow"], exportAs: ["kendo-timeselector"] }, { kind: "component", type: TimeSelectorCustomMessagesComponent, selector: "kendo-timeselector-messages" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1195
+ `, isInline: true, dependencies: [{ kind: "directive", type: TimePickerLocalizedMessagesDirective, selector: "[kendoTimePickerLocalizedMessages]" }, { kind: "component", type: DateInputComponent, selector: "kendo-dateinput", inputs: ["focusableId", "pickerType", "clearButton", "disabled", "readonly", "title", "tabindex", "role", "ariaReadOnly", "tabIndex", "isRequired", "format", "formatPlaceholder", "placeholder", "steps", "max", "min", "rangeValidation", "autoCorrectParts", "autoSwitchParts", "autoSwitchKeys", "allowCaretMode", "autoFill", "incompleteDateValidation", "twoDigitYearMax", "enableMouseWheel", "value", "spinners", "isPopupOpen", "hasPopup", "size", "rounded", "fillMode", "inputAttributes"], outputs: ["valueChange", "valueUpdate", "focus", "blur"], exportAs: ["kendo-dateinput"] }, { kind: "component", type: DateInputCustomMessagesComponent, selector: "kendo-dateinput-messages" }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { kind: "component", type: ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["title", "subtitle", "items", "cssClass", "animation", "expanded", "titleId"], outputs: ["expandedChange", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { kind: "directive", type: ActionSheetTemplateDirective, selector: "[kendoActionSheetTemplate]" }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "component", type: TimeSelectorComponent, selector: "kendo-timeselector", inputs: ["format", "min", "max", "cancelButton", "setButton", "nowButton", "disabled", "isAdaptiveEnabled", "isDateTimePicker", "steps", "value"], outputs: ["valueChange", "valueReject", "tabOutLastPart", "tabOutNow"], exportAs: ["kendo-timeselector"] }, { kind: "component", type: TimeSelectorCustomMessagesComponent, selector: "kendo-timeselector-messages" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1187
1196
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TimePickerComponent, decorators: [{
1188
1197
  type: Component,
1189
1198
  args: [{
@@ -1343,6 +1352,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1343
1352
  <ng-container *ngTemplateOutlet="timeSelectorTemplate"></ng-container>
1344
1353
  </div>
1345
1354
  <div class="k-actions k-actions-stretched k-actions-horizontal k-actionsheet-footer">
1355
+ <button kendoButton
1356
+ type="button"
1357
+ (click)="handleReject()"
1358
+ size="large"
1359
+ class="k-time-cancel"
1360
+ [attr.title]="localization.get('cancelLabel')"
1361
+ [attr.aria-label]="localization.get('cancelLabel')"
1362
+ >
1363
+ {{localization.get('cancel')}}
1364
+ </button>
1365
+
1346
1366
  <button kendoButton
1347
1367
  type="button"
1348
1368
  (click)="handleActionSheetAccept()"
@@ -1354,17 +1374,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
1354
1374
  >
1355
1375
  {{localization.get('accept')}}
1356
1376
  </button>
1357
-
1358
- <button kendoButton
1359
- type="button"
1360
- (click)="handleReject()"
1361
- size="large"
1362
- class="k-time-cancel"
1363
- [attr.title]="localization.get('cancelLabel')"
1364
- [attr.aria-label]="localization.get('cancelLabel')"
1365
- >
1366
- {{localization.get('cancel')}}
1367
- </button>
1368
1377
  </div>
1369
1378
  </ng-template>
1370
1379
  </kendo-actionsheet>
@@ -316,7 +316,7 @@ export class TimeSelectorComponent {
316
316
  this.tabOutNow.emit();
317
317
  }
318
318
  else {
319
- this.cancel ? this.cancel.nativeElement.focus() : this.accept.nativeElement.focus();
319
+ this.cancel ? this.cancel.nativeElement.focus() : this.accept?.nativeElement.focus();
320
320
  }
321
321
  return;
322
322
  }