@progress/kendo-angular-dateinputs 21.1.1-develop.1 → 21.2.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.
@@ -43,7 +43,7 @@ import { TimeSelectorCustomMessagesComponent } from '../timepicker/localization/
43
43
  import { CalendarCustomMessagesComponent } from '../calendar/localization/calendar-custom-messages.component';
44
44
  import { ButtonComponent } from '@progress/kendo-angular-buttons';
45
45
  import { IconWrapperComponent } from '@progress/kendo-angular-icons';
46
- import { NgIf, NgTemplateOutlet, NgClass } from '@angular/common';
46
+ import { NgTemplateOutlet, NgClass } from '@angular/common';
47
47
  import { DateInputCustomMessagesComponent } from '../dateinput/localization/dateinput-custom-messages.component';
48
48
  import { LocalizedMessagesDirective } from './localization/localized-messages.directive';
49
49
  import { touchEnabled } from '@progress/kendo-common';
@@ -1483,7 +1483,7 @@ export class DateTimePickerComponent extends MultiTabStop {
1483
1483
  }
1484
1484
  }
1485
1485
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DateTimePickerComponent, deps: [{ token: i1.PopupService }, { token: i2.IntlService }, { token: i0.ChangeDetectorRef }, { token: i3.PickerService }, { token: i0.NgZone }, { token: i0.ElementRef }, { token: i4.LocalizationService }, { token: i5.DisabledDatesService }, { token: i0.Renderer2 }, { token: i0.Injector }, { token: i6.AdaptiveService }], target: i0.ɵɵFactoryTarget.Component });
1486
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: DateTimePickerComponent, isStandalone: true, selector: "kendo-datetimepicker", inputs: { focusableId: "focusableId", weekDaysFormat: "weekDaysFormat", showOtherMonthDays: "showOtherMonthDays", value: "value", format: "format", twoDigitYearMax: "twoDigitYearMax", tabindex: "tabindex", disabledDates: "disabledDates", popupSettings: "popupSettings", adaptiveTitle: "adaptiveTitle", adaptiveSubtitle: "adaptiveSubtitle", 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", clearButton: "clearButton", autoFill: "autoFill", adaptiveMode: "adaptiveMode", inputAttributes: "inputAttributes", 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", escape: "escape" }, host: { properties: { "class.k-datetimepicker": "this.hostClasses", "class.k-input": "this.hostClasses", "class.k-disabled": "this.disabledClass", "class.k-readonly": "this.readonly" } }, providers: [
1486
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: DateTimePickerComponent, isStandalone: true, selector: "kendo-datetimepicker", inputs: { focusableId: "focusableId", weekDaysFormat: "weekDaysFormat", showOtherMonthDays: "showOtherMonthDays", value: "value", format: "format", twoDigitYearMax: "twoDigitYearMax", tabindex: "tabindex", disabledDates: "disabledDates", popupSettings: "popupSettings", adaptiveTitle: "adaptiveTitle", adaptiveSubtitle: "adaptiveSubtitle", 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", clearButton: "clearButton", autoFill: "autoFill", adaptiveMode: "adaptiveMode", inputAttributes: "inputAttributes", 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", escape: "escape" }, host: { properties: { "class.k-datetimepicker": "this.hostClasses", "class.k-input": "this.hostClasses", "class.k-disabled": "this.disabledClass", "class.k-readonly": "this.readonly" } }, providers: [
1487
1487
  PickerService,
1488
1488
  LocalizationService,
1489
1489
  DisabledDatesService,
@@ -1494,163 +1494,167 @@ export class DateTimePickerComponent extends MultiTabStop {
1494
1494
  { provide: MultiTabStop, useExisting: forwardRef(() => DateTimePickerComponent) }
1495
1495
  ], 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"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: `
1496
1496
  <ng-container
1497
- kendoDateTimePickerLocalizedMessages
1498
-
1499
- i18n-dateTab="kendo.datetimepicker.dateTab|The Date tab text in the datetimepicker popup header"
1500
- dateTab="Date"
1501
-
1502
- i18n-dateTabLabel="kendo.datetimepicker.dateTabLabel|The label for the Date tab in the datetimepicker popup header"
1503
- dateTabLabel="Date tab"
1504
-
1505
- i18n-timeTab="kendo.datetimepicker.timeTab|The Time tab text in the datetimepicker popup header"
1506
- timeTab="Time"
1507
-
1508
- i18n-timeTabLabel="kendo.datetimepicker.timeTabLabel|The label for the Time tab in the datetimepicker popup header"
1509
- timeTabLabel="Time tab"
1510
-
1511
- i18n-toggle="kendo.datetimepicker.toggle|The title of the toggle button in the datetimepicker component"
1512
- toggle="Toggle popup"
1513
-
1514
- i18n-accept="kendo.datetimepicker.accept|The Accept button text in the datetimepicker component"
1515
- accept="Set"
1516
-
1517
- i18n-acceptLabel="kendo.datetimepicker.acceptLabel|The label for the Accept button in the datetimepicker component"
1518
- acceptLabel="Set"
1519
-
1520
- i18n-cancel="kendo.datetimepicker.cancel|The Cancel button text in the datetimepicker component"
1521
- cancel="Cancel"
1522
-
1523
- i18n-cancelLabel="kendo.datetimepicker.cancelLabel|The label for the Cancel button in the datetimepicker component"
1524
- cancelLabel="Cancel"
1525
-
1526
- i18n-now="kendo.datetimepicker.now|The Now button text in the timepicker component"
1527
- now="NOW"
1528
-
1529
- i18n-nowLabel="kendo.datetimepicker.nowLabel|The label for the Now button in the timepicker component"
1530
- nowLabel="Select now"
1531
-
1532
- i18n-today="kendo.datetimepicker.today|The label for the today button in the calendar header"
1533
- today="Today"
1534
-
1535
- i18n-prevButtonTitle="kendo.datetimepicker.prevButtonTitle|The title of the previous button in the Classic calendar"
1536
- prevButtonTitle="Navigate to previous view"
1537
-
1538
- i18n-nextButtonTitle="kendo.datetimepicker.nextButtonTitle|The title of the next button in the Classic calendar"
1539
- nextButtonTitle="Navigate to next view"
1540
-
1541
- i18n-parentViewButtonTitle="kendo.datetimepicker.parentViewButtonTitle|The title of the parent view button in the calendar header"
1542
- parentViewButtonTitle="Navigate to parent view"
1543
-
1544
- i18n-hour="kendo.datetimepicker.hour|The label for the hour part in the timepicker component"
1545
- hour="Hour"
1546
-
1547
- i18n-minute="kendo.datetimepicker.minute|The label for the minute part in the timepicker component"
1548
- minute="Minute"
1549
-
1550
- i18n-second="kendo.datetimepicker.second|The label for the second part in the timepicker component"
1551
- second="Second"
1552
-
1553
- i18n-millisecond="kendo.datetimepicker.millisecond|The label for the millisecond part in the timepicker component"
1554
- millisecond="Millisecond"
1555
-
1556
- i18n-dayperiod="kendo.datetimepicker.dayperiod|The label for the dayperiod part in the timepicker component"
1557
- dayperiod="Dayperiod"
1558
-
1559
- i18n-clearTitle="kendo.datetimepicker.clearTitle|The title of the clear button"
1560
- clearTitle="clear"
1561
-
1562
- i18n-adaptiveCloseButtonTitle="kendo.datetimepicker.adaptiveCloseButtonTitle|The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode"
1563
- adaptiveCloseButtonTitle="Close"
1564
- >
1497
+ kendoDateTimePickerLocalizedMessages
1498
+
1499
+ i18n-dateTab="kendo.datetimepicker.dateTab|The Date tab text in the datetimepicker popup header"
1500
+ dateTab="Date"
1501
+
1502
+ i18n-dateTabLabel="kendo.datetimepicker.dateTabLabel|The label for the Date tab in the datetimepicker popup header"
1503
+ dateTabLabel="Date tab"
1504
+
1505
+ i18n-timeTab="kendo.datetimepicker.timeTab|The Time tab text in the datetimepicker popup header"
1506
+ timeTab="Time"
1507
+
1508
+ i18n-timeTabLabel="kendo.datetimepicker.timeTabLabel|The label for the Time tab in the datetimepicker popup header"
1509
+ timeTabLabel="Time tab"
1510
+
1511
+ i18n-toggle="kendo.datetimepicker.toggle|The title of the toggle button in the datetimepicker component"
1512
+ toggle="Toggle popup"
1513
+
1514
+ i18n-accept="kendo.datetimepicker.accept|The Accept button text in the datetimepicker component"
1515
+ accept="Set"
1516
+
1517
+ i18n-acceptLabel="kendo.datetimepicker.acceptLabel|The label for the Accept button in the datetimepicker component"
1518
+ acceptLabel="Set"
1519
+
1520
+ i18n-cancel="kendo.datetimepicker.cancel|The Cancel button text in the datetimepicker component"
1521
+ cancel="Cancel"
1522
+
1523
+ i18n-cancelLabel="kendo.datetimepicker.cancelLabel|The label for the Cancel button in the datetimepicker component"
1524
+ cancelLabel="Cancel"
1525
+
1526
+ i18n-now="kendo.datetimepicker.now|The Now button text in the timepicker component"
1527
+ now="NOW"
1528
+
1529
+ i18n-nowLabel="kendo.datetimepicker.nowLabel|The label for the Now button in the timepicker component"
1530
+ nowLabel="Select now"
1531
+
1532
+ i18n-today="kendo.datetimepicker.today|The label for the today button in the calendar header"
1533
+ today="Today"
1534
+
1535
+ i18n-prevButtonTitle="kendo.datetimepicker.prevButtonTitle|The title of the previous button in the Classic calendar"
1536
+ prevButtonTitle="Navigate to previous view"
1537
+
1538
+ i18n-nextButtonTitle="kendo.datetimepicker.nextButtonTitle|The title of the next button in the Classic calendar"
1539
+ nextButtonTitle="Navigate to next view"
1540
+
1541
+ i18n-parentViewButtonTitle="kendo.datetimepicker.parentViewButtonTitle|The title of the parent view button in the calendar header"
1542
+ parentViewButtonTitle="Navigate to parent view"
1543
+
1544
+ i18n-hour="kendo.datetimepicker.hour|The label for the hour part in the timepicker component"
1545
+ hour="Hour"
1546
+
1547
+ i18n-minute="kendo.datetimepicker.minute|The label for the minute part in the timepicker component"
1548
+ minute="Minute"
1549
+
1550
+ i18n-second="kendo.datetimepicker.second|The label for the second part in the timepicker component"
1551
+ second="Second"
1552
+
1553
+ i18n-millisecond="kendo.datetimepicker.millisecond|The label for the millisecond part in the timepicker component"
1554
+ millisecond="Millisecond"
1555
+
1556
+ i18n-dayperiod="kendo.datetimepicker.dayperiod|The label for the dayperiod part in the timepicker component"
1557
+ dayperiod="Dayperiod"
1558
+
1559
+ i18n-clearTitle="kendo.datetimepicker.clearTitle|The title of the clear button"
1560
+ clearTitle="clear"
1561
+
1562
+ i18n-adaptiveCloseButtonTitle="kendo.datetimepicker.adaptiveCloseButtonTitle|The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode"
1563
+ adaptiveCloseButtonTitle="Close"
1564
+ >
1565
1565
  </ng-container>
1566
-
1566
+
1567
1567
  <kendo-dateinput
1568
- [value]="value"
1569
- [format]="format"
1570
- [clearButton]="clearButton"
1571
- [twoDigitYearMax]="twoDigitYearMax"
1572
- [min]="min"
1573
- [max]="max"
1574
- [incompleteDateValidation]="incompleteDateValidation"
1575
- [autoCorrectParts]="autoCorrectParts"
1576
- [autoSwitchParts]="autoSwitchParts"
1577
- [autoSwitchKeys]="autoSwitchKeys"
1578
- [enableMouseWheel]="enableMouseWheel"
1579
- [allowCaretMode]="allowCaretMode"
1580
- [autoFill]="autoFill"
1581
- [formatPlaceholder]="formatPlaceholder"
1582
- [placeholder]="placeholder"
1583
- [disabled]="disabled"
1584
- [focusableId]="focusableId"
1585
- [readonly]="readonly || readOnlyInput"
1586
- [role]="'combobox'"
1587
- [ariaReadOnly]="readonly"
1588
- [steps]="steps"
1589
- [tabindex]="tabindex"
1590
- [isRequired]="isControlRequired"
1591
- [title]="adaptiveTitle"
1592
- pickerType="datetimepicker"
1593
- hasPopup="dialog"
1594
- [inputAttributes]="inputAttributes"
1595
- [isPopupOpen]="isOpen"
1596
- (valueChange)="handleInputValueChange($event)"
1568
+ [value]="value"
1569
+ [format]="format"
1570
+ [clearButton]="clearButton"
1571
+ [twoDigitYearMax]="twoDigitYearMax"
1572
+ [min]="min"
1573
+ [max]="max"
1574
+ [incompleteDateValidation]="incompleteDateValidation"
1575
+ [autoCorrectParts]="autoCorrectParts"
1576
+ [autoSwitchParts]="autoSwitchParts"
1577
+ [autoSwitchKeys]="autoSwitchKeys"
1578
+ [enableMouseWheel]="enableMouseWheel"
1579
+ [allowCaretMode]="allowCaretMode"
1580
+ [autoFill]="autoFill"
1581
+ [formatPlaceholder]="formatPlaceholder"
1582
+ [placeholder]="placeholder"
1583
+ [disabled]="disabled"
1584
+ [focusableId]="focusableId"
1585
+ [readonly]="readonly || readOnlyInput"
1586
+ [role]="'combobox'"
1587
+ [ariaReadOnly]="readonly"
1588
+ [steps]="steps"
1589
+ [tabindex]="tabindex"
1590
+ [isRequired]="isControlRequired"
1591
+ [title]="adaptiveTitle"
1592
+ pickerType="datetimepicker"
1593
+ hasPopup="dialog"
1594
+ [inputAttributes]="inputAttributes"
1595
+ [isPopupOpen]="isOpen"
1596
+ (valueChange)="handleInputValueChange($event)"
1597
1597
  [kendoEventsOutsideAngular]="{
1598
1598
  keydown: handleKeyDown
1599
1599
  }"
1600
- [scope]="this"
1601
- fillMode="none"
1602
- rounded="none"
1603
- size="none"
1604
- (click)="handleDateInputClick()"
1605
- >
1606
- <kendo-dateinput-messages
1607
- [clearTitle]="localization.get('clearTitle')"
1600
+ [scope]="this"
1601
+ fillMode="none"
1602
+ rounded="none"
1603
+ size="none"
1604
+ (click)="handleDateInputClick()"
1605
+ >
1606
+ <kendo-dateinput-messages
1607
+ [clearTitle]="localization.get('clearTitle')"
1608
1608
  >
1609
- </kendo-dateinput-messages>
1609
+ </kendo-dateinput-messages>
1610
1610
  </kendo-dateinput>
1611
1611
  <button
1612
- #toggleButton
1613
- type="button"
1614
- class="k-input-button k-button k-icon-button"
1615
- [tabindex]="-1"
1616
- [attr.title]="localization.get('toggle')"
1617
- [attr.aria-label]="localization.get('toggle')"
1618
- [attr.disabled]="disabled ? '' : null"
1612
+ #toggleButton
1613
+ type="button"
1614
+ class="k-input-button k-button k-icon-button"
1615
+ [tabindex]="-1"
1616
+ [attr.title]="localization.get('toggle')"
1617
+ [attr.aria-label]="localization.get('toggle')"
1618
+ [attr.disabled]="disabled ? '' : null"
1619
1619
  [kendoEventsOutsideAngular]="{
1620
1620
  mousedown: preventMouseDown,
1621
1621
  click: handleIconClick
1622
1622
  }"
