{"version":3,"names":[],"mappings":"","sources":["datetime-picker.js"],"sourcesContent":["export function dateTimePicker() {\n /* flatpickr v4.6.9,, @license MIT */ ! function(e, t) {\n \"object\" == typeof exports && \"undefined\" != typeof module ? module.exports = t() : \"function\" == typeof define && define.amd ? define(t) : (e = \"undefined\" != typeof globalThis ? globalThis : e || self).flatpickr = t()\n }(this, (function() {\n \"use strict\";\n var e = function() {\n return (e = Object.assign || function(e) {\n for (var t, n = 1, a = arguments.length; n < a; n++)\n for (var i in t = arguments[n]) Object.prototype.hasOwnProperty.call(t, i) && (e[i] = t[i]);\n return e\n }).apply(this, arguments)\n };\n\n function t() {\n for (var e = 0, t = 0, n = arguments.length; t < n; t++) e += arguments[t].length;\n var a = Array(e),\n i = 0;\n for (t = 0; t < n; t++)\n for (var o = arguments[t], r = 0, l = o.length; r < l; r++, i++) a[i] = o[r];\n return a\n }\n var n = [\"onChange\", \"onClose\", \"onDayCreate\", \"onDestroy\", \"onKeyDown\", \"onMonthChange\", \"onOpen\", \"onParseConfig\", \"onReady\", \"onValueUpdate\", \"onYearChange\", \"onPreCalendarPosition\"],\n a = {\n _disable: [],\n allowInput: !1,\n allowInvalidPreload: !1,\n altFormat: \"F j, Y\",\n altInput: !1,\n altInputClass: \"form-control input\",\n animate: \"object\" == typeof window && -1 === window.navigator.userAgent.indexOf(\"MSIE\"),\n ariaDateFormat: \"F j, Y\",\n autoFillDefaultTime: !0,\n clickOpens: !0,\n closeOnSelect: !0,\n conjunction: \", \",\n dateFormat: \"Y-m-d\",\n defaultHour: 12,\n defaultMinute: 0,\n defaultSeconds: 0,\n disable: [],\n disableMobile: !1,\n enableSeconds: !1,\n enableTime: !1,\n errorHandler: function(e) {\n return \"undefined\" != typeof console && console.warn(e)\n },\n getWeek: function(e) {\n var t = new Date(e.getTime());\n t.setHours(0, 0, 0, 0), t.setDate(t.getDate() + 3 - (t.getDay() + 6) % 7);\n var n = new Date(t.getFullYear(), 0, 4);\n return 1 + Math.round(((t.getTime() - n.getTime()) / 864e5 - 3 + (n.getDay() + 6) % 7) / 7)\n },\n hourIncrement: 1,\n ignoredFocusElements: [],\n inline: !1,\n locale: \"default\",\n minuteIncrement: 5,\n mode: \"single\",\n monthSelectorType: \"dropdown\",\n nextArrow: \"\",\n noCalendar: !1,\n now: new Date,\n onChange: [],\n onClose: [],\n onDayCreate: [],\n onDestroy: [],\n onKeyDown: [],\n onMonthChange: [],\n onOpen: [],\n onParseConfig: [],\n onReady: [],\n onValueUpdate: [],\n onYearChange: [],\n onPreCalendarPosition: [],\n plugins: [],\n position: \"auto\",\n positionElement: void 0,\n prevArrow: \"\",\n shorthandCurrentMonth: !1,\n showMonths: 1,\n static: !1,\n time_24hr: !1,\n weekNumbers: !1,\n wrap: !1\n },\n i = {\n weekdays: {\n shorthand: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n longhand: [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"]\n },\n months: {\n shorthand: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"],\n longhand: [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"]\n },\n daysInMonth: [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31],\n firstDayOfWeek: 0,\n ordinal: function(e) {\n var t = e % 100;\n if (t > 3 && t < 21) return \"th\";\n switch (t % 10) {\n case 1:\n return \"st\";\n case 2:\n return \"nd\";\n case 3:\n return \"rd\";\n default:\n return \"th\"\n }\n },\n rangeSeparator: \" to \",\n weekAbbreviation: \"Wk\",\n scrollTitle: \"Scroll to increment\",\n toggleTitle: \"Click to toggle\",\n amPM: [\"AM\", \"PM\"],\n yearAriaLabel: \"Year\",\n monthAriaLabel: \"Month\",\n hourAriaLabel: \"Hour\",\n minuteAriaLabel: \"Minute\",\n time_24hr: !1\n },\n o = function(e, t) {\n return void 0 === t && (t = 2), (\"000\" + e).slice(-1 * t)\n },\n r = function(e) {\n return !0 === e ? 1 : 0\n };\n\n function l(e, t) {\n var n;\n return function() {\n var a = this;\n clearTimeout(n), n = setTimeout((function() {\n return e.apply(a, arguments)\n }), t)\n }\n }\n var c = function(e) {\n return e instanceof Array ? e : [e]\n };\n\n function d(e, t, n) {\n if (!0 === n) return e.classList.add(t);\n e.classList.remove(t)\n }\n\n function s(e, t, n) {\n var a = window.document.createElement(e);\n return t = t || \"\", n = n || \"\", a.className = t, void 0 !== n && (a.textContent = n), a\n }\n\n function u(e) {\n for (; e.firstChild;) e.removeChild(e.firstChild)\n }\n\n function f(e, t) {\n return t(e) ? e : e.parentNode ? f(e.parentNode, t) : void 0\n }\n\n function m(e, t) {\n var n = s(\"div\", \"numInputWrapper\"),\n a = s(\"input\", \"numInput \" + e),\n i = s(\"span\", \"arrowUp\"),\n o = s(\"span\", \"arrowDown\");\n if (-1 === navigator.userAgent.indexOf(\"MSIE 9.0\") ? a.type = \"number\" : (a.type = \"text\", a.pattern = \"\\\\d*\"), void 0 !== t)\n for (var r in t) a.setAttribute(r, t[r]);\n return n.appendChild(a), n.appendChild(i), n.appendChild(o), n\n }\n\n function g(e) {\n try {\n return \"function\" == typeof e.composedPath ? e.composedPath()[0] : e.target\n } catch (t) {\n return e.target\n }\n }\n var p = function() {},\n h = function(e, t, n) {\n return n.months[t ? \"shorthand\" : \"longhand\"][e]\n },\n v = {\n D: p,\n F: function(e, t, n) {\n e.setMonth(n.months.longhand.indexOf(t))\n },\n G: function(e, t) {\n e.setHours(parseFloat(t))\n },\n H: function(e, t) {\n e.setHours(parseFloat(t))\n },\n J: function(e, t) {\n e.setDate(parseFloat(t))\n },\n K: function(e, t, n) {\n e.setHours(e.getHours() % 12 + 12 * r(new RegExp(n.amPM[1], \"i\").test(t)))\n },\n M: function(e, t, n) {\n e.setMonth(n.months.shorthand.indexOf(t))\n },\n S: function(e, t) {\n e.setSeconds(parseFloat(t))\n },\n U: function(e, t) {\n return new Date(1e3 * parseFloat(t))\n },\n W: function(e, t, n) {\n var a = parseInt(t),\n i = new Date(e.getFullYear(), 0, 2 + 7 * (a - 1), 0, 0, 0, 0);\n return i.setDate(i.getDate() - i.getDay() + n.firstDayOfWeek), i\n },\n Y: function(e, t) {\n e.setFullYear(parseFloat(t))\n },\n Z: function(e, t) {\n return new Date(t)\n },\n d: function(e, t) {\n e.setDate(parseFloat(t))\n },\n h: function(e, t) {\n e.setHours(parseFloat(t))\n },\n i: function(e, t) {\n e.setMinutes(parseFloat(t))\n },\n j: function(e, t) {\n e.setDate(parseFloat(t))\n },\n l: p,\n m: function(e, t) {\n e.setMonth(parseFloat(t) - 1)\n },\n n: function(e, t) {\n e.setMonth(parseFloat(t) - 1)\n },\n s: function(e, t) {\n e.setSeconds(parseFloat(t))\n },\n u: function(e, t) {\n return new Date(parseFloat(t))\n },\n w: p,\n y: function(e, t) {\n e.setFullYear(2e3 + parseFloat(t))\n }\n },\n D = {\n D: \"(\\\\w+)\",\n F: \"(\\\\w+)\",\n G: \"(\\\\d\\\\d|\\\\d)\",\n H: \"(\\\\d\\\\d|\\\\d)\",\n J: \"(\\\\d\\\\d|\\\\d)\\\\w+\",\n K: \"\",\n M: \"(\\\\w+)\",\n S: \"(\\\\d\\\\d|\\\\d)\",\n U: \"(.+)\",\n W: \"(\\\\d\\\\d|\\\\d)\",\n Y: \"(\\\\d{4})\",\n Z: \"(.+)\",\n d: \"(\\\\d\\\\d|\\\\d)\",\n h: \"(\\\\d\\\\d|\\\\d)\",\n i: \"(\\\\d\\\\d|\\\\d)\",\n j: \"(\\\\d\\\\d|\\\\d)\",\n l: \"(\\\\w+)\",\n m: \"(\\\\d\\\\d|\\\\d)\",\n n: \"(\\\\d\\\\d|\\\\d)\",\n s: \"(\\\\d\\\\d|\\\\d)\",\n u: \"(.+)\",\n w: \"(\\\\d\\\\d|\\\\d)\",\n y: \"(\\\\d{2})\"\n },\n w = {\n Z: function(e) {\n return e.toISOString()\n },\n D: function(e, t, n) {\n return t.weekdays.shorthand[w.w(e, t, n)]\n },\n F: function(e, t, n) {\n return h(w.n(e, t, n) - 1, !1, t)\n },\n G: function(e, t, n) {\n return o(w.h(e, t, n))\n },\n H: function(e) {\n return o(e.getHours())\n },\n J: function(e, t) {\n return void 0 !== t.ordinal ? e.getDate() + t.ordinal(e.getDate()) : e.getDate()\n },\n K: function(e, t) {\n return t.amPM[r(e.getHours() > 11)]\n },\n M: function(e, t) {\n return h(e.getMonth(), !0, t)\n },\n S: function(e) {\n return o(e.getSeconds())\n },\n U: function(e) {\n return e.getTime() / 1e3\n },\n W: function(e, t, n) {\n return n.getWeek(e)\n },\n Y: function(e) {\n return o(e.getFullYear(), 4)\n },\n d: function(e) {\n return o(e.getDate())\n },\n h: function(e) {\n return e.getHours() % 12 ? e.getHours() % 12 : 12\n },\n i: function(e) {\n return o(e.getMinutes())\n },\n j: function(e) {\n return e.getDate()\n },\n l: function(e, t) {\n return t.weekdays.longhand[e.getDay()]\n },\n m: function(e) {\n return o(e.getMonth() + 1)\n },\n n: function(e) {\n return e.getMonth() + 1\n },\n s: function(e) {\n return e.getSeconds()\n },\n u: function(e) {\n return e.getTime()\n },\n w: function(e) {\n return e.getDay()\n },\n y: function(e) {\n return String(e.getFullYear()).substring(2)\n }\n },\n b = function(e) {\n var t = e.config,\n n = void 0 === t ? a : t,\n o = e.l10n,\n r = void 0 === o ? i : o,\n l = e.isMobile,\n c = void 0 !== l && l;\n return function(e, t, a) {\n var i = a || r;\n return void 0 === n.formatDate || c ? t.split(\"\").map((function(t, a, o) {\n return w[t] && \"\\\\\" !== o[a - 1] ? w[t](e, i, n) : \"\\\\\" !== t ? t : \"\"\n })).join(\"\") : n.formatDate(e, t, i)\n }\n },\n C = function(e) {\n var t = e.config,\n n = void 0 === t ? a : t,\n o = e.l10n,\n r = void 0 === o ? i : o;\n return function(e, t, i, o) {\n if (0 === e || e) {\n var l, c = o || r,\n d = e;\n if (e instanceof Date) l = new Date(e.getTime());\n else if (\"string\" != typeof e && void 0 !== e.toFixed) l = new Date(e);\n else if (\"string\" == typeof e) {\n var s = t || (n || a).dateFormat,\n u = String(e).trim();\n if (\"today\" === u) l = new Date, i = !0;\n else if (/Z$/.test(u) || /GMT$/.test(u)) l = new Date(e);\n else if (n && n.parseDate) l = n.parseDate(e, s);\n else {\n l = n && n.noCalendar ? new Date((new Date).setHours(0, 0, 0, 0)) : new Date((new Date).getFullYear(), 0, 1, 0, 0, 0, 0);\n for (var f = void 0, m = [], g = 0, p = 0, h = \"\"; g < s.length; g++) {\n var w = s[g],\n b = \"\\\\\" === w,\n C = \"\\\\\" === s[g - 1] || b;\n if (D[w] && !C) {\n h += D[w];\n var M = new RegExp(h).exec(e);\n M && (f = !0) && m[\"Y\" !== w ? \"push\" : \"unshift\"]({\n fn: v[w],\n val: M[++p]\n })\n } else b || (h += \".\");\n m.forEach((function(e) {\n var t = e.fn,\n n = e.val;\n return l = t(l, n, c) || l\n }))\n }\n l = f ? l : void 0\n }\n }\n if (l instanceof Date && !isNaN(l.getTime())) return !0 === i && l.setHours(0, 0, 0, 0), l;\n n.errorHandler(new Error(\"Invalid date provided: \" + d))\n }\n }\n };\n\n function M(e, t, n) {\n return void 0 === n && (n = !0), !1 !== n ? new Date(e.getTime()).setHours(0, 0, 0, 0) - new Date(t.getTime()).setHours(0, 0, 0, 0) : e.getTime() - t.getTime()\n }\n var y = 864e5;\n\n function x(e) {\n var t = e.defaultHour,\n n = e.defaultMinute,\n a = e.defaultSeconds;\n if (void 0 !== e.minDate) {\n var i = e.minDate.getHours(),\n o = e.minDate.getMinutes(),\n r = e.minDate.getSeconds();\n t < i && (t = i), t === i && n < o && (n = o), t === i && n === o && a < r && (a = e.minDate.getSeconds())\n }\n if (void 0 !== e.maxDate) {\n var l = e.maxDate.getHours(),\n c = e.maxDate.getMinutes();\n (t = Math.min(t, l)) === l && (n = Math.min(c, n)), t === l && n === c && (a = e.maxDate.getSeconds())\n }\n return {\n hours: t,\n minutes: n,\n seconds: a\n }\n }\n \"function\" != typeof Object.assign && (Object.assign = function(e) {\n for (var t = [], n = 1; n < arguments.length; n++) t[n - 1] = arguments[n];\n if (!e) throw TypeError(\"Cannot convert undefined or null to object\");\n for (var a = function(t) {\n t && Object.keys(t).forEach((function(n) {\n return e[n] = t[n]\n }))\n }, i = 0, o = t; i < o.length; i++) {\n var r = o[i];\n a(r)\n }\n return e\n });\n\n function E(p, v) {\n var w = {\n config: e(e({}, a), T.defaultConfig),\n l10n: i\n };\n\n function E(e) {\n return e.bind(w)\n }\n\n function k() {\n var e = w.config;\n !1 === e.weekNumbers && 1 === e.showMonths || !0 !== e.noCalendar && window.requestAnimationFrame((function() {\n if (void 0 !== w.calendarContainer && (w.calendarContainer.style.visibility = \"hidden\", w.calendarContainer.style.display = \"block\"), void 0 !== w.daysContainer) {\n var t = (w.days.offsetWidth + 1) * e.showMonths;\n w.daysContainer.style.width = t + \"px\", w.calendarContainer.style.width = t + (void 0 !== w.weekWrapper ? w.weekWrapper.offsetWidth : 0) + \"px\", w.calendarContainer.style.removeProperty(\"visibility\"), w.calendarContainer.style.removeProperty(\"display\")\n }\n }))\n }\n\n function I(e) {\n if (0 === w.selectedDates.length) {\n var t = void 0 === w.config.minDate || M(new Date, w.config.minDate) >= 0 ? new Date : new Date(w.config.minDate.getTime()),\n n = x(w.config);\n t.setHours(n.hours, n.minutes, n.seconds, t.getMilliseconds()), w.selectedDates = [t], w.latestSelectedDateObj = t\n }\n void 0 !== e && \"blur\" !== e.type && function(e) {\n e.preventDefault();\n var t = \"keydown\" === e.type,\n n = g(e),\n a = n;\n void 0 !== w.amPM && n === w.amPM && (w.amPM.textContent = w.l10n.amPM[r(w.amPM.textContent === w.l10n.amPM[0])]);\n var i = parseFloat(a.getAttribute(\"min\")),\n l = parseFloat(a.getAttribute(\"max\")),\n c = parseFloat(a.getAttribute(\"step\")),\n d = parseInt(a.value, 10),\n s = e.delta || (t ? 38 === e.which ? 1 : -1 : 0),\n u = d + c * s;\n if (void 0 !== a.value && 2 === a.value.length) {\n var f = a === w.hourElement,\n m = a === w.minuteElement;\n u < i ? (u = l + u + r(!f) + (r(f) && r(!w.amPM)), m && j(void 0, -1, w.hourElement)) : u > l && (u = a === w.hourElement ? u - l - r(!w.amPM) : i, m && j(void 0, 1, w.hourElement)), w.amPM && f && (1 === c ? u + d === 23 : Math.abs(u - d) > c) && (w.amPM.textContent = w.l10n.amPM[r(w.amPM.textContent === w.l10n.amPM[0])]), a.value = o(u)\n }\n }(e);\n var a = w._input.value;\n S(), be(), w._input.value !== a && w._debouncedChange()\n }\n\n function S() {\n if (void 0 !== w.hourElement && void 0 !== w.minuteElement) {\n var e, t, n = (parseInt(w.hourElement.value.slice(-2), 10) || 0) % 24,\n a = (parseInt(w.minuteElement.value, 10) || 0) % 60,\n i = void 0 !== w.secondElement ? (parseInt(w.secondElement.value, 10) || 0) % 60 : 0;\n void 0 !== w.amPM && (e = n, t = w.amPM.textContent, n = e % 12 + 12 * r(t === w.l10n.amPM[1]));\n var o = void 0 !== w.config.minTime || w.config.minDate && w.minDateHasTime && w.latestSelectedDateObj && 0 === M(w.latestSelectedDateObj, w.config.minDate, !0);\n if (void 0 !== w.config.maxTime || w.config.maxDate && w.maxDateHasTime && w.latestSelectedDateObj && 0 === M(w.latestSelectedDateObj, w.config.maxDate, !0)) {\n var l = void 0 !== w.config.maxTime ? w.config.maxTime : w.config.maxDate;\n (n = Math.min(n, l.getHours())) === l.getHours() && (a = Math.min(a, l.getMinutes())), a === l.getMinutes() && (i = Math.min(i, l.getSeconds()))\n }\n if (o) {\n var c = void 0 !== w.config.minTime ? w.config.minTime : w.config.minDate;\n (n = Math.max(n, c.getHours())) === c.getHours() && a < c.getMinutes() && (a = c.getMinutes()), a === c.getMinutes() && (i = Math.max(i, c.getSeconds()))\n }\n O(n, a, i)\n }\n }\n\n function _(e) {\n var t = e || w.latestSelectedDateObj;\n t && O(t.getHours(), t.getMinutes(), t.getSeconds())\n }\n\n function O(e, t, n) {\n void 0 !== w.latestSelectedDateObj && w.latestSelectedDateObj.setHours(e % 24, t, n || 0, 0), w.hourElement && w.minuteElement && !w.isMobile && (w.hourElement.value = o(w.config.time_24hr ? e : (12 + e) % 12 + 12 * r(e % 12 == 0)), w.minuteElement.value = o(t), void 0 !== w.amPM && (w.amPM.textContent = w.l10n.amPM[r(e >= 12)]), void 0 !== w.secondElement && (w.secondElement.value = o(n)))\n }\n\n function F(e) {\n var t = g(e),\n n = parseInt(t.value) + (e.delta || 0);\n (n / 1e3 > 1 || \"Enter\" === e.key && !/[^\\d]/.test(n.toString())) && Q(n)\n }\n\n function A(e, t, n, a) {\n return t instanceof Array ? t.forEach((function(t) {\n return A(e, t, n, a)\n })) : e instanceof Array ? e.forEach((function(e) {\n return A(e, t, n, a)\n })) : (e.addEventListener(t, n, a), void w._handlers.push({\n remove: function() {\n return e.removeEventListener(t, n)\n }\n }))\n }\n\n function N() {\n pe(\"onChange\")\n }\n\n function P(e, t) {\n var n = void 0 !== e ? w.parseDate(e) : w.latestSelectedDateObj || (w.config.minDate && w.config.minDate > w.now ? w.config.minDate : w.config.maxDate && w.config.maxDate < w.now ? w.config.maxDate : w.now),\n a = w.currentYear,\n i = w.currentMonth;\n try {\n void 0 !== n && (w.currentYear = n.getFullYear(), w.currentMonth = n.getMonth())\n } catch (e) {\n e.message = \"Invalid date supplied: \" + n, w.config.errorHandler(e)\n }\n t && w.currentYear !== a && (pe(\"onYearChange\"), K()), !t || w.currentYear === a && w.currentMonth === i || pe(\"onMonthChange\"), w.redraw()\n }\n\n function Y(e) {\n var t = g(e);\n ~t.className.indexOf(\"arrow\") && j(e, t.classList.contains(\"arrowUp\") ? 1 : -1)\n }\n\n function j(e, t, n) {\n var a = e && g(e),\n i = n || a && a.parentNode && a.parentNode.firstChild,\n o = he(\"increment\");\n o.delta = t, i && i.dispatchEvent(o)\n }\n\n function H(e, t, n, a) {\n var i = X(t, !0),\n o = s(\"span\", \"flatpickr-day \" + e, t.getDate().toString());\n return o.dateObj = t, o.$i = a, o.setAttribute(\"aria-label\", w.formatDate(t, w.config.ariaDateFormat)), -1 === e.indexOf(\"hidden\") && 0 === M(t, w.now) && (w.todayDateElem = o, o.classList.add(\"today\"), o.setAttribute(\"aria-current\", \"date\")), i ? (o.tabIndex = -1, ve(t) && (o.classList.add(\"selected\"), w.selectedDateElem = o, \"range\" === w.config.mode && (d(o, \"startRange\", w.selectedDates[0] && 0 === M(t, w.selectedDates[0], !0)), d(o, \"endRange\", w.selectedDates[1] && 0 === M(t, w.selectedDates[1], !0)), \"nextMonthDay\" === e && o.classList.add(\"inRange\")))) : o.classList.add(\"flatpickr-disabled\"), \"range\" === w.config.mode && function(e) {\n return !(\"range\" !== w.config.mode || w.selectedDates.length < 2) && (M(e, w.selectedDates[0]) >= 0 && M(e, w.selectedDates[1]) <= 0)\n }(t) && !ve(t) && o.classList.add(\"inRange\"), w.weekNumbers && 1 === w.config.showMonths && \"prevMonthDay\" !== e && n % 7 == 1 && w.weekNumbers.insertAdjacentHTML(\"beforeend\", \"\" + w.config.getWeek(t) + \"\"), pe(\"onDayCreate\", o), o\n }\n\n function L(e) {\n e.focus(), \"range\" === w.config.mode && ae(e)\n }\n\n function W(e) {\n for (var t = e > 0 ? 0 : w.config.showMonths - 1, n = e > 0 ? w.config.showMonths : -1, a = t; a != n; a += e)\n for (var i = w.daysContainer.children[a], o = e > 0 ? 0 : i.children.length - 1, r = e > 0 ? i.children.length : -1, l = o; l != r; l += e) {\n var c = i.children[l];\n if (-1 === c.className.indexOf(\"hidden\") && X(c.dateObj)) return c\n }\n }\n\n function R(e, t) {\n var n = ee(document.activeElement || document.body),\n a = void 0 !== e ? e : n ? document.activeElement : void 0 !== w.selectedDateElem && ee(w.selectedDateElem) ? w.selectedDateElem : void 0 !== w.todayDateElem && ee(w.todayDateElem) ? w.todayDateElem : W(t > 0 ? 1 : -1);\n void 0 === a ? w._input.focus() : n ? function(e, t) {\n for (var n = -1 === e.className.indexOf(\"Month\") ? e.dateObj.getMonth() : w.currentMonth, a = t > 0 ? w.config.showMonths : -1, i = t > 0 ? 1 : -1, o = n - w.currentMonth; o != a; o += i)\n for (var r = w.daysContainer.children[o], l = n - w.currentMonth === o ? e.$i + t : t < 0 ? r.children.length - 1 : 0, c = r.children.length, d = l; d >= 0 && d < c && d != (t > 0 ? c : -1); d += i) {\n var s = r.children[d];\n if (-1 === s.className.indexOf(\"hidden\") && X(s.dateObj) && Math.abs(e.$i - d) >= Math.abs(t)) return L(s)\n }\n w.changeMonth(i), R(W(i), 0)\n }(a, t) : L(a)\n }\n\n function B(e, t) {\n for (var n = (new Date(e, t, 1).getDay() - w.l10n.firstDayOfWeek + 7) % 7, a = w.utils.getDaysInMonth((t - 1 + 12) % 12, e), i = w.utils.getDaysInMonth(t, e), o = window.document.createDocumentFragment(), r = w.config.showMonths > 1, l = r ? \"prevMonthDay hidden\" : \"prevMonthDay\", c = r ? \"nextMonthDay hidden\" : \"nextMonthDay\", d = a + 1 - n, u = 0; d <= a; d++, u++) o.appendChild(H(l, new Date(e, t - 1, d), d, u));\n for (d = 1; d <= i; d++, u++) o.appendChild(H(\"\", new Date(e, t, d), d, u));\n for (var f = i + 1; f <= 42 - n && (1 === w.config.showMonths || u % 7 != 0); f++, u++) o.appendChild(H(c, new Date(e, t + 1, f % i), f, u));\n var m = s(\"div\", \"dayContainer\");\n return m.appendChild(o), m\n }\n\n function J() {\n if (void 0 !== w.daysContainer) {\n u(w.daysContainer), w.weekNumbers && u(w.weekNumbers);\n for (var e = document.createDocumentFragment(), t = 0; t < w.config.showMonths; t++) {\n var n = new Date(w.currentYear, w.currentMonth, 1);\n n.setMonth(w.currentMonth + t), e.appendChild(B(n.getFullYear(), n.getMonth()))\n }\n w.daysContainer.appendChild(e), w.days = w.daysContainer.firstChild, \"range\" === w.config.mode && 1 === w.selectedDates.length && ae()\n }\n }\n\n function K() {\n if (!(w.config.showMonths > 1 || \"dropdown\" !== w.config.monthSelectorType)) {\n var e = function(e) {\n return !(void 0 !== w.config.minDate && w.currentYear === w.config.minDate.getFullYear() && e < w.config.minDate.getMonth()) && !(void 0 !== w.config.maxDate && w.currentYear === w.config.maxDate.getFullYear() && e > w.config.maxDate.getMonth())\n };\n w.monthsDropdownContainer.tabIndex = -1, w.monthsDropdownContainer.innerHTML = \"\";\n for (var t = 0; t < 12; t++)\n if (e(t)) {\n var n = s(\"option\", \"flatpickr-monthDropdown-month\");\n n.value = new Date(w.currentYear, t).getMonth().toString(), n.textContent = h(t, w.config.shorthandCurrentMonth, w.l10n), n.tabIndex = -1, w.currentMonth === t && (n.selected = !0), w.monthsDropdownContainer.appendChild(n)\n }\n }\n }\n\n function U() {\n var e, t = s(\"div\", \"flatpickr-month\"),\n n = window.document.createDocumentFragment();\n w.config.showMonths > 1 || \"static\" === w.config.monthSelectorType ? e = s(\"span\", \"cur-month\") : (w.monthsDropdownContainer = s(\"select\", \"flatpickr-monthDropdown-months\"), w.monthsDropdownContainer.setAttribute(\"aria-label\", w.l10n.monthAriaLabel), A(w.monthsDropdownContainer, \"change\", (function(e) {\n var t = g(e),\n n = parseInt(t.value, 10);\n w.changeMonth(n - w.currentMonth), pe(\"onMonthChange\")\n })), K(), e = w.monthsDropdownContainer);\n var a = m(\"cur-year\", {\n tabindex: \"-1\"\n }),\n i = a.getElementsByTagName(\"input\")[0];\n i.setAttribute(\"aria-label\", w.l10n.yearAriaLabel), w.config.minDate && i.setAttribute(\"min\", w.config.minDate.getFullYear().toString()), w.config.maxDate && (i.setAttribute(\"max\", w.config.maxDate.getFullYear().toString()), i.disabled = !!w.config.minDate && w.config.minDate.getFullYear() === w.config.maxDate.getFullYear());\n var o = s(\"div\", \"flatpickr-current-month\");\n return o.appendChild(e), o.appendChild(a), n.appendChild(o), t.appendChild(n), {\n container: t,\n yearElement: i,\n monthElement: e\n }\n }\n\n function q() {\n u(w.monthNav), w.monthNav.appendChild(w.prevMonthNav), w.config.showMonths && (w.yearElements = [], w.monthElements = []);\n for (var e = w.config.showMonths; e--;) {\n var t = U();\n w.yearElements.push(t.yearElement), w.monthElements.push(t.monthElement), w.monthNav.appendChild(t.container)\n }\n w.monthNav.appendChild(w.nextMonthNav)\n }\n\n function $() {\n w.weekdayContainer ? u(w.weekdayContainer) : w.weekdayContainer = s(\"div\", \"flatpickr-weekdays\");\n for (var e = w.config.showMonths; e--;) {\n var t = s(\"div\", \"flatpickr-weekdaycontainer\");\n w.weekdayContainer.appendChild(t)\n }\n return z(), w.weekdayContainer\n }\n\n function z() {\n if (w.weekdayContainer) {\n var e = w.l10n.firstDayOfWeek,\n n = t(w.l10n.weekdays.shorthand);\n e > 0 && e < n.length && (n = t(n.splice(e, n.length), n.splice(0, e)));\n for (var a = w.config.showMonths; a--;) w.weekdayContainer.children[a].innerHTML = \"\\n \\n \" + n.join(\"\") + \"\\n \\n \"\n }\n }\n\n function G(e, t) {\n void 0 === t && (t = !0);\n var n = t ? e : e - w.currentMonth;\n n < 0 && !0 === w._hidePrevMonthArrow || n > 0 && !0 === w._hideNextMonthArrow || (w.currentMonth += n, (w.currentMonth < 0 || w.currentMonth > 11) && (w.currentYear += w.currentMonth > 11 ? 1 : -1, w.currentMonth = (w.currentMonth + 12) % 12, pe(\"onYearChange\"), K()), J(), pe(\"onMonthChange\"), De())\n }\n\n function V(e) {\n return !(!w.config.appendTo || !w.config.appendTo.contains(e)) || w.calendarContainer.contains(e)\n }\n\n function Z(e) {\n if (w.isOpen && !w.config.inline) {\n var t = g(e),\n n = V(t),\n a = t === w.input || t === w.altInput || w.element.contains(t) || e.path && e.path.indexOf && (~e.path.indexOf(w.input) || ~e.path.indexOf(w.altInput)),\n i = \"blur\" === e.type ? a && e.relatedTarget && !V(e.relatedTarget) : !a && !n && !V(e.relatedTarget),\n o = !w.config.ignoredFocusElements.some((function(e) {\n return e.contains(t)\n }));\n i && o && (void 0 !== w.timeContainer && void 0 !== w.minuteElement && void 0 !== w.hourElement && \"\" !== w.input.value && void 0 !== w.input.value && I(), w.close(), w.config && \"range\" === w.config.mode && 1 === w.selectedDates.length && (w.clear(!1), w.redraw()))\n }\n }\n\n function Q(e) {\n if (!(!e || w.config.minDate && e < w.config.minDate.getFullYear() || w.config.maxDate && e > w.config.maxDate.getFullYear())) {\n var t = e,\n n = w.currentYear !== t;\n w.currentYear = t || w.currentYear, w.config.maxDate && w.currentYear === w.config.maxDate.getFullYear() ? w.currentMonth = Math.min(w.config.maxDate.getMonth(), w.currentMonth) : w.config.minDate && w.currentYear === w.config.minDate.getFullYear() && (w.currentMonth = Math.max(w.config.minDate.getMonth(), w.currentMonth)), n && (w.redraw(), pe(\"onYearChange\"), K())\n }\n }\n\n function X(e, t) {\n var n;\n void 0 === t && (t = !0);\n var a = w.parseDate(e, void 0, t);\n if (w.config.minDate && a && M(a, w.config.minDate, void 0 !== t ? t : !w.minDateHasTime) < 0 || w.config.maxDate && a && M(a, w.config.maxDate, void 0 !== t ? t : !w.maxDateHasTime) > 0) return !1;\n if (!w.config.enable && 0 === w.config.disable.length) return !0;\n if (void 0 === a) return !1;\n for (var i = !!w.config.enable, o = null !== (n = w.config.enable) && void 0 !== n ? n : w.config.disable, r = 0, l = void 0; r < o.length; r++) {\n if (\"function\" == typeof(l = o[r]) && l(a)) return i;\n if (l instanceof Date && void 0 !== a && l.getTime() === a.getTime()) return i;\n if (\"string\" == typeof l) {\n var c = w.parseDate(l, void 0, !0);\n return c && c.getTime() === a.getTime() ? i : !i\n }\n if (\"object\" == typeof l && void 0 !== a && l.from && l.to && a.getTime() >= l.from.getTime() && a.getTime() <= l.to.getTime()) return i\n }\n return !i\n }\n\n function ee(e) {\n return void 0 !== w.daysContainer && (-1 === e.className.indexOf(\"hidden\") && -1 === e.className.indexOf(\"flatpickr-disabled\") && w.daysContainer.contains(e))\n }\n\n function te(e) {\n !(e.target === w._input) || !(w.selectedDates.length > 0 || w._input.value.length > 0) || e.relatedTarget && V(e.relatedTarget) || w.setDate(w._input.value, !0, e.target === w.altInput ? w.config.altFormat : w.config.dateFormat)\n }\n\n function ne(e) {\n var t = g(e),\n n = w.config.wrap ? p.contains(t) : t === w._input,\n a = w.config.allowInput,\n i = w.isOpen && (!a || !n),\n o = w.config.inline && n && !a;\n if (13 === e.keyCode && n) {\n if (a) return w.setDate(w._input.value, !0, t === w.altInput ? w.config.altFormat : w.config.dateFormat), t.blur();\n w.open()\n } else if (V(t) || i || o) {\n var r = !!w.timeContainer && w.timeContainer.contains(t);\n switch (e.keyCode) {\n case 13:\n r ? (e.preventDefault(), I(), se()) : ue(e);\n break;\n case 27:\n e.preventDefault(), se();\n break;\n case 8:\n case 46:\n n && !w.config.allowInput && (e.preventDefault(), w.clear());\n break;\n case 37:\n case 39:\n if (r || n) w.hourElement && w.hourElement.focus();\n else if (e.preventDefault(), void 0 !== w.daysContainer && (!1 === a || document.activeElement && ee(document.activeElement))) {\n var l = 39 === e.keyCode ? 1 : -1;\n e.ctrlKey ? (e.stopPropagation(), G(l), R(W(1), 0)) : R(void 0, l)\n }\n break;\n case 38:\n case 40:\n e.preventDefault();\n var c = 40 === e.keyCode ? 1 : -1;\n w.daysContainer && void 0 !== t.$i || t === w.input || t === w.altInput ? e.ctrlKey ? (e.stopPropagation(), Q(w.currentYear - c), R(W(1), 0)) : r || R(void 0, 7 * c) : t === w.currentYearElement ? Q(w.currentYear - c) : w.config.enableTime && (!r && w.hourElement && w.hourElement.focus(), I(e), w._debouncedChange());\n break;\n case 9:\n if (r) {\n var d = [w.hourElement, w.minuteElement, w.secondElement, w.amPM].concat(w.pluginElements).filter((function(e) {\n return e\n })),\n s = d.indexOf(t);\n if (-1 !== s) {\n var u = d[s + (e.shiftKey ? -1 : 1)];\n e.preventDefault(), (u || w._input).focus()\n }\n } else !w.config.noCalendar && w.daysContainer && w.daysContainer.contains(t) && e.shiftKey && (e.preventDefault(), w._input.focus())\n }\n }\n if (void 0 !== w.amPM && t === w.amPM) switch (e.key) {\n case w.l10n.amPM[0].charAt(0):\n case w.l10n.amPM[0].charAt(0).toLowerCase():\n w.amPM.textContent = w.l10n.amPM[0], S(), be();\n break;\n case w.l10n.amPM[1].charAt(0):\n case w.l10n.amPM[1].charAt(0).toLowerCase():\n w.amPM.textContent = w.l10n.amPM[1], S(), be()\n }(n || V(t)) && pe(\"onKeyDown\", e)\n }\n\n function ae(e) {\n if (1 === w.selectedDates.length && (!e || e.classList.contains(\"flatpickr-day\") && !e.classList.contains(\"flatpickr-disabled\"))) {\n for (var t = e ? e.dateObj.getTime() : w.days.firstElementChild.dateObj.getTime(), n = w.parseDate(w.selectedDates[0], void 0, !0).getTime(), a = Math.min(t, w.selectedDates[0].getTime()), i = Math.max(t, w.selectedDates[0].getTime()), o = !1, r = 0, l = 0, c = a; c < i; c += y) X(new Date(c), !0) || (o = o || c > a && c < i, c < n && (!r || c > r) ? r = c : c > n && (!l || c < l) && (l = c));\n for (var d = 0; d < w.config.showMonths; d++)\n for (var s = w.daysContainer.children[d], u = function(a, i) {\n var c, d, u, f = s.children[a],\n m = f.dateObj.getTime(),\n g = r > 0 && m < r || l > 0 && m > l;\n return g ? (f.classList.add(\"notAllowed\"), [\"inRange\", \"startRange\", \"endRange\"].forEach((function(e) {\n f.classList.remove(e)\n })), \"continue\") : o && !g ? \"continue\" : ([\"startRange\", \"inRange\", \"endRange\", \"notAllowed\"].forEach((function(e) {\n f.classList.remove(e)\n })), void(void 0 !== e && (e.classList.add(t <= w.selectedDates[0].getTime() ? \"startRange\" : \"endRange\"), n < t && m === n ? f.classList.add(\"startRange\") : n > t && m === n && f.classList.add(\"endRange\"), m >= r && (0 === l || m <= l) && (d = n, u = t, (c = m) > Math.min(d, u) && c < Math.max(d, u)) && f.classList.add(\"inRange\"))))\n }, f = 0, m = s.children.length; f < m; f++) u(f)\n }\n }\n\n function ie() {\n !w.isOpen || w.config.static || w.config.inline || ce()\n }\n\n function oe(e) {\n return function(t) {\n var n = w.config[\"_\" + e + \"Date\"] = w.parseDate(t, w.config.dateFormat),\n a = w.config[\"_\" + (\"min\" === e ? \"max\" : \"min\") + \"Date\"];\n void 0 !== n && (w[\"min\" === e ? \"minDateHasTime\" : \"maxDateHasTime\"] = n.getHours() > 0 || n.getMinutes() > 0 || n.getSeconds() > 0), w.selectedDates && (w.selectedDates = w.selectedDates.filter((function(e) {\n return X(e)\n })), w.selectedDates.length || \"min\" !== e || _(n), be()), w.daysContainer && (de(), void 0 !== n ? w.currentYearElement[e] = n.getFullYear().toString() : w.currentYearElement.removeAttribute(e), w.currentYearElement.disabled = !!a && void 0 !== n && a.getFullYear() === n.getFullYear())\n }\n }\n\n function re() {\n return w.config.wrap ? p.querySelector(\"[data-input]\") : p\n }\n\n function le() {\n \"object\" != typeof w.config.locale && void 0 === T.l10ns[w.config.locale] && w.config.errorHandler(new Error(\"flatpickr: invalid locale \" + w.config.locale)), w.l10n = e(e({}, T.l10ns.default), \"object\" == typeof w.config.locale ? w.config.locale : \"default\" !== w.config.locale ? T.l10ns[w.config.locale] : void 0), D.K = \"(\" + w.l10n.amPM[0] + \"|\" + w.l10n.amPM[1] + \"|\" + w.l10n.amPM[0].toLowerCase() + \"|\" + w.l10n.amPM[1].toLowerCase() + \")\", void 0 === e(e({}, v), JSON.parse(JSON.stringify(p.dataset || {}))).time_24hr && void 0 === T.defaultConfig.time_24hr && (w.config.time_24hr = w.l10n.time_24hr), w.formatDate = b(w), w.parseDate = C({\n config: w.config,\n l10n: w.l10n\n })\n }\n\n function ce(e) {\n if (\"function\" != typeof w.config.position) {\n if (void 0 !== w.calendarContainer) {\n pe(\"onPreCalendarPosition\");\n var t = e || w._positionElement,\n n = Array.prototype.reduce.call(w.calendarContainer.children, (function(e, t) {\n return e + t.offsetHeight\n }), 0),\n a = w.calendarContainer.offsetWidth,\n i = w.config.position.split(\" \"),\n o = i[0],\n r = i.length > 1 ? i[1] : null,\n l = t.getBoundingClientRect(),\n c = window.innerHeight - l.bottom,\n s = \"above\" === o || \"below\" !== o && c < n && l.top > n,\n u = window.pageYOffset + l.top + (s ? -n - 2 : t.offsetHeight + 2);\n if (d(w.calendarContainer, \"arrowTop\", !s), d(w.calendarContainer, \"arrowBottom\", s), !w.config.inline) {\n var f = window.pageXOffset + l.left,\n m = !1,\n g = !1;\n \"center\" === r ? (f -= (a - l.width) / 2, m = !0) : \"right\" === r && (f -= a - l.width, g = !0), d(w.calendarContainer, \"arrowLeft\", !m && !g), d(w.calendarContainer, \"arrowCenter\", m), d(w.calendarContainer, \"arrowRight\", g);\n var p = window.document.body.offsetWidth - (window.pageXOffset + l.right),\n h = f + a > window.document.body.offsetWidth,\n v = p + a > window.document.body.offsetWidth;\n if (d(w.calendarContainer, \"rightMost\", h), !w.config.static)\n if (w.calendarContainer.style.top = u + \"px\", h)\n if (v) {\n var D = function() {\n for (var e = null, t = 0; t < document.styleSheets.length; t++) {\n var n = document.styleSheets[t];\n try {\n n.cssRules\n } catch (e) {\n continue\n }\n e = n;\n break\n }\n return null != e ? e : (a = document.createElement(\"style\"), document.head.appendChild(a), a.sheet);\n var a\n }();\n if (void 0 === D) return;\n var b = window.document.body.offsetWidth,\n C = Math.max(0, b / 2 - a / 2),\n M = D.cssRules.length,\n y = \"{left:\" + l.left + \"px;right:auto;}\";\n d(w.calendarContainer, \"rightMost\", !1), d(w.calendarContainer, \"centerMost\", !0), D.insertRule(\".flatpickr-calendar.centerMost:before,.flatpickr-calendar.centerMost:after\" + y, M), w.calendarContainer.style.left = C + \"px\", w.calendarContainer.style.right = \"auto\"\n } else w.calendarContainer.style.left = \"auto\", w.calendarContainer.style.right = p + \"px\";\n else w.calendarContainer.style.left = f + \"px\", w.calendarContainer.style.right = \"auto\"\n }\n }\n } else w.config.position(w, e)\n }\n\n function de() {\n w.config.noCalendar || w.isMobile || (K(), De(), J())\n }\n\n function se() {\n w._input.focus(), -1 !== window.navigator.userAgent.indexOf(\"MSIE\") || void 0 !== navigator.msMaxTouchPoints ? setTimeout(w.close, 0) : w.close()\n }\n\n function ue(e) {\n e.preventDefault(), e.stopPropagation();\n var t = f(g(e), (function(e) {\n return e.classList && e.classList.contains(\"flatpickr-day\") && !e.classList.contains(\"flatpickr-disabled\") && !e.classList.contains(\"notAllowed\")\n }));\n if (void 0 !== t) {\n var n = t,\n a = w.latestSelectedDateObj = new Date(n.dateObj.getTime()),\n i = (a.getMonth() < w.currentMonth || a.getMonth() > w.currentMonth + w.config.showMonths - 1) && \"range\" !== w.config.mode;\n if (w.selectedDateElem = n, \"single\" === w.config.mode) w.selectedDates = [a];\n else if (\"multiple\" === w.config.mode) {\n var o = ve(a);\n o ? w.selectedDates.splice(parseInt(o), 1) : w.selectedDates.push(a)\n } else \"range\" === w.config.mode && (2 === w.selectedDates.length && w.clear(!1, !1), w.latestSelectedDateObj = a, w.selectedDates.push(a), 0 !== M(a, w.selectedDates[0], !0) && w.selectedDates.sort((function(e, t) {\n return e.getTime() - t.getTime()\n })));\n if (S(), i) {\n var r = w.currentYear !== a.getFullYear();\n w.currentYear = a.getFullYear(), w.currentMonth = a.getMonth(), r && (pe(\"onYearChange\"), K()), pe(\"onMonthChange\")\n }\n if (De(), J(), be(), i || \"range\" === w.config.mode || 1 !== w.config.showMonths ? void 0 !== w.selectedDateElem && void 0 === w.hourElement && w.selectedDateElem && w.selectedDateElem.focus() : L(n), void 0 !== w.hourElement && void 0 !== w.hourElement && w.hourElement.focus(), w.config.closeOnSelect) {\n var l = \"single\" === w.config.mode && !w.config.enableTime,\n c = \"range\" === w.config.mode && 2 === w.selectedDates.length && !w.config.enableTime;\n (l || c) && se()\n }\n N()\n }\n }\n w.parseDate = C({\n config: w.config,\n l10n: w.l10n\n }), w._handlers = [], w.pluginElements = [], w.loadedPlugins = [], w._bind = A, w._setHoursFromDate = _, w._positionCalendar = ce, w.changeMonth = G, w.changeYear = Q, w.clear = function(e, t) {\n void 0 === e && (e = !0);\n void 0 === t && (t = !0);\n w.input.value = \"\", void 0 !== w.altInput && (w.altInput.value = \"\");\n void 0 !== w.mobileInput && (w.mobileInput.value = \"\");\n w.selectedDates = [], w.latestSelectedDateObj = void 0, !0 === t && (w.currentYear = w._initialDate.getFullYear(), w.currentMonth = w._initialDate.getMonth());\n if (!0 === w.config.enableTime) {\n var n = x(w.config),\n a = n.hours,\n i = n.minutes,\n o = n.seconds;\n O(a, i, o)\n }\n w.redraw(), e && pe(\"onChange\")\n }, w.close = function() {\n w.isOpen = !1, w.isMobile || (void 0 !== w.calendarContainer && w.calendarContainer.classList.remove(\"open\"), void 0 !== w._input && w._input.classList.remove(\"active\"));\n pe(\"onClose\")\n }, w._createElement = s, w.destroy = function() {\n void 0 !== w.config && pe(\"onDestroy\");\n for (var e = w._handlers.length; e--;) w._handlers[e].remove();\n if (w._handlers = [], w.mobileInput) w.mobileInput.parentNode && w.mobileInput.parentNode.removeChild(w.mobileInput), w.mobileInput = void 0;\n else if (w.calendarContainer && w.calendarContainer.parentNode)\n if (w.config.static && w.calendarContainer.parentNode) {\n var t = w.calendarContainer.parentNode;\n if (t.lastChild && t.removeChild(t.lastChild), t.parentNode) {\n for (; t.firstChild;) t.parentNode.insertBefore(t.firstChild, t);\n t.parentNode.removeChild(t)\n }\n } else w.calendarContainer.parentNode.removeChild(w.calendarContainer);\n w.altInput && (w.input.type = \"text\", w.altInput.parentNode && w.altInput.parentNode.removeChild(w.altInput), delete w.altInput);\n w.input && (w.input.type = w.input._type, w.input.classList.remove(\"flatpickr-input\"), w.input.removeAttribute(\"readonly\"));\n [\"_showTimeInput\", \"latestSelectedDateObj\", \"_hideNextMonthArrow\", \"_hidePrevMonthArrow\", \"__hideNextMonthArrow\", \"__hidePrevMonthArrow\", \"isMobile\", \"isOpen\", \"selectedDateElem\", \"minDateHasTime\", \"maxDateHasTime\", \"days\", \"daysContainer\", \"_input\", \"_positionElement\", \"innerContainer\", \"rContainer\", \"monthNav\", \"todayDateElem\", \"calendarContainer\", \"weekdayContainer\", \"prevMonthNav\", \"nextMonthNav\", \"monthsDropdownContainer\", \"currentMonthElement\", \"currentYearElement\", \"navigationCurrentMonth\", \"selectedDateElem\", \"config\"].forEach((function(e) {\n try {\n delete w[e]\n } catch (e) {}\n }))\n }, w.isEnabled = X, w.jumpToDate = P, w.open = function(e, t) {\n void 0 === t && (t = w._positionElement);\n if (!0 === w.isMobile) {\n if (e) {\n e.preventDefault();\n var n = g(e);\n n && n.blur()\n }\n return void 0 !== w.mobileInput && (w.mobileInput.focus(), w.mobileInput.click()), void pe(\"onOpen\")\n }\n if (w._input.disabled || w.config.inline) return;\n var a = w.isOpen;\n w.isOpen = !0, a || (w.calendarContainer.classList.add(\"open\"), w._input.classList.add(\"active\"), pe(\"onOpen\"), ce(t));\n !0 === w.config.enableTime && !0 === w.config.noCalendar && (!1 !== w.config.allowInput || void 0 !== e && w.timeContainer.contains(e.relatedTarget) || setTimeout((function() {\n return w.hourElement.select()\n }), 50))\n }, w.redraw = de, w.set = function(e, t) {\n if (null !== e && \"object\" == typeof e)\n for (var a in Object.assign(w.config, e), e) void 0 !== fe[a] && fe[a].forEach((function(e) {\n return e()\n }));\n else w.config[e] = t, void 0 !== fe[e] ? fe[e].forEach((function(e) {\n return e()\n })) : n.indexOf(e) > -1 && (w.config[e] = c(t));\n w.redraw(), be(!0)\n }, w.setDate = function(e, t, n) {\n void 0 === t && (t = !1);\n void 0 === n && (n = w.config.dateFormat);\n if (0 !== e && !e || e instanceof Array && 0 === e.length) return w.clear(t);\n me(e, n), w.latestSelectedDateObj = w.selectedDates[w.selectedDates.length - 1], w.redraw(), P(void 0, t), _(), 0 === w.selectedDates.length && w.clear(!1);\n be(t), t && pe(\"onChange\")\n }, w.toggle = function(e) {\n if (!0 === w.isOpen) return w.close();\n w.open(e)\n };\n var fe = {\n locale: [le, z],\n showMonths: [q, k, $],\n minDate: [P],\n maxDate: [P],\n clickOpens: [function() {\n !0 === w.config.clickOpens ? (A(w._input, \"focus\", w.open), A(w._input, \"click\", w.open)) : (w._input.removeEventListener(\"focus\", w.open), w._input.removeEventListener(\"click\", w.open))\n }]\n };\n\n function me(e, t) {\n var n = [];\n if (e instanceof Array) n = e.map((function(e) {\n return w.parseDate(e, t)\n }));\n else if (e instanceof Date || \"number\" == typeof e) n = [w.parseDate(e, t)];\n else if (\"string\" == typeof e) switch (w.config.mode) {\n case \"single\":\n case \"time\":\n n = [w.parseDate(e, t)];\n break;\n case \"multiple\":\n n = e.split(w.config.conjunction).map((function(e) {\n return w.parseDate(e, t)\n }));\n break;\n case \"range\":\n n = e.split(w.l10n.rangeSeparator).map((function(e) {\n return w.parseDate(e, t)\n }))\n } else w.config.errorHandler(new Error(\"Invalid date supplied: \" + JSON.stringify(e)));\n w.selectedDates = w.config.allowInvalidPreload ? n : n.filter((function(e) {\n return e instanceof Date && X(e, !1)\n })), \"range\" === w.config.mode && w.selectedDates.sort((function(e, t) {\n return e.getTime() - t.getTime()\n }))\n }\n\n function ge(e) {\n return e.slice().map((function(e) {\n return \"string\" == typeof e || \"number\" == typeof e || e instanceof Date ? w.parseDate(e, void 0, !0) : e && \"object\" == typeof e && e.from && e.to ? {\n from: w.parseDate(e.from, void 0),\n to: w.parseDate(e.to, void 0)\n } : e\n })).filter((function(e) {\n return e\n }))\n }\n\n function pe(e, t) {\n if (void 0 !== w.config) {\n var n = w.config[e];\n if (void 0 !== n && n.length > 0)\n for (var a = 0; n[a] && a < n.length; a++) n[a](w.selectedDates, w.input.value, w, t);\n \"onChange\" === e && (w.input.dispatchEvent(he(\"change\")), w.input.dispatchEvent(he(\"input\")))\n }\n }\n\n function he(e) {\n var t = document.createEvent(\"Event\");\n return t.initEvent(e, !0, !0), t\n }\n\n function ve(e) {\n for (var t = 0; t < w.selectedDates.length; t++)\n if (0 === M(w.selectedDates[t], e)) return \"\" + t;\n return !1\n }\n\n function De() {\n w.config.noCalendar || w.isMobile || !w.monthNav || (w.yearElements.forEach((function(e, t) {\n var n = new Date(w.currentYear, w.currentMonth, 1);\n n.setMonth(w.currentMonth + t), w.config.showMonths > 1 || \"static\" === w.config.monthSelectorType ? w.monthElements[t].textContent = h(n.getMonth(), w.config.shorthandCurrentMonth, w.l10n) + \" \" : w.monthsDropdownContainer.value = n.getMonth().toString(), e.value = n.getFullYear().toString()\n })), w._hidePrevMonthArrow = void 0 !== w.config.minDate && (w.currentYear === w.config.minDate.getFullYear() ? w.currentMonth <= w.config.minDate.getMonth() : w.currentYear < w.config.minDate.getFullYear()), w._hideNextMonthArrow = void 0 !== w.config.maxDate && (w.currentYear === w.config.maxDate.getFullYear() ? w.currentMonth + 1 > w.config.maxDate.getMonth() : w.currentYear > w.config.maxDate.getFullYear()))\n }\n\n function we(e) {\n return w.selectedDates.map((function(t) {\n return w.formatDate(t, e)\n })).filter((function(e, t, n) {\n return \"range\" !== w.config.mode || w.config.enableTime || n.indexOf(e) === t\n })).join(\"range\" !== w.config.mode ? w.config.conjunction : w.l10n.rangeSeparator)\n }\n\n function be(e) {\n void 0 === e && (e = !0), void 0 !== w.mobileInput && w.mobileFormatStr && (w.mobileInput.value = void 0 !== w.latestSelectedDateObj ? w.formatDate(w.latestSelectedDateObj, w.mobileFormatStr) : \"\"), w.input.value = we(w.config.dateFormat), void 0 !== w.altInput && (w.altInput.value = we(w.config.altFormat)), !1 !== e && pe(\"onValueUpdate\")\n }\n\n function Ce(e) {\n var t = g(e),\n n = w.prevMonthNav.contains(t),\n a = w.nextMonthNav.contains(t);\n n || a ? G(n ? -1 : 1) : w.yearElements.indexOf(t) >= 0 ? t.select() : t.classList.contains(\"arrowUp\") ? w.changeYear(w.currentYear + 1) : t.classList.contains(\"arrowDown\") && w.changeYear(w.currentYear - 1)\n }\n return function() {\n w.element = w.input = p, w.isOpen = !1,\n function() {\n var t = [\"wrap\", \"weekNumbers\", \"allowInput\", \"allowInvalidPreload\", \"clickOpens\", \"time_24hr\", \"enableTime\", \"noCalendar\", \"altInput\", \"shorthandCurrentMonth\", \"inline\", \"static\", \"enableSeconds\", \"disableMobile\"],\n i = e(e({}, JSON.parse(JSON.stringify(p.dataset || {}))), v),\n o = {};\n w.config.parseDate = i.parseDate, w.config.formatDate = i.formatDate, Object.defineProperty(w.config, \"enable\", {\n get: function() {\n return w.config._enable\n },\n set: function(e) {\n w.config._enable = ge(e)\n }\n }), Object.defineProperty(w.config, \"disable\", {\n get: function() {\n return w.config._disable\n },\n set: function(e) {\n w.config._disable = ge(e)\n }\n });\n var r = \"time\" === i.mode;\n if (!i.dateFormat && (i.enableTime || r)) {\n var l = T.defaultConfig.dateFormat || a.dateFormat;\n o.dateFormat = i.noCalendar || r ? \"H:i\" + (i.enableSeconds ? \":S\" : \"\") : l + \" H:i\" + (i.enableSeconds ? \":S\" : \"\")\n }\n if (i.altInput && (i.enableTime || r) && !i.altFormat) {\n var d = T.defaultConfig.altFormat || a.altFormat;\n o.altFormat = i.noCalendar || r ? \"h:i\" + (i.enableSeconds ? \":S K\" : \" K\") : d + \" h:i\" + (i.enableSeconds ? \":S\" : \"\") + \" K\"\n }\n Object.defineProperty(w.config, \"minDate\", {\n get: function() {\n return w.config._minDate\n },\n set: oe(\"min\")\n }), Object.defineProperty(w.config, \"maxDate\", {\n get: function() {\n return w.config._maxDate\n },\n set: oe(\"max\")\n });\n var s = function(e) {\n return function(t) {\n w.config[\"min\" === e ? \"_minTime\" : \"_maxTime\"] = w.parseDate(t, \"H:i:S\")\n }\n };\n Object.defineProperty(w.config, \"minTime\", {\n get: function() {\n return w.config._minTime\n },\n set: s(\"min\")\n }), Object.defineProperty(w.config, \"maxTime\", {\n get: function() {\n return w.config._maxTime\n },\n set: s(\"max\")\n }), \"time\" === i.mode && (w.config.noCalendar = !0, w.config.enableTime = !0);\n Object.assign(w.config, o, i);\n for (var u = 0; u < t.length; u++) w.config[t[u]] = !0 === w.config[t[u]] || \"true\" === w.config[t[u]];\n n.filter((function(e) {\n return void 0 !== w.config[e]\n })).forEach((function(e) {\n w.config[e] = c(w.config[e] || []).map(E)\n })), w.isMobile = !w.config.disableMobile && !w.config.inline && \"single\" === w.config.mode && !w.config.disable.length && !w.config.enable && !w.config.weekNumbers && /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\n for (u = 0; u < w.config.plugins.length; u++) {\n var f = w.config.plugins[u](w) || {};\n for (var m in f) n.indexOf(m) > -1 ? w.config[m] = c(f[m]).map(E).concat(w.config[m]) : void 0 === i[m] && (w.config[m] = f[m])\n }\n i.altInputClass || (w.config.altInputClass = re().className + \" \" + w.config.altInputClass);\n pe(\"onParseConfig\")\n }(), le(),\n function() {\n if (w.input = re(), !w.input) return void w.config.errorHandler(new Error(\"Invalid input element specified\"));\n w.input._type = w.input.type, w.input.type = \"text\", w.input.classList.add(\"flatpickr-input\"), w._input = w.input, w.config.altInput && (w.altInput = s(w.input.nodeName, w.config.altInputClass), w._input = w.altInput, w.altInput.placeholder = w.input.placeholder, w.altInput.disabled = w.input.disabled, w.altInput.required = w.input.required, w.altInput.tabIndex = w.input.tabIndex, w.altInput.type = \"text\", w.input.setAttribute(\"type\", \"hidden\"), !w.config.static && w.input.parentNode && w.input.parentNode.insertBefore(w.altInput, w.input.nextSibling));\n w.config.allowInput || w._input.setAttribute(\"readonly\", \"readonly\");\n w._positionElement = w.config.positionElement || w._input\n }(),\n function() {\n w.selectedDates = [], w.now = w.parseDate(w.config.now) || new Date;\n var e = w.config.defaultDate || (\"INPUT\" !== w.input.nodeName && \"TEXTAREA\" !== w.input.nodeName || !w.input.placeholder || w.input.value !== w.input.placeholder ? w.input.value : null);\n e && me(e, w.config.dateFormat);\n w._initialDate = w.selectedDates.length > 0 ? w.selectedDates[0] : w.config.minDate && w.config.minDate.getTime() > w.now.getTime() ? w.config.minDate : w.config.maxDate && w.config.maxDate.getTime() < w.now.getTime() ? w.config.maxDate : w.now, w.currentYear = w._initialDate.getFullYear(), w.currentMonth = w._initialDate.getMonth(), w.selectedDates.length > 0 && (w.latestSelectedDateObj = w.selectedDates[0]);\n void 0 !== w.config.minTime && (w.config.minTime = w.parseDate(w.config.minTime, \"H:i\"));\n void 0 !== w.config.maxTime && (w.config.maxTime = w.parseDate(w.config.maxTime, \"H:i\"));\n w.minDateHasTime = !!w.config.minDate && (w.config.minDate.getHours() > 0 || w.config.minDate.getMinutes() > 0 || w.config.minDate.getSeconds() > 0), w.maxDateHasTime = !!w.config.maxDate && (w.config.maxDate.getHours() > 0 || w.config.maxDate.getMinutes() > 0 || w.config.maxDate.getSeconds() > 0)\n }(), w.utils = {\n getDaysInMonth: function(e, t) {\n return void 0 === e && (e = w.currentMonth), void 0 === t && (t = w.currentYear), 1 === e && (t % 4 == 0 && t % 100 != 0 || t % 400 == 0) ? 29 : w.l10n.daysInMonth[e]\n }\n }, w.isMobile || function() {\n var e = window.document.createDocumentFragment();\n if (w.calendarContainer = s(\"div\", \"flatpickr-calendar\"), w.calendarContainer.tabIndex = -1, !w.config.noCalendar) {\n if (e.appendChild((w.monthNav = s(\"div\", \"flatpickr-months\"), w.yearElements = [], w.monthElements = [], w.prevMonthNav = s(\"span\", \"flatpickr-prev-month\"), w.prevMonthNav.innerHTML = w.config.prevArrow, w.nextMonthNav = s(\"span\", \"flatpickr-next-month\"), w.nextMonthNav.innerHTML = w.config.nextArrow, q(), Object.defineProperty(w, \"_hidePrevMonthArrow\", {\n get: function() {\n return w.__hidePrevMonthArrow\n },\n set: function(e) {\n w.__hidePrevMonthArrow !== e && (d(w.prevMonthNav, \"flatpickr-disabled\", e), w.__hidePrevMonthArrow = e)\n }\n }), Object.defineProperty(w, \"_hideNextMonthArrow\", {\n get: function() {\n return w.__hideNextMonthArrow\n },\n set: function(e) {\n w.__hideNextMonthArrow !== e && (d(w.nextMonthNav, \"flatpickr-disabled\", e), w.__hideNextMonthArrow = e)\n }\n }), w.currentYearElement = w.yearElements[0], De(), w.monthNav)), w.innerContainer = s(\"div\", \"flatpickr-innerContainer\"), w.config.weekNumbers) {\n var t = function() {\n w.calendarContainer.classList.add(\"hasWeeks\");\n var e = s(\"div\", \"flatpickr-weekwrapper\");\n e.appendChild(s(\"span\", \"flatpickr-weekday\", w.l10n.weekAbbreviation));\n var t = s(\"div\", \"flatpickr-weeks\");\n return e.appendChild(t), {\n weekWrapper: e,\n weekNumbers: t\n }\n }(),\n n = t.weekWrapper,\n a = t.weekNumbers;\n w.innerContainer.appendChild(n), w.weekNumbers = a, w.weekWrapper = n\n }\n w.rContainer = s(\"div\", \"flatpickr-rContainer\"), w.rContainer.appendChild($()), w.daysContainer || (w.daysContainer = s(\"div\", \"flatpickr-days\"), w.daysContainer.tabIndex = -1), J(), w.rContainer.appendChild(w.daysContainer), w.innerContainer.appendChild(w.rContainer), e.appendChild(w.innerContainer)\n }\n w.config.enableTime && e.appendChild(function() {\n w.calendarContainer.classList.add(\"hasTime\"), w.config.noCalendar && w.calendarContainer.classList.add(\"noCalendar\");\n var e = x(w.config);\n w.timeContainer = s(\"div\", \"flatpickr-time\"), w.timeContainer.tabIndex = -1;\n var t = s(\"span\", \"flatpickr-time-separator\", \":\"),\n n = m(\"flatpickr-hour\", {\n \"aria-label\": w.l10n.hourAriaLabel\n });\n w.hourElement = n.getElementsByTagName(\"input\")[0];\n var a = m(\"flatpickr-minute\", {\n \"aria-label\": w.l10n.minuteAriaLabel\n });\n w.minuteElement = a.getElementsByTagName(\"input\")[0], w.hourElement.tabIndex = w.minuteElement.tabIndex = -1, w.hourElement.value = o(w.latestSelectedDateObj ? w.latestSelectedDateObj.getHours() : w.config.time_24hr ? e.hours : function(e) {\n switch (e % 24) {\n case 0:\n case 12:\n return 12;\n default:\n return e % 12\n }\n }(e.hours)), w.minuteElement.value = o(w.latestSelectedDateObj ? w.latestSelectedDateObj.getMinutes() : e.minutes), w.hourElement.setAttribute(\"step\", w.config.hourIncrement.toString()), w.minuteElement.setAttribute(\"step\", w.config.minuteIncrement.toString()), w.hourElement.setAttribute(\"min\", w.config.time_24hr ? \"0\" : \"1\"), w.hourElement.setAttribute(\"max\", w.config.time_24hr ? \"23\" : \"12\"), w.hourElement.setAttribute(\"maxlength\", \"2\"), w.minuteElement.setAttribute(\"min\", \"0\"), w.minuteElement.setAttribute(\"max\", \"59\"), w.minuteElement.setAttribute(\"maxlength\", \"2\"), w.timeContainer.appendChild(n), w.timeContainer.appendChild(t), w.timeContainer.appendChild(a), w.config.time_24hr && w.timeContainer.classList.add(\"time24hr\");\n if (w.config.enableSeconds) {\n w.timeContainer.classList.add(\"hasSeconds\");\n var i = m(\"flatpickr-second\");\n w.secondElement = i.getElementsByTagName(\"input\")[0], w.secondElement.value = o(w.latestSelectedDateObj ? w.latestSelectedDateObj.getSeconds() : e.seconds), w.secondElement.setAttribute(\"step\", w.minuteElement.getAttribute(\"step\")), w.secondElement.setAttribute(\"min\", \"0\"), w.secondElement.setAttribute(\"max\", \"59\"), w.secondElement.setAttribute(\"maxlength\", \"2\"), w.timeContainer.appendChild(s(\"span\", \"flatpickr-time-separator\", \":\")), w.timeContainer.appendChild(i)\n }\n w.config.time_24hr || (w.amPM = s(\"span\", \"flatpickr-am-pm\", w.l10n.amPM[r((w.latestSelectedDateObj ? w.hourElement.value : w.config.defaultHour) > 11)]), w.amPM.title = w.l10n.toggleTitle, w.amPM.tabIndex = -1, w.timeContainer.appendChild(w.amPM));\n return w.timeContainer\n }());\n d(w.calendarContainer, \"rangeMode\", \"range\" === w.config.mode), d(w.calendarContainer, \"animate\", !0 === w.config.animate), d(w.calendarContainer, \"multiMonth\", w.config.showMonths > 1), w.calendarContainer.appendChild(e);\n var i = void 0 !== w.config.appendTo && void 0 !== w.config.appendTo.nodeType;\n if ((w.config.inline || w.config.static) && (w.calendarContainer.classList.add(w.config.inline ? \"inline\" : \"static\"), w.config.inline && (!i && w.element.parentNode ? w.element.parentNode.insertBefore(w.calendarContainer, w._input.nextSibling) : void 0 !== w.config.appendTo && w.config.appendTo.appendChild(w.calendarContainer)), w.config.static)) {\n var l = s(\"div\", \"flatpickr-wrapper\");\n w.element.parentNode && w.element.parentNode.insertBefore(l, w.element), l.appendChild(w.element), w.altInput && l.appendChild(w.altInput), l.appendChild(w.calendarContainer)\n }\n w.config.static || w.config.inline || (void 0 !== w.config.appendTo ? w.config.appendTo : window.document.body).appendChild(w.calendarContainer)\n }(),\n function() {\n w.config.wrap && [\"open\", \"close\", \"toggle\", \"clear\"].forEach((function(e) {\n Array.prototype.forEach.call(w.element.querySelectorAll(\"[data-\" + e + \"]\"), (function(t) {\n return A(t, \"click\", w[e])\n }))\n }));\n if (w.isMobile) return void\n function() {\n var e = w.config.enableTime ? w.config.noCalendar ? \"time\" : \"datetime-local\" : \"date\";\n w.mobileInput = s(\"input\", w.input.className + \" flatpickr-mobile\"), w.mobileInput.tabIndex = 1, w.mobileInput.type = e, w.mobileInput.disabled = w.input.disabled, w.mobileInput.required = w.input.required, w.mobileInput.placeholder = w.input.placeholder, w.mobileFormatStr = \"datetime-local\" === e ? \"Y-m-d\\\\TH:i:S\" : \"date\" === e ? \"Y-m-d\" : \"H:i:S\", w.selectedDates.length > 0 && (w.mobileInput.defaultValue = w.mobileInput.value = w.formatDate(w.selectedDates[0], w.mobileFormatStr));\n w.config.minDate && (w.mobileInput.min = w.formatDate(w.config.minDate, \"Y-m-d\"));\n w.config.maxDate && (w.mobileInput.max = w.formatDate(w.config.maxDate, \"Y-m-d\"));\n w.input.getAttribute(\"step\") && (w.mobileInput.step = String(w.input.getAttribute(\"step\")));\n w.input.type = \"hidden\", void 0 !== w.altInput && (w.altInput.type = \"hidden\");\n try {\n w.input.parentNode && w.input.parentNode.insertBefore(w.mobileInput, w.input.nextSibling)\n } catch (e) {}\n A(w.mobileInput, \"change\", (function(e) {\n w.setDate(g(e).value, !1, w.mobileFormatStr), pe(\"onChange\"), pe(\"onClose\")\n }))\n }();\n var e = l(ie, 50);\n w._debouncedChange = l(N, 300), w.daysContainer && !/iPhone|iPad|iPod/i.test(navigator.userAgent) && A(w.daysContainer, \"mouseover\", (function(e) {\n \"range\" === w.config.mode && ae(g(e))\n }));\n A(window.document.body, \"keydown\", ne), w.config.inline || w.config.static || A(window, \"resize\", e);\n void 0 !== window.ontouchstart ? A(window.document, \"touchstart\", Z) : A(window.document, \"mousedown\", Z);\n A(window.document, \"focus\", Z, {\n capture: !0\n }), !0 === w.config.clickOpens && (A(w._input, \"focus\", w.open), A(w._input, \"click\", w.open));\n void 0 !== w.daysContainer && (A(w.monthNav, \"click\", Ce), A(w.monthNav, [\"keyup\", \"increment\"], F), A(w.daysContainer, \"click\", ue));\n if (void 0 !== w.timeContainer && void 0 !== w.minuteElement && void 0 !== w.hourElement) {\n var t = function(e) {\n return g(e).select()\n };\n A(w.timeContainer, [\"increment\"], I), A(w.timeContainer, \"blur\", I, {\n capture: !0\n }), A(w.timeContainer, \"click\", Y), A([w.hourElement, w.minuteElement], [\"focus\", \"click\"], t), void 0 !== w.secondElement && A(w.secondElement, \"focus\", (function() {\n return w.secondElement && w.secondElement.select()\n })), void 0 !== w.amPM && A(w.amPM, \"click\", (function(e) {\n I(e), N()\n }))\n }\n w.config.allowInput && A(w._input, \"blur\", te)\n }(), (w.selectedDates.length || w.config.noCalendar) && (w.config.enableTime && _(w.config.noCalendar ? w.latestSelectedDateObj : void 0), be(!1)), k();\n var t = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);\n !w.isMobile && t && ce(), pe(\"onReady\")\n }(), w\n }\n\n function k(e, t) {\n for (var n = Array.prototype.slice.call(e).filter((function(e) {\n return e instanceof HTMLElement\n })), a = [], i = 0; i < n.length; i++) {\n var o = n[i];\n try {\n if (null !== o.getAttribute(\"data-fp-omit\")) continue;\n void 0 !== o._flatpickr && (o._flatpickr.destroy(), o._flatpickr = void 0), o._flatpickr = E(o, t || {}), a.push(o._flatpickr)\n } catch (e) {\n console.error(e)\n }\n }\n return 1 === a.length ? a[0] : a\n }\n \"undefined\" != typeof HTMLElement && \"undefined\" != typeof HTMLCollection && \"undefined\" != typeof NodeList && (HTMLCollection.prototype.flatpickr = NodeList.prototype.flatpickr = function(e) {\n return k(this, e)\n }, HTMLElement.prototype.flatpickr = function(e) {\n return k([this], e)\n });\n var T = function(e, t) {\n return \"string\" == typeof e ? k(window.document.querySelectorAll(e), t) : e instanceof Node ? k([e], t) : k(e, t)\n };\n return T.defaultConfig = {}, T.l10ns = {\n en: e({}, i),\n default: e({}, i)\n }, T.localize = function(t) {\n T.l10ns.default = e(e({}, T.l10ns.default), t)\n }, T.setDefaults = function(t) {\n T.defaultConfig = e(e({}, T.defaultConfig), t)\n }, T.parseDate = C({}), T.formatDate = b({}), T.compareDates = M, \"undefined\" != typeof jQuery && void 0 !== jQuery.fn && (jQuery.fn.flatpickr = function(e) {\n return k(this, e)\n }), Date.prototype.fp_incr = function(e) {\n return new Date(this.getFullYear(), this.getMonth(), this.getDate() + (\"string\" == typeof e ? parseInt(e, 10) : e))\n }, \"undefined\" != typeof window && (window.flatpickr = T), T\n }));\n}"],"file":"datetime-picker.js"}