@syncfusion/ej2-calendars 20.3.59 → 20.4.38
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/.eslintrc.json +16 -1
- package/CHANGELOG.md +0 -26
- package/dist/ej2-calendars.min.js +2 -2
- package/dist/ej2-calendars.umd.min.js +2 -2
- package/dist/ej2-calendars.umd.min.js.map +1 -1
- package/dist/es6/ej2-calendars.es2015.js +181 -75
- package/dist/es6/ej2-calendars.es2015.js.map +1 -1
- package/dist/es6/ej2-calendars.es5.js +180 -74
- package/dist/es6/ej2-calendars.es5.js.map +1 -1
- package/dist/global/ej2-calendars.min.js +2 -2
- package/dist/global/ej2-calendars.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +10 -10
- package/src/calendar/calendar.js +37 -19
- package/src/calendar/islamic.js +29 -7
- package/src/datepicker/datepicker.js +24 -14
- package/src/daterangepicker/daterangepicker.d.ts +0 -1
- package/src/daterangepicker/daterangepicker.js +43 -24
- package/src/datetimepicker/datetimepicker.js +10 -2
- package/src/maskbase/masked-date-time.js +24 -0
- package/src/timepicker/timepicker.js +13 -8
- package/styles/bootstrap-dark.css +7 -0
- package/styles/bootstrap.css +7 -0
- package/styles/bootstrap4.css +7 -0
- package/styles/bootstrap5-dark.css +8 -1
- package/styles/bootstrap5.css +7 -0
- package/styles/calendar/_fluent-definition.scss +1 -1
- package/styles/calendar/_material-definition.scss +3 -3
- package/styles/calendar/_theme.scss +1 -1
- package/styles/calendar/bootstrap5-dark.css +1 -1
- package/styles/calendar/fabric-dark.css +1 -1
- package/styles/calendar/fabric.css +1 -1
- package/styles/calendar/fluent-dark.css +3 -3
- package/styles/calendar/fluent.css +2 -2
- package/styles/calendar/material.css +3 -3
- package/styles/daterangepicker/_bootstrap-dark-definition.scss +1 -0
- package/styles/daterangepicker/_bootstrap-definition.scss +1 -0
- package/styles/daterangepicker/_bootstrap4-definition.scss +1 -0
- package/styles/daterangepicker/_bootstrap5-definition.scss +1 -0
- package/styles/daterangepicker/_fabric-dark-definition.scss +1 -0
- package/styles/daterangepicker/_fabric-definition.scss +1 -0
- package/styles/daterangepicker/_fluent-definition.scss +6 -0
- package/styles/daterangepicker/_fusionnew-definition.scss +1 -0
- package/styles/daterangepicker/_highcontrast-definition.scss +1 -0
- package/styles/daterangepicker/_highcontrast-light-definition.scss +1 -0
- package/styles/daterangepicker/_layout.scss +6 -0
- package/styles/daterangepicker/_material-dark-definition.scss +1 -0
- package/styles/daterangepicker/_material-definition.scss +1 -0
- package/styles/daterangepicker/_material3-definition.scss +1 -0
- package/styles/daterangepicker/_tailwind-definition.scss +1 -0
- package/styles/daterangepicker/_theme.scss +33 -0
- package/styles/daterangepicker/bootstrap-dark.css +7 -0
- package/styles/daterangepicker/bootstrap.css +7 -0
- package/styles/daterangepicker/bootstrap4.css +7 -0
- package/styles/daterangepicker/bootstrap5-dark.css +7 -0
- package/styles/daterangepicker/bootstrap5.css +7 -0
- package/styles/daterangepicker/fabric-dark.css +7 -0
- package/styles/daterangepicker/fabric.css +7 -0
- package/styles/daterangepicker/fluent-dark.css +30 -0
- package/styles/daterangepicker/fluent.css +30 -0
- package/styles/daterangepicker/highcontrast-light.css +7 -0
- package/styles/daterangepicker/highcontrast.css +7 -0
- package/styles/daterangepicker/material-dark.css +7 -0
- package/styles/daterangepicker/material.css +5 -0
- package/styles/daterangepicker/tailwind-dark.css +7 -0
- package/styles/daterangepicker/tailwind.css +7 -0
- package/styles/fabric-dark.css +8 -1
- package/styles/fabric.css +8 -1
- package/styles/fluent-dark.css +33 -3
- package/styles/fluent.css +32 -2
- package/styles/highcontrast-light.css +7 -0
- package/styles/highcontrast.css +7 -0
- package/styles/material-dark.css +7 -0
- package/styles/material.css +8 -3
- package/styles/tailwind-dark.css +7 -0
- package/styles/tailwind.css +7 -0
|
@@ -273,8 +273,10 @@ let CalendarBase = class CalendarBase extends Component {
|
|
|
273
273
|
else {
|
|
274
274
|
cldrObj = (this.getCultureObjects(cldrData, '' + this.locale));
|
|
275
275
|
}
|
|
276
|
-
|
|
277
|
-
|
|
276
|
+
if (!isNullOrUndefined(cldrObj)) {
|
|
277
|
+
for (const obj of Object.keys(cldrObj)) {
|
|
278
|
+
culShortNames.push(getValue(obj, cldrObj));
|
|
279
|
+
}
|
|
278
280
|
}
|
|
279
281
|
return culShortNames;
|
|
280
282
|
}
|
|
@@ -308,9 +310,11 @@ let CalendarBase = class CalendarBase extends Component {
|
|
|
308
310
|
}
|
|
309
311
|
}
|
|
310
312
|
// eslint-disable-next-line max-len
|
|
311
|
-
const shortNames = this.shiftArray(((this.getCultureValues().length > 0 && this.getCultureValues())), this.firstDayOfWeek);
|
|
312
|
-
|
|
313
|
-
|
|
313
|
+
const shortNames = this.getCultureValues().length > 0 && this.getCultureValues() ? this.shiftArray(((this.getCultureValues().length > 0 && this.getCultureValues())), this.firstDayOfWeek) : null;
|
|
314
|
+
if (!isNullOrUndefined(shortNames)) {
|
|
315
|
+
for (let days = 0; days <= daysCount; days++) {
|
|
316
|
+
html += '<th class="">' + this.toCapitalize(shortNames[days]) + '</th>';
|
|
317
|
+
}
|
|
314
318
|
}
|
|
315
319
|
html = '<tr>' + html + '</tr>';
|
|
316
320
|
this.tableHeadElement.innerHTML = html;
|
|
@@ -492,7 +496,7 @@ let CalendarBase = class CalendarBase extends Component {
|
|
|
492
496
|
e.preventDefault();
|
|
493
497
|
break;
|
|
494
498
|
case 'controlDown':
|
|
495
|
-
if (!isNullOrUndefined(focusedDate) || !isNullOrUndefined(selectedDate) && !levelRestrict) {
|
|
499
|
+
if (!isNullOrUndefined(focusedDate) && !levelRestrict || !isNullOrUndefined(selectedDate) && !levelRestrict) {
|
|
496
500
|
this.contentClick(null, --view, (focusedDate || selectedDate), value);
|
|
497
501
|
}
|
|
498
502
|
e.preventDefault();
|
|
@@ -1116,9 +1120,6 @@ let CalendarBase = class CalendarBase extends Component {
|
|
|
1116
1120
|
case 0:
|
|
1117
1121
|
detach(this.tableBodyElement);
|
|
1118
1122
|
this.renderMonths(e, null, isCustomDate);
|
|
1119
|
-
if (multiSelection && !isNullOrUndefined(this.tableBodyElement.querySelectorAll('.' + FOCUSEDDATE)[0])) {
|
|
1120
|
-
this.tableBodyElement.querySelectorAll('.' + FOCUSEDDATE)[0].classList.remove(FOCUSEDDATE);
|
|
1121
|
-
}
|
|
1122
1123
|
break;
|
|
1123
1124
|
case 1:
|
|
1124
1125
|
detach(this.tableBodyElement);
|
|
@@ -1423,7 +1424,9 @@ let CalendarBase = class CalendarBase extends Component {
|
|
|
1423
1424
|
}
|
|
1424
1425
|
}
|
|
1425
1426
|
if (this.getModuleName() === 'calendar' && this.element) {
|
|
1426
|
-
|
|
1427
|
+
if (!isNullOrUndefined(this.headerTitleElement)) {
|
|
1428
|
+
EventHandler.remove(this.headerTitleElement, 'click', this.navigateTitle);
|
|
1429
|
+
}
|
|
1427
1430
|
if (this.todayElement) {
|
|
1428
1431
|
EventHandler.remove(this.todayElement, 'click', this.todayButtonClick);
|
|
1429
1432
|
}
|
|
@@ -1441,6 +1444,17 @@ let CalendarBase = class CalendarBase extends Component {
|
|
|
1441
1444
|
if (this.element) {
|
|
1442
1445
|
this.element.innerHTML = '';
|
|
1443
1446
|
}
|
|
1447
|
+
this.todayElement = null;
|
|
1448
|
+
this.tableBodyElement = null;
|
|
1449
|
+
this.renderDayCellArgs = null;
|
|
1450
|
+
this.headerElement = null;
|
|
1451
|
+
this.nextIcon = null;
|
|
1452
|
+
this.table = null;
|
|
1453
|
+
this.tableHeadElement = null;
|
|
1454
|
+
this.previousIcon = null;
|
|
1455
|
+
this.headerTitleElement = null;
|
|
1456
|
+
this.footer = null;
|
|
1457
|
+
this.contentElement = null;
|
|
1444
1458
|
super.destroy();
|
|
1445
1459
|
}
|
|
1446
1460
|
title(e) {
|
|
@@ -1745,10 +1759,12 @@ let CalendarBase = class CalendarBase extends Component {
|
|
|
1745
1759
|
}
|
|
1746
1760
|
previousIconHandler(disabled) {
|
|
1747
1761
|
if (disabled) {
|
|
1748
|
-
|
|
1749
|
-
|
|
1750
|
-
|
|
1751
|
-
|
|
1762
|
+
if (!isNullOrUndefined(this.previousIcon)) {
|
|
1763
|
+
EventHandler.remove(this.previousIcon, 'click', this.navigatePreviousHandler);
|
|
1764
|
+
addClass([this.previousIcon], '' + DISABLED);
|
|
1765
|
+
addClass([this.previousIcon], '' + OVERLAY);
|
|
1766
|
+
this.previousIcon.setAttribute('aria-disabled', 'true');
|
|
1767
|
+
}
|
|
1752
1768
|
}
|
|
1753
1769
|
else {
|
|
1754
1770
|
EventHandler.add(this.previousIcon, 'click', this.navigatePreviousHandler);
|
|
@@ -1771,10 +1787,12 @@ let CalendarBase = class CalendarBase extends Component {
|
|
|
1771
1787
|
}
|
|
1772
1788
|
nextIconHandler(disabled) {
|
|
1773
1789
|
if (disabled) {
|
|
1774
|
-
|
|
1775
|
-
|
|
1776
|
-
|
|
1777
|
-
|
|
1790
|
+
if (!isNullOrUndefined(this.previousIcon)) {
|
|
1791
|
+
EventHandler.remove(this.nextIcon, 'click', this.navigateNextHandler);
|
|
1792
|
+
addClass([this.nextIcon], DISABLED);
|
|
1793
|
+
addClass([this.nextIcon], OVERLAY);
|
|
1794
|
+
this.nextIcon.setAttribute('aria-disabled', 'true');
|
|
1795
|
+
}
|
|
1778
1796
|
}
|
|
1779
1797
|
else {
|
|
1780
1798
|
EventHandler.add(this.nextIcon, 'click', this.navigateNextHandler);
|
|
@@ -2731,8 +2749,11 @@ class Islamic {
|
|
|
2731
2749
|
}
|
|
2732
2750
|
break;
|
|
2733
2751
|
case 'Decade': {
|
|
2734
|
-
|
|
2752
|
+
let startIslamicYear = 1361;
|
|
2753
|
+
let gregorianValue = HijriParser.toGregorian(startIslamicYear, 1, 1);
|
|
2754
|
+
let prevDecadeCompare = this.hijriCompareDecade(date, this.calendarInstance.min) < 1;
|
|
2735
2755
|
const nextDecadeCompare = this.hijriCompareDecade(date, this.calendarInstance.max) > -1;
|
|
2756
|
+
prevDecadeCompare = HijriParser.toGregorian(this.calendarInstance.headerTitleElement.textContent.split('-')[0].trim(), 1, 1).getFullYear() === gregorianValue.getFullYear() ? true : prevDecadeCompare;
|
|
2736
2757
|
this.calendarInstance.previousIconHandler(prevDecadeCompare);
|
|
2737
2758
|
this.calendarInstance.nextIconHandler(nextDecadeCompare);
|
|
2738
2759
|
}
|
|
@@ -2753,7 +2774,9 @@ class Islamic {
|
|
|
2753
2774
|
break;
|
|
2754
2775
|
case 'Decade':
|
|
2755
2776
|
this.calendarInstance.nextIconClicked = true;
|
|
2756
|
-
|
|
2777
|
+
if (islamicDate.year - this.calendarInstance.headerElement.textContent.split('-')[0].trim() === 1) {
|
|
2778
|
+
islamicDate.year = islamicDate.year - this.calendarInstance.headerElement.textContent.split('-')[0].trim() === 1 ? islamicDate.year + 1 : islamicDate.year;
|
|
2779
|
+
}
|
|
2757
2780
|
this.calendarInstance.currentDate = this.toGregorian(islamicDate.year + 10, islamicDate.month, 1);
|
|
2758
2781
|
this.calendarInstance.switchView(view);
|
|
2759
2782
|
break;
|
|
@@ -2843,12 +2866,16 @@ class Islamic {
|
|
|
2843
2866
|
let endFullYr = endYr.getFullYear();
|
|
2844
2867
|
let startHdrYr = this.calendarInstance.globalize.formatDate(startYr, { type: 'dateTime', format: 'y', calendar: 'islamic' });
|
|
2845
2868
|
let endHdrYr = this.calendarInstance.globalize.formatDate(endYr, { type: 'dateTime', format: 'y', calendar: 'islamic' });
|
|
2869
|
+
let splityear = this.calendarInstance.headerElement.textContent.split('-');
|
|
2870
|
+
if ((!isNullOrUndefined(e) && (splityear[0] !== startHdrYr) && e.action === 'home') || (!isNullOrUndefined(e) && e.type === 'keydown' && e.action === 'end')) {
|
|
2871
|
+
startHdrYr = this.calendarInstance.headerElement.textContent.split('-')[0].trim();
|
|
2872
|
+
endHdrYr = this.calendarInstance.headerElement.textContent.split('-')[1].trim();
|
|
2873
|
+
}
|
|
2846
2874
|
if (this.calendarInstance.islamicPreviousHeader) {
|
|
2847
2875
|
startHdrYr = this.calendarInstance.islamicPreviousHeader.split('-')[0].trim();
|
|
2848
2876
|
endHdrYr = this.calendarInstance.islamicPreviousHeader.split('-')[1].trim();
|
|
2849
2877
|
this.calendarInstance.islamicPreviousHeader = null;
|
|
2850
2878
|
}
|
|
2851
|
-
let splityear = this.calendarInstance.headerElement.textContent.split('-');
|
|
2852
2879
|
if (this.calendarInstance.previousIconClicked) {
|
|
2853
2880
|
for (var i = 0; i <= splityear.length; i++) {
|
|
2854
2881
|
endHdrYr = endHdrYr - splityear[i] === 2 || splityear[i] - endHdrYr === 2 ? (parseInt(endHdrYr) + 1).toString() : endHdrYr - splityear[i] === 3 || splityear[i] - endHdrYr === 3 ? (parseInt(endHdrYr) + 2).toString() : endHdrYr - splityear[i] === 4 || splityear[i] - endHdrYr === 4 ? (parseInt(endHdrYr) + 3).toString() : endHdrYr - splityear[i] === 5 || splityear[i] - endHdrYr === 5 ? (parseInt(endHdrYr) + 4).toString() : endHdrYr;
|
|
@@ -2856,11 +2883,21 @@ class Islamic {
|
|
|
2856
2883
|
endHdrYr = (parseInt(endHdrYr) - 1).toString();
|
|
2857
2884
|
}
|
|
2858
2885
|
}
|
|
2886
|
+
if (endHdrYr - splityear[i] === 8 || splityear[i] - endHdrYr === 8) {
|
|
2887
|
+
endHdrYr = (parseInt(endHdrYr) - 9).toString();
|
|
2888
|
+
startHdrYr = (parseInt(endHdrYr) - 9).toString();
|
|
2889
|
+
}
|
|
2890
|
+
if (endHdrYr - splityear[i] === 7 || splityear[i] - endHdrYr === 7) {
|
|
2891
|
+
endHdrYr = (parseInt(endHdrYr) - 8).toString();
|
|
2892
|
+
startHdrYr = (parseInt(endHdrYr) - 9).toString();
|
|
2893
|
+
}
|
|
2859
2894
|
startHdrYr = endHdrYr - startHdrYr === 10
|
|
2860
2895
|
? (parseInt(startHdrYr) + 1).toString() : endHdrYr - startHdrYr === 11
|
|
2861
2896
|
? (parseInt(startHdrYr) + 2).toString() : endHdrYr - startHdrYr === 12
|
|
2862
2897
|
? (parseInt(startHdrYr) + 3).toString() : startHdrYr;
|
|
2863
|
-
|
|
2898
|
+
if (endHdrYr - startHdrYr === 8) {
|
|
2899
|
+
startHdrYr = (parseInt(startHdrYr) - 1).toString();
|
|
2900
|
+
}
|
|
2864
2901
|
}
|
|
2865
2902
|
if (this.calendarInstance.nextIconClicked) {
|
|
2866
2903
|
for (var i = 0; i <= splityear.length; i++) {
|
|
@@ -2874,6 +2911,10 @@ class Islamic {
|
|
|
2874
2911
|
startHdrYr = (parseInt(startHdrYr) + 2).toString();
|
|
2875
2912
|
}
|
|
2876
2913
|
}
|
|
2914
|
+
if (startHdrYr - this.calendarInstance.headerTitleElement.textContent.split('-')[1].trim() > 1) {
|
|
2915
|
+
startHdrYr = (parseInt(this.calendarInstance.headerTitleElement.textContent.split('-')[1].trim()) + 1).toString();
|
|
2916
|
+
endHdrYr = (parseInt(startHdrYr) + 9).toString();
|
|
2917
|
+
}
|
|
2877
2918
|
endHdrYr = endHdrYr - startHdrYr === 10 ? (parseInt(endHdrYr) - 1).toString() : endHdrYr;
|
|
2878
2919
|
endHdrYr = endHdrYr - startHdrYr === 7
|
|
2879
2920
|
? (parseInt(endHdrYr) + 2).toString() : endHdrYr - startHdrYr === 8
|
|
@@ -2909,10 +2950,6 @@ class Islamic {
|
|
|
2909
2950
|
else if (year < new Date(this.islamicInValue(this.calendarInstance.min)).getFullYear()
|
|
2910
2951
|
|| year > new Date(this.islamicInValue(this.calendarInstance.max)).getFullYear()) {
|
|
2911
2952
|
addClass([tdEle], DISABLED$1);
|
|
2912
|
-
if (year < new Date(this.islamicInValue(this.calendarInstance.min)).getFullYear()
|
|
2913
|
-
|| year > new Date(this.islamicInValue(this.calendarInstance.max)).getFullYear()) {
|
|
2914
|
-
addClass([tdEle], DISABLED$1);
|
|
2915
|
-
}
|
|
2916
2953
|
}
|
|
2917
2954
|
else if (!isNullOrUndefined(value) &&
|
|
2918
2955
|
(this.getIslamicDate(localDate)).year ===
|
|
@@ -2928,6 +2965,9 @@ class Islamic {
|
|
|
2928
2965
|
EventHandler.add(tdEle, 'click', this.calendarInstance.clickHandler, this.calendarInstance);
|
|
2929
2966
|
}
|
|
2930
2967
|
tdEle.appendChild(dayLink);
|
|
2968
|
+
if ((!isNullOrUndefined(e) && e.action === 'home' && islamicDate.year.toString() === startHdrYr) || (!isNullOrUndefined(e) && e.action === 'end' && islamicDate.year.toString() === endHdrYr)) {
|
|
2969
|
+
addClass([tdEle], FOCUSEDDATE$1);
|
|
2970
|
+
}
|
|
2931
2971
|
tdEles.push(tdEle);
|
|
2932
2972
|
}
|
|
2933
2973
|
}
|
|
@@ -3497,7 +3537,9 @@ let DatePicker = class DatePicker extends Calendar {
|
|
|
3497
3537
|
}
|
|
3498
3538
|
}
|
|
3499
3539
|
unBindEvents() {
|
|
3500
|
-
|
|
3540
|
+
if (!isNullOrUndefined(this.inputWrapper)) {
|
|
3541
|
+
EventHandler.remove(this.inputWrapper.buttons[0], 'mousedown touchstart', this.dateIconHandler);
|
|
3542
|
+
}
|
|
3501
3543
|
EventHandler.remove(this.inputElement, 'mouseup', this.mouseUpHandler);
|
|
3502
3544
|
EventHandler.remove(this.inputElement, 'focus', this.inputFocusHandler);
|
|
3503
3545
|
EventHandler.remove(this.inputElement, 'blur', this.inputBlurHandler);
|
|
@@ -3628,10 +3670,10 @@ let DatePicker = class DatePicker extends Calendar {
|
|
|
3628
3670
|
updateHtmlAttributeToWrapper() {
|
|
3629
3671
|
if (!isNullOrUndefined(this.htmlAttributes)) {
|
|
3630
3672
|
for (const key of Object.keys(this.htmlAttributes)) {
|
|
3631
|
-
if (!isNullOrUndefined(this.htmlAttributes[key])) {
|
|
3673
|
+
if (!isNullOrUndefined(this.htmlAttributes[`${key}`])) {
|
|
3632
3674
|
if (containerAttr.indexOf(key) > -1) {
|
|
3633
3675
|
if (key === 'class') {
|
|
3634
|
-
const updatedClassValues = (this.htmlAttributes[key].replace(/\s+/g, ' ')).trim();
|
|
3676
|
+
const updatedClassValues = (this.htmlAttributes[`${key}`].replace(/\s+/g, ' ')).trim();
|
|
3635
3677
|
if (updatedClassValues !== '') {
|
|
3636
3678
|
addClass([this.inputWrapper.container], updatedClassValues.split(' '));
|
|
3637
3679
|
}
|
|
@@ -3640,19 +3682,19 @@ let DatePicker = class DatePicker extends Calendar {
|
|
|
3640
3682
|
let setStyle = this.inputWrapper.container.getAttribute(key);
|
|
3641
3683
|
if (!isNullOrUndefined(setStyle)) {
|
|
3642
3684
|
if (setStyle.charAt(setStyle.length - 1) === ';') {
|
|
3643
|
-
setStyle = setStyle + this.htmlAttributes[key];
|
|
3685
|
+
setStyle = setStyle + this.htmlAttributes[`${key}`];
|
|
3644
3686
|
}
|
|
3645
3687
|
else {
|
|
3646
|
-
setStyle = setStyle + ';' + this.htmlAttributes[key];
|
|
3688
|
+
setStyle = setStyle + ';' + this.htmlAttributes[`${key}`];
|
|
3647
3689
|
}
|
|
3648
3690
|
}
|
|
3649
3691
|
else {
|
|
3650
|
-
setStyle = this.htmlAttributes[key];
|
|
3692
|
+
setStyle = this.htmlAttributes[`${key}`];
|
|
3651
3693
|
}
|
|
3652
3694
|
this.inputWrapper.container.setAttribute(key, setStyle);
|
|
3653
3695
|
}
|
|
3654
3696
|
else {
|
|
3655
|
-
this.inputWrapper.container.setAttribute(key, this.htmlAttributes[key]);
|
|
3697
|
+
this.inputWrapper.container.setAttribute(key, this.htmlAttributes[`${key}`]);
|
|
3656
3698
|
}
|
|
3657
3699
|
}
|
|
3658
3700
|
}
|
|
@@ -3663,7 +3705,7 @@ let DatePicker = class DatePicker extends Calendar {
|
|
|
3663
3705
|
if (!isNullOrUndefined(this.htmlAttributes)) {
|
|
3664
3706
|
for (const key of Object.keys(this.htmlAttributes)) {
|
|
3665
3707
|
if (containerAttr.indexOf(key) < 0) {
|
|
3666
|
-
this.inputElement.setAttribute(key, this.htmlAttributes[key]);
|
|
3708
|
+
this.inputElement.setAttribute(key, this.htmlAttributes[`${key}`]);
|
|
3667
3709
|
}
|
|
3668
3710
|
}
|
|
3669
3711
|
}
|
|
@@ -3775,12 +3817,12 @@ let DatePicker = class DatePicker extends Calendar {
|
|
|
3775
3817
|
this.isPopupClicked = false;
|
|
3776
3818
|
}
|
|
3777
3819
|
documentHandler(e) {
|
|
3778
|
-
if ((!isNullOrUndefined(this.popupObj) && (this.inputWrapper.container.contains(e.target) && e.type !== 'mousedown' ||
|
|
3820
|
+
if ((!isNullOrUndefined(this.popupObj) && !isNullOrUndefined(this.inputWrapper) && (this.inputWrapper.container.contains(e.target) && e.type !== 'mousedown' ||
|
|
3779
3821
|
(this.popupObj.element && this.popupObj.element.contains(e.target)))) && e.type !== 'touchstart') {
|
|
3780
3822
|
e.preventDefault();
|
|
3781
3823
|
}
|
|
3782
3824
|
const target = e.target;
|
|
3783
|
-
if (!(closest(target, '.e-datepicker.e-popup-wrapper'))
|
|
3825
|
+
if (!(closest(target, '.e-datepicker.e-popup-wrapper')) && !isNullOrUndefined(this.inputWrapper)
|
|
3784
3826
|
&& !(closest(target, '.' + INPUTCONTAINER) === this.inputWrapper.container)
|
|
3785
3827
|
&& (!target.classList.contains('e-day'))) {
|
|
3786
3828
|
this.hide(e);
|
|
@@ -4416,7 +4458,9 @@ let DatePicker = class DatePicker extends Calendar {
|
|
|
4416
4458
|
destroy() {
|
|
4417
4459
|
this.unBindEvents();
|
|
4418
4460
|
super.destroy();
|
|
4419
|
-
this.keyboardModules
|
|
4461
|
+
if (!isNullOrUndefined(this.keyboardModules)) {
|
|
4462
|
+
this.keyboardModules.destroy();
|
|
4463
|
+
}
|
|
4420
4464
|
if (this.popupObj && this.popupObj.element.classList.contains(POPUP)) {
|
|
4421
4465
|
super.destroy();
|
|
4422
4466
|
}
|
|
@@ -4446,15 +4490,21 @@ let DatePicker = class DatePicker extends Calendar {
|
|
|
4446
4490
|
}
|
|
4447
4491
|
if (this.ngTag === null) {
|
|
4448
4492
|
if (this.inputElement) {
|
|
4449
|
-
this.inputWrapper
|
|
4493
|
+
if (!isNullOrUndefined(this.inputWrapper)) {
|
|
4494
|
+
this.inputWrapper.container.insertAdjacentElement('afterend', this.inputElement);
|
|
4495
|
+
}
|
|
4450
4496
|
removeClass([this.inputElement], [INPUTROOT]);
|
|
4451
4497
|
}
|
|
4452
4498
|
removeClass([this.element], [ROOT$1]);
|
|
4453
|
-
|
|
4499
|
+
if (!isNullOrUndefined(this.inputWrapper)) {
|
|
4500
|
+
detach(this.inputWrapper.container);
|
|
4501
|
+
}
|
|
4454
4502
|
}
|
|
4455
4503
|
if (this.formElement) {
|
|
4456
4504
|
EventHandler.remove(this.formElement, 'reset', this.resetFormHandler);
|
|
4457
4505
|
}
|
|
4506
|
+
this.inputWrapper = null;
|
|
4507
|
+
this.keyboardModules = null;
|
|
4458
4508
|
}
|
|
4459
4509
|
ensureInputAttribute() {
|
|
4460
4510
|
const prop = [];
|
|
@@ -4910,7 +4960,7 @@ let DatePicker = class DatePicker extends Calendar {
|
|
|
4910
4960
|
}
|
|
4911
4961
|
break;
|
|
4912
4962
|
}
|
|
4913
|
-
if (!this.isDynamicValueChanged
|
|
4963
|
+
if (!this.isDynamicValueChanged) {
|
|
4914
4964
|
this.hide(null);
|
|
4915
4965
|
}
|
|
4916
4966
|
this.isDynamicValueChanged = false;
|
|
@@ -5129,7 +5179,6 @@ let DateRangePicker = class DateRangePicker extends CalendarBase {
|
|
|
5129
5179
|
this.invalidValueString = null;
|
|
5130
5180
|
this.isAngular = false;
|
|
5131
5181
|
this.preventChange = false;
|
|
5132
|
-
this.isPropChanged = false;
|
|
5133
5182
|
this.dateRangeOptions = options;
|
|
5134
5183
|
}
|
|
5135
5184
|
/**
|
|
@@ -5361,8 +5410,8 @@ let DateRangePicker = class DateRangePicker extends CalendarBase {
|
|
|
5361
5410
|
}
|
|
5362
5411
|
for (const pro of Object.keys(attributes$$1)) {
|
|
5363
5412
|
if (pro.indexOf('data') === 0) {
|
|
5364
|
-
this.firstHiddenChild.setAttribute(pro, attributes$$1[pro]);
|
|
5365
|
-
this.secondHiddenChild.setAttribute(pro, attributes$$1[pro]);
|
|
5413
|
+
this.firstHiddenChild.setAttribute(pro, attributes$$1[`${pro}`]);
|
|
5414
|
+
this.secondHiddenChild.setAttribute(pro, attributes$$1[`${pro}`]);
|
|
5366
5415
|
}
|
|
5367
5416
|
}
|
|
5368
5417
|
}
|
|
@@ -5409,19 +5458,19 @@ let DateRangePicker = class DateRangePicker extends CalendarBase {
|
|
|
5409
5458
|
for (const key of Object.keys(this.htmlAttributes)) {
|
|
5410
5459
|
if (wrapperAttr.indexOf(key) > -1) {
|
|
5411
5460
|
if (key === 'class') {
|
|
5412
|
-
const updatedClassValue = (this.htmlAttributes[key].replace(/\s+/g, ' ')).trim();
|
|
5461
|
+
const updatedClassValue = (this.htmlAttributes[`${key}`].replace(/\s+/g, ' ')).trim();
|
|
5413
5462
|
if (updatedClassValue !== '') {
|
|
5414
5463
|
addClass([this.inputWrapper.container], updatedClassValue.split(' '));
|
|
5415
5464
|
}
|
|
5416
5465
|
}
|
|
5417
5466
|
else if (key === 'style') {
|
|
5418
5467
|
let dateRangeStyle = this.inputWrapper.container.getAttribute(key);
|
|
5419
|
-
dateRangeStyle = !isNullOrUndefined(dateRangeStyle) ? (dateRangeStyle + this.htmlAttributes[key]) :
|
|
5420
|
-
this.htmlAttributes[key];
|
|
5468
|
+
dateRangeStyle = !isNullOrUndefined(dateRangeStyle) ? (dateRangeStyle + this.htmlAttributes[`${key}`]) :
|
|
5469
|
+
this.htmlAttributes[`${key}`];
|
|
5421
5470
|
this.inputWrapper.container.setAttribute(key, dateRangeStyle);
|
|
5422
5471
|
}
|
|
5423
5472
|
else {
|
|
5424
|
-
this.inputWrapper.container.setAttribute(key, this.htmlAttributes[key]);
|
|
5473
|
+
this.inputWrapper.container.setAttribute(key, this.htmlAttributes[`${key}`]);
|
|
5425
5474
|
}
|
|
5426
5475
|
}
|
|
5427
5476
|
}
|
|
@@ -5431,7 +5480,7 @@ let DateRangePicker = class DateRangePicker extends CalendarBase {
|
|
|
5431
5480
|
if (!isNullOrUndefined(this.htmlAttributes)) {
|
|
5432
5481
|
for (const key of Object.keys(this.htmlAttributes)) {
|
|
5433
5482
|
if (wrapperAttr.indexOf(key) < 0) {
|
|
5434
|
-
this.inputElement.setAttribute(key, this.htmlAttributes[key]);
|
|
5483
|
+
this.inputElement.setAttribute(key, this.htmlAttributes[`${key}`]);
|
|
5435
5484
|
}
|
|
5436
5485
|
}
|
|
5437
5486
|
}
|
|
@@ -6064,7 +6113,7 @@ let DateRangePicker = class DateRangePicker extends CalendarBase {
|
|
|
6064
6113
|
return ele;
|
|
6065
6114
|
}
|
|
6066
6115
|
navInCalendar(e, isLeftCalendar, leftLimit, rightLimit, ele) {
|
|
6067
|
-
|
|
6116
|
+
let view = this.getViewNumber(this.currentView());
|
|
6068
6117
|
let date;
|
|
6069
6118
|
const min = this.min;
|
|
6070
6119
|
let max;
|
|
@@ -6154,10 +6203,8 @@ let DateRangePicker = class DateRangePicker extends CalendarBase {
|
|
|
6154
6203
|
case 'tab':
|
|
6155
6204
|
if (this.tabKeyValidation(ele, LEFTCALENDER)) {
|
|
6156
6205
|
ele = this.keyCalendarUpdate(false, ele, false);
|
|
6157
|
-
|
|
6158
|
-
|
|
6159
|
-
this.currentDate = this.firstCellToFocus(this.rightCalendar);
|
|
6160
|
-
}
|
|
6206
|
+
this.currentDate = this.firstCellToFocus(this.rightCalendar);
|
|
6207
|
+
view = this.getViewNumber(this.currentView());
|
|
6161
6208
|
this.keyboardNavigate(0, view, e, max, min);
|
|
6162
6209
|
this.keyNavigation(ele, e);
|
|
6163
6210
|
}
|
|
@@ -6165,10 +6212,7 @@ let DateRangePicker = class DateRangePicker extends CalendarBase {
|
|
|
6165
6212
|
case 'shiftTab':
|
|
6166
6213
|
if (this.tabKeyValidation(ele, RIGHTCALENDER)) {
|
|
6167
6214
|
ele = this.keyCalendarUpdate(true, ele, false);
|
|
6168
|
-
|
|
6169
|
-
if (isNullOrUndefined(focusedCell)) {
|
|
6170
|
-
this.currentDate = this.firstCellToFocus(this.leftCalendar);
|
|
6171
|
-
}
|
|
6215
|
+
this.currentDate = this.firstCellToFocus(this.leftCalendar);
|
|
6172
6216
|
this.keyboardNavigate(0, view, e, max, min);
|
|
6173
6217
|
this.keyNavigation(ele, e);
|
|
6174
6218
|
}
|
|
@@ -6176,7 +6220,7 @@ let DateRangePicker = class DateRangePicker extends CalendarBase {
|
|
|
6176
6220
|
}
|
|
6177
6221
|
}
|
|
6178
6222
|
firstCellToFocus(calendar) {
|
|
6179
|
-
const focusAbleEle = calendar.children[1].firstElementChild.querySelector('td.e-cell:not(.e-week-number):not(.e-disabled):not(.e-other-month)');
|
|
6223
|
+
const focusAbleEle = this.getViewNumber(this.currentView()) === 2 ? calendar.children[1].firstElementChild.querySelector('td.e-cell:not(.e-week-number):not(.e-disabled):not(.e-other-year)') : calendar.children[1].firstElementChild.querySelector('td.e-cell:not(.e-week-number):not(.e-disabled):not(.e-other-month)');
|
|
6180
6224
|
const focusEleID = focusAbleEle && focusAbleEle.id ? focusAbleEle.id.split('_')[0] : null;
|
|
6181
6225
|
const currentFirstDay = new Date(this.currentDate.getFullYear(), this.currentDate.getMonth(), 1);
|
|
6182
6226
|
const focusDate = focusEleID ? new Date(+focusEleID) : currentFirstDay;
|
|
@@ -6403,7 +6447,11 @@ let DateRangePicker = class DateRangePicker extends CalendarBase {
|
|
|
6403
6447
|
const leftHeader = this.leftCalendar.querySelector('.e-header');
|
|
6404
6448
|
const isRightMonth = rightHeader ? rightHeader.classList.contains('e-month') : false;
|
|
6405
6449
|
const isLeftMonth = leftHeader ? leftHeader.classList.contains('e-month') : false;
|
|
6406
|
-
|
|
6450
|
+
const isRightYear = rightHeader ? rightHeader.classList.contains('e-year') : false;
|
|
6451
|
+
const isLeftYear = leftHeader ? leftHeader.classList.contains('e-year') : false;
|
|
6452
|
+
const isRightDecade = rightHeader ? rightHeader.classList.contains('e-decade') : false;
|
|
6453
|
+
const isLeftDecade = leftHeader ? leftHeader.classList.contains('e-decade') : false;
|
|
6454
|
+
return isLeftCalendar && (isLeftMonth || isLeftYear || isLeftDecade) && (isRightMonth || isRightYear || isRightDecade) && !this.isMobile;
|
|
6407
6455
|
}
|
|
6408
6456
|
keyNavigation(calendar, e) {
|
|
6409
6457
|
this.bindCalendarCellEvents(calendar);
|
|
@@ -8764,6 +8812,30 @@ let DateRangePicker = class DateRangePicker extends CalendarBase {
|
|
|
8764
8812
|
this.inputElement.setAttribute('name', this.element.getAttribute('data-name'));
|
|
8765
8813
|
this.inputElement.removeAttribute('data-name');
|
|
8766
8814
|
}
|
|
8815
|
+
this.closeEventArgs = null;
|
|
8816
|
+
this.leftCalendar = null;
|
|
8817
|
+
this.rightTitle = null;
|
|
8818
|
+
this.leftTitle = null;
|
|
8819
|
+
this.openEventArgs = null;
|
|
8820
|
+
this.leftCalNextIcon = null;
|
|
8821
|
+
this.rightCalendar = null;
|
|
8822
|
+
this.closeEventArgs = null;
|
|
8823
|
+
this.rightCalPrevIcon = null;
|
|
8824
|
+
this.leftCalPrevIcon = null;
|
|
8825
|
+
this.popupKeyboardModule = null;
|
|
8826
|
+
this.cancelButton = null;
|
|
8827
|
+
this.applyButton = null;
|
|
8828
|
+
this.calendarElement = null;
|
|
8829
|
+
this.leftKeyboardModule = null;
|
|
8830
|
+
this.rightCalNextIcon = null;
|
|
8831
|
+
this.leftCalNextIcon = null;
|
|
8832
|
+
this.btnKeyboardModule = null;
|
|
8833
|
+
this.rightKeyboardModule = null;
|
|
8834
|
+
this.leftKeyboardModule = null;
|
|
8835
|
+
this.presetKeyboardModule = null;
|
|
8836
|
+
this.liCollections = null;
|
|
8837
|
+
this.popupObj = null;
|
|
8838
|
+
this.popupWrapper = null;
|
|
8767
8839
|
}
|
|
8768
8840
|
ensureInputAttribute() {
|
|
8769
8841
|
const attr = [];
|
|
@@ -9076,6 +9148,9 @@ let DateRangePicker = class DateRangePicker extends CalendarBase {
|
|
|
9076
9148
|
const format = { format: this.formatString, type: 'date', skeleton: 'yMd' };
|
|
9077
9149
|
for (const prop of Object.keys(newProp)) {
|
|
9078
9150
|
const openPopup = ['maxDays', 'minDays', 'value'];
|
|
9151
|
+
if (openPopup.indexOf(prop) < 0) {
|
|
9152
|
+
this.hide(null);
|
|
9153
|
+
}
|
|
9079
9154
|
switch (prop) {
|
|
9080
9155
|
case 'width':
|
|
9081
9156
|
this.setEleWidth(this.width);
|
|
@@ -9285,13 +9360,7 @@ let DateRangePicker = class DateRangePicker extends CalendarBase {
|
|
|
9285
9360
|
this.setProperties({ depth: newProp.depth }, true);
|
|
9286
9361
|
this.refreshChange();
|
|
9287
9362
|
break;
|
|
9288
|
-
default:
|
|
9289
|
-
this.isPropChanged = true;
|
|
9290
9363
|
}
|
|
9291
|
-
if (openPopup.indexOf(prop) < 0 && !this.isPropChanged) {
|
|
9292
|
-
this.hide(null);
|
|
9293
|
-
}
|
|
9294
|
-
this.isPropChanged = false;
|
|
9295
9364
|
}
|
|
9296
9365
|
}
|
|
9297
9366
|
};
|
|
@@ -9886,6 +9955,11 @@ let TimePicker = class TimePicker extends Component {
|
|
|
9886
9955
|
if (this.formElement) {
|
|
9887
9956
|
EventHandler.remove(this.formElement, 'reset', this.formResetHandler);
|
|
9888
9957
|
}
|
|
9958
|
+
this.rippleFn = null;
|
|
9959
|
+
this.openPopupEventArgs = null;
|
|
9960
|
+
this.selectedElement = null;
|
|
9961
|
+
this.listTag = null;
|
|
9962
|
+
this.liCollections = null;
|
|
9889
9963
|
}
|
|
9890
9964
|
ensureInputAttribute() {
|
|
9891
9965
|
const propertyList = [];
|
|
@@ -9997,19 +10071,19 @@ let TimePicker = class TimePicker extends Component {
|
|
|
9997
10071
|
for (const key of Object.keys(this.htmlAttributes)) {
|
|
9998
10072
|
if (wrapperAttributes.indexOf(key) > -1) {
|
|
9999
10073
|
if (key === 'class') {
|
|
10000
|
-
const updatedClassesValue = (this.htmlAttributes[key].replace(/\s+/g, ' ')).trim();
|
|
10074
|
+
const updatedClassesValue = (this.htmlAttributes[`${key}`].replace(/\s+/g, ' ')).trim();
|
|
10001
10075
|
if (updatedClassesValue !== '') {
|
|
10002
10076
|
addClass([this.inputWrapper.container], updatedClassesValue.split(' '));
|
|
10003
10077
|
}
|
|
10004
10078
|
}
|
|
10005
10079
|
else if (key === 'style') {
|
|
10006
10080
|
let timeStyle = this.inputWrapper.container.getAttribute(key);
|
|
10007
|
-
timeStyle = !isNullOrUndefined(timeStyle) ? (timeStyle + this.htmlAttributes[key]) :
|
|
10008
|
-
this.htmlAttributes[key];
|
|
10081
|
+
timeStyle = !isNullOrUndefined(timeStyle) ? (timeStyle + this.htmlAttributes[`${key}`]) :
|
|
10082
|
+
this.htmlAttributes[`${key}`];
|
|
10009
10083
|
this.inputWrapper.container.setAttribute(key, timeStyle);
|
|
10010
10084
|
}
|
|
10011
10085
|
else {
|
|
10012
|
-
this.inputWrapper.container.setAttribute(key, this.htmlAttributes[key]);
|
|
10086
|
+
this.inputWrapper.container.setAttribute(key, this.htmlAttributes[`${key}`]);
|
|
10013
10087
|
}
|
|
10014
10088
|
}
|
|
10015
10089
|
}
|
|
@@ -10019,7 +10093,7 @@ let TimePicker = class TimePicker extends Component {
|
|
|
10019
10093
|
if (!isNullOrUndefined(this.htmlAttributes)) {
|
|
10020
10094
|
for (const key of Object.keys(this.htmlAttributes)) {
|
|
10021
10095
|
if (wrapperAttributes.indexOf(key) < 0) {
|
|
10022
|
-
this.inputElement.setAttribute(key, this.htmlAttributes[key]);
|
|
10096
|
+
this.inputElement.setAttribute(key, this.htmlAttributes[`${key}`]);
|
|
10023
10097
|
}
|
|
10024
10098
|
}
|
|
10025
10099
|
}
|
|
@@ -10732,7 +10806,7 @@ let TimePicker = class TimePicker extends Component {
|
|
|
10732
10806
|
this.inputEvent.destroy();
|
|
10733
10807
|
}
|
|
10734
10808
|
EventHandler.remove(this.inputElement, 'mousedown touchstart', this.mouseDownHandler);
|
|
10735
|
-
if (this.showClearButton && !isNullOrUndefined(this.inputWrapper.clearButton)) {
|
|
10809
|
+
if (this.showClearButton && !isNullOrUndefined(this.inputWrapper) && !isNullOrUndefined(this.inputWrapper.clearButton)) {
|
|
10736
10810
|
EventHandler.remove(this.inputWrapper.clearButton, 'mousedown touchstart', this.clearHandler);
|
|
10737
10811
|
}
|
|
10738
10812
|
if (this.formElement) {
|
|
@@ -11094,7 +11168,7 @@ let TimePicker = class TimePicker extends Component {
|
|
|
11094
11168
|
return elementIndex;
|
|
11095
11169
|
}
|
|
11096
11170
|
keyHandler(event) {
|
|
11097
|
-
if (isNullOrUndefined(this.step) || this.step <= 0 || this.inputWrapper.buttons[0].classList.contains(DISABLED$3)) {
|
|
11171
|
+
if (isNullOrUndefined(this.step) || this.step <= 0 || !isNullOrUndefined(this.inputWrapper) && this.inputWrapper.buttons[0].classList.contains(DISABLED$3)) {
|
|
11098
11172
|
return;
|
|
11099
11173
|
}
|
|
11100
11174
|
const count = this.timeCollections.length;
|
|
@@ -11341,7 +11415,7 @@ let TimePicker = class TimePicker extends Component {
|
|
|
11341
11415
|
}
|
|
11342
11416
|
documentClickHandler(event) {
|
|
11343
11417
|
const target = event.target;
|
|
11344
|
-
if ((!isNullOrUndefined(this.popupObj) && (this.inputWrapper.container.contains(target) && event.type !== 'mousedown' ||
|
|
11418
|
+
if ((!isNullOrUndefined(this.popupObj) && !isNullOrUndefined(this.inputWrapper) && (this.inputWrapper.container.contains(target) && event.type !== 'mousedown' ||
|
|
11345
11419
|
(this.popupObj.element && this.popupObj.element.contains(target)))) && event.type !== 'touchstart') {
|
|
11346
11420
|
event.preventDefault();
|
|
11347
11421
|
}
|
|
@@ -12061,6 +12135,14 @@ let DateTimePicker = class DateTimePicker extends DatePicker {
|
|
|
12061
12135
|
this.keyboardHandler.destroy();
|
|
12062
12136
|
}
|
|
12063
12137
|
this.unBindInputEvents();
|
|
12138
|
+
this.liCollections = null;
|
|
12139
|
+
this.rippleFn = null;
|
|
12140
|
+
this.selectedElement = null;
|
|
12141
|
+
this.listTag = null;
|
|
12142
|
+
this.timeIcon = null;
|
|
12143
|
+
this.popupObject = null;
|
|
12144
|
+
this.preventArgs = null;
|
|
12145
|
+
this.keyboardModule = null;
|
|
12064
12146
|
super.destroy();
|
|
12065
12147
|
}
|
|
12066
12148
|
/**
|
|
@@ -12480,7 +12562,7 @@ let DateTimePicker = class DateTimePicker extends DatePicker {
|
|
|
12480
12562
|
event.preventDefault();
|
|
12481
12563
|
}
|
|
12482
12564
|
if (!(closest(target, '[id="' + (this.popupObject && this.popupObject.element.id + '"]'))) && target !== this.inputElement
|
|
12483
|
-
&& target !== this.timeIcon && target !== this.inputWrapper.container) {
|
|
12565
|
+
&& target !== this.timeIcon && !isNullOrUndefined(this.inputWrapper) && target !== this.inputWrapper.container) {
|
|
12484
12566
|
if (this.isTimePopupOpen()) {
|
|
12485
12567
|
this.hide(event);
|
|
12486
12568
|
this.focusOut();
|
|
@@ -13354,7 +13436,7 @@ let DateTimePicker = class DateTimePicker extends DatePicker {
|
|
|
13354
13436
|
super.onPropertyChanged(newProp, oldProp);
|
|
13355
13437
|
break;
|
|
13356
13438
|
}
|
|
13357
|
-
if (!this.isDynamicValueChanged
|
|
13439
|
+
if (!this.isDynamicValueChanged) {
|
|
13358
13440
|
this.hide(null);
|
|
13359
13441
|
}
|
|
13360
13442
|
this.isDynamicValueChanged = false;
|
|
@@ -13664,6 +13746,10 @@ class MaskedDateTime {
|
|
|
13664
13746
|
}
|
|
13665
13747
|
if ((!args.e.altKey && !args.e.ctrlKey) && (args.e.key === ARROWUP || args.e.key === ARROWDOWN)) {
|
|
13666
13748
|
let start = this.parent.inputElement.selectionStart;
|
|
13749
|
+
let formatText = '';
|
|
13750
|
+
if (this.validCharacters.indexOf(this.hiddenMask[start]) !== -1) {
|
|
13751
|
+
formatText = this.hiddenMask[start];
|
|
13752
|
+
}
|
|
13667
13753
|
this.dateAlteration(args.e.key === ARROWDOWN ? true : false);
|
|
13668
13754
|
let inputValue = this.dateformat.replace(this.formatRegex, this.formatCheck());
|
|
13669
13755
|
this.isHiddenMask = true;
|
|
@@ -13672,6 +13758,12 @@ class MaskedDateTime {
|
|
|
13672
13758
|
this.previousHiddenMask = this.hiddenMask;
|
|
13673
13759
|
this.previousValue = inputValue;
|
|
13674
13760
|
this.parent.inputElement.value = inputValue;
|
|
13761
|
+
for (var i = 0; i < this.hiddenMask.length; i++) {
|
|
13762
|
+
if (formatText === this.hiddenMask[i]) {
|
|
13763
|
+
start = i;
|
|
13764
|
+
break;
|
|
13765
|
+
}
|
|
13766
|
+
}
|
|
13675
13767
|
this.parent.inputElement.selectionStart = start;
|
|
13676
13768
|
this.validCharacterCheck();
|
|
13677
13769
|
}
|
|
@@ -14065,6 +14157,10 @@ class MaskedDateTime {
|
|
|
14065
14157
|
maskInputHandler() {
|
|
14066
14158
|
let start = this.parent.inputElement.selectionStart;
|
|
14067
14159
|
let selectionChar = this.previousHiddenMask[start - 1];
|
|
14160
|
+
let formatText = '';
|
|
14161
|
+
if (this.validCharacters.indexOf(this.hiddenMask[start]) !== -1) {
|
|
14162
|
+
formatText = this.hiddenMask[start];
|
|
14163
|
+
}
|
|
14068
14164
|
let inputValue;
|
|
14069
14165
|
this.differenceCheck();
|
|
14070
14166
|
inputValue = this.dateformat.replace(this.formatRegex, this.formatCheck());
|
|
@@ -14075,6 +14171,13 @@ class MaskedDateTime {
|
|
|
14075
14171
|
this.previousHiddenMask = this.hiddenMask;
|
|
14076
14172
|
this.previousValue = inputValue;
|
|
14077
14173
|
this.parent.inputElement.value = inputValue;
|
|
14174
|
+
this.parent.inputElement.value = inputValue;
|
|
14175
|
+
for (var i = 0; i < this.hiddenMask.length; i++) {
|
|
14176
|
+
if (formatText === this.hiddenMask[i]) {
|
|
14177
|
+
start = i;
|
|
14178
|
+
break;
|
|
14179
|
+
}
|
|
14180
|
+
}
|
|
14078
14181
|
this.parent.inputElement.selectionStart = start;
|
|
14079
14182
|
this.validCharacterCheck();
|
|
14080
14183
|
if ((this.isNavigate || this.isDeletion) && !this.isDeleteKey) {
|
|
@@ -14082,6 +14185,9 @@ class MaskedDateTime {
|
|
|
14082
14185
|
this.isNavigate = this.isDeletion = false;
|
|
14083
14186
|
this.navigateSelection(isbackward);
|
|
14084
14187
|
}
|
|
14188
|
+
if (this.isDeleteKey) {
|
|
14189
|
+
this.isDeletion = false;
|
|
14190
|
+
}
|
|
14085
14191
|
this.isDeleteKey = false;
|
|
14086
14192
|
// this.setSelection(selectionChar);
|
|
14087
14193
|
// this.navigateSelection(inputValue);
|