1623
- [scope]="this"
1624
- >
1623
+ [scope]="this"
1624
+ >
1625
+ @if (activeTab === 'date') {
1625
1626
  <kendo-icon-wrapper
1626
- *ngIf="activeTab === 'date'"
1627
- name="calendar"
1628
- [svgIcon]="calendarIcon"
1629
- innerCssClass="k-button-icon"
1630
- >
1627
+ name="calendar"
1628
+ [svgIcon]="calendarIcon"
1629
+ innerCssClass="k-button-icon"
1630
+ >
1631
1631
  </kendo-icon-wrapper>
1632
+ }
1633
+ @if (activeTab === 'time') {
1632
1634
  <kendo-icon-wrapper
1633
- *ngIf="activeTab === 'time'"
1634
- name="clock"
1635
- [svgIcon]="clockIcon"
1636
- innerCssClass="k-button-icon"
1637
- >
1635
+ name="clock"
1636
+ [svgIcon]="clockIcon"
1637
+ innerCssClass="k-button-icon"
1638
+ >
1638
1639
  </kendo-icon-wrapper>
1640
+ }
1639
1641
  </button>
1640
-
1642
+
1641
1643
  <ng-container #container></ng-container>
1642
-
1644
+
1643
1645
  <ng-template #popupTemplate>
1644
- <ng-container *ngTemplateOutlet="dateTimeTemplate"></ng-container>
1646
+ <ng-container *ngTemplateOutlet="dateTimeTemplate"></ng-container>
1645
1647
  </ng-template>
1646
-
1647
- <kendo-resize-sensor *ngIf="isAdaptiveModeEnabled" (resize)="onResize()"></kendo-resize-sensor>
1648
-
1648
+
1649
+ @if (isAdaptiveModeEnabled) {
1650
+ <kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
1651
+ }
1652
+
1649
1653
  <kendo-actionsheet
1650
- #actionSheet
1651
- (overlayClick)="toggleActionSheet(false)"
1652
- (collapse)="handleActionSheetCollapse()"
1653
- [titleId]="calendar?.headerId"
1654
+ #actionSheet
1655
+ (overlayClick)="toggleActionSheet(false)"
1656
+ (collapse)="handleActionSheetCollapse()"
1657
+ [titleId]="calendar?.headerId"
1654
1658
  [cssClass]="{
1655
1659
  'k-adaptive-actionsheet': true,
1656
1660
  'k-actionsheet-fullscreen': windowSize === 'small',
@@ -1659,66 +1663,71 @@ export class DateTimePickerComponent extends MultiTabStop {
1659
1663
  [cssStyle]="{
1660
1664
  height: windowSize === 'small' ? '100vh' : '60vh'
1661
1665
  }"
