@progress/kendo-angular-dateinputs 13.0.0-develop.9 → 13.0.1-develop.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/datepicker/datepicker.component.d.ts +1 -1
- package/daterange/date-range-popup.component.d.ts +2 -3
- package/datetimepicker/datetimepicker.component.d.ts +1 -5
- package/esm2020/datepicker/datepicker.component.mjs +26 -21
- package/esm2020/daterange/date-range-popup.component.mjs +16 -11
- package/esm2020/daterange/date-range.service.mjs +2 -2
- package/esm2020/datetimepicker/datetimepicker.component.mjs +22 -22
- package/esm2020/package-metadata.mjs +2 -2
- package/esm2020/timepicker/timepicker.component.mjs +22 -17
- package/fesm2015/progress-kendo-angular-dateinputs.mjs +103 -75
- package/fesm2020/progress-kendo-angular-dateinputs.mjs +90 -75
- package/package.json +11 -11
- package/timepicker/timepicker.component.d.ts +1 -1
|
@@ -36,8 +36,8 @@ const packageMetadata = {
|
|
|
36
36
|
name: '@progress/kendo-angular-dateinputs',
|
|
37
37
|
productName: 'Kendo UI for Angular',
|
|
38
38
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
39
|
-
publishDate:
|
|
40
|
-
version: '13.0.
|
|
39
|
+
publishDate: 1686070647,
|
|
40
|
+
version: '13.0.1-develop.1',
|
|
41
41
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
42
42
|
};
|
|
43
43
|
|
|
@@ -9310,7 +9310,7 @@ class DatePickerComponent {
|
|
|
9310
9310
|
* Used by the TextBoxContainer to determine if the component is empty.
|
|
9311
9311
|
*/
|
|
9312
9312
|
isEmpty() {
|
|
9313
|
-
return !this.value && this.
|
|
9313
|
+
return !this.value && this.dateInput.isEmpty();
|
|
9314
9314
|
}
|
|
9315
9315
|
/**
|
|
9316
9316
|
* @hidden
|
|
@@ -9343,6 +9343,9 @@ class DatePickerComponent {
|
|
|
9343
9343
|
this.incompleteValidator = this.incompleteDateValidation ? incompleteDateValidator() : noop$2;
|
|
9344
9344
|
this.onValidatorChange();
|
|
9345
9345
|
}
|
|
9346
|
+
if (!this.focusableId || changes.focusableId) {
|
|
9347
|
+
this.focusableId = this.dateInput?.focusableId;
|
|
9348
|
+
}
|
|
9346
9349
|
}
|
|
9347
9350
|
/**
|
|
9348
9351
|
* @hidden
|
|
@@ -9372,9 +9375,9 @@ class DatePickerComponent {
|
|
|
9372
9375
|
this.verifyValue(value);
|
|
9373
9376
|
this.value = cloneDate(value);
|
|
9374
9377
|
this.cdr.markForCheck();
|
|
9375
|
-
if (!value && this.
|
|
9376
|
-
this.
|
|
9377
|
-
this.
|
|
9378
|
+
if (!value && this.dateInput) {
|
|
9379
|
+
this.dateInput.placeholder = this.placeholder;
|
|
9380
|
+
this.dateInput.writeValue(value);
|
|
9378
9381
|
}
|
|
9379
9382
|
}
|
|
9380
9383
|
/**
|
|
@@ -9400,7 +9403,7 @@ class DatePickerComponent {
|
|
|
9400
9403
|
* @hidden
|
|
9401
9404
|
*/
|
|
9402
9405
|
validate(control) {
|
|
9403
|
-
return this.minValidateFn(control) || this.maxValidateFn(control) || this.disabledDatesValidateFn(control) || this.incompleteValidator(control, this.
|
|
9406
|
+
return this.minValidateFn(control) || this.maxValidateFn(control) || this.disabledDatesValidateFn(control) || this.incompleteValidator(control, this.dateInput && this.dateInput.isDateIncomplete);
|
|
9404
9407
|
}
|
|
9405
9408
|
/**
|
|
9406
9409
|
* @hidden
|
|
@@ -9437,13 +9440,13 @@ class DatePickerComponent {
|
|
|
9437
9440
|
* ```
|
|
9438
9441
|
*/
|
|
9439
9442
|
focus() {
|
|
9440
|
-
this.
|
|
9443
|
+
this.dateInput.focus();
|
|
9441
9444
|
}
|
|
9442
9445
|
/**
|
|
9443
9446
|
* Blurs the DatePicker component.
|
|
9444
9447
|
*/
|
|
9445
9448
|
blur() {
|
|
9446
|
-
(this.calendar || this.
|
|
9449
|
+
(this.calendar || this.dateInput)['blur']();
|
|
9447
9450
|
}
|
|
9448
9451
|
/**
|
|
9449
9452
|
* Toggles the visibility of the popup or actionSheet.
|
|
@@ -9505,7 +9508,7 @@ class DatePickerComponent {
|
|
|
9505
9508
|
* @hidden
|
|
9506
9509
|
*/
|
|
9507
9510
|
handleInputChange(value) {
|
|
9508
|
-
this.handleChange(this.
|
|
9511
|
+
this.handleChange(this.dateInput.formatSections['time'] ? value : this.mergeTime(value));
|
|
9509
9512
|
}
|
|
9510
9513
|
/**
|
|
9511
9514
|
* @hidden
|
|
@@ -9527,7 +9530,7 @@ class DatePickerComponent {
|
|
|
9527
9530
|
}
|
|
9528
9531
|
return appendTo === 'component' ? this.container : appendTo;
|
|
9529
9532
|
}
|
|
9530
|
-
get
|
|
9533
|
+
get dateInput() {
|
|
9531
9534
|
return this.pickerService.input;
|
|
9532
9535
|
}
|
|
9533
9536
|
get calendar() {
|
|
@@ -9584,7 +9587,7 @@ class DatePickerComponent {
|
|
|
9584
9587
|
}
|
|
9585
9588
|
}
|
|
9586
9589
|
if (keyCode === Keys$1.Tab && this.show && this.calendar.isActive && isTabExitingCalendar(this.calendarType, target, shiftKey)) {
|
|
9587
|
-
this.
|
|
9590
|
+
this.dateInput.focus();
|
|
9588
9591
|
this.show = false;
|
|
9589
9592
|
}
|
|
9590
9593
|
}
|
|
@@ -9617,7 +9620,7 @@ class DatePickerComponent {
|
|
|
9617
9620
|
});
|
|
9618
9621
|
this.setAriaActiveDescendant();
|
|
9619
9622
|
this.popupRef.popupElement.setAttribute('id', this.popupUID);
|
|
9620
|
-
this.renderer.setAttribute(this.inputElement, attributeNames.ariaControls, this.popupUID);
|
|
9623
|
+
this.renderer.setAttribute(this.dateInput?.inputElement, attributeNames.ariaControls, this.popupUID);
|
|
9621
9624
|
this.subscription = this.popupRef.popupAnchorViewportLeave.subscribe(() => this.show = false);
|
|
9622
9625
|
}
|
|
9623
9626
|
else {
|
|
@@ -9625,8 +9628,8 @@ class DatePickerComponent {
|
|
|
9625
9628
|
this.popupRef = null;
|
|
9626
9629
|
this.subscription.unsubscribe();
|
|
9627
9630
|
this.ariaActiveDescendantSubscription.unsubscribe();
|
|
9628
|
-
this.renderer.removeAttribute(this.inputElement, attributeNames.ariaControls);
|
|
9629
|
-
this.renderer.removeAttribute(this.inputElement, attributeNames.ariaActiveDescendant);
|
|
9631
|
+
this.renderer.removeAttribute(this.dateInput?.inputElement, attributeNames.ariaControls);
|
|
9632
|
+
this.renderer.removeAttribute(this.dateInput?.inputElement, attributeNames.ariaActiveDescendant);
|
|
9630
9633
|
this.cdr.detectChanges();
|
|
9631
9634
|
}
|
|
9632
9635
|
}
|
|
@@ -9639,13 +9642,13 @@ class DatePickerComponent {
|
|
|
9639
9642
|
this.updateActionSheetAdaptiveAppearance();
|
|
9640
9643
|
this.setAriaActiveDescendant();
|
|
9641
9644
|
this.actionSheet.element.nativeElement.setAttribute('id', this.popupUID);
|
|
9642
|
-
this.renderer.setAttribute(this.inputElement, attributeNames.ariaControls, this.popupUID);
|
|
9645
|
+
this.renderer.setAttribute(this.dateInput?.inputElement, attributeNames.ariaControls, this.popupUID);
|
|
9643
9646
|
}
|
|
9644
9647
|
else if (!show && this.isOpen) {
|
|
9645
9648
|
this.actionSheet.toggle();
|
|
9646
9649
|
this.ariaActiveDescendantSubscription.unsubscribe();
|
|
9647
|
-
this.renderer.removeAttribute(this.inputElement, attributeNames.ariaActiveDescendant);
|
|
9648
|
-
this.renderer.removeAttribute(this.inputElement, attributeNames.ariaControls);
|
|
9650
|
+
this.renderer.removeAttribute(this.dateInput?.inputElement, attributeNames.ariaActiveDescendant);
|
|
9651
|
+
this.renderer.removeAttribute(this.dateInput?.inputElement, attributeNames.ariaControls);
|
|
9649
9652
|
}
|
|
9650
9653
|
this._show = show;
|
|
9651
9654
|
}
|
|
@@ -9672,13 +9675,13 @@ class DatePickerComponent {
|
|
|
9672
9675
|
const focusedCellChangeEvent = this.calendar.type === 'infinite' ?
|
|
9673
9676
|
this.calendar.monthView.focusedCellChange :
|
|
9674
9677
|
this.calendar.multiViewCalendar.viewList.focusedCellChange;
|
|
9675
|
-
this.ariaActiveDescendantSubscription = focusedCellChangeEvent.subscribe((id) => this.renderer.setAttribute(this.inputElement, attributeNames.ariaActiveDescendant, id));
|
|
9678
|
+
this.ariaActiveDescendantSubscription = focusedCellChangeEvent.subscribe((id) => this.renderer.setAttribute(this.dateInput?.inputElement, attributeNames.ariaActiveDescendant, id));
|
|
9676
9679
|
}
|
|
9677
9680
|
focusInput() {
|
|
9678
9681
|
if (this.touchEnabled) {
|
|
9679
9682
|
return;
|
|
9680
9683
|
}
|
|
9681
|
-
this.
|
|
9684
|
+
this.dateInput.focus();
|
|
9682
9685
|
}
|
|
9683
9686
|
toggleFocus() {
|
|
9684
9687
|
if (!this.isActive) {
|
|
@@ -9693,9 +9696,9 @@ class DatePickerComponent {
|
|
|
9693
9696
|
}
|
|
9694
9697
|
}
|
|
9695
9698
|
else if (!this.touchEnabled) {
|
|
9696
|
-
this.
|
|
9699
|
+
this.dateInput.focus();
|
|
9697
9700
|
}
|
|
9698
|
-
else if (!this.
|
|
9701
|
+
else if (!this.dateInput.isActive) {
|
|
9699
9702
|
this.handleBlur();
|
|
9700
9703
|
}
|
|
9701
9704
|
}
|
|
@@ -9743,7 +9746,7 @@ class DatePickerComponent {
|
|
|
9743
9746
|
const currentTarget = args && currentFocusTarget(args);
|
|
9744
9747
|
const target = args && args.target;
|
|
9745
9748
|
const isInsideActionSheet = this.actionSheet && (this.actionSheet.element.nativeElement.contains(target) || this.actionSheet.element.nativeElement.contains(currentTarget));
|
|
9746
|
-
if (currentTarget && (this.
|
|
9749
|
+
if (currentTarget && (this.dateInput.containsElement(currentTarget) ||
|
|
9747
9750
|
(this.calendar && this.calendar.containsElement(currentTarget)) || isInsideActionSheet)) {
|
|
9748
9751
|
return;
|
|
9749
9752
|
}
|
|
@@ -9878,6 +9881,7 @@ DatePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
|
|
|
9878
9881
|
}"
|
|
9879
9882
|
[scope]="this"
|
|
9880
9883
|
(collapse)="handleActionSheetCollapse()"
|
|
9884
|
+
[titleId]="calendar?.headerId"
|
|
9881
9885
|
>
|
|
9882
9886
|
<ng-template kendoActionSheetTemplate>
|
|
9883
9887
|
<div class="k-actionsheet-titlebar">
|
|
@@ -10042,6 +10046,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
10042
10046
|
}"
|
|
10043
10047
|
[scope]="this"
|
|
10044
10048
|
(collapse)="handleActionSheetCollapse()"
|
|
10049
|
+
[titleId]="calendar?.headerId"
|
|
10045
10050
|
>
|
|
10046
10051
|
<ng-template kendoActionSheetTemplate>
|
|
10047
10052
|
<div class="k-actionsheet-titlebar">
|
|
@@ -12526,7 +12531,7 @@ class TimePickerComponent {
|
|
|
12526
12531
|
this.toggleTimeSelector(show);
|
|
12527
12532
|
}
|
|
12528
12533
|
}
|
|
12529
|
-
get
|
|
12534
|
+
get dateInput() {
|
|
12530
12535
|
return this.pickerService.input;
|
|
12531
12536
|
}
|
|
12532
12537
|
get timeSelector() {
|
|
@@ -12540,7 +12545,7 @@ class TimePickerComponent {
|
|
|
12540
12545
|
* Used by the TextBoxContainer to determine if the component is empty
|
|
12541
12546
|
*/
|
|
12542
12547
|
isEmpty() {
|
|
12543
|
-
return !this.value && this.
|
|
12548
|
+
return !this.value && this.dateInput.isEmpty();
|
|
12544
12549
|
}
|
|
12545
12550
|
/**
|
|
12546
12551
|
* @hidden
|
|
@@ -12575,6 +12580,9 @@ class TimePickerComponent {
|
|
|
12575
12580
|
if (changes.format) {
|
|
12576
12581
|
this.verifyFormat();
|
|
12577
12582
|
}
|
|
12583
|
+
if (!this.focusableId || changes.focusableId) {
|
|
12584
|
+
this.focusableId = this.dateInput?.focusableId;
|
|
12585
|
+
}
|
|
12578
12586
|
}
|
|
12579
12587
|
/**
|
|
12580
12588
|
* @hidden
|
|
@@ -12620,9 +12628,9 @@ class TimePickerComponent {
|
|
|
12620
12628
|
this.verifyValue(value);
|
|
12621
12629
|
this.value = cloneDate(value);
|
|
12622
12630
|
this.cdr.markForCheck();
|
|
12623
|
-
if (!value && this.
|
|
12624
|
-
this.
|
|
12625
|
-
this.
|
|
12631
|
+
if (!value && this.dateInput) {
|
|
12632
|
+
this.dateInput.placeholder = this.placeholder;
|
|
12633
|
+
this.dateInput.writeValue(value);
|
|
12626
12634
|
}
|
|
12627
12635
|
}
|
|
12628
12636
|
/**
|
|
@@ -12648,7 +12656,7 @@ class TimePickerComponent {
|
|
|
12648
12656
|
* @hidden
|
|
12649
12657
|
*/
|
|
12650
12658
|
validate(control) {
|
|
12651
|
-
return this.timeRangeValidateFn(control) || this.incompleteValidator(control, this.
|
|
12659
|
+
return this.timeRangeValidateFn(control) || this.incompleteValidator(control, this.dateInput && this.dateInput.isDateIncomplete);
|
|
12652
12660
|
}
|
|
12653
12661
|
/**
|
|
12654
12662
|
* @hidden
|
|
@@ -12672,13 +12680,13 @@ class TimePickerComponent {
|
|
|
12672
12680
|
* ```
|
|
12673
12681
|
*/
|
|
12674
12682
|
focus() {
|
|
12675
|
-
this.
|
|
12683
|
+
this.dateInput.focus();
|
|
12676
12684
|
}
|
|
12677
12685
|
/**
|
|
12678
12686
|
* Blurs the TimePicker component.
|
|
12679
12687
|
*/
|
|
12680
12688
|
blur() {
|
|
12681
|
-
(this.timeSelector || this.
|
|
12689
|
+
(this.timeSelector || this.dateInput)['blur']();
|
|
12682
12690
|
}
|
|
12683
12691
|
/**
|
|
12684
12692
|
* Toggles the visibility of the popup or actionSheet.
|
|
@@ -12751,7 +12759,7 @@ class TimePickerComponent {
|
|
|
12751
12759
|
* @hidden
|
|
12752
12760
|
*/
|
|
12753
12761
|
handleInputChange(value) {
|
|
12754
|
-
const val = this.
|
|
12762
|
+
const val = this.dateInput.formatSections['date'] ? value : this.mergeTime(value);
|
|
12755
12763
|
this.handleChange(val);
|
|
12756
12764
|
}
|
|
12757
12765
|
/**
|
|
@@ -12862,12 +12870,12 @@ class TimePickerComponent {
|
|
|
12862
12870
|
this.actionSheet.toggle();
|
|
12863
12871
|
this.updateActionSheetAdaptiveAppearance();
|
|
12864
12872
|
this.renderer.setAttribute(this.actionSheet.element.nativeElement, 'id', this.popupUID);
|
|
12865
|
-
this.renderer.setAttribute(this.inputElement, attributeNames.ariaControls, this.popupUID);
|
|
12873
|
+
this.renderer.setAttribute(this.dateInput?.inputElement, attributeNames.ariaControls, this.popupUID);
|
|
12866
12874
|
}
|
|
12867
12875
|
else if (!show && this.isOpen) {
|
|
12868
12876
|
// Need to disable the pointer events to avoid triggering focus on the timelist when acionsheet close down animation starts
|
|
12869
12877
|
this.renderer.setStyle(this.timeSelector.element.nativeElement, 'pointer-events', 'none');
|
|
12870
|
-
this.renderer.removeAttribute(this.inputElement, attributeNames.ariaControls);
|
|
12878
|
+
this.renderer.removeAttribute(this.dateInput?.inputElement, attributeNames.ariaControls);
|
|
12871
12879
|
this.actionSheet.toggle();
|
|
12872
12880
|
}
|
|
12873
12881
|
this._show = show;
|
|
@@ -12891,13 +12899,13 @@ class TimePickerComponent {
|
|
|
12891
12899
|
positionMode: 'absolute'
|
|
12892
12900
|
});
|
|
12893
12901
|
this.popupRef.popupElement.setAttribute('id', this.popupUID);
|
|
12894
|
-
this.renderer.setAttribute(this.inputElement, attributeNames.ariaControls, this.popupUID);
|
|
12902
|
+
this.renderer.setAttribute(this.dateInput?.inputElement, attributeNames.ariaControls, this.popupUID);
|
|
12895
12903
|
this.popupRef.popupAnchorViewportLeave.subscribe(() => this.show = false);
|
|
12896
12904
|
}
|
|
12897
12905
|
else {
|
|
12898
12906
|
this.popupRef.close();
|
|
12899
12907
|
this.popupRef = null;
|
|
12900
|
-
this.renderer.removeAttribute(this.inputElement, attributeNames.ariaControls);
|
|
12908
|
+
this.renderer.removeAttribute(this.dateInput?.inputElement, attributeNames.ariaControls);
|
|
12901
12909
|
}
|
|
12902
12910
|
}
|
|
12903
12911
|
updateActionSheetAdaptiveAppearance() {
|
|
@@ -12923,7 +12931,7 @@ class TimePickerComponent {
|
|
|
12923
12931
|
if (this.touchEnabled) {
|
|
12924
12932
|
return;
|
|
12925
12933
|
}
|
|
12926
|
-
this.
|
|
12934
|
+
this.dateInput.focus();
|
|
12927
12935
|
}
|
|
12928
12936
|
toggleFocus() {
|
|
12929
12937
|
if (!this.isActive) {
|
|
@@ -12938,9 +12946,9 @@ class TimePickerComponent {
|
|
|
12938
12946
|
}
|
|
12939
12947
|
}
|
|
12940
12948
|
else if (!this.touchEnabled) {
|
|
12941
|
-
this.
|
|
12949
|
+
this.dateInput.focus();
|
|
12942
12950
|
}
|
|
12943
|
-
else if (!this.
|
|
12951
|
+
else if (!this.dateInput.isActive) {
|
|
12944
12952
|
this.handleBlur();
|
|
12945
12953
|
}
|
|
12946
12954
|
}
|
|
@@ -12989,7 +12997,7 @@ class TimePickerComponent {
|
|
|
12989
12997
|
const currentTarget = args && currentFocusTarget(args); // relatedTarget || activeElement
|
|
12990
12998
|
const target = args && args.target;
|
|
12991
12999
|
const isInsideActionSheet = this.actionSheet && (this.actionSheet.element.nativeElement.contains(target) || this.actionSheet.element.nativeElement.contains(currentTarget));
|
|
12992
|
-
if (currentTarget && (this.
|
|
13000
|
+
if (currentTarget && (this.dateInput.containsElement(currentTarget) ||
|
|
12993
13001
|
(this.timeSelector && this.timeSelector.containsElement(currentTarget)) || isInsideActionSheet)) {
|
|
12994
13002
|
return;
|
|
12995
13003
|
}
|
|
@@ -13136,6 +13144,7 @@ TimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
|
|
|
13136
13144
|
#actionSheet
|
|
13137
13145
|
(overlayClick)="show=false"
|
|
13138
13146
|
(collapse)="handleActionSheetCollapse()"
|
|
13147
|
+
[titleId]="focusableId"
|
|
13139
13148
|
>
|
|
13140
13149
|
<ng-template kendoActionSheetTemplate>
|
|
13141
13150
|
<div class="k-actionsheet-titlebar">
|
|
@@ -13338,6 +13347,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
13338
13347
|
#actionSheet
|
|
13339
13348
|
(overlayClick)="show=false"
|
|
13340
13349
|
(collapse)="handleActionSheetCollapse()"
|
|
13350
|
+
[titleId]="focusableId"
|
|
13341
13351
|
>
|
|
13342
13352
|
<ng-template kendoActionSheetTemplate>
|
|
13343
13353
|
<div class="k-actionsheet-titlebar">
|
|
@@ -13812,15 +13822,9 @@ class DateTimePickerComponent {
|
|
|
13812
13822
|
/**
|
|
13813
13823
|
* @hidden
|
|
13814
13824
|
*/
|
|
13815
|
-
get
|
|
13825
|
+
get dateInput() {
|
|
13816
13826
|
return this.pickerService.input;
|
|
13817
13827
|
}
|
|
13818
|
-
/**
|
|
13819
|
-
* @hidden
|
|
13820
|
-
*/
|
|
13821
|
-
get inputElement() {
|
|
13822
|
-
return this.wrapper.nativeElement.querySelector('input');
|
|
13823
|
-
}
|
|
13824
13828
|
/**
|
|
13825
13829
|
* @hidden
|
|
13826
13830
|
*/
|
|
@@ -14173,6 +14177,9 @@ class DateTimePickerComponent {
|
|
|
14173
14177
|
this.incompleteValidator = this.incompleteDateValidation ? incompleteDateValidator() : noop$2;
|
|
14174
14178
|
this.onValidatorChange();
|
|
14175
14179
|
}
|
|
14180
|
+
if (!this.focusableId || changes['focusableId']) {
|
|
14181
|
+
this.focusableId = this.dateInput?.focusableId;
|
|
14182
|
+
}
|
|
14176
14183
|
}
|
|
14177
14184
|
ngOnDestroy() {
|
|
14178
14185
|
if (this.isOpen) {
|
|
@@ -14192,7 +14199,7 @@ class DateTimePickerComponent {
|
|
|
14192
14199
|
this.activeTabComponent.focus();
|
|
14193
14200
|
}
|
|
14194
14201
|
else {
|
|
14195
|
-
this.
|
|
14202
|
+
this.dateInput.focus();
|
|
14196
14203
|
}
|
|
14197
14204
|
}
|
|
14198
14205
|
/**
|
|
@@ -14203,7 +14210,7 @@ class DateTimePickerComponent {
|
|
|
14203
14210
|
this.activeTabComponent.blur();
|
|
14204
14211
|
}
|
|
14205
14212
|
else {
|
|
14206
|
-
this.
|
|
14213
|
+
this.dateInput.blur();
|
|
14207
14214
|
}
|
|
14208
14215
|
}
|
|
14209
14216
|
/**
|
|
@@ -14255,7 +14262,7 @@ class DateTimePickerComponent {
|
|
|
14255
14262
|
* @hidden
|
|
14256
14263
|
*/
|
|
14257
14264
|
validate(control) {
|
|
14258
|
-
return this.minValidateFn(control) || this.maxValidateFn(control) || this.disabledDatesValidateFn(control) || this.incompleteValidator(control, this.
|
|
14265
|
+
return this.minValidateFn(control) || this.maxValidateFn(control) || this.disabledDatesValidateFn(control) || this.incompleteValidator(control, this.dateInput && this.dateInput.isDateIncomplete);
|
|
14259
14266
|
}
|
|
14260
14267
|
/**
|
|
14261
14268
|
* @hidden
|
|
@@ -14269,7 +14276,7 @@ class DateTimePickerComponent {
|
|
|
14269
14276
|
* Used by the TextBoxContainer to determine if the floating label will render in the input.
|
|
14270
14277
|
*/
|
|
14271
14278
|
isEmpty() {
|
|
14272
|
-
return !isPresent(this.value) && this.
|
|
14279
|
+
return !isPresent(this.value) && this.dateInput.isEmpty();
|
|
14273
14280
|
}
|
|
14274
14281
|
/**
|
|
14275
14282
|
* @hidden
|
|
@@ -14342,7 +14349,7 @@ class DateTimePickerComponent {
|
|
|
14342
14349
|
return;
|
|
14343
14350
|
}
|
|
14344
14351
|
if (this.activeTab === 'time') {
|
|
14345
|
-
this.renderer.removeAttribute(this.inputElement, attributeNames.ariaActiveDescendant);
|
|
14352
|
+
this.renderer.removeAttribute(this.dateInput?.inputElement, attributeNames.ariaActiveDescendant);
|
|
14346
14353
|
}
|
|
14347
14354
|
this.activeTabComponent.focus();
|
|
14348
14355
|
}
|
|
@@ -14487,7 +14494,6 @@ class DateTimePickerComponent {
|
|
|
14487
14494
|
this.cdr.markForCheck();
|
|
14488
14495
|
// Reset tabs after actionsheet is collapsed, otherwise the tab change can be seen during the animation
|
|
14489
14496
|
this.resetActiveTab();
|
|
14490
|
-
this.input.focus();
|
|
14491
14497
|
}
|
|
14492
14498
|
/**
|
|
14493
14499
|
* @hidden
|
|
@@ -14519,14 +14525,14 @@ class DateTimePickerComponent {
|
|
|
14519
14525
|
this.actionSheet.toggle();
|
|
14520
14526
|
this.updateActionSheetAdaptiveAppearance();
|
|
14521
14527
|
this.renderer.setAttribute(this.actionSheet.element.nativeElement, 'id', this.popupUID);
|
|
14522
|
-
this.renderer.setAttribute(this.inputElement, attributeNames.ariaControls, this.popupUID);
|
|
14528
|
+
this.renderer.setAttribute(this.dateInput?.inputElement, attributeNames.ariaControls, this.popupUID);
|
|
14523
14529
|
this.setAriaActiveDescendant();
|
|
14524
14530
|
}
|
|
14525
14531
|
else if (isPresent(show) && !show && this.isOpen) {
|
|
14526
14532
|
this.actionSheet.toggle();
|
|
14527
14533
|
this.ariaActiveDescendantSubscription.unsubscribe();
|
|
14528
|
-
this.renderer.removeAttribute(this.
|
|
14529
|
-
this.renderer.removeAttribute(this.
|
|
14534
|
+
this.renderer.removeAttribute(this.dateInput?.inputElement, attributeNames.ariaActiveDescendant);
|
|
14535
|
+
this.renderer.removeAttribute(this.dateInput?.inputElement, attributeNames.ariaControls);
|
|
14530
14536
|
}
|
|
14531
14537
|
}
|
|
14532
14538
|
updateActionSheetAdaptiveAppearance() {
|
|
@@ -14641,9 +14647,9 @@ class DateTimePickerComponent {
|
|
|
14641
14647
|
this.activeTabComponent.focus();
|
|
14642
14648
|
}
|
|
14643
14649
|
else if (!this.touchEnabled) {
|
|
14644
|
-
this.
|
|
14650
|
+
this.dateInput.focus();
|
|
14645
14651
|
}
|
|
14646
|
-
else if (!this.
|
|
14652
|
+
else if (!this.dateInput.isActive) {
|
|
14647
14653
|
this.handleBlur();
|
|
14648
14654
|
}
|
|
14649
14655
|
}
|
|
@@ -14662,7 +14668,7 @@ class DateTimePickerComponent {
|
|
|
14662
14668
|
popupAlign: { vertical: 'top', horizontal: direction }
|
|
14663
14669
|
});
|
|
14664
14670
|
this.popupRef.popupElement.setAttribute('id', this.popupUID);
|
|
14665
|
-
this.renderer.setAttribute(this.inputElement, attributeNames.ariaControls, this.popupUID);
|
|
14671
|
+
this.renderer.setAttribute(this.dateInput?.inputElement, attributeNames.ariaControls, this.popupUID);
|
|
14666
14672
|
this.setAriaActiveDescendant();
|
|
14667
14673
|
this.popupRef.popupAnchorViewportLeave.subscribe(() => this.handleCancel());
|
|
14668
14674
|
if (this.calendar.type === 'infinite') {
|
|
@@ -14679,15 +14685,15 @@ class DateTimePickerComponent {
|
|
|
14679
14685
|
const focusedCellChangeEvent = this.calendar.type === 'infinite' ?
|
|
14680
14686
|
this.calendar.monthView.focusedCellChange :
|
|
14681
14687
|
this.calendar.multiViewCalendar.viewList.focusedCellChange;
|
|
14682
|
-
this.ariaActiveDescendantSubscription = focusedCellChangeEvent.subscribe((id) => this.renderer.setAttribute(this.
|
|
14688
|
+
this.ariaActiveDescendantSubscription = focusedCellChangeEvent.subscribe((id) => this.renderer.setAttribute(this.dateInput?.inputElement, attributeNames.ariaActiveDescendant, id));
|
|
14683
14689
|
}
|
|
14684
14690
|
closePopup() {
|
|
14685
14691
|
if (!this.isOpen) {
|
|
14686
14692
|
return;
|
|
14687
14693
|
}
|
|
14688
14694
|
this.ariaActiveDescendantSubscription.unsubscribe();
|
|
14689
|
-
this.renderer.removeAttribute(this.inputElement, attributeNames.ariaControls);
|
|
14690
|
-
this.renderer.removeAttribute(this.inputElement, attributeNames.ariaActiveDescendant);
|
|
14695
|
+
this.renderer.removeAttribute(this.dateInput?.inputElement, attributeNames.ariaControls);
|
|
14696
|
+
this.renderer.removeAttribute(this.dateInput?.inputElement, attributeNames.ariaActiveDescendant);
|
|
14691
14697
|
this.popupRef.close();
|
|
14692
14698
|
this.popupRef = null;
|
|
14693
14699
|
}
|
|
@@ -14907,6 +14913,7 @@ DateTimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
|
|
|
14907
14913
|
#actionSheet
|
|
14908
14914
|
(overlayClick)="toggleDateTime(false)"
|
|
14909
14915
|
(collapse)="handleActionSheetCollapse()"
|
|
14916
|
+
[titleId]="calendar?.headerId"
|
|
14910
14917
|
>
|
|
14911
14918
|
<ng-template kendoActionSheetTemplate>
|
|
14912
14919
|
<div class="k-actionsheet-titlebar">
|
|
@@ -15016,6 +15023,7 @@ DateTimePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
|
|
|
15016
15023
|
>
|
|
15017
15024
|
<div class="k-datetime-calendar-wrap">
|
|
15018
15025
|
<kendo-calendar
|
|
15026
|
+
#calendar
|
|
15019
15027
|
[ngClass]="{'k-calendar-lg': isAdaptive}"
|
|
15020
15028
|
[focusedDate]="focusedDate"
|
|
15021
15029
|
[(value)]="calendarValue"
|
|
@@ -15269,6 +15277,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
15269
15277
|
#actionSheet
|
|
15270
15278
|
(overlayClick)="toggleDateTime(false)"
|
|
15271
15279
|
(collapse)="handleActionSheetCollapse()"
|
|
15280
|
+
[titleId]="calendar?.headerId"
|
|
15272
15281
|
>
|
|
15273
15282
|
<ng-template kendoActionSheetTemplate>
|
|
15274
15283
|
<div class="k-actionsheet-titlebar">
|
|
@@ -15378,6 +15387,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
15378
15387
|
>
|
|
15379
15388
|
<div class="k-datetime-calendar-wrap">
|
|
15380
15389
|
<kendo-calendar
|
|
15390
|
+
#calendar
|
|
15381
15391
|
[ngClass]="{'k-calendar-lg': isAdaptive}"
|
|
15382
15392
|
[focusedDate]="focusedDate"
|
|
15383
15393
|
[(value)]="calendarValue"
|
|
@@ -15693,14 +15703,14 @@ class DateRangeService {
|
|
|
15693
15703
|
* Gets the start input element.
|
|
15694
15704
|
*/
|
|
15695
15705
|
get inputStartElement() {
|
|
15696
|
-
return this.startInput$.value.
|
|
15706
|
+
return this.startInput$.value.inputElement;
|
|
15697
15707
|
}
|
|
15698
15708
|
/**
|
|
15699
15709
|
* @hidden
|
|
15700
15710
|
* Gets the end input element.
|
|
15701
15711
|
*/
|
|
15702
15712
|
get inputEndElement() {
|
|
15703
|
-
return this.endInput$.value.
|
|
15713
|
+
return this.endInput$.value.inputElement;
|
|
15704
15714
|
}
|
|
15705
15715
|
/**
|
|
15706
15716
|
* Activates the registered `DateRangePopup` component.
|
|
@@ -16108,10 +16118,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
16108
16118
|
* ```
|
|
16109
16119
|
*/
|
|
16110
16120
|
class DateRangePopupComponent {
|
|
16111
|
-
constructor(popupService, dateRangeService,
|
|
16121
|
+
constructor(popupService, dateRangeService, zone, renderer, localization, cdr, rtl) {
|
|
16112
16122
|
this.popupService = popupService;
|
|
16113
16123
|
this.dateRangeService = dateRangeService;
|
|
16114
|
-
this.ref = ref;
|
|
16115
16124
|
this.zone = zone;
|
|
16116
16125
|
this.renderer = renderer;
|
|
16117
16126
|
this.localization = localization;
|
|
@@ -16254,8 +16263,16 @@ class DateRangePopupComponent {
|
|
|
16254
16263
|
}
|
|
16255
16264
|
}
|
|
16256
16265
|
ngAfterViewInit() {
|
|
16257
|
-
this.calendarSubscriptions.add(this.contentCalendar.changes.subscribe((changes) =>
|
|
16258
|
-
|
|
16266
|
+
this.calendarSubscriptions.add(this.contentCalendar.changes.subscribe((changes) => {
|
|
16267
|
+
this.calendar = changes.first;
|
|
16268
|
+
this.actionSheet.titleId = changes.first?.headerId;
|
|
16269
|
+
this.cdr.detectChanges();
|
|
16270
|
+
}));
|
|
16271
|
+
this.calendarSubscriptions.add(this.viewCalendar.changes.subscribe((changes) => {
|
|
16272
|
+
this.calendar = changes.first;
|
|
16273
|
+
this.actionSheet.titleId = changes.first?.headerId;
|
|
16274
|
+
this.cdr.detectChanges();
|
|
16275
|
+
}));
|
|
16259
16276
|
if (isWindowAvailable()) {
|
|
16260
16277
|
this.zone.runOutsideAngular(() => this.windowBlurSubscription = fromEvent(window, 'blur').subscribe(this.handleWindowBlur.bind(this)));
|
|
16261
16278
|
}
|
|
@@ -16286,7 +16303,7 @@ class DateRangePopupComponent {
|
|
|
16286
16303
|
this.activateSubscription.unsubscribe();
|
|
16287
16304
|
}
|
|
16288
16305
|
this.show = true;
|
|
16289
|
-
this.
|
|
16306
|
+
this.cdr.markForCheck();
|
|
16290
16307
|
this.zone.runOutsideAngular(() => {
|
|
16291
16308
|
this.activateSubscription = merge(this.contentCalendar.changes, this.viewCalendar.changes)
|
|
16292
16309
|
.pipe(filter(changes => changes && changes.first), map(changes => changes.first))
|
|
@@ -16523,7 +16540,7 @@ class DateRangePopupComponent {
|
|
|
16523
16540
|
}
|
|
16524
16541
|
}
|
|
16525
16542
|
}
|
|
16526
|
-
DateRangePopupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateRangePopupComponent, deps: [{ token: i1$2.PopupService }, { token: DateRangeService }, { token: i0.
|
|
16543
|
+
DateRangePopupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateRangePopupComponent, deps: [{ token: i1$2.PopupService }, { token: DateRangeService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i1$1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: RTL, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
16527
16544
|
DateRangePopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DateRangePopupComponent, selector: "kendo-daterange-popup", inputs: { animate: "animate", anchor: "anchor", anchorAlign: "anchorAlign", appendTo: "appendTo", collision: "collision", popupAlign: "popupAlign", margin: "margin", adaptiveMode: "adaptiveMode", title: "title", subtitle: "subtitle" }, outputs: { open: "open", close: "close", onBlur: "blur", onFocus: "focus", cancel: "cancel" }, providers: [
|
|
16528
16545
|
LocalizationService,
|
|
16529
16546
|
{
|
|
@@ -16550,7 +16567,7 @@ DateRangePopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
|
|
|
16550
16567
|
<kendo-multiviewcalendar kendoDateRangeSelection (onClosePopup)="closePopup($event)" (onTabPress)="handleTab($event)" (onShiftTabPress)="handleShiftTab($event)"></kendo-multiviewcalendar>
|
|
16551
16568
|
</ng-template>
|
|
16552
16569
|
|
|
16553
|
-
<kendo-actionsheet
|
|
16570
|
+
<kendo-actionsheet
|
|
16554
16571
|
#actionSheet
|
|
16555
16572
|
(overlayClick)="show=false"
|
|
16556
16573
|
(collapse)="onBlur.emit()"
|
|
@@ -16587,7 +16604,6 @@ DateRangePopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
|
|
|
16587
16604
|
<kendo-multiviewcalendar
|
|
16588
16605
|
class="k-calendar-lg"
|
|
16589
16606
|
orientation="vertical"
|
|
16590
|
-
#test
|
|
16591
16607
|
kendoDateRangeSelection
|
|
16592
16608
|
[shouldSetRange]="false">
|
|
16593
16609
|
</kendo-multiviewcalendar>
|
|
@@ -16648,7 +16664,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
16648
16664
|
<kendo-multiviewcalendar kendoDateRangeSelection (onClosePopup)="closePopup($event)" (onTabPress)="handleTab($event)" (onShiftTabPress)="handleShiftTab($event)"></kendo-multiviewcalendar>
|
|
16649
16665
|
</ng-template>
|
|
16650
16666
|
|
|
16651
|
-
<kendo-actionsheet
|
|
16667
|
+
<kendo-actionsheet
|
|
16652
16668
|
#actionSheet
|
|
16653
16669
|
(overlayClick)="show=false"
|
|
16654
16670
|
(collapse)="onBlur.emit()"
|
|
@@ -16685,7 +16701,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
16685
16701
|
<kendo-multiviewcalendar
|
|
16686
16702
|
class="k-calendar-lg"
|
|
16687
16703
|
orientation="vertical"
|
|
16688
|
-
#test
|
|
16689
16704
|
kendoDateRangeSelection
|
|
16690
16705
|
[shouldSetRange]="false">
|
|
16691
16706
|
</kendo-multiviewcalendar>
|
|
@@ -16715,7 +16730,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
16715
16730
|
</kendo-actionsheet>
|
|
16716
16731
|
`
|
|
16717
16732
|
}]
|
|
16718
|
-
}], ctorParameters: function () { return [{ type: i1$2.PopupService }, { type: DateRangeService }, { type: i0.
|
|
16733
|
+
}], ctorParameters: function () { return [{ type: i1$2.PopupService }, { type: DateRangeService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i1$1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
|
|
16719
16734
|
type: Optional
|
|
16720
16735
|
}, {
|
|
16721
16736
|
type: Inject,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-angular-dateinputs",
|
|
3
|
-
"version": "13.0.
|
|
3
|
+
"version": "13.0.1-develop.1",
|
|
4
4
|
"description": "Kendo UI for Angular Date Inputs Package - Everything you need to add date selection functionality to apps (DatePicker, TimePicker, DateInput, DateRangePicker, DateTimePicker, Calendar, and MultiViewCalendar).",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"author": "Progress",
|
|
@@ -33,20 +33,20 @@
|
|
|
33
33
|
"@angular/core": "13 - 16",
|
|
34
34
|
"@angular/platform-browser": "13 - 16",
|
|
35
35
|
"@progress/kendo-licensing": "^1.0.2",
|
|
36
|
-
"@progress/kendo-angular-common": "13.0.
|
|
37
|
-
"@progress/kendo-angular-intl": "13.0.
|
|
38
|
-
"@progress/kendo-angular-l10n": "13.0.
|
|
39
|
-
"@progress/kendo-angular-icons": "13.0.
|
|
40
|
-
"@progress/kendo-angular-popup": "13.0.
|
|
41
|
-
"@progress/kendo-angular-navigation": "13.0.
|
|
36
|
+
"@progress/kendo-angular-common": "13.0.1-develop.1",
|
|
37
|
+
"@progress/kendo-angular-intl": "13.0.1-develop.1",
|
|
38
|
+
"@progress/kendo-angular-l10n": "13.0.1-develop.1",
|
|
39
|
+
"@progress/kendo-angular-icons": "13.0.1-develop.1",
|
|
40
|
+
"@progress/kendo-angular-popup": "13.0.1-develop.1",
|
|
41
|
+
"@progress/kendo-angular-navigation": "13.0.1-develop.1",
|
|
42
42
|
"rxjs": "^6.5.3 || ^7.0.0",
|
|
43
|
-
"@progress/kendo-angular-buttons": "13.0.
|
|
44
|
-
"@progress/kendo-angular-inputs": "13.0.
|
|
45
|
-
"@progress/kendo-angular-label": "13.0.
|
|
43
|
+
"@progress/kendo-angular-buttons": "13.0.1-develop.1",
|
|
44
|
+
"@progress/kendo-angular-inputs": "13.0.1-develop.1",
|
|
45
|
+
"@progress/kendo-angular-label": "13.0.1-develop.1"
|
|
46
46
|
},
|
|
47
47
|
"dependencies": {
|
|
48
48
|
"tslib": "^2.3.1",
|
|
49
|
-
"@progress/kendo-angular-schematics": "13.0.
|
|
49
|
+
"@progress/kendo-angular-schematics": "13.0.1-develop.1",
|
|
50
50
|
"@progress/kendo-common": "^0.2.0",
|
|
51
51
|
"@progress/kendo-date-math": "^1.1.0"
|
|
52
52
|
},
|
|
@@ -348,7 +348,7 @@ export declare class TimePickerComponent implements ControlValueAccessor, OnInit
|
|
|
348
348
|
set isActive(value: boolean);
|
|
349
349
|
get show(): boolean;
|
|
350
350
|
set show(show: boolean);
|
|
351
|
-
get
|
|
351
|
+
get dateInput(): DateInputComponent;
|
|
352
352
|
get timeSelector(): TimeSelectorComponent;
|
|
353
353
|
private get inputElement();
|
|
354
354
|
private onControlChange;
|