flatpickr 2.3.4.0 → 2.3.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (25) hide show
  1. checksums.yaml +4 -4
  2. data/lib/flatpickr/version.rb +1 -1
  3. data/vendor/assets/javascripts/flatpickr.js +131 -71
  4. data/vendor/assets/javascripts/flatpickr/l10n/de.js +1 -0
  5. data/vendor/assets/javascripts/flatpickr/l10n/lt.js +2 -2
  6. data/vendor/assets/javascripts/flatpickr/l10n/pt.js +3 -0
  7. data/vendor/assets/stylesheets/flatpickr.css +1 -1
  8. data/vendor/assets/stylesheets/flatpickr/rtl/flatpickr.min.css +1 -1
  9. data/vendor/assets/stylesheets/flatpickr/rtl/themes/airbnb.rtl.css +1 -1
  10. data/vendor/assets/stylesheets/flatpickr/rtl/themes/base16_flat.rtl.css +1 -1
  11. data/vendor/assets/stylesheets/flatpickr/rtl/themes/confetti.rtl.css +1 -1
  12. data/vendor/assets/stylesheets/flatpickr/rtl/themes/dark.rtl.css +1 -1
  13. data/vendor/assets/stylesheets/flatpickr/rtl/themes/material_blue.rtl.css +1 -1
  14. data/vendor/assets/stylesheets/flatpickr/rtl/themes/material_green.rtl.css +1 -1
  15. data/vendor/assets/stylesheets/flatpickr/rtl/themes/material_orange.rtl.css +1 -1
  16. data/vendor/assets/stylesheets/flatpickr/rtl/themes/material_red.rtl.css +1 -1
  17. data/vendor/assets/stylesheets/flatpickr/themes/airbnb.css +1 -1
  18. data/vendor/assets/stylesheets/flatpickr/themes/base16_flat.css +1 -1
  19. data/vendor/assets/stylesheets/flatpickr/themes/confetti.css +1 -1
  20. data/vendor/assets/stylesheets/flatpickr/themes/dark.css +1 -1
  21. data/vendor/assets/stylesheets/flatpickr/themes/material_blue.css +1 -1
  22. data/vendor/assets/stylesheets/flatpickr/themes/material_green.css +1 -1
  23. data/vendor/assets/stylesheets/flatpickr/themes/material_orange.css +1 -1
  24. data/vendor/assets/stylesheets/flatpickr/themes/material_red.css +1 -1
  25. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 60f6ba198c02be2902aa807731a98bc99244658a
4
- data.tar.gz: 177f4531cf1680d578e617e543defbde6e4a6ad0
3
+ metadata.gz: dcc3bd43088a41be83303f84ca9dce418ee90cbf
4
+ data.tar.gz: 0c8b9851169670c1043799ccad990a880da085c5
5
5
  SHA512:
6
- metadata.gz: 7ca49652713915145f0bb6a93c49ae2fe8c14b1dd8a902217af0b8dd310528b186073f4992f083058e9e21843faf9d3ee13d461bae291fd69ba0ea15e9b3f37d
7
- data.tar.gz: 05b424b978d7fc0fa1d4d97a968fd5d01ee6a0a661b773ca9d8ec01f1ad5e7805be7103958fd34d919383056566fbe6e312229bc4c86fe4ae88530015a9f5723
6
+ metadata.gz: 2bf06c49a517d3ad90533cbf40d15f5975ddcc334087947440764a39175be5471ad9855f48671d15ddc8dfa3cd9f58d50a7d09cdc6178af3b9ff785624b4c95a
7
+ data.tar.gz: 1ce3fb691861a4fa504011030c2613f08a917471c04543c3e92690081d6195f68af995193a4ac7f5073b45045dafd12b68f0cfddd342c1c07caec04f9e860341
@@ -1,3 +1,3 @@
1
1
  module Flatpickr
2
- VERSION = '2.3.4.0'
2
+ VERSION = '2.3.5.0'
3
3
  end
@@ -2,7 +2,7 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < argument
2
2
 
3
3
  var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
4
4
 