1662
- >
1663
- <ng-template kendoActionSheetTemplate>
1664
- <div class="k-actionsheet-titlebar">
1665
- <div class="k-actionsheet-titlebar-group">
1666
- <div class="k-actionsheet-title">
1667
- <div class="k-text-center" *ngIf="adaptiveTitle">{{ adaptiveTitle }}</div>
1668
- <div class="k-actionsheet-subtitle k-text-center" *ngIf="adaptiveSubtitle">{{ adaptiveSubtitle }}</div>
1669
- </div>
1670
- <div class="k-actionsheet-actions">
1671
- <button
1672
- kendoButton
1673
- type="button"
1674
- icon="check"
1675
- [attr.title]="localization.get('adaptiveCloseButtonTitle')"
1676
- [svgIcon]="checkIcon"
1677
- fillMode="flat"
1678
- themeColor="primary"
1679
- [tabIndex]="-1"
1680
- size="large"
1681
- innerCssClass="k-button-icon"
1682
- (click)="toggleActionSheet(false)">
1683
- </button>
1684
- </div>
1685
- </div>
1666
+ >
1667
+ <ng-template kendoActionSheetTemplate>
1668
+ <div class="k-actionsheet-titlebar">
1669
+ <div class="k-actionsheet-titlebar-group">
1670
+ <div class="k-actionsheet-title">
1671
+ @if (adaptiveTitle) {
1672
+ <div class="k-text-center">{{ adaptiveTitle }}</div>
1673
+ }
1674
+ @if (adaptiveSubtitle) {
1675
+ <div class="k-actionsheet-subtitle k-text-center">{{ adaptiveSubtitle }}</div>
1676
+ }
1686
1677
  </div>
1687
- <div class="k-actionsheet-content">
1688
- <ng-container *ngTemplateOutlet="dateTimeTemplate"></ng-container>
1678
+ <div class="k-actionsheet-actions">
1679
+ <button
1680
+ kendoButton
1681
+ type="button"
1682
+ icon="check"
1683
+ [attr.title]="localization.get('adaptiveCloseButtonTitle')"
1684
+ [svgIcon]="checkIcon"
1685
+ fillMode="flat"
1686
+ themeColor="primary"
1687
+ [tabIndex]="-1"
1688
+ size="large"
1689
+ innerCssClass="k-button-icon"
1690
+ (click)="toggleActionSheet(false)">
1691
+ </button>
1689
1692
  </div>
1690
- <div class="k-actions k-actions-stretched k-actions-horizontal k-actionsheet-footer">
1691
- <button kendoButton
1692
- *ngIf="cancelButton"
1693
- class="k-time-cancel"
1694
- type="button"
1695
- (click)="handleCancel()"
1696
- size="large"
1697
- [attr.title]="localization.get('cancelLabel')"
1698
- [attr.aria-label]="localization.get('cancelLabel')"
1699
- >
1700
- {{localization.get('cancel')}}
1701
- </button>
1702
-
1703
- <button kendoButton
1704
- type="button"
1705
- class="k-time-accept"
1706
- (click)="handleAccept()"
1707
- [disabled]="!calendarValue"
1708
- size="large"
1709
- themeColor="primary"
1710
- [attr.title]="localization.get('acceptLabel')"
1711
- [attr.aria-label]="localization.get('acceptLabel')"
1712
- >
1713
- {{localization.get('accept')}}
1714
- </button>
1715
- </div>
1716
- </ng-template>
1693
+ </div>
1694
+ </div>
1695
+ <div class="k-actionsheet-content">
1696
+ <ng-container *ngTemplateOutlet="dateTimeTemplate"></ng-container>
1697
+ </div>
1698
+ <div class="k-actions k-actions-stretched k-actions-horizontal k-actionsheet-footer">
1699
+ @if (cancelButton) {
1700
+ <button kendoButton
1701
+ class="k-time-cancel"
1702
+ type="button"
1703
+ (click)="handleCancel()"
1704
+ size="large"
1705
+ [attr.title]="localization.get('cancelLabel')"
1706
+ [attr.aria-label]="localization.get('cancelLabel')"
1707
+ >
1708
+ {{localization.get('cancel')}}
1709
+ </button>
1710
+ }
1711
+
1712
+ <button kendoButton
1713
+ type="button"
1714
+ class="k-time-accept"
1715
+ (click)="handleAccept()"
1716
+ [disabled]="!calendarValue"
1717
+ size="large"
1718
+ themeColor="primary"
1719
+ [attr.title]="localization.get('acceptLabel')"
1720
+ [attr.aria-label]="localization.get('acceptLabel')"
1721
+ >
1722
+ {{localization.get('accept')}}
1723
+ </button>
1724
+ </div>
1725
+ </ng-template>
1717
1726
  </kendo-actionsheet>
1718
-
1727
+
1719
1728
  <ng-template #dateTimeTemplate>
1720
- <div
1721
- class="k-datetime-wrap k-{{activeTab}}-tab"
1729
+ <div
1730
+ class="k-datetime-wrap k-{{activeTab}}-tab"
1722
1731
  [ngClass]="{
1723
1732
  'k-datetime-wrap-md': !isAdaptive,
1724
1733
  'k-datetime-wrap-lg': isAdaptive
@@ -1727,174 +1736,175 @@ export class DateTimePickerComponent extends MultiTabStop {
1727
1736
  mousedown: preventMouseDown,
1728
1737
  keydown: handleKeyDown
1729
1738
  }"
1730
- [scope]="this"
1739
+ [scope]="this"
1731
1740
  >
1732
- <div class="k-datetime-buttongroup"
1741
+ <div class="k-datetime-buttongroup"
1733
1742
  [kendoEventsOutsideAngular]="{
1734
1743
  focusin: handleFocus,
1735
1744
  focusout: handleBlur
1736
1745
  }"
1737
- [scope]="this"
1738
- >
1739
- <div class="k-button-group k-button-group-solid k-button-group-stretched" role="group">
1740
- <button kendoButton
1741
- type="button"
1742
- class="k-group-start"
1743
- [size]="isAdaptive ? 'large' : size"
1744
- [class.k-selected]="activeTab === 'date'"
1745
- [attr.aria-pressed]="activeTab === 'date' ? 'true' : 'false'"
1746
- [attr.title]="localization.get('dateTabLabel')"
1747
- [attr.aria-label]="localization.get('dateTabLabel')"
1746
+ [scope]="this"
1747
+ >
1748
+ <div class="k-button-group k-button-group-solid k-button-group-stretched" role="group">
1749
+ <button kendoButton
1750
+ type="button"
1751
+ class="k-group-start"
1752
+ [size]="isAdaptive ? 'large' : size"
1753
+ [class.k-selected]="activeTab === 'date'"
1754
+ [attr.aria-pressed]="activeTab === 'date' ? 'true' : 'false'"
1755
+ [attr.title]="localization.get('dateTabLabel')"
1756
+ [attr.aria-label]="localization.get('dateTabLabel')"
1748
1757
  [kendoEventsOutsideAngular]="{
1749
1758
  click: changeActiveTab.bind(this, 'date'),
1750
1759
  'keydown.shift.tab': handleTab
1751
1760
  }"
1752
- [scope]="this"
1753
- >
1754
- {{localization.get('dateTab')}}
1755
- </button>
1756
- <button kendoButton
1757
- type="button"
1758
- class="k-group-end"
1759
- [size]="isAdaptive ? 'large' : size"
1760
- [class.k-selected]="activeTab === 'time'"
1761
- [attr.aria-pressed]="activeTab === 'time' ? 'true' : 'false'"
1762
- [attr.title]="localization.get('timeTabLabel')"
1763
- [attr.aria-label]="localization.get('timeTabLabel')"
1761
+ [scope]="this"
1762
+ >
1763
+ {{localization.get('dateTab')}}
1764
+ </button>
1765
+ <button kendoButton
1766
+ type="button"
1767
+ class="k-group-end"
1768
+ [size]="isAdaptive ? 'large' : size"
1769
+ [class.k-selected]="activeTab === 'time'"
1770
+ [attr.aria-pressed]="activeTab === 'time' ? 'true' : 'false'"
1771
+ [attr.title]="localization.get('timeTabLabel')"
1772
+ [attr.aria-label]="localization.get('timeTabLabel')"
1764
1773
  [kendoEventsOutsideAngular]="{
1765
1774
  click: changeActiveTab.bind(this, 'time'),
1766
1775
  'keydown.tab': handleTab
1767
1776
  }"
1768
- [scope]="this"
1769
- >
1770
- {{localization.get('timeTab')}}
1771
- </button>
1772
- </div>
1773
- </div>
1774
- <div
1775
- #dateTimeSelector
1776
- class="k-datetime-selector"
1777
- [style.transition]="tabSwitchTransition"
1777
+ [scope]="this"
1778
+ >
1779
+ {{localization.get('timeTab')}}
1780
+ </button>
1781
+ </div>
1782
+ </div>
1783
+ <div
1784
+ #dateTimeSelector
1785
+ class="k-datetime-selector"
1786
+ [style.transition]="tabSwitchTransition"
1778
1787
  [kendoEventsOutsideAngular]="{
1779
1788
  transitionend: handleTabChangeTransitionEnd.bind(this, dateTimeSelector)
