flatpickr 4.6.6.0 → 4.6.11.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/flatpickr/version.rb +1 -1
- data/package.json +5 -0
- data/vendor/assets/javascripts/flatpickr/l10n/ar-dz.js +61 -0
- data/vendor/assets/javascripts/flatpickr/l10n/ar.js +12 -2
- data/vendor/assets/javascripts/flatpickr/l10n/at.js +2 -1
- data/vendor/assets/javascripts/flatpickr/l10n/az.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/be.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/bg.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/bn.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/bs.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/cat.js +2 -1
- data/vendor/assets/javascripts/flatpickr/l10n/ckb.js +68 -0
- data/vendor/assets/javascripts/flatpickr/l10n/cs.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/cy.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/da.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/de.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/default.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/eo.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/es.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/et.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/fa.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/fi.js +33 -33
- data/vendor/assets/javascripts/flatpickr/l10n/fo.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/fr.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/ga.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/gr.js +7 -3
- data/vendor/assets/javascripts/flatpickr/l10n/he.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/hi.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/hr.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/hu.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/hy.js +86 -0
- data/vendor/assets/javascripts/flatpickr/l10n/id.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/index.js +442 -226
- data/vendor/assets/javascripts/flatpickr/l10n/is.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/it.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/ja.js +6 -2
- data/vendor/assets/javascripts/flatpickr/l10n/ka.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/km.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/ko.js +2 -1
- data/vendor/assets/javascripts/flatpickr/l10n/kz.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/lt.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/lv.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/mk.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/mn.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/ms.js +3 -3
- data/vendor/assets/javascripts/flatpickr/l10n/my.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/nl.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/nn.js +73 -0
- data/vendor/assets/javascripts/flatpickr/l10n/no.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/pa.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/pl.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/pt.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/ro.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/ru.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/si.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/sk.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/sl.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/sq.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/sr-cyr.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/sr.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/sv.js +34 -33
- data/vendor/assets/javascripts/flatpickr/l10n/th.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/tr.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/uk.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/uz.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/uz_latn.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/vn.js +3 -3
- data/vendor/assets/javascripts/flatpickr/l10n/zh-tw.js +1 -1
- data/vendor/assets/javascripts/flatpickr/l10n/zh.js +1 -1
- data/vendor/assets/javascripts/flatpickr/plugins/confirmDate/confirmDate.js +6 -2
- data/vendor/assets/javascripts/flatpickr/plugins/labelPlugin/labelPlugin.js +1 -1
- data/vendor/assets/javascripts/flatpickr/plugins/minMaxTimePlugin.js +24 -7
- data/vendor/assets/javascripts/flatpickr/plugins/momentPlugin.js +1 -1
- data/vendor/assets/javascripts/flatpickr/plugins/monthSelect/index.js +108 -53
- data/vendor/assets/javascripts/flatpickr/plugins/rangePlugin.js +26 -16
- data/vendor/assets/javascripts/flatpickr/plugins/scrollPlugin.js +23 -15
- data/vendor/assets/javascripts/flatpickr/plugins/weekSelect/weekSelect.js +1 -1
- data/vendor/assets/javascripts/flatpickr.js +220 -164
- data/vendor/assets/stylesheets/flatpickr/plugins/monthSelect/style.css +45 -7
- data/vendor/assets/stylesheets/flatpickr/themes/airbnb.css +4 -0
- data/vendor/assets/stylesheets/flatpickr/themes/confetti.css +4 -0
- data/vendor/assets/stylesheets/flatpickr/themes/dark.css +4 -0
- data/vendor/assets/stylesheets/flatpickr/themes/light.css +4 -0
- data/vendor/assets/stylesheets/flatpickr/themes/material_blue.css +4 -0
- data/vendor/assets/stylesheets/flatpickr/themes/material_green.css +4 -0
- data/vendor/assets/stylesheets/flatpickr/themes/material_orange.css +4 -0
- data/vendor/assets/stylesheets/flatpickr/themes/material_red.css +4 -0
- data/vendor/assets/stylesheets/flatpickr.css +4 -0
- metadata +12 -7
@@ -1,8 +1,8 @@
|
|
1
|
-
/* flatpickr v4.6.
|
1
|
+
/* flatpickr v4.6.11, @license MIT */
|
2
2
|
(function (global, factory) {
|
3
3
|
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
|
4
4
|
typeof define === 'function' && define.amd ? define(factory) :
|
5
|
-
(global = global || self, global.flatpickr = factory());
|
5
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.flatpickr = factory());
|
6
6
|
}(this, (function () { 'use strict';
|
7
7
|
|
8
8
|
/*! *****************************************************************************
|
@@ -55,7 +55,6 @@
|
|
55
55
|
];
|
56
56
|
var defaults = {
|
57
57
|
_disable: [],
|
58
|
-
_enable: [],
|
59
58
|
allowInput: false,
|
60
59
|
allowInvalidPreload: false,
|
61
60
|
altFormat: "F j, Y",
|
@@ -74,7 +73,6 @@
|
|
74
73
|
defaultSeconds: 0,
|
75
74
|
disable: [],
|
76
75
|
disableMobile: false,
|
77
|
-
enable: [],
|
78
76
|
enableSeconds: false,
|
79
77
|
enableTime: false,
|
80
78
|
errorHandler: function (err) {
|
@@ -206,19 +204,13 @@
|
|
206
204
|
};
|
207
205
|
var int = function (bool) { return (bool === true ? 1 : 0); };
|
208
206
|
/* istanbul ignore next */
|
209
|
-
function debounce(
|
210
|
-
|
211
|
-
var timeout;
|
207
|
+
function debounce(fn, wait) {
|
208
|
+
var t;
|
212
209
|
return function () {
|
213
|
-
var
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
if (!immediate)
|
218
|
-
func.apply(context, args);
|
219
|
-
}, wait);
|
220
|
-
if (immediate && !timeout)
|
221
|
-
func.apply(context, args);
|
210
|
+
var _this = this;
|
211
|
+
var args = arguments;
|
212
|
+
clearTimeout(t);
|
213
|
+
t = setTimeout(function () { return fn.apply(_this, args); }, wait);
|
222
214
|
};
|
223
215
|
}
|
224
216
|
var arrayify = function (obj) {
|
@@ -288,7 +280,7 @@
|
|
288
280
|
dateObj.setMonth(locale.months.longhand.indexOf(monthName));
|
289
281
|
},
|
290
282
|
G: function (dateObj, hour) {
|
291
|
-
dateObj.setHours(parseFloat(hour));
|
283
|
+
dateObj.setHours((dateObj.getHours() >= 12 ? 12 : 0) + parseFloat(hour));
|
292
284
|
},
|
293
285
|
H: function (dateObj, hour) {
|
294
286
|
dateObj.setHours(parseFloat(hour));
|
@@ -321,7 +313,7 @@
|
|
321
313
|
dateObj.setDate(parseFloat(day));
|
322
314
|
},
|
323
315
|
h: function (dateObj, hour) {
|
324
|
-
dateObj.setHours(parseFloat(hour));
|
316
|
+
dateObj.setHours((dateObj.getHours() >= 12 ? 12 : 0) + parseFloat(hour));
|
325
317
|
},
|
326
318
|
i: function (dateObj, minutes) {
|
327
319
|
dateObj.setMinutes(parseFloat(minutes));
|
@@ -348,13 +340,13 @@
|
|
348
340
|
},
|
349
341
|
};
|
350
342
|
var tokenRegex = {
|
351
|
-
D: "
|
352
|
-
F: "
|
343
|
+
D: "",
|
344
|
+
F: "",
|
353
345
|
G: "(\\d\\d|\\d)",
|
354
346
|
H: "(\\d\\d|\\d)",
|
355
347
|
J: "(\\d\\d|\\d)\\w+",
|
356
348
|
K: "",
|
357
|
-
M: "
|
349
|
+
M: "",
|
358
350
|
S: "(\\d\\d|\\d)",
|
359
351
|
U: "(.+)",
|
360
352
|
W: "(\\d\\d|\\d)",
|
@@ -364,7 +356,7 @@
|
|
364
356
|
h: "(\\d\\d|\\d)",
|
365
357
|
i: "(\\d\\d|\\d)",
|
366
358
|
j: "(\\d\\d|\\d)",
|
367
|
-
l: "
|
359
|
+
l: "",
|
368
360
|
m: "(\\d\\d|\\d)",
|
369
361
|
n: "(\\d\\d|\\d)",
|
370
362
|
s: "(\\d\\d|\\d)",
|
@@ -478,17 +470,15 @@
|
|
478
470
|
parsedDate = new Date();
|
479
471
|
timeless = true;
|
480
472
|
}
|
473
|
+
else if (config && config.parseDate) {
|
474
|
+
parsedDate = config.parseDate(date, format);
|
475
|
+
}
|
481
476
|
else if (/Z$/.test(datestr) ||
|
482
477
|
/GMT$/.test(datestr) // datestrings w/ timezone
|
483
|
-
)
|
478
|
+
) {
|
484
479
|
parsedDate = new Date(date);
|
485
|
-
|
486
|
-
parsedDate = config.parseDate(date, format);
|
480
|
+
}
|
487
481
|
else {
|
488
|
-
parsedDate =
|
489
|
-
!config || !config.noCalendar
|
490
|
-
? new Date(new Date().getFullYear(), 0, 1, 0, 0, 0, 0)
|
491
|
-
: new Date(new Date().setHours(0, 0, 0, 0));
|
492
482
|
var matched = void 0, ops = [];
|
493
483
|
for (var i = 0, matchIndex = 0, regexStr = ""; i < format.length; i++) {
|
494
484
|
var token_1 = format[i];
|
@@ -506,11 +496,15 @@
|
|
506
496
|
}
|
507
497
|
else if (!isBackSlash)
|
508
498
|
regexStr += "."; // don't really care
|
509
|
-
ops.forEach(function (_a) {
|
510
|
-
var fn = _a.fn, val = _a.val;
|
511
|
-
return (parsedDate = fn(parsedDate, val, locale) || parsedDate);
|
512
|
-
});
|
513
499
|
}
|
500
|
+
parsedDate =
|
501
|
+
!config || !config.noCalendar
|
502
|
+
? new Date(new Date().getFullYear(), 0, 1, 0, 0, 0, 0)
|
503
|
+
: new Date(new Date().setHours(0, 0, 0, 0));
|
504
|
+
ops.forEach(function (_a) {
|
505
|
+
var fn = _a.fn, val = _a.val;
|
506
|
+
return (parsedDate = fn(parsedDate, val, locale) || parsedDate);
|
507
|
+
});
|
514
508
|
parsedDate = matched ? parsedDate : undefined;
|
515
509
|
}
|
516
510
|
}
|
@@ -538,9 +532,44 @@
|
|
538
532
|
var isBetween = function (ts, ts1, ts2) {
|
539
533
|
return ts > Math.min(ts1, ts2) && ts < Math.max(ts1, ts2);
|
540
534
|
};
|
535
|
+
var calculateSecondsSinceMidnight = function (hours, minutes, seconds) {
|
536
|
+
return hours * 3600 + minutes * 60 + seconds;
|
537
|
+
};
|
538
|
+
var parseSeconds = function (secondsSinceMidnight) {
|
539
|
+
var hours = Math.floor(secondsSinceMidnight / 3600), minutes = (secondsSinceMidnight - hours * 3600) / 60;
|
540
|
+
return [hours, minutes, secondsSinceMidnight - hours * 3600 - minutes * 60];
|
541
|
+
};
|
541
542
|
var duration = {
|
542
543
|
DAY: 86400000,
|
543
544
|
};
|
545
|
+
function getDefaultHours(config) {
|
546
|
+
var hours = config.defaultHour;
|
547
|
+
var minutes = config.defaultMinute;
|
548
|
+
var seconds = config.defaultSeconds;
|
549
|
+
if (config.minDate !== undefined) {
|
550
|
+
var minHour = config.minDate.getHours();
|
551
|
+
var minMinutes = config.minDate.getMinutes();
|
552
|
+
var minSeconds = config.minDate.getSeconds();
|
553
|
+
if (hours < minHour) {
|
554
|
+
hours = minHour;
|
555
|
+
}
|
556
|
+
if (hours === minHour && minutes < minMinutes) {
|
557
|
+
minutes = minMinutes;
|
558
|
+
}
|
559
|
+
if (hours === minHour && minutes === minMinutes && seconds < minSeconds)
|
560
|
+
seconds = config.minDate.getSeconds();
|
561
|
+
}
|
562
|
+
if (config.maxDate !== undefined) {
|
563
|
+
var maxHr = config.maxDate.getHours();
|
564
|
+
var maxMinutes = config.maxDate.getMinutes();
|
565
|
+
hours = Math.min(hours, maxHr);
|
566
|
+
if (hours === maxHr)
|
567
|
+
minutes = Math.min(maxMinutes, minutes);
|
568
|
+
if (hours === maxHr && minutes === maxMinutes)
|
569
|
+
seconds = config.maxDate.getSeconds();
|
570
|
+
}
|
571
|
+
return { hours: hours, minutes: minutes, seconds: seconds };
|
572
|
+
}
|
544
573
|
|
545
574
|
if (typeof Object.assign !== "function") {
|
546
575
|
Object.assign = function (target) {
|
@@ -581,10 +610,13 @@
|
|
581
610
|
self.changeYear = changeYear;
|
582
611
|
self.clear = clear;
|
583
612
|
self.close = close;
|
613
|
+
self.onMouseOver = onMouseOver;
|
584
614
|
self._createElement = createElement;
|
615
|
+
self.createDay = createDay;
|
585
616
|
self.destroy = destroy;
|
586
617
|
self.isEnabled = isEnabled;
|
587
618
|
self.jumpToDate = jumpToDate;
|
619
|
+
self.updateValue = updateValue;
|
588
620
|
self.open = open;
|
589
621
|
self.redraw = redraw;
|
590
622
|
self.set = set;
|
@@ -614,9 +646,7 @@
|
|
614
646
|
bindEvents();
|
615
647
|
if (self.selectedDates.length || self.config.noCalendar) {
|
616
648
|
if (self.config.enableTime) {
|
617
|
-
setHoursFromDate(self.config.noCalendar
|
618
|
-
? self.latestSelectedDateObj || self.config.minDate
|
619
|
-
: undefined);
|
649
|
+
setHoursFromDate(self.config.noCalendar ? self.latestSelectedDateObj : undefined);
|
620
650
|
}
|
621
651
|
updateValue(false);
|
622
652
|
}
|
@@ -635,6 +665,10 @@
|
|
635
665
|
}
|
636
666
|
triggerEvent("onReady");
|
637
667
|
}
|
668
|
+
function getClosestActiveElement() {
|
669
|
+
var _a;
|
670
|
+
return ((_a = self.calendarContainer) === null || _a === void 0 ? void 0 : _a.getRootNode()).activeElement || document.activeElement;
|
671
|
+
}
|
638
672
|
function bindToInstance(fn) {
|
639
673
|
return fn.bind(self);
|
640
674
|
}
|
@@ -669,12 +703,14 @@
|
|
669
703
|
*/
|
670
704
|
function updateTime(e) {
|
671
705
|
if (self.selectedDates.length === 0) {
|
672
|
-
var defaultDate = self.config.minDate
|
673
|
-
|
674
|
-
|
675
|
-
|
676
|
-
|
677
|
-
|
706
|
+
var defaultDate = self.config.minDate === undefined ||
|
707
|
+
compareDates(new Date(), self.config.minDate) >= 0
|
708
|
+
? new Date()
|
709
|
+
: new Date(self.config.minDate.getTime());
|
710
|
+
var defaults = getDefaultHours(self.config);
|
711
|
+
defaultDate.setHours(defaults.hours, defaults.minutes, defaults.seconds, defaultDate.getMilliseconds());
|
712
|
+
self.selectedDates = [defaultDate];
|
713
|
+
self.latestSelectedDateObj = defaultDate;
|
678
714
|
}
|
679
715
|
if (e !== undefined && e.type !== "blur") {
|
680
716
|
timeWrapper(e);
|
@@ -722,25 +758,40 @@
|
|
722
758
|
self.latestSelectedDateObj &&
|
723
759
|
compareDates(self.latestSelectedDateObj, self.config.maxDate, true) ===
|
724
760
|
0);
|
725
|
-
if (
|
726
|
-
|
727
|
-
|
728
|
-
|
729
|
-
|
730
|
-
|
731
|
-
|
732
|
-
|
733
|
-
|
734
|
-
|
735
|
-
|
736
|
-
|
737
|
-
|
738
|
-
|
739
|
-
|
740
|
-
|
741
|
-
|
742
|
-
|
743
|
-
|
761
|
+
if (self.config.maxTime !== undefined &&
|
762
|
+
self.config.minTime !== undefined &&
|
763
|
+
self.config.minTime > self.config.maxTime) {
|
764
|
+
var minBound = calculateSecondsSinceMidnight(self.config.minTime.getHours(), self.config.minTime.getMinutes(), self.config.minTime.getSeconds());
|
765
|
+
var maxBound = calculateSecondsSinceMidnight(self.config.maxTime.getHours(), self.config.maxTime.getMinutes(), self.config.maxTime.getSeconds());
|
766
|
+
var currentTime = calculateSecondsSinceMidnight(hours, minutes, seconds);
|
767
|
+
if (currentTime > maxBound && currentTime < minBound) {
|
768
|
+
var result = parseSeconds(minBound);
|
769
|
+
hours = result[0];
|
770
|
+
minutes = result[1];
|
771
|
+
seconds = result[2];
|
772
|
+
}
|
773
|
+
}
|
774
|
+
else {
|
775
|
+
if (limitMaxHours) {
|
776
|
+
var maxTime = self.config.maxTime !== undefined
|
777
|
+
? self.config.maxTime
|
778
|
+
: self.config.maxDate;
|
779
|
+
hours = Math.min(hours, maxTime.getHours());
|
780
|
+
if (hours === maxTime.getHours())
|
781
|
+
minutes = Math.min(minutes, maxTime.getMinutes());
|
782
|
+
if (minutes === maxTime.getMinutes())
|
783
|
+
seconds = Math.min(seconds, maxTime.getSeconds());
|
784
|
+
}
|
785
|
+
if (limitMinHours) {
|
786
|
+
var minTime = self.config.minTime !== undefined
|
787
|
+
? self.config.minTime
|
788
|
+
: self.config.minDate;
|
789
|
+
hours = Math.max(hours, minTime.getHours());
|
790
|
+
if (hours === minTime.getHours() && minutes < minTime.getMinutes())
|
791
|
+
minutes = minTime.getMinutes();
|
792
|
+
if (minutes === minTime.getMinutes())
|
793
|
+
seconds = Math.max(seconds, minTime.getSeconds());
|
794
|
+
}
|
744
795
|
}
|
745
796
|
setHours(hours, minutes, seconds);
|
746
797
|
}
|
@@ -749,34 +800,10 @@
|
|
749
800
|
*/
|
750
801
|
function setHoursFromDate(dateObj) {
|
751
802
|
var date = dateObj || self.latestSelectedDateObj;
|
752
|
-
if (date) {
|
803
|
+
if (date && date instanceof Date) {
|
753
804
|
setHours(date.getHours(), date.getMinutes(), date.getSeconds());
|
754
805
|
}
|
755
806
|
}
|
756
|
-
function getDefaultHours() {
|
757
|
-
var hours = self.config.defaultHour;
|
758
|
-
var minutes = self.config.defaultMinute;
|
759
|
-
var seconds = self.config.defaultSeconds;
|
760
|
-
if (self.config.minDate !== undefined) {
|
761
|
-
var minHr = self.config.minDate.getHours();
|
762
|
-
var minMinutes = self.config.minDate.getMinutes();
|
763
|
-
hours = Math.max(hours, minHr);
|
764
|
-
if (hours === minHr)
|
765
|
-
minutes = Math.max(minMinutes, minutes);
|
766
|
-
if (hours === minHr && minutes === minMinutes)
|
767
|
-
seconds = self.config.minDate.getSeconds();
|
768
|
-
}
|
769
|
-
if (self.config.maxDate !== undefined) {
|
770
|
-
var maxHr = self.config.maxDate.getHours();
|
771
|
-
var maxMinutes = self.config.maxDate.getMinutes();
|
772
|
-
hours = Math.min(hours, maxHr);
|
773
|
-
if (hours === maxHr)
|
774
|
-
minutes = Math.min(maxMinutes, minutes);
|
775
|
-
if (hours === maxHr && minutes === maxMinutes)
|
776
|
-
seconds = self.config.maxDate.getSeconds();
|
777
|
-
}
|
778
|
-
return { hours: hours, minutes: minutes, seconds: seconds };
|
779
|
-
}
|
780
807
|
/**
|
781
808
|
* Sets the hours, minutes, and optionally seconds
|
782
809
|
* of the latest selected date object and the
|
@@ -826,10 +853,7 @@
|
|
826
853
|
return element.forEach(function (el) { return bind(el, event, handler, options); });
|
827
854
|
element.addEventListener(event, handler, options);
|
828
855
|
self._handlers.push({
|
829
|
-
|
830
|
-
event: event,
|
831
|
-
handler: handler,
|
832
|
-
options: options,
|
856
|
+
remove: function () { return element.removeEventListener(event, handler, options); },
|
833
857
|
});
|
834
858
|
}
|
835
859
|
function triggerChange() {
|
@@ -857,13 +881,16 @@
|
|
857
881
|
if (self.config.mode === "range")
|
858
882
|
onMouseOver(getEventTarget(e));
|
859
883
|
});
|
860
|
-
bind(
|
884
|
+
bind(self._input, "keydown", onKeyDown);
|
885
|
+
if (self.calendarContainer !== undefined) {
|
886
|
+
bind(self.calendarContainer, "keydown", onKeyDown);
|
887
|
+
}
|
861
888
|
if (!self.config.inline && !self.config.static)
|
862
889
|
bind(window, "resize", debouncedResize);
|
863
890
|
if (window.ontouchstart !== undefined)
|
864
891
|
bind(window.document, "touchstart", documentClick);
|
865
892
|
else
|
866
|
-
bind(window.document, "
|
893
|
+
bind(window.document, "mousedown", documentClick);
|
867
894
|
bind(window.document, "focus", documentClick, { capture: true });
|
868
895
|
if (self.config.clickOpens === true) {
|
869
896
|
bind(self._input, "focus", self.open);
|
@@ -889,12 +916,12 @@
|
|
889
916
|
if (self.amPM !== undefined) {
|
890
917
|
bind(self.amPM, "click", function (e) {
|
891
918
|
updateTime(e);
|
892
|
-
triggerChange();
|
893
919
|
});
|
894
920
|
}
|
895
921
|
}
|
896
|
-
if (self.config.allowInput)
|
922
|
+
if (self.config.allowInput) {
|
897
923
|
bind(self._input, "blur", onBlur);
|
924
|
+
}
|
898
925
|
}
|
899
926
|
/**
|
900
927
|
* Set the calendar view to a particular date.
|
@@ -1016,7 +1043,7 @@
|
|
1016
1043
|
: window.document.body).appendChild(self.calendarContainer);
|
1017
1044
|
}
|
1018
1045
|
function createDay(className, date, dayNumber, i) {
|
1019
|
-
var dateIsEnabled = isEnabled(date, true), dayElement = createElement("span",
|
1046
|
+
var dateIsEnabled = isEnabled(date, true), dayElement = createElement("span", className, date.getDate().toString());
|
1020
1047
|
dayElement.dateObj = date;
|
1021
1048
|
dayElement.$i = i;
|
1022
1049
|
dayElement.setAttribute("aria-label", self.formatDate(date, self.config.ariaDateFormat));
|
@@ -1104,11 +1131,12 @@
|
|
1104
1131
|
return undefined;
|
1105
1132
|
}
|
1106
1133
|
function focusOnDay(current, offset) {
|
1107
|
-
var
|
1134
|
+
var activeElement = getClosestActiveElement();
|
1135
|
+
var dayFocused = isInView(activeElement || document.body);
|
1108
1136
|
var startElem = current !== undefined
|
1109
1137
|
? current
|
1110
1138
|
: dayFocused
|
1111
|
-
?
|
1139
|
+
? activeElement
|
1112
1140
|
: self.selectedDateElem !== undefined && isInView(self.selectedDateElem)
|
1113
1141
|
? self.selectedDateElem
|
1114
1142
|
: self.todayDateElem !== undefined && isInView(self.todayDateElem)
|
@@ -1131,16 +1159,16 @@
|
|
1131
1159
|
var dayNumber = prevMonthDays + 1 - firstOfMonth, dayIndex = 0;
|
1132
1160
|
// prepend days from the ending of previous month
|
1133
1161
|
for (; dayNumber <= prevMonthDays; dayNumber++, dayIndex++) {
|
1134
|
-
days.appendChild(createDay(prevMonthDayClass, new Date(year, month - 1, dayNumber), dayNumber, dayIndex));
|
1162
|
+
days.appendChild(createDay("flatpickr-day " + prevMonthDayClass, new Date(year, month - 1, dayNumber), dayNumber, dayIndex));
|
1135
1163
|
}
|
1136
1164
|
// Start at 1 since there is no 0th day
|
1137
1165
|
for (dayNumber = 1; dayNumber <= daysInMonth; dayNumber++, dayIndex++) {
|
1138
|
-
days.appendChild(createDay("", new Date(year, month, dayNumber), dayNumber, dayIndex));
|
1166
|
+
days.appendChild(createDay("flatpickr-day", new Date(year, month, dayNumber), dayNumber, dayIndex));
|
1139
1167
|
}
|
1140
1168
|
// append days from the next month
|
1141
1169
|
for (var dayNum = daysInMonth + 1; dayNum <= 42 - firstOfMonth &&
|
1142
1170
|
(self.config.showMonths === 1 || dayIndex % 7 !== 0); dayNum++, dayIndex++) {
|
1143
|
-
days.appendChild(createDay(nextMonthDayClass, new Date(year, month + 1, dayNum % daysInMonth), dayNum, dayIndex));
|
1171
|
+
days.appendChild(createDay("flatpickr-day " + nextMonthDayClass, new Date(year, month + 1, dayNum % daysInMonth), dayNum, dayIndex));
|
1144
1172
|
}
|
1145
1173
|
//updateNavigationCurrentMonth();
|
1146
1174
|
var dayContainer = createElement("div", "dayContainer");
|
@@ -1289,6 +1317,7 @@
|
|
1289
1317
|
self.calendarContainer.classList.add("hasTime");
|
1290
1318
|
if (self.config.noCalendar)
|
1291
1319
|
self.calendarContainer.classList.add("noCalendar");
|
1320
|
+
var defaults = getDefaultHours(self.config);
|
1292
1321
|
self.timeContainer = createElement("div", "flatpickr-time");
|
1293
1322
|
self.timeContainer.tabIndex = -1;
|
1294
1323
|
var separator = createElement("span", "flatpickr-time-separator", ":");
|
@@ -1304,17 +1333,19 @@
|
|
1304
1333
|
self.hourElement.value = pad(self.latestSelectedDateObj
|
1305
1334
|
? self.latestSelectedDateObj.getHours()
|
1306
1335
|
: self.config.time_24hr
|
1307
|
-
?
|
1308
|
-
: military2ampm(
|
1336
|
+
? defaults.hours
|
1337
|
+
: military2ampm(defaults.hours));
|
1309
1338
|
self.minuteElement.value = pad(self.latestSelectedDateObj
|
1310
1339
|
? self.latestSelectedDateObj.getMinutes()
|
1311
|
-
:
|
1340
|
+
: defaults.minutes);
|
1312
1341
|
self.hourElement.setAttribute("step", self.config.hourIncrement.toString());
|
1313
1342
|
self.minuteElement.setAttribute("step", self.config.minuteIncrement.toString());
|
1314
1343
|
self.hourElement.setAttribute("min", self.config.time_24hr ? "0" : "1");
|
1315
1344
|
self.hourElement.setAttribute("max", self.config.time_24hr ? "23" : "12");
|
1345
|
+
self.hourElement.setAttribute("maxlength", "2");
|
1316
1346
|
self.minuteElement.setAttribute("min", "0");
|
1317
1347
|
self.minuteElement.setAttribute("max", "59");
|
1348
|
+
self.minuteElement.setAttribute("maxlength", "2");
|
1318
1349
|
self.timeContainer.appendChild(hourInput);
|
1319
1350
|
self.timeContainer.appendChild(separator);
|
1320
1351
|
self.timeContainer.appendChild(minuteInput);
|
@@ -1326,10 +1357,11 @@
|
|
1326
1357
|
self.secondElement = secondInput.getElementsByTagName("input")[0];
|
1327
1358
|
self.secondElement.value = pad(self.latestSelectedDateObj
|
1328
1359
|
? self.latestSelectedDateObj.getSeconds()
|
1329
|
-
:
|
1360
|
+
: defaults.seconds);
|
1330
1361
|
self.secondElement.setAttribute("step", self.minuteElement.getAttribute("step"));
|
1331
1362
|
self.secondElement.setAttribute("min", "0");
|
1332
1363
|
self.secondElement.setAttribute("max", "59");
|
1364
|
+
self.secondElement.setAttribute("maxlength", "2");
|
1333
1365
|
self.timeContainer.appendChild(createElement("span", "flatpickr-time-separator", ":"));
|
1334
1366
|
self.timeContainer.appendChild(secondInput);
|
1335
1367
|
}
|
@@ -1413,7 +1445,7 @@
|
|
1413
1445
|
self.currentMonth = self._initialDate.getMonth();
|
1414
1446
|
}
|
1415
1447
|
if (self.config.enableTime === true) {
|
1416
|
-
var _a = getDefaultHours(), hours = _a.hours, minutes = _a.minutes, seconds = _a.seconds;
|
1448
|
+
var _a = getDefaultHours(self.config), hours = _a.hours, minutes = _a.minutes, seconds = _a.seconds;
|
1417
1449
|
setHours(hours, minutes, seconds);
|
1418
1450
|
}
|
1419
1451
|
self.redraw();
|
@@ -1437,8 +1469,7 @@
|
|
1437
1469
|
if (self.config !== undefined)
|
1438
1470
|
triggerEvent("onDestroy");
|
1439
1471
|
for (var i = self._handlers.length; i--;) {
|
1440
|
-
|
1441
|
-
h.element.removeEventListener(h.event, h.handler, h.options);
|
1472
|
+
self._handlers[i].remove();
|
1442
1473
|
}
|
1443
1474
|
self._handlers = [];
|
1444
1475
|
if (self.mobileInput) {
|
@@ -1508,8 +1539,6 @@
|
|
1508
1539
|
});
|
1509
1540
|
}
|
1510
1541
|
function isCalendarElem(elem) {
|
1511
|
-
if (self.config.appendTo && self.config.appendTo.contains(elem))
|
1512
|
-
return true;
|
1513
1542
|
return self.calendarContainer.contains(elem);
|
1514
1543
|
}
|
1515
1544
|
function documentClick(e) {
|
@@ -1525,17 +1554,18 @@
|
|
1525
1554
|
e.path.indexOf &&
|
1526
1555
|
(~e.path.indexOf(self.input) ||
|
1527
1556
|
~e.path.indexOf(self.altInput)));
|
1528
|
-
var lostFocus =
|
1529
|
-
|
1530
|
-
|
1531
|
-
!isCalendarElem(e.relatedTarget)
|
1532
|
-
: !isInput &&
|
1533
|
-
!isCalendarElement &&
|
1534
|
-
!isCalendarElem(e.relatedTarget);
|
1557
|
+
var lostFocus = !isInput &&
|
1558
|
+
!isCalendarElement &&
|
1559
|
+
!isCalendarElem(e.relatedTarget);
|
1535
1560
|
var isIgnored = !self.config.ignoredFocusElements.some(function (elem) {
|
1536
1561
|
return elem.contains(eventTarget_1);
|
1537
1562
|
});
|
1538
1563
|
if (lostFocus && isIgnored) {
|
1564
|
+
if (self.config.allowInput) {
|
1565
|
+
self.setDate(self._input.value, false, self.config.altInput
|
1566
|
+
? self.config.altFormat
|
1567
|
+
: self.config.dateFormat);
|
1568
|
+
}
|
1539
1569
|
if (self.timeContainer !== undefined &&
|
1540
1570
|
self.minuteElement !== undefined &&
|
1541
1571
|
self.hourElement !== undefined &&
|
@@ -1546,10 +1576,8 @@
|
|
1546
1576
|
self.close();
|
1547
1577
|
if (self.config &&
|
1548
1578
|
self.config.mode === "range" &&
|
1549
|
-
self.selectedDates.length === 1)
|
1579
|
+
self.selectedDates.length === 1)
|
1550
1580
|
self.clear(false);
|
1551
|
-
self.redraw();
|
1552
|
-
}
|
1553
1581
|
}
|
1554
1582
|
}
|
1555
1583
|
}
|
@@ -1575,6 +1603,7 @@
|
|
1575
1603
|
}
|
1576
1604
|
}
|
1577
1605
|
function isEnabled(date, timeless) {
|
1606
|
+
var _a;
|
1578
1607
|
if (timeless === void 0) { timeless = true; }
|
1579
1608
|
var dateToCheck = self.parseDate(date, undefined, timeless); // timeless
|
1580
1609
|
if ((self.config.minDate &&
|
@@ -1584,11 +1613,11 @@
|
|
1584
1613
|
dateToCheck &&
|
1585
1614
|
compareDates(dateToCheck, self.config.maxDate, timeless !== undefined ? timeless : !self.maxDateHasTime) > 0))
|
1586
1615
|
return false;
|
1587
|
-
if (self.config.enable
|
1616
|
+
if (!self.config.enable && self.config.disable.length === 0)
|
1588
1617
|
return true;
|
1589
1618
|
if (dateToCheck === undefined)
|
1590
1619
|
return false;
|
1591
|
-
var bool = self.config.enable
|
1620
|
+
var bool = !!self.config.enable, array = (_a = self.config.enable) !== null && _a !== void 0 ? _a : self.config.disable;
|
1592
1621
|
for (var i = 0, d = void 0; i < array.length; i++) {
|
1593
1622
|
d = array[i];
|
1594
1623
|
if (typeof d === "function" &&
|
@@ -1600,7 +1629,7 @@
|
|
1600
1629
|
d.getTime() === dateToCheck.getTime())
|
1601
1630
|
// disabled by date
|
1602
1631
|
return bool;
|
1603
|
-
else if (typeof d === "string"
|
1632
|
+
else if (typeof d === "string") {
|
1604
1633
|
// disabled by date string
|
1605
1634
|
var parsed = self.parseDate(d, undefined, true);
|
1606
1635
|
return parsed && parsed.getTime() === dateToCheck.getTime()
|
@@ -1629,6 +1658,7 @@
|
|
1629
1658
|
function onBlur(e) {
|
1630
1659
|
var isInput = e.target === self._input;
|
1631
1660
|
if (isInput &&
|
1661
|
+
(self.selectedDates.length > 0 || self._input.value.length > 0) &&
|
1632
1662
|
!(e.relatedTarget && isCalendarElem(e.relatedTarget))) {
|
1633
1663
|
self.setDate(self._input.value, true, e.target === self.altInput
|
1634
1664
|
? self.config.altFormat
|
@@ -1658,6 +1688,7 @@
|
|
1658
1688
|
self.setDate(self._input.value, true, eventTarget === self.altInput
|
1659
1689
|
? self.config.altFormat
|
1660
1690
|
: self.config.dateFormat);
|
1691
|
+
self.close();
|
1661
1692
|
return eventTarget.blur();
|
1662
1693
|
}
|
1663
1694
|
else {
|
@@ -1694,9 +1725,10 @@
|
|
1694
1725
|
case 39:
|
1695
1726
|
if (!isTimeObj && !isInput) {
|
1696
1727
|
e.preventDefault();
|
1728
|
+
var activeElement = getClosestActiveElement();
|
1697
1729
|
if (self.daysContainer !== undefined &&
|
1698
1730
|
(allowInput === false ||
|
1699
|
-
(
|
1731
|
+
(activeElement && isInView(activeElement)))) {
|
1700
1732
|
var delta_1 = e.keyCode === 39 ? 1 : -1;
|
1701
1733
|
if (!e.ctrlKey)
|
1702
1734
|
focusOnDay(undefined, delta_1);
|
@@ -1783,10 +1815,11 @@
|
|
1783
1815
|
triggerEvent("onKeyDown", e);
|
1784
1816
|
}
|
1785
1817
|
}
|
1786
|
-
function onMouseOver(elem) {
|
1818
|
+
function onMouseOver(elem, cellClass) {
|
1819
|
+
if (cellClass === void 0) { cellClass = "flatpickr-day"; }
|
1787
1820
|
if (self.selectedDates.length !== 1 ||
|
1788
1821
|
(elem &&
|
1789
|
-
(!elem.classList.contains(
|
1822
|
+
(!elem.classList.contains(cellClass) ||
|
1790
1823
|
elem.classList.contains("flatpickr-disabled"))))
|
1791
1824
|
return;
|
1792
1825
|
var hoverDate = elem
|
@@ -1804,43 +1837,38 @@
|
|
1804
1837
|
maxRange = t;
|
1805
1838
|
}
|
1806
1839
|
}
|
1807
|
-
|
1808
|
-
|
1809
|
-
var
|
1810
|
-
|
1811
|
-
|
1812
|
-
|
1813
|
-
|
1814
|
-
|
1815
|
-
|
1816
|
-
["inRange", "startRange", "endRange"].forEach(function (c) {
|
1817
|
-
dayElem.classList.remove(c);
|
1818
|
-
});
|
1819
|
-
return "continue";
|
1820
|
-
}
|
1821
|
-
else if (containsDisabled && !outOfRange)
|
1822
|
-
return "continue";
|
1823
|
-
["startRange", "inRange", "endRange", "notAllowed"].forEach(function (c) {
|
1840
|
+
var hoverableCells = Array.from(self.rContainer.querySelectorAll("*:nth-child(-n+" + self.config.showMonths + ") > ." + cellClass));
|
1841
|
+
hoverableCells.forEach(function (dayElem) {
|
1842
|
+
var date = dayElem.dateObj;
|
1843
|
+
var timestamp = date.getTime();
|
1844
|
+
var outOfRange = (minRange > 0 && timestamp < minRange) ||
|
1845
|
+
(maxRange > 0 && timestamp > maxRange);
|
1846
|
+
if (outOfRange) {
|
1847
|
+
dayElem.classList.add("notAllowed");
|
1848
|
+
["inRange", "startRange", "endRange"].forEach(function (c) {
|
1824
1849
|
dayElem.classList.remove(c);
|
1825
1850
|
});
|
1826
|
-
|
1827
|
-
elem.classList.add(hoverDate <= self.selectedDates[0].getTime()
|
1828
|
-
? "startRange"
|
1829
|
-
: "endRange");
|
1830
|
-
if (initialDate < hoverDate && timestamp === initialDate)
|
1831
|
-
dayElem.classList.add("startRange");
|
1832
|
-
else if (initialDate > hoverDate && timestamp === initialDate)
|
1833
|
-
dayElem.classList.add("endRange");
|
1834
|
-
if (timestamp >= minRange &&
|
1835
|
-
(maxRange === 0 || timestamp <= maxRange) &&
|
1836
|
-
isBetween(timestamp, initialDate, hoverDate))
|
1837
|
-
dayElem.classList.add("inRange");
|
1838
|
-
}
|
1839
|
-
};
|
1840
|
-
for (var i = 0, l = month.children.length; i < l; i++) {
|
1841
|
-
_loop_1(i, l);
|
1851
|
+
return;
|
1842
1852
|
}
|
1843
|
-
|
1853
|
+
else if (containsDisabled && !outOfRange)
|
1854
|
+
return;
|
1855
|
+
["startRange", "inRange", "endRange", "notAllowed"].forEach(function (c) {
|
1856
|
+
dayElem.classList.remove(c);
|
1857
|
+
});
|
1858
|
+
if (elem !== undefined) {
|
1859
|
+
elem.classList.add(hoverDate <= self.selectedDates[0].getTime()
|
1860
|
+
? "startRange"
|
1861
|
+
: "endRange");
|
1862
|
+
if (initialDate < hoverDate && timestamp === initialDate)
|
1863
|
+
dayElem.classList.add("startRange");
|
1864
|
+
else if (initialDate > hoverDate && timestamp === initialDate)
|
1865
|
+
dayElem.classList.add("endRange");
|
1866
|
+
if (timestamp >= minRange &&
|
1867
|
+
(maxRange === 0 || timestamp <= maxRange) &&
|
1868
|
+
isBetween(timestamp, initialDate, hoverDate))
|
1869
|
+
dayElem.classList.add("inRange");
|
1870
|
+
}
|
1871
|
+
});
|
1844
1872
|
}
|
1845
1873
|
function onResize() {
|
1846
1874
|
if (self.isOpen && !self.config.static && !self.config.inline)
|
@@ -1852,7 +1880,9 @@
|
|
1852
1880
|
if (e) {
|
1853
1881
|
e.preventDefault();
|
1854
1882
|
var eventTarget = getEventTarget(e);
|
1855
|
-
|
1883
|
+
if (eventTarget) {
|
1884
|
+
eventTarget.blur();
|
1885
|
+
}
|
1856
1886
|
}
|
1857
1887
|
if (self.mobileInput !== undefined) {
|
1858
1888
|
self.mobileInput.focus();
|
@@ -1861,8 +1891,9 @@
|
|
1861
1891
|
triggerEvent("onOpen");
|
1862
1892
|
return;
|
1863
1893
|
}
|
1864
|
-
if (self._input.disabled || self.config.inline)
|
1894
|
+
else if (self._input.disabled || self.config.inline) {
|
1865
1895
|
return;
|
1896
|
+
}
|
1866
1897
|
var wasOpen = self.isOpen;
|
1867
1898
|
self.isOpen = true;
|
1868
1899
|
if (!wasOpen) {
|
@@ -1995,7 +2026,7 @@
|
|
1995
2026
|
!self.config.inline &&
|
1996
2027
|
self.config.mode === "single" &&
|
1997
2028
|
!self.config.disable.length &&
|
1998
|
-
!self.config.enable
|
2029
|
+
!self.config.enable &&
|
1999
2030
|
!self.config.weekNumbers &&
|
2000
2031
|
/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
|
2001
2032
|
for (var i = 0; i < self.config.plugins.length; i++) {
|
@@ -2030,6 +2061,10 @@
|
|
2030
2061
|
: self.config.locale !== "default"
|
2031
2062
|
? flatpickr.l10ns[self.config.locale]
|
2032
2063
|
: undefined));
|
2064
|
+
tokenRegex.D = "(" + self.l10n.weekdays.shorthand.join("|") + ")";
|
2065
|
+
tokenRegex.l = "(" + self.l10n.weekdays.longhand.join("|") + ")";
|
2066
|
+
tokenRegex.M = "(" + self.l10n.months.shorthand.join("|") + ")";
|
2067
|
+
tokenRegex.F = "(" + self.l10n.months.longhand.join("|") + ")";
|
2033
2068
|
tokenRegex.K = "(" + self.l10n.amPM[0] + "|" + self.l10n.amPM[1] + "|" + self.l10n.amPM[0].toLowerCase() + "|" + self.l10n.amPM[1].toLowerCase() + ")";
|
2034
2069
|
var userConfig = __assign(__assign({}, instanceConfig), JSON.parse(JSON.stringify(element.dataset || {})));
|
2035
2070
|
if (userConfig.time_24hr === undefined &&
|
@@ -2040,6 +2075,9 @@
|
|
2040
2075
|
self.parseDate = createDateParser({ config: self.config, l10n: self.l10n });
|
2041
2076
|
}
|
2042
2077
|
function positionCalendar(customPositionElement) {
|
2078
|
+
if (typeof self.config.position === "function") {
|
2079
|
+
return void self.config.position(self, customPositionElement);
|
2080
|
+
}
|
2043
2081
|
if (self.calendarContainer === undefined)
|
2044
2082
|
return;
|
2045
2083
|
triggerEvent("onPreCalendarPosition");
|
@@ -2107,6 +2145,8 @@
|
|
2107
2145
|
var editableSheet = null;
|
2108
2146
|
for (var i = 0; i < document.styleSheets.length; i++) {
|
2109
2147
|
var sheet = document.styleSheets[i];
|
2148
|
+
if (!sheet.cssRules)
|
2149
|
+
continue;
|
2110
2150
|
try {
|
2111
2151
|
sheet.cssRules;
|
2112
2152
|
}
|
@@ -2220,6 +2260,19 @@
|
|
2220
2260
|
showMonths: [buildMonths, setCalendarWidth, buildWeekdays],
|
2221
2261
|
minDate: [jumpToDate],
|
2222
2262
|
maxDate: [jumpToDate],
|
2263
|
+
positionElement: [updatePositionElement],
|
2264
|
+
clickOpens: [
|
2265
|
+
function () {
|
2266
|
+
if (self.config.clickOpens === true) {
|
2267
|
+
bind(self._input, "focus", self.open);
|
2268
|
+
bind(self._input, "click", self.open);
|
2269
|
+
}
|
2270
|
+
else {
|
2271
|
+
self._input.removeEventListener("focus", self.open);
|
2272
|
+
self._input.removeEventListener("click", self.open);
|
2273
|
+
}
|
2274
|
+
},
|
2275
|
+
],
|
2223
2276
|
};
|
2224
2277
|
function set(option, value) {
|
2225
2278
|
if (option !== null && typeof option === "object") {
|
@@ -2379,6 +2432,9 @@
|
|
2379
2432
|
}
|
2380
2433
|
if (!self.config.allowInput)
|
2381
2434
|
self._input.setAttribute("readonly", "readonly");
|
2435
|
+
updatePositionElement();
|
2436
|
+
}
|
2437
|
+
function updatePositionElement() {
|
2382
2438
|
self._positionElement = self.config.positionElement || self._input;
|
2383
2439
|
}
|
2384
2440
|
function setupMobile() {
|
@@ -2449,7 +2505,8 @@
|
|
2449
2505
|
}
|
2450
2506
|
function isDateSelected(date) {
|
2451
2507
|
for (var i = 0; i < self.selectedDates.length; i++) {
|
2452
|
-
|
2508
|
+
var selectedDate = self.selectedDates[i];
|
2509
|
+
if (selectedDate instanceof Date && compareDates(selectedDate, date) === 0)
|
2453
2510
|
return "" + i;
|
2454
2511
|
}
|
2455
2512
|
return false;
|
@@ -2645,7 +2702,6 @@
|
|
2645
2702
|
return _flatpickr(this, config);
|
2646
2703
|
};
|
2647
2704
|
}
|
2648
|
-
// eslint-disable-next-line @typescript-eslint/camelcase
|
2649
2705
|
Date.prototype.fp_incr = function (days) {
|
2650
2706
|
return new Date(this.getFullYear(), this.getMonth(), this.getDate() + (typeof days === "string" ? parseInt(days, 10) : days));
|
2651
2707
|
};
|