@progress/kendo-angular-dateinputs 25.1.0-develop.2 → 25.1.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.
- package/fesm2022/progress-kendo-angular-dateinputs.mjs +1669 -546
- package/index.d.ts +695 -244
- package/package-metadata.mjs +2 -2
- package/package.json +11 -11
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import * as i0 from '@angular/core';
|
|
6
|
-
import { Injectable, EventEmitter, Input, Directive, isDevMode, Output, Component, HostBinding, HostListener, ChangeDetectionStrategy, forwardRef, ElementRef, ViewChild, ContentChild, InjectionToken, Inject, NgZone, Optional, ViewContainerRef, ViewChildren,
|
|
7
|
-
import { NG_VALUE_ACCESSOR, NG_VALIDATORS, NgControl } from '@angular/forms';
|
|
6
|
+
import { Injectable, EventEmitter, Input, Directive, isDevMode, Output, Component, HostBinding, HostListener, ChangeDetectionStrategy, signal, forwardRef, ElementRef, ViewChild, ContentChild, InjectionToken, Inject, NgZone, Optional, ViewContainerRef, ViewChildren, TemplateRef, ContentChildren, NgModule } from '@angular/core';
|
|
7
|
+
import { NG_VALUE_ACCESSOR, NG_VALIDATORS, NgControl, TouchedChangeEvent } from '@angular/forms';
|
|
8
8
|
import * as i1$1 from '@progress/kendo-angular-l10n';
|
|
9
9
|
import { ComponentMessages, LocalizationService, L10N_PREFIX, RTL } from '@progress/kendo-angular-l10n';
|
|
10
10
|
import { cloneDate, MS_PER_HOUR, MS_PER_MINUTE, addDays, getDate, isEqual, lastDecadeOfCentury, firstDecadeOfCentury, addCenturies, addDecades, lastYearOfDecade, firstYearOfDecade, createDate, lastMonthOfYear, lastDayOfMonth, durationInCenturies, addYears, durationInDecades, firstDayOfMonth, addMonths, addWeeks, dayOfWeek, durationInMonths, firstMonthOfYear, durationInYears, weekInYear } from '@progress/kendo-date-math';
|
|
@@ -36,8 +36,8 @@ const packageMetadata = {
|
|
|
36
36
|
productName: 'Kendo UI for Angular',
|
|
37
37
|
productCode: 'KENDOUIANGULAR',
|
|
38
38
|
productCodes: ['KENDOUIANGULAR'],
|
|
39
|
-
publishDate:
|
|
40
|
-
version: '25.1.0-develop.
|
|
39
|
+
publishDate: 1788250699,
|
|
40
|
+
version: '25.1.0-develop.21',
|
|
41
41
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
42
42
|
};
|
|
43
43
|
|
|
@@ -3581,25 +3581,56 @@ class Messages extends ComponentMessages {
|
|
|
3581
3581
|
/**
|
|
3582
3582
|
* The **Today** button text in the header of the MultiViewCalendar.
|
|
3583
3583
|
*/
|
|
3584
|
-
today
|
|
3584
|
+
set today(value) {
|
|
3585
|
+
this._today.set(value);
|
|
3586
|
+
}
|
|
3587
|
+
get today() {
|
|
3588
|
+
return this._today();
|
|
3589
|
+
}
|
|
3585
3590
|
/**
|
|
3586
3591
|
* The title of the **Prev** button in the header of the MultiViewCalendar.
|
|
3587
3592
|
*/
|
|
3588
|
-
prevButtonTitle
|
|
3593
|
+
set prevButtonTitle(value) {
|
|
3594
|
+
this._prevButtonTitle.set(value);
|
|
3595
|
+
}
|
|
3596
|
+
get prevButtonTitle() {
|
|
3597
|
+
return this._prevButtonTitle();
|
|
3598
|
+
}
|
|
3589
3599
|
/**
|
|
3590
3600
|
* The title of the **Next** button in the header of the MultiViewCalendar.
|
|
3591
3601
|
*/
|
|
3592
|
-
nextButtonTitle
|
|
3602
|
+
set nextButtonTitle(value) {
|
|
3603
|
+
this._nextButtonTitle.set(value);
|
|
3604
|
+
}
|
|
3605
|
+
get nextButtonTitle() {
|
|
3606
|
+
return this._nextButtonTitle();
|
|
3607
|
+
}
|
|
3593
3608
|
/**
|
|
3594
|
-
* The
|
|
3609
|
+
* The label of the week number column in the Calendar.
|
|
3595
3610
|
*/
|
|
3596
|
-
|
|
3611
|
+
set weekNumberLabel(value) {
|
|
3612
|
+
this._weekNumberLabel.set(value);
|
|
3613
|
+
}
|
|
3614
|
+
;
|
|
3615
|
+
get weekNumberLabel() {
|
|
3616
|
+
return this._weekNumberLabel();
|
|
3617
|
+
}
|
|
3597
3618
|
/**
|
|
3598
|
-
* The
|
|
3619
|
+
* The title of the **Parent View** button in the header of the MultiViewCalendar.
|
|
3599
3620
|
*/
|
|
3600
|
-
|
|
3621
|
+
set parentViewButtonTitle(value) {
|
|
3622
|
+
this._parentViewButtonTitle.set(value);
|
|
3623
|
+
}
|
|
3624
|
+
get parentViewButtonTitle() {
|
|
3625
|
+
return this._parentViewButtonTitle();
|
|
3626
|
+
}
|
|
3627
|
+
_today = signal(undefined, ...(ngDevMode ? [{ debugName: "_today" }] : []));
|
|
3628
|
+
_prevButtonTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_prevButtonTitle" }] : []));
|
|
3629
|
+
_nextButtonTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_nextButtonTitle" }] : []));
|
|
3630
|
+
_parentViewButtonTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_parentViewButtonTitle" }] : []));
|
|
3631
|
+
_weekNumberLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_weekNumberLabel" }] : []));
|
|
3601
3632
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: Messages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
3602
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.27", type: Messages, isStandalone: true, selector: "kendo-multiview-calendar-messages-base", inputs: { today: "today", prevButtonTitle: "prevButtonTitle", nextButtonTitle: "nextButtonTitle",
|
|
3633
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.27", type: Messages, isStandalone: true, selector: "kendo-multiview-calendar-messages-base", inputs: { today: "today", prevButtonTitle: "prevButtonTitle", nextButtonTitle: "nextButtonTitle", weekNumberLabel: "weekNumberLabel", parentViewButtonTitle: "parentViewButtonTitle" }, usesInheritance: true, ngImport: i0 });
|
|
3603
3634
|
}
|
|
3604
3635
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: Messages, decorators: [{
|
|
3605
3636
|
type: Directive,
|
|
@@ -3612,10 +3643,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
3612
3643
|
type: Input
|
|
3613
3644
|
}], nextButtonTitle: [{
|
|
3614
3645
|
type: Input
|
|
3615
|
-
}], parentViewButtonTitle: [{
|
|
3616
|
-
type: Input
|
|
3617
3646
|
}], weekNumberLabel: [{
|
|
3618
3647
|
type: Input
|
|
3648
|
+
}], parentViewButtonTitle: [{
|
|
3649
|
+
type: Input
|
|
3619
3650
|
}] } });
|
|
3620
3651
|
|
|
3621
3652
|
/**
|
|
@@ -6759,25 +6790,57 @@ class CalendarMessages extends ComponentMessages {
|
|
|
6759
6790
|
/**
|
|
6760
6791
|
* The **Today** button text in the header of the Calendar.
|
|
6761
6792
|
*/
|
|
6762
|
-
today
|
|
6793
|
+
set today(value) {
|
|
6794
|
+
this._today.set(value);
|
|
6795
|
+
}
|
|
6796
|
+
get today() {
|
|
6797
|
+
return this._today();
|
|
6798
|
+
}
|
|
6763
6799
|
/**
|
|
6764
6800
|
* The title of the **Prev** button in the header of the Classic Calendar.
|
|
6765
6801
|
*/
|
|
6766
|
-
prevButtonTitle
|
|
6802
|
+
set prevButtonTitle(value) {
|
|
6803
|
+
this._prevButtonTitle.set(value);
|
|
6804
|
+
}
|
|
6805
|
+
get prevButtonTitle() {
|
|
6806
|
+
return this._prevButtonTitle();
|
|
6807
|
+
}
|
|
6767
6808
|
/**
|
|
6768
6809
|
* The title of the **Next** button in the header of the Classic Calendar.
|
|
6769
6810
|
*/
|
|
6770
|
-
nextButtonTitle
|
|
6811
|
+
set nextButtonTitle(value) {
|
|
6812
|
+
this._nextButtonTitle.set(value);
|
|
6813
|
+
}
|
|
6814
|
+
;
|
|
6815
|
+
get nextButtonTitle() {
|
|
6816
|
+
return this._nextButtonTitle();
|
|
6817
|
+
}
|
|
6771
6818
|
/**
|
|
6772
|
-
* The
|
|
6819
|
+
* The label of the week number column in the Calendar.
|
|
6773
6820
|
*/
|
|
6774
|
-
|
|
6821
|
+
set weekNumberLabel(value) {
|
|
6822
|
+
this._weekNumberLabel.set(value);
|
|
6823
|
+
}
|
|
6824
|
+
;
|
|
6825
|
+
get weekNumberLabel() {
|
|
6826
|
+
return this._weekNumberLabel();
|
|
6827
|
+
}
|
|
6775
6828
|
/**
|
|
6776
|
-
* The
|
|
6829
|
+
* The title of the **Parent View** button in the header of the Calendar.
|
|
6777
6830
|
*/
|
|
6778
|
-
|
|
6831
|
+
set parentViewButtonTitle(value) {
|
|
6832
|
+
this._parentViewButtonTitle.set(value);
|
|
6833
|
+
}
|
|
6834
|
+
get parentViewButtonTitle() {
|
|
6835
|
+
return this._parentViewButtonTitle();
|
|
6836
|
+
}
|
|
6837
|
+
_today = signal(undefined, ...(ngDevMode ? [{ debugName: "_today" }] : []));
|
|
6838
|
+
_prevButtonTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_prevButtonTitle" }] : []));
|
|
6839
|
+
_nextButtonTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_nextButtonTitle" }] : []));
|
|
6840
|
+
_parentViewButtonTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_parentViewButtonTitle" }] : []));
|
|
6841
|
+
_weekNumberLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_weekNumberLabel" }] : []));
|
|
6779
6842
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: CalendarMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
6780
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.27", type: CalendarMessages, isStandalone: true, selector: "kendo-calendar-messages-base", inputs: { today: "today", prevButtonTitle: "prevButtonTitle", nextButtonTitle: "nextButtonTitle",
|
|
6843
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.27", type: CalendarMessages, isStandalone: true, selector: "kendo-calendar-messages-base", inputs: { today: "today", prevButtonTitle: "prevButtonTitle", nextButtonTitle: "nextButtonTitle", weekNumberLabel: "weekNumberLabel", parentViewButtonTitle: "parentViewButtonTitle" }, usesInheritance: true, ngImport: i0 });
|
|
6781
6844
|
}
|
|
6782
6845
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: CalendarMessages, decorators: [{
|
|
6783
6846
|
type: Directive,
|
|
@@ -6790,10 +6853,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
6790
6853
|
type: Input
|
|
6791
6854
|
}], nextButtonTitle: [{
|
|
6792
6855
|
type: Input
|
|
6793
|
-
}], parentViewButtonTitle: [{
|
|
6794
|
-
type: Input
|
|
6795
6856
|
}], weekNumberLabel: [{
|
|
6796
6857
|
type: Input
|
|
6858
|
+
}], parentViewButtonTitle: [{
|
|
6859
|
+
type: Input
|
|
6797
6860
|
}] } });
|
|
6798
6861
|
|
|
6799
6862
|
/**
|
|
@@ -6884,19 +6947,23 @@ class CalendarComponent {
|
|
|
6884
6947
|
* Shows days that fall outside the current month and the default values per Calendar type are false for infinite and true for classic ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/calendar/view-options#displaying-other-month-days)).
|
|
6885
6948
|
*/
|
|
6886
6949
|
set showOtherMonthDays(_showOtherMonthDays) {
|
|
6887
|
-
this._showOtherMonthDays
|
|
6950
|
+
this._showOtherMonthDays.set(_showOtherMonthDays);
|
|
6888
6951
|
}
|
|
6889
6952
|
get showOtherMonthDays() {
|
|
6890
|
-
if (this._showOtherMonthDays === undefined) {
|
|
6953
|
+
if (this._showOtherMonthDays() === undefined) {
|
|
6891
6954
|
return this.type === 'classic';
|
|
6892
6955
|
}
|
|
6893
|
-
return this._showOtherMonthDays;
|
|
6956
|
+
return this._showOtherMonthDays();
|
|
6894
6957
|
}
|
|
6895
|
-
_showOtherMonthDays;
|
|
6896
6958
|
/**
|
|
6897
6959
|
* @hidden
|
|
6898
6960
|
*/
|
|
6899
|
-
id
|
|
6961
|
+
set id(id) {
|
|
6962
|
+
this._id.set(id);
|
|
6963
|
+
}
|
|
6964
|
+
get id() {
|
|
6965
|
+
return this._id();
|
|
6966
|
+
}
|
|
6900
6967
|
/**
|
|
6901
6968
|
* @hidden
|
|
6902
6969
|
*/
|
|
@@ -6910,25 +6977,25 @@ class CalendarComponent {
|
|
|
6910
6977
|
* If the Calendar is outside the `min` or `max` range, the component normalizes the defined `focusedDate`.
|
|
6911
6978
|
*/
|
|
6912
6979
|
set focusedDate(focusedDate) {
|
|
6913
|
-
if (this.activeViewDate && !isEqual(this._focusedDate, focusedDate)) {
|
|
6980
|
+
if (this.activeViewDate() && !isEqual(this._focusedDate(), focusedDate)) {
|
|
6914
6981
|
const service = this.bus.service(this.activeViewEnum);
|
|
6915
|
-
const lastDayInPeriod = service.lastDayOfPeriod(this.activeViewDate);
|
|
6916
|
-
const isFocusedDateInRange = service.isInRange(focusedDate, this.activeViewDate, lastDayInPeriod);
|
|
6982
|
+
const lastDayInPeriod = service.lastDayOfPeriod(this.activeViewDate());
|
|
6983
|
+
const isFocusedDateInRange = service.isInRange(focusedDate, this.activeViewDate(), lastDayInPeriod);
|
|
6917
6984
|
if (!isFocusedDateInRange) {
|
|
6918
6985
|
this.emitNavigate(focusedDate);
|
|
6919
6986
|
}
|
|
6920
6987
|
}
|
|
6921
|
-
this._focusedDate
|
|
6988
|
+
this._focusedDate.set(focusedDate || getToday());
|
|
6922
6989
|
this.setAriaActivedescendant();
|
|
6923
6990
|
}
|
|
6924
6991
|
get focusedDate() {
|
|
6925
|
-
if (this._focusedDate > this.max) {
|
|
6992
|
+
if (this._focusedDate() > this.max) {
|
|
6926
6993
|
return this.max;
|
|
6927
6994
|
}
|
|
6928
|
-
if (this._focusedDate < this.min) {
|
|
6995
|
+
if (this._focusedDate() < this.min) {
|
|
6929
6996
|
return this.min;
|
|
6930
6997
|
}
|
|
6931
|
-
return this._focusedDate;
|
|
6998
|
+
return this._focusedDate();
|
|
6932
6999
|
}
|
|
6933
7000
|
/**
|
|
6934
7001
|
* @hidden
|
|
@@ -6943,10 +7010,10 @@ class CalendarComponent {
|
|
|
6943
7010
|
* @default 1900-1-1
|
|
6944
7011
|
*/
|
|
6945
7012
|
set min(min) {
|
|
6946
|
-
this._min
|
|
7013
|
+
this._min.set(min || new Date(MIN_DATE));
|
|
6947
7014
|
}
|
|
6948
7015
|
get min() {
|
|
6949
|
-
return this._min;
|
|
7016
|
+
return this._min();
|
|
6950
7017
|
}
|
|
6951
7018
|
/**
|
|
6952
7019
|
* Specifies the maximum allowed date value
|
|
@@ -6955,49 +7022,68 @@ class CalendarComponent {
|
|
|
6955
7022
|
* @default 2099-12-31
|
|
6956
7023
|
*/
|
|
6957
7024
|
set max(max) {
|
|
6958
|
-
this._max
|
|
7025
|
+
this._max.set(max || new Date(MAX_DATE));
|
|
6959
7026
|
}
|
|
6960
7027
|
get max() {
|
|
6961
|
-
return this._max;
|
|
7028
|
+
return this._max();
|
|
6962
7029
|
}
|
|
6963
7030
|
/**
|
|
6964
7031
|
* Determines whether the built-in `min` or `max` validators are enforced when validating a form.
|
|
6965
7032
|
*
|
|
6966
7033
|
* @default false
|
|
6967
7034
|
*/
|
|
6968
|
-
rangeValidation
|
|
7035
|
+
set rangeValidation(value) {
|
|
7036
|
+
this._rangeValidation.set(value);
|
|
7037
|
+
}
|
|
7038
|
+
get rangeValidation() {
|
|
7039
|
+
return this._rangeValidation();
|
|
7040
|
+
}
|
|
6969
7041
|
/**
|
|
6970
7042
|
* Specifies the format of the displayed week day names.
|
|
6971
7043
|
*
|
|
6972
7044
|
* @default 'short'
|
|
6973
7045
|
*/
|
|
6974
|
-
weekDaysFormat
|
|
7046
|
+
set weekDaysFormat(value) {
|
|
7047
|
+
this._weekDaysFormat.set(value);
|
|
7048
|
+
}
|
|
7049
|
+
get weekDaysFormat() {
|
|
7050
|
+
return this._weekDaysFormat();
|
|
7051
|
+
}
|
|
6975
7052
|
/**
|
|
6976
7053
|
* Toggles the visibility of the footer.
|
|
6977
7054
|
*
|
|
6978
7055
|
* @default false
|
|
6979
7056
|
*/
|
|
6980
|
-
footer
|
|
7057
|
+
set footer(value) {
|
|
7058
|
+
this._footer.set(value);
|
|
7059
|
+
}
|
|
7060
|
+
get footer() {
|
|
7061
|
+
return this._footer();
|
|
7062
|
+
}
|
|
6981
7063
|
/**
|
|
6982
7064
|
* Sets the Calendar selection mode
|
|
6983
7065
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/calendar/selection-modes)).
|
|
6984
7066
|
* @default 'single'
|
|
6985
7067
|
*/
|
|
6986
7068
|
set selection(_selection) {
|
|
6987
|
-
this._selection
|
|
7069
|
+
this._selection.set(_selection);
|
|
6988
7070
|
this.selectionSetter = true;
|
|
6989
7071
|
}
|
|
6990
7072
|
get selection() {
|
|
6991
|
-
return this._selection;
|
|
7073
|
+
return this._selection();
|
|
6992
7074
|
}
|
|
6993
|
-
_selection = 'single';
|
|
6994
7075
|
/**
|
|
6995
7076
|
* Allows reverse selection when using `range` selection.
|
|
6996
7077
|
* If `allowReverse` is set to `true`, the component skips the validation of whether the start date is after the end date.
|
|
6997
7078
|
*
|
|
6998
7079
|
* @default false
|
|
6999
7080
|
*/
|
|
7000
|
-
allowReverse
|
|
7081
|
+
set allowReverse(value) {
|
|
7082
|
+
this._allowReverse.set(value);
|
|
7083
|
+
}
|
|
7084
|
+
get allowReverse() {
|
|
7085
|
+
return this._allowReverse();
|
|
7086
|
+
}
|
|
7001
7087
|
/**
|
|
7002
7088
|
* Sets or gets the `value` property of the Calendar and defines the selected value of the component.
|
|
7003
7089
|
*
|
|
@@ -7005,10 +7091,10 @@ class CalendarComponent {
|
|
|
7005
7091
|
*/
|
|
7006
7092
|
set value(candidate) {
|
|
7007
7093
|
this.valueSetter = true;
|
|
7008
|
-
this._value
|
|
7094
|
+
this._value.set(candidate);
|
|
7009
7095
|
}
|
|
7010
7096
|
get value() {
|
|
7011
|
-
return this._value;
|
|
7097
|
+
return this._value();
|
|
7012
7098
|
}
|
|
7013
7099
|
/**
|
|
7014
7100
|
* Sets or gets the `disabled` property of the Calendar and
|
|
@@ -7016,7 +7102,12 @@ class CalendarComponent {
|
|
|
7016
7102
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/calendar/disabled-state)).
|
|
7017
7103
|
* To learn how to disable the component in reactive forms, refer to the article on [Forms Support](https://www.telerik.com/kendo-angular-ui/components/dateinputs/calendar/forms#managing-the-calendar-disabled-state-in-reactive-forms).
|
|
7018
7104
|
*/
|
|
7019
|
-
disabled
|
|
7105
|
+
set disabled(value) {
|
|
7106
|
+
this._disabled.set(value);
|
|
7107
|
+
}
|
|
7108
|
+
get disabled() {
|
|
7109
|
+
return this._disabled();
|
|
7110
|
+
}
|
|
7020
7111
|
/**
|
|
7021
7112
|
* Specifies the `tabindex` property of the Calendar. Based on the
|
|
7022
7113
|
* [HTML `tabindex`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex) behavior,
|
|
@@ -7024,15 +7115,20 @@ class CalendarComponent {
|
|
|
7024
7115
|
*
|
|
7025
7116
|
* @default 0
|
|
7026
7117
|
*/
|
|
7027
|
-
tabindex
|
|
7118
|
+
set tabindex(value) {
|
|
7119
|
+
this._tabindex.set(value);
|
|
7120
|
+
}
|
|
7121
|
+
get tabindex() {
|
|
7122
|
+
return this._tabindex();
|
|
7123
|
+
}
|
|
7028
7124
|
/**
|
|
7029
7125
|
* @hidden
|
|
7030
7126
|
*/
|
|
7031
7127
|
set tabIndex(tabIndex) {
|
|
7032
|
-
this.
|
|
7128
|
+
this._tabindex.set(tabIndex);
|
|
7033
7129
|
}
|
|
7034
7130
|
get tabIndex() {
|
|
7035
|
-
return this.
|
|
7131
|
+
return this._tabindex();
|
|
7036
7132
|
}
|
|
7037
7133
|
/**
|
|
7038
7134
|
* Specifies the dates of the Calendar that will be disabled
|
|
@@ -7040,10 +7136,10 @@ class CalendarComponent {
|
|
|
7040
7136
|
*/
|
|
7041
7137
|
set disabledDates(value) {
|
|
7042
7138
|
this.disabledDatesService.initialize(value);
|
|
7043
|
-
this._disabledDates
|
|
7139
|
+
this._disabledDates.set(value);
|
|
7044
7140
|
}
|
|
7045
7141
|
get disabledDates() {
|
|
7046
|
-
return this._disabledDates;
|
|
7142
|
+
return this._disabledDates();
|
|
7047
7143
|
}
|
|
7048
7144
|
/**
|
|
7049
7145
|
* Determines whether the navigation side-bar will be displayed
|
|
@@ -7052,7 +7148,12 @@ class CalendarComponent {
|
|
|
7052
7148
|
*
|
|
7053
7149
|
* @default true
|
|
7054
7150
|
*/
|
|
7055
|
-
navigation
|
|
7151
|
+
set navigation(value) {
|
|
7152
|
+
this._navigation.set(value);
|
|
7153
|
+
}
|
|
7154
|
+
get navigation() {
|
|
7155
|
+
return this._navigation();
|
|
7156
|
+
}
|
|
7056
7157
|
/**
|
|
7057
7158
|
* Defines the active view that the Calendar initially renders
|
|
7058
7159
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/calendar/view-options)).
|
|
@@ -7060,21 +7161,36 @@ class CalendarComponent {
|
|
|
7060
7161
|
*
|
|
7061
7162
|
* @default 'month'
|
|
7062
7163
|
*/
|
|
7063
|
-
activeView
|
|
7164
|
+
set activeView(value) {
|
|
7165
|
+
this._activeView.set(value);
|
|
7166
|
+
}
|
|
7167
|
+
get activeView() {
|
|
7168
|
+
return this._activeView();
|
|
7169
|
+
}
|
|
7064
7170
|
/**
|
|
7065
7171
|
* Defines the bottommost view to which the user can navigate
|
|
7066
7172
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/calendar/view-depth)).
|
|
7067
7173
|
*
|
|
7068
7174
|
* @default 'month'
|
|
7069
7175
|
*/
|
|
7070
|
-
bottomView
|
|
7176
|
+
set bottomView(value) {
|
|
7177
|
+
this._bottomView.set(value);
|
|
7178
|
+
}
|
|
7179
|
+
get bottomView() {
|
|
7180
|
+
return this._bottomView();
|
|
7181
|
+
}
|
|
7071
7182
|
/**
|
|
7072
7183
|
* Defines the topmost view to which the user can navigate
|
|
7073
7184
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/calendar/view-depth)).
|
|
7074
7185
|
*
|
|
7075
7186
|
* @default 'century'
|
|
7076
7187
|
*/
|
|
7077
|
-
topView
|
|
7188
|
+
set topView(value) {
|
|
7189
|
+
this._topView.set(value);
|
|
7190
|
+
}
|
|
7191
|
+
get topView() {
|
|
7192
|
+
return this._topView();
|
|
7193
|
+
}
|
|
7078
7194
|
/**
|
|
7079
7195
|
* Specifies the Calendar type.
|
|
7080
7196
|
*
|
|
@@ -7085,10 +7201,10 @@ class CalendarComponent {
|
|
|
7085
7201
|
if (type === 'infinite') {
|
|
7086
7202
|
this.renderer.addClass(this.element.nativeElement, `k-calendar-${type}`);
|
|
7087
7203
|
}
|
|
7088
|
-
this._type
|
|
7204
|
+
this._type.set(type);
|
|
7089
7205
|
}
|
|
7090
7206
|
get type() {
|
|
7091
|
-
return this._type;
|
|
7207
|
+
return this._type();
|
|
7092
7208
|
}
|
|
7093
7209
|
/**
|
|
7094
7210
|
* Determines whether to enable animation when navigating to previous/next view.
|
|
@@ -7098,14 +7214,24 @@ class CalendarComponent {
|
|
|
7098
7214
|
*
|
|
7099
7215
|
* @default false
|
|
7100
7216
|
*/
|
|
7101
|
-
animateNavigation
|
|
7217
|
+
set animateNavigation(value) {
|
|
7218
|
+
this._animateNavigation.set(value);
|
|
7219
|
+
}
|
|
7220
|
+
get animateNavigation() {
|
|
7221
|
+
return this._animateNavigation();
|
|
7222
|
+
}
|
|
7102
7223
|
/**
|
|
7103
7224
|
* Determines whether to display a week number column in the `month` view
|
|
7104
7225
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/calendar/week-num-column)).
|
|
7105
7226
|
*
|
|
7106
7227
|
* @default false
|
|
7107
7228
|
*/
|
|
7108
|
-
weekNumber
|
|
7229
|
+
set weekNumber(value) {
|
|
7230
|
+
this._weekNumber.set(value);
|
|
7231
|
+
}
|
|
7232
|
+
get weekNumber() {
|
|
7233
|
+
return this._weekNumber();
|
|
7234
|
+
}
|
|
7109
7235
|
/**
|
|
7110
7236
|
* @hidden
|
|
7111
7237
|
*/
|
|
@@ -7161,10 +7287,10 @@ class CalendarComponent {
|
|
|
7161
7287
|
* Takes precedence over nested templates in the KendoCalendar tag.
|
|
7162
7288
|
*/
|
|
7163
7289
|
set cellTemplateRef(template) {
|
|
7164
|
-
this._cellTemplateRef
|
|
7290
|
+
this._cellTemplateRef.set(template);
|
|
7165
7291
|
}
|
|
7166
7292
|
get cellTemplateRef() {
|
|
7167
|
-
return this._cellTemplateRef || this.cellTemplate;
|
|
7293
|
+
return this._cellTemplateRef() || this.cellTemplate;
|
|
7168
7294
|
}
|
|
7169
7295
|
/**
|
|
7170
7296
|
* @hidden
|
|
@@ -7180,10 +7306,10 @@ class CalendarComponent {
|
|
|
7180
7306
|
* Takes precedence over nested templates in the KendoCalendar tag.
|
|
7181
7307
|
*/
|
|
7182
7308
|
set monthCellTemplateRef(template) {
|
|
7183
|
-
this._monthCellTemplateRef
|
|
7309
|
+
this._monthCellTemplateRef.set(template);
|
|
7184
7310
|
}
|
|
7185
7311
|
get monthCellTemplateRef() {
|
|
7186
|
-
return this._monthCellTemplateRef || this.monthCellTemplate;
|
|
7312
|
+
return this._monthCellTemplateRef() || this.monthCellTemplate;
|
|
7187
7313
|
}
|
|
7188
7314
|
/**
|
|
7189
7315
|
* @hidden
|
|
@@ -7199,10 +7325,10 @@ class CalendarComponent {
|
|
|
7199
7325
|
* Takes precedence over nested templates in the KendoCalendar tag.
|
|
7200
7326
|
*/
|
|
7201
7327
|
set yearCellTemplateRef(template) {
|
|
7202
|
-
this._yearCellTemplateRef
|
|
7328
|
+
this._yearCellTemplateRef.set(template);
|
|
7203
7329
|
}
|
|
7204
7330
|
get yearCellTemplateRef() {
|
|
7205
|
-
return this._yearCellTemplateRef || this.yearCellTemplate;
|
|
7331
|
+
return this._yearCellTemplateRef() || this.yearCellTemplate;
|
|
7206
7332
|
}
|
|
7207
7333
|
/**
|
|
7208
7334
|
* @hidden
|
|
@@ -7218,10 +7344,10 @@ class CalendarComponent {
|
|
|
7218
7344
|
* Takes precedence over nested templates in the KendoCalendar tag.
|
|
7219
7345
|
*/
|
|
7220
7346
|
set decadeCellTemplateRef(template) {
|
|
7221
|
-
this._decadeCellTemplateRef
|
|
7347
|
+
this._decadeCellTemplateRef.set(template);
|
|
7222
7348
|
}
|
|
7223
7349
|
get decadeCellTemplateRef() {
|
|
7224
|
-
return this._decadeCellTemplateRef || this.decadeCellTemplate;
|
|
7350
|
+
return this._decadeCellTemplateRef() || this.decadeCellTemplate;
|
|
7225
7351
|
}
|
|
7226
7352
|
/**
|
|
7227
7353
|
* @hidden
|
|
@@ -7237,10 +7363,10 @@ class CalendarComponent {
|
|
|
7237
7363
|
* Takes precedence over nested templates in the KendoCalendar tag.
|
|
7238
7364
|
*/
|
|
7239
7365
|
set centuryCellTemplateRef(template) {
|
|
7240
|
-
this._centuryCellTemplateRef
|
|
7366
|
+
this._centuryCellTemplateRef.set(template);
|
|
7241
7367
|
}
|
|
7242
7368
|
get centuryCellTemplateRef() {
|
|
7243
|
-
return this._centuryCellTemplateRef || this.centuryCellTemplate;
|
|
7369
|
+
return this._centuryCellTemplateRef() || this.centuryCellTemplate;
|
|
7244
7370
|
}
|
|
7245
7371
|
/**
|
|
7246
7372
|
* @hidden
|
|
@@ -7256,10 +7382,10 @@ class CalendarComponent {
|
|
|
7256
7382
|
* Takes precedence over nested templates in the KendoCalendar tag.
|
|
7257
7383
|
*/
|
|
7258
7384
|
set weekNumberTemplateRef(template) {
|
|
7259
|
-
this._weekNumberTemplateRef
|
|
7385
|
+
this._weekNumberTemplateRef.set(template);
|
|
7260
7386
|
}
|
|
7261
7387
|
get weekNumberTemplateRef() {
|
|
7262
|
-
return this._weekNumberTemplateRef || this.weekNumberTemplate;
|
|
7388
|
+
return this._weekNumberTemplateRef() || this.weekNumberTemplate;
|
|
7263
7389
|
}
|
|
7264
7390
|
/**
|
|
7265
7391
|
* @hidden
|
|
@@ -7289,10 +7415,10 @@ class CalendarComponent {
|
|
|
7289
7415
|
* Takes precedence over nested templates in the KendoCalendar tag.
|
|
7290
7416
|
*/
|
|
7291
7417
|
set headerTitleTemplateRef(template) {
|
|
7292
|
-
this._headerTitleTemplateRef
|
|
7418
|
+
this._headerTitleTemplateRef.set(template);
|
|
7293
7419
|
}
|
|
7294
7420
|
get headerTitleTemplateRef() {
|
|
7295
|
-
return this._headerTitleTemplateRef || this.headerTitleTemplate;
|
|
7421
|
+
return this._headerTitleTemplateRef() || this.headerTitleTemplate;
|
|
7296
7422
|
}
|
|
7297
7423
|
/**
|
|
7298
7424
|
* @hidden
|
|
@@ -7301,10 +7427,10 @@ class CalendarComponent {
|
|
|
7301
7427
|
* Takes precedence over nested templates in the KendoCalendar tag.
|
|
7302
7428
|
*/
|
|
7303
7429
|
set headerTemplateRef(template) {
|
|
7304
|
-
this._headerTemplateRef
|
|
7430
|
+
this._headerTemplateRef.set(template);
|
|
7305
7431
|
}
|
|
7306
7432
|
get headerTemplateRef() {
|
|
7307
|
-
return this._headerTemplateRef || this.headerTemplate;
|
|
7433
|
+
return this._headerTemplateRef() || this.headerTemplate;
|
|
7308
7434
|
}
|
|
7309
7435
|
/**
|
|
7310
7436
|
* @hidden
|
|
@@ -7312,10 +7438,10 @@ class CalendarComponent {
|
|
|
7312
7438
|
* Defines the template for the footer.
|
|
7313
7439
|
*/
|
|
7314
7440
|
set footerTemplateRef(template) {
|
|
7315
|
-
this._footerTemplateRef
|
|
7441
|
+
this._footerTemplateRef.set(template);
|
|
7316
7442
|
}
|
|
7317
7443
|
get footerTemplateRef() {
|
|
7318
|
-
return this._footerTemplateRef || this.footerTemplate;
|
|
7444
|
+
return this._footerTemplateRef() || this.footerTemplate;
|
|
7319
7445
|
}
|
|
7320
7446
|
/**
|
|
7321
7447
|
* @hidden
|
|
@@ -7331,10 +7457,10 @@ class CalendarComponent {
|
|
|
7331
7457
|
* Takes precedence over nested templates in the KendoCalendar tag.
|
|
7332
7458
|
*/
|
|
7333
7459
|
set navigationItemTemplateRef(template) {
|
|
7334
|
-
this._navigationItemTemplateRef
|
|
7460
|
+
this._navigationItemTemplateRef.set(template);
|
|
7335
7461
|
}
|
|
7336
7462
|
get navigationItemTemplateRef() {
|
|
7337
|
-
return this._navigationItemTemplateRef || this.navigationItemTemplate;
|
|
7463
|
+
return this._navigationItemTemplateRef() || this.navigationItemTemplate;
|
|
7338
7464
|
}
|
|
7339
7465
|
/**
|
|
7340
7466
|
* @hidden
|
|
@@ -7350,12 +7476,11 @@ class CalendarComponent {
|
|
|
7350
7476
|
* @default undefined
|
|
7351
7477
|
*/
|
|
7352
7478
|
set size(size) {
|
|
7353
|
-
this._size
|
|
7479
|
+
this._size.set(size);
|
|
7354
7480
|
}
|
|
7355
7481
|
get size() {
|
|
7356
|
-
return this._size;
|
|
7482
|
+
return this._size();
|
|
7357
7483
|
}
|
|
7358
|
-
_size = undefined;
|
|
7359
7484
|
/**
|
|
7360
7485
|
* Specifies which end of the defined selection range should be marked as active.
|
|
7361
7486
|
* Value will be ignored if the selection range is undefined. If range selection is used then the default value is 'start'.
|
|
@@ -7363,25 +7488,28 @@ class CalendarComponent {
|
|
|
7363
7488
|
* @default 'start'
|
|
7364
7489
|
*/
|
|
7365
7490
|
set activeRangeEnd(_activeRangeEnd) {
|
|
7366
|
-
this._activeRangeEnd
|
|
7491
|
+
this._activeRangeEnd.set(_activeRangeEnd);
|
|
7367
7492
|
}
|
|
7368
7493
|
get activeRangeEnd() {
|
|
7369
|
-
return this._activeRangeEnd;
|
|
7494
|
+
return this._activeRangeEnd();
|
|
7370
7495
|
}
|
|
7371
|
-
_activeRangeEnd = 'start';
|
|
7372
7496
|
navigationView;
|
|
7373
7497
|
monthView;
|
|
7374
7498
|
multiViewCalendar;
|
|
7375
|
-
isActive
|
|
7499
|
+
get isActive() { return this._isActive(); }
|
|
7376
7500
|
cellUID = guid();
|
|
7377
|
-
selectionRange
|
|
7378
|
-
selectedDates
|
|
7379
|
-
rangePivot;
|
|
7380
|
-
_disabledDates;
|
|
7381
|
-
_min = new Date(MIN_DATE);
|
|
7382
|
-
_max = new Date(MAX_DATE);
|
|
7383
|
-
_focusedDate = getToday();
|
|
7384
|
-
_value;
|
|
7501
|
+
get selectionRange() { return this._selectionRange(); }
|
|
7502
|
+
get selectedDates() { return this._selectedDates(); }
|
|
7503
|
+
get rangePivot() { return this._rangePivot(); }
|
|
7504
|
+
_disabledDates = signal(undefined, ...(ngDevMode ? [{ debugName: "_disabledDates" }] : []));
|
|
7505
|
+
_min = signal(new Date(MIN_DATE), ...(ngDevMode ? [{ debugName: "_min" }] : []));
|
|
7506
|
+
_max = signal(new Date(MAX_DATE), ...(ngDevMode ? [{ debugName: "_max" }] : []));
|
|
7507
|
+
_focusedDate = signal(getToday(), ...(ngDevMode ? [{ debugName: "_focusedDate" }] : []));
|
|
7508
|
+
_value = signal(undefined, ...(ngDevMode ? [{ debugName: "_value" }] : []));
|
|
7509
|
+
_showOtherMonthDays = signal(undefined, ...(ngDevMode ? [{ debugName: "_showOtherMonthDays" }] : []));
|
|
7510
|
+
_selection = signal('single', ...(ngDevMode ? [{ debugName: "_selection" }] : []));
|
|
7511
|
+
_size = signal(undefined, ...(ngDevMode ? [{ debugName: "_size" }] : []));
|
|
7512
|
+
_activeRangeEnd = signal('start', ...(ngDevMode ? [{ debugName: "_activeRangeEnd" }] : []));
|
|
7385
7513
|
onControlChange = noop$2;
|
|
7386
7514
|
onControlTouched = noop$2;
|
|
7387
7515
|
onValidatorChange = noop$2;
|
|
@@ -7392,17 +7520,35 @@ class CalendarComponent {
|
|
|
7392
7520
|
selectionSetter = false;
|
|
7393
7521
|
syncNavigation = true;
|
|
7394
7522
|
viewChangeSubscription;
|
|
7395
|
-
_type = 'infinite';
|
|
7396
|
-
_cellTemplateRef;
|
|
7397
|
-
_monthCellTemplateRef;
|
|
7398
|
-
_yearCellTemplateRef;
|
|
7399
|
-
_decadeCellTemplateRef;
|
|
7400
|
-
_centuryCellTemplateRef;
|
|
7401
|
-
_weekNumberTemplateRef;
|
|
7402
|
-
_headerTitleTemplateRef;
|
|
7403
|
-
_headerTemplateRef;
|
|
7404
|
-
_footerTemplateRef;
|
|
7405
|
-
_navigationItemTemplateRef;
|
|
7523
|
+
_type = signal('infinite', ...(ngDevMode ? [{ debugName: "_type" }] : []));
|
|
7524
|
+
_cellTemplateRef = signal(undefined, ...(ngDevMode ? [{ debugName: "_cellTemplateRef" }] : []));
|
|
7525
|
+
_monthCellTemplateRef = signal(undefined, ...(ngDevMode ? [{ debugName: "_monthCellTemplateRef" }] : []));
|
|
7526
|
+
_yearCellTemplateRef = signal(undefined, ...(ngDevMode ? [{ debugName: "_yearCellTemplateRef" }] : []));
|
|
7527
|
+
_decadeCellTemplateRef = signal(undefined, ...(ngDevMode ? [{ debugName: "_decadeCellTemplateRef" }] : []));
|
|
7528
|
+
_centuryCellTemplateRef = signal(undefined, ...(ngDevMode ? [{ debugName: "_centuryCellTemplateRef" }] : []));
|
|
7529
|
+
_weekNumberTemplateRef = signal(undefined, ...(ngDevMode ? [{ debugName: "_weekNumberTemplateRef" }] : []));
|
|
7530
|
+
_headerTitleTemplateRef = signal(undefined, ...(ngDevMode ? [{ debugName: "_headerTitleTemplateRef" }] : []));
|
|
7531
|
+
_headerTemplateRef = signal(undefined, ...(ngDevMode ? [{ debugName: "_headerTemplateRef" }] : []));
|
|
7532
|
+
_footerTemplateRef = signal(undefined, ...(ngDevMode ? [{ debugName: "_footerTemplateRef" }] : []));
|
|
7533
|
+
_navigationItemTemplateRef = signal(undefined, ...(ngDevMode ? [{ debugName: "_navigationItemTemplateRef" }] : []));
|
|
7534
|
+
_id = signal('', ...(ngDevMode ? [{ debugName: "_id" }] : []));
|
|
7535
|
+
_rangeValidation = signal(false, ...(ngDevMode ? [{ debugName: "_rangeValidation" }] : []));
|
|
7536
|
+
_weekDaysFormat = signal('short', ...(ngDevMode ? [{ debugName: "_weekDaysFormat" }] : []));
|
|
7537
|
+
_footer = signal(false, ...(ngDevMode ? [{ debugName: "_footer" }] : []));
|
|
7538
|
+
_allowReverse = signal(false, ...(ngDevMode ? [{ debugName: "_allowReverse" }] : []));
|
|
7539
|
+
_disabled = signal(false, ...(ngDevMode ? [{ debugName: "_disabled" }] : []));
|
|
7540
|
+
_tabindex = signal(0, ...(ngDevMode ? [{ debugName: "_tabindex" }] : []));
|
|
7541
|
+
_navigation = signal(true, ...(ngDevMode ? [{ debugName: "_navigation" }] : []));
|
|
7542
|
+
_activeView = signal(CalendarViewEnum[CalendarViewEnum.month], ...(ngDevMode ? [{ debugName: "_activeView" }] : []));
|
|
7543
|
+
_bottomView = signal(CalendarViewEnum[CalendarViewEnum.month], ...(ngDevMode ? [{ debugName: "_bottomView" }] : []));
|
|
7544
|
+
_topView = signal(CalendarViewEnum[CalendarViewEnum.century], ...(ngDevMode ? [{ debugName: "_topView" }] : []));
|
|
7545
|
+
_animateNavigation = signal(false, ...(ngDevMode ? [{ debugName: "_animateNavigation" }] : []));
|
|
7546
|
+
_weekNumber = signal(false, ...(ngDevMode ? [{ debugName: "_weekNumber" }] : []));
|
|
7547
|
+
_isActive = signal(false, ...(ngDevMode ? [{ debugName: "_isActive" }] : []));
|
|
7548
|
+
_selectionRange = signal({ start: null, end: null }, ...(ngDevMode ? [{ debugName: "_selectionRange" }] : []));
|
|
7549
|
+
_selectedDates = signal([], ...(ngDevMode ? [{ debugName: "_selectedDates" }] : []));
|
|
7550
|
+
_rangePivot = signal(undefined, ...(ngDevMode ? [{ debugName: "_rangePivot" }] : []));
|
|
7551
|
+
activeViewDate = signal(undefined, ...(ngDevMode ? [{ debugName: "activeViewDate" }] : []));
|
|
7406
7552
|
get activeViewEnum() {
|
|
7407
7553
|
const activeView = CalendarViewEnum[this.activeView];
|
|
7408
7554
|
return activeView < this.bottomViewEnum ? this.bottomViewEnum : activeView;
|
|
@@ -7427,7 +7573,7 @@ class CalendarComponent {
|
|
|
7427
7573
|
resolvedPromise = Promise.resolve(null);
|
|
7428
7574
|
destroyed = false;
|
|
7429
7575
|
localizationChangeSubscription;
|
|
7430
|
-
|
|
7576
|
+
controlEventsSubscription;
|
|
7431
7577
|
currentlyFocusedElement;
|
|
7432
7578
|
canHover = false;
|
|
7433
7579
|
constructor(bus, dom, element, navigator, renderer, cdr, ngZone, injector, scrollSyncService, disabledDatesService, localization, selectionService, pickerService) {
|
|
@@ -7504,6 +7650,14 @@ class CalendarComponent {
|
|
|
7504
7650
|
this.renderer.removeClass(element.nativeElement, getSizeClass('calendar', this.size));
|
|
7505
7651
|
this.renderer.addClass(element.nativeElement, getSizeClass('calendar', this.size));
|
|
7506
7652
|
}
|
|
7653
|
+
const control = this.control?.control;
|
|
7654
|
+
if (control && control.events) {
|
|
7655
|
+
this.controlEventsSubscription = control.events.subscribe(e => {
|
|
7656
|
+
if (e instanceof TouchedChangeEvent) {
|
|
7657
|
+
this.cdr.markForCheck();
|
|
7658
|
+
}
|
|
7659
|
+
});
|
|
7660
|
+
}
|
|
7507
7661
|
}
|
|
7508
7662
|
ngAfterViewChecked() {
|
|
7509
7663
|
if (!this.syncNavigation) {
|
|
@@ -7527,6 +7681,9 @@ class CalendarComponent {
|
|
|
7527
7681
|
if (this.localizationChangeSubscription) {
|
|
7528
7682
|
this.localizationChangeSubscription.unsubscribe();
|
|
7529
7683
|
}
|
|
7684
|
+
if (this.controlEventsSubscription) {
|
|
7685
|
+
this.controlEventsSubscription.unsubscribe();
|
|
7686
|
+
}
|
|
7530
7687
|
this.destroyed = true;
|
|
7531
7688
|
}
|
|
7532
7689
|
/**
|
|
@@ -7537,18 +7694,18 @@ class CalendarComponent {
|
|
|
7537
7694
|
this.ngZone.run(() => {
|
|
7538
7695
|
if (this.allowReverse) {
|
|
7539
7696
|
if (this.activeRangeEnd === 'end' && this.selectionRange.start) {
|
|
7540
|
-
this.
|
|
7697
|
+
this._selectionRange.set({ start: this.selectionRange.start, end: date });
|
|
7541
7698
|
}
|
|
7542
7699
|
if (this.activeRangeEnd === 'start' && this.selectionRange.end) {
|
|
7543
|
-
this.
|
|
7700
|
+
this._selectionRange.set({ start: date, end: this.selectionRange.end });
|
|
7544
7701
|
}
|
|
7545
7702
|
}
|
|
7546
7703
|
else {
|
|
7547
7704
|
if (this.activeRangeEnd === 'end' && this.selectionRange.start && date >= this.selectionRange.start) {
|
|
7548
|
-
this.
|
|
7705
|
+
this._selectionRange.set({ start: this.selectionRange.start, end: date });
|
|
7549
7706
|
}
|
|
7550
7707
|
if (this.selectionRange.start && date < this.selectionRange.start) {
|
|
7551
|
-
this.
|
|
7708
|
+
this._selectionRange.set({ start: this.selectionRange.start, end: null });
|
|
7552
7709
|
}
|
|
7553
7710
|
}
|
|
7554
7711
|
});
|
|
@@ -7559,7 +7716,7 @@ class CalendarComponent {
|
|
|
7559
7716
|
*/
|
|
7560
7717
|
onResize() {
|
|
7561
7718
|
this.focusedDate = new Date(this.focusedDate);
|
|
7562
|
-
this.
|
|
7719
|
+
this.detectChanges();
|
|
7563
7720
|
}
|
|
7564
7721
|
/**
|
|
7565
7722
|
* Focuses the Calendar by making the table.k-calendar-table element active.
|
|
@@ -7650,11 +7807,10 @@ class CalendarComponent {
|
|
|
7650
7807
|
return;
|
|
7651
7808
|
}
|
|
7652
7809
|
this.ngZone.run(() => {
|
|
7653
|
-
this.
|
|
7810
|
+
this._selectedDates.set(availableDates.map(date => cloneDate(date)));
|
|
7654
7811
|
this.value = this.parseSelectionToValue(availableDates);
|
|
7655
7812
|
this.onControlChange(this.parseSelectionToValue(availableDates));
|
|
7656
7813
|
this.valueChange.emit(this.parseSelectionToValue(availableDates));
|
|
7657
|
-
this.cdr.markForCheck();
|
|
7658
7814
|
});
|
|
7659
7815
|
}
|
|
7660
7816
|
/**
|
|
@@ -7663,7 +7819,6 @@ class CalendarComponent {
|
|
|
7663
7819
|
writeValue(candidate) {
|
|
7664
7820
|
this.verifyValue(candidate);
|
|
7665
7821
|
this.value = candidate;
|
|
7666
|
-
this.cdr.markForCheck();
|
|
7667
7822
|
}
|
|
7668
7823
|
/**
|
|
7669
7824
|
* @hidden
|
|
@@ -7681,8 +7836,7 @@ class CalendarComponent {
|
|
|
7681
7836
|
* @hidden
|
|
7682
7837
|
*/
|
|
7683
7838
|
setDisabledState(isDisabled) {
|
|
7684
|
-
this.
|
|
7685
|
-
this.cdr.markForCheck();
|
|
7839
|
+
this._disabled.set(isDisabled);
|
|
7686
7840
|
}
|
|
7687
7841
|
/**
|
|
7688
7842
|
* @hidden
|
|
@@ -7718,7 +7872,7 @@ class CalendarComponent {
|
|
|
7718
7872
|
*/
|
|
7719
7873
|
handleNavigate(event) {
|
|
7720
7874
|
this.focusedDate = event.focusedDate;
|
|
7721
|
-
this.
|
|
7875
|
+
this._activeView.set(event.activeView);
|
|
7722
7876
|
this.emitNavigate(this.focusedDate);
|
|
7723
7877
|
}
|
|
7724
7878
|
/**
|
|
@@ -7742,14 +7896,14 @@ class CalendarComponent {
|
|
|
7742
7896
|
* @hidden
|
|
7743
7897
|
*/
|
|
7744
7898
|
handleActiveDateChange(date) {
|
|
7745
|
-
this.activeViewDate
|
|
7899
|
+
this.activeViewDate.set(date);
|
|
7746
7900
|
this.emitEvent(this.activeViewDateChange, date);
|
|
7747
7901
|
}
|
|
7748
7902
|
/**
|
|
7749
7903
|
* @hidden
|
|
7750
7904
|
*/
|
|
7751
7905
|
handleActiveViewChange(view) {
|
|
7752
|
-
this.
|
|
7906
|
+
this._activeView.set(view);
|
|
7753
7907
|
this.emitEvent(this.activeViewChange, view);
|
|
7754
7908
|
if (this.type === 'infinite') {
|
|
7755
7909
|
this.scrollSyncService.configure(this.activeViewEnum);
|
|
@@ -7785,7 +7939,7 @@ class CalendarComponent {
|
|
|
7785
7939
|
}
|
|
7786
7940
|
if (this.selection === 'range') {
|
|
7787
7941
|
this.canHover = false;
|
|
7788
|
-
this.
|
|
7942
|
+
this._activeRangeEnd.set('start');
|
|
7789
7943
|
const shouldEmitValueChange = this.selectionRange.start?.getTime() !== dates[0].getTime() ||
|
|
7790
7944
|
this.selectionRange.end?.getTime() !== last(dates).getTime();
|
|
7791
7945
|
this.value = { start: dates[0], end: last(dates) };
|
|
@@ -7802,14 +7956,13 @@ class CalendarComponent {
|
|
|
7802
7956
|
if (this.element.nativeElement.contains(args.relatedTarget)) {
|
|
7803
7957
|
return;
|
|
7804
7958
|
}
|
|
7805
|
-
this.
|
|
7959
|
+
this._isActive.set(false);
|
|
7806
7960
|
// the injector can get the NgControl instance of the parent component (for example, the DateTimePicker)
|
|
7807
7961
|
// and enters the zone for no reason because the parent component is still untouched
|
|
7808
7962
|
if (!this.pickerService && requiresZoneOnBlur(this.control)) {
|
|
7809
7963
|
this.ngZone.run(() => {
|
|
7810
7964
|
this.onControlTouched();
|
|
7811
7965
|
this.emitBlur(args);
|
|
7812
|
-
this.cdr.markForCheck();
|
|
7813
7966
|
});
|
|
7814
7967
|
}
|
|
7815
7968
|
else {
|
|
@@ -7821,7 +7974,7 @@ class CalendarComponent {
|
|
|
7821
7974
|
* @hidden
|
|
7822
7975
|
*/
|
|
7823
7976
|
handleFocus() {
|
|
7824
|
-
this.
|
|
7977
|
+
this._isActive.set(true);
|
|
7825
7978
|
if (!NgZone.isInAngularZone()) {
|
|
7826
7979
|
this.detectChanges();
|
|
7827
7980
|
}
|
|
@@ -7883,8 +8036,7 @@ class CalendarComponent {
|
|
|
7883
8036
|
setRangeSelectionToValue() {
|
|
7884
8037
|
if (this.selection === 'range' && this.type === 'infinite' && this.value) {
|
|
7885
8038
|
this.ngZone.run(() => {
|
|
7886
|
-
this.
|
|
7887
|
-
this.cdr.markForCheck();
|
|
8039
|
+
this._selectionRange.set(this.value);
|
|
7888
8040
|
});
|
|
7889
8041
|
}
|
|
7890
8042
|
}
|
|
@@ -7954,7 +8106,7 @@ class CalendarComponent {
|
|
|
7954
8106
|
focusToday() {
|
|
7955
8107
|
this.focusedDate = getToday();
|
|
7956
8108
|
this.bus.moveToBottom(this.activeViewEnum);
|
|
7957
|
-
this.
|
|
8109
|
+
this.detectChanges();
|
|
7958
8110
|
}
|
|
7959
8111
|
detectChanges() {
|
|
7960
8112
|
if (!this.destroyed) {
|
|
@@ -7987,44 +8139,45 @@ class CalendarComponent {
|
|
|
7987
8139
|
setValue(candidate) {
|
|
7988
8140
|
this.verifyValue(candidate);
|
|
7989
8141
|
if (candidate === null) {
|
|
7990
|
-
this._value
|
|
7991
|
-
this.
|
|
7992
|
-
this.
|
|
8142
|
+
this._value.set(null);
|
|
8143
|
+
this._selectedDates.set([]);
|
|
8144
|
+
this._selectionRange.set({ start: null, end: null });
|
|
7993
8145
|
}
|
|
7994
8146
|
else if (Array.isArray(candidate)) {
|
|
7995
|
-
this.
|
|
7996
|
-
this._value
|
|
8147
|
+
this._selectionRange.set({ start: null, end: null });
|
|
8148
|
+
this._value.set(candidate.filter(date => isPresent(date)).map(element => cloneDate(element)));
|
|
7997
8149
|
}
|
|
7998
8150
|
else if (isObject(candidate) && Object.keys(candidate).find(k => k === 'start') && Object.keys(candidate).find(k => k === 'end')) {
|
|
7999
|
-
this.
|
|
8000
|
-
this.
|
|
8001
|
-
|
|
8002
|
-
|
|
8003
|
-
|
|
8004
|
-
this.
|
|
8005
|
-
|
|
8006
|
-
|
|
8151
|
+
this._selectedDates.set([]);
|
|
8152
|
+
this._selectionRange.set({ start: null, end: null });
|
|
8153
|
+
const rangeValue = { start: null, end: null };
|
|
8154
|
+
rangeValue.start = candidate.start instanceof Date ? cloneDate(candidate.start) : null;
|
|
8155
|
+
rangeValue.end = candidate.end instanceof Date ? cloneDate(candidate.end) : null;
|
|
8156
|
+
this._value.set(rangeValue);
|
|
8157
|
+
this._selectionRange.set(Object.assign({}, rangeValue));
|
|
8158
|
+
if (rangeValue.start && !rangeValue.end) {
|
|
8159
|
+
this._activeRangeEnd.set('end');
|
|
8007
8160
|
this.canHover = true;
|
|
8008
8161
|
}
|
|
8009
|
-
if (
|
|
8010
|
-
this.
|
|
8162
|
+
if (rangeValue.end && !rangeValue.start) {
|
|
8163
|
+
this._activeRangeEnd.set('start');
|
|
8011
8164
|
this.canHover = true;
|
|
8012
8165
|
}
|
|
8013
|
-
if (
|
|
8166
|
+
if (rangeValue.end && rangeValue.start) {
|
|
8014
8167
|
this.canHover = false;
|
|
8015
8168
|
}
|
|
8016
8169
|
}
|
|
8017
8170
|
else {
|
|
8018
|
-
this.
|
|
8019
|
-
this._value
|
|
8171
|
+
this._selectionRange.set({ start: null, end: null });
|
|
8172
|
+
this._value.set(cloneDate(candidate));
|
|
8020
8173
|
}
|
|
8021
8174
|
if (this.selection !== 'range') {
|
|
8022
8175
|
const selection = [].concat(candidate).filter(date => isPresent(date)).map(date => cloneDate(date));
|
|
8023
8176
|
if (!areDatesEqual(selection, this.selectedDates)) {
|
|
8024
8177
|
const lastSelected = last(selection);
|
|
8025
|
-
this.
|
|
8178
|
+
this._rangePivot.set(cloneDate(lastSelected));
|
|
8026
8179
|
this.focusedDate = cloneDate(lastSelected) || this.focusedDate;
|
|
8027
|
-
this.
|
|
8180
|
+
this._selectedDates.set(selection);
|
|
8028
8181
|
}
|
|
8029
8182
|
}
|
|
8030
8183
|
}
|
|
@@ -8035,9 +8188,9 @@ class CalendarComponent {
|
|
|
8035
8188
|
(this.activeRangeEnd === 'end' && this.value?.end?.getTime() !== date?.getTime());
|
|
8036
8189
|
this.ngZone.run(() => {
|
|
8037
8190
|
const rangeSelection = handleRangeSelection(date, clonedRangeSelection, this.activeRangeEnd, this.allowReverse);
|
|
8038
|
-
this.
|
|
8191
|
+
this._activeRangeEnd.set(rangeSelection.activeRangeEnd);
|
|
8039
8192
|
if (this.canHover && rangeSelection.activeRangeEnd === 'end' && rangeSelection.selectionRange.end?.getTime() === date.getTime()) {
|
|
8040
|
-
this.
|
|
8193
|
+
this._activeRangeEnd.set('start');
|
|
8041
8194
|
rangeSelection.activeRangeEnd = 'start';
|
|
8042
8195
|
}
|
|
8043
8196
|
this.canHover = this.activeRangeEnd === 'end' && rangeSelection.selectionRange.start && !rangeSelection.selectionRange.end;
|
|
@@ -8046,7 +8199,6 @@ class CalendarComponent {
|
|
|
8046
8199
|
this.value = rangeSelection.selectionRange;
|
|
8047
8200
|
this.valueChange.emit(this.value);
|
|
8048
8201
|
}
|
|
8049
|
-
this.cdr.markForCheck();
|
|
8050
8202
|
});
|
|
8051
8203
|
}
|
|
8052
8204
|
performSelection(date, selectionModifiers) {
|
|
@@ -8058,7 +8210,7 @@ class CalendarComponent {
|
|
|
8058
8210
|
rangePivot: this.rangePivot,
|
|
8059
8211
|
selectedDates: this.selectedDates
|
|
8060
8212
|
});
|
|
8061
|
-
this.
|
|
8213
|
+
this._rangePivot.set(selection.rangePivot);
|
|
8062
8214
|
this.handleDateChange({
|
|
8063
8215
|
selectedDates: selection.selectedDates,
|
|
8064
8216
|
focusedDate: date
|
|
@@ -8402,6 +8554,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
8402
8554
|
type: Input
|
|
8403
8555
|
}], weekNumber: [{
|
|
8404
8556
|
type: Input
|
|
8557
|
+
}, {
|
|
8558
|
+
type: HostBinding,
|
|
8559
|
+
args: ['class.k-week-number']
|
|
8405
8560
|
}], hostWeekNumberClass: [{
|
|
8406
8561
|
type: HostBinding,
|
|
8407
8562
|
args: ['class.k-week-number']
|
|
@@ -8536,15 +8691,33 @@ class DateInputMessages extends ComponentMessages {
|
|
|
8536
8691
|
/**
|
|
8537
8692
|
* The title of the **Decrement** button of the DateInput.
|
|
8538
8693
|
*/
|
|
8539
|
-
decrement
|
|
8694
|
+
set decrement(value) {
|
|
8695
|
+
this._decrement.set(value);
|
|
8696
|
+
}
|
|
8697
|
+
get decrement() {
|
|
8698
|
+
return this._decrement();
|
|
8699
|
+
}
|
|
8540
8700
|
/**
|
|
8541
8701
|
* The title of the **Increment** button of the DateInput.
|
|
8542
8702
|
*/
|
|
8543
|
-
increment
|
|
8703
|
+
set increment(value) {
|
|
8704
|
+
this._increment.set(value);
|
|
8705
|
+
}
|
|
8706
|
+
get increment() {
|
|
8707
|
+
return this._increment();
|
|
8708
|
+
}
|
|
8544
8709
|
/**
|
|
8545
8710
|
* The title of the **Clear** button of the DateInput.
|
|
8546
8711
|
*/
|
|
8547
|
-
clearTitle
|
|
8712
|
+
set clearTitle(value) {
|
|
8713
|
+
this._clearTitle.set(value);
|
|
8714
|
+
}
|
|
8715
|
+
get clearTitle() {
|
|
8716
|
+
return this._clearTitle();
|
|
8717
|
+
}
|
|
8718
|
+
_decrement = signal(undefined, ...(ngDevMode ? [{ debugName: "_decrement" }] : []));
|
|
8719
|
+
_increment = signal(undefined, ...(ngDevMode ? [{ debugName: "_increment" }] : []));
|
|
8720
|
+
_clearTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_clearTitle" }] : []));
|
|
8548
8721
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: DateInputMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
8549
8722
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.27", type: DateInputMessages, isStandalone: true, selector: "kendo-dateinput-messages-base", inputs: { decrement: "decrement", increment: "increment", clearTitle: "clearTitle" }, usesInheritance: true, ngImport: i0 });
|
|
8550
8723
|
}
|
|
@@ -8679,11 +8852,11 @@ class DateInputComponent {
|
|
|
8679
8852
|
*/
|
|
8680
8853
|
set focusableId(_focusableId) {
|
|
8681
8854
|
if (_focusableId) {
|
|
8682
|
-
this._focusableId
|
|
8855
|
+
this._focusableId.set(_focusableId);
|
|
8683
8856
|
}
|
|
8684
8857
|
}
|
|
8685
8858
|
get focusableId() {
|
|
8686
|
-
return this._focusableId;
|
|
8859
|
+
return this._focusableId();
|
|
8687
8860
|
}
|
|
8688
8861
|
/**
|
|
8689
8862
|
* @hidden
|
|
@@ -8698,7 +8871,12 @@ class DateInputComponent {
|
|
|
8698
8871
|
* Clicking this button resets the value of the component to `null` and triggers the `valueChange` event.
|
|
8699
8872
|
* @default false
|
|
8700
8873
|
*/
|
|
8701
|
-
clearButton
|
|
8874
|
+
set clearButton(value) {
|
|
8875
|
+
this._clearButton.set(value);
|
|
8876
|
+
}
|
|
8877
|
+
get clearButton() {
|
|
8878
|
+
return this._clearButton();
|
|
8879
|
+
}
|
|
8702
8880
|
/**
|
|
8703
8881
|
* Specifies whether the component is disabled
|
|
8704
8882
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/dateinput/disabled-state)).
|
|
@@ -8706,47 +8884,82 @@ class DateInputComponent {
|
|
|
8706
8884
|
*
|
|
8707
8885
|
* @default false
|
|
8708
8886
|
*/
|
|
8709
|
-
disabled
|
|
8887
|
+
set disabled(value) {
|
|
8888
|
+
this._disabled.set(value);
|
|
8889
|
+
}
|
|
8890
|
+
get disabled() {
|
|
8891
|
+
return this._disabled();
|
|
8892
|
+
}
|
|
8710
8893
|
/**
|
|
8711
8894
|
* Specifies the read-only state of the DateInput
|
|
8712
8895
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/dateinput/readonly-state)).
|
|
8713
8896
|
*
|
|
8714
8897
|
* @default false
|
|
8715
8898
|
*/
|
|
8716
|
-
readonly
|
|
8899
|
+
set readonly(value) {
|
|
8900
|
+
this._readonly.set(value);
|
|
8901
|
+
}
|
|
8902
|
+
get readonly() {
|
|
8903
|
+
return this._readonly();
|
|
8904
|
+
}
|
|
8717
8905
|
/**
|
|
8718
8906
|
* Specifies the title of the input element of the DateInput.
|
|
8719
8907
|
*
|
|
8720
8908
|
* @default ""
|
|
8721
8909
|
*/
|
|
8722
|
-
title
|
|
8910
|
+
set title(value) {
|
|
8911
|
+
this._title.set(value);
|
|
8912
|
+
}
|
|
8913
|
+
get title() {
|
|
8914
|
+
return this._title();
|
|
8915
|
+
}
|
|
8723
8916
|
/**
|
|
8724
8917
|
* Specifies the `tabIndex` property of the DateInput.
|
|
8725
8918
|
*
|
|
8726
8919
|
* @default 0
|
|
8727
8920
|
*/
|
|
8728
|
-
tabindex
|
|
8921
|
+
set tabindex(value) {
|
|
8922
|
+
this._tabindex.set(value);
|
|
8923
|
+
}
|
|
8924
|
+
get tabindex() {
|
|
8925
|
+
return this._tabindex();
|
|
8926
|
+
}
|
|
8729
8927
|
/**
|
|
8730
8928
|
* @hidden
|
|
8731
8929
|
*/
|
|
8732
|
-
role
|
|
8930
|
+
set role(value) {
|
|
8931
|
+
this._role.set(value);
|
|
8932
|
+
}
|
|
8933
|
+
get role() {
|
|
8934
|
+
return this._role();
|
|
8935
|
+
}
|
|
8733
8936
|
/**
|
|
8734
8937
|
* @hidden
|
|
8735
8938
|
*/
|
|
8736
|
-
ariaReadOnly
|
|
8939
|
+
set ariaReadOnly(value) {
|
|
8940
|
+
this._ariaReadOnly.set(value);
|
|
8941
|
+
}
|
|
8942
|
+
get ariaReadOnly() {
|
|
8943
|
+
return this._ariaReadOnly();
|
|
8944
|
+
}
|
|
8737
8945
|
/**
|
|
8738
8946
|
* @hidden
|
|
8739
8947
|
*/
|
|
8740
8948
|
set tabIndex(tabIndex) {
|
|
8741
|
-
this.
|
|
8949
|
+
this._tabindex.set(tabIndex);
|
|
8742
8950
|
}
|
|
8743
8951
|
get tabIndex() {
|
|
8744
|
-
return this.
|
|
8952
|
+
return this._tabindex();
|
|
8745
8953
|
}
|
|
8746
8954
|
/**
|
|
8747
8955
|
* @hidden
|
|
8748
8956
|
*/
|
|
8749
|
-
isRequired
|
|
8957
|
+
set isRequired(value) {
|
|
8958
|
+
this._isRequired.set(value);
|
|
8959
|
+
}
|
|
8960
|
+
get isRequired() {
|
|
8961
|
+
return this._isRequired();
|
|
8962
|
+
}
|
|
8750
8963
|
/**
|
|
8751
8964
|
* Specifies the date format that is used to display the input value
|
|
8752
8965
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/dateinput/formats)).
|
|
@@ -8754,89 +8967,149 @@ class DateInputComponent {
|
|
|
8754
8967
|
* You can provide a string if a single format is going to be used regardless whether the input is focused or blurred.
|
|
8755
8968
|
* Alternatively, you can provide a FormatSettings object to display different formats when the component is focused or blurred by specifying inputFormat and displayFormat values.
|
|
8756
8969
|
*/
|
|
8757
|
-
format
|
|
8970
|
+
set format(value) {
|
|
8971
|
+
this._format.set(value);
|
|
8972
|
+
}
|
|
8973
|
+
get format() {
|
|
8974
|
+
return this._format();
|
|
8975
|
+
}
|
|
8758
8976
|
/**
|
|
8759
8977
|
* Defines the descriptions of the format sections in the input field.
|
|
8760
8978
|
* For more information, refer to the article on
|
|
8761
8979
|
* [placeholders](https://www.telerik.com/kendo-angular-ui/components/dateinputs/dateinput/placeholders).
|
|
8762
8980
|
*/
|
|
8763
8981
|
set formatPlaceholder(format) {
|
|
8764
|
-
this._formatPlaceholder
|
|
8982
|
+
this._formatPlaceholder.set(format || DEFAULT_FORMAT_PLACEHOLDER);
|
|
8765
8983
|
}
|
|
8766
8984
|
get formatPlaceholder() {
|
|
8767
|
-
return this._formatPlaceholder;
|
|
8985
|
+
return this._formatPlaceholder();
|
|
8768
8986
|
}
|
|
8769
8987
|
/**
|
|
8770
8988
|
* Specifies the hint the DateInput displays when its value is `null`.
|
|
8771
8989
|
* For more information, refer to the article on
|
|
8772
8990
|
* [placeholders](https://www.telerik.com/kendo-angular-ui/components/dateinputs/dateinput/placeholders).
|
|
8773
8991
|
*/
|
|
8774
|
-
placeholder
|
|
8992
|
+
set placeholder(value) {
|
|
8993
|
+
this._placeholder.set(value);
|
|
8994
|
+
}
|
|
8995
|
+
get placeholder() {
|
|
8996
|
+
return this._placeholder();
|
|
8997
|
+
}
|
|
8775
8998
|
/**
|
|
8776
8999
|
* Configures the incremental steps of the DateInput.
|
|
8777
9000
|
* For more information, refer to the article on
|
|
8778
9001
|
* [incremental steps](https://www.telerik.com/kendo-angular-ui/components/dateinputs/dateinput/incremental-steps).
|
|
8779
9002
|
*/
|
|
8780
|
-
steps
|
|
9003
|
+
set steps(value) {
|
|
9004
|
+
this._steps.set(value);
|
|
9005
|
+
}
|
|
9006
|
+
get steps() {
|
|
9007
|
+
return this._steps();
|
|
9008
|
+
}
|
|
8781
9009
|
/**
|
|
8782
9010
|
* Specifies the biggest date that is valid
|
|
8783
9011
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/dateinput/date-ranges)).
|
|
8784
9012
|
*
|
|
8785
9013
|
* @default 2099-12-31
|
|
8786
9014
|
*/
|
|
8787
|
-
max
|
|
9015
|
+
set max(value) {
|
|
9016
|
+
this._max.set(value);
|
|
9017
|
+
}
|
|
9018
|
+
get max() {
|
|
9019
|
+
return this._max();
|
|
9020
|
+
}
|
|
8788
9021
|
/**
|
|
8789
9022
|
* Specifies the smallest date that is valid
|
|
8790
9023
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/dateinput/date-ranges)).
|
|
8791
9024
|
*
|
|
8792
9025
|
* @default 1900-1-1
|
|
8793
9026
|
*/
|
|
8794
|
-
min
|
|
9027
|
+
set min(value) {
|
|
9028
|
+
this._min.set(value);
|
|
9029
|
+
}
|
|
9030
|
+
get min() {
|
|
9031
|
+
return this._min();
|
|
9032
|
+
}
|
|
8795
9033
|
/**
|
|
8796
9034
|
* Specifies whether to enforce the built-in min and max validators when validating a form.
|
|
8797
9035
|
* Set to `true` to enable validation for the `min` and `max` values.
|
|
8798
9036
|
*
|
|
8799
9037
|
* @default true
|
|
8800
9038
|
*/
|
|
8801
|
-
rangeValidation
|
|
9039
|
+
set rangeValidation(value) {
|
|
9040
|
+
this._rangeValidation.set(value);
|
|
9041
|
+
}
|
|
9042
|
+
get rangeValidation() {
|
|
9043
|
+
return this._rangeValidation();
|
|
9044
|
+
}
|
|
8802
9045
|
/**
|
|
8803
9046
|
* Specifies if the component automatically corrects invalid date segments.
|
|
8804
9047
|
* When set to `true`, the component fixes invalid segments as you type.
|
|
8805
9048
|
*
|
|
8806
9049
|
* @default true
|
|
8807
9050
|
*/
|
|
8808
|
-
autoCorrectParts
|
|
9051
|
+
set autoCorrectParts(value) {
|
|
9052
|
+
this._autoCorrectParts.set(value);
|
|
9053
|
+
}
|
|
9054
|
+
get autoCorrectParts() {
|
|
9055
|
+
return this._autoCorrectParts();
|
|
9056
|
+
}
|
|
8809
9057
|
/**
|
|
8810
9058
|
* Specifies if the component automatically moves to the next segment after you complete the current one.
|
|
8811
9059
|
* When set to `true`, focus moves to the next segment as soon as you finish typing the current segment.
|
|
8812
9060
|
*
|
|
8813
9061
|
* @default true
|
|
8814
9062
|
*/
|
|
8815
|
-
autoSwitchParts
|
|
9063
|
+
set autoSwitchParts(value) {
|
|
9064
|
+
this._autoSwitchParts.set(value);
|
|
9065
|
+
}
|
|
9066
|
+
get autoSwitchParts() {
|
|
9067
|
+
return this._autoSwitchParts();
|
|
9068
|
+
}
|
|
8816
9069
|
/**
|
|
8817
9070
|
* Specifies custom keys that move focus to the next date format segment.
|
|
8818
9071
|
* Provide an array of strings to define which keys trigger the focus change.
|
|
8819
9072
|
*/
|
|
8820
|
-
autoSwitchKeys
|
|
9073
|
+
set autoSwitchKeys(value) {
|
|
9074
|
+
this._autoSwitchKeys.set(value);
|
|
9075
|
+
}
|
|
9076
|
+
get autoSwitchKeys() {
|
|
9077
|
+
return this._autoSwitchKeys();
|
|
9078
|
+
}
|
|
8821
9079
|
/**
|
|
8822
9080
|
* Specifies if the component displays a blinking caret inside the DateInput when possible.
|
|
8823
9081
|
* Set to `true` to show a blinking caret for better visual feedback.
|
|
8824
9082
|
*
|
|
8825
9083
|
* @default false
|
|
8826
9084
|
*/
|
|
8827
|
-
allowCaretMode
|
|
9085
|
+
set allowCaretMode(value) {
|
|
9086
|
+
this._allowCaretMode.set(value);
|
|
9087
|
+
}
|
|
9088
|
+
get allowCaretMode() {
|
|
9089
|
+
return this._allowCaretMode();
|
|
9090
|
+
}
|
|
8828
9091
|
/**
|
|
8829
9092
|
* Specifies whether to autofill the rest of the date to the current date when the component loses focus.
|
|
8830
9093
|
*
|
|
8831
9094
|
* @default false
|
|
8832
9095
|
*/
|
|
8833
|
-
autoFill
|
|
9096
|
+
set autoFill(value) {
|
|
9097
|
+
this._autoFill.set(value);
|
|
9098
|
+
}
|
|
9099
|
+
get autoFill() {
|
|
9100
|
+
return this._autoFill();
|
|
9101
|
+
}
|
|
8834
9102
|
/**
|
|
8835
9103
|
* Specifies whether the built-in validation for incomplete dates is to be enforced when a form is being validated.
|
|
8836
9104
|
*
|
|
8837
9105
|
* @default false
|
|
8838
9106
|
*/
|
|
8839
|
-
incompleteDateValidation
|
|
9107
|
+
set incompleteDateValidation(value) {
|
|
9108
|
+
this._incompleteDateValidation.set(value);
|
|
9109
|
+
}
|
|
9110
|
+
get incompleteDateValidation() {
|
|
9111
|
+
return this._incompleteDateValidation();
|
|
9112
|
+
}
|
|
8840
9113
|
/**
|
|
8841
9114
|
* The maximum year to assume to be from the current century when typing two-digit year value
|
|
8842
9115
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/dateinput/formats#two-digit-year-format)).
|
|
@@ -8845,13 +9118,23 @@ class DateInputComponent {
|
|
|
8845
9118
|
* will be assumed to be 20xx, while 69 and larger will be assumed to be 19xx.
|
|
8846
9119
|
* @default 68
|
|
8847
9120
|
*/
|
|
8848
|
-
twoDigitYearMax
|
|
9121
|
+
set twoDigitYearMax(value) {
|
|
9122
|
+
this._twoDigitYearMax.set(value);
|
|
9123
|
+
}
|
|
9124
|
+
get twoDigitYearMax() {
|
|
9125
|
+
return this._twoDigitYearMax();
|
|
9126
|
+
}
|
|
8849
9127
|
/**
|
|
8850
9128
|
* Indicates whether the mouse scroll can be used to increase/decrease the time segments values.
|
|
8851
9129
|
*
|
|
8852
9130
|
* @default true
|
|
8853
9131
|
*/
|
|
8854
|
-
enableMouseWheel
|
|
9132
|
+
set enableMouseWheel(value) {
|
|
9133
|
+
this._enableMouseWheel.set(value);
|
|
9134
|
+
}
|
|
9135
|
+
get enableMouseWheel() {
|
|
9136
|
+
return this._enableMouseWheel();
|
|
9137
|
+
}
|
|
8855
9138
|
/**
|
|
8856
9139
|
* Specifies the value of the DateInput component.
|
|
8857
9140
|
*
|
|
@@ -8860,11 +9143,11 @@ class DateInputComponent {
|
|
|
8860
9143
|
set value(value) {
|
|
8861
9144
|
this.verifyValue(value);
|
|
8862
9145
|
this.showClearButton = value || (!value && this.isDateIncomplete) ? true : false;
|
|
8863
|
-
this._value
|
|
9146
|
+
this._value.set(cloneDate(value));
|
|
8864
9147
|
this.valueUpdate.emit(cloneDate(value));
|
|
8865
9148
|
}
|
|
8866
9149
|
get value() {
|
|
8867
|
-
return this._value;
|
|
9150
|
+
return this._value();
|
|
8868
9151
|
}
|
|
8869
9152
|
/**
|
|
8870
9153
|
* Specifies whether the **Up** and **Down** spin buttons will be rendered.
|
|
@@ -8873,26 +9156,41 @@ class DateInputComponent {
|
|
|
8873
9156
|
*
|
|
8874
9157
|
* @default false
|
|
8875
9158
|
*/
|
|
8876
|
-
spinners
|
|
9159
|
+
set spinners(value) {
|
|
9160
|
+
this._spinners.set(value);
|
|
9161
|
+
}
|
|
9162
|
+
get spinners() {
|
|
9163
|
+
return this._spinners();
|
|
9164
|
+
}
|
|
8877
9165
|
/**
|
|
8878
9166
|
* @hidden
|
|
8879
9167
|
*/
|
|
8880
|
-
isPopupOpen
|
|
9168
|
+
set isPopupOpen(value) {
|
|
9169
|
+
this._isPopupOpen.set(value);
|
|
9170
|
+
}
|
|
9171
|
+
get isPopupOpen() {
|
|
9172
|
+
return this._isPopupOpen();
|
|
9173
|
+
}
|
|
8881
9174
|
/**
|
|
8882
9175
|
* @hidden
|
|
8883
9176
|
*/
|
|
8884
|
-
hasPopup
|
|
9177
|
+
set hasPopup(value) {
|
|
9178
|
+
this._hasPopup.set(value);
|
|
9179
|
+
}
|
|
9180
|
+
get hasPopup() {
|
|
9181
|
+
return this._hasPopup();
|
|
9182
|
+
}
|
|
8885
9183
|
/**
|
|
8886
9184
|
* @hidden
|
|
8887
9185
|
*/
|
|
8888
9186
|
set ariaInvalidState(value) {
|
|
8889
|
-
this._ariaInvalidState
|
|
9187
|
+
this._ariaInvalidState.set(value);
|
|
8890
9188
|
if (value !== null && this.inputElement) {
|
|
8891
9189
|
this.setAriaInvalid();
|
|
8892
9190
|
}
|
|
8893
9191
|
}
|
|
8894
9192
|
get ariaInvalidState() {
|
|
8895
|
-
return this._ariaInvalidState;
|
|
9193
|
+
return this._ariaInvalidState();
|
|
8896
9194
|
}
|
|
8897
9195
|
/**
|
|
8898
9196
|
* Specifies the size of the component. The default value is set by the Kendo theme.
|
|
@@ -8903,10 +9201,10 @@ class DateInputComponent {
|
|
|
8903
9201
|
if (size) {
|
|
8904
9202
|
this.renderer.addClass(this.wrapper.nativeElement, getSizeClass('input', size));
|
|
8905
9203
|
}
|
|
8906
|
-
this._size
|
|
9204
|
+
this._size.set(size);
|
|
8907
9205
|
}
|
|
8908
9206
|
get size() {
|
|
8909
|
-
return this._size;
|
|
9207
|
+
return this._size();
|
|
8910
9208
|
}
|
|
8911
9209
|
/**
|
|
8912
9210
|
* Specifies the border radius of the component. The default value is set by the Kendo theme.
|
|
@@ -8916,10 +9214,10 @@ class DateInputComponent {
|
|
|
8916
9214
|
if (rounded) {
|
|
8917
9215
|
this.renderer.addClass(this.wrapper.nativeElement, getRoundedClass(rounded));
|
|
8918
9216
|
}
|
|
8919
|
-
this._rounded
|
|
9217
|
+
this._rounded.set(rounded);
|
|
8920
9218
|
}
|
|
8921
9219
|
get rounded() {
|
|
8922
|
-
return this._rounded;
|
|
9220
|
+
return this._rounded();
|
|
8923
9221
|
}
|
|
8924
9222
|
/**
|
|
8925
9223
|
* Specifies the fillMode of the component. The default value is set by the Kendo theme.
|
|
@@ -8933,10 +9231,10 @@ class DateInputComponent {
|
|
|
8933
9231
|
this.setSpinnerFill(this.spindown.nativeElement, fillMode, this.fillMode);
|
|
8934
9232
|
}
|
|
8935
9233
|
}
|
|
8936
|
-
this._fillMode
|
|
9234
|
+
this._fillMode.set(fillMode);
|
|
8937
9235
|
}
|
|
8938
9236
|
get fillMode() {
|
|
8939
|
-
return this._fillMode;
|
|
9237
|
+
return this._fillMode();
|
|
8940
9238
|
}
|
|
8941
9239
|
/**
|
|
8942
9240
|
* Specifies the HTML attributes of the inner focusable input element. Attributes which are essential for certain component functionalities cannot be changed.
|
|
@@ -8948,14 +9246,14 @@ class DateInputComponent {
|
|
|
8948
9246
|
if (isObjectPresent(this.parsedAttributes)) {
|
|
8949
9247
|
removeHTMLAttributes(this.parsedAttributes, this.renderer, this.dateInput.nativeElement);
|
|
8950
9248
|
}
|
|
8951
|
-
this._inputAttributes
|
|
9249
|
+
this._inputAttributes.set(attributes);
|
|
8952
9250
|
this.parsedAttributes = this.inputAttributes ?
|
|
8953
9251
|
parseAttributes(this.inputAttributes, this.defaultAttributes) :
|
|
8954
9252
|
this.inputAttributes;
|
|
8955
9253
|
this.setInputAttributes();
|
|
8956
9254
|
}
|
|
8957
9255
|
get inputAttributes() {
|
|
8958
|
-
return this._inputAttributes;
|
|
9256
|
+
return this._inputAttributes();
|
|
8959
9257
|
}
|
|
8960
9258
|
/**
|
|
8961
9259
|
* Fires each time the user selects a new value
|
|
@@ -9037,25 +9335,27 @@ class DateInputComponent {
|
|
|
9037
9335
|
};
|
|
9038
9336
|
}
|
|
9039
9337
|
arrow = Arrow;
|
|
9040
|
-
arrowDirection
|
|
9041
|
-
|
|
9338
|
+
get arrowDirection() { return this._arrowDirection(); }
|
|
9339
|
+
set arrowDirection(v) { this._arrowDirection.set(v); }
|
|
9340
|
+
get formatSections() { return this._formatSections(); }
|
|
9042
9341
|
hasMousedown = false;
|
|
9043
9342
|
focusedPriorToMousedown = false;
|
|
9044
|
-
showClearButton
|
|
9343
|
+
get showClearButton() { return this._showClearButton(); }
|
|
9344
|
+
set showClearButton(value) { this._showClearButton.set(value); }
|
|
9045
9345
|
/**
|
|
9046
9346
|
* @hidden
|
|
9047
9347
|
*/
|
|
9048
|
-
isDateIncomplete
|
|
9348
|
+
get isDateIncomplete() { return this._isDateIncomplete(); }
|
|
9049
9349
|
currentFormat = "";
|
|
9050
9350
|
spinup;
|
|
9051
9351
|
spindown;
|
|
9052
9352
|
minValidator = noop$2;
|
|
9053
9353
|
maxValidator = noop$2;
|
|
9054
9354
|
incompleteValidator = noop$2;
|
|
9055
|
-
_value = null;
|
|
9355
|
+
_value = signal(null, ...(ngDevMode ? [{ debugName: "_value" }] : []));
|
|
9056
9356
|
_active = false;
|
|
9057
|
-
_focusableId = `dateinput-${nextId++}
|
|
9058
|
-
_formatPlaceholder = DEFAULT_FORMAT_PLACEHOLDER;
|
|
9357
|
+
_focusableId = signal(`dateinput-${nextId++}`, ...(ngDevMode ? [{ debugName: "_focusableId" }] : []));
|
|
9358
|
+
_formatPlaceholder = signal(DEFAULT_FORMAT_PLACEHOLDER, ...(ngDevMode ? [{ debugName: "_formatPlaceholder" }] : []));
|
|
9059
9359
|
kendoDate = null;
|
|
9060
9360
|
kendoDateObject = null;
|
|
9061
9361
|
domEvents = [];
|
|
@@ -9063,14 +9363,43 @@ class DateInputComponent {
|
|
|
9063
9363
|
onControlChange = noop$2;
|
|
9064
9364
|
onControlTouched = noop$2;
|
|
9065
9365
|
onValidatorChange = noop$2;
|
|
9066
|
-
|
|
9067
|
-
|
|
9068
|
-
|
|
9069
|
-
|
|
9366
|
+
_ariaInvalidState = signal(null, ...(ngDevMode ? [{ debugName: "_ariaInvalidState" }] : []));
|
|
9367
|
+
_size = signal(undefined, ...(ngDevMode ? [{ debugName: "_size" }] : []));
|
|
9368
|
+
_rounded = signal(undefined, ...(ngDevMode ? [{ debugName: "_rounded" }] : []));
|
|
9369
|
+
_fillMode = signal(undefined, ...(ngDevMode ? [{ debugName: "_fillMode" }] : []));
|
|
9070
9370
|
control;
|
|
9071
9371
|
subs = new Subscription();
|
|
9072
|
-
_inputAttributes;
|
|
9372
|
+
_inputAttributes = signal(undefined, ...(ngDevMode ? [{ debugName: "_inputAttributes" }] : []));
|
|
9073
9373
|
parsedAttributes = {};
|
|
9374
|
+
_clearButton = signal(false, ...(ngDevMode ? [{ debugName: "_clearButton" }] : []));
|
|
9375
|
+
_disabled = signal(false, ...(ngDevMode ? [{ debugName: "_disabled" }] : []));
|
|
9376
|
+
_readonly = signal(false, ...(ngDevMode ? [{ debugName: "_readonly" }] : []));
|
|
9377
|
+
_title = signal('', ...(ngDevMode ? [{ debugName: "_title" }] : []));
|
|
9378
|
+
_tabindex = signal(0, ...(ngDevMode ? [{ debugName: "_tabindex" }] : []));
|
|
9379
|
+
_role = signal(null, ...(ngDevMode ? [{ debugName: "_role" }] : []));
|
|
9380
|
+
_ariaReadOnly = signal(false, ...(ngDevMode ? [{ debugName: "_ariaReadOnly" }] : []));
|
|
9381
|
+
_isRequired = signal(false, ...(ngDevMode ? [{ debugName: "_isRequired" }] : []));
|
|
9382
|
+
_format = signal(DEFAULT_FORMAT$1, ...(ngDevMode ? [{ debugName: "_format" }] : []));
|
|
9383
|
+
_placeholder = signal(undefined, ...(ngDevMode ? [{ debugName: "_placeholder" }] : []));
|
|
9384
|
+
_steps = signal({}, ...(ngDevMode ? [{ debugName: "_steps" }] : []));
|
|
9385
|
+
_max = signal(cloneDate(MAX_DATE), ...(ngDevMode ? [{ debugName: "_max" }] : []));
|
|
9386
|
+
_min = signal(cloneDate(MIN_DATE), ...(ngDevMode ? [{ debugName: "_min" }] : []));
|
|
9387
|
+
_rangeValidation = signal(true, ...(ngDevMode ? [{ debugName: "_rangeValidation" }] : []));
|
|
9388
|
+
_autoCorrectParts = signal(true, ...(ngDevMode ? [{ debugName: "_autoCorrectParts" }] : []));
|
|
9389
|
+
_autoSwitchParts = signal(true, ...(ngDevMode ? [{ debugName: "_autoSwitchParts" }] : []));
|
|
9390
|
+
_autoSwitchKeys = signal([], ...(ngDevMode ? [{ debugName: "_autoSwitchKeys" }] : []));
|
|
9391
|
+
_allowCaretMode = signal(false, ...(ngDevMode ? [{ debugName: "_allowCaretMode" }] : []));
|
|
9392
|
+
_autoFill = signal(false, ...(ngDevMode ? [{ debugName: "_autoFill" }] : []));
|
|
9393
|
+
_incompleteDateValidation = signal(false, ...(ngDevMode ? [{ debugName: "_incompleteDateValidation" }] : []));
|
|
9394
|
+
_twoDigitYearMax = signal(TWO_DIGIT_YEAR_MAX$2, ...(ngDevMode ? [{ debugName: "_twoDigitYearMax" }] : []));
|
|
9395
|
+
_enableMouseWheel = signal(true, ...(ngDevMode ? [{ debugName: "_enableMouseWheel" }] : []));
|
|
9396
|
+
_spinners = signal(false, ...(ngDevMode ? [{ debugName: "_spinners" }] : []));
|
|
9397
|
+
_isPopupOpen = signal(undefined, ...(ngDevMode ? [{ debugName: "_isPopupOpen" }] : []));
|
|
9398
|
+
_hasPopup = signal(undefined, ...(ngDevMode ? [{ debugName: "_hasPopup" }] : []));
|
|
9399
|
+
_arrowDirection = signal(Arrow.None, ...(ngDevMode ? [{ debugName: "_arrowDirection" }] : []));
|
|
9400
|
+
_showClearButton = signal(false, ...(ngDevMode ? [{ debugName: "_showClearButton" }] : []));
|
|
9401
|
+
_formatSections = signal({ date: false, time: false }, ...(ngDevMode ? [{ debugName: "_formatSections" }] : []));
|
|
9402
|
+
_isDateIncomplete = signal(false, ...(ngDevMode ? [{ debugName: "_isDateIncomplete" }] : []));
|
|
9074
9403
|
get defaultAttributes() {
|
|
9075
9404
|
return {
|
|
9076
9405
|
'aria-readonly': this.ariaReadOnly,
|
|
@@ -9108,7 +9437,7 @@ class DateInputComponent {
|
|
|
9108
9437
|
this.pickerService.input = this;
|
|
9109
9438
|
}
|
|
9110
9439
|
else {
|
|
9111
|
-
this.
|
|
9440
|
+
this._ariaReadOnly.set(null);
|
|
9112
9441
|
}
|
|
9113
9442
|
this.renderer.addClass(this.wrapper.nativeElement, 'k-input');
|
|
9114
9443
|
this.renderer.addClass(this.wrapper.nativeElement, 'k-dateinput');
|
|
@@ -9187,22 +9516,21 @@ class DateInputComponent {
|
|
|
9187
9516
|
}
|
|
9188
9517
|
}
|
|
9189
9518
|
updateFormatSections() {
|
|
9190
|
-
this.
|
|
9519
|
+
this._formatSections.set(this.intl.splitDateFormat(this.kendoDate.inputFormat)
|
|
9191
9520
|
.reduce(({ date, time }, p) => {
|
|
9192
9521
|
return {
|
|
9193
9522
|
date: date || DATE_PART_REGEXP.test(p.type),
|
|
9194
9523
|
time: time || TIME_PART_REGEXP.test(p.type)
|
|
9195
9524
|
};
|
|
9196
|
-
}, { date: false, time: false });
|
|
9525
|
+
}, { date: false, time: false }));
|
|
9197
9526
|
}
|
|
9198
9527
|
updateIncompleteValidationStatus() {
|
|
9199
9528
|
const previousValue = this.isDateIncomplete;
|
|
9200
|
-
this.
|
|
9529
|
+
this._isDateIncomplete.set(Boolean(this.kendoDateObject?.hasValue() && this.value === null));
|
|
9201
9530
|
if (previousValue === this.isDateIncomplete || !this.incompleteDateValidation) {
|
|
9202
9531
|
return;
|
|
9203
9532
|
}
|
|
9204
9533
|
if (isPresent(this.ngControl) && !isPresent(this.pickerService)) {
|
|
9205
|
-
this.cdr.markForCheck();
|
|
9206
9534
|
this.ngZone.run(() => this.onValidatorChange());
|
|
9207
9535
|
}
|
|
9208
9536
|
else if (isPresent(this.pickerService)) {
|
|
@@ -9215,6 +9543,13 @@ class DateInputComponent {
|
|
|
9215
9543
|
this.control = formControl;
|
|
9216
9544
|
this.subs.add(this.formControl?.statusChanges.subscribe(() => this.setAriaInvalid()));
|
|
9217
9545
|
this.setAriaInvalid();
|
|
9546
|
+
if (formControl && formControl.events) {
|
|
9547
|
+
this.subs.add(formControl.events.subscribe(e => {
|
|
9548
|
+
if (e instanceof TouchedChangeEvent) {
|
|
9549
|
+
this.cdr.markForCheck();
|
|
9550
|
+
}
|
|
9551
|
+
}));
|
|
9552
|
+
}
|
|
9218
9553
|
this.subs.add(this.renderer.listen(this.dateInput?.nativeElement, 'keydown', this.handleKeyDown));
|
|
9219
9554
|
}
|
|
9220
9555
|
ngOnDestroy() {
|
|
@@ -9228,11 +9563,11 @@ class DateInputComponent {
|
|
|
9228
9563
|
* @hidden
|
|
9229
9564
|
*/
|
|
9230
9565
|
setAriaInvalid() {
|
|
9231
|
-
if (this.
|
|
9566
|
+
if (this.ariaInvalidState === null && !this.control) {
|
|
9232
9567
|
return;
|
|
9233
9568
|
}
|
|
9234
|
-
const isInvalid = this.
|
|
9235
|
-
? this.
|
|
9569
|
+
const isInvalid = this.ariaInvalidState !== null
|
|
9570
|
+
? this.ariaInvalidState
|
|
9236
9571
|
: !!(this.control.invalid && (this.control.touched || this.control.dirty));
|
|
9237
9572
|
this.renderer.setAttribute(this.inputElement, attributeNames.ariaInvalid, `${isInvalid}`);
|
|
9238
9573
|
}
|
|
@@ -9258,8 +9593,7 @@ class DateInputComponent {
|
|
|
9258
9593
|
* @hidden
|
|
9259
9594
|
*/
|
|
9260
9595
|
setDisabledState(isDisabled) {
|
|
9261
|
-
this.
|
|
9262
|
-
this.cdr.markForCheck();
|
|
9596
|
+
this._disabled.set(isDisabled);
|
|
9263
9597
|
}
|
|
9264
9598
|
//ngModel binding
|
|
9265
9599
|
/**
|
|
@@ -9272,13 +9606,12 @@ class DateInputComponent {
|
|
|
9272
9606
|
this.kendoDateObject?.setValue(this.value);
|
|
9273
9607
|
this.kendoDate?.refreshElementValue();
|
|
9274
9608
|
this.updateIncompleteValidationStatus();
|
|
9275
|
-
this.cdr.markForCheck();
|
|
9276
9609
|
}
|
|
9277
9610
|
/**
|
|
9278
9611
|
* Resets the value of the DateInput component to `null` and triggers the `valueChange` event.
|
|
9279
9612
|
*/
|
|
9280
9613
|
resetInput() {
|
|
9281
|
-
this.
|
|
9614
|
+
this._isDateIncomplete.set(false);
|
|
9282
9615
|
this.writeValue(null);
|
|
9283
9616
|
// Notify datepicker that a change has happened and emit `valueChange`
|
|
9284
9617
|
this.notify();
|
|
@@ -9367,7 +9700,6 @@ class DateInputComponent {
|
|
|
9367
9700
|
this.updateIncompleteValidationStatus();
|
|
9368
9701
|
if (this.clearButton) {
|
|
9369
9702
|
this.showClearButton = this.value || this.isDateIncomplete ? true : false;
|
|
9370
|
-
this.cdr.markForCheck();
|
|
9371
9703
|
}
|
|
9372
9704
|
}
|
|
9373
9705
|
onWidgetFocus(args) {
|
|
@@ -9910,31 +10242,73 @@ class DatePickerMessages extends ComponentMessages {
|
|
|
9910
10242
|
/**
|
|
9911
10243
|
* The **Today** button text in the header of the Calendar.
|
|
9912
10244
|
*/
|
|
9913
|
-
today
|
|
10245
|
+
set today(value) {
|
|
10246
|
+
this._today.set(value);
|
|
10247
|
+
}
|
|
10248
|
+
get today() {
|
|
10249
|
+
return this._today();
|
|
10250
|
+
}
|
|
9914
10251
|
/**
|
|
9915
10252
|
* The title of the **Toggle** button of the DatePicker.
|
|
9916
10253
|
*/
|
|
9917
|
-
toggle
|
|
10254
|
+
set toggle(value) {
|
|
10255
|
+
this._toggle.set(value);
|
|
10256
|
+
}
|
|
10257
|
+
get toggle() {
|
|
10258
|
+
return this._toggle();
|
|
10259
|
+
}
|
|
9918
10260
|
/**
|
|
9919
10261
|
* The title of the **Prev** button in the header of the Classic Calendar.
|
|
9920
10262
|
*/
|
|
9921
|
-
prevButtonTitle
|
|
10263
|
+
set prevButtonTitle(value) {
|
|
10264
|
+
this._prevButtonTitle.set(value);
|
|
10265
|
+
}
|
|
10266
|
+
get prevButtonTitle() {
|
|
10267
|
+
return this._prevButtonTitle();
|
|
10268
|
+
}
|
|
9922
10269
|
/**
|
|
9923
10270
|
* The title of the **Next** button in the header of the Classic Calendar.
|
|
9924
10271
|
*/
|
|
9925
|
-
nextButtonTitle
|
|
10272
|
+
set nextButtonTitle(value) {
|
|
10273
|
+
this._nextButtonTitle.set(value);
|
|
10274
|
+
}
|
|
10275
|
+
get nextButtonTitle() {
|
|
10276
|
+
return this._nextButtonTitle();
|
|
10277
|
+
}
|
|
9926
10278
|
/**
|
|
9927
10279
|
* The title of the **Parent View** button in the header of the Calendar.
|
|
9928
10280
|
*/
|
|
9929
|
-
parentViewButtonTitle
|
|
10281
|
+
set parentViewButtonTitle(value) {
|
|
10282
|
+
this._parentViewButtonTitle.set(value);
|
|
10283
|
+
}
|
|
10284
|
+
get parentViewButtonTitle() {
|
|
10285
|
+
return this._parentViewButtonTitle();
|
|
10286
|
+
}
|
|
9930
10287
|
/**
|
|
9931
10288
|
* The title of the **Clear** button of the DatePicker.
|
|
9932
10289
|
*/
|
|
9933
|
-
clearTitle
|
|
10290
|
+
set clearTitle(value) {
|
|
10291
|
+
this._clearTitle.set(value);
|
|
10292
|
+
}
|
|
10293
|
+
get clearTitle() {
|
|
10294
|
+
return this._clearTitle();
|
|
10295
|
+
}
|
|
9934
10296
|
/**
|
|
9935
10297
|
* The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode.
|
|
9936
10298
|
*/
|
|
9937
|
-
adaptiveCloseButtonTitle
|
|
10299
|
+
set adaptiveCloseButtonTitle(value) {
|
|
10300
|
+
this._adaptiveCloseButtonTitle.set(value);
|
|
10301
|
+
}
|
|
10302
|
+
get adaptiveCloseButtonTitle() {
|
|
10303
|
+
return this._adaptiveCloseButtonTitle();
|
|
10304
|
+
}
|
|
10305
|
+
_today = signal(undefined, ...(ngDevMode ? [{ debugName: "_today" }] : []));
|
|
10306
|
+
_toggle = signal(undefined, ...(ngDevMode ? [{ debugName: "_toggle" }] : []));
|
|
10307
|
+
_prevButtonTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_prevButtonTitle" }] : []));
|
|
10308
|
+
_nextButtonTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_nextButtonTitle" }] : []));
|
|
10309
|
+
_parentViewButtonTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_parentViewButtonTitle" }] : []));
|
|
10310
|
+
_clearTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_clearTitle" }] : []));
|
|
10311
|
+
_adaptiveCloseButtonTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_adaptiveCloseButtonTitle" }] : []));
|
|
9938
10312
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: DatePickerMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
9939
10313
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.27", type: DatePickerMessages, isStandalone: true, selector: "kendo-datepicker-messages-base", inputs: { today: "today", toggle: "toggle", prevButtonTitle: "prevButtonTitle", nextButtonTitle: "nextButtonTitle", parentViewButtonTitle: "parentViewButtonTitle", clearTitle: "clearTitle", adaptiveCloseButtonTitle: "adaptiveCloseButtonTitle" }, usesInheritance: true, ngImport: i0 });
|
|
9940
10314
|
}
|
|
@@ -10039,7 +10413,12 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10039
10413
|
/**
|
|
10040
10414
|
* @hidden
|
|
10041
10415
|
*/
|
|
10042
|
-
focusableId
|
|
10416
|
+
set focusableId(value) {
|
|
10417
|
+
this._focusableId.set(value);
|
|
10418
|
+
}
|
|
10419
|
+
get focusableId() {
|
|
10420
|
+
return this._focusableId();
|
|
10421
|
+
}
|
|
10043
10422
|
/**
|
|
10044
10423
|
* @hidden
|
|
10045
10424
|
*/
|
|
@@ -10055,7 +10434,12 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10055
10434
|
* Click this button to reset the component value to `null` and trigger the `valueChange` event.
|
|
10056
10435
|
* @default false
|
|
10057
10436
|
*/
|
|
10058
|
-
clearButton
|
|
10437
|
+
set clearButton(value) {
|
|
10438
|
+
this._clearButton.set(value);
|
|
10439
|
+
}
|
|
10440
|
+
get clearButton() {
|
|
10441
|
+
return this._clearButton();
|
|
10442
|
+
}
|
|
10059
10443
|
/**
|
|
10060
10444
|
* Specifies the HTML attributes of the inner focusable input element.
|
|
10061
10445
|
* You cannot change attributes that are essential for certain component functionalities.
|
|
@@ -10063,7 +10447,12 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10063
10447
|
* @remarks
|
|
10064
10448
|
* This property is related to accessibility.
|
|
10065
10449
|
*/
|
|
10066
|
-
inputAttributes
|
|
10450
|
+
set inputAttributes(value) {
|
|
10451
|
+
this._inputAttributes.set(value);
|
|
10452
|
+
}
|
|
10453
|
+
get inputAttributes() {
|
|
10454
|
+
return this._inputAttributes();
|
|
10455
|
+
}
|
|
10067
10456
|
/**
|
|
10068
10457
|
* @hidden
|
|
10069
10458
|
*/
|
|
@@ -10148,7 +10537,12 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10148
10537
|
* Controls the visibility of the Calendar footer.
|
|
10149
10538
|
* @default false
|
|
10150
10539
|
*/
|
|
10151
|
-
footer
|
|
10540
|
+
set footer(value) {
|
|
10541
|
+
this._footer.set(value);
|
|
10542
|
+
}
|
|
10543
|
+
get footer() {
|
|
10544
|
+
return this._footer();
|
|
10545
|
+
}
|
|
10152
10546
|
/**
|
|
10153
10547
|
* @hidden
|
|
10154
10548
|
*/
|
|
@@ -10163,34 +10557,64 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10163
10557
|
* Specifies the format of the displayed Calendar week days' names.
|
|
10164
10558
|
* @default 'short'
|
|
10165
10559
|
*/
|
|
10166
|
-
weekDaysFormat
|
|
10560
|
+
set weekDaysFormat(value) {
|
|
10561
|
+
this._weekDaysFormat.set(value);
|
|
10562
|
+
}
|
|
10563
|
+
get weekDaysFormat() {
|
|
10564
|
+
return this._weekDaysFormat();
|
|
10565
|
+
}
|
|
10167
10566
|
/**
|
|
10168
10567
|
* Shows the days that fall outside the current month in the Calendar ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/calendar/view-options#displaying-other-month-days)).
|
|
10169
10568
|
* The default value is `false` for infinite Calendar type and `true` for classic Calendar type.
|
|
10170
10569
|
*/
|
|
10171
|
-
showOtherMonthDays
|
|
10570
|
+
set showOtherMonthDays(value) {
|
|
10571
|
+
this._showOtherMonthDays.set(value);
|
|
10572
|
+
}
|
|
10573
|
+
get showOtherMonthDays() {
|
|
10574
|
+
return this._showOtherMonthDays();
|
|
10575
|
+
}
|
|
10172
10576
|
/**
|
|
10173
10577
|
* Specifies the active view that the Calendar initially renders ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/calendar/view-options#active-view)).
|
|
10174
10578
|
*
|
|
10175
10579
|
* You have to set `activeView` within the `topView`-`bottomView` range.
|
|
10176
10580
|
* @default 'month'
|
|
10177
10581
|
*/
|
|
10178
|
-
activeView
|
|
10582
|
+
set activeView(value) {
|
|
10583
|
+
this._activeView.set(value);
|
|
10584
|
+
}
|
|
10585
|
+
get activeView() {
|
|
10586
|
+
return this._activeView();
|
|
10587
|
+
}
|
|
10179
10588
|
/**
|
|
10180
10589
|
* Specifies the bottommost Calendar view to which you can navigate ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/calendar-options#view-selection-depth)).
|
|
10181
10590
|
* @default 'month'
|
|
10182
10591
|
*/
|
|
10183
|
-
bottomView
|
|
10592
|
+
set bottomView(value) {
|
|
10593
|
+
this._bottomView.set(value);
|
|
10594
|
+
}
|
|
10595
|
+
get bottomView() {
|
|
10596
|
+
return this._bottomView();
|
|
10597
|
+
}
|
|
10184
10598
|
/**
|
|
10185
10599
|
* Specifies the topmost Calendar view to which you can navigate ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/calendar-options#view-selection-depth)).
|
|
10186
10600
|
* @default 'century'
|
|
10187
10601
|
*/
|
|
10188
|
-
topView
|
|
10602
|
+
set topView(value) {
|
|
10603
|
+
this._topView.set(value);
|
|
10604
|
+
}
|
|
10605
|
+
get topView() {
|
|
10606
|
+
return this._topView();
|
|
10607
|
+
}
|
|
10189
10608
|
/**
|
|
10190
10609
|
* Specifies the Calendar type.
|
|
10191
10610
|
* @default 'infinite'
|
|
10192
10611
|
*/
|
|
10193
|
-
calendarType
|
|
10612
|
+
set calendarType(value) {
|
|
10613
|
+
this._calendarType.set(value);
|
|
10614
|
+
}
|
|
10615
|
+
get calendarType() {
|
|
10616
|
+
return this._calendarType();
|
|
10617
|
+
}
|
|
10194
10618
|
/**
|
|
10195
10619
|
* Determines whether to enable animation when navigating to previous/next Calendar view.
|
|
10196
10620
|
* Applies to the [`classic`](https://www.telerik.com/kendo-angular-ui/components/dateinputs/api/datepickercomponent#calendartype) Calendar only.
|
|
@@ -10199,18 +10623,33 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10199
10623
|
*
|
|
10200
10624
|
* @default false
|
|
10201
10625
|
*/
|
|
10202
|
-
animateCalendarNavigation
|
|
10626
|
+
set animateCalendarNavigation(value) {
|
|
10627
|
+
this._animateCalendarNavigation.set(value);
|
|
10628
|
+
}
|
|
10629
|
+
get animateCalendarNavigation() {
|
|
10630
|
+
return this._animateCalendarNavigation();
|
|
10631
|
+
}
|
|
10203
10632
|
/**
|
|
10204
10633
|
* Specifies or gets the `disabled` property of the DatePicker and determines whether the component is active ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/disabled-state)).
|
|
10205
10634
|
* To learn how to disable the component in reactive forms, refer to the article on [Forms Support](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/forms#managing-the-datepicker-disabled-state-in-reactive-forms).
|
|
10206
10635
|
*/
|
|
10207
|
-
disabled
|
|
10636
|
+
set disabled(value) {
|
|
10637
|
+
this._disabled.set(value);
|
|
10638
|
+
}
|
|
10639
|
+
get disabled() {
|
|
10640
|
+
return this._disabled();
|
|
10641
|
+
}
|
|
10208
10642
|
/**
|
|
10209
10643
|
* Specifies the read-only state of the DatePicker ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/readonly-state#read-only-datepicker)).
|
|
10210
10644
|
*
|
|
10211
10645
|
* @default false
|
|
10212
10646
|
*/
|
|
10213
|
-
readonly
|
|
10647
|
+
set readonly(value) {
|
|
10648
|
+
this._readonly.set(value);
|
|
10649
|
+
}
|
|
10650
|
+
get readonly() {
|
|
10651
|
+
return this._readonly();
|
|
10652
|
+
}
|
|
10214
10653
|
/**
|
|
10215
10654
|
* Sets the read-only state of the DatePicker input field
|
|
10216
10655
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/readonly-state#read-only-input)).
|
|
@@ -10218,7 +10657,12 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10218
10657
|
* If you set the [`readonly`](https://www.telerik.com/kendo-angular-ui/components/dateinputs/api/datepickercomponent#readonly) property value to `true`,
|
|
10219
10658
|
* the input will be rendered in a read-only state regardless of the `readOnlyInput` value.
|
|
10220
10659
|
*/
|
|
10221
|
-
readOnlyInput
|
|
10660
|
+
set readOnlyInput(value) {
|
|
10661
|
+
this._readOnlyInput.set(value);
|
|
10662
|
+
}
|
|
10663
|
+
get readOnlyInput() {
|
|
10664
|
+
return this._readOnlyInput();
|
|
10665
|
+
}
|
|
10222
10666
|
/**
|
|
10223
10667
|
* Configures the popup options of the DatePicker.
|
|
10224
10668
|
*
|
|
@@ -10227,10 +10671,10 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10227
10671
|
* The popupClass option specifies a list of CSS classes that are used to style the popup.
|
|
10228
10672
|
*/
|
|
10229
10673
|
set popupSettings(settings) {
|
|
10230
|
-
this._popupSettings
|
|
10674
|
+
this._popupSettings.set({ animate: true, ...settings });
|
|
10231
10675
|
}
|
|
10232
10676
|
get popupSettings() {
|
|
10233
|
-
return this._popupSettings;
|
|
10677
|
+
return this._popupSettings();
|
|
10234
10678
|
}
|
|
10235
10679
|
/**
|
|
10236
10680
|
* Sets or gets the `navigation` property of the Calendar
|
|
@@ -10238,72 +10682,122 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10238
10682
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/sidebar)).
|
|
10239
10683
|
*/
|
|
10240
10684
|
set navigation(state) {
|
|
10241
|
-
this._navigation
|
|
10685
|
+
this._navigation.set(state);
|
|
10242
10686
|
}
|
|
10243
10687
|
get navigation() {
|
|
10244
10688
|
if (this.isAdaptive) {
|
|
10245
10689
|
return;
|
|
10246
10690
|
}
|
|
10247
|
-
return this._navigation;
|
|
10691
|
+
return this._navigation();
|
|
10248
10692
|
}
|
|
10249
|
-
_navigation = true;
|
|
10693
|
+
_navigation = signal(true, ...(ngDevMode ? [{ debugName: "_navigation" }] : []));
|
|
10250
10694
|
/**
|
|
10251
10695
|
* Specifies the smallest valid date
|
|
10252
10696
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/date-ranges)).
|
|
10253
10697
|
* @default 1900-1-1
|
|
10254
10698
|
*/
|
|
10255
|
-
min
|
|
10699
|
+
set min(value) {
|
|
10700
|
+
this._min.set(value);
|
|
10701
|
+
}
|
|
10702
|
+
get min() {
|
|
10703
|
+
return this._min();
|
|
10704
|
+
}
|
|
10256
10705
|
/**
|
|
10257
10706
|
* Specifies the biggest valid date
|
|
10258
10707
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/date-ranges)).
|
|
10259
10708
|
* @default 2099-12-31
|
|
10260
10709
|
*/
|
|
10261
|
-
max
|
|
10710
|
+
set max(value) {
|
|
10711
|
+
this._max.set(value);
|
|
10712
|
+
}
|
|
10713
|
+
get max() {
|
|
10714
|
+
return this._max();
|
|
10715
|
+
}
|
|
10262
10716
|
/**
|
|
10263
10717
|
* Determines whether the built-in validation for incomplete dates is to be enforced when a form is being validated.
|
|
10264
10718
|
* @default false
|
|
10265
10719
|
*/
|
|
10266
|
-
incompleteDateValidation
|
|
10720
|
+
set incompleteDateValidation(value) {
|
|
10721
|
+
this._incompleteDateValidation.set(value);
|
|
10722
|
+
}
|
|
10723
|
+
get incompleteDateValidation() {
|
|
10724
|
+
return this._incompleteDateValidation();
|
|
10725
|
+
}
|
|
10267
10726
|
/**
|
|
10268
10727
|
* Determines whether to autocorrect invalid segments automatically.
|
|
10269
10728
|
*
|
|
10270
10729
|
* @default true
|
|
10271
10730
|
*/
|
|
10272
|
-
autoCorrectParts
|
|
10731
|
+
set autoCorrectParts(value) {
|
|
10732
|
+
this._autoCorrectParts.set(value);
|
|
10733
|
+
}
|
|
10734
|
+
get autoCorrectParts() {
|
|
10735
|
+
return this._autoCorrectParts();
|
|
10736
|
+
}
|
|
10273
10737
|
/**
|
|
10274
10738
|
* Determines whether to automatically move to the next segment after the user completes the current one.
|
|
10275
10739
|
*
|
|
10276
10740
|
* @default true
|
|
10277
10741
|
*/
|
|
10278
|
-
autoSwitchParts
|
|
10742
|
+
set autoSwitchParts(value) {
|
|
10743
|
+
this._autoSwitchParts.set(value);
|
|
10744
|
+
}
|
|
10745
|
+
get autoSwitchParts() {
|
|
10746
|
+
return this._autoSwitchParts();
|
|
10747
|
+
}
|
|
10279
10748
|
/**
|
|
10280
10749
|
* A string array representing custom keys, which will move the focus to the next date format segment.
|
|
10281
10750
|
*/
|
|
10282
|
-
autoSwitchKeys
|
|
10751
|
+
set autoSwitchKeys(value) {
|
|
10752
|
+
this._autoSwitchKeys.set(value);
|
|
10753
|
+
}
|
|
10754
|
+
get autoSwitchKeys() {
|
|
10755
|
+
return this._autoSwitchKeys();
|
|
10756
|
+
}
|
|
10283
10757
|
/**
|
|
10284
10758
|
* Indicates whether the mouse scroll can be used to increase/decrease the time segments values.
|
|
10285
10759
|
*
|
|
10286
10760
|
* @default true
|
|
10287
10761
|
*/
|
|
10288
|
-
enableMouseWheel
|
|
10762
|
+
set enableMouseWheel(value) {
|
|
10763
|
+
this._enableMouseWheel.set(value);
|
|
10764
|
+
}
|
|
10765
|
+
get enableMouseWheel() {
|
|
10766
|
+
return this._enableMouseWheel();
|
|
10767
|
+
}
|
|
10289
10768
|
/**
|
|
10290
10769
|
* Determines if the users should see a blinking caret inside the Date Input when possible.
|
|
10291
10770
|
*
|
|
10292
10771
|
* @default false
|
|
10293
10772
|
*/
|
|
10294
|
-
allowCaretMode
|
|
10773
|
+
set allowCaretMode(value) {
|
|
10774
|
+
this._allowCaretMode.set(value);
|
|
10775
|
+
}
|
|
10776
|
+
get allowCaretMode() {
|
|
10777
|
+
return this._allowCaretMode();
|
|
10778
|
+
}
|
|
10295
10779
|
/**
|
|
10296
10780
|
* When enabled, the DatePicker will autofill the rest of the date to the current date when the component loses focus.
|
|
10297
10781
|
*
|
|
10298
10782
|
* @default false
|
|
10299
10783
|
*/
|
|
10300
|
-
autoFill
|
|
10784
|
+
set autoFill(value) {
|
|
10785
|
+
this._autoFill.set(value);
|
|
10786
|
+
}
|
|
10787
|
+
get autoFill() {
|
|
10788
|
+
return this._autoFill();
|
|
10789
|
+
}
|
|
10301
10790
|
/**
|
|
10302
10791
|
* Specifies the focused date of the Calendar component
|
|
10303
10792
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/calendar-options#focused-dates)).
|
|
10304
10793
|
* @default null
|
|
10305
10794
|
*/
|
|
10306
|
-
focusedDate
|
|
10795
|
+
set focusedDate(value) {
|
|
10796
|
+
this._focusedDate.set(value);
|
|
10797
|
+
}
|
|
10798
|
+
get focusedDate() {
|
|
10799
|
+
return this._focusedDate();
|
|
10800
|
+
}
|
|
10307
10801
|
/**
|
|
10308
10802
|
* Specifies the value of the DatePicker component.
|
|
10309
10803
|
*
|
|
@@ -10311,10 +10805,10 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10311
10805
|
*/
|
|
10312
10806
|
set value(value) {
|
|
10313
10807
|
this.verifyValue(value);
|
|
10314
|
-
this._value
|
|
10808
|
+
this._value.set(cloneDate(value));
|
|
10315
10809
|
}
|
|
10316
10810
|
get value() {
|
|
10317
|
-
return this._value;
|
|
10811
|
+
return this._value();
|
|
10318
10812
|
}
|
|
10319
10813
|
/**
|
|
10320
10814
|
* Specifies the date format that is used to display the input value
|
|
@@ -10323,7 +10817,12 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10323
10817
|
* Format value options include string to provide a single format that is used regardless whether the input is focused or blurred.
|
|
10324
10818
|
* FormatSettings can be used to display different formats when the component is focused or blurred by providing a settings object with specified inputFormat and displayFormat values.
|
|
10325
10819
|
*/
|
|
10326
|
-
format
|
|
10820
|
+
set format(value) {
|
|
10821
|
+
this._format.set(value);
|
|
10822
|
+
}
|
|
10823
|
+
get format() {
|
|
10824
|
+
return this._format();
|
|
10825
|
+
}
|
|
10327
10826
|
/**
|
|
10328
10827
|
* The maximum year to assume to be from the current century when typing two-digit year value
|
|
10329
10828
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/formats#two-digit-year-format)).
|
|
@@ -10332,75 +10831,120 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10332
10831
|
* will be assumed to be 20xx, while 69 and larger will be assumed to be 19xx.
|
|
10333
10832
|
* @default 68
|
|
10334
10833
|
*/
|
|
10335
|
-
twoDigitYearMax
|
|
10834
|
+
set twoDigitYearMax(value) {
|
|
10835
|
+
this._twoDigitYearMax.set(value);
|
|
10836
|
+
}
|
|
10837
|
+
get twoDigitYearMax() {
|
|
10838
|
+
return this._twoDigitYearMax();
|
|
10839
|
+
}
|
|
10336
10840
|
/**
|
|
10337
10841
|
* Defines the descriptions of the format sections in the input field.
|
|
10338
10842
|
* ([more information and examples](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/placeholders)).
|
|
10339
10843
|
*
|
|
10340
10844
|
*/
|
|
10341
|
-
formatPlaceholder
|
|
10845
|
+
set formatPlaceholder(value) {
|
|
10846
|
+
this._formatPlaceholder.set(value);
|
|
10847
|
+
}
|
|
10848
|
+
get formatPlaceholder() {
|
|
10849
|
+
return this._formatPlaceholder();
|
|
10850
|
+
}
|
|
10342
10851
|
/**
|
|
10343
10852
|
* Specifies the hint the DatePicker displays when its value is `null`.
|
|
10344
10853
|
* ([more information and exaples](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/placeholders)).
|
|
10345
10854
|
*/
|
|
10346
|
-
placeholder
|
|
10855
|
+
set placeholder(value) {
|
|
10856
|
+
this._placeholder.set(value);
|
|
10857
|
+
}
|
|
10858
|
+
get placeholder() {
|
|
10859
|
+
return this._placeholder();
|
|
10860
|
+
}
|
|
10347
10861
|
/**
|
|
10348
10862
|
* Sets the `tabindex` of the DatePicker.
|
|
10349
10863
|
* This property is used to set the order in which the DatePicker will receive focus when navigating through the page using the Tab key.
|
|
10350
10864
|
* @default 0
|
|
10351
10865
|
*/
|
|
10352
|
-
tabindex
|
|
10866
|
+
set tabindex(value) {
|
|
10867
|
+
this._tabindex.set(value);
|
|
10868
|
+
}
|
|
10869
|
+
get tabindex() {
|
|
10870
|
+
return this._tabindex();
|
|
10871
|
+
}
|
|
10353
10872
|
/**
|
|
10354
10873
|
* @hidden
|
|
10355
10874
|
*/
|
|
10356
10875
|
set tabIndex(tabIndex) {
|
|
10357
|
-
this.
|
|
10876
|
+
this._tabindex.set(tabIndex);
|
|
10358
10877
|
}
|
|
10359
10878
|
get tabIndex() {
|
|
10360
|
-
return this.
|
|
10879
|
+
return this._tabindex();
|
|
10361
10880
|
}
|
|
10362
10881
|
/**
|
|
10363
10882
|
* Sets the dates of the DatePicker that will be disabled
|
|
10364
10883
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/disabled-dates)).
|
|
10365
10884
|
*/
|
|
10366
10885
|
set disabledDates(value) {
|
|
10367
|
-
this._disabledDates
|
|
10886
|
+
this._disabledDates.set(value);
|
|
10368
10887
|
this.disabledDatesService.initialize(value);
|
|
10369
10888
|
}
|
|
10370
10889
|
get disabledDates() {
|
|
10371
|
-
return this._disabledDates;
|
|
10890
|
+
return this._disabledDates();
|
|
10372
10891
|
}
|
|
10373
10892
|
/**
|
|
10374
10893
|
* Sets the title of the input element of the DatePicker and the title text rendered
|
|
10375
10894
|
* in the header of the popup(action sheet). Applicable only when [`AdaptiveMode` is set to `auto`](https://www.telerik.com/kendo-angular-ui/components/dateinputs/api/adaptivemode).
|
|
10376
10895
|
* @default ""
|
|
10377
10896
|
*/
|
|
10378
|
-
adaptiveTitle
|
|
10897
|
+
set adaptiveTitle(value) {
|
|
10898
|
+
this._adaptiveTitle.set(value);
|
|
10899
|
+
}
|
|
10900
|
+
get adaptiveTitle() {
|
|
10901
|
+
return this._adaptiveTitle();
|
|
10902
|
+
}
|
|
10379
10903
|
/**
|
|
10380
10904
|
* Sets the subtitle text rendered in the header of the popup(action sheet).
|
|
10381
10905
|
* Applicable only when [`AdaptiveMode` is set to `auto`](https://www.telerik.com/kendo-angular-ui/components/dateinputs/api/adaptivemode).
|
|
10382
10906
|
* @default ""
|
|
10383
10907
|
*/
|
|
10384
|
-
adaptiveSubtitle
|
|
10908
|
+
set adaptiveSubtitle(value) {
|
|
10909
|
+
this._adaptiveSubtitle.set(value);
|
|
10910
|
+
}
|
|
10911
|
+
get adaptiveSubtitle() {
|
|
10912
|
+
return this._adaptiveSubtitle();
|
|
10913
|
+
}
|
|
10385
10914
|
/**
|
|
10386
10915
|
* Determines whether the built-in min or max validators are enforced when validating a form.
|
|
10387
10916
|
*
|
|
10388
10917
|
* @default true
|
|
10389
10918
|
*/
|
|
10390
|
-
rangeValidation
|
|
10919
|
+
set rangeValidation(value) {
|
|
10920
|
+
this._rangeValidation.set(value);
|
|
10921
|
+
}
|
|
10922
|
+
get rangeValidation() {
|
|
10923
|
+
return this._rangeValidation();
|
|
10924
|
+
}
|
|
10391
10925
|
/**
|
|
10392
10926
|
* Determines whether the built-in validator for disabled
|
|
10393
10927
|
* date ranges is enforced when validating a form
|
|
10394
10928
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/disabled-dates#using-a-function)).
|
|
10395
10929
|
* @default true
|
|
10396
10930
|
*/
|
|
10397
|
-
disabledDatesValidation
|
|
10931
|
+
set disabledDatesValidation(value) {
|
|
10932
|
+
this._disabledDatesValidation.set(value);
|
|
10933
|
+
}
|
|
10934
|
+
get disabledDatesValidation() {
|
|
10935
|
+
return this._disabledDatesValidation();
|
|
10936
|
+
}
|
|
10398
10937
|
/**
|
|
10399
10938
|
* Determines whether to display a week number column in the `month` view of the Calendar
|
|
10400
10939
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/calendar-options#week-number-column)).
|
|
10401
10940
|
* @default false
|
|
10402
10941
|
*/
|
|
10403
|
-
weekNumber
|
|
10942
|
+
set weekNumber(value) {
|
|
10943
|
+
this._weekNumber.set(value);
|
|
10944
|
+
}
|
|
10945
|
+
get weekNumber() {
|
|
10946
|
+
return this._weekNumber();
|
|
10947
|
+
}
|
|
10404
10948
|
/**
|
|
10405
10949
|
* Sets the size of the component. The default value is set by the Kendo theme.
|
|
10406
10950
|
*/
|
|
@@ -10411,10 +10955,10 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10411
10955
|
this.renderer.addClass(this.wrapper.nativeElement, getSizeClass('input', size));
|
|
10412
10956
|
this.toggleButton && this.renderer.addClass(this.toggleButton.nativeElement, getSizeClass('button', size));
|
|
10413
10957
|
}
|
|
10414
|
-
this._size
|
|
10958
|
+
this._size.set(size);
|
|
10415
10959
|
}
|
|
10416
10960
|
get size() {
|
|
10417
|
-
return this._size;
|
|
10961
|
+
return this._size();
|
|
10418
10962
|
}
|
|
10419
10963
|
/**
|
|
10420
10964
|
* Specifies the border radius of the component. The default value is set by the Kendo theme.
|
|
@@ -10424,10 +10968,10 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10424
10968
|
if (rounded) {
|
|
10425
10969
|
this.renderer.addClass(this.wrapper.nativeElement, getRoundedClass(rounded));
|
|
10426
10970
|
}
|
|
10427
|
-
this._rounded
|
|
10971
|
+
this._rounded.set(rounded);
|
|
10428
10972
|
}
|
|
10429
10973
|
get rounded() {
|
|
10430
|
-
return this._rounded;
|
|
10974
|
+
return this._rounded();
|
|
10431
10975
|
}
|
|
10432
10976
|
/**
|
|
10433
10977
|
* Specifies the fillMode of the component. The default value is set by the Kendo theme.
|
|
@@ -10439,17 +10983,22 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10439
10983
|
this.toggleButton && this.renderer.addClass(this.toggleButton.nativeElement, getFillModeClass('button', fillMode));
|
|
10440
10984
|
this.renderer.addClass(this.wrapper.nativeElement, getFillModeClass('input', fillMode));
|
|
10441
10985
|
}
|
|
10442
|
-
this._fillMode
|
|
10986
|
+
this._fillMode.set(fillMode);
|
|
10443
10987
|
}
|
|
10444
10988
|
get fillMode() {
|
|
10445
|
-
return this._fillMode;
|
|
10989
|
+
return this._fillMode();
|
|
10446
10990
|
}
|
|
10447
10991
|
/**
|
|
10448
10992
|
* Specifies whether to enable adaptive rendering. When enabled, the DatePicker automatically switches between a calendar popup on larger screens and an ActionSheet on mobile devices.
|
|
10449
10993
|
*
|
|
10450
10994
|
* @default 'none'
|
|
10451
10995
|
*/
|
|
10452
|
-
adaptiveMode
|
|
10996
|
+
set adaptiveMode(value) {
|
|
10997
|
+
this._adaptiveMode.set(value);
|
|
10998
|
+
}
|
|
10999
|
+
get adaptiveMode() {
|
|
11000
|
+
return this._adaptiveMode();
|
|
11001
|
+
}
|
|
10453
11002
|
/**
|
|
10454
11003
|
* Fires each time the user selects a new value
|
|
10455
11004
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/events)).
|
|
@@ -10508,20 +11057,20 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10508
11057
|
}
|
|
10509
11058
|
}
|
|
10510
11059
|
get show() {
|
|
10511
|
-
return this._show;
|
|
11060
|
+
return this._show();
|
|
10512
11061
|
}
|
|
10513
11062
|
set show(show) {
|
|
10514
11063
|
if (show && (this.disabled || this.readonly)) {
|
|
10515
11064
|
return;
|
|
10516
11065
|
}
|
|
10517
|
-
const skipZone = !show && (!this._show || (!hasObservers(this.close) && !hasObservers(this.open)));
|
|
11066
|
+
const skipZone = !show && (!this._show() || (!hasObservers(this.close) && !hasObservers(this.open)));
|
|
10518
11067
|
if (!skipZone) {
|
|
10519
11068
|
this.zone.run(() => {
|
|
10520
11069
|
const event = new PreventableEvent();
|
|
10521
|
-
if (!this._show && show) {
|
|
11070
|
+
if (!this._show() && show) {
|
|
10522
11071
|
this.open.emit(event);
|
|
10523
11072
|
}
|
|
10524
|
-
else if (this._show && !show) {
|
|
11073
|
+
else if (this._show() && !show) {
|
|
10525
11074
|
this.close.emit(event);
|
|
10526
11075
|
}
|
|
10527
11076
|
if (event.isDefaultPrevented()) {
|
|
@@ -10558,11 +11107,11 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10558
11107
|
}
|
|
10559
11108
|
return control.invalid && (control.touched || control.dirty);
|
|
10560
11109
|
}
|
|
10561
|
-
_popupSettings = { animate: true };
|
|
10562
|
-
_show = false;
|
|
10563
|
-
_value = null;
|
|
11110
|
+
_popupSettings = signal({ animate: true }, ...(ngDevMode ? [{ debugName: "_popupSettings" }] : []));
|
|
11111
|
+
_show = signal(false, ...(ngDevMode ? [{ debugName: "_show" }] : []));
|
|
11112
|
+
_value = signal(null, ...(ngDevMode ? [{ debugName: "_value" }] : []));
|
|
10564
11113
|
_active = false;
|
|
10565
|
-
_disabledDates;
|
|
11114
|
+
_disabledDates = signal(undefined, ...(ngDevMode ? [{ debugName: "_disabledDates" }] : []));
|
|
10566
11115
|
onControlChange = noop$2;
|
|
10567
11116
|
onControlTouched = noop$2;
|
|
10568
11117
|
onValidatorChange = noop$2;
|
|
@@ -10578,9 +11127,44 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10578
11127
|
ariaActiveDescendantSubscription;
|
|
10579
11128
|
control;
|
|
10580
11129
|
domEvents = [];
|
|
10581
|
-
_size;
|
|
10582
|
-
_rounded;
|
|
10583
|
-
_fillMode;
|
|
11130
|
+
_size = signal(undefined, ...(ngDevMode ? [{ debugName: "_size" }] : []));
|
|
11131
|
+
_rounded = signal(undefined, ...(ngDevMode ? [{ debugName: "_rounded" }] : []));
|
|
11132
|
+
_fillMode = signal(undefined, ...(ngDevMode ? [{ debugName: "_fillMode" }] : []));
|
|
11133
|
+
_focusableId = signal(undefined, ...(ngDevMode ? [{ debugName: "_focusableId" }] : []));
|
|
11134
|
+
_clearButton = signal(false, ...(ngDevMode ? [{ debugName: "_clearButton" }] : []));
|
|
11135
|
+
_inputAttributes = signal(undefined, ...(ngDevMode ? [{ debugName: "_inputAttributes" }] : []));
|
|
11136
|
+
_footer = signal(false, ...(ngDevMode ? [{ debugName: "_footer" }] : []));
|
|
11137
|
+
_weekDaysFormat = signal('short', ...(ngDevMode ? [{ debugName: "_weekDaysFormat" }] : []));
|
|
11138
|
+
_showOtherMonthDays = signal(undefined, ...(ngDevMode ? [{ debugName: "_showOtherMonthDays" }] : []));
|
|
11139
|
+
_activeView = signal(CalendarViewEnum[CalendarViewEnum.month], ...(ngDevMode ? [{ debugName: "_activeView" }] : []));
|
|
11140
|
+
_bottomView = signal(CalendarViewEnum[CalendarViewEnum.month], ...(ngDevMode ? [{ debugName: "_bottomView" }] : []));
|
|
11141
|
+
_topView = signal(CalendarViewEnum[CalendarViewEnum.century], ...(ngDevMode ? [{ debugName: "_topView" }] : []));
|
|
11142
|
+
_calendarType = signal('infinite', ...(ngDevMode ? [{ debugName: "_calendarType" }] : []));
|
|
11143
|
+
_animateCalendarNavigation = signal(false, ...(ngDevMode ? [{ debugName: "_animateCalendarNavigation" }] : []));
|
|
11144
|
+
_disabled = signal(false, ...(ngDevMode ? [{ debugName: "_disabled" }] : []));
|
|
11145
|
+
_readonly = signal(false, ...(ngDevMode ? [{ debugName: "_readonly" }] : []));
|
|
11146
|
+
_readOnlyInput = signal(false, ...(ngDevMode ? [{ debugName: "_readOnlyInput" }] : []));
|
|
11147
|
+
_min = signal(cloneDate(MIN_DATE), ...(ngDevMode ? [{ debugName: "_min" }] : []));
|
|
11148
|
+
_max = signal(cloneDate(MAX_DATE), ...(ngDevMode ? [{ debugName: "_max" }] : []));
|
|
11149
|
+
_incompleteDateValidation = signal(false, ...(ngDevMode ? [{ debugName: "_incompleteDateValidation" }] : []));
|
|
11150
|
+
_autoCorrectParts = signal(true, ...(ngDevMode ? [{ debugName: "_autoCorrectParts" }] : []));
|
|
11151
|
+
_autoSwitchParts = signal(true, ...(ngDevMode ? [{ debugName: "_autoSwitchParts" }] : []));
|
|
11152
|
+
_autoSwitchKeys = signal([], ...(ngDevMode ? [{ debugName: "_autoSwitchKeys" }] : []));
|
|
11153
|
+
_enableMouseWheel = signal(true, ...(ngDevMode ? [{ debugName: "_enableMouseWheel" }] : []));
|
|
11154
|
+
_allowCaretMode = signal(false, ...(ngDevMode ? [{ debugName: "_allowCaretMode" }] : []));
|
|
11155
|
+
_autoFill = signal(false, ...(ngDevMode ? [{ debugName: "_autoFill" }] : []));
|
|
11156
|
+
_focusedDate = signal(null, ...(ngDevMode ? [{ debugName: "_focusedDate" }] : []));
|
|
11157
|
+
_format = signal(DEFAULT_FORMAT, ...(ngDevMode ? [{ debugName: "_format" }] : []));
|
|
11158
|
+
_twoDigitYearMax = signal(TWO_DIGIT_YEAR_MAX$1, ...(ngDevMode ? [{ debugName: "_twoDigitYearMax" }] : []));
|
|
11159
|
+
_formatPlaceholder = signal(undefined, ...(ngDevMode ? [{ debugName: "_formatPlaceholder" }] : []));
|
|
11160
|
+
_placeholder = signal(undefined, ...(ngDevMode ? [{ debugName: "_placeholder" }] : []));
|
|
11161
|
+
_tabindex = signal(0, ...(ngDevMode ? [{ debugName: "_tabindex" }] : []));
|
|
11162
|
+
_adaptiveTitle = signal('', ...(ngDevMode ? [{ debugName: "_adaptiveTitle" }] : []));
|
|
11163
|
+
_adaptiveSubtitle = signal('', ...(ngDevMode ? [{ debugName: "_adaptiveSubtitle" }] : []));
|
|
11164
|
+
_rangeValidation = signal(true, ...(ngDevMode ? [{ debugName: "_rangeValidation" }] : []));
|
|
11165
|
+
_disabledDatesValidation = signal(true, ...(ngDevMode ? [{ debugName: "_disabledDatesValidation" }] : []));
|
|
11166
|
+
_weekNumber = signal(false, ...(ngDevMode ? [{ debugName: "_weekNumber" }] : []));
|
|
11167
|
+
_adaptiveMode = signal('none', ...(ngDevMode ? [{ debugName: "_adaptiveMode" }] : []));
|
|
10584
11168
|
constructor(zone, localization, cdr, popupService, wrapper, renderer, injector, pickerService, disabledDatesService, adaptiveService) {
|
|
10585
11169
|
super();
|
|
10586
11170
|
this.zone = zone;
|
|
@@ -10630,6 +11214,14 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10630
11214
|
this.setComponentClasses();
|
|
10631
11215
|
this.windowSize = this.adaptiveService.size;
|
|
10632
11216
|
this.pickerSubscriptions.add(this.control?.control?.statusChanges?.subscribe(() => this.cdr.markForCheck()));
|
|
11217
|
+
const control = this.control?.control;
|
|
11218
|
+
if (control && control.events) {
|
|
11219
|
+
this.pickerSubscriptions.add(control.events.subscribe(e => {
|
|
11220
|
+
if (e instanceof TouchedChangeEvent) {
|
|
11221
|
+
this.cdr.markForCheck();
|
|
11222
|
+
}
|
|
11223
|
+
}));
|
|
11224
|
+
}
|
|
10633
11225
|
}
|
|
10634
11226
|
/**
|
|
10635
11227
|
* @hidden
|
|
@@ -10677,7 +11269,6 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10677
11269
|
writeValue(value) {
|
|
10678
11270
|
this.verifyValue(value);
|
|
10679
11271
|
this.value = cloneDate(value);
|
|
10680
|
-
this.cdr.markForCheck();
|
|
10681
11272
|
if (!value && this.dateInput) {
|
|
10682
11273
|
this.dateInput.placeholder = this.placeholder;
|
|
10683
11274
|
this.dateInput.writeValue(value);
|
|
@@ -10699,8 +11290,7 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10699
11290
|
* @hidden
|
|
10700
11291
|
*/
|
|
10701
11292
|
setDisabledState(isDisabled) {
|
|
10702
|
-
this.
|
|
10703
|
-
this.cdr.markForCheck();
|
|
11293
|
+
this._disabled.set(isDisabled);
|
|
10704
11294
|
}
|
|
10705
11295
|
/**
|
|
10706
11296
|
* @hidden
|
|
@@ -10718,7 +11308,7 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10718
11308
|
* @hidden
|
|
10719
11309
|
*/
|
|
10720
11310
|
handleActionSheetCollapse() {
|
|
10721
|
-
//
|
|
11311
|
+
// markForCheck() retained - ActionSheet expanded state does not get updated when overlay is clicked without it
|
|
10722
11312
|
this.cdr.markForCheck();
|
|
10723
11313
|
}
|
|
10724
11314
|
/**
|
|
@@ -10751,7 +11341,11 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10751
11341
|
return;
|
|
10752
11342
|
}
|
|
10753
11343
|
this.resolvedPromise.then(() => {
|
|
10754
|
-
|
|
11344
|
+
const next = (show === undefined) ? !this.show : show;
|
|
11345
|
+
if (next) {
|
|
11346
|
+
this.handleFocus();
|
|
11347
|
+
}
|
|
11348
|
+
this.toggleCalendar(next);
|
|
10755
11349
|
});
|
|
10756
11350
|
}
|
|
10757
11351
|
/**
|
|
@@ -10769,7 +11363,6 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10769
11363
|
//due to async IE focus event
|
|
10770
11364
|
this.handleFocus();
|
|
10771
11365
|
this.show = !this.show;
|
|
10772
|
-
this.cdr.markForCheck();
|
|
10773
11366
|
}
|
|
10774
11367
|
/**
|
|
10775
11368
|
* @hidden
|
|
@@ -10920,10 +11513,10 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10920
11513
|
this.toggleFocus();
|
|
10921
11514
|
}
|
|
10922
11515
|
togglePopup(show) {
|
|
10923
|
-
if (show === this._show) {
|
|
11516
|
+
if (show === this._show()) {
|
|
10924
11517
|
return;
|
|
10925
11518
|
}
|
|
10926
|
-
this._show
|
|
11519
|
+
this._show.set(show);
|
|
10927
11520
|
if (show) {
|
|
10928
11521
|
const direction = this.localization.rtl ? 'right' : 'left';
|
|
10929
11522
|
const appendToComponent = typeof this.popupSettings.appendTo === 'string' && this.popupSettings.appendTo === 'component';
|
|
@@ -10955,7 +11548,7 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10955
11548
|
}
|
|
10956
11549
|
}
|
|
10957
11550
|
toggleActionSheet(show) {
|
|
10958
|
-
if (show === this._show) {
|
|
11551
|
+
if (show === this._show()) {
|
|
10959
11552
|
return;
|
|
10960
11553
|
}
|
|
10961
11554
|
if (show && !this.isOpen) {
|
|
@@ -10973,7 +11566,7 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
10973
11566
|
this.dateInput.focus();
|
|
10974
11567
|
}
|
|
10975
11568
|
}
|
|
10976
|
-
this._show
|
|
11569
|
+
this._show.set(show);
|
|
10977
11570
|
}
|
|
10978
11571
|
setAriaActiveDescendant() {
|
|
10979
11572
|
const focusedCellChangeEvent = this.calendar.type === 'infinite' ?
|
|
@@ -11057,6 +11650,7 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
11057
11650
|
if (hasObservers(this.onBlur) || (this.show && hasObservers(this.close)) || requiresZoneOnBlur(this.control)) {
|
|
11058
11651
|
this.zone.run(() => {
|
|
11059
11652
|
this.blurComponent();
|
|
11653
|
+
// markForCheck() retained - needed after onControlTouched() in zoneless mode
|
|
11060
11654
|
this.cdr.markForCheck();
|
|
11061
11655
|
});
|
|
11062
11656
|
}
|
|
@@ -11078,6 +11672,7 @@ class DatePickerComponent extends MultiTabStop {
|
|
|
11078
11672
|
}
|
|
11079
11673
|
}
|
|
11080
11674
|
handleDateCompletenessChange() {
|
|
11675
|
+
// markForCheck() retained - form validation state needs to re-render in zoneless mode
|
|
11081
11676
|
this.cdr.markForCheck();
|
|
11082
11677
|
this.zone.run(() => this.onValidatorChange());
|
|
11083
11678
|
}
|
|
@@ -12875,65 +13470,156 @@ class TimePickerMessages extends ComponentMessages {
|
|
|
12875
13470
|
/**
|
|
12876
13471
|
* Specifies the text of the **Accept** button in the popup footer of the TimeList.
|
|
12877
13472
|
*/
|
|
12878
|
-
accept
|
|
13473
|
+
set accept(value) {
|
|
13474
|
+
this._accept.set(value);
|
|
13475
|
+
}
|
|
13476
|
+
get accept() {
|
|
13477
|
+
return this._accept();
|
|
13478
|
+
}
|
|
12879
13479
|
/**
|
|
12880
13480
|
* Specifies the label of the **Accept** button in the popup footer of the TimeList.
|
|
12881
13481
|
*/
|
|
12882
|
-
acceptLabel
|
|
13482
|
+
set acceptLabel(value) {
|
|
13483
|
+
this._acceptLabel.set(value);
|
|
13484
|
+
}
|
|
13485
|
+
get acceptLabel() {
|
|
13486
|
+
return this._acceptLabel();
|
|
13487
|
+
}
|
|
12883
13488
|
/**
|
|
12884
13489
|
* Specifies the text of the **Cancel** button in the popup footer of the TimeList.
|
|
12885
13490
|
*/
|
|
12886
|
-
cancel
|
|
13491
|
+
set cancel(value) {
|
|
13492
|
+
this._cancel.set(value);
|
|
13493
|
+
}
|
|
13494
|
+
get cancel() {
|
|
13495
|
+
return this._cancel();
|
|
13496
|
+
}
|
|
12887
13497
|
/**
|
|
12888
13498
|
* Specifies the label of the **Cancel** button in the popup footer of the TimeList.
|
|
12889
13499
|
*/
|
|
12890
|
-
cancelLabel
|
|
13500
|
+
set cancelLabel(value) {
|
|
13501
|
+
this._cancelLabel.set(value);
|
|
13502
|
+
}
|
|
13503
|
+
get cancelLabel() {
|
|
13504
|
+
return this._cancelLabel();
|
|
13505
|
+
}
|
|
12891
13506
|
/**
|
|
12892
13507
|
* Specifies the text of the **Now** button in the popup header of the TimeList.
|
|
12893
13508
|
*/
|
|
12894
|
-
now
|
|
13509
|
+
set now(value) {
|
|
13510
|
+
this._now.set(value);
|
|
13511
|
+
}
|
|
13512
|
+
get now() {
|
|
13513
|
+
return this._now();
|
|
13514
|
+
}
|
|
12895
13515
|
/**
|
|
12896
13516
|
* Specifies the label of the **Now** button in the popup header of the TimeList.
|
|
12897
13517
|
*/
|
|
12898
|
-
nowLabel
|
|
13518
|
+
set nowLabel(value) {
|
|
13519
|
+
this._nowLabel.set(value);
|
|
13520
|
+
}
|
|
13521
|
+
get nowLabel() {
|
|
13522
|
+
return this._nowLabel();
|
|
13523
|
+
}
|
|
12899
13524
|
/**
|
|
12900
13525
|
* Specifies the title of the **Toggle** button of the TimePicker.
|
|
12901
13526
|
*/
|
|
12902
|
-
toggle
|
|
13527
|
+
set toggle(value) {
|
|
13528
|
+
this._toggle.set(value);
|
|
13529
|
+
}
|
|
13530
|
+
get toggle() {
|
|
13531
|
+
return this._toggle();
|
|
13532
|
+
}
|
|
12903
13533
|
/**
|
|
12904
13534
|
* Specifies the label of the **Hour** part in the TimePicker.
|
|
12905
13535
|
*/
|
|
12906
|
-
hour
|
|
13536
|
+
set hour(value) {
|
|
13537
|
+
this._hour.set(value);
|
|
13538
|
+
}
|
|
13539
|
+
get hour() {
|
|
13540
|
+
return this._hour();
|
|
13541
|
+
}
|
|
12907
13542
|
/**
|
|
12908
13543
|
* Specifies the label of the **Minute** part in the TimePicker.
|
|
12909
13544
|
*/
|
|
12910
|
-
minute
|
|
13545
|
+
set minute(value) {
|
|
13546
|
+
this._minute.set(value);
|
|
13547
|
+
}
|
|
13548
|
+
get minute() {
|
|
13549
|
+
return this._minute();
|
|
13550
|
+
}
|
|
12911
13551
|
/**
|
|
12912
13552
|
* Specifies the label of the **Second** part in the TimePicker.
|
|
12913
13553
|
*/
|
|
12914
|
-
second
|
|
13554
|
+
set second(value) {
|
|
13555
|
+
this._second.set(value);
|
|
13556
|
+
}
|
|
13557
|
+
get second() {
|
|
13558
|
+
return this._second();
|
|
13559
|
+
}
|
|
12915
13560
|
/**
|
|
12916
13561
|
* Specifies the label of the **Millisecond** part in the TimePicker.
|
|
12917
13562
|
*/
|
|
12918
|
-
millisecond
|
|
13563
|
+
set millisecond(value) {
|
|
13564
|
+
this._millisecond.set(value);
|
|
13565
|
+
}
|
|
13566
|
+
get millisecond() {
|
|
13567
|
+
return this._millisecond();
|
|
13568
|
+
}
|
|
12919
13569
|
/**
|
|
12920
13570
|
* Specifies the label of the **Dayperiod** part in the TimePicker.
|
|
12921
13571
|
*/
|
|
12922
|
-
dayperiod
|
|
13572
|
+
set dayperiod(value) {
|
|
13573
|
+
this._dayperiod.set(value);
|
|
13574
|
+
}
|
|
13575
|
+
get dayperiod() {
|
|
13576
|
+
return this._dayperiod();
|
|
13577
|
+
}
|
|
12923
13578
|
/**
|
|
12924
13579
|
* Specifies the title of the **Clear** button of the TimePicker.
|
|
12925
13580
|
*/
|
|
12926
|
-
clearTitle
|
|
13581
|
+
set clearTitle(value) {
|
|
13582
|
+
this._clearTitle.set(value);
|
|
13583
|
+
}
|
|
13584
|
+
get clearTitle() {
|
|
13585
|
+
return this._clearTitle();
|
|
13586
|
+
}
|
|
12927
13587
|
/**
|
|
12928
|
-
* Specifies the
|
|
13588
|
+
* Specifies the accessible label of the TimeSelector.
|
|
12929
13589
|
*/
|
|
12930
|
-
|
|
13590
|
+
set timeSelectorLabel(value) {
|
|
13591
|
+
this._timeSelectorLabel.set(value);
|
|
13592
|
+
}
|
|
13593
|
+
;
|
|
13594
|
+
get timeSelectorLabel() {
|
|
13595
|
+
return this._timeSelectorLabel();
|
|
13596
|
+
}
|
|
12931
13597
|
/**
|
|
12932
|
-
* Specifies the
|
|
13598
|
+
* Specifies the title of the **Close** button of the ActionSheet that renders instead of the popup when using small screen devices in adaptive mode.
|
|
12933
13599
|
*/
|
|
12934
|
-
|
|
13600
|
+
set adaptiveCloseButtonTitle(value) {
|
|
13601
|
+
this._adaptiveCloseButtonTitle.set(value);
|
|
13602
|
+
}
|
|
13603
|
+
get adaptiveCloseButtonTitle() {
|
|
13604
|
+
return this._adaptiveCloseButtonTitle();
|
|
13605
|
+
}
|
|
13606
|
+
_accept = signal(undefined, ...(ngDevMode ? [{ debugName: "_accept" }] : []));
|
|
13607
|
+
_acceptLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_acceptLabel" }] : []));
|
|
13608
|
+
_cancel = signal(undefined, ...(ngDevMode ? [{ debugName: "_cancel" }] : []));
|
|
13609
|
+
_cancelLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_cancelLabel" }] : []));
|
|
13610
|
+
_now = signal(undefined, ...(ngDevMode ? [{ debugName: "_now" }] : []));
|
|
13611
|
+
_nowLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_nowLabel" }] : []));
|
|
13612
|
+
_toggle = signal(undefined, ...(ngDevMode ? [{ debugName: "_toggle" }] : []));
|
|
13613
|
+
_hour = signal(undefined, ...(ngDevMode ? [{ debugName: "_hour" }] : []));
|
|
13614
|
+
_minute = signal(undefined, ...(ngDevMode ? [{ debugName: "_minute" }] : []));
|
|
13615
|
+
_second = signal(undefined, ...(ngDevMode ? [{ debugName: "_second" }] : []));
|
|
13616
|
+
_millisecond = signal(undefined, ...(ngDevMode ? [{ debugName: "_millisecond" }] : []));
|
|
13617
|
+
_dayperiod = signal(undefined, ...(ngDevMode ? [{ debugName: "_dayperiod" }] : []));
|
|
13618
|
+
_clearTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_clearTitle" }] : []));
|
|
13619
|
+
_adaptiveCloseButtonTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_adaptiveCloseButtonTitle" }] : []));
|
|
13620
|
+
_timeSelectorLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_timeSelectorLabel" }] : []));
|
|
12935
13621
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TimePickerMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
12936
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.27", type: TimePickerMessages, isStandalone: true, selector: "kendo-timepicker-messages-base", inputs: { accept: "accept", acceptLabel: "acceptLabel", cancel: "cancel", cancelLabel: "cancelLabel", now: "now", nowLabel: "nowLabel", toggle: "toggle", hour: "hour", minute: "minute", second: "second", millisecond: "millisecond", dayperiod: "dayperiod", clearTitle: "clearTitle",
|
|
13622
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.27", type: TimePickerMessages, isStandalone: true, selector: "kendo-timepicker-messages-base", inputs: { accept: "accept", acceptLabel: "acceptLabel", cancel: "cancel", cancelLabel: "cancelLabel", now: "now", nowLabel: "nowLabel", toggle: "toggle", hour: "hour", minute: "minute", second: "second", millisecond: "millisecond", dayperiod: "dayperiod", clearTitle: "clearTitle", timeSelectorLabel: "timeSelectorLabel", adaptiveCloseButtonTitle: "adaptiveCloseButtonTitle" }, usesInheritance: true, ngImport: i0 });
|
|
12937
13623
|
}
|
|
12938
13624
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TimePickerMessages, decorators: [{
|
|
12939
13625
|
type: Directive,
|
|
@@ -12966,10 +13652,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
12966
13652
|
type: Input
|
|
12967
13653
|
}], clearTitle: [{
|
|
12968
13654
|
type: Input
|
|
12969
|
-
}], adaptiveCloseButtonTitle: [{
|
|
12970
|
-
type: Input
|
|
12971
13655
|
}], timeSelectorLabel: [{
|
|
12972
13656
|
type: Input
|
|
13657
|
+
}], adaptiveCloseButtonTitle: [{
|
|
13658
|
+
type: Input
|
|
12973
13659
|
}] } });
|
|
12974
13660
|
|
|
12975
13661
|
/**
|
|
@@ -13129,7 +13815,7 @@ class TimeSelectorComponent {
|
|
|
13129
13815
|
set current(value) {
|
|
13130
13816
|
this._current = timeInRange(this.snapTime(cloneDate(value || MIDNIGHT_DATE), this.min), this.min, this.max);
|
|
13131
13817
|
if (!NgZone.isInAngularZone()) {
|
|
13132
|
-
this.cdr.
|
|
13818
|
+
this.cdr.markForCheck();
|
|
13133
13819
|
}
|
|
13134
13820
|
}
|
|
13135
13821
|
get current() {
|
|
@@ -13891,7 +14577,12 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
13891
14577
|
/**
|
|
13892
14578
|
* @hidden
|
|
13893
14579
|
*/
|
|
13894
|
-
focusableId
|
|
14580
|
+
set focusableId(value) {
|
|
14581
|
+
this._focusableId.set(value);
|
|
14582
|
+
}
|
|
14583
|
+
get focusableId() {
|
|
14584
|
+
return this._focusableId();
|
|
14585
|
+
}
|
|
13895
14586
|
/**
|
|
13896
14587
|
* Determines whether the TimePicker is disabled
|
|
13897
14588
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/timepicker/disabled-state)).
|
|
@@ -13899,14 +14590,24 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
13899
14590
|
*
|
|
13900
14591
|
* @default false
|
|
13901
14592
|
*/
|
|
13902
|
-
disabled
|
|
14593
|
+
set disabled(value) {
|
|
14594
|
+
this._disabled.set(value);
|
|
14595
|
+
}
|
|
14596
|
+
get disabled() {
|
|
14597
|
+
return this._disabled();
|
|
14598
|
+
}
|
|
13903
14599
|
/**
|
|
13904
14600
|
* Determines the read-only state of the TimePicker
|
|
13905
14601
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/timepicker/readonly-state#read-only-timepicker)).
|
|
13906
14602
|
*
|
|
13907
14603
|
* @default false
|
|
13908
14604
|
*/
|
|
13909
|
-
readonly
|
|
14605
|
+
set readonly(value) {
|
|
14606
|
+
this._readonly.set(value);
|
|
14607
|
+
}
|
|
14608
|
+
get readonly() {
|
|
14609
|
+
return this._readonly();
|
|
14610
|
+
}
|
|
13910
14611
|
/**
|
|
13911
14612
|
* Sets the read-only state of the TimePicker input field
|
|
13912
14613
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/timepicker/readonly-state#read-only-input)).
|
|
@@ -13915,42 +14616,67 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
13915
14616
|
* the input will be rendered in a read-only state regardless of the `readOnlyInput` value.
|
|
13916
14617
|
* @default false
|
|
13917
14618
|
*/
|
|
13918
|
-
readOnlyInput
|
|
14619
|
+
set readOnlyInput(value) {
|
|
14620
|
+
this._readOnlyInput.set(value);
|
|
14621
|
+
}
|
|
14622
|
+
get readOnlyInput() {
|
|
14623
|
+
return this._readOnlyInput();
|
|
14624
|
+
}
|
|
13919
14625
|
/**
|
|
13920
14626
|
* If set to `true`, renders a clear button after the input text or TimePicker value has been changed.
|
|
13921
14627
|
* Clicking this button resets the value of the component to `null` and triggers the `valueChange` event.
|
|
13922
14628
|
* @default false
|
|
13923
14629
|
*/
|
|
13924
|
-
clearButton
|
|
14630
|
+
set clearButton(value) {
|
|
14631
|
+
this._clearButton.set(value);
|
|
14632
|
+
}
|
|
14633
|
+
get clearButton() {
|
|
14634
|
+
return this._clearButton();
|
|
14635
|
+
}
|
|
13925
14636
|
/**
|
|
13926
14637
|
* Specifies the time format that is used to display the input value
|
|
13927
14638
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/timepicker/formats)).
|
|
13928
14639
|
* @default 't'
|
|
13929
14640
|
*/
|
|
13930
|
-
format
|
|
14641
|
+
set format(value) {
|
|
14642
|
+
this._format.set(value);
|
|
14643
|
+
}
|
|
14644
|
+
get format() {
|
|
14645
|
+
return this._format();
|
|
14646
|
+
}
|
|
13931
14647
|
/**
|
|
13932
14648
|
* Defines the descriptions of the format sections in the input field.
|
|
13933
14649
|
* For more information, refer to the article on
|
|
13934
14650
|
* [placeholders](https://www.telerik.com/kendo-angular-ui/components/dateinputs/timepicker/placeholders).
|
|
13935
14651
|
*/
|
|
13936
|
-
formatPlaceholder
|
|
14652
|
+
set formatPlaceholder(value) {
|
|
14653
|
+
this._formatPlaceholder.set(value);
|
|
14654
|
+
}
|
|
14655
|
+
get formatPlaceholder() {
|
|
14656
|
+
return this._formatPlaceholder();
|
|
14657
|
+
}
|
|
13937
14658
|
/**
|
|
13938
14659
|
* Specifies the hint the TimePicker displays when its value is `null`.
|
|
13939
14660
|
* For more information, refer to the article on
|
|
13940
14661
|
* [placeholders](https://www.telerik.com/kendo-angular-ui/components/dateinputs/timepicker/placeholders).
|
|
13941
14662
|
* @default null
|
|
13942
14663
|
*/
|
|
13943
|
-
placeholder
|
|
14664
|
+
set placeholder(value) {
|
|
14665
|
+
this._placeholder.set(value);
|
|
14666
|
+
}
|
|
14667
|
+
get placeholder() {
|
|
14668
|
+
return this._placeholder();
|
|
14669
|
+
}
|
|
13944
14670
|
/**
|
|
13945
14671
|
* Specifies the smallest valid time value
|
|
13946
14672
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/timepicker/time-ranges)).
|
|
13947
14673
|
* @default `00:00:00`
|
|
13948
14674
|
*/
|
|
13949
14675
|
set min(min) {
|
|
13950
|
-
this._min
|
|
14676
|
+
this._min.set(cloneDate(min || MIN_TIME));
|
|
13951
14677
|
}
|
|
13952
14678
|
get min() {
|
|
13953
|
-
return this._min;
|
|
14679
|
+
return this._min();
|
|
13954
14680
|
}
|
|
13955
14681
|
/**
|
|
13956
14682
|
* Specifies the biggest valid time value
|
|
@@ -13958,45 +14684,75 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
13958
14684
|
* @default `23:59:59`
|
|
13959
14685
|
*/
|
|
13960
14686
|
set max(max) {
|
|
13961
|
-
this._max
|
|
14687
|
+
this._max.set(cloneDate(max || MAX_TIME));
|
|
13962
14688
|
}
|
|
13963
14689
|
get max() {
|
|
13964
|
-
return this._max;
|
|
14690
|
+
return this._max();
|
|
13965
14691
|
}
|
|
13966
14692
|
/**
|
|
13967
14693
|
* Determines whether the built-in validation for incomplete dates is to be enforced when a form is being validated.
|
|
13968
14694
|
*
|
|
13969
14695
|
* @default false
|
|
13970
14696
|
*/
|
|
13971
|
-
incompleteDateValidation
|
|
14697
|
+
set incompleteDateValidation(value) {
|
|
14698
|
+
this._incompleteDateValidation.set(value);
|
|
14699
|
+
}
|
|
14700
|
+
get incompleteDateValidation() {
|
|
14701
|
+
return this._incompleteDateValidation();
|
|
14702
|
+
}
|
|
13972
14703
|
/**
|
|
13973
14704
|
* Determines whether to automatically move to the next segment after the user completes the current one.
|
|
13974
14705
|
*
|
|
13975
14706
|
* @default true
|
|
13976
14707
|
*/
|
|
13977
|
-
autoSwitchParts
|
|
14708
|
+
set autoSwitchParts(value) {
|
|
14709
|
+
this._autoSwitchParts.set(value);
|
|
14710
|
+
}
|
|
14711
|
+
get autoSwitchParts() {
|
|
14712
|
+
return this._autoSwitchParts();
|
|
14713
|
+
}
|
|
13978
14714
|
/**
|
|
13979
14715
|
* A string array representing custom keys, which will move the focus to the next date format segment.
|
|
13980
14716
|
*/
|
|
13981
|
-
autoSwitchKeys
|
|
14717
|
+
set autoSwitchKeys(value) {
|
|
14718
|
+
this._autoSwitchKeys.set(value);
|
|
14719
|
+
}
|
|
14720
|
+
get autoSwitchKeys() {
|
|
14721
|
+
return this._autoSwitchKeys();
|
|
14722
|
+
}
|
|
13982
14723
|
/**
|
|
13983
14724
|
* Indicates whether the mouse scroll can be used to increase/decrease the time segments values.
|
|
13984
14725
|
*
|
|
13985
14726
|
* @default true
|
|
13986
14727
|
*/
|
|
13987
|
-
enableMouseWheel
|
|
14728
|
+
set enableMouseWheel(value) {
|
|
14729
|
+
this._enableMouseWheel.set(value);
|
|
14730
|
+
}
|
|
14731
|
+
get enableMouseWheel() {
|
|
14732
|
+
return this._enableMouseWheel();
|
|
14733
|
+
}
|
|
13988
14734
|
/**
|
|
13989
14735
|
* Determines if the users should see a blinking caret inside the Date Input when possible.
|
|
13990
14736
|
*
|
|
13991
14737
|
* @default false
|
|
13992
14738
|
*/
|
|
13993
|
-
allowCaretMode
|
|
14739
|
+
set allowCaretMode(value) {
|
|
14740
|
+
this._allowCaretMode.set(value);
|
|
14741
|
+
}
|
|
14742
|
+
get allowCaretMode() {
|
|
14743
|
+
return this._allowCaretMode();
|
|
14744
|
+
}
|
|
13994
14745
|
/**
|
|
13995
14746
|
* Determines whether to display the **Cancel** button in the popup.
|
|
13996
14747
|
*
|
|
13997
14748
|
* @default true
|
|
13998
14749
|
*/
|
|
13999
|
-
cancelButton
|
|
14750
|
+
set cancelButton(value) {
|
|
14751
|
+
this._cancelButton.set(value);
|
|
14752
|
+
}
|
|
14753
|
+
get cancelButton() {
|
|
14754
|
+
return this._cancelButton();
|
|
14755
|
+
}
|
|
14000
14756
|
/**
|
|
14001
14757
|
* Determines whether to display the **Now** button in the popup.
|
|
14002
14758
|
*
|
|
@@ -14004,7 +14760,12 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14004
14760
|
*
|
|
14005
14761
|
* @default true
|
|
14006
14762
|
*/
|
|
14007
|
-
nowButton
|
|
14763
|
+
set nowButton(value) {
|
|
14764
|
+
this._nowButton.set(value);
|
|
14765
|
+
}
|
|
14766
|
+
get nowButton() {
|
|
14767
|
+
return this._nowButton();
|
|
14768
|
+
}
|
|
14008
14769
|
/**
|
|
14009
14770
|
* Configures the incremental steps of the TimePicker.
|
|
14010
14771
|
* For more information, refer to the article on
|
|
@@ -14013,10 +14774,10 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14013
14774
|
* If the incremental step is greater than `1`, the **Now** button will be hidden.
|
|
14014
14775
|
*/
|
|
14015
14776
|
set steps(steps) {
|
|
14016
|
-
this._steps
|
|
14777
|
+
this._steps.set(steps || {});
|
|
14017
14778
|
}
|
|
14018
14779
|
get steps() {
|
|
14019
|
-
return this._steps;
|
|
14780
|
+
return this._steps();
|
|
14020
14781
|
}
|
|
14021
14782
|
/**
|
|
14022
14783
|
* Configures the popup of the TimePicker.
|
|
@@ -14026,47 +14787,72 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14026
14787
|
* The `popupClass` option specifies a list of CSS classes that are used to style the popup.
|
|
14027
14788
|
*/
|
|
14028
14789
|
set popupSettings(settings) {
|
|
14029
|
-
this._popupSettings
|
|
14790
|
+
this._popupSettings.set(Object.assign({}, { animate: true }, settings));
|
|
14030
14791
|
}
|
|
14031
14792
|
get popupSettings() {
|
|
14032
|
-
return this._popupSettings;
|
|
14793
|
+
return this._popupSettings();
|
|
14033
14794
|
}
|
|
14034
14795
|
/**
|
|
14035
14796
|
* Sets the tabindex of the TimePicker component.
|
|
14036
14797
|
* @default 0
|
|
14037
14798
|
*/
|
|
14038
|
-
tabindex
|
|
14799
|
+
set tabindex(value) {
|
|
14800
|
+
this._tabindex.set(value);
|
|
14801
|
+
}
|
|
14802
|
+
get tabindex() {
|
|
14803
|
+
return this._tabindex();
|
|
14804
|
+
}
|
|
14039
14805
|
/**
|
|
14040
14806
|
* @hidden
|
|
14041
14807
|
*/
|
|
14042
14808
|
set tabIndex(tabIndex) {
|
|
14043
|
-
this.
|
|
14809
|
+
this._tabindex.set(tabIndex);
|
|
14044
14810
|
}
|
|
14045
14811
|
get tabIndex() {
|
|
14046
|
-
return this.
|
|
14812
|
+
return this._tabindex();
|
|
14047
14813
|
}
|
|
14048
14814
|
/**
|
|
14049
14815
|
* Sets the title of the input element of the TimePicker and the title text rendered
|
|
14050
14816
|
* in the header of the popup(action sheet). Applicable only when [`AdaptiveMode` is set to `auto`](https://www.telerik.com/kendo-angular-ui/components/dateinputs/api/adaptivemode).
|
|
14051
14817
|
*/
|
|
14052
|
-
adaptiveTitle
|
|
14818
|
+
set adaptiveTitle(value) {
|
|
14819
|
+
this._adaptiveTitle.set(value);
|
|
14820
|
+
}
|
|
14821
|
+
get adaptiveTitle() {
|
|
14822
|
+
return this._adaptiveTitle();
|
|
14823
|
+
}
|
|
14053
14824
|
/**
|
|
14054
14825
|
* Sets the subtitle text rendered in the header of the popup(action sheet).
|
|
14055
14826
|
* Applicable only when [`AdaptiveMode` is set to `auto`](https://www.telerik.com/kendo-angular-ui/components/dateinputs/api/adaptivemode).
|
|
14056
14827
|
* By default, subtitle is not rendered.
|
|
14057
14828
|
*/
|
|
14058
|
-
adaptiveSubtitle
|
|
14829
|
+
set adaptiveSubtitle(value) {
|
|
14830
|
+
this._adaptiveSubtitle.set(value);
|
|
14831
|
+
}
|
|
14832
|
+
get adaptiveSubtitle() {
|
|
14833
|
+
return this._adaptiveSubtitle();
|
|
14834
|
+
}
|
|
14059
14835
|
/**
|
|
14060
14836
|
* Determines whether the built-in min or max validators are enforced when a form is being validated.
|
|
14061
14837
|
*
|
|
14062
14838
|
* @default true
|
|
14063
14839
|
*/
|
|
14064
|
-
rangeValidation
|
|
14840
|
+
set rangeValidation(value) {
|
|
14841
|
+
this._rangeValidation.set(value);
|
|
14842
|
+
}
|
|
14843
|
+
get rangeValidation() {
|
|
14844
|
+
return this._rangeValidation();
|
|
14845
|
+
}
|
|
14065
14846
|
/**
|
|
14066
14847
|
* Determines whether the TimePicker is in adaptive mode.
|
|
14067
14848
|
* @default 'none'
|
|
14068
14849
|
*/
|
|
14069
|
-
adaptiveMode
|
|
14850
|
+
set adaptiveMode(value) {
|
|
14851
|
+
this._adaptiveMode.set(value);
|
|
14852
|
+
}
|
|
14853
|
+
get adaptiveMode() {
|
|
14854
|
+
return this._adaptiveMode();
|
|
14855
|
+
}
|
|
14070
14856
|
/**
|
|
14071
14857
|
* Determines whether the TimePicker is in adaptive mode.
|
|
14072
14858
|
*
|
|
@@ -14074,10 +14860,10 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14074
14860
|
*/
|
|
14075
14861
|
set value(value) {
|
|
14076
14862
|
this.verifyValue(value);
|
|
14077
|
-
this._value
|
|
14863
|
+
this._value.set(cloneDate(value));
|
|
14078
14864
|
}
|
|
14079
14865
|
get value() {
|
|
14080
|
-
return this._value;
|
|
14866
|
+
return this._value();
|
|
14081
14867
|
}
|
|
14082
14868
|
/**
|
|
14083
14869
|
* Sets the size of the component. The default value is set by the Kendo theme.
|
|
@@ -14089,10 +14875,10 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14089
14875
|
this.renderer.addClass(this.wrapper.nativeElement, getSizeClass('input', size));
|
|
14090
14876
|
this.toggleButton && this.renderer.addClass(this.toggleButton.nativeElement, getSizeClass('button', size));
|
|
14091
14877
|
}
|
|
14092
|
-
this._size
|
|
14878
|
+
this._size.set(size);
|
|
14093
14879
|
}
|
|
14094
14880
|
get size() {
|
|
14095
|
-
return this._size;
|
|
14881
|
+
return this._size();
|
|
14096
14882
|
}
|
|
14097
14883
|
/**
|
|
14098
14884
|
* Sets the rounded styling of the component. The default value is set by the Kendo theme.
|
|
@@ -14103,10 +14889,10 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14103
14889
|
if (rounded) {
|
|
14104
14890
|
this.renderer.addClass(this.wrapper.nativeElement, getRoundedClass(rounded));
|
|
14105
14891
|
}
|
|
14106
|
-
this._rounded
|
|
14892
|
+
this._rounded.set(rounded);
|
|
14107
14893
|
}
|
|
14108
14894
|
get rounded() {
|
|
14109
|
-
return this._rounded;
|
|
14895
|
+
return this._rounded();
|
|
14110
14896
|
}
|
|
14111
14897
|
/**
|
|
14112
14898
|
* Sets the fillMode of the component. The default value is set by the Kendo theme.
|
|
@@ -14118,10 +14904,10 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14118
14904
|
this.renderer.addClass(this.wrapper.nativeElement, getFillModeClass('input', fillMode));
|
|
14119
14905
|
this.toggleButton && this.renderer.addClass(this.toggleButton.nativeElement, getFillModeClass('button', fillMode));
|
|
14120
14906
|
}
|
|
14121
|
-
this._fillMode
|
|
14907
|
+
this._fillMode.set(fillMode);
|
|
14122
14908
|
}
|
|
14123
14909
|
get fillMode() {
|
|
14124
|
-
return this._fillMode;
|
|
14910
|
+
return this._fillMode();
|
|
14125
14911
|
}
|
|
14126
14912
|
/**
|
|
14127
14913
|
* Sets the HTML attributes of the inner focusable input element. Attributes which are essential for certain component functionalities cannot be changed.
|
|
@@ -14129,7 +14915,12 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14129
14915
|
* @remarks
|
|
14130
14916
|
* This property is related to accessibility.
|
|
14131
14917
|
*/
|
|
14132
|
-
inputAttributes
|
|
14918
|
+
set inputAttributes(value) {
|
|
14919
|
+
this._inputAttributes.set(value);
|
|
14920
|
+
}
|
|
14921
|
+
get inputAttributes() {
|
|
14922
|
+
return this._inputAttributes();
|
|
14923
|
+
}
|
|
14133
14924
|
/**
|
|
14134
14925
|
* Fires each time the user selects a new value
|
|
14135
14926
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/timepicker/events)).
|
|
@@ -14192,20 +14983,20 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14192
14983
|
}
|
|
14193
14984
|
}
|
|
14194
14985
|
get show() {
|
|
14195
|
-
return this._show;
|
|
14986
|
+
return this._show();
|
|
14196
14987
|
}
|
|
14197
14988
|
set show(show) {
|
|
14198
14989
|
if (show && (this.disabled || this.readonly)) {
|
|
14199
14990
|
return;
|
|
14200
14991
|
}
|
|
14201
|
-
const skipZone = !show && (!this._show || (!hasObservers(this.close) && !hasObservers(this.open)));
|
|
14992
|
+
const skipZone = !show && (!this._show() || (!hasObservers(this.close) && !hasObservers(this.open)));
|
|
14202
14993
|
if (!skipZone) {
|
|
14203
14994
|
this.zone.run(() => {
|
|
14204
14995
|
const event = new PreventableEvent();
|
|
14205
|
-
if (!this._show && show) {
|
|
14996
|
+
if (!this._show() && show) {
|
|
14206
14997
|
this.open.emit(event);
|
|
14207
14998
|
}
|
|
14208
|
-
else if (this._show && !show) {
|
|
14999
|
+
else if (this._show() && !show) {
|
|
14209
15000
|
this.close.emit(event);
|
|
14210
15001
|
}
|
|
14211
15002
|
if (event.isDefaultPrevented()) {
|
|
@@ -14261,21 +15052,42 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14261
15052
|
resolvedPromise = Promise.resolve(null);
|
|
14262
15053
|
timeRangeValidateFn = noop$2;
|
|
14263
15054
|
incompleteValidator = noop$2;
|
|
14264
|
-
_min = cloneDate(MIN_TIME);
|
|
14265
|
-
_max = cloneDate(MAX_TIME);
|
|
14266
|
-
_popupSettings = { animate: true };
|
|
14267
|
-
_show = false;
|
|
14268
|
-
_steps = {};
|
|
14269
|
-
_value = null;
|
|
15055
|
+
_min = signal(cloneDate(MIN_TIME), ...(ngDevMode ? [{ debugName: "_min" }] : []));
|
|
15056
|
+
_max = signal(cloneDate(MAX_TIME), ...(ngDevMode ? [{ debugName: "_max" }] : []));
|
|
15057
|
+
_popupSettings = signal({ animate: true }, ...(ngDevMode ? [{ debugName: "_popupSettings" }] : []));
|
|
15058
|
+
_show = signal(false, ...(ngDevMode ? [{ debugName: "_show" }] : []));
|
|
15059
|
+
_steps = signal({}, ...(ngDevMode ? [{ debugName: "_steps" }] : []));
|
|
15060
|
+
_value = signal(null, ...(ngDevMode ? [{ debugName: "_value" }] : []));
|
|
14270
15061
|
_active = false;
|
|
14271
15062
|
localizationChangeSubscription;
|
|
14272
15063
|
pickerSubscriptions;
|
|
14273
15064
|
windowBlurSubscription;
|
|
14274
15065
|
control;
|
|
14275
15066
|
domEvents = [];
|
|
14276
|
-
_size;
|
|
14277
|
-
_rounded;
|
|
14278
|
-
_fillMode;
|
|
15067
|
+
_size = signal(undefined, ...(ngDevMode ? [{ debugName: "_size" }] : []));
|
|
15068
|
+
_rounded = signal(undefined, ...(ngDevMode ? [{ debugName: "_rounded" }] : []));
|
|
15069
|
+
_fillMode = signal(undefined, ...(ngDevMode ? [{ debugName: "_fillMode" }] : []));
|
|
15070
|
+
_focusableId = signal(undefined, ...(ngDevMode ? [{ debugName: "_focusableId" }] : []));
|
|
15071
|
+
_disabled = signal(false, ...(ngDevMode ? [{ debugName: "_disabled" }] : []));
|
|
15072
|
+
_readonly = signal(false, ...(ngDevMode ? [{ debugName: "_readonly" }] : []));
|
|
15073
|
+
_readOnlyInput = signal(false, ...(ngDevMode ? [{ debugName: "_readOnlyInput" }] : []));
|
|
15074
|
+
_clearButton = signal(false, ...(ngDevMode ? [{ debugName: "_clearButton" }] : []));
|
|
15075
|
+
_format = signal('t', ...(ngDevMode ? [{ debugName: "_format" }] : []));
|
|
15076
|
+
_formatPlaceholder = signal(undefined, ...(ngDevMode ? [{ debugName: "_formatPlaceholder" }] : []));
|
|
15077
|
+
_placeholder = signal(undefined, ...(ngDevMode ? [{ debugName: "_placeholder" }] : []));
|
|
15078
|
+
_incompleteDateValidation = signal(false, ...(ngDevMode ? [{ debugName: "_incompleteDateValidation" }] : []));
|
|
15079
|
+
_autoSwitchParts = signal(true, ...(ngDevMode ? [{ debugName: "_autoSwitchParts" }] : []));
|
|
15080
|
+
_autoSwitchKeys = signal([], ...(ngDevMode ? [{ debugName: "_autoSwitchKeys" }] : []));
|
|
15081
|
+
_enableMouseWheel = signal(true, ...(ngDevMode ? [{ debugName: "_enableMouseWheel" }] : []));
|
|
15082
|
+
_allowCaretMode = signal(false, ...(ngDevMode ? [{ debugName: "_allowCaretMode" }] : []));
|
|
15083
|
+
_cancelButton = signal(true, ...(ngDevMode ? [{ debugName: "_cancelButton" }] : []));
|
|
15084
|
+
_nowButton = signal(true, ...(ngDevMode ? [{ debugName: "_nowButton" }] : []));
|
|
15085
|
+
_tabindex = signal(0, ...(ngDevMode ? [{ debugName: "_tabindex" }] : []));
|
|
15086
|
+
_adaptiveTitle = signal('', ...(ngDevMode ? [{ debugName: "_adaptiveTitle" }] : []));
|
|
15087
|
+
_adaptiveSubtitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_adaptiveSubtitle" }] : []));
|
|
15088
|
+
_rangeValidation = signal(true, ...(ngDevMode ? [{ debugName: "_rangeValidation" }] : []));
|
|
15089
|
+
_adaptiveMode = signal('none', ...(ngDevMode ? [{ debugName: "_adaptiveMode" }] : []));
|
|
15090
|
+
_inputAttributes = signal(undefined, ...(ngDevMode ? [{ debugName: "_inputAttributes" }] : []));
|
|
14279
15091
|
constructor(bus, zone, localization, cdr, popupService, wrapper, renderer, injector, pickerService, intl, adaptiveService) {
|
|
14280
15092
|
super();
|
|
14281
15093
|
this.bus = bus;
|
|
@@ -14325,6 +15137,14 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14325
15137
|
this.setComponentClasses();
|
|
14326
15138
|
this.windowSize = this.adaptiveService.size;
|
|
14327
15139
|
this.pickerSubscriptions.add(this.control?.control?.statusChanges?.subscribe(() => this.cdr.markForCheck()));
|
|
15140
|
+
const control = this.control?.control;
|
|
15141
|
+
if (control && control.events) {
|
|
15142
|
+
this.pickerSubscriptions.add(control.events.subscribe(e => {
|
|
15143
|
+
if (e instanceof TouchedChangeEvent) {
|
|
15144
|
+
this.cdr.markForCheck();
|
|
15145
|
+
}
|
|
15146
|
+
}));
|
|
15147
|
+
}
|
|
14328
15148
|
}
|
|
14329
15149
|
/**
|
|
14330
15150
|
* @hidden
|
|
@@ -14389,7 +15209,6 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14389
15209
|
writeValue(value) {
|
|
14390
15210
|
this.verifyValue(value);
|
|
14391
15211
|
this.value = cloneDate(value);
|
|
14392
|
-
this.cdr.markForCheck();
|
|
14393
15212
|
if (!value && this.dateInput) {
|
|
14394
15213
|
this.dateInput.placeholder = this.placeholder;
|
|
14395
15214
|
this.dateInput.writeValue(value);
|
|
@@ -14411,8 +15230,7 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14411
15230
|
* @hidden
|
|
14412
15231
|
*/
|
|
14413
15232
|
setDisabledState(isDisabled) {
|
|
14414
|
-
this.
|
|
14415
|
-
this.cdr.markForCheck();
|
|
15233
|
+
this._disabled.set(isDisabled);
|
|
14416
15234
|
}
|
|
14417
15235
|
/**
|
|
14418
15236
|
* @hidden
|
|
@@ -14506,7 +15324,7 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14506
15324
|
* @hidden
|
|
14507
15325
|
*/
|
|
14508
15326
|
handleActionSheetCollapse() {
|
|
14509
|
-
//
|
|
15327
|
+
// markForCheck() retained - ActionSheet expanded state does not get updated when overlay is clicked without it
|
|
14510
15328
|
this.cdr.markForCheck();
|
|
14511
15329
|
}
|
|
14512
15330
|
/**
|
|
@@ -14666,7 +15484,7 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14666
15484
|
this.toggleFocus();
|
|
14667
15485
|
}
|
|
14668
15486
|
toggleActionSheet(show) {
|
|
14669
|
-
if (show === this._show) {
|
|
15487
|
+
if (show === this._show()) {
|
|
14670
15488
|
return;
|
|
14671
15489
|
}
|
|
14672
15490
|
if (show && !this.isOpen) {
|
|
@@ -14683,14 +15501,13 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14683
15501
|
this.actionSheet.toggle();
|
|
14684
15502
|
this.dateInput.focus();
|
|
14685
15503
|
}
|
|
14686
|
-
this._show
|
|
15504
|
+
this._show.set(show);
|
|
14687
15505
|
}
|
|
14688
15506
|
togglePopup(show) {
|
|
14689
15507
|
if (show === this.isOpen) {
|
|
14690
15508
|
return;
|
|
14691
15509
|
}
|
|
14692
|
-
this._show
|
|
14693
|
-
this.cdr.markForCheck();
|
|
15510
|
+
this._show.set(show);
|
|
14694
15511
|
if (show) {
|
|
14695
15512
|
const direction = this.localization.rtl ? 'right' : 'left';
|
|
14696
15513
|
const appendToComponent = typeof this.popupSettings.appendTo === 'string' && this.popupSettings.appendTo === 'component';
|
|
@@ -14793,6 +15610,7 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14793
15610
|
if (hasObservers(this.onBlur) || (this.show && hasObservers(this.close)) || requiresZoneOnBlur(this.control)) {
|
|
14794
15611
|
this.zone.run(() => {
|
|
14795
15612
|
this.blurComponent();
|
|
15613
|
+
// markForCheck() retained - needed after onControlTouched() in zoneless mode
|
|
14796
15614
|
this.cdr.markForCheck();
|
|
14797
15615
|
});
|
|
14798
15616
|
}
|
|
@@ -14808,6 +15626,7 @@ class TimePickerComponent extends MultiTabStop {
|
|
|
14808
15626
|
this.onBlur.emit();
|
|
14809
15627
|
}
|
|
14810
15628
|
handleDateCompletenessChange() {
|
|
15629
|
+
// markForCheck() retained - form validation state needs to re-render in zoneless mode
|
|
14811
15630
|
this.cdr.markForCheck();
|
|
14812
15631
|
this.zone.run(() => this.onValidatorChange());
|
|
14813
15632
|
}
|
|
@@ -15427,101 +16246,247 @@ class DateTimePickerMessages extends ComponentMessages {
|
|
|
15427
16246
|
/**
|
|
15428
16247
|
* The title of the **Toggle** button of the DateTimePicker.
|
|
15429
16248
|
*/
|
|
15430
|
-
toggle
|
|
16249
|
+
set toggle(value) {
|
|
16250
|
+
this._toggle.set(value);
|
|
16251
|
+
}
|
|
16252
|
+
get toggle() {
|
|
16253
|
+
return this._toggle();
|
|
16254
|
+
}
|
|
15431
16255
|
/**
|
|
15432
16256
|
* The text of the **Date** tab in the popup header of the DateTimePicker.
|
|
15433
16257
|
*/
|
|
15434
|
-
dateTab
|
|
16258
|
+
set dateTab(value) {
|
|
16259
|
+
this._dateTab.set(value);
|
|
16260
|
+
}
|
|
16261
|
+
get dateTab() {
|
|
16262
|
+
return this._dateTab();
|
|
16263
|
+
}
|
|
15435
16264
|
/**
|
|
15436
16265
|
* The label of the **Date** tab in the popup header of the DateTimePicker.
|
|
15437
16266
|
*/
|
|
15438
|
-
dateTabLabel
|
|
16267
|
+
set dateTabLabel(value) {
|
|
16268
|
+
this._dateTabLabel.set(value);
|
|
16269
|
+
}
|
|
16270
|
+
get dateTabLabel() {
|
|
16271
|
+
return this._dateTabLabel();
|
|
16272
|
+
}
|
|
15439
16273
|
/**
|
|
15440
16274
|
* The text of the **Time** tab in the popup header of the DateTimePicker.
|
|
15441
16275
|
*/
|
|
15442
|
-
timeTab
|
|
16276
|
+
set timeTab(value) {
|
|
16277
|
+
this._timeTab.set(value);
|
|
16278
|
+
}
|
|
16279
|
+
get timeTab() {
|
|
16280
|
+
return this._timeTab();
|
|
16281
|
+
}
|
|
15443
16282
|
/**
|
|
15444
16283
|
* The label of the **Time** tab in the popup header of the DateTimePicker.
|
|
15445
16284
|
*/
|
|
15446
|
-
timeTabLabel
|
|
16285
|
+
set timeTabLabel(value) {
|
|
16286
|
+
this._timeTabLabel.set(value);
|
|
16287
|
+
}
|
|
16288
|
+
get timeTabLabel() {
|
|
16289
|
+
return this._timeTabLabel();
|
|
16290
|
+
}
|
|
15447
16291
|
/**
|
|
15448
16292
|
* The text of the **Accept** button in the popup footer of the DateTimePicker.
|
|
15449
16293
|
*/
|
|
15450
|
-
accept
|
|
16294
|
+
set accept(value) {
|
|
16295
|
+
this._accept.set(value);
|
|
16296
|
+
}
|
|
16297
|
+
get accept() {
|
|
16298
|
+
return this._accept();
|
|
16299
|
+
}
|
|
15451
16300
|
/**
|
|
15452
16301
|
* The label of the **Accept** button in the popup footer of the DateTimePicker.
|
|
15453
16302
|
*/
|
|
15454
|
-
acceptLabel
|
|
16303
|
+
set acceptLabel(value) {
|
|
16304
|
+
this._acceptLabel.set(value);
|
|
16305
|
+
}
|
|
16306
|
+
get acceptLabel() {
|
|
16307
|
+
return this._acceptLabel();
|
|
16308
|
+
}
|
|
15455
16309
|
/**
|
|
15456
16310
|
* The text of the **Cancel** button in the popup footer of the DateTimePicker.
|
|
15457
16311
|
*/
|
|
15458
|
-
cancel
|
|
16312
|
+
set cancel(value) {
|
|
16313
|
+
this._cancel.set(value);
|
|
16314
|
+
}
|
|
16315
|
+
get cancel() {
|
|
16316
|
+
return this._cancel();
|
|
16317
|
+
}
|
|
15459
16318
|
/**
|
|
15460
16319
|
* The label of the **Cancel** button in the popup footer of the DateTimePicker.
|
|
15461
16320
|
*/
|
|
15462
|
-
cancelLabel
|
|
16321
|
+
set cancelLabel(value) {
|
|
16322
|
+
this._cancelLabel.set(value);
|
|
16323
|
+
}
|
|
16324
|
+
get cancelLabel() {
|
|
16325
|
+
return this._cancelLabel();
|
|
16326
|
+
}
|
|
15463
16327
|
/**
|
|
15464
16328
|
* The **Today** button text in the header of the Calendar.
|
|
15465
16329
|
*/
|
|
15466
|
-
today
|
|
16330
|
+
set today(value) {
|
|
16331
|
+
this._today.set(value);
|
|
16332
|
+
}
|
|
16333
|
+
get today() {
|
|
16334
|
+
return this._today();
|
|
16335
|
+
}
|
|
15467
16336
|
/**
|
|
15468
16337
|
* The text of the **Now** button in the popup header of the TimePicker.
|
|
15469
16338
|
*/
|
|
15470
|
-
now
|
|
16339
|
+
set now(value) {
|
|
16340
|
+
this._now.set(value);
|
|
16341
|
+
}
|
|
16342
|
+
get now() {
|
|
16343
|
+
return this._now();
|
|
16344
|
+
}
|
|
15471
16345
|
/**
|
|
15472
16346
|
* The label of the **Now** button in the popup header of the TimePicker.
|
|
15473
16347
|
*/
|
|
15474
|
-
nowLabel
|
|
16348
|
+
set nowLabel(value) {
|
|
16349
|
+
this._nowLabel.set(value);
|
|
16350
|
+
}
|
|
16351
|
+
get nowLabel() {
|
|
16352
|
+
return this._nowLabel();
|
|
16353
|
+
}
|
|
15475
16354
|
/**
|
|
15476
16355
|
* The title of the **Prev** button in the header of the Classic Calendar.
|
|
15477
16356
|
*/
|
|
15478
|
-
prevButtonTitle
|
|
16357
|
+
set prevButtonTitle(value) {
|
|
16358
|
+
this._prevButtonTitle.set(value);
|
|
16359
|
+
}
|
|
16360
|
+
get prevButtonTitle() {
|
|
16361
|
+
return this._prevButtonTitle();
|
|
16362
|
+
}
|
|
15479
16363
|
/**
|
|
15480
16364
|
* The title of the **Next** button in the header of the Classic Calendar.
|
|
15481
16365
|
*/
|
|
15482
|
-
nextButtonTitle
|
|
16366
|
+
set nextButtonTitle(value) {
|
|
16367
|
+
this._nextButtonTitle.set(value);
|
|
16368
|
+
}
|
|
16369
|
+
get nextButtonTitle() {
|
|
16370
|
+
return this._nextButtonTitle();
|
|
16371
|
+
}
|
|
15483
16372
|
/**
|
|
15484
16373
|
* The title of the **Parent View** button in the header of the Calendar.
|
|
15485
16374
|
*/
|
|
15486
|
-
parentViewButtonTitle
|
|
16375
|
+
set parentViewButtonTitle(value) {
|
|
16376
|
+
this._parentViewButtonTitle.set(value);
|
|
16377
|
+
}
|
|
16378
|
+
get parentViewButtonTitle() {
|
|
16379
|
+
return this._parentViewButtonTitle();
|
|
16380
|
+
}
|
|
15487
16381
|
/**
|
|
15488
16382
|
* The label of the **Hour** part in the TimePicker.
|
|
15489
16383
|
*/
|
|
15490
|
-
hour
|
|
16384
|
+
set hour(value) {
|
|
16385
|
+
this._hour.set(value);
|
|
16386
|
+
}
|
|
16387
|
+
get hour() {
|
|
16388
|
+
return this._hour();
|
|
16389
|
+
}
|
|
15491
16390
|
/**
|
|
15492
16391
|
* The label of the **Minute** part in the TimePicker.
|
|
15493
16392
|
*/
|
|
15494
|
-
minute
|
|
16393
|
+
set minute(value) {
|
|
16394
|
+
this._minute.set(value);
|
|
16395
|
+
}
|
|
16396
|
+
get minute() {
|
|
16397
|
+
return this._minute();
|
|
16398
|
+
}
|
|
15495
16399
|
/**
|
|
15496
16400
|
* The label of the **Second** part in the TimePicker.
|
|
15497
16401
|
*/
|
|
15498
|
-
second
|
|
16402
|
+
set second(value) {
|
|
16403
|
+
this._second.set(value);
|
|
16404
|
+
}
|
|
16405
|
+
get second() {
|
|
16406
|
+
return this._second();
|
|
16407
|
+
}
|
|
15499
16408
|
/**
|
|
15500
16409
|
* The label of the **Millisecond** part in the TimePicker.
|
|
15501
16410
|
*/
|
|
15502
|
-
millisecond
|
|
16411
|
+
set millisecond(value) {
|
|
16412
|
+
this._millisecond.set(value);
|
|
16413
|
+
}
|
|
16414
|
+
get millisecond() {
|
|
16415
|
+
return this._millisecond();
|
|
16416
|
+
}
|
|
15503
16417
|
/**
|
|
15504
16418
|
* The label of the **Dayperiod** part in the TimePicker.
|
|
15505
16419
|
*/
|
|
15506
|
-
dayperiod
|
|
16420
|
+
set dayperiod(value) {
|
|
16421
|
+
this._dayperiod.set(value);
|
|
16422
|
+
}
|
|
16423
|
+
get dayperiod() {
|
|
16424
|
+
return this._dayperiod();
|
|
16425
|
+
}
|
|
15507
16426
|
/**
|
|
15508
16427
|
* The title of the **Clear** button of the DateTimePicker.
|
|
15509
16428
|
*/
|
|
15510
|
-
clearTitle
|
|
15511
|
-
|
|
15512
|
-
|
|
15513
|
-
|
|
15514
|
-
|
|
16429
|
+
set clearTitle(value) {
|
|
16430
|
+
this._clearTitle.set(value);
|
|
16431
|
+
}
|
|
16432
|
+
get clearTitle() {
|
|
16433
|
+
return this._clearTitle();
|
|
16434
|
+
}
|
|
15515
16435
|
/**
|
|
15516
16436
|
* The accessible label of the date and time selector container.
|
|
15517
16437
|
*/
|
|
15518
|
-
dateTimeSelectorLabel
|
|
16438
|
+
set dateTimeSelectorLabel(value) {
|
|
16439
|
+
this._dateTimeSelectorLabel.set(value);
|
|
16440
|
+
}
|
|
16441
|
+
;
|
|
16442
|
+
get dateTimeSelectorLabel() {
|
|
16443
|
+
return this._dateTimeSelectorLabel();
|
|
16444
|
+
}
|
|
15519
16445
|
/**
|
|
15520
16446
|
* The accessible label of the time selector element.
|
|
15521
16447
|
*/
|
|
15522
|
-
timeSelectorLabel
|
|
16448
|
+
set timeSelectorLabel(value) {
|
|
16449
|
+
this._timeSelectorLabel.set(value);
|
|
16450
|
+
}
|
|
16451
|
+
;
|
|
16452
|
+
get timeSelectorLabel() {
|
|
16453
|
+
return this._timeSelectorLabel();
|
|
16454
|
+
}
|
|
16455
|
+
/**
|
|
16456
|
+
* The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode.
|
|
16457
|
+
*/
|
|
16458
|
+
set adaptiveCloseButtonTitle(value) {
|
|
16459
|
+
this._adaptiveCloseButtonTitle.set(value);
|
|
16460
|
+
}
|
|
16461
|
+
get adaptiveCloseButtonTitle() {
|
|
16462
|
+
return this._adaptiveCloseButtonTitle();
|
|
16463
|
+
}
|
|
16464
|
+
_toggle = signal(undefined, ...(ngDevMode ? [{ debugName: "_toggle" }] : []));
|
|
16465
|
+
_dateTab = signal(undefined, ...(ngDevMode ? [{ debugName: "_dateTab" }] : []));
|
|
16466
|
+
_dateTabLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_dateTabLabel" }] : []));
|
|
16467
|
+
_timeTab = signal(undefined, ...(ngDevMode ? [{ debugName: "_timeTab" }] : []));
|
|
16468
|
+
_timeTabLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_timeTabLabel" }] : []));
|
|
16469
|
+
_accept = signal(undefined, ...(ngDevMode ? [{ debugName: "_accept" }] : []));
|
|
16470
|
+
_acceptLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_acceptLabel" }] : []));
|
|
16471
|
+
_cancel = signal(undefined, ...(ngDevMode ? [{ debugName: "_cancel" }] : []));
|
|
16472
|
+
_cancelLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_cancelLabel" }] : []));
|
|
16473
|
+
_today = signal(undefined, ...(ngDevMode ? [{ debugName: "_today" }] : []));
|
|
16474
|
+
_now = signal(undefined, ...(ngDevMode ? [{ debugName: "_now" }] : []));
|
|
16475
|
+
_nowLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_nowLabel" }] : []));
|
|
16476
|
+
_prevButtonTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_prevButtonTitle" }] : []));
|
|
16477
|
+
_nextButtonTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_nextButtonTitle" }] : []));
|
|
16478
|
+
_parentViewButtonTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_parentViewButtonTitle" }] : []));
|
|
16479
|
+
_hour = signal(undefined, ...(ngDevMode ? [{ debugName: "_hour" }] : []));
|
|
16480
|
+
_minute = signal(undefined, ...(ngDevMode ? [{ debugName: "_minute" }] : []));
|
|
16481
|
+
_second = signal(undefined, ...(ngDevMode ? [{ debugName: "_second" }] : []));
|
|
16482
|
+
_millisecond = signal(undefined, ...(ngDevMode ? [{ debugName: "_millisecond" }] : []));
|
|
16483
|
+
_dayperiod = signal(undefined, ...(ngDevMode ? [{ debugName: "_dayperiod" }] : []));
|
|
16484
|
+
_clearTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_clearTitle" }] : []));
|
|
16485
|
+
_adaptiveCloseButtonTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_adaptiveCloseButtonTitle" }] : []));
|
|
16486
|
+
_dateTimeSelectorLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_dateTimeSelectorLabel" }] : []));
|
|
16487
|
+
_timeSelectorLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_timeSelectorLabel" }] : []));
|
|
15523
16488
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: DateTimePickerMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
15524
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.27", type: DateTimePickerMessages, isStandalone: true, selector: "kendo-datetimepicker-messages-base", inputs: { toggle: "toggle", dateTab: "dateTab", dateTabLabel: "dateTabLabel", timeTab: "timeTab", timeTabLabel: "timeTabLabel", accept: "accept", acceptLabel: "acceptLabel", cancel: "cancel", cancelLabel: "cancelLabel", today: "today", now: "now", nowLabel: "nowLabel", prevButtonTitle: "prevButtonTitle", nextButtonTitle: "nextButtonTitle", parentViewButtonTitle: "parentViewButtonTitle", hour: "hour", minute: "minute", second: "second", millisecond: "millisecond", dayperiod: "dayperiod", clearTitle: "clearTitle",
|
|
16489
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.27", type: DateTimePickerMessages, isStandalone: true, selector: "kendo-datetimepicker-messages-base", inputs: { toggle: "toggle", dateTab: "dateTab", dateTabLabel: "dateTabLabel", timeTab: "timeTab", timeTabLabel: "timeTabLabel", accept: "accept", acceptLabel: "acceptLabel", cancel: "cancel", cancelLabel: "cancelLabel", today: "today", now: "now", nowLabel: "nowLabel", prevButtonTitle: "prevButtonTitle", nextButtonTitle: "nextButtonTitle", parentViewButtonTitle: "parentViewButtonTitle", hour: "hour", minute: "minute", second: "second", millisecond: "millisecond", dayperiod: "dayperiod", clearTitle: "clearTitle", dateTimeSelectorLabel: "dateTimeSelectorLabel", timeSelectorLabel: "timeSelectorLabel", adaptiveCloseButtonTitle: "adaptiveCloseButtonTitle" }, usesInheritance: true, ngImport: i0 });
|
|
15525
16490
|
}
|
|
15526
16491
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: DateTimePickerMessages, decorators: [{
|
|
15527
16492
|
type: Directive,
|
|
@@ -15570,12 +16535,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
15570
16535
|
type: Input
|
|
15571
16536
|
}], clearTitle: [{
|
|
15572
16537
|
type: Input
|
|
15573
|
-
}], adaptiveCloseButtonTitle: [{
|
|
15574
|
-
type: Input
|
|
15575
16538
|
}], dateTimeSelectorLabel: [{
|
|
15576
16539
|
type: Input
|
|
15577
16540
|
}], timeSelectorLabel: [{
|
|
15578
16541
|
type: Input
|
|
16542
|
+
}], adaptiveCloseButtonTitle: [{
|
|
16543
|
+
type: Input
|
|
15579
16544
|
}] } });
|
|
15580
16545
|
|
|
15581
16546
|
/**
|
|
@@ -15699,19 +16664,22 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
15699
16664
|
/**
|
|
15700
16665
|
* @hidden
|
|
15701
16666
|
*/
|
|
15702
|
-
focusableId;
|
|
16667
|
+
set focusableId(value) { this._focusableId.set(value); }
|
|
16668
|
+
get focusableId() { return this._focusableId(); }
|
|
15703
16669
|
/**
|
|
15704
16670
|
* Sets the format of the displayed Calendar week days' names.
|
|
15705
16671
|
* @default 'short'
|
|
15706
16672
|
*/
|
|
15707
|
-
weekDaysFormat
|
|
16673
|
+
set weekDaysFormat(value) { this._weekDaysFormat.set(value); }
|
|
16674
|
+
get weekDaysFormat() { return this._weekDaysFormat(); }
|
|
15708
16675
|
/**
|
|
15709
16676
|
* Displays the days that fall out of the current month in the Calendar ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datetimepicker/calendar-options#displaying-other-month-days)).
|
|
15710
16677
|
* You can set this to show or hide days from other months.
|
|
15711
16678
|
*
|
|
15712
16679
|
* For infinite Calendar the default value is `false`, while for classic Calendar it is `true`.
|
|
15713
16680
|
*/
|
|
15714
|
-
showOtherMonthDays;
|
|
16681
|
+
set showOtherMonthDays(value) { this._showOtherMonthDays.set(value); }
|
|
16682
|
+
get showOtherMonthDays() { return this._showOtherMonthDays(); }
|
|
15715
16683
|
/**
|
|
15716
16684
|
* Sets the value of the DateTimePicker component.
|
|
15717
16685
|
* You can set a specific date and time for the picker to display and use.
|
|
@@ -15720,12 +16688,11 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
15720
16688
|
*/
|
|
15721
16689
|
set value(value) {
|
|
15722
16690
|
this.verifyValue(value);
|
|
15723
|
-
this._value
|
|
16691
|
+
this._value.set(cloneDate(value));
|
|
15724
16692
|
this.setCalendarValue(value);
|
|
15725
|
-
this.cdr.markForCheck();
|
|
15726
16693
|
}
|
|
15727
16694
|
get value() {
|
|
15728
|
-
return this._value;
|
|
16695
|
+
return this._value();
|
|
15729
16696
|
}
|
|
15730
16697
|
/**
|
|
15731
16698
|
* Specifies the date format for displaying the input value
|
|
@@ -15737,12 +16704,12 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
15737
16704
|
* If a FormatSettings object is provided, the displayFormat value will be used for the popup TimePicker.
|
|
15738
16705
|
*/
|
|
15739
16706
|
set format(format) {
|
|
15740
|
-
this._format
|
|
16707
|
+
this._format.set(format);
|
|
15741
16708
|
const displayFormat = this.getDisplayFormat(format);
|
|
15742
16709
|
this.timeSelectorFormat = this.getTimeSelectorFormat(displayFormat);
|
|
15743
16710
|
}
|
|
15744
16711
|
get format() {
|
|
15745
|
-
return this._format;
|
|
16712
|
+
return this._format();
|
|
15746
16713
|
}
|
|
15747
16714
|
/**
|
|
15748
16715
|
* The maximum year to assume to be from the current century when typing two-digit year value
|
|
@@ -15752,7 +16719,8 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
15752
16719
|
* will be assumed to be 20xx, while 69 and larger will be assumed to be 19xx.
|
|
15753
16720
|
* @default 68
|
|
15754
16721
|
*/
|
|
15755
|
-
twoDigitYearMax
|
|
16722
|
+
set twoDigitYearMax(value) { this._twoDigitYearMax.set(value); }
|
|
16723
|
+
get twoDigitYearMax() { return this._twoDigitYearMax(); }
|
|
15756
16724
|
/**
|
|
15757
16725
|
* Specifies the [`tabindex`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex) of the DateTimePicker.
|
|
15758
16726
|
*
|
|
@@ -15761,21 +16729,21 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
15761
16729
|
set tabindex(value) {
|
|
15762
16730
|
const tabindex = Number(value);
|
|
15763
16731
|
const defaultValue = 0;
|
|
15764
|
-
this._tabindex
|
|
16732
|
+
this._tabindex.set(!isNaN(tabindex) ? tabindex : defaultValue);
|
|
15765
16733
|
}
|
|
15766
16734
|
get tabindex() {
|
|
15767
|
-
return this.disabled ? -1 : this._tabindex;
|
|
16735
|
+
return this.disabled ? -1 : this._tabindex();
|
|
15768
16736
|
}
|
|
15769
16737
|
/**
|
|
15770
16738
|
* Sets the dates of the DateTimePicker that will be disabled
|
|
15771
16739
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datetimepicker/disabled-dates)).
|
|
15772
16740
|
*/
|
|
15773
16741
|
set disabledDates(value) {
|
|
15774
|
-
this._disabledDates
|
|
16742
|
+
this._disabledDates.set(value);
|
|
15775
16743
|
this.disabledDatesService.initialize(value);
|
|
15776
16744
|
}
|
|
15777
16745
|
get disabledDates() {
|
|
15778
|
-
return this._disabledDates;
|
|
16746
|
+
return this._disabledDates();
|
|
15779
16747
|
}
|
|
15780
16748
|
/**
|
|
15781
16749
|
* Configures the popup settings of the DateTimePicker
|
|
@@ -15786,30 +16754,33 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
15786
16754
|
* The `popupClass` option specifies a list of CSS classes that are used to style the popup.
|
|
15787
16755
|
*/
|
|
15788
16756
|
set popupSettings(settings) {
|
|
15789
|
-
this._popupSettings
|
|
16757
|
+
this._popupSettings.set(Object.assign({}, { animate: true }, settings));
|
|
15790
16758
|
}
|
|
15791
16759
|
get popupSettings() {
|
|
15792
|
-
return this._popupSettings;
|
|
16760
|
+
return this._popupSettings();
|
|
15793
16761
|
}
|
|
15794
16762
|
/**
|
|
15795
16763
|
* Specifies the title of the input element of the DateTimePicker and the title text rendered
|
|
15796
16764
|
* in the header of the popup (action sheet). Applicable only when [`AdaptiveMode` is set to `auto`](https://www.telerik.com/kendo-angular-ui/components/dateinputs/api/adaptivemode).
|
|
15797
16765
|
* @default ''
|
|
15798
16766
|
*/
|
|
15799
|
-
adaptiveTitle
|
|
16767
|
+
set adaptiveTitle(value) { this._adaptiveTitle.set(value); }
|
|
16768
|
+
get adaptiveTitle() { return this._adaptiveTitle(); }
|
|
15800
16769
|
/**
|
|
15801
16770
|
* Specifies the subtitle text rendered in the header of the popup (action sheet).
|
|
15802
16771
|
* Applicable only when [`AdaptiveMode` is set to `auto`](https://www.telerik.com/kendo-angular-ui/components/dateinputs/api/adaptivemode).
|
|
15803
16772
|
* @default ''
|
|
15804
16773
|
*/
|
|
15805
|
-
adaptiveSubtitle
|
|
16774
|
+
set adaptiveSubtitle(value) { this._adaptiveSubtitle.set(value); }
|
|
16775
|
+
get adaptiveSubtitle() { return this._adaptiveSubtitle(); }
|
|
15806
16776
|
/**
|
|
15807
16777
|
* Specifies the `disabled` property of the DateTimePicker and determines whether the component is active
|
|
15808
16778
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datetimepicker/disabled-state)).
|
|
15809
16779
|
* To learn how to disable the component in reactive forms, refer to the article on [Forms Support](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datetimepicker/forms#managing-the-datetimepicker-disabled-state-in-reactive-forms).
|
|
15810
16780
|
* @default false
|
|
15811
16781
|
*/
|
|
15812
|
-
disabled
|
|
16782
|
+
set disabled(value) { this._disabled.set(value); }
|
|
16783
|
+
get disabled() { return this._disabled(); }
|
|
15813
16784
|
/**
|
|
15814
16785
|
* Specifies the read-only state of the DateTimePicker
|
|
15815
16786
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datetimepicker/readonly-state#read-only-datetimepicker)).
|
|
@@ -15817,7 +16788,8 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
15817
16788
|
*
|
|
15818
16789
|
* @default false
|
|
15819
16790
|
*/
|
|
15820
|
-
readonly
|
|
16791
|
+
set readonly(value) { this._readonly.set(value); }
|
|
16792
|
+
get readonly() { return this._readonly(); }
|
|
15821
16793
|
/**
|
|
15822
16794
|
* Determines whether the input field of the DateTimePicker is read-only
|
|
15823
16795
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datetimepicker/readonly-state#read-only-input)).
|
|
@@ -15827,39 +16799,46 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
15827
16799
|
*
|
|
15828
16800
|
* @default false
|
|
15829
16801
|
*/
|
|
15830
|
-
readOnlyInput
|
|
16802
|
+
set readOnlyInput(value) { this._readOnlyInput.set(value); }
|
|
16803
|
+
get readOnlyInput() { return this._readOnlyInput(); }
|
|
15831
16804
|
/**
|
|
15832
16805
|
* Determines whether to display the **Cancel** button in the popup
|
|
15833
16806
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datetimepicker/popup-options#toggling-the-cancel-button)).
|
|
15834
16807
|
* @default true
|
|
15835
16808
|
*/
|
|
15836
|
-
cancelButton
|
|
16809
|
+
set cancelButton(value) { this._cancelButton.set(value); }
|
|
16810
|
+
get cancelButton() { return this._cancelButton(); }
|
|
15837
16811
|
/**
|
|
15838
16812
|
* Defines the descriptions of the format sections in the input field
|
|
15839
16813
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datetimepicker/placeholders#format-sections-description)).
|
|
15840
16814
|
*/
|
|
15841
|
-
formatPlaceholder;
|
|
16815
|
+
set formatPlaceholder(value) { this._formatPlaceholder.set(value); }
|
|
16816
|
+
get formatPlaceholder() { return this._formatPlaceholder(); }
|
|
15842
16817
|
/**
|
|
15843
16818
|
* Specifies the hint which is displayed by the DateTimePicker when its value is `null`
|
|
15844
16819
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datetimepicker/placeholders#text-hints)).
|
|
15845
16820
|
*/
|
|
15846
|
-
placeholder;
|
|
16821
|
+
set placeholder(value) { this._placeholder.set(value); }
|
|
16822
|
+
get placeholder() { return this._placeholder(); }
|
|
15847
16823
|
/**
|
|
15848
16824
|
* Configures the incremental steps of the DateInput and the popup component of the TimePicker
|
|
15849
16825
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datetimepicker/incremental-steps)).
|
|
15850
16826
|
*/
|
|
15851
|
-
steps
|
|
16827
|
+
set steps(value) { this._steps.set(value); }
|
|
16828
|
+
get steps() { return this._steps(); }
|
|
15852
16829
|
/**
|
|
15853
16830
|
* Specifies the focused date of the popup Calendar
|
|
15854
16831
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datetimepicker/calendar-options#focused-dates)).
|
|
15855
16832
|
*/
|
|
15856
|
-
focusedDate;
|
|
16833
|
+
set focusedDate(value) { this._focusedDate.set(value); }
|
|
16834
|
+
get focusedDate() { return this._focusedDate(); }
|
|
15857
16835
|
/**
|
|
15858
16836
|
* Specifies the Calendar type.
|
|
15859
16837
|
*
|
|
15860
16838
|
* @default 'infinite'
|
|
15861
16839
|
*/
|
|
15862
|
-
calendarType
|
|
16840
|
+
set calendarType(value) { this._calendarType.set(value); }
|
|
16841
|
+
get calendarType() { return this._calendarType(); }
|
|
15863
16842
|
/**
|
|
15864
16843
|
* Determines whether to enable animation when navigating to previous/next Calendar view.
|
|
15865
16844
|
* Applies to the [`classic`](https://www.telerik.com/kendo-angular-ui/components/dateinputs/api/datetimepickercomponent#calendartype) Calendar only.
|
|
@@ -15868,13 +16847,15 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
15868
16847
|
*
|
|
15869
16848
|
* @default false
|
|
15870
16849
|
*/
|
|
15871
|
-
animateCalendarNavigation
|
|
16850
|
+
set animateCalendarNavigation(value) { this._animateCalendarNavigation.set(value); }
|
|
16851
|
+
get animateCalendarNavigation() { return this._animateCalendarNavigation(); }
|
|
15872
16852
|
/**
|
|
15873
16853
|
* Determines whether to display a week number column in the `month` view of the popup Calendar
|
|
15874
16854
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datetimepicker/calendar-options#week-number-column)).
|
|
15875
16855
|
* @default false
|
|
15876
16856
|
*/
|
|
15877
|
-
weekNumber
|
|
16857
|
+
set weekNumber(value) { this._weekNumber.set(value); }
|
|
16858
|
+
get weekNumber() { return this._weekNumber(); }
|
|
15878
16859
|
/**
|
|
15879
16860
|
* Specifies the smallest valid date.
|
|
15880
16861
|
* The Calendar will not display dates before this value.
|
|
@@ -15909,70 +16890,82 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
15909
16890
|
*
|
|
15910
16891
|
* @default true
|
|
15911
16892
|
*/
|
|
15912
|
-
rangeValidation
|
|
16893
|
+
set rangeValidation(value) { this._rangeValidation.set(value); }
|
|
16894
|
+
get rangeValidation() { return this._rangeValidation(); }
|
|
15913
16895
|
/**
|
|
15914
16896
|
* Determines whether the built-in validator for disabled date ranges is enforced when validating a form
|
|
15915
16897
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datetimepicker/disabled-dates)).
|
|
15916
16898
|
* @default true
|
|
15917
16899
|
*/
|
|
15918
|
-
disabledDatesValidation
|
|
16900
|
+
set disabledDatesValidation(value) { this._disabledDatesValidation.set(value); }
|
|
16901
|
+
get disabledDatesValidation() { return this._disabledDatesValidation(); }
|
|
15919
16902
|
/**
|
|
15920
16903
|
* Determines whether the built-in validation for incomplete dates is enforced when validating a form.
|
|
15921
16904
|
* @default false
|
|
15922
16905
|
*/
|
|
15923
|
-
incompleteDateValidation
|
|
16906
|
+
set incompleteDateValidation(value) { this._incompleteDateValidation.set(value); }
|
|
16907
|
+
get incompleteDateValidation() { return this._incompleteDateValidation(); }
|
|
15924
16908
|
/**
|
|
15925
16909
|
* Determines whether to auto correct invalid segments automatically.
|
|
15926
16910
|
*
|
|
15927
16911
|
* @default true
|
|
15928
16912
|
*/
|
|
15929
|
-
autoCorrectParts
|
|
16913
|
+
set autoCorrectParts(value) { this._autoCorrectParts.set(value); }
|
|
16914
|
+
get autoCorrectParts() { return this._autoCorrectParts(); }
|
|
15930
16915
|
/**
|
|
15931
16916
|
* Determines whether to automatically move to the next segment after the user completes the current one.
|
|
15932
16917
|
*
|
|
15933
16918
|
* @default true
|
|
15934
16919
|
*/
|
|
15935
|
-
autoSwitchParts
|
|
16920
|
+
set autoSwitchParts(value) { this._autoSwitchParts.set(value); }
|
|
16921
|
+
get autoSwitchParts() { return this._autoSwitchParts(); }
|
|
15936
16922
|
/**
|
|
15937
16923
|
* Specifies custom keys that move the focus to the next date format segment.
|
|
15938
16924
|
*/
|
|
15939
|
-
autoSwitchKeys
|
|
16925
|
+
set autoSwitchKeys(value) { this._autoSwitchKeys.set(value); }
|
|
16926
|
+
get autoSwitchKeys() { return this._autoSwitchKeys(); }
|
|
15940
16927
|
/**
|
|
15941
16928
|
* Determines whether you can use the mouse scroll to increase or decrease the time segment values.
|
|
15942
16929
|
*
|
|
15943
16930
|
* @default true
|
|
15944
16931
|
*/
|
|
15945
|
-
enableMouseWheel
|
|
16932
|
+
set enableMouseWheel(value) { this._enableMouseWheel.set(value); }
|
|
16933
|
+
get enableMouseWheel() { return this._enableMouseWheel(); }
|
|
15946
16934
|
/**
|
|
15947
16935
|
* Determines whether you can see a blinking caret inside the DateInput when possible.
|
|
15948
16936
|
*
|
|
15949
16937
|
* @default false
|
|
15950
16938
|
*/
|
|
15951
|
-
allowCaretMode
|
|
16939
|
+
set allowCaretMode(value) { this._allowCaretMode.set(value); }
|
|
16940
|
+
get allowCaretMode() { return this._allowCaretMode(); }
|
|
15952
16941
|
/**
|
|
15953
16942
|
* Renders a clear button when set to `true` after the input text or DateTimePicker value has been changed.
|
|
15954
16943
|
* Clicking this button resets the value of the component to `null` and triggers the `valueChange` event.
|
|
15955
16944
|
* @default false
|
|
15956
16945
|
*/
|
|
15957
|
-
clearButton
|
|
16946
|
+
set clearButton(value) { this._clearButton.set(value); }
|
|
16947
|
+
get clearButton() { return this._clearButton(); }
|
|
15958
16948
|
/**
|
|
15959
16949
|
* Auto fills the rest of the date to the current date when the component loses focus.
|
|
15960
16950
|
*
|
|
15961
16951
|
* @default false
|
|
15962
16952
|
*/
|
|
15963
|
-
autoFill
|
|
16953
|
+
set autoFill(value) { this._autoFill.set(value); }
|
|
16954
|
+
get autoFill() { return this._autoFill(); }
|
|
15964
16955
|
/**
|
|
15965
16956
|
* Enables or disables the adaptive mode. The adaptive rendering is disabled by default.
|
|
15966
16957
|
* @default 'none'
|
|
15967
16958
|
*/
|
|
15968
|
-
adaptiveMode
|
|
16959
|
+
set adaptiveMode(value) { this._adaptiveMode.set(value); }
|
|
16960
|
+
get adaptiveMode() { return this._adaptiveMode(); }
|
|
15969
16961
|
/**
|
|
15970
16962
|
* Specifies the HTML attributes of the inner focusable input element. You cannot change attributes that are essential for certain component functionalities.
|
|
15971
16963
|
*
|
|
15972
16964
|
* @remarks
|
|
15973
16965
|
* This property is related to accessibility.
|
|
15974
16966
|
*/
|
|
15975
|
-
inputAttributes;
|
|
16967
|
+
set inputAttributes(value) { this._inputAttributes.set(value); }
|
|
16968
|
+
get inputAttributes() { return this._inputAttributes(); }
|
|
15976
16969
|
/**
|
|
15977
16970
|
* Fires each time the user selects a new value
|
|
15978
16971
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datetimepicker/events)).
|
|
@@ -16030,11 +17023,11 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
16030
17023
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/datetimepicker/popup-options#setting-the-default-tab)).
|
|
16031
17024
|
*/
|
|
16032
17025
|
set defaultTab(tab) {
|
|
16033
|
-
this._defaultTab
|
|
17026
|
+
this._defaultTab.set(tab || DEFAULT_ACTIVE_TAB);
|
|
16034
17027
|
this.activeTab = this.defaultTab;
|
|
16035
17028
|
}
|
|
16036
17029
|
get defaultTab() {
|
|
16037
|
-
return this._defaultTab;
|
|
17030
|
+
return this._defaultTab();
|
|
16038
17031
|
}
|
|
16039
17032
|
/**
|
|
16040
17033
|
* Specifies the size of the component. The default value is set by the Kendo theme.
|
|
@@ -16046,10 +17039,10 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
16046
17039
|
this.renderer.addClass(this.wrapper.nativeElement, getSizeClass('input', size));
|
|
16047
17040
|
this.toggleButton && this.renderer.addClass(this.toggleButton.nativeElement, getSizeClass('button', size));
|
|
16048
17041
|
}
|
|
16049
|
-
this._size
|
|
17042
|
+
this._size.set(size);
|
|
16050
17043
|
}
|
|
16051
17044
|
get size() {
|
|
16052
|
-
return this._size;
|
|
17045
|
+
return this._size();
|
|
16053
17046
|
}
|
|
16054
17047
|
/**
|
|
16055
17048
|
* Specifies the border radius of the component. The default value is set by the Kendo theme.
|
|
@@ -16060,10 +17053,10 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
16060
17053
|
if (rounded) {
|
|
16061
17054
|
this.renderer.addClass(this.wrapper.nativeElement, getRoundedClass(rounded));
|
|
16062
17055
|
}
|
|
16063
|
-
this._rounded
|
|
17056
|
+
this._rounded.set(rounded);
|
|
16064
17057
|
}
|
|
16065
17058
|
get rounded() {
|
|
16066
|
-
return this._rounded;
|
|
17059
|
+
return this._rounded();
|
|
16067
17060
|
}
|
|
16068
17061
|
/**
|
|
16069
17062
|
* Specifies the fill mode of the component. The default value is set by the Kendo theme.
|
|
@@ -16076,10 +17069,10 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
16076
17069
|
this.renderer.addClass(this.wrapper.nativeElement, getFillModeClass('input', fillMode));
|
|
16077
17070
|
this.toggleButton && this.renderer.addClass(this.toggleButton.nativeElement, getFillModeClass('button', fillMode));
|
|
16078
17071
|
}
|
|
16079
|
-
this._fillMode
|
|
17072
|
+
this._fillMode.set(fillMode);
|
|
16080
17073
|
}
|
|
16081
17074
|
get fillMode() {
|
|
16082
|
-
return this._fillMode;
|
|
17075
|
+
return this._fillMode();
|
|
16083
17076
|
}
|
|
16084
17077
|
/**
|
|
16085
17078
|
* @hidden
|
|
@@ -16237,7 +17230,8 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
16237
17230
|
* Toggles the visibility of the Calendar footer.
|
|
16238
17231
|
* @default false
|
|
16239
17232
|
*/
|
|
16240
|
-
footer
|
|
17233
|
+
set footer(value) { this._footer.set(value); }
|
|
17234
|
+
get footer() { return this._footer(); }
|
|
16241
17235
|
get activeTabComponent() {
|
|
16242
17236
|
if (!this.isOpen) {
|
|
16243
17237
|
return;
|
|
@@ -16292,6 +17286,9 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
16292
17286
|
return this.popupRef?.popup.instance.container.nativeElement.querySelector(TIME_TAB_BUTTON_SELECTOR);
|
|
16293
17287
|
}
|
|
16294
17288
|
}
|
|
17289
|
+
get activeTabButton() {
|
|
17290
|
+
return this.activeTab === 'date' ? this.dateTabButton : this.timeTabButton;
|
|
17291
|
+
}
|
|
16295
17292
|
get todayButton() {
|
|
16296
17293
|
if (this.isAdaptive) {
|
|
16297
17294
|
return this.actionSheet.element.nativeElement.querySelector(TODAY_BUTTON_SELECTOR);
|
|
@@ -16335,16 +17332,46 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
16335
17332
|
return control.invalid && (control.touched || control.dirty);
|
|
16336
17333
|
}
|
|
16337
17334
|
popupRef;
|
|
16338
|
-
_popupSettings = { animate: true };
|
|
16339
|
-
_value = null;
|
|
16340
|
-
_format = DEFAULT_DATEINPUT_FORMAT;
|
|
16341
|
-
_tabindex = 0;
|
|
16342
|
-
_defaultTab = DEFAULT_ACTIVE_TAB;
|
|
17335
|
+
_popupSettings = signal({ animate: true }, ...(ngDevMode ? [{ debugName: "_popupSettings" }] : []));
|
|
17336
|
+
_value = signal(null, ...(ngDevMode ? [{ debugName: "_value" }] : []));
|
|
17337
|
+
_format = signal(DEFAULT_DATEINPUT_FORMAT, ...(ngDevMode ? [{ debugName: "_format" }] : []));
|
|
17338
|
+
_tabindex = signal(0, ...(ngDevMode ? [{ debugName: "_tabindex" }] : []));
|
|
17339
|
+
_defaultTab = signal(DEFAULT_ACTIVE_TAB, ...(ngDevMode ? [{ debugName: "_defaultTab" }] : []));
|
|
16343
17340
|
_min = signal(mergeDateAndTime(MIN_DATE, MIN_TIME), ...(ngDevMode ? [{ debugName: "_min" }] : []));
|
|
16344
17341
|
_max = signal(mergeDateAndTime(MAX_DATE, MAX_TIME), ...(ngDevMode ? [{ debugName: "_max" }] : []));
|
|
16345
|
-
_disabledDates;
|
|
17342
|
+
_disabledDates = signal(undefined, ...(ngDevMode ? [{ debugName: "_disabledDates" }] : []));
|
|
16346
17343
|
_isActive = false;
|
|
16347
17344
|
_activeTab = signal(DEFAULT_ACTIVE_TAB, ...(ngDevMode ? [{ debugName: "_activeTab" }] : []));
|
|
17345
|
+
_focusableId = signal(undefined, ...(ngDevMode ? [{ debugName: "_focusableId" }] : []));
|
|
17346
|
+
_weekDaysFormat = signal('short', ...(ngDevMode ? [{ debugName: "_weekDaysFormat" }] : []));
|
|
17347
|
+
_showOtherMonthDays = signal(undefined, ...(ngDevMode ? [{ debugName: "_showOtherMonthDays" }] : []));
|
|
17348
|
+
_twoDigitYearMax = signal(TWO_DIGIT_YEAR_MAX, ...(ngDevMode ? [{ debugName: "_twoDigitYearMax" }] : []));
|
|
17349
|
+
_readOnlyInput = signal(false, ...(ngDevMode ? [{ debugName: "_readOnlyInput" }] : []));
|
|
17350
|
+
_cancelButton = signal(true, ...(ngDevMode ? [{ debugName: "_cancelButton" }] : []));
|
|
17351
|
+
_formatPlaceholder = signal(undefined, ...(ngDevMode ? [{ debugName: "_formatPlaceholder" }] : []));
|
|
17352
|
+
_placeholder = signal(undefined, ...(ngDevMode ? [{ debugName: "_placeholder" }] : []));
|
|
17353
|
+
_steps = signal({}, ...(ngDevMode ? [{ debugName: "_steps" }] : []));
|
|
17354
|
+
_focusedDate = signal(undefined, ...(ngDevMode ? [{ debugName: "_focusedDate" }] : []));
|
|
17355
|
+
_calendarType = signal('infinite', ...(ngDevMode ? [{ debugName: "_calendarType" }] : []));
|
|
17356
|
+
_animateCalendarNavigation = signal(false, ...(ngDevMode ? [{ debugName: "_animateCalendarNavigation" }] : []));
|
|
17357
|
+
_weekNumber = signal(false, ...(ngDevMode ? [{ debugName: "_weekNumber" }] : []));
|
|
17358
|
+
_rangeValidation = signal(true, ...(ngDevMode ? [{ debugName: "_rangeValidation" }] : []));
|
|
17359
|
+
_disabledDatesValidation = signal(true, ...(ngDevMode ? [{ debugName: "_disabledDatesValidation" }] : []));
|
|
17360
|
+
_incompleteDateValidation = signal(false, ...(ngDevMode ? [{ debugName: "_incompleteDateValidation" }] : []));
|
|
17361
|
+
_autoCorrectParts = signal(true, ...(ngDevMode ? [{ debugName: "_autoCorrectParts" }] : []));
|
|
17362
|
+
_autoSwitchParts = signal(true, ...(ngDevMode ? [{ debugName: "_autoSwitchParts" }] : []));
|
|
17363
|
+
_autoSwitchKeys = signal([], ...(ngDevMode ? [{ debugName: "_autoSwitchKeys" }] : []));
|
|
17364
|
+
_enableMouseWheel = signal(true, ...(ngDevMode ? [{ debugName: "_enableMouseWheel" }] : []));
|
|
17365
|
+
_allowCaretMode = signal(false, ...(ngDevMode ? [{ debugName: "_allowCaretMode" }] : []));
|
|
17366
|
+
_clearButton = signal(false, ...(ngDevMode ? [{ debugName: "_clearButton" }] : []));
|
|
17367
|
+
_autoFill = signal(false, ...(ngDevMode ? [{ debugName: "_autoFill" }] : []));
|
|
17368
|
+
_adaptiveMode = signal('none', ...(ngDevMode ? [{ debugName: "_adaptiveMode" }] : []));
|
|
17369
|
+
_inputAttributes = signal(undefined, ...(ngDevMode ? [{ debugName: "_inputAttributes" }] : []));
|
|
17370
|
+
_adaptiveTitle = signal('', ...(ngDevMode ? [{ debugName: "_adaptiveTitle" }] : []));
|
|
17371
|
+
_adaptiveSubtitle = signal('', ...(ngDevMode ? [{ debugName: "_adaptiveSubtitle" }] : []));
|
|
17372
|
+
_disabled = signal(false, ...(ngDevMode ? [{ debugName: "_disabled" }] : []));
|
|
17373
|
+
_footer = signal(false, ...(ngDevMode ? [{ debugName: "_footer" }] : []));
|
|
17374
|
+
_readonly = signal(false, ...(ngDevMode ? [{ debugName: "_readonly" }] : []));
|
|
16348
17375
|
onControlTouched = noop$2;
|
|
16349
17376
|
onControlChange = noop$2;
|
|
16350
17377
|
onValidatorChange = noop$2;
|
|
@@ -16354,9 +17381,9 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
16354
17381
|
incompleteValidator = noop$2;
|
|
16355
17382
|
subscriptions = new Subscription();
|
|
16356
17383
|
ariaActiveDescendantSubscription;
|
|
16357
|
-
_size;
|
|
16358
|
-
_rounded;
|
|
16359
|
-
_fillMode;
|
|
17384
|
+
_size = signal(undefined, ...(ngDevMode ? [{ debugName: "_size" }] : []));
|
|
17385
|
+
_rounded = signal(undefined, ...(ngDevMode ? [{ debugName: "_rounded" }] : []));
|
|
17386
|
+
_fillMode = signal(undefined, ...(ngDevMode ? [{ debugName: "_fillMode" }] : []));
|
|
16360
17387
|
constructor(popupService, intl, cdr, pickerService, ngZone, wrapper, localization, disabledDatesService, renderer, injector, adaptiveService) {
|
|
16361
17388
|
super();
|
|
16362
17389
|
this.popupService = popupService;
|
|
@@ -16398,6 +17425,14 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
16398
17425
|
this.setComponentClasses();
|
|
16399
17426
|
this.windowSize = this.adaptiveService.size;
|
|
16400
17427
|
this.subscriptions.add(this.formControl?.statusChanges?.subscribe(() => this.cdr.markForCheck()));
|
|
17428
|
+
const control = this.formControl;
|
|
17429
|
+
if (control && control.events) {
|
|
17430
|
+
this.subscriptions.add(control.events.subscribe(e => {
|
|
17431
|
+
if (e instanceof TouchedChangeEvent) {
|
|
17432
|
+
this.cdr.markForCheck();
|
|
17433
|
+
}
|
|
17434
|
+
}));
|
|
17435
|
+
}
|
|
16401
17436
|
}
|
|
16402
17437
|
ngOnChanges(changes) {
|
|
16403
17438
|
if (isPresent(changes['min']) || isPresent(changes['max'])) {
|
|
@@ -16482,7 +17517,6 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
16482
17517
|
writeValue(value) {
|
|
16483
17518
|
this.verifyValue(value);
|
|
16484
17519
|
this.value = cloneDate(value);
|
|
16485
|
-
this.cdr.markForCheck();
|
|
16486
17520
|
if (!value && this.dateInput) {
|
|
16487
17521
|
this.dateInput.placeholder = this.placeholder;
|
|
16488
17522
|
this.dateInput.writeValue(value);
|
|
@@ -16505,7 +17539,6 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
16505
17539
|
*/
|
|
16506
17540
|
setDisabledState(disabled) {
|
|
16507
17541
|
this.disabled = disabled;
|
|
16508
|
-
this.cdr.markForCheck();
|
|
16509
17542
|
}
|
|
16510
17543
|
/**
|
|
16511
17544
|
* @hidden
|
|
@@ -16605,8 +17638,7 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
16605
17638
|
if (event.key !== Keys.Tab) {
|
|
16606
17639
|
return;
|
|
16607
17640
|
}
|
|
16608
|
-
if (
|
|
16609
|
-
(!event.shiftKey && event.target === this.timeTabButton)) {
|
|
17641
|
+
if (event.target === this.dateTabButton || event.target === this.timeTabButton) {
|
|
16610
17642
|
this.handleTab(event);
|
|
16611
17643
|
}
|
|
16612
17644
|
}
|
|
@@ -16649,7 +17681,7 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
16649
17681
|
this.cancelButtonElement.focus();
|
|
16650
17682
|
}
|
|
16651
17683
|
else {
|
|
16652
|
-
this.
|
|
17684
|
+
this.activeTabButton.focus();
|
|
16653
17685
|
}
|
|
16654
17686
|
}
|
|
16655
17687
|
/**
|
|
@@ -16761,7 +17793,7 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
16761
17793
|
switch (event.target) {
|
|
16762
17794
|
case this.acceptButton:
|
|
16763
17795
|
if (!shiftKey) {
|
|
16764
|
-
this.cancelButton ? this.cancelButtonElement.focus() : this.
|
|
17796
|
+
this.cancelButton ? this.cancelButtonElement.focus() : this.activeTabButton.focus();
|
|
16765
17797
|
}
|
|
16766
17798
|
else {
|
|
16767
17799
|
if (this.activeTab === 'date') {
|
|
@@ -16774,7 +17806,7 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
16774
17806
|
break;
|
|
16775
17807
|
case this.cancelButtonElement:
|
|
16776
17808
|
if (this.calendarValue) {
|
|
16777
|
-
shiftKey ? this.acceptButton.focus() : this.
|
|
17809
|
+
shiftKey ? this.acceptButton.focus() : this.activeTabButton.focus();
|
|
16778
17810
|
}
|
|
16779
17811
|
else {
|
|
16780
17812
|
if (shiftKey) {
|
|
@@ -16786,34 +17818,37 @@ class DateTimePickerComponent extends MultiTabStop {
|
|
|
16786
17818
|
}
|
|
16787
17819
|
}
|
|
16788
17820
|
else {
|
|
16789
|
-
this.
|
|
17821
|
+
this.activeTabButton.focus();
|
|
16790
17822
|
}
|
|
16791
17823
|
}
|
|
16792
17824
|
break;
|
|
16793
17825
|
case this.dateTabButton:
|
|
16794
|
-
|
|
16795
|
-
|
|
16796
|
-
|
|
16797
|
-
|
|
16798
|
-
|
|
16799
|
-
|
|
16800
|
-
|
|
16801
|
-
|
|
17826
|
+
case this.timeTabButton:
|
|
17827
|
+
if (shiftKey) {
|
|
17828
|
+
if (this.cancelButton) {
|
|
17829
|
+
this.cancelButtonElement.focus();
|
|
17830
|
+
}
|
|
17831
|
+
else if (this.calendarValue) {
|
|
17832
|
+
this.acceptButton.focus();
|
|
17833
|
+
}
|
|
17834
|
+
else if (this.activeTab === 'date') {
|
|
16802
17835
|
this.calendar.monthView.list.nativeElement.focus();
|
|
16803
17836
|
}
|
|
16804
17837
|
else {
|
|
16805
17838
|
this.timeSelector.timeLists.last.focus();
|
|
16806
17839
|
}
|
|
16807
17840
|
}
|
|
16808
|
-
break;
|
|
16809
|
-
case this.timeTabButton:
|
|
16810
|
-
if (this.activeTab === 'time') {
|
|
16811
|
-
this.timeSelector.showNowButton ?
|
|
16812
|
-
this.timeSelector.now.nativeElement.focus() :
|
|
16813
|
-
this.timeSelector.timeLists.first.focus();
|
|
16814
|
-
}
|
|
16815
17841
|
else {
|
|
16816
|
-
this.
|
|
17842
|
+
if (this.activeTab === 'time') {
|
|
17843
|
+
this.timeSelector.showNowButton ?
|
|
17844
|
+
this.timeSelector.now.nativeElement.focus() :
|
|
17845
|
+
this.timeSelector.timeLists.first.focus();
|
|
17846
|
+
}
|
|
17847
|
+
else {
|
|
17848
|
+
(!this.todayButton || this.todayButton.disabled) ?
|
|
17849
|
+
this.calendar.monthView.list.nativeElement.focus() :
|
|
17850
|
+
this.todayButton.focus();
|
|
17851
|
+
}
|
|
16817
17852
|
}
|
|
16818
17853
|
break;
|
|
16819
17854
|
default:
|
|
@@ -18550,23 +19585,53 @@ class DateRangePopupMessages extends ComponentMessages {
|
|
|
18550
19585
|
/**
|
|
18551
19586
|
* The text of the **Accept** button in the popup footer of the DateRange Popup.
|
|
18552
19587
|
*/
|
|
18553
|
-
accept
|
|
19588
|
+
set accept(value) {
|
|
19589
|
+
this._accept.set(value);
|
|
19590
|
+
}
|
|
19591
|
+
get accept() {
|
|
19592
|
+
return this._accept();
|
|
19593
|
+
}
|
|
18554
19594
|
/**
|
|
18555
19595
|
* The label of the **Accept** button in the popup footer of the DateRange Popup.
|
|
18556
19596
|
*/
|
|
18557
|
-
acceptLabel
|
|
19597
|
+
set acceptLabel(value) {
|
|
19598
|
+
this._acceptLabel.set(value);
|
|
19599
|
+
}
|
|
19600
|
+
get acceptLabel() {
|
|
19601
|
+
return this._acceptLabel();
|
|
19602
|
+
}
|
|
18558
19603
|
/**
|
|
18559
19604
|
* The text of the **Cancel** button in the popup footer of the DateRange Popup.
|
|
18560
19605
|
*/
|
|
18561
|
-
cancel
|
|
19606
|
+
set cancel(value) {
|
|
19607
|
+
this._cancel.set(value);
|
|
19608
|
+
}
|
|
19609
|
+
get cancel() {
|
|
19610
|
+
return this._cancel();
|
|
19611
|
+
}
|
|
18562
19612
|
/**
|
|
18563
19613
|
* The label of the **Cancel** button in the popup footer of the DateRange Popup.
|
|
18564
19614
|
*/
|
|
18565
|
-
cancelLabel
|
|
19615
|
+
set cancelLabel(value) {
|
|
19616
|
+
this._cancelLabel.set(value);
|
|
19617
|
+
}
|
|
19618
|
+
get cancelLabel() {
|
|
19619
|
+
return this._cancelLabel();
|
|
19620
|
+
}
|
|
18566
19621
|
/**
|
|
18567
19622
|
* The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode.
|
|
18568
19623
|
*/
|
|
18569
|
-
adaptiveCloseButtonTitle
|
|
19624
|
+
set adaptiveCloseButtonTitle(value) {
|
|
19625
|
+
this._adaptiveCloseButtonTitle.set(value);
|
|
19626
|
+
}
|
|
19627
|
+
get adaptiveCloseButtonTitle() {
|
|
19628
|
+
return this._adaptiveCloseButtonTitle();
|
|
19629
|
+
}
|
|
19630
|
+
_accept = signal(undefined, ...(ngDevMode ? [{ debugName: "_accept" }] : []));
|
|
19631
|
+
_acceptLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_acceptLabel" }] : []));
|
|
19632
|
+
_cancel = signal(undefined, ...(ngDevMode ? [{ debugName: "_cancel" }] : []));
|
|
19633
|
+
_cancelLabel = signal(undefined, ...(ngDevMode ? [{ debugName: "_cancelLabel" }] : []));
|
|
19634
|
+
_adaptiveCloseButtonTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_adaptiveCloseButtonTitle" }] : []));
|
|
18570
19635
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: DateRangePopupMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
18571
19636
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.27", type: DateRangePopupMessages, isStandalone: true, selector: "kendo-daterangepopup-messages-base", inputs: { accept: "accept", acceptLabel: "acceptLabel", cancel: "cancel", cancelLabel: "cancelLabel", adaptiveCloseButtonTitle: "adaptiveCloseButtonTitle" }, usesInheritance: true, ngImport: i0 });
|
|
18572
19637
|
}
|
|
@@ -18658,18 +19723,21 @@ class DateRangePopupComponent {
|
|
|
18658
19723
|
*
|
|
18659
19724
|
* Determines whether to display the MultiViewCalendar header.
|
|
18660
19725
|
*/
|
|
18661
|
-
showCalendarHeader
|
|
19726
|
+
set showCalendarHeader(value) { this._showCalendarHeader.set(value); }
|
|
19727
|
+
get showCalendarHeader() { return this._showCalendarHeader(); }
|
|
18662
19728
|
/**
|
|
18663
19729
|
* Specifies the focused date of the MultiViewCalendar component.
|
|
18664
19730
|
* Defines which date receives focus when the component loads ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/multiviewcalendar/dates#focused-dates)).
|
|
18665
19731
|
*
|
|
18666
19732
|
* If the MultiViewCalendar is out of the min or max range, it normalizes the defined `focusedDate`.
|
|
18667
19733
|
*/
|
|
18668
|
-
focusedDate;
|
|
19734
|
+
set focusedDate(value) { this._focusedDate.set(value); }
|
|
19735
|
+
get focusedDate() { return this._focusedDate(); }
|
|
18669
19736
|
/**
|
|
18670
19737
|
* Specifies the dates in the MultiViewCalendar that you want to disable ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/multiviewcalendar/disabled-dates)).
|
|
18671
19738
|
*/
|
|
18672
|
-
disabledDates;
|
|
19739
|
+
set disabledDates(value) { this._disabledDates.set(value); }
|
|
19740
|
+
get disabledDates() { return this._disabledDates(); }
|
|
18673
19741
|
/**
|
|
18674
19742
|
* Specifies the initial view that the MultiViewCalendar displays when it loads ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/multiviewcalendar/view-options)).
|
|
18675
19743
|
* By default, the active view is `month`.
|
|
@@ -18678,63 +19746,73 @@ class DateRangePopupComponent {
|
|
|
18678
19746
|
*
|
|
18679
19747
|
* @default 'month
|
|
18680
19748
|
*/
|
|
18681
|
-
activeView
|
|
19749
|
+
set activeView(value) { this._activeView.set(value); }
|
|
19750
|
+
get activeView() { return this._activeView(); }
|
|
18682
19751
|
/**
|
|
18683
19752
|
* Specifies the lowest view level that users can navigate to ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/multiviewcalendar/view-depth)).
|
|
18684
19753
|
*
|
|
18685
19754
|
* @default 'month'
|
|
18686
19755
|
*/
|
|
18687
|
-
bottomView
|
|
19756
|
+
set bottomView(value) { this._bottomView.set(value); }
|
|
19757
|
+
get bottomView() { return this._bottomView(); }
|
|
18688
19758
|
/**
|
|
18689
19759
|
* Specifies the highest view level that users can navigate to ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/multiviewcalendar/view-depth)).
|
|
18690
19760
|
*
|
|
18691
19761
|
* @default 'century'
|
|
18692
19762
|
*/
|
|
18693
|
-
topView
|
|
19763
|
+
set topView(value) { this._topView.set(value); }
|
|
19764
|
+
get topView() { return this._topView(); }
|
|
18694
19765
|
/**
|
|
18695
19766
|
* Specifies the minimum date that users can select ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/multiviewcalendar/dates#focused-dates)).
|
|
18696
19767
|
*
|
|
18697
19768
|
* @default '1900-01-01'
|
|
18698
19769
|
*/
|
|
18699
|
-
min;
|
|
19770
|
+
set min(value) { this._min.set(value); }
|
|
19771
|
+
get min() { return this._min(); }
|
|
18700
19772
|
/**
|
|
18701
19773
|
* Specifies the maximum date that users can select ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/multiviewcalendar/dates#focused-dates)).
|
|
18702
19774
|
*
|
|
18703
19775
|
* @default '2099-12-31'
|
|
18704
19776
|
*/
|
|
18705
|
-
max;
|
|
19777
|
+
set max(value) { this._max.set(value); }
|
|
19778
|
+
get max() { return this._max(); }
|
|
18706
19779
|
/**
|
|
18707
19780
|
* Determines whether users can select dates in reverse order.
|
|
18708
19781
|
* When you set `allowReverse` to `true`, the component does not validate if the start date comes after the end date.
|
|
18709
19782
|
*
|
|
18710
19783
|
* @default false
|
|
18711
19784
|
*/
|
|
18712
|
-
allowReverse
|
|
19785
|
+
set allowReverse(value) { this._allowReverse.set(value); }
|
|
19786
|
+
get allowReverse() { return this._allowReverse(); }
|
|
18713
19787
|
/**
|
|
18714
19788
|
* Determines whether to animate transitions when users navigate between views.
|
|
18715
19789
|
*
|
|
18716
19790
|
* @default false
|
|
18717
19791
|
*/
|
|
18718
|
-
animateNavigation
|
|
19792
|
+
set animateNavigation(value) { this._animateNavigation.set(value); }
|
|
19793
|
+
get animateNavigation() { return this._animateNavigation(); }
|
|
18719
19794
|
/**
|
|
18720
19795
|
* Determines whether the MultiViewCalendar is interactive ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/multiviewcalendar/disabled-state)).
|
|
18721
19796
|
* When you set `disabled` to `true`, users cannot interact with the component.
|
|
18722
19797
|
*
|
|
18723
19798
|
* @default false
|
|
18724
19799
|
*/
|
|
18725
|
-
disabled
|
|
19800
|
+
set disabled(value) { this._disabled.set(value); }
|
|
19801
|
+
get disabled() { return this._disabled(); }
|
|
18726
19802
|
/**
|
|
18727
19803
|
* Specifies the number of calendar views to display side by side.
|
|
18728
19804
|
*
|
|
18729
19805
|
* @default 2
|
|
18730
19806
|
*/
|
|
18731
|
-
views
|
|
19807
|
+
set views(value) { this._views.set(value); }
|
|
19808
|
+
get views() { return this._views(); }
|
|
18732
19809
|
/**
|
|
18733
19810
|
* Determines whether to display week numbers in the `month` view ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/multiviewcalendar/week-num-column)).
|
|
18734
19811
|
*
|
|
18735
19812
|
* @default false
|
|
18736
19813
|
*/
|
|
18737
|
-
weekNumber
|
|
19814
|
+
set weekNumber(value) { this._weekNumber.set(value); }
|
|
19815
|
+
get weekNumber() { return this._weekNumber(); }
|
|
18738
19816
|
/**
|
|
18739
19817
|
* Controls the popup animations.
|
|
18740
19818
|
* When you set `animate` to `true`, the popup displays opening and closing animations.
|
|
@@ -18743,40 +19821,46 @@ class DateRangePopupComponent {
|
|
|
18743
19821
|
*
|
|
18744
19822
|
* @default true
|
|
18745
19823
|
*/
|
|
18746
|
-
animate
|
|
19824
|
+
set animate(value) { this._animate.set(value); }
|
|
19825
|
+
get animate() { return this._animate(); }
|
|
18747
19826
|
/**
|
|
18748
19827
|
* Specifies the element that serves as an anchor for the popup.
|
|
18749
19828
|
* The popup opens next to this element.
|
|
18750
19829
|
* For more information, refer to the section on
|
|
18751
19830
|
* [aligning to specific components](https://www.telerik.com/kendo-angular-ui/components/popup/aligning-positioning#aligning-to-components).
|
|
18752
19831
|
*/
|
|
18753
|
-
anchor;
|
|
19832
|
+
set anchor(value) { this._anchor.set(value); }
|
|
19833
|
+
get anchor() { return this._anchor(); }
|
|
18754
19834
|
/**
|
|
18755
19835
|
* Specifies the alignment point for the anchor element.
|
|
18756
19836
|
* For more information, refer to the section on
|
|
18757
19837
|
* [positioning](https://www.telerik.com/kendo-angular-ui/components/popup/aligning-positioning#positioning).
|
|
18758
19838
|
*/
|
|
18759
|
-
anchorAlign;
|
|
19839
|
+
set anchorAlign(value) { this._anchorAlign.set(value); }
|
|
19840
|
+
get anchorAlign() { return this._anchorAlign(); }
|
|
18760
19841
|
/**
|
|
18761
19842
|
* Determines whether to display a header for each view ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/multiviewcalendar/view-header)).
|
|
18762
19843
|
* For example, displays the month name in the month view.
|
|
18763
19844
|
*
|
|
18764
19845
|
* @default false
|
|
18765
19846
|
*/
|
|
18766
|
-
showViewHeader
|
|
19847
|
+
set showViewHeader(value) { this._showViewHeader.set(value); }
|
|
19848
|
+
get showViewHeader() { return this._showViewHeader(); }
|
|
18767
19849
|
/**
|
|
18768
19850
|
* Determines whether to display days from adjacent months in the current month view ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/multiviewcalendar/view-options#displaying-other-month-days)).
|
|
18769
19851
|
*
|
|
18770
19852
|
* @default false
|
|
18771
19853
|
*/
|
|
18772
|
-
showOtherMonthDays
|
|
19854
|
+
set showOtherMonthDays(value) { this._showOtherMonthDays.set(value); }
|
|
19855
|
+
get showOtherMonthDays() { return this._showOtherMonthDays(); }
|
|
18773
19856
|
/**
|
|
18774
19857
|
* Specifies where to render the popup container.
|
|
18775
19858
|
* By default, the popup renders in the root component.
|
|
18776
19859
|
*
|
|
18777
19860
|
* @default 'root'
|
|
18778
19861
|
*/
|
|
18779
|
-
appendTo;
|
|
19862
|
+
set appendTo(value) { this._appendToValue.set(value); }
|
|
19863
|
+
get appendTo() { return this._appendToValue(); }
|
|
18780
19864
|
/**
|
|
18781
19865
|
* Configures how the popup behaves when it encounters viewport boundaries.
|
|
18782
19866
|
* For more information, refer to the article on
|
|
@@ -18784,39 +19868,45 @@ class DateRangePopupComponent {
|
|
|
18784
19868
|
*
|
|
18785
19869
|
* @default { horizontal: 'fit', vertical: 'flip' }
|
|
18786
19870
|
*/
|
|
18787
|
-
collision
|
|
19871
|
+
set collision(value) { this._collision.set(value); }
|
|
19872
|
+
get collision() { return this._collision(); }
|
|
18788
19873
|
/**
|
|
18789
19874
|
* Specifies the alignment point for the popup element.
|
|
18790
19875
|
* For more information, refer to the section on
|
|
18791
19876
|
* [positioning](https://www.telerik.com/kendo-angular-ui/components/popup/aligning-positioning#positioning).
|
|
18792
19877
|
*/
|
|
18793
|
-
popupAlign;
|
|
19878
|
+
set popupAlign(value) { this._popupAlign.set(value); }
|
|
19879
|
+
get popupAlign() { return this._popupAlign(); }
|
|
18794
19880
|
/**
|
|
18795
19881
|
* Specifies the margin around the popup in pixels.
|
|
18796
19882
|
* Creates empty space between the popup and its anchor element.
|
|
18797
19883
|
*/
|
|
18798
|
-
margin;
|
|
19884
|
+
set margin(value) { this._margin.set(value); }
|
|
19885
|
+
get margin() { return this._margin(); }
|
|
18799
19886
|
/**
|
|
18800
19887
|
* Determines whether the component uses adaptive rendering for different screen sizes.
|
|
18801
19888
|
* By default, adaptive rendering is disabled.
|
|
18802
19889
|
*
|
|
18803
19890
|
* @default 'none'
|
|
18804
19891
|
*/
|
|
18805
|
-
adaptiveMode
|
|
19892
|
+
set adaptiveMode(value) { this._adaptiveMode.set(value); }
|
|
19893
|
+
get adaptiveMode() { return this._adaptiveMode(); }
|
|
18806
19894
|
/**
|
|
18807
19895
|
* Specifies the title text for the input element and the header of the action sheet.
|
|
18808
19896
|
* Applies only when [`AdaptiveMode` is set to `auto`](https://www.telerik.com/kendo-angular-ui/components/dateinputs/api/adaptivemode).
|
|
18809
19897
|
*
|
|
18810
19898
|
* @default ""
|
|
18811
19899
|
*/
|
|
18812
|
-
adaptiveTitle
|
|
19900
|
+
set adaptiveTitle(value) { this._adaptiveTitle.set(value); }
|
|
19901
|
+
get adaptiveTitle() { return this._adaptiveTitle(); }
|
|
18813
19902
|
/**
|
|
18814
19903
|
* Specifies the subtitle text displayed in the header of the action sheet.
|
|
18815
19904
|
* Applies only when [`AdaptiveMode` is set to `auto`](https://www.telerik.com/kendo-angular-ui/components/dateinputs/api/adaptivemode).
|
|
18816
19905
|
*
|
|
18817
19906
|
* @default ""
|
|
18818
19907
|
*/
|
|
18819
|
-
adaptiveSubtitle
|
|
19908
|
+
set adaptiveSubtitle(value) { this._adaptiveSubtitle.set(value); }
|
|
19909
|
+
get adaptiveSubtitle() { return this._adaptiveSubtitle(); }
|
|
18820
19910
|
/**
|
|
18821
19911
|
* @hidden
|
|
18822
19912
|
*
|
|
@@ -18824,7 +19914,8 @@ class DateRangePopupComponent {
|
|
|
18824
19914
|
* Sets the size of the component.
|
|
18825
19915
|
* @default undefined
|
|
18826
19916
|
*/
|
|
18827
|
-
size;
|
|
19917
|
+
set size(value) { this._size.set(value); }
|
|
19918
|
+
get size() { return this._size(); }
|
|
18828
19919
|
/**
|
|
18829
19920
|
* Fires when the popup is about to open ([see example](https://www.telerik.com/kendo-angular-ui/components/dateinputs/daterange/popup#events)).
|
|
18830
19921
|
* You can prevent this event to keep the popup closed.
|
|
@@ -18897,7 +19988,8 @@ class DateRangePopupComponent {
|
|
|
18897
19988
|
/**
|
|
18898
19989
|
* @hidden
|
|
18899
19990
|
*/
|
|
18900
|
-
windowSize;
|
|
19991
|
+
get windowSize() { return this._windowSize(); }
|
|
19992
|
+
set windowSize(value) { this._windowSize.set(value); }
|
|
18901
19993
|
/**
|
|
18902
19994
|
* @hidden
|
|
18903
19995
|
*/
|
|
@@ -18906,7 +19998,7 @@ class DateRangePopupComponent {
|
|
|
18906
19998
|
* Gets or sets the visibility state of the component.
|
|
18907
19999
|
*/
|
|
18908
20000
|
set show(show) {
|
|
18909
|
-
if (this._show === show) {
|
|
20001
|
+
if (this._show() === show) {
|
|
18910
20002
|
return;
|
|
18911
20003
|
}
|
|
18912
20004
|
const event = new PreventableEvent();
|
|
@@ -18922,7 +20014,7 @@ class DateRangePopupComponent {
|
|
|
18922
20014
|
this.toggleDateRange(show);
|
|
18923
20015
|
}
|
|
18924
20016
|
get show() {
|
|
18925
|
-
return this._show;
|
|
20017
|
+
return this._show();
|
|
18926
20018
|
}
|
|
18927
20019
|
/**
|
|
18928
20020
|
* @hidden
|
|
@@ -18940,7 +20032,34 @@ class DateRangePopupComponent {
|
|
|
18940
20032
|
localizationSubscriptions = new Subscription();
|
|
18941
20033
|
resolvedPromise = Promise.resolve();
|
|
18942
20034
|
_calendar;
|
|
18943
|
-
_show;
|
|
20035
|
+
_show = signal(undefined, ...(ngDevMode ? [{ debugName: "_show" }] : []));
|
|
20036
|
+
_showCalendarHeader = signal(true, ...(ngDevMode ? [{ debugName: "_showCalendarHeader" }] : []));
|
|
20037
|
+
_focusedDate = signal(undefined, ...(ngDevMode ? [{ debugName: "_focusedDate" }] : []));
|
|
20038
|
+
_disabledDates = signal(undefined, ...(ngDevMode ? [{ debugName: "_disabledDates" }] : []));
|
|
20039
|
+
_activeView = signal(CalendarViewEnum[CalendarViewEnum.month], ...(ngDevMode ? [{ debugName: "_activeView" }] : []));
|
|
20040
|
+
_bottomView = signal(CalendarViewEnum[CalendarViewEnum.month], ...(ngDevMode ? [{ debugName: "_bottomView" }] : []));
|
|
20041
|
+
_topView = signal(CalendarViewEnum[CalendarViewEnum.century], ...(ngDevMode ? [{ debugName: "_topView" }] : []));
|
|
20042
|
+
_min = signal(undefined, ...(ngDevMode ? [{ debugName: "_min" }] : []));
|
|
20043
|
+
_max = signal(undefined, ...(ngDevMode ? [{ debugName: "_max" }] : []));
|
|
20044
|
+
_allowReverse = signal(false, ...(ngDevMode ? [{ debugName: "_allowReverse" }] : []));
|
|
20045
|
+
_animateNavigation = signal(false, ...(ngDevMode ? [{ debugName: "_animateNavigation" }] : []));
|
|
20046
|
+
_disabled = signal(false, ...(ngDevMode ? [{ debugName: "_disabled" }] : []));
|
|
20047
|
+
_views = signal(2, ...(ngDevMode ? [{ debugName: "_views" }] : []));
|
|
20048
|
+
_weekNumber = signal(false, ...(ngDevMode ? [{ debugName: "_weekNumber" }] : []));
|
|
20049
|
+
_animate = signal(true, ...(ngDevMode ? [{ debugName: "_animate" }] : []));
|
|
20050
|
+
_anchor = signal(undefined, ...(ngDevMode ? [{ debugName: "_anchor" }] : []));
|
|
20051
|
+
_anchorAlign = signal(undefined, ...(ngDevMode ? [{ debugName: "_anchorAlign" }] : []));
|
|
20052
|
+
_showViewHeader = signal(false, ...(ngDevMode ? [{ debugName: "_showViewHeader" }] : []));
|
|
20053
|
+
_showOtherMonthDays = signal(false, ...(ngDevMode ? [{ debugName: "_showOtherMonthDays" }] : []));
|
|
20054
|
+
_appendToValue = signal(undefined, ...(ngDevMode ? [{ debugName: "_appendToValue" }] : []));
|
|
20055
|
+
_collision = signal({ horizontal: 'fit', vertical: 'flip' }, ...(ngDevMode ? [{ debugName: "_collision" }] : []));
|
|
20056
|
+
_popupAlign = signal(undefined, ...(ngDevMode ? [{ debugName: "_popupAlign" }] : []));
|
|
20057
|
+
_margin = signal(undefined, ...(ngDevMode ? [{ debugName: "_margin" }] : []));
|
|
20058
|
+
_adaptiveMode = signal('none', ...(ngDevMode ? [{ debugName: "_adaptiveMode" }] : []));
|
|
20059
|
+
_adaptiveTitle = signal('', ...(ngDevMode ? [{ debugName: "_adaptiveTitle" }] : []));
|
|
20060
|
+
_adaptiveSubtitle = signal('', ...(ngDevMode ? [{ debugName: "_adaptiveSubtitle" }] : []));
|
|
20061
|
+
_size = signal(undefined, ...(ngDevMode ? [{ debugName: "_size" }] : []));
|
|
20062
|
+
_windowSize = signal(undefined, ...(ngDevMode ? [{ debugName: "_windowSize" }] : []));
|
|
18944
20063
|
constructor(popupService, dateRangeService, zone, renderer, localization, cdr, rtl, adaptiveService) {
|
|
18945
20064
|
this.popupService = popupService;
|
|
18946
20065
|
this.dateRangeService = dateRangeService;
|
|
@@ -19022,7 +20141,6 @@ class DateRangePopupComponent {
|
|
|
19022
20141
|
this.activateSubscription.unsubscribe();
|
|
19023
20142
|
}
|
|
19024
20143
|
this.show = true;
|
|
19025
|
-
this.cdr.markForCheck();
|
|
19026
20144
|
this.zone.runOutsideAngular(() => {
|
|
19027
20145
|
this.activateSubscription = merge(this.contentCalendar.changes, this.viewCalendar.changes).pipe(filter(changes => changes && changes.first), map(changes => changes.first)).subscribe((calendar) => setTimeout(() => {
|
|
19028
20146
|
calendar.focus();
|
|
@@ -19173,11 +20291,11 @@ class DateRangePopupComponent {
|
|
|
19173
20291
|
return appendTo === 'component' ? this.container : appendTo;
|
|
19174
20292
|
}
|
|
19175
20293
|
togglePopup(show) {
|
|
19176
|
-
this._show
|
|
20294
|
+
this._show.set(show);
|
|
19177
20295
|
if (this.popupRef) {
|
|
19178
20296
|
this.destroyPopup();
|
|
19179
20297
|
}
|
|
19180
|
-
if (this._show) {
|
|
20298
|
+
if (this._show()) {
|
|
19181
20299
|
const direction = this.rtl ? 'right' : 'left';
|
|
19182
20300
|
this.popupRef = this.popupService.open({
|
|
19183
20301
|
anchor: this.anchor,
|
|
@@ -19215,7 +20333,7 @@ class DateRangePopupComponent {
|
|
|
19215
20333
|
}
|
|
19216
20334
|
}
|
|
19217
20335
|
toggleActionSheet(show) {
|
|
19218
|
-
if (show === this._show) {
|
|
20336
|
+
if (show === this._show()) {
|
|
19219
20337
|
return;
|
|
19220
20338
|
}
|
|
19221
20339
|
if (show && !this.actionSheet.expanded) {
|
|
@@ -19226,7 +20344,7 @@ class DateRangePopupComponent {
|
|
|
19226
20344
|
else if (!show && this.actionSheet.expanded) {
|
|
19227
20345
|
this.actionSheet.toggle();
|
|
19228
20346
|
}
|
|
19229
|
-
this._show
|
|
20347
|
+
this._show.set(show);
|
|
19230
20348
|
}
|
|
19231
20349
|
addCalendarSubscription = (calendar) => {
|
|
19232
20350
|
this.calendarSubscriptions.add(calendar.viewList.focusedCellChange.subscribe((id) => {
|
|
@@ -19389,11 +20507,13 @@ class DateRangePopupComponent {
|
|
|
19389
20507
|
</div>
|
|
19390
20508
|
</ng-template>
|
|
19391
20509
|
</kendo-actionsheet>
|
|
19392
|
-
`, 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: ["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: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconPosition", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }] });
|
|
20510
|
+
`, 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: ["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: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconPosition", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
19393
20511
|
}
|
|
19394
20512
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: DateRangePopupComponent, decorators: [{
|
|
19395
20513
|
type: Component,
|
|
19396
20514
|
args: [{
|
|
20515
|
+
selector: 'kendo-daterange-popup',
|
|
20516
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
19397
20517
|
exportAs: 'kendo-daterange-popup',
|
|
19398
20518
|
providers: [
|
|
19399
20519
|
LocalizationService,
|
|
@@ -19402,7 +20522,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
19402
20522
|
useValue: 'kendo.daterangepopup'
|
|
19403
20523
|
}
|
|
19404
20524
|
],
|
|
19405
|
-
selector: 'kendo-daterange-popup',
|
|
19406
20525
|
template: `
|
|
19407
20526
|
<ng-container kendoDateRangePopupLocalizedMessages
|
|
19408
20527
|
i18n-accept="kendo.daterangepopup.accept|The Accept button text in the timepicker component"
|
|
@@ -19680,7 +20799,8 @@ class DateRangeComponent {
|
|
|
19680
20799
|
*
|
|
19681
20800
|
* @default undefined
|
|
19682
20801
|
*/
|
|
19683
|
-
size;
|
|
20802
|
+
set size(value) { this._size.set(value); }
|
|
20803
|
+
get size() { return this._size(); }
|
|
19684
20804
|
/**
|
|
19685
20805
|
* @hidden
|
|
19686
20806
|
*/
|
|
@@ -19699,20 +20819,22 @@ class DateRangeComponent {
|
|
|
19699
20819
|
/**
|
|
19700
20820
|
* @hidden
|
|
19701
20821
|
*/
|
|
19702
|
-
showDefault
|
|
20822
|
+
get showDefault() { return this._showDefault(); }
|
|
19703
20823
|
contentPopup;
|
|
19704
20824
|
get hasContentPopup() {
|
|
19705
20825
|
return this.contentPopup.length > 0;
|
|
19706
20826
|
}
|
|
19707
20827
|
subscription;
|
|
20828
|
+
_size = signal(undefined, ...(ngDevMode ? [{ debugName: "_size" }] : []));
|
|
20829
|
+
_showDefault = signal(false, ...(ngDevMode ? [{ debugName: "_showDefault" }] : []));
|
|
19708
20830
|
constructor(dateRangeService) {
|
|
19709
20831
|
this.dateRangeService = dateRangeService;
|
|
19710
20832
|
validatePackage(packageMetadata);
|
|
19711
20833
|
}
|
|
19712
20834
|
ngAfterContentInit() {
|
|
19713
|
-
this.
|
|
20835
|
+
this._showDefault.set(!this.hasContentPopup);
|
|
19714
20836
|
this.subscription = this.contentPopup.changes.subscribe(() => {
|
|
19715
|
-
this.
|
|
20837
|
+
this._showDefault.set(!this.hasContentPopup);
|
|
19716
20838
|
});
|
|
19717
20839
|
}
|
|
19718
20840
|
ngOnDestroy() {
|
|
@@ -19728,17 +20850,18 @@ class DateRangeComponent {
|
|
|
19728
20850
|
@if (showDefault) {
|
|
19729
20851
|
<kendo-daterange-popup [size]="size"></kendo-daterange-popup>
|
|
19730
20852
|
}
|
|
19731
|
-
`, isInline: true, dependencies: [{ 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", "adaptiveTitle", "adaptiveSubtitle", "size"], outputs: ["open", "close", "blur", "focus", "cancel"], exportAs: ["kendo-daterange-popup"] }] });
|
|
20853
|
+
`, isInline: true, dependencies: [{ 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", "adaptiveTitle", "adaptiveSubtitle", "size"], outputs: ["open", "close", "blur", "focus", "cancel"], exportAs: ["kendo-daterange-popup"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
19732
20854
|
}
|
|
19733
20855
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: DateRangeComponent, decorators: [{
|
|
19734
20856
|
type: Component,
|
|
19735
20857
|
args: [{
|
|
20858
|
+
selector: 'kendo-daterange',
|
|
20859
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
19736
20860
|
providers: [
|
|
19737
20861
|
DateRangeService,
|
|
19738
20862
|
{ provide: KENDO_WEBMCP_HOST, useExisting: forwardRef(() => DateRangeComponent) },
|
|
19739
20863
|
provideComponentName('daterange')
|
|
19740
20864
|
],
|
|
19741
|
-
selector: 'kendo-daterange',
|
|
19742
20865
|
template: `
|
|
19743
20866
|
<ng-content></ng-content>
|
|
19744
20867
|
@if (showDefault) {
|