1780
1789
  }"
1781
- >
1782
- <div class="k-datetime-calendar-wrap">
1783
- <kendo-calendar
1784
- #calendar
1785
- [focusedDate]="focusedDate"
1786
- [size]="isAdaptive ? 'large' : size"
1787
- [(value)]="calendarValue"
1788
- [type]="calendarType"
1789
- [min]="calendarMin"
1790
- [max]="calendarMax"
1791
- [weekDaysFormat]="weekDaysFormat"
1792
- [weekNumber]="weekNumber"
1793
- [navigation]="false"
1794
- [animateNavigation]="animateCalendarNavigation"
1795
- [showOtherMonthDays]="showOtherMonthDays"
1796
- [cellTemplate]="cellTemplate"
1797
- [monthCellTemplate]="monthCellTemplate"
1798
- [yearCellTemplate]="yearCellTemplate"
1799
- [decadeCellTemplate]="decadeCellTemplate"
1800
- [centuryCellTemplate]="centuryCellTemplate"
1801
- [weekNumberTemplate]="weekNumberTemplate"
1802
- [headerTitleTemplate]="headerTitleTemplate"
1803
- [headerTemplate]="headerTemplate"
1804
- [footerTemplate]="footerTemplate"
1805
- [footer]="footer"
1806
- [disabled]="disableCalendar"
1807
- [disabledDates]="disabledDates"
1808
- (valueChange)="handleCalendarValueChange()"
1809
- >
1810
- <kendo-calendar-messages
1811
- [today]="localization.get('today')"
1812
- [prevButtonTitle]="localization.get('prevButtonTitle')"
1813
- [nextButtonTitle]="localization.get('nextButtonTitle')"
1814
- [parentViewButtonTitle]="localization.get('parentViewButtonTitle')"
1815
- >
1816
- </kendo-calendar-messages>
1817
- </kendo-calendar>
1818
- </div>
1819
- <div class="k-datetime-time-wrap">
1820
- <kendo-timeselector
1821
- [ngClass]="{'k-timeselector-lg': isAdaptive}"
1822
- [value]="value"
1823
- [format]="timeSelectorFormat"
1824
- [min]="timeSelectorMin"
1825
- [max]="timeSelectorMax"
1826
- [setButton]="false"
1827
- [cancelButton]="false"
1828
- [steps]="steps"
1829
- [disabled]="disableTimeSelector"
1830
- [isAdaptiveEnabled]="isAdaptiveModeEnabled"
1831
- [isDateTimePicker]="true"
1832
- (tabOutLastPart)="onTabOutLastPart()"
1833
- (tabOutFirstPart)="onTabOutFirstPart()"
1834
- (tabOutNow)="onTabOutNow()"
1835
- >
1836
- <kendo-timeselector-messages
1837
- [acceptLabel]="localization.get('acceptLabel')"
1838
- [accept]="localization.get('accept')"
1839
- [cancelLabel]="localization.get('cancelLabel')"
1840
- [cancel]="localization.get('cancel')"
1841
- [nowLabel]="localization.get('nowLabel')"
1842
- [now]="localization.get('now')"
1843
- [hour]="localization.get('hour')"
1844
- [minute]="localization.get('minute')"
1845
- [second]="localization.get('second')"
1846
- [millisecond]="localization.get('millisecond')"
1847
- [dayperiod]="localization.get('dayperiod')"
1848
- >
1849
- </kendo-timeselector-messages>
1850
- </kendo-timeselector>
1851
- </div>
1852
- </div>
1853
- <div
1854
- *ngIf="!isAdaptive"
1855
- class="k-datetime-footer k-actions k-actions-stretched k-actions-horizontal"
1790
+ >
1791
+ <div class="k-datetime-calendar-wrap">
1792
+ <kendo-calendar
1793
+ #calendar
1794
+ [focusedDate]="focusedDate"
1795
+ [size]="isAdaptive ? 'large' : size"
1796
+ [(value)]="calendarValue"
1797
+ [type]="calendarType"
1798
+ [min]="calendarMin"
1799
+ [max]="calendarMax"
1800
+ [weekDaysFormat]="weekDaysFormat"
1801
+ [weekNumber]="weekNumber"
1802
+ [navigation]="false"
1803
+ [animateNavigation]="animateCalendarNavigation"
1804
+ [showOtherMonthDays]="showOtherMonthDays"
1805
+ [cellTemplate]="cellTemplate"
1806
+ [monthCellTemplate]="monthCellTemplate"
1807
+ [yearCellTemplate]="yearCellTemplate"
1808
+ [decadeCellTemplate]="decadeCellTemplate"
1809
+ [centuryCellTemplate]="centuryCellTemplate"
1810
+ [weekNumberTemplate]="weekNumberTemplate"
1811
+ [headerTitleTemplate]="headerTitleTemplate"
1812
+ [headerTemplate]="headerTemplate"
1813
+ [footerTemplate]="footerTemplate"
1814
+ [footer]="footer"
1815
+ [disabled]="disableCalendar"
1816
+ [disabledDates]="disabledDates"
1817
+ (valueChange)="handleCalendarValueChange()"
1818
+ >
1819
+ <kendo-calendar-messages
1820
+ [today]="localization.get('today')"
1821
+ [prevButtonTitle]="localization.get('prevButtonTitle')"
1822
+ [nextButtonTitle]="localization.get('nextButtonTitle')"
1823
+ [parentViewButtonTitle]="localization.get('parentViewButtonTitle')"
1824
+ >
1825
+ </kendo-calendar-messages>
1826
+ </kendo-calendar>
1827
+ </div>
1828
+ <div class="k-datetime-time-wrap">
1829
+ <kendo-timeselector
1830
+ [ngClass]="{'k-timeselector-lg': isAdaptive}"
1831
+ [value]="value"
1832
+ [format]="timeSelectorFormat"
1833
+ [min]="timeSelectorMin"
1834
+ [max]="timeSelectorMax"
1835
+ [setButton]="false"
1836
+ [cancelButton]="false"
1837
+ [steps]="steps"
1838
+ [disabled]="disableTimeSelector"
1839
+ [isAdaptiveEnabled]="isAdaptiveModeEnabled"
1840
+ [isDateTimePicker]="true"
1841
+ (tabOutLastPart)="onTabOutLastPart()"
1842
+ (tabOutFirstPart)="onTabOutFirstPart()"
1843
+ (tabOutNow)="onTabOutNow()"
1844
+ >
1845
+ <kendo-timeselector-messages
1846
+ [acceptLabel]="localization.get('acceptLabel')"
1847
+ [accept]="localization.get('accept')"
1848
+ [cancelLabel]="localization.get('cancelLabel')"
1849
+ [cancel]="localization.get('cancel')"
1850
+ [nowLabel]="localization.get('nowLabel')"
1851
+ [now]="localization.get('now')"
1852
+ [hour]="localization.get('hour')"
1853
+ [minute]="localization.get('minute')"
1854
+ [second]="localization.get('second')"
1855
+ [millisecond]="localization.get('millisecond')"
1856
+ [dayperiod]="localization.get('dayperiod')"
1857
+ >
1858
+ </kendo-timeselector-messages>
1859
+ </kendo-timeselector>
1860
+ </div>
1861
+ </div>
1862
+ @if (!isAdaptive) {
1863
+ <div
1864
+ class="k-datetime-footer k-actions k-actions-stretched k-actions-horizontal"
1856
1865
  [kendoEventsOutsideAngular]="{
1857
1866
  focusin: handleFocus,
1858
1867
  focusout: handleBlur
1859
1868
  }"
1860
- [scope]="this"
1869
+ [scope]="this"
1861
1870
  >
1862
- <button kendoButton
1863
- type="button"
1864
- class="k-time-accept"
1865
- themeColor="primary"
1866
- [attr.title]="localization.get('acceptLabel')"
1867
- [attr.aria-label]="localization.get('acceptLabel')"
1868
- [disabled]="!calendarValue"
1871
+ <button kendoButton
1872
+ type="button"
1873
+ class="k-time-accept"
1874
+ themeColor="primary"
1875
+ [attr.title]="localization.get('acceptLabel')"
1876
+ [attr.aria-label]="localization.get('acceptLabel')"
1877
+ [disabled]="!calendarValue"
1869
1878
  [kendoEventsOutsideAngular]="{
1870
1879
  click: handleAccept,
1871
1880
  'keydown.tab': handleTab,
1872
1881
  'keydown.shift.tab': handleTab
1873
1882
  }"
1874
- [scope]="this"
1875
- >
1876
- {{localization.get('accept')}}
1877
- </button>
1878
-
1879
- <button kendoButton
1880
- *ngIf="cancelButton"
1881
- type="button"
1882
- class="k-time-cancel"
1883
- [attr.title]="localization.get('cancelLabel')"
1884
- [attr.aria-label]="localization.get('cancelLabel')"
1883
+ [scope]="this"
1884
+ >
1885
+ {{localization.get('accept')}}
1886
+ </button>
1887
+ @if (cancelButton) {
1888
+ <button kendoButton
1889
+ type="button"
1890
+ class="k-time-cancel"
1891
+ [attr.title]="localization.get('cancelLabel')"
1892
+ [attr.aria-label]="localization.get('cancelLabel')"
1885
1893
  [kendoEventsOutsideAngular]="{
1886
1894
  click: handleCancel,
1887
1895
  'keydown.tab': handleTab,
1888
1896
  'keydown.shift.tab': handleTab
1889
1897
  }"