5
- /*! flatpickr v2.3.4, @license MIT */
5
+ /*! flatpickr v2.3.5, @license MIT */
6
6
  function Flatpickr(element, config) {
7
7
  var self = this;
8
8
 
@@ -44,8 +44,7 @@ function Flatpickr(element, config) {
44
44
  if (!self.isMobile) {
45
45
  Object.defineProperty(self, "dateIsPicked", {
46
46
  set: function set(bool) {
47
- if (bool) return self.calendarContainer.classList.add("dateIsPicked");
48
- self.calendarContainer.classList.remove("dateIsPicked");
47
+ toggleClass(self.calendarContainer, "dateIsPicked", bool);
49
48
  }
50
49
  });
51
50
  }
@@ -135,6 +134,11 @@ function Flatpickr(element, config) {
135
134
  }
136
135
  }
137
136
 
137
+ function onMonthScroll(e) {
138
+ e.preventDefault();
139
+ self.changeMonth(Math.max(-1, Math.min(1, e.wheelDelta || -e.deltaY)));
140
+ }
141
+
138
142
  function bind() {
139
143
  if (self.config.wrap) {
140
144
  ["open", "close", "toggle", "clear"].forEach(function (el) {
@@ -180,6 +184,9 @@ function Flatpickr(element, config) {
180
184
  return changeMonth(1);
181
185
  });
182
186
 
187
+ self.currentMonthElement.addEventListener("wheel", function (e) {
188
+ return debounce(onMonthScroll(e), 50);
189
+ });
183
190
  self.currentYearElement.addEventListener("wheel", function (e) {
184
191
  return debounce(yearScroll(e), 50);
185
192
  });
@@ -234,7 +241,9 @@ function Flatpickr(element, config) {
234
241
  self.currentYear = jumpDate.getFullYear();
235
242
  self.currentMonth = jumpDate.getMonth();
236
243
  } catch (e) {
244
+ /* istanbul ignore next */
237
245
  console.error(e.stack);
246
+ /* istanbul ignore next */
238
247
  console.warn("Invalid date supplied: " + jumpDate);
239
248
  }
240
249
 
@@ -298,14 +307,26 @@ function Flatpickr(element, config) {
298
307
 
299
308
  self.calendarContainer.appendChild(fragment);
300
309
 
310
+ var customAppend = self.config.appendTo && self.config.appendTo.nodeType;
311
+
301
312
  if (self.config.inline || self.config.static) {
302
313
  self.calendarContainer.classList.add(self.config.inline ? "inline" : "static");
303
314
  positionCalendar();
304
315
 
305
- if (self.config.appendTo && self.config.appendTo.nodeType) self.config.appendTo.appendChild(self.calendarContainer);else {
306
- self.element.parentNode.insertBefore(self.calendarContainer, (self.altInput || self.input).nextSibling);
316
+ if (self.config.inline && !customAppend) {
317
+ return self.element.parentNode.insertBefore(self.calendarContainer, (self.altInput || self.input).nextSibling);
318
+ }
319
+
320
+ if (self.config.static) {
321
+ var wrapper = createElement("div", "flatpickr-wrapper");
322
+ self.element.parentNode.insertBefore(wrapper, self.element);
323
+ wrapper.appendChild(self.element);
324
+ wrapper.appendChild(self.calendarContainer);
325
+ return;
307
326
  }
308
- } else window.document.body.appendChild(self.calendarContainer);
327
+ }
328
+
329
+ (customAppend ? self.config.appendTo : window.document.body).appendChild(self.calendarContainer);
309
330
  }
310
331
 
311
332
  function createDay(className, date, dayNumber) {
@@ -398,6 +419,7 @@ function Flatpickr(element, config) {
398
419
  self.prevMonthNav.innerHTML = self.config.prevArrow;
399
420
 
400
421
  self.currentMonthElement = createElement("span", "cur-month");
422
+ self.currentMonthElement.title = self.l10n.scrollTitle;
401
423
 
402
424
  var yearInput = createNumberInput("cur-year");
403
425
  self.currentYearElement = yearInput.childNodes[0];
@@ -599,7 +621,9 @@ function Flatpickr(element, config) {
599
621
  }
600
622
 
601
623
  function documentClick(e) {
602
- var isInput = self.element.contains(e.target) || e.target === self.input || e.target === self.altInput || e.path && (~e.path.indexOf(self.input) || ~e.path.indexOf(self.altInput));
624
+ var isInput = self.element.contains(e.target) || e.target === self.input || e.target === self.altInput ||
625
+ // web components
626
+ e.path && e.path.indexOf && (~e.path.indexOf(self.input) || ~e.path.indexOf(self.altInput));
603
627
 
604
628
  if (self.isOpen && !self.config.inline && !isCalendarElem(e.target) && !isInput) {
605
629
  e.preventDefault();
@@ -623,7 +647,7 @@ function Flatpickr(element, config) {
623
647
 
624
648
  function handleYearChange(newYear) {
625
649
  if (self.currentMonth < 0 || self.currentMonth > 11) {
626
- self.currentYear += self.currentMonth % 11;
650
+ self.currentYear += self.currentMonth > 11 ? 1 : -1;
627
651
  self.currentMonth = (self.currentMonth + 12) % 12;
628
652
 
629
653
  triggerEvent("YearChange");
@@ -679,8 +703,6 @@ function Flatpickr(element, config) {
679
703
 
680
704
  case 27:
681
705
  // escape
682
- self.clear();
683
- self.redraw();
684
706
  self.close();
685
707
  break;
686
708
 
@@ -690,11 +712,8 @@ function Flatpickr(element, config) {
690
712
 
691
713
  case 38:
692
714
  e.preventDefault();
693
-
694
- if (self.timeContainer && self.timeContainer.contains(e.target)) updateTime(e);else {
695
- self.currentYear++;
696
- self.redraw();
697
- }
715
+ self.currentYear++;
716
+ self.redraw();
698
717
 
699
718
  break;
700
719
 
@@ -704,10 +723,8 @@ function Flatpickr(element, config) {
704
723
 
705
724
  case 40:
706
725
  e.preventDefault();
707
- if (self.timeContainer && self.timeContainer.contains(e.target)) updateTime(e);else {
708
- self.currentYear--;
709
- self.redraw();
710
- }
726
+ self.currentYear--;
727
+ self.redraw();
711
728
 
712
729
  break;
713
730
 
@@ -733,16 +750,20 @@ function Flatpickr(element, config) {
733
750
  }
734
751
  }
735
752
 
736
- for (var timestamp = self.days.childNodes[0].dateObj.getTime(), i = 0; i < 42; i++, timestamp += self.utils.duration.DAY) {
753
+ var _loop = function _loop(timestamp, i) {
737
754
  var outOfRange = timestamp < self.minRangeDate.getTime() || timestamp > self.maxRangeDate.getTime();
738
755
 
739
756
  if (outOfRange) {
740
757
  self.days.childNodes[i].classList.add("notAllowed");
741
- self.days.childNodes[i].classList.remove("inRange", "startRange", "endRange");
742
- continue;
743
- } else if (containsDisabled && !outOfRange) continue;
758
+ ["inRange", "startRange", "endRange"].forEach(function (c) {
759
+ self.days.childNodes[i].classList.remove(c);
760
+ });
761
+ return "continue";
762
+ } else if (containsDisabled && !outOfRange) return "continue";
744
763
 
745
- self.days.childNodes[i].classList.remove("startRange", "inRange", "endRange", "notAllowed");
764
+ ["startRange", "inRange", "endRange", "notAllowed"].forEach(function (c) {
765
+ self.days.childNodes[i].classList.remove(c);
766
+ });
746
767
 
747
768
  var minRangeDate = Math.max(self.minRangeDate.getTime(), rangeStartDate),
748
769
  maxRangeDate = Math.min(self.maxRangeDate.getTime(), rangeEndDate);
@@ -750,6 +771,12 @@ function Flatpickr(element, config) {
750
771
  e.target.classList.add(hoverDate < self.selectedDates[0] ? "startRange" : "endRange");
751
772
 
752
773
  if (initialDate > hoverDate && timestamp === initialDate.getTime()) self.days.childNodes[i].classList.add("endRange");else if (initialDate < hoverDate && timestamp === initialDate.getTime()) self.days.childNodes[i].classList.add("startRange");else if (timestamp > minRangeDate && timestamp < maxRangeDate) self.days.childNodes[i].classList.add("inRange");
774
+ };
775
+
776
+ for (var timestamp = self.days.childNodes[0].dateObj.getTime(), i = 0; i < 42; i++, timestamp += self.utils.duration.DAY) {
777
+ var _ret = _loop(timestamp, i);
778
+
779
+ if (_ret === "continue") continue;
753
780
  }
754
781
  }
755
782
 
@@ -813,6 +840,9 @@ function Flatpickr(element, config) {
813
840
 
814
841
  function parseConfig() {
815
842
  var boolOpts = ["utc", "wrap", "weekNumbers", "allowInput", "clickOpens", "time_24hr", "enableTime", "noCalendar", "altInput", "shorthandCurrentMonth", "inline", "static", "enableSeconds", "disableMobile"];
843
+
844
+ var hooks = ["onChange", "onClose", "onDayCreate", "onOpen", "onReady", "onValueUpdate"];
845
+
816
846
  self.config = Object.create(Flatpickr.defaultConfig);
817
847
 
818
848
  Object.defineProperty(self.config, "minDate", {
@@ -835,6 +865,8 @@ function Flatpickr(element, config) {
835
865
 
836
866
  for (var i = 0; i < boolOpts.length; i++) {
837
867
  self.config[boolOpts[i]] = self.config[boolOpts[i]] === true || self.config[boolOpts[i]] === "true";
868
+ }for (var _i = 0; _i < hooks.length; _i++) {
869
+ self.config[hooks[_i]] = arrayify(self.config[hooks[_i]]);
838
870
  }if (!userConfig.dateFormat && userConfig.enableTime) {
839
871
  self.config.dateFormat = self.config.noCalendar ? "H:i" + (self.config.enableSeconds ? ":S" : "") : Flatpickr.defaultConfig.dateFormat + " H:i" + (self.config.enableSeconds ? ":S" : "");
840
872
  }
@@ -842,6 +874,13 @@ function Flatpickr(element, config) {
842
874
  if (userConfig.altInput && userConfig.enableTime && !userConfig.altFormat) {
843
875
  self.config.altFormat = self.config.noCalendar ? "h:i" + (self.config.enableSeconds ? ":S K" : " K") : Flatpickr.defaultConfig.altFormat + (" h:i" + (self.config.enableSeconds ? ":S" : "") + " K");
844
876
  }
877
+
878
+ for (var _i2 = 0; _i2 < self.config.plugins.length; _i2++) {
879
+ var pluginConf = self.config.plugins[_i2](self) || {};
880
+ for (var key in pluginConf) {
881
+ if (Array.isArray(self.config[key])) self.config[key] = arrayify(pluginConf[key]).concat(self.config[key]);else if (userConfig[key] !== undefined) self.config[key] = pluginConf[key];
882
+ }
883
+ }
845
884
  }
846
885
 
847
886
  function setupLocale() {
@@ -857,37 +896,32 @@ function Flatpickr(element, config) {
857
896
  calendarWidth = self.calendarContainer.offsetWidth,
858
897
  input = self.altInput || self.input,
859
898
  inputBounds = input.getBoundingClientRect(),
860
- distanceFromBottom = window.innerHeight - inputBounds.bottom + input.offsetHeight;
899
+ distanceFromBottom = window.innerHeight - inputBounds.bottom + input.offsetHeight,
900
+ bottomCalendar = distanceFromBottom < calendarHeight + 60;
861
901
 
862
- var top = void 0;
902
+ var top = window.pageYOffset + inputBounds.top + (!bottomCalendar ? input.offsetHeight + 2 : -calendarHeight - 2);
863
903
 
864
- if (distanceFromBottom < calendarHeight + 60) {
865
- top = window.pageYOffset - calendarHeight + inputBounds.top - 2;
866
- self.calendarContainer.classList.remove("arrowTop");
867
- self.calendarContainer.classList.add("arrowBottom");
868
- } else {
869
- top = window.pageYOffset + input.offsetHeight + inputBounds.top + 2;
870
- self.calendarContainer.classList.remove("arrowBottom");
871
- self.calendarContainer.classList.add("arrowTop");
872
- }
904
+ toggleClass(self.calendarContainer, "arrowTop", !bottomCalendar);
905
+ toggleClass(self.calendarContainer, "arrowBottom", bottomCalendar);
873
906
 
874
- if (!self.config.static && !self.config.inline) {
875
- self.calendarContainer.style.top = top + "px";
907
+ if (self.config.inline) return;
876
908
 
877
- var left = window.pageXOffset + inputBounds.left;
878
- var right = window.document.body.offsetWidth - inputBounds.right;
909
+ var left = window.pageXOffset + inputBounds.left;
910
+ var right = window.document.body.offsetWidth - inputBounds.right;
911
+ var rightMost = left + calendarWidth > window.document.body.offsetWidth;
879
912
 
880
- if (left + calendarWidth <= window.document.body.offsetWidth) {
881
- self.calendarContainer.style.left = left + "px";
882
- self.calendarContainer.style.right = "auto";
913
+ toggleClass(self.calendarContainer, "rightMost", rightMost);
883
914
 
884
- self.calendarContainer.classList.remove("rightMost");
885
- } else {
886
- self.calendarContainer.style.left = "auto";
887
- self.calendarContainer.style.right = right + "px";
915
+ if (self.config.static) return;
888
916
 
889
- self.calendarContainer.classList.add("rightMost");
890
- }
917
+ self.calendarContainer.style.top = top + "px";
918
+
919
+ if (!rightMost) {
920
+ self.calendarContainer.style.left = left + "px";
921
+ self.calendarContainer.style.right = "auto";
922
+ } else {
923
+ self.calendarContainer.style.left = "auto";
924
+ self.calendarContainer.style.right = right + "px";
891
925
  }
892
926
  }
893
927
 
@@ -939,7 +973,19 @@ function Flatpickr(element, config) {
939
973
  return self.dateIsPicked = true;
940
974
  }, 50);
941
975
 
942
- if (self.config.mode === "range" && self.selectedDates.length === 1) onMouseOver(e);
976
+ if (self.config.mode === "range") {
977
+ if (self.selectedDates.length === 1) {
978
+ onMouseOver(e);
979
+
980
+ if (self.maxRangeDate < self.days.childNodes[41].dateObj) self.nextMonthNav.style.display = "none";
981
+
982
+ if (self.minRangeDate > self.days.childNodes[0].dateObj) self.prevMonthNav.style.display = "none";
983
+ } else {
984
+ self.nextMonthNav.style.display = "block";
985
+ self.prevMonthNav.style.display = "block";
986
+ updateNavigationCurrentMonth();
987
+ }
988
+ }
943
989
 
944
990
  if (self.config.mode === "single" && !self.config.enableTime) self.close();
945
991
 
@@ -953,7 +999,7 @@ function Flatpickr(element, config) {
953
999
  }
954
1000
 
955
1001
  function setSelectedDate(inputDate) {
956
- if (Array.isArray(inputDate)) self.selectedDates = inputDate.map(self.parseDate);else if (inputDate) {
1002
+ if (Array.isArray(inputDate)) self.selectedDates = inputDate.map(self.parseDate);else if (inputDate instanceof Date || !isNaN(inputDate)) self.selectedDates = [self.parseDate(inputDate)];else if (inputDate && inputDate.substring) {
957
1003
  switch (self.config.mode) {
958
1004
  case "single":
959
1005
  self.selectedDates = [self.parseDate(inputDate)];
@@ -965,6 +1011,7 @@ function Flatpickr(element, config) {
965
1011
 
966
1012
  case "range":
967
1013
  self.selectedDates = inputDate.split(self.l10n.rangeSeparator).map(self.parseDate);
1014
+
968
1015
  break;
969
1016
 
970
1017
  default:
@@ -1169,6 +1216,7 @@ function Flatpickr(element, config) {
1169
1216
  function setupInputs() {
1170
1217
  self.input = self.config.wrap ? self.element.querySelector("[data-input]") : self.element;
1171
1218
 
1219
+ /* istanbul ignore next */
1172
1220
  if (!self.input) return console.warn("Error: invalid input element specified", self.input);
1173
1221
 
1174
1222
  self.input._type = self.input.type;
@@ -1229,9 +1277,9 @@ function Flatpickr(element, config) {
1229
1277
  }
1230
1278
 
1231
1279
  function triggerEvent(event, data) {
1232
- if (self.config["on" + event]) {
1233
- var hooks = Array.isArray(self.config["on" + event]) ? self.config["on" + event] : [self.config["on" + event]];
1280
+ var hooks = self.config["on" + event];
1234
1281
 
1282
+ if (hooks) {
1235
1283
  for (var i = 0; i < hooks.length; i++) {
1236
1284
  hooks[i](self.selectedDates, self.input.value, self, data);
1237
1285
  }
@@ -1243,11 +1291,14 @@ function Flatpickr(element, config) {
1243
1291
 
1244
1292
  // many front-end frameworks bind to the input event
1245
1293
  self.input.dispatchEvent(new Event("input", { "bubbles": true }));
1246
- } else {
1247
- if (window.document.createEvent !== undefined) return self.input.dispatchEvent(self.changeEvent);
1248
-
1249
- self.input.fireEvent("onchange");
1250
1294
  }
1295
+
1296
+ /* istanbul ignore next */
1297
+ else {
1298
+ if (window.document.createEvent !== undefined) return self.input.dispatchEvent(self.changeEvent);
1299
+
1300
+ self.input.fireEvent("onchange");
1301
+ }
1251
1302
  }
1252
1303
  }
1253
1304
 
@@ -1327,6 +1378,16 @@ function Flatpickr(element, config) {
1327
1378
  return e;
1328
1379
  }
1329
1380
 
1381
+ function arrayify(obj) {
1382
+ if (Array.isArray(obj)) return obj;
1383
+ return [obj];
1384
+ }
1385
+
1386
+ function toggleClass(elem, className, bool) {
1387
+ if (bool) return elem.classList.add(className);
1388
+ elem.classList.remove(className);
1389
+ }
1390
+
1330
1391
  /* istanbul ignore next */
1331
1392
  function debounce(func, wait, immediate) {
1332
1393
  var timeout = void 0;
@@ -1373,15 +1434,7 @@ function Flatpickr(element, config) {
1373
1434
 
1374
1435
  var newValue = Number(curValue);
1375
1436
 
1376
- switch (e.type) {
1377
- case "wheel":
1378
- newValue = curValue + step * delta;
1379
- break;
1380
-
1381
- case "keydown":
1382
- newValue = curValue + step * (e.which === 38 ? 1 : -1);
1383
- break;
1384
- }
1437
+ if (e.type === "wheel") newValue = curValue + step * delta;
1385
1438
 
1386
1439
  if (e.type !== "input" || e.target.value.length === 2) {
1387
1440
  if (newValue < min) {
@@ -1516,21 +1569,23 @@ Flatpickr.defaultConfig = {
1516
1569
  // default locale
1517
1570
  locale: "default",
1518
1571
 
1572
+ plugins: [],
1573
+
1519
1574
  // onChange callback when user selects a date or time
1520
- onChange: null, // function (dateObj, dateStr) {}
1575
+ onChange: [], // function (dateObj, dateStr) {}
1521
1576
 
1522
1577
  // called every time calendar is opened
1523
- onOpen: null, // function (dateObj, dateStr) {}
1578
+ onOpen: [], // function (dateObj, dateStr) {}
1524
1579
 
1525
1580
  // called every time calendar is closed
1526
- onClose: null, // function (dateObj, dateStr) {}
1581
+ onClose: [], // function (dateObj, dateStr) {}
1527
1582
 
1528
1583
  // called after calendar is ready
1529
- onReady: null, // function (dateObj, dateStr) {}
1584
+ onReady: [], // function (dateObj, dateStr) {}
1530
1585
 
1531
- onValueUpdate: null,
1586
+ onValueUpdate: [],
1532
1587
 
1533
- onDayCreate: null
1588
+ onDayCreate: []
1534
1589
  };
1535
1590
 
1536
1591
  /* istanbul ignore next */
@@ -1610,6 +1665,7 @@ Flatpickr.prototype = {
1610
1665
  date = new Date(date);
1611
1666
  } else if (date instanceof Date) date = new Date(date.getTime()); // create a copy
1612
1667
 
1668
+ /* istanbul ignore next */
1613
1669
  if (!(date instanceof Date)) {
1614
1670
  console.warn("flatpickr: invalid date " + date_orig);
1615
1671
  console.info(this.element);
@@ -1624,6 +1680,7 @@ Flatpickr.prototype = {
1624
1680
  }
1625
1681
  };
1626
1682
 
1683
+ /* istanbul ignore next */
1627
1684
  function _flatpickr(nodeList, config) {
1628
1685
  var nodes = Array.prototype.slice.call(nodeList); // static list
1629
1686
  var instances = [];
@@ -1639,6 +1696,7 @@ function _flatpickr(nodeList, config) {
1639
1696
  return instances.length === 1 ? instances[0] : instances;
1640
1697
  }
1641
1698
 
1699
+ /* istanbul ignore next */
1642
1700
  if (typeof HTMLElement !== "undefined") {
1643
1701
  // browser env
1644
1702
  HTMLCollection.prototype.flatpickr = NodeList.prototype.flatpickr = function (config) {
@@ -1650,10 +1708,12 @@ if (typeof HTMLElement !== "undefined") {
1650
1708
  };
1651
1709
  }
1652
1710
 
1711
+ /* istanbul ignore next */
1653
1712
  function flatpickr(selector, config) {
1654
1713
  return _flatpickr(window.document.querySelectorAll(selector), config);
1655
1714
  }
1656
1715
 
1716
+ /* istanbul ignore next */
1657
1717
  if (typeof jQuery !== "undefined") {
1658
1718
  jQuery.fn.flatpickr = function (config) {
1659
1719
  return _flatpickr(this, config);