1890
- [scope]="this"
1898
+ [scope]="this"
1891
1899
  >
1892
- {{localization.get('cancel')}}
1893
- </button>
1894
- </div>
1895
- </div>
1900
+ {{localization.get('cancel')}}
1901
+ </button>
1902
+ }
1903
+ </div>
1904
+ }
1905
+ </div>
1896
1906
  </ng-template>
1897
- `, 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: ["actions", "actionsLayout", "overlayClickClose", "title", "subtitle", "items", "cssClass", "cssStyle", "animation", "expanded", "titleId", "initialFocus"], outputs: ["expandedChange", "action", "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: ["closePopup", "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", "tabOutFirstPart", "tabOutNow"], exportAs: ["kendo-timeselector"] }, { kind: "component", type: TimeSelectorCustomMessagesComponent, selector: "kendo-timeselector-messages" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1907
+ `, 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: "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: ["actions", "actionsLayout", "overlayClickClose", "title", "subtitle", "items", "cssClass", "cssStyle", "animation", "expanded", "titleId", "initialFocus"], outputs: ["expandedChange", "action", "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: ["closePopup", "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", "tabOutFirstPart", "tabOutNow"], exportAs: ["kendo-timeselector"] }, { kind: "component", type: TimeSelectorCustomMessagesComponent, selector: "kendo-timeselector-messages" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1898
1908
  }
1899
1909
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DateTimePickerComponent, decorators: [{
1900
1910
  type: Component,
@@ -1914,163 +1924,167 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
1914
1924
  ],
1915
1925
  template: `
1916
1926
  <ng-container
1917
- kendoDateTimePickerLocalizedMessages
1918
-
1919
- i18n-dateTab="kendo.datetimepicker.dateTab|The Date tab text in the datetimepicker popup header"
1920
- dateTab="Date"
1921
-
1922
- i18n-dateTabLabel="kendo.datetimepicker.dateTabLabel|The label for the Date tab in the datetimepicker popup header"
1923
- dateTabLabel="Date tab"
1924
-
1925
- i18n-timeTab="kendo.datetimepicker.timeTab|The Time tab text in the datetimepicker popup header"
1926
- timeTab="Time"
1927
-
1928
- i18n-timeTabLabel="kendo.datetimepicker.timeTabLabel|The label for the Time tab in the datetimepicker popup header"
1929
- timeTabLabel="Time tab"
1930
-
1931
- i18n-toggle="kendo.datetimepicker.toggle|The title of the toggle button in the datetimepicker component"
1932
- toggle="Toggle popup"
1933
-
1934
- i18n-accept="kendo.datetimepicker.accept|The Accept button text in the datetimepicker component"
1935
- accept="Set"
1936
-
1937
- i18n-acceptLabel="kendo.datetimepicker.acceptLabel|The label for the Accept button in the datetimepicker component"
1938
- acceptLabel="Set"
1939
-
1940
- i18n-cancel="kendo.datetimepicker.cancel|The Cancel button text in the datetimepicker component"
1941
- cancel="Cancel"
1942
-
1943
- i18n-cancelLabel="kendo.datetimepicker.cancelLabel|The label for the Cancel button in the datetimepicker component"
1944
- cancelLabel="Cancel"
1945
-
1946
- i18n-now="kendo.datetimepicker.now|The Now button text in the timepicker component"
1947
- now="NOW"
1948
-
1949
- i18n-nowLabel="kendo.datetimepicker.nowLabel|The label for the Now button in the timepicker component"
1950
- nowLabel="Select now"
1951
-
1952
- i18n-today="kendo.datetimepicker.today|The label for the today button in the calendar header"
1953
- today="Today"
1954
-
1955
- i18n-prevButtonTitle="kendo.datetimepicker.prevButtonTitle|The title of the previous button in the Classic calendar"
1956
- prevButtonTitle="Navigate to previous view"
1957
-
1958
- i18n-nextButtonTitle="kendo.datetimepicker.nextButtonTitle|The title of the next button in the Classic calendar"
1959
- nextButtonTitle="Navigate to next view"
1960
-
1961
- i18n-parentViewButtonTitle="kendo.datetimepicker.parentViewButtonTitle|The title of the parent view button in the calendar header"
1962
- parentViewButtonTitle="Navigate to parent view"
1963
-
1964
- i18n-hour="kendo.datetimepicker.hour|The label for the hour part in the timepicker component"
1965
- hour="Hour"
1966
-
1967
- i18n-minute="kendo.datetimepicker.minute|The label for the minute part in the timepicker component"
1968
- minute="Minute"
1969
-
1970
- i18n-second="kendo.datetimepicker.second|The label for the second part in the timepicker component"
1971
- second="Second"
1972
-
1973
- i18n-millisecond="kendo.datetimepicker.millisecond|The label for the millisecond part in the timepicker component"
1974
- millisecond="Millisecond"
1975
-
1976
- i18n-dayperiod="kendo.datetimepicker.dayperiod|The label for the dayperiod part in the timepicker component"
1977
- dayperiod="Dayperiod"
1978
-
1979
- i18n-clearTitle="kendo.datetimepicker.clearTitle|The title of the clear button"
1980
- clearTitle="clear"
1981
-
1982
- i18n-adaptiveCloseButtonTitle="kendo.datetimepicker.adaptiveCloseButtonTitle|The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode"
1983
- adaptiveCloseButtonTitle="Close"
1984
- >
1927
+ kendoDateTimePickerLocalizedMessages
1928
+
1929
+ i18n-dateTab="kendo.datetimepicker.dateTab|The Date tab text in the datetimepicker popup header"
1930
+ dateTab="Date"
1931
+
1932
+ i18n-dateTabLabel="kendo.datetimepicker.dateTabLabel|The label for the Date tab in the datetimepicker popup header"
1933
+ dateTabLabel="Date tab"
1934
+
1935
+ i18n-timeTab="kendo.datetimepicker.timeTab|The Time tab text in the datetimepicker popup header"
1936
+ timeTab="Time"
1937
+
1938
+ i18n-timeTabLabel="kendo.datetimepicker.timeTabLabel|The label for the Time tab in the datetimepicker popup header"
1939
+ timeTabLabel="Time tab"
1940
+
1941
+ i18n-toggle="kendo.datetimepicker.toggle|The title of the toggle button in the datetimepicker component"
1942
+ toggle="Toggle popup"
1943
+
1944
+ i18n-accept="kendo.datetimepicker.accept|The Accept button text in the datetimepicker component"
1945
+ accept="Set"
1946
+
1947
+ i18n-acceptLabel="kendo.datetimepicker.acceptLabel|The label for the Accept button in the datetimepicker component"
1948
+ acceptLabel="Set"
1949
+
1950
+ i18n-cancel="kendo.datetimepicker.cancel|The Cancel button text in the datetimepicker component"
1951
+ cancel="Cancel"
1952
+
1953
+ i18n-cancelLabel="kendo.datetimepicker.cancelLabel|The label for the Cancel button in the datetimepicker component"
1954
+ cancelLabel="Cancel"
1955
+
1956
+ i18n-now="kendo.datetimepicker.now|The Now button text in the timepicker component"
1957
+ now="NOW"
1958
+
1959
+ i18n-nowLabel="kendo.datetimepicker.nowLabel|The label for the Now button in the timepicker component"
1960
+ nowLabel="Select now"
1961
+
1962
+ i18n-today="kendo.datetimepicker.today|The label for the today button in the calendar header"
1963
+ today="Today"
1964
+
1965
+ i18n-prevButtonTitle="kendo.datetimepicker.prevButtonTitle|The title of the previous button in the Classic calendar"
1966
+ prevButtonTitle="Navigate to previous view"
1967
+
1968
+ i18n-nextButtonTitle="kendo.datetimepicker.nextButtonTitle|The title of the next button in the Classic calendar"
1969
+ nextButtonTitle="Navigate to next view"
1970
+
1971
+ i18n-parentViewButtonTitle="kendo.datetimepicker.parentViewButtonTitle|The title of the parent view button in the calendar header"
1972
+ parentViewButtonTitle="Navigate to parent view"
1973
+
1974
+ i18n-hour="kendo.datetimepicker.hour|The label for the hour part in the timepicker component"
1975
+ hour="Hour"
1976
+
1977
+ i18n-minute="kendo.datetimepicker.minute|The label for the minute part in the timepicker component"
1978
+ minute="Minute"
1979
+
1980
+ i18n-second="kendo.datetimepicker.second|The label for the second part in the timepicker component"
1981
+ second="Second"
1982
+
1983
+ i18n-millisecond="kendo.datetimepicker.millisecond|The label for the millisecond part in the timepicker component"
1984
+ millisecond="Millisecond"
1985
+
1986
+ i18n-dayperiod="kendo.datetimepicker.dayperiod|The label for the dayperiod part in the timepicker component"
1987
+ dayperiod="Dayperiod"
1988
+
1989
+ i18n-clearTitle="kendo.datetimepicker.clearTitle|The title of the clear button"
1990
+ clearTitle="clear"
1991
+
1992
+ i18n-adaptiveCloseButtonTitle="kendo.datetimepicker.adaptiveCloseButtonTitle|The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode"
1993
+ adaptiveCloseButtonTitle="Close"
1994
+ >
1985
1995
  </ng-container>
1986
-
1996
+
1987
1997
  <kendo-dateinput
1988
- [value]="value"
1989
- [format]="format"
1990
- [clearButton]="clearButton"
1991
- [twoDigitYearMax]="twoDigitYearMax"
1992
- [min]="min"
1993
- [max]="max"
1994
- [incompleteDateValidation]="incompleteDateValidation"
1995
- [autoCorrectParts]="autoCorrectParts"
1996
- [autoSwitchParts]="autoSwitchParts"
1997
- [autoSwitchKeys]="autoSwitchKeys"
1998
- [enableMouseWheel]="enableMouseWheel"
1999
- [allowCaretMode]="allowCaretMode"
2000
- [autoFill]="autoFill"
2001
- [formatPlaceholder]="formatPlaceholder"
2002
- [placeholder]="placeholder"
2003
- [disabled]="disabled"
2004
- [focusableId]="focusableId"
2005
- [readonly]="readonly || readOnlyInput"
2006
- [role]="'combobox'"
2007
- [ariaReadOnly]="readonly"
2008
- [steps]="steps"
2009
- [tabindex]="tabindex"
2010
- [isRequired]="isControlRequired"
2011
- [title]="adaptiveTitle"
2012
- pickerType="datetimepicker"
2013
- hasPopup="dialog"
2014
- [inputAttributes]="inputAttributes"
2015
- [isPopupOpen]="isOpen"
2016
- (valueChange)="handleInputValueChange($event)"
1998
+ [value]="value"
1999
+ [format]="format"
2000
+ [clearButton]="clearButton"
2001
+ [twoDigitYearMax]="twoDigitYearMax"
2002
+ [min]="min"
2003
+ [max]="max"
2004
+ [incompleteDateValidation]="incompleteDateValidation"
2005
+ [autoCorrectParts]="autoCorrectParts"
2006
+ [autoSwitchParts]="autoSwitchParts"
2007
+ [autoSwitchKeys]="autoSwitchKeys"
2008
+ [enableMouseWheel]="enableMouseWheel"
2009
+ [allowCaretMode]="allowCaretMode"
2010
+ [autoFill]="autoFill"
2011
+ [formatPlaceholder]="formatPlaceholder"
2012
+ [placeholder]="placeholder"
2013
+ [disabled]="disabled"
2014
+ [focusableId]="focusableId"
2015
+ [readonly]="readonly || readOnlyInput"
2016
+ [role]="'combobox'"
2017
+ [ariaReadOnly]="readonly"
2018
+ [steps]="steps"
2019
+ [tabindex]="tabindex"
2020
+ [isRequired]="isControlRequired"
2021
+ [title]="adaptiveTitle"
2022
+ pickerType="datetimepicker"
2023
+ hasPopup="dialog"
2024
+ [inputAttributes]="inputAttributes"
2025
+ [isPopupOpen]="isOpen"
2026
+ (valueChange)="handleInputValueChange($event)"
2017
2027
  [kendoEventsOutsideAngular]="{
2018
2028
  keydown: handleKeyDown
2019
2029
  }"
2020
- [scope]="this"
2021
- fillMode="none"
2022
- rounded="none"
2023
- size="none"
2024
- (click)="handleDateInputClick()"
2025
- >
2026
- <kendo-dateinput-messages
2027
- [clearTitle]="localization.get('clearTitle')"
2030
+ [scope]="this"
2031
+ fillMode="none"
2032
+ rounded="none"
2033
+ size="none"
2034
+ (click)="handleDateInputClick()"
2035
+ >
2036
+ <kendo-dateinput-messages
2037
+ [clearTitle]="localization.get('clearTitle')"
2028
2038
  >
2029
- </kendo-dateinput-messages>
2039
+ </kendo-dateinput-messages>
2030
2040
  </kendo-dateinput>
2031
2041
  <button
2032
- #toggleButton
2033
- type="button"
2034
- class="k-input-button k-button k-icon-button"
2035
- [tabindex]="-1"
2036
- [attr.title]="localization.get('toggle')"
2037
- [attr.aria-label]="localization.get('toggle')"
2038
- [attr.disabled]="disabled ? '' : null"
2042
+ #toggleButton
2043
+ type="button"
2044
+ class="k-input-button k-button k-icon-button"
2045
+ [tabindex]="-1"
2046
+ [attr.title]="localization.get('toggle')"
2047
+ [attr.aria-label]="localization.get('toggle')"
2048
+ [attr.disabled]="disabled ? '' : null"
2039
2049
  [kendoEventsOutsideAngular]="{
2040
2050
  mousedown: preventMouseDown,
2041
2051
  click: handleIconClick
2042
2052
  }"
2043
- [scope]="this"
2044
- >
2053
+ [scope]="this"
2054
+ >
2055
+ @if (activeTab === 'date') {
2045
2056
  <kendo-icon-wrapper
2046
- *ngIf="activeTab === 'date'"
2047
- name="calendar"
2048
- [svgIcon]="calendarIcon"
2049
- innerCssClass="k-button-icon"
2050
- >
2057
+ name="calendar"
2058
+ [svgIcon]="calendarIcon"
2059
+ innerCssClass="k-button-icon"
2060
+ >
2051
2061
  </kendo-icon-wrapper>
2062
+ }
2063
+ @if (activeTab === 'time') {
2052
2064
  <kendo-icon-wrapper
2053
- *ngIf="activeTab === 'time'"
2054
- name="clock"
2055
- [svgIcon]="clockIcon"
2056
- innerCssClass="k-button-icon"
2057
- >
2065
+ name="clock"
2066
+ [svgIcon]="clockIcon"
2067
+ innerCssClass="k-button-icon"
2068
+ >
2058
2069
  </kendo-icon-wrapper>
2070
+ }
2059
2071
  </button>
2060
-
2072
+
2061
2073
  <ng-container #container></ng-container>
2062
-
2074
+
2063
2075
  <ng-template #popupTemplate>
2064
- <ng-container *ngTemplateOutlet="dateTimeTemplate"></ng-container>
2076
+ <ng-container *ngTemplateOutlet="dateTimeTemplate"></ng-container>
2065
2077
  </ng-template>
2066
-
2067
- <kendo-resize-sensor *ngIf="isAdaptiveModeEnabled" (resize)="onResize()"></kendo-resize-sensor>
2068
-
2078
+
2079
+ @if (isAdaptiveModeEnabled) {
2080
+ <kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
2081
+ }
2082
+
2069
2083
  <kendo-actionsheet
2070
- #actionSheet
2071
- (overlayClick)="toggleActionSheet(false)"
2072
- (collapse)="handleActionSheetCollapse()"
2073
- [titleId]="calendar?.headerId"
2084
+ #actionSheet
2085
+ (overlayClick)="toggleActionSheet(false)"
2086
+ (collapse)="handleActionSheetCollapse()"
2087
+ [titleId]="calendar?.headerId"
2074
2088
  [cssClass]="{
2075
2089
  'k-adaptive-actionsheet': true,
2076
2090
  'k-actionsheet-fullscreen': windowSize === 'small',
@@ -2079,66 +2093,71 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
2079
2093
  [cssStyle]="{
2080
2094
  height: windowSize === 'small' ? '100vh' : '60vh'
2081
2095
  }"
2082
- >
2083
- <ng-template kendoActionSheetTemplate>
2084
- <div class="k-actionsheet-titlebar">
2085
- <div class="k-actionsheet-titlebar-group">
2086
- <div class="k-actionsheet-title">
2087
- <div class="k-text-center" *ngIf="adaptiveTitle">{{ adaptiveTitle }}</div>
2088
- <div class="k-actionsheet-subtitle k-text-center" *ngIf="adaptiveSubtitle">{{ adaptiveSubtitle }}</div>
2089
- </div>
2090
- <div class="k-actionsheet-actions">
2091
- <button
2092
- kendoButton
2093
- type="button"
2094
- icon="check"
2095
- [attr.title]="localization.get('adaptiveCloseButtonTitle')"
2096
- [svgIcon]="checkIcon"
2097
- fillMode="flat"
2098
- themeColor="primary"
2099
- [tabIndex]="-1"
2100
- size="large"
2101
- innerCssClass="k-button-icon"
2102
- (click)="toggleActionSheet(false)">
2103
- </button>
2104
- </div>
2105
- </div>
2096
+ >
2097
+ <ng-template kendoActionSheetTemplate>
2098
+ <div class="k-actionsheet-titlebar">
2099
+ <div class="k-actionsheet-titlebar-group">
2100
+ <div class="k-actionsheet-title">
2101
+ @if (adaptiveTitle) {
2102
+ <div class="k-text-center">{{ adaptiveTitle }}</div>
2103
+ }
2104
+ @if (adaptiveSubtitle) {
2105
+ <div class="k-actionsheet-subtitle k-text-center">{{ adaptiveSubtitle }}</div>
2106
+ }
2106
2107
  </div>
2107
- <div class="k-actionsheet-content">
2108
- <ng-container *ngTemplateOutlet="dateTimeTemplate"></ng-container>
2108
+ <div class="k-actionsheet-actions">
2109
+ <button
2110
+ kendoButton
2111
+ type="button"
2112
+ icon="check"
2113
+ [attr.title]="localization.get('adaptiveCloseButtonTitle')"
2114
+ [svgIcon]="checkIcon"
2115
+ fillMode="flat"
2116
+ themeColor="primary"
2117
+ [tabIndex]="-1"
2118
+ size="large"
2119
+ innerCssClass="k-button-icon"
2120
+ (click)="toggleActionSheet(false)">
2121
+ </button>
2109
2122
  </div>
2110
- <div class="k-actions k-actions-stretched k-actions-horizontal k-actionsheet-footer">
2111
- <button kendoButton
2112
- *ngIf="cancelButton"
2113
- class="k-time-cancel"
2114
- type="button"
2115
- (click)="handleCancel()"
2116
- size="large"
2117
- [attr.title]="localization.get('cancelLabel')"
2118
- [attr.aria-label]="localization.get('cancelLabel')"
2119
- >
2120
- {{localization.get('cancel')}}
2121
- </button>
2122
-
2123
- <button kendoButton
2124
- type="button"
2125
- class="k-time-accept"
2126
- (click)="handleAccept()"
2127
- [disabled]="!calendarValue"
2128
- size="large"
2129
- themeColor="primary"
2130
- [attr.title]="localization.get('acceptLabel')"
2131
- [attr.aria-label]="localization.get('acceptLabel')"
2132
- >
2133
- {{localization.get('accept')}}
2134
- </button>
2135
- </div>
2136
- </ng-template>
2123
+ </div>
2124
+ </div>
2125
+ <div class="k-actionsheet-content">
2126
+ <ng-container *ngTemplateOutlet="dateTimeTemplate"></ng-container>
2127
+ </div>
2128
+ <div class="k-actions k-actions-stretched k-actions-horizontal k-actionsheet-footer">
2129
+ @if (cancelButton) {
2130
+ <button kendoButton
2131
+ class="k-time-cancel"
2132
+ type="button"
2133
+ (click)="handleCancel()"
2134
+ size="large"
2135
+ [attr.title]="localization.get('cancelLabel')"
2136
+ [attr.aria-label]="localization.get('cancelLabel')"
2137
+ >
2138
+ {{localization.get('cancel')}}
2139
+ </button>
2140
+ }
2141
+
2142
+ <button kendoButton
2143
+ type="button"
2144
+ class="k-time-accept"
2145
+ (click)="handleAccept()"
2146
+ [disabled]="!calendarValue"
2147
+ size="large"
2148
+ themeColor="primary"
2149
+ [attr.title]="localization.get('acceptLabel')"
2150
+ [attr.aria-label]="localization.get('acceptLabel')"
2151
+ >
2152
+ {{localization.get('accept')}}
2153
+ </button>
2154
+ </div>
2155
+ </ng-template>
2137
2156
  </kendo-actionsheet>
2138
-
2157
+
2139
2158
  <ng-template #dateTimeTemplate>
2140
- <div
2141
- class="k-datetime-wrap k-{{activeTab}}-tab"
2159
+ <div
2160
+ class="k-datetime-wrap k-{{activeTab}}-tab"
2142
2161
  [ngClass]="{
2143
2162
  'k-datetime-wrap-md': !isAdaptive,
2144
2163
  'k-datetime-wrap-lg': isAdaptive
@@ -2147,176 +2166,177 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
2147
2166
  mousedown: preventMouseDown,
2148
2167
  keydown: handleKeyDown
2149
2168
  }"
2150
- [scope]="this"
2169
+ [scope]="this"
2151
2170
  >
2152
- <div class="k-datetime-buttongroup"
2171
+ <div class="k-datetime-buttongroup"
2153
2172
  [kendoEventsOutsideAngular]="{
2154
2173
  focusin: handleFocus,
2155
2174
  focusout: handleBlur
2156
2175
  }"
2157
- [scope]="this"
2158
- >
2159
- <div class="k-button-group k-button-group-solid k-button-group-stretched" role="group">
2160
- <button kendoButton
2161
- type="button"
2162
- class="k-group-start"
2163
- [size]="isAdaptive ? 'large' : size"
2164
- [class.k-selected]="activeTab === 'date'"
2165
- [attr.aria-pressed]="activeTab === 'date' ? 'true' : 'false'"
2166
- [attr.title]="localization.get('dateTabLabel')"
2167
- [attr.aria-label]="localization.get('dateTabLabel')"
2176
+ [scope]="this"
2177
+ >
2178
+ <div class="k-button-group k-button-group-solid k-button-group-stretched" role="group">
2179
+ <button kendoButton
2180
+ type="button"
2181
+ class="k-group-start"
2182
+ [size]="isAdaptive ? 'large' : size"
2183
+ [class.k-selected]="activeTab === 'date'"
2184
+ [attr.aria-pressed]="activeTab === 'date' ? 'true' : 'false'"
2185
+ [attr.title]="localization.get('dateTabLabel')"
2186
+ [attr.aria-label]="localization.get('dateTabLabel')"
2168
2187
  [kendoEventsOutsideAngular]="{
2169
2188
  click: changeActiveTab.bind(this, 'date'),
2170
2189
  'keydown.shift.tab': handleTab
2171
2190
  }"
2172
- [scope]="this"
2173
- >
2174
- {{localization.get('dateTab')}}
2175
- </button>
2176
- <button kendoButton
2177
- type="button"
2178
- class="k-group-end"
2179
- [size]="isAdaptive ? 'large' : size"
2180
- [class.k-selected]="activeTab === 'time'"
2181
- [attr.aria-pressed]="activeTab === 'time' ? 'true' : 'false'"
2182
- [attr.title]="localization.get('timeTabLabel')"
2183
- [attr.aria-label]="localization.get('timeTabLabel')"
2191
+ [scope]="this"
2192
+ >
2193
+ {{localization.get('dateTab')}}
2194
+ </button>
2195
+ <button kendoButton
2196
+ type="button"
2197
+ class="k-group-end"
2198
+ [size]="isAdaptive ? 'large' : size"
2199
+ [class.k-selected]="activeTab === 'time'"
2200
+ [attr.aria-pressed]="activeTab === 'time' ? 'true' : 'false'"
2201
+ [attr.title]="localization.get('timeTabLabel')"
2202
+ [attr.aria-label]="localization.get('timeTabLabel')"
2184
2203
  [kendoEventsOutsideAngular]="{
2185
2204
  click: changeActiveTab.bind(this, 'time'),
2186
2205
  'keydown.tab': handleTab
2187
2206
  }"
2188
- [scope]="this"
2189
- >
2190
- {{localization.get('timeTab')}}
2191
- </button>
2192
- </div>
2193
- </div>
2194
- <div
2195
- #dateTimeSelector
2196
- class="k-datetime-selector"
2197
- [style.transition]="tabSwitchTransition"
2207
+ [scope]="this"
2208
+ >
2209
+ {{localization.get('timeTab')}}
2210
+ </button>
2211
+ </div>
2212
+ </div>
2213
+ <div
2214
+ #dateTimeSelector
2215
+ class="k-datetime-selector"
2216
+ [style.transition]="tabSwitchTransition"
2198
2217
  [kendoEventsOutsideAngular]="{
2199
2218
  transitionend: handleTabChangeTransitionEnd.bind(this, dateTimeSelector)
2200
2219
  }"
2201
- >
2202
- <div class="k-datetime-calendar-wrap">
2203
- <kendo-calendar
2204
- #calendar
2205
- [focusedDate]="focusedDate"
2206
- [size]="isAdaptive ? 'large' : size"
2207
- [(value)]="calendarValue"
2208
- [type]="calendarType"
2209
- [min]="calendarMin"
2210
- [max]="calendarMax"
2211
- [weekDaysFormat]="weekDaysFormat"
2212
- [weekNumber]="weekNumber"
2213
- [navigation]="false"
2214
- [animateNavigation]="animateCalendarNavigation"
2215
- [showOtherMonthDays]="showOtherMonthDays"
2216
- [cellTemplate]="cellTemplate"
2217
- [monthCellTemplate]="monthCellTemplate"
2218
- [yearCellTemplate]="yearCellTemplate"
2219
- [decadeCellTemplate]="decadeCellTemplate"
2220
- [centuryCellTemplate]="centuryCellTemplate"
2221
- [weekNumberTemplate]="weekNumberTemplate"
2222
- [headerTitleTemplate]="headerTitleTemplate"
2223
- [headerTemplate]="headerTemplate"
2224
- [footerTemplate]="footerTemplate"
2225
- [footer]="footer"
2226
- [disabled]="disableCalendar"
2227
- [disabledDates]="disabledDates"
2228
- (valueChange)="handleCalendarValueChange()"
2229
- >
2230
- <kendo-calendar-messages
2231
- [today]="localization.get('today')"
2232
- [prevButtonTitle]="localization.get('prevButtonTitle')"
2233
- [nextButtonTitle]="localization.get('nextButtonTitle')"
2234
- [parentViewButtonTitle]="localization.get('parentViewButtonTitle')"
2235
- >
2236
- </kendo-calendar-messages>
2237
- </kendo-calendar>
2238
- </div>
2239
- <div class="k-datetime-time-wrap">
2240
- <kendo-timeselector
2241
- [ngClass]="{'k-timeselector-lg': isAdaptive}"
2242
- [value]="value"
2243
- [format]="timeSelectorFormat"
2244
- [min]="timeSelectorMin"
2245
- [max]="timeSelectorMax"
2246
- [setButton]="false"
2247
- [cancelButton]="false"
2248
- [steps]="steps"
2249
- [disabled]="disableTimeSelector"
2250
- [isAdaptiveEnabled]="isAdaptiveModeEnabled"
2251
- [isDateTimePicker]="true"
2252
- (tabOutLastPart)="onTabOutLastPart()"
2253
- (tabOutFirstPart)="onTabOutFirstPart()"
2254
- (tabOutNow)="onTabOutNow()"
2255
- >
2256
- <kendo-timeselector-messages
2257
- [acceptLabel]="localization.get('acceptLabel')"
2258
- [accept]="localization.get('accept')"
2259
- [cancelLabel]="localization.get('cancelLabel')"
2260
- [cancel]="localization.get('cancel')"
2261
- [nowLabel]="localization.get('nowLabel')"
2262
- [now]="localization.get('now')"
2263
- [hour]="localization.get('hour')"
2264
- [minute]="localization.get('minute')"
2265
- [second]="localization.get('second')"
2266
- [millisecond]="localization.get('millisecond')"
2267
- [dayperiod]="localization.get('dayperiod')"
2268
- >
2269
- </kendo-timeselector-messages>
2270
- </kendo-timeselector>
2271
- </div>
2272
- </div>
2273
- <div
2274
- *ngIf="!isAdaptive"
2275
- class="k-datetime-footer k-actions k-actions-stretched k-actions-horizontal"
2220
+ >
2221
+ <div class="k-datetime-calendar-wrap">
2222
+ <kendo-calendar
2223
+ #calendar
2224
+ [focusedDate]="focusedDate"
2225
+ [size]="isAdaptive ? 'large' : size"
2226
+ [(value)]="calendarValue"
2227
+ [type]="calendarType"
2228
+ [min]="calendarMin"
2229
+ [max]="calendarMax"
2230
+ [weekDaysFormat]="weekDaysFormat"
2231
+ [weekNumber]="weekNumber"
2232
+ [navigation]="false"
2233
+ [animateNavigation]="animateCalendarNavigation"
2234
+ [showOtherMonthDays]="showOtherMonthDays"
2235
+ [cellTemplate]="cellTemplate"
2236
+ [monthCellTemplate]="monthCellTemplate"
2237
+ [yearCellTemplate]="yearCellTemplate"
2238
+ [decadeCellTemplate]="decadeCellTemplate"
2239
+ [centuryCellTemplate]="centuryCellTemplate"
2240
+ [weekNumberTemplate]="weekNumberTemplate"
2241
+ [headerTitleTemplate]="headerTitleTemplate"
2242
+ [headerTemplate]="headerTemplate"
2243
+ [footerTemplate]="footerTemplate"
2244
+ [footer]="footer"
2245
+ [disabled]="disableCalendar"
2246
+ [disabledDates]="disabledDates"
2247
+ (valueChange)="handleCalendarValueChange()"
2248
+ >
2249
+ <kendo-calendar-messages
2250
+ [today]="localization.get('today')"
2251
+ [prevButtonTitle]="localization.get('prevButtonTitle')"
2252
+ [nextButtonTitle]="localization.get('nextButtonTitle')"
2253
+ [parentViewButtonTitle]="localization.get('parentViewButtonTitle')"
2254
+ >
2255
+ </kendo-calendar-messages>
2256
+ </kendo-calendar>
2257
+ </div>
2258
+ <div class="k-datetime-time-wrap">
2259
+ <kendo-timeselector
2260
+ [ngClass]="{'k-timeselector-lg': isAdaptive}"
2261
+ [value]="value"
2262
+ [format]="timeSelectorFormat"
2263
+ [min]="timeSelectorMin"
2264
+ [max]="timeSelectorMax"
2265
+ [setButton]="false"
2266
+ [cancelButton]="false"
2267
+ [steps]="steps"
2268
+ [disabled]="disableTimeSelector"
2269
+ [isAdaptiveEnabled]="isAdaptiveModeEnabled"
2270
+ [isDateTimePicker]="true"
2271
+ (tabOutLastPart)="onTabOutLastPart()"
2272
+ (tabOutFirstPart)="onTabOutFirstPart()"
2273
+ (tabOutNow)="onTabOutNow()"
2274
+ >
2275
+ <kendo-timeselector-messages
2276
+ [acceptLabel]="localization.get('acceptLabel')"
2277
+ [accept]="localization.get('accept')"
2278
+ [cancelLabel]="localization.get('cancelLabel')"
2279
+ [cancel]="localization.get('cancel')"
2280
+ [nowLabel]="localization.get('nowLabel')"
2281
+ [now]="localization.get('now')"
2282
+ [hour]="localization.get('hour')"
2283
+ [minute]="localization.get('minute')"
2284
+ [second]="localization.get('second')"
2285
+ [millisecond]="localization.get('millisecond')"
2286
+ [dayperiod]="localization.get('dayperiod')"
2287
+ >
2288
+ </kendo-timeselector-messages>
2289
+ </kendo-timeselector>
2290
+ </div>
2291
+ </div>
2292
+ @if (!isAdaptive) {
2293
+ <div
2294
+ class="k-datetime-footer k-actions k-actions-stretched k-actions-horizontal"
2276
2295
  [kendoEventsOutsideAngular]="{
2277
2296
  focusin: handleFocus,
2278
2297
  focusout: handleBlur
2279
2298
  }"
2280
- [scope]="this"
2299
+ [scope]="this"
2281
2300
  >
2282
- <button kendoButton
2283
- type="button"
2284
- class="k-time-accept"
2285
- themeColor="primary"
2286
- [attr.title]="localization.get('acceptLabel')"
2287
- [attr.aria-label]="localization.get('acceptLabel')"
2288
- [disabled]="!calendarValue"
2301
+ <button kendoButton
2302
+ type="button"
2303
+ class="k-time-accept"
2304
+ themeColor="primary"
2305
+ [attr.title]="localization.get('acceptLabel')"
2306
+ [attr.aria-label]="localization.get('acceptLabel')"
2307
+ [disabled]="!calendarValue"
2289
2308
  [kendoEventsOutsideAngular]="{
2290
2309
  click: handleAccept,
2291
2310
  'keydown.tab': handleTab,
2292
2311
  'keydown.shift.tab': handleTab
2293
2312
  }"
2294
- [scope]="this"
2295
- >
2296
- {{localization.get('accept')}}
2297
- </button>
2298
-
2299
- <button kendoButton
2300
- *ngIf="cancelButton"
2301
- type="button"
2302
- class="k-time-cancel"
2303
- [attr.title]="localization.get('cancelLabel')"
2304
- [attr.aria-label]="localization.get('cancelLabel')"
2313
+ [scope]="this"
2314
+ >
2315
+ {{localization.get('accept')}}
2316
+ </button>
2317
+ @if (cancelButton) {
2318
+ <button kendoButton
2319
+ type="button"
2320
+ class="k-time-cancel"
2321
+ [attr.title]="localization.get('cancelLabel')"
2322
+ [attr.aria-label]="localization.get('cancelLabel')"
2305
2323
  [kendoEventsOutsideAngular]="{
2306
2324
  click: handleCancel,
2307
2325
  'keydown.tab': handleTab,
2308
2326
  'keydown.shift.tab': handleTab
2309
2327
  }"
2310
- [scope]="this"
2328
+ [scope]="this"
2311
2329
  >
2312
- {{localization.get('cancel')}}
2313
- </button>
2314
- </div>
2315
- </div>
2330
+ {{localization.get('cancel')}}
2331
+ </button>
2332
+ }
2333
+ </div>
2334
+ }
2335
+ </div>
2316
2336
  </ng-template>
2317
- `,
2337
+ `,
2318
2338
  standalone: true,
2319
- imports: [LocalizedMessagesDirective, DateInputComponent, EventsOutsideAngularDirective, DateInputCustomMessagesComponent, NgIf, IconWrapperComponent, NgTemplateOutlet, ResizeSensorComponent, ActionSheetComponent, ActionSheetTemplateDirective, ButtonComponent, NgClass, CalendarComponent, CalendarCustomMessagesComponent, TimeSelectorComponent, TimeSelectorCustomMessagesComponent]
2339
+ imports: [LocalizedMessagesDirective, DateInputComponent, EventsOutsideAngularDirective, DateInputCustomMessagesComponent, IconWrapperComponent, NgTemplateOutlet, ResizeSensorComponent, ActionSheetComponent, ActionSheetTemplateDirective, ButtonComponent, NgClass, CalendarComponent, CalendarCustomMessagesComponent, TimeSelectorComponent, TimeSelectorCustomMessagesComponent]
2320
2340
  }]
2321
2341
  }], ctorParameters: () => [{ type: i1.PopupService }, { type: i2.IntlService }, { type: i0.ChangeDetectorRef }, { type: i3.PickerService }, { type: i0.NgZone }, { type: i0.ElementRef }, { type: i4.LocalizationService }, { type: i5.DisabledDatesService }, { type: i0.Renderer2 }, { type: i0.Injector }, { type: i6.AdaptiveService }], propDecorators: { hostClasses: [{
2322
2342
  type: HostBinding,