@central-design-system/components 2.7.1-beta.0 → 2.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/dist/CdsAccordion/index.js +1 -1
  2. package/dist/CdsAccordion/styles.css +1 -1
  3. package/dist/CdsBreadcrumbs/index.js +1 -1
  4. package/dist/CdsBreadcrumbs/styles.css +1 -1
  5. package/dist/CdsButton/index.js +1 -1
  6. package/dist/CdsButton/styles.css +1 -1
  7. package/dist/CdsCheckbox/index.js +1 -1
  8. package/dist/CdsCheckbox/styles.css +1 -1
  9. package/dist/CdsCombobox/index.js +1 -1
  10. package/dist/CdsCombobox/styles.css +1 -1
  11. package/dist/CdsContainer/index.js +1 -1
  12. package/dist/CdsContainer/styles.css +1 -1
  13. package/dist/CdsContentSwitcher/index.js +2 -2
  14. package/dist/CdsContentSwitcher/styles.css +3 -3
  15. package/dist/CdsDataTable/index.js +1 -1
  16. package/dist/CdsDataTable/styles.css +1 -1
  17. package/dist/CdsDatePicker/index.js +5 -3
  18. package/dist/CdsDatePicker/styles.css +1 -1
  19. package/dist/CdsDrawer/index.js +2 -2
  20. package/dist/CdsDrawer/styles.css +2 -2
  21. package/dist/CdsDropdown/index.js +1 -1
  22. package/dist/CdsDropdown/styles.css +1 -1
  23. package/dist/CdsEmptyState/index.js +1 -1
  24. package/dist/CdsEmptyState/styles.css +1 -1
  25. package/dist/CdsForm/index.js +1 -1
  26. package/dist/CdsForm/styles.css +1 -1
  27. package/dist/CdsGrid/index.js +1 -1
  28. package/dist/CdsGrid/styles.css +1 -1
  29. package/dist/CdsIcon/index.js +1 -1
  30. package/dist/CdsIcon/styles.css +1 -1
  31. package/dist/CdsImage/index.js +1 -1
  32. package/dist/CdsImage/styles.css +1 -1
  33. package/dist/CdsInput/index.js +1 -1
  34. package/dist/CdsInput/styles.css +1 -1
  35. package/dist/CdsLink/index.js +1 -1
  36. package/dist/CdsLink/styles.css +1 -1
  37. package/dist/CdsList/index.js +1 -1
  38. package/dist/CdsList/styles.css +1 -1
  39. package/dist/CdsLoading/index.js +1 -1
  40. package/dist/CdsLoading/styles.css +1 -1
  41. package/dist/CdsModal/index.js +2 -2
  42. package/dist/CdsModal/styles.css +3 -3
  43. package/dist/CdsMultiselect/index.js +1 -1
  44. package/dist/CdsMultiselect/styles.css +1 -1
  45. package/dist/CdsNotification/index.js +2 -2
  46. package/dist/CdsNotification/styles.css +3 -3
  47. package/dist/CdsOverflowMenu/index.js +2 -2
  48. package/dist/CdsOverflowMenu/styles.css +3 -3
  49. package/dist/CdsPagination/index.js +1 -1
  50. package/dist/CdsPagination/styles.css +1 -1
  51. package/dist/CdsRadioButton/index.js +1 -1
  52. package/dist/CdsRadioButton/styles.css +1 -1
  53. package/dist/CdsSearch/index.js +1 -1
  54. package/dist/CdsSearch/styles.css +1 -1
  55. package/dist/CdsSelect/index.js +1 -1
  56. package/dist/CdsSelect/styles.css +1 -1
  57. package/dist/CdsSkeleton/index.js +1 -1
  58. package/dist/CdsSkeleton/styles.css +1 -1
  59. package/dist/CdsStages/index.js +1 -1
  60. package/dist/CdsStages/styles.css +1 -1
  61. package/dist/CdsStatus/index.js +2 -2
  62. package/dist/CdsStatus/styles.css +3 -3
  63. package/dist/CdsSteps/index.js +2 -2
  64. package/dist/CdsSteps/styles.css +3 -3
  65. package/dist/CdsTable/index.js +2 -2
  66. package/dist/CdsTable/styles.css +1 -1
  67. package/dist/CdsTabs/index.js +1 -1
  68. package/dist/CdsTabs/styles.css +1 -1
  69. package/dist/CdsTag/index.js +1 -1
  70. package/dist/CdsTag/styles.css +1 -1
  71. package/dist/CdsTextArea/index.js +1 -1
  72. package/dist/CdsTextArea/styles.css +1 -1
  73. package/dist/CdsTextInput/index.js +1 -1
  74. package/dist/CdsTextInput/styles.css +1 -1
  75. package/dist/CdsToggle/index.js +1 -1
  76. package/dist/CdsToggle/styles.css +1 -1
  77. package/dist/CdsTooltip/index.js +2 -2
  78. package/dist/CdsTooltip/styles.css +3 -3
  79. package/dist/CdsUploader/index.js +1 -1
  80. package/dist/CdsUploader/styles.css +1 -1
  81. package/dist/cds.css +4 -4
  82. package/dist/cds.js +170 -2521
  83. package/dist/cds.min.css +2 -2
  84. package/dist/cds.min.js +6 -4
  85. package/package.json +1 -1
package/dist/cds.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * CDS v2.7.0 (https://cds.b2b-center.ru/)
2
+ * CDS v2.8.0-beta.0 (https://cds.b2b-center.ru/)
3
3
  *
4
4
  * @package @central-design-system/components
5
5
  * @author Design System Team <cds@b2b-center.ru>
@@ -7255,25 +7255,11 @@ module.exports = function (value, locale) {
7255
7255
 
7256
7256
  /***/ }),
7257
7257
 
7258
- /***/ 1895:
7259
- /***/ (function() {
7260
-
7261
- "use strict";
7262
-
7263
- if (typeof Object.assign !== "function") {
7264
- Object.assign = function (target, ...args) {
7265
- if (!target) {
7266
- throw TypeError("Cannot convert undefined or null to object");
7267
- }
7268
- for (const source of args) {
7269
- if (source) {
7270
- Object.keys(source).forEach((key) => (target[key] = source[key]));
7271
- }
7272
- }
7273
- return target;
7274
- };
7275
- }
7258
+ /***/ 8393:
7259
+ /***/ (function(module) {
7276
7260
 
7261
+ /* flatpickr v4.6.9,, @license MIT */
7262
+ !function(e,t){ true?module.exports=t():0}(this,(function(){"use strict";var e=function(){return(e=Object.assign||function(e){for(var t,n=1,a=arguments.length;n<a;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}).apply(this,arguments)};function t(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var a=Array(e),i=0;for(t=0;t<n;t++)for(var o=arguments[t],r=0,l=o.length;r<l;r++,i++)a[i]=o[r];return a}var n=["onChange","onClose","onDayCreate","onDestroy","onKeyDown","onMonthChange","onOpen","onParseConfig","onReady","onValueUpdate","onYearChange","onPreCalendarPosition"],a={_disable:[],allowInput:!1,allowInvalidPreload:!1,altFormat:"F j, Y",altInput:!1,altInputClass:"form-control input",animate:"object"==typeof window&&-1===window.navigator.userAgent.indexOf("MSIE"),ariaDateFormat:"F j, Y",autoFillDefaultTime:!0,clickOpens:!0,closeOnSelect:!0,conjunction:", ",dateFormat:"Y-m-d",defaultHour:12,defaultMinute:0,defaultSeconds:0,disable:[],disableMobile:!1,enableSeconds:!1,enableTime:!1,errorHandler:function(e){return"undefined"!=typeof console&&console.warn(e)},getWeek:function(e){var t=new Date(e.getTime());t.setHours(0,0,0,0),t.setDate(t.getDate()+3-(t.getDay()+6)%7);var n=new Date(t.getFullYear(),0,4);return 1+Math.round(((t.getTime()-n.getTime())/864e5-3+(n.getDay()+6)%7)/7)},hourIncrement:1,ignoredFocusElements:[],inline:!1,locale:"default",minuteIncrement:5,mode:"single",monthSelectorType:"dropdown",nextArrow:"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M13.207 8.472l-7.854 7.854-0.707-0.707 7.146-7.146-7.146-7.148 0.707-0.707 7.854 7.854z' /></svg>",noCalendar:!1,now:new Date,onChange:[],onClose:[],onDayCreate:[],onDestroy:[],onKeyDown:[],onMonthChange:[],onOpen:[],onParseConfig:[],onReady:[],onValueUpdate:[],onYearChange:[],onPreCalendarPosition:[],plugins:[],position:"auto",positionElement:void 0,prevArrow:"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M5.207 8.471l7.146 7.147-0.707 0.707-7.853-7.854 7.854-7.853 0.707 0.707-7.147 7.146z' /></svg>",shorthandCurrentMonth:!1,showMonths:1,static:!1,time_24hr:!1,weekNumbers:!1,wrap:!1},i={weekdays:{shorthand:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longhand:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},months:{shorthand:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longhand:["January","February","March","April","May","June","July","August","September","October","November","December"]},daysInMonth:[31,28,31,30,31,30,31,31,30,31,30,31],firstDayOfWeek:0,ordinal:function(e){var t=e%100;if(t>3&&t<21)return"th";switch(t%10){case 1:return"st";case 2:return"nd";case 3:return"rd";default:return"th"}},rangeSeparator:" to ",weekAbbreviation:"Wk",scrollTitle:"Scroll to increment",toggleTitle:"Click to toggle",amPM:["AM","PM"],yearAriaLabel:"Year",monthAriaLabel:"Month",hourAriaLabel:"Hour",minuteAriaLabel:"Minute",time_24hr:!1},o=function(e,t){return void 0===t&&(t=2),("000"+e).slice(-1*t)},r=function(e){return!0===e?1:0};function l(e,t){var n;return function(){var a=this;clearTimeout(n),n=setTimeout((function(){return e.apply(a,arguments)}),t)}}var c=function(e){return e instanceof Array?e:[e]};function d(e,t,n){if(!0===n)return e.classList.add(t);e.classList.remove(t)}function s(e,t,n){var a=window.document.createElement(e);return t=t||"",n=n||"",a.className=t,void 0!==n&&(a.textContent=n),a}function u(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function f(e,t){return t(e)?e:e.parentNode?f(e.parentNode,t):void 0}function m(e,t){var n=s("div","numInputWrapper"),a=s("input","numInput "+e),i=s("span","arrowUp"),o=s("span","arrowDown");if(-1===navigator.userAgent.indexOf("MSIE 9.0")?a.type="number":(a.type="text",a.pattern="\\d*"),void 0!==t)for(var r in t)a.setAttribute(r,t[r]);return n.appendChild(a),n.appendChild(i),n.appendChild(o),n}function g(e){try{return"function"==typeof e.composedPath?e.composedPath()[0]:e.target}catch(t){return e.target}}var p=function(){},h=function(e,t,n){return n.months[t?"shorthand":"longhand"][e]},v={D:p,F:function(e,t,n){e.setMonth(n.months.longhand.indexOf(t))},G:function(e,t){e.setHours(parseFloat(t))},H:function(e,t){e.setHours(parseFloat(t))},J:function(e,t){e.setDate(parseFloat(t))},K:function(e,t,n){e.setHours(e.getHours()%12+12*r(new RegExp(n.amPM[1],"i").test(t)))},M:function(e,t,n){e.setMonth(n.months.shorthand.indexOf(t))},S:function(e,t){e.setSeconds(parseFloat(t))},U:function(e,t){return new Date(1e3*parseFloat(t))},W:function(e,t,n){var a=parseInt(t),i=new Date(e.getFullYear(),0,2+7*(a-1),0,0,0,0);return i.setDate(i.getDate()-i.getDay()+n.firstDayOfWeek),i},Y:function(e,t){e.setFullYear(parseFloat(t))},Z:function(e,t){return new Date(t)},d:function(e,t){e.setDate(parseFloat(t))},h:function(e,t){e.setHours(parseFloat(t))},i:function(e,t){e.setMinutes(parseFloat(t))},j:function(e,t){e.setDate(parseFloat(t))},l:p,m:function(e,t){e.setMonth(parseFloat(t)-1)},n:function(e,t){e.setMonth(parseFloat(t)-1)},s:function(e,t){e.setSeconds(parseFloat(t))},u:function(e,t){return new Date(parseFloat(t))},w:p,y:function(e,t){e.setFullYear(2e3+parseFloat(t))}},D={D:"(\\w+)",F:"(\\w+)",G:"(\\d\\d|\\d)",H:"(\\d\\d|\\d)",J:"(\\d\\d|\\d)\\w+",K:"",M:"(\\w+)",S:"(\\d\\d|\\d)",U:"(.+)",W:"(\\d\\d|\\d)",Y:"(\\d{4})",Z:"(.+)",d:"(\\d\\d|\\d)",h:"(\\d\\d|\\d)",i:"(\\d\\d|\\d)",j:"(\\d\\d|\\d)",l:"(\\w+)",m:"(\\d\\d|\\d)",n:"(\\d\\d|\\d)",s:"(\\d\\d|\\d)",u:"(.+)",w:"(\\d\\d|\\d)",y:"(\\d{2})"},w={Z:function(e){return e.toISOString()},D:function(e,t,n){return t.weekdays.shorthand[w.w(e,t,n)]},F:function(e,t,n){return h(w.n(e,t,n)-1,!1,t)},G:function(e,t,n){return o(w.h(e,t,n))},H:function(e){return o(e.getHours())},J:function(e,t){return void 0!==t.ordinal?e.getDate()+t.ordinal(e.getDate()):e.getDate()},K:function(e,t){return t.amPM[r(e.getHours()>11)]},M:function(e,t){return h(e.getMonth(),!0,t)},S:function(e){return o(e.getSeconds())},U:function(e){return e.getTime()/1e3},W:function(e,t,n){return n.getWeek(e)},Y:function(e){return o(e.getFullYear(),4)},d:function(e){return o(e.getDate())},h:function(e){return e.getHours()%12?e.getHours()%12:12},i:function(e){return o(e.getMinutes())},j:function(e){return e.getDate()},l:function(e,t){return t.weekdays.longhand[e.getDay()]},m:function(e){return o(e.getMonth()+1)},n:function(e){return e.getMonth()+1},s:function(e){return e.getSeconds()},u:function(e){return e.getTime()},w:function(e){return e.getDay()},y:function(e){return String(e.getFullYear()).substring(2)}},b=function(e){var t=e.config,n=void 0===t?a:t,o=e.l10n,r=void 0===o?i:o,l=e.isMobile,c=void 0!==l&&l;return function(e,t,a){var i=a||r;return void 0===n.formatDate||c?t.split("").map((function(t,a,o){return w[t]&&"\\"!==o[a-1]?w[t](e,i,n):"\\"!==t?t:""})).join(""):n.formatDate(e,t,i)}},C=function(e){var t=e.config,n=void 0===t?a:t,o=e.l10n,r=void 0===o?i:o;return function(e,t,i,o){if(0===e||e){var l,c=o||r,d=e;if(e instanceof Date)l=new Date(e.getTime());else if("string"!=typeof e&&void 0!==e.toFixed)l=new Date(e);else if("string"==typeof e){var s=t||(n||a).dateFormat,u=String(e).trim();if("today"===u)l=new Date,i=!0;else if(/Z$/.test(u)||/GMT$/.test(u))l=new Date(e);else if(n&&n.parseDate)l=n.parseDate(e,s);else{l=n&&n.noCalendar?new Date((new Date).setHours(0,0,0,0)):new Date((new Date).getFullYear(),0,1,0,0,0,0);for(var f=void 0,m=[],g=0,p=0,h="";g<s.length;g++){var w=s[g],b="\\"===w,C="\\"===s[g-1]||b;if(D[w]&&!C){h+=D[w];var M=new RegExp(h).exec(e);M&&(f=!0)&&m["Y"!==w?"push":"unshift"]({fn:v[w],val:M[++p]})}else b||(h+=".");m.forEach((function(e){var t=e.fn,n=e.val;return l=t(l,n,c)||l}))}l=f?l:void 0}}if(l instanceof Date&&!isNaN(l.getTime()))return!0===i&&l.setHours(0,0,0,0),l;n.errorHandler(new Error("Invalid date provided: "+d))}}};function M(e,t,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()}var y=864e5;function x(e){var t=e.defaultHour,n=e.defaultMinute,a=e.defaultSeconds;if(void 0!==e.minDate){var i=e.minDate.getHours(),o=e.minDate.getMinutes(),r=e.minDate.getSeconds();t<i&&(t=i),t===i&&n<o&&(n=o),t===i&&n===o&&a<r&&(a=e.minDate.getSeconds())}if(void 0!==e.maxDate){var l=e.maxDate.getHours(),c=e.maxDate.getMinutes();(t=Math.min(t,l))===l&&(n=Math.min(c,n)),t===l&&n===c&&(a=e.maxDate.getSeconds())}return{hours:t,minutes:n,seconds:a}}"function"!=typeof Object.assign&&(Object.assign=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];if(!e)throw TypeError("Cannot convert undefined or null to object");for(var a=function(t){t&&Object.keys(t).forEach((function(n){return e[n]=t[n]}))},i=0,o=t;i<o.length;i++){var r=o[i];a(r)}return e});function E(p,v){var w={config:e(e({},a),T.defaultConfig),l10n:i};function E(e){return e.bind(w)}function k(){var e=w.config;!1===e.weekNumbers&&1===e.showMonths||!0!==e.noCalendar&&window.requestAnimationFrame((function(){if(void 0!==w.calendarContainer&&(w.calendarContainer.style.visibility="hidden",w.calendarContainer.style.display="block"),void 0!==w.daysContainer){var t=(w.days.offsetWidth+1)*e.showMonths;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")}}))}function I(e){if(0===w.selectedDates.length){var t=void 0===w.config.minDate||M(new Date,w.config.minDate)>=0?new Date:new Date(w.config.minDate.getTime()),n=x(w.config);t.setHours(n.hours,n.minutes,n.seconds,t.getMilliseconds()),w.selectedDates=[t],w.latestSelectedDateObj=t}void 0!==e&&"blur"!==e.type&&function(e){e.preventDefault();var t="keydown"===e.type,n=g(e),a=n;void 0!==w.amPM&&n===w.amPM&&(w.amPM.textContent=w.l10n.amPM[r(w.amPM.textContent===w.l10n.amPM[0])]);var i=parseFloat(a.getAttribute("min")),l=parseFloat(a.getAttribute("max")),c=parseFloat(a.getAttribute("step")),d=parseInt(a.value,10),s=e.delta||(t?38===e.which?1:-1:0),u=d+c*s;if(void 0!==a.value&&2===a.value.length){var f=a===w.hourElement,m=a===w.minuteElement;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)}}(e);var a=w._input.value;S(),be(),w._input.value!==a&&w._debouncedChange()}function S(){if(void 0!==w.hourElement&&void 0!==w.minuteElement){var e,t,n=(parseInt(w.hourElement.value.slice(-2),10)||0)%24,a=(parseInt(w.minuteElement.value,10)||0)%60,i=void 0!==w.secondElement?(parseInt(w.secondElement.value,10)||0)%60:0;void 0!==w.amPM&&(e=n,t=w.amPM.textContent,n=e%12+12*r(t===w.l10n.amPM[1]));var o=void 0!==w.config.minTime||w.config.minDate&&w.minDateHasTime&&w.latestSelectedDateObj&&0===M(w.latestSelectedDateObj,w.config.minDate,!0);if(void 0!==w.config.maxTime||w.config.maxDate&&w.maxDateHasTime&&w.latestSelectedDateObj&&0===M(w.latestSelectedDateObj,w.config.maxDate,!0)){var l=void 0!==w.config.maxTime?w.config.maxTime:w.config.maxDate;(n=Math.min(n,l.getHours()))===l.getHours()&&(a=Math.min(a,l.getMinutes())),a===l.getMinutes()&&(i=Math.min(i,l.getSeconds()))}if(o){var c=void 0!==w.config.minTime?w.config.minTime:w.config.minDate;(n=Math.max(n,c.getHours()))===c.getHours()&&a<c.getMinutes()&&(a=c.getMinutes()),a===c.getMinutes()&&(i=Math.max(i,c.getSeconds()))}O(n,a,i)}}function _(e){var t=e||w.latestSelectedDateObj;t&&O(t.getHours(),t.getMinutes(),t.getSeconds())}function O(e,t,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)))}function F(e){var t=g(e),n=parseInt(t.value)+(e.delta||0);(n/1e3>1||"Enter"===e.key&&!/[^\d]/.test(n.toString()))&&Q(n)}function A(e,t,n,a){return t instanceof Array?t.forEach((function(t){return A(e,t,n,a)})):e instanceof Array?e.forEach((function(e){return A(e,t,n,a)})):(e.addEventListener(t,n,a),void w._handlers.push({remove:function(){return e.removeEventListener(t,n)}}))}function N(){pe("onChange")}function P(e,t){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),a=w.currentYear,i=w.currentMonth;try{void 0!==n&&(w.currentYear=n.getFullYear(),w.currentMonth=n.getMonth())}catch(e){e.message="Invalid date supplied: "+n,w.config.errorHandler(e)}t&&w.currentYear!==a&&(pe("onYearChange"),K()),!t||w.currentYear===a&&w.currentMonth===i||pe("onMonthChange"),w.redraw()}function Y(e){var t=g(e);~t.className.indexOf("arrow")&&j(e,t.classList.contains("arrowUp")?1:-1)}function j(e,t,n){var a=e&&g(e),i=n||a&&a.parentNode&&a.parentNode.firstChild,o=he("increment");o.delta=t,i&&i.dispatchEvent(o)}function H(e,t,n,a){var i=X(t,!0),o=s("span","flatpickr-day "+e,t.getDate().toString());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){return!("range"!==w.config.mode||w.selectedDates.length<2)&&(M(e,w.selectedDates[0])>=0&&M(e,w.selectedDates[1])<=0)}(t)&&!ve(t)&&o.classList.add("inRange"),w.weekNumbers&&1===w.config.showMonths&&"prevMonthDay"!==e&&n%7==1&&w.weekNumbers.insertAdjacentHTML("beforeend","<span class='flatpickr-day'>"+w.config.getWeek(t)+"</span>"),pe("onDayCreate",o),o}function L(e){e.focus(),"range"===w.config.mode&&ae(e)}function W(e){for(var t=e>0?0:w.config.showMonths-1,n=e>0?w.config.showMonths:-1,a=t;a!=n;a+=e)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){var c=i.children[l];if(-1===c.className.indexOf("hidden")&&X(c.dateObj))return c}}function R(e,t){var n=ee(document.activeElement||document.body),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);void 0===a?w._input.focus():n?function(e,t){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)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){var s=r.children[d];if(-1===s.className.indexOf("hidden")&&X(s.dateObj)&&Math.abs(e.$i-d)>=Math.abs(t))return L(s)}w.changeMonth(i),R(W(i),0)}(a,t):L(a)}function B(e,t){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));for(d=1;d<=i;d++,u++)o.appendChild(H("",new Date(e,t,d),d,u));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));var m=s("div","dayContainer");return m.appendChild(o),m}function J(){if(void 0!==w.daysContainer){u(w.daysContainer),w.weekNumbers&&u(w.weekNumbers);for(var e=document.createDocumentFragment(),t=0;t<w.config.showMonths;t++){var n=new Date(w.currentYear,w.currentMonth,1);n.setMonth(w.currentMonth+t),e.appendChild(B(n.getFullYear(),n.getMonth()))}w.daysContainer.appendChild(e),w.days=w.daysContainer.firstChild,"range"===w.config.mode&&1===w.selectedDates.length&&ae()}}function K(){if(!(w.config.showMonths>1||"dropdown"!==w.config.monthSelectorType)){var e=function(e){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())};w.monthsDropdownContainer.tabIndex=-1,w.monthsDropdownContainer.innerHTML="";for(var t=0;t<12;t++)if(e(t)){var n=s("option","flatpickr-monthDropdown-month");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)}}}function U(){var e,t=s("div","flatpickr-month"),n=window.document.createDocumentFragment();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){var t=g(e),n=parseInt(t.value,10);w.changeMonth(n-w.currentMonth),pe("onMonthChange")})),K(),e=w.monthsDropdownContainer);var a=m("cur-year",{tabindex:"-1"}),i=a.getElementsByTagName("input")[0];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());var o=s("div","flatpickr-current-month");return o.appendChild(e),o.appendChild(a),n.appendChild(o),t.appendChild(n),{container:t,yearElement:i,monthElement:e}}function q(){u(w.monthNav),w.monthNav.appendChild(w.prevMonthNav),w.config.showMonths&&(w.yearElements=[],w.monthElements=[]);for(var e=w.config.showMonths;e--;){var t=U();w.yearElements.push(t.yearElement),w.monthElements.push(t.monthElement),w.monthNav.appendChild(t.container)}w.monthNav.appendChild(w.nextMonthNav)}function $(){w.weekdayContainer?u(w.weekdayContainer):w.weekdayContainer=s("div","flatpickr-weekdays");for(var e=w.config.showMonths;e--;){var t=s("div","flatpickr-weekdaycontainer");w.weekdayContainer.appendChild(t)}return z(),w.weekdayContainer}function z(){if(w.weekdayContainer){var e=w.l10n.firstDayOfWeek,n=t(w.l10n.weekdays.shorthand);e>0&&e<n.length&&(n=t(n.splice(e,n.length),n.splice(0,e)));for(var a=w.config.showMonths;a--;)w.weekdayContainer.children[a].innerHTML="\n <span class='flatpickr-weekday'>\n "+n.join("</span><span class='flatpickr-weekday'>")+"\n </span>\n "}}function G(e,t){void 0===t&&(t=!0);var n=t?e:e-w.currentMonth;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())}function V(e){return!(!w.config.appendTo||!w.config.appendTo.contains(e))||w.calendarContainer.contains(e)}function Z(e){if(w.isOpen&&!w.config.inline){var t=g(e),n=V(t),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)),i="blur"===e.type?a&&e.relatedTarget&&!V(e.relatedTarget):!a&&!n&&!V(e.relatedTarget),o=!w.config.ignoredFocusElements.some((function(e){return e.contains(t)}));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()))}}function Q(e){if(!(!e||w.config.minDate&&e<w.config.minDate.getFullYear()||w.config.maxDate&&e>w.config.maxDate.getFullYear())){var t=e,n=w.currentYear!==t;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())}}function X(e,t){var n;void 0===t&&(t=!0);var a=w.parseDate(e,void 0,t);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;if(!w.config.enable&&0===w.config.disable.length)return!0;if(void 0===a)return!1;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++){if("function"==typeof(l=o[r])&&l(a))return i;if(l instanceof Date&&void 0!==a&&l.getTime()===a.getTime())return i;if("string"==typeof l){var c=w.parseDate(l,void 0,!0);return c&&c.getTime()===a.getTime()?i:!i}if("object"==typeof l&&void 0!==a&&l.from&&l.to&&a.getTime()>=l.from.getTime()&&a.getTime()<=l.to.getTime())return i}return!i}function ee(e){return void 0!==w.daysContainer&&(-1===e.className.indexOf("hidden")&&-1===e.className.indexOf("flatpickr-disabled")&&w.daysContainer.contains(e))}function te(e){!(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)}function ne(e){var t=g(e),n=w.config.wrap?p.contains(t):t===w._input,a=w.config.allowInput,i=w.isOpen&&(!a||!n),o=w.config.inline&&n&&!a;if(13===e.keyCode&&n){if(a)return w.setDate(w._input.value,!0,t===w.altInput?w.config.altFormat:w.config.dateFormat),t.blur();w.open()}else if(V(t)||i||o){var r=!!w.timeContainer&&w.timeContainer.contains(t);switch(e.keyCode){case 13:r?(e.preventDefault(),I(),se()):ue(e);break;case 27:e.preventDefault(),se();break;case 8:case 46:n&&!w.config.allowInput&&(e.preventDefault(),w.clear());break;case 37:case 39:if(r||n)w.hourElement&&w.hourElement.focus();else if(e.preventDefault(),void 0!==w.daysContainer&&(!1===a||document.activeElement&&ee(document.activeElement))){var l=39===e.keyCode?1:-1;e.ctrlKey?(e.stopPropagation(),G(l),R(W(1),0)):R(void 0,l)}break;case 38:case 40:e.preventDefault();var c=40===e.keyCode?1:-1;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());break;case 9:if(r){var d=[w.hourElement,w.minuteElement,w.secondElement,w.amPM].concat(w.pluginElements).filter((function(e){return e})),s=d.indexOf(t);if(-1!==s){var u=d[s+(e.shiftKey?-1:1)];e.preventDefault(),(u||w._input).focus()}}else!w.config.noCalendar&&w.daysContainer&&w.daysContainer.contains(t)&&e.shiftKey&&(e.preventDefault(),w._input.focus())}}if(void 0!==w.amPM&&t===w.amPM)switch(e.key){case w.l10n.amPM[0].charAt(0):case w.l10n.amPM[0].charAt(0).toLowerCase():w.amPM.textContent=w.l10n.amPM[0],S(),be();break;case w.l10n.amPM[1].charAt(0):case w.l10n.amPM[1].charAt(0).toLowerCase():w.amPM.textContent=w.l10n.amPM[1],S(),be()}(n||V(t))&&pe("onKeyDown",e)}function ae(e){if(1===w.selectedDates.length&&(!e||e.classList.contains("flatpickr-day")&&!e.classList.contains("flatpickr-disabled"))){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));for(var d=0;d<w.config.showMonths;d++)for(var s=w.daysContainer.children[d],u=function(a,i){var c,d,u,f=s.children[a],m=f.dateObj.getTime(),g=r>0&&m<r||l>0&&m>l;return g?(f.classList.add("notAllowed"),["inRange","startRange","endRange"].forEach((function(e){f.classList.remove(e)})),"continue"):o&&!g?"continue":(["startRange","inRange","endRange","notAllowed"].forEach((function(e){f.classList.remove(e)})),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"))))},f=0,m=s.children.length;f<m;f++)u(f)}}function ie(){!w.isOpen||w.config.static||w.config.inline||ce()}function oe(e){return function(t){var n=w.config["_"+e+"Date"]=w.parseDate(t,w.config.dateFormat),a=w.config["_"+("min"===e?"max":"min")+"Date"];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){return X(e)})),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())}}function re(){return w.config.wrap?p.querySelector("[data-input]"):p}function le(){"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({config:w.config,l10n:w.l10n})}function ce(e){if("function"!=typeof w.config.position){if(void 0!==w.calendarContainer){pe("onPreCalendarPosition");var t=e||w._positionElement,n=Array.prototype.reduce.call(w.calendarContainer.children,(function(e,t){return e+t.offsetHeight}),0),a=w.calendarContainer.offsetWidth,i=w.config.position.split(" "),o=i[0],r=i.length>1?i[1]:null,l=t.getBoundingClientRect(),c=window.innerHeight-l.bottom,s="above"===o||"below"!==o&&c<n&&l.top>n,u=window.pageYOffset+l.top+(s?-n-2:t.offsetHeight+2);if(d(w.calendarContainer,"arrowTop",!s),d(w.calendarContainer,"arrowBottom",s),!w.config.inline){var f=window.pageXOffset+l.left,m=!1,g=!1;"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);var p=window.document.body.offsetWidth-(window.pageXOffset+l.right),h=f+a>window.document.body.offsetWidth,v=p+a>window.document.body.offsetWidth;if(d(w.calendarContainer,"rightMost",h),!w.config.static)if(w.calendarContainer.style.top=u+"px",h)if(v){var D=function(){for(var e=null,t=0;t<document.styleSheets.length;t++){var n=document.styleSheets[t];try{n.cssRules}catch(e){continue}e=n;break}return null!=e?e:(a=document.createElement("style"),document.head.appendChild(a),a.sheet);var a}();if(void 0===D)return;var b=window.document.body.offsetWidth,C=Math.max(0,b/2-a/2),M=D.cssRules.length,y="{left:"+l.left+"px;right:auto;}";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"}else w.calendarContainer.style.left="auto",w.calendarContainer.style.right=p+"px";else w.calendarContainer.style.left=f+"px",w.calendarContainer.style.right="auto"}}}else w.config.position(w,e)}function de(){w.config.noCalendar||w.isMobile||(K(),De(),J())}function se(){w._input.focus(),-1!==window.navigator.userAgent.indexOf("MSIE")||void 0!==navigator.msMaxTouchPoints?setTimeout(w.close,0):w.close()}function ue(e){e.preventDefault(),e.stopPropagation();var t=f(g(e),(function(e){return e.classList&&e.classList.contains("flatpickr-day")&&!e.classList.contains("flatpickr-disabled")&&!e.classList.contains("notAllowed")}));if(void 0!==t){var n=t,a=w.latestSelectedDateObj=new Date(n.dateObj.getTime()),i=(a.getMonth()<w.currentMonth||a.getMonth()>w.currentMonth+w.config.showMonths-1)&&"range"!==w.config.mode;if(w.selectedDateElem=n,"single"===w.config.mode)w.selectedDates=[a];else if("multiple"===w.config.mode){var o=ve(a);o?w.selectedDates.splice(parseInt(o),1):w.selectedDates.push(a)}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){return e.getTime()-t.getTime()})));if(S(),i){var r=w.currentYear!==a.getFullYear();w.currentYear=a.getFullYear(),w.currentMonth=a.getMonth(),r&&(pe("onYearChange"),K()),pe("onMonthChange")}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){var l="single"===w.config.mode&&!w.config.enableTime,c="range"===w.config.mode&&2===w.selectedDates.length&&!w.config.enableTime;(l||c)&&se()}N()}}w.parseDate=C({config:w.config,l10n:w.l10n}),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){void 0===e&&(e=!0);void 0===t&&(t=!0);w.input.value="",void 0!==w.altInput&&(w.altInput.value="");void 0!==w.mobileInput&&(w.mobileInput.value="");w.selectedDates=[],w.latestSelectedDateObj=void 0,!0===t&&(w.currentYear=w._initialDate.getFullYear(),w.currentMonth=w._initialDate.getMonth());if(!0===w.config.enableTime){var n=x(w.config),a=n.hours,i=n.minutes,o=n.seconds;O(a,i,o)}w.redraw(),e&&pe("onChange")},w.close=function(){w.isOpen=!1,w.isMobile||(void 0!==w.calendarContainer&&w.calendarContainer.classList.remove("open"),void 0!==w._input&&w._input.classList.remove("active"));pe("onClose")},w._createElement=s,w.destroy=function(){void 0!==w.config&&pe("onDestroy");for(var e=w._handlers.length;e--;)w._handlers[e].remove();if(w._handlers=[],w.mobileInput)w.mobileInput.parentNode&&w.mobileInput.parentNode.removeChild(w.mobileInput),w.mobileInput=void 0;else if(w.calendarContainer&&w.calendarContainer.parentNode)if(w.config.static&&w.calendarContainer.parentNode){var t=w.calendarContainer.parentNode;if(t.lastChild&&t.removeChild(t.lastChild),t.parentNode){for(;t.firstChild;)t.parentNode.insertBefore(t.firstChild,t);t.parentNode.removeChild(t)}}else w.calendarContainer.parentNode.removeChild(w.calendarContainer);w.altInput&&(w.input.type="text",w.altInput.parentNode&&w.altInput.parentNode.removeChild(w.altInput),delete w.altInput);w.input&&(w.input.type=w.input._type,w.input.classList.remove("flatpickr-input"),w.input.removeAttribute("readonly"));["_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){try{delete w[e]}catch(e){}}))},w.isEnabled=X,w.jumpToDate=P,w.open=function(e,t){void 0===t&&(t=w._positionElement);if(!0===w.isMobile){if(e){e.preventDefault();var n=g(e);n&&n.blur()}return void 0!==w.mobileInput&&(w.mobileInput.focus(),w.mobileInput.click()),void pe("onOpen")}if(w._input.disabled||w.config.inline)return;var a=w.isOpen;w.isOpen=!0,a||(w.calendarContainer.classList.add("open"),w._input.classList.add("active"),pe("onOpen"),ce(t));!0===w.config.enableTime&&!0===w.config.noCalendar&&(!1!==w.config.allowInput||void 0!==e&&w.timeContainer.contains(e.relatedTarget)||setTimeout((function(){return w.hourElement.select()}),50))},w.redraw=de,w.set=function(e,t){if(null!==e&&"object"==typeof e)for(var a in Object.assign(w.config,e),e)void 0!==fe[a]&&fe[a].forEach((function(e){return e()}));else w.config[e]=t,void 0!==fe[e]?fe[e].forEach((function(e){return e()})):n.indexOf(e)>-1&&(w.config[e]=c(t));w.redraw(),be(!0)},w.setDate=function(e,t,n){void 0===t&&(t=!1);void 0===n&&(n=w.config.dateFormat);if(0!==e&&!e||e instanceof Array&&0===e.length)return w.clear(t);me(e,n),w.latestSelectedDateObj=w.selectedDates[w.selectedDates.length-1],w.redraw(),P(void 0,t),_(),0===w.selectedDates.length&&w.clear(!1);be(t),t&&pe("onChange")},w.toggle=function(e){if(!0===w.isOpen)return w.close();w.open(e)};var fe={locale:[le,z],showMonths:[q,k,$],minDate:[P],maxDate:[P],clickOpens:[function(){!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))}]};function me(e,t){var n=[];if(e instanceof Array)n=e.map((function(e){return w.parseDate(e,t)}));else if(e instanceof Date||"number"==typeof e)n=[w.parseDate(e,t)];else if("string"==typeof e)switch(w.config.mode){case"single":case"time":n=[w.parseDate(e,t)];break;case"multiple":n=e.split(w.config.conjunction).map((function(e){return w.parseDate(e,t)}));break;case"range":n=e.split(w.l10n.rangeSeparator).map((function(e){return w.parseDate(e,t)}))}else w.config.errorHandler(new Error("Invalid date supplied: "+JSON.stringify(e)));w.selectedDates=w.config.allowInvalidPreload?n:n.filter((function(e){return e instanceof Date&&X(e,!1)})),"range"===w.config.mode&&w.selectedDates.sort((function(e,t){return e.getTime()-t.getTime()}))}function ge(e){return e.slice().map((function(e){return"string"==typeof e||"number"==typeof e||e instanceof Date?w.parseDate(e,void 0,!0):e&&"object"==typeof e&&e.from&&e.to?{from:w.parseDate(e.from,void 0),to:w.parseDate(e.to,void 0)}:e})).filter((function(e){return e}))}function pe(e,t){if(void 0!==w.config){var n=w.config[e];if(void 0!==n&&n.length>0)for(var a=0;n[a]&&a<n.length;a++)n[a](w.selectedDates,w.input.value,w,t);"onChange"===e&&(w.input.dispatchEvent(he("change")),w.input.dispatchEvent(he("input")))}}function he(e){var t=document.createEvent("Event");return t.initEvent(e,!0,!0),t}function ve(e){for(var t=0;t<w.selectedDates.length;t++)if(0===M(w.selectedDates[t],e))return""+t;return!1}function De(){w.config.noCalendar||w.isMobile||!w.monthNav||(w.yearElements.forEach((function(e,t){var n=new Date(w.currentYear,w.currentMonth,1);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()})),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()))}function we(e){return w.selectedDates.map((function(t){return w.formatDate(t,e)})).filter((function(e,t,n){return"range"!==w.config.mode||w.config.enableTime||n.indexOf(e)===t})).join("range"!==w.config.mode?w.config.conjunction:w.l10n.rangeSeparator)}function be(e){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")}function Ce(e){var t=g(e),n=w.prevMonthNav.contains(t),a=w.nextMonthNav.contains(t);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)}return function(){w.element=w.input=p,w.isOpen=!1,function(){var t=["wrap","weekNumbers","allowInput","allowInvalidPreload","clickOpens","time_24hr","enableTime","noCalendar","altInput","shorthandCurrentMonth","inline","static","enableSeconds","disableMobile"],i=e(e({},JSON.parse(JSON.stringify(p.dataset||{}))),v),o={};w.config.parseDate=i.parseDate,w.config.formatDate=i.formatDate,Object.defineProperty(w.config,"enable",{get:function(){return w.config._enable},set:function(e){w.config._enable=ge(e)}}),Object.defineProperty(w.config,"disable",{get:function(){return w.config._disable},set:function(e){w.config._disable=ge(e)}});var r="time"===i.mode;if(!i.dateFormat&&(i.enableTime||r)){var l=T.defaultConfig.dateFormat||a.dateFormat;o.dateFormat=i.noCalendar||r?"H:i"+(i.enableSeconds?":S":""):l+" H:i"+(i.enableSeconds?":S":"")}if(i.altInput&&(i.enableTime||r)&&!i.altFormat){var d=T.defaultConfig.altFormat||a.altFormat;o.altFormat=i.noCalendar||r?"h:i"+(i.enableSeconds?":S K":" K"):d+" h:i"+(i.enableSeconds?":S":"")+" K"}Object.defineProperty(w.config,"minDate",{get:function(){return w.config._minDate},set:oe("min")}),Object.defineProperty(w.config,"maxDate",{get:function(){return w.config._maxDate},set:oe("max")});var s=function(e){return function(t){w.config["min"===e?"_minTime":"_maxTime"]=w.parseDate(t,"H:i:S")}};Object.defineProperty(w.config,"minTime",{get:function(){return w.config._minTime},set:s("min")}),Object.defineProperty(w.config,"maxTime",{get:function(){return w.config._maxTime},set:s("max")}),"time"===i.mode&&(w.config.noCalendar=!0,w.config.enableTime=!0);Object.assign(w.config,o,i);for(var u=0;u<t.length;u++)w.config[t[u]]=!0===w.config[t[u]]||"true"===w.config[t[u]];n.filter((function(e){return void 0!==w.config[e]})).forEach((function(e){w.config[e]=c(w.config[e]||[]).map(E)})),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);for(u=0;u<w.config.plugins.length;u++){var f=w.config.plugins[u](w)||{};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])}i.altInputClass||(w.config.altInputClass=re().className+" "+w.config.altInputClass);pe("onParseConfig")}(),le(),function(){if(w.input=re(),!w.input)return void w.config.errorHandler(new Error("Invalid input element specified"));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));w.config.allowInput||w._input.setAttribute("readonly","readonly");w._positionElement=w.config.positionElement||w._input}(),function(){w.selectedDates=[],w.now=w.parseDate(w.config.now)||new Date;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);e&&me(e,w.config.dateFormat);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]);void 0!==w.config.minTime&&(w.config.minTime=w.parseDate(w.config.minTime,"H:i"));void 0!==w.config.maxTime&&(w.config.maxTime=w.parseDate(w.config.maxTime,"H:i"));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)}(),w.utils={getDaysInMonth:function(e,t){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]}},w.isMobile||function(){var e=window.document.createDocumentFragment();if(w.calendarContainer=s("div","flatpickr-calendar"),w.calendarContainer.tabIndex=-1,!w.config.noCalendar){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",{get:function(){return w.__hidePrevMonthArrow},set:function(e){w.__hidePrevMonthArrow!==e&&(d(w.prevMonthNav,"flatpickr-disabled",e),w.__hidePrevMonthArrow=e)}}),Object.defineProperty(w,"_hideNextMonthArrow",{get:function(){return w.__hideNextMonthArrow},set:function(e){w.__hideNextMonthArrow!==e&&(d(w.nextMonthNav,"flatpickr-disabled",e),w.__hideNextMonthArrow=e)}}),w.currentYearElement=w.yearElements[0],De(),w.monthNav)),w.innerContainer=s("div","flatpickr-innerContainer"),w.config.weekNumbers){var t=function(){w.calendarContainer.classList.add("hasWeeks");var e=s("div","flatpickr-weekwrapper");e.appendChild(s("span","flatpickr-weekday",w.l10n.weekAbbreviation));var t=s("div","flatpickr-weeks");return e.appendChild(t),{weekWrapper:e,weekNumbers:t}}(),n=t.weekWrapper,a=t.weekNumbers;w.innerContainer.appendChild(n),w.weekNumbers=a,w.weekWrapper=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)}w.config.enableTime&&e.appendChild(function(){w.calendarContainer.classList.add("hasTime"),w.config.noCalendar&&w.calendarContainer.classList.add("noCalendar");var e=x(w.config);w.timeContainer=s("div","flatpickr-time"),w.timeContainer.tabIndex=-1;var t=s("span","flatpickr-time-separator",":"),n=m("flatpickr-hour",{"aria-label":w.l10n.hourAriaLabel});w.hourElement=n.getElementsByTagName("input")[0];var a=m("flatpickr-minute",{"aria-label":w.l10n.minuteAriaLabel});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){switch(e%24){case 0:case 12:return 12;default:return e%12}}(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");if(w.config.enableSeconds){w.timeContainer.classList.add("hasSeconds");var i=m("flatpickr-second");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)}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));return w.timeContainer}());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);var i=void 0!==w.config.appendTo&&void 0!==w.config.appendTo.nodeType;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)){var l=s("div","flatpickr-wrapper");w.element.parentNode&&w.element.parentNode.insertBefore(l,w.element),l.appendChild(w.element),w.altInput&&l.appendChild(w.altInput),l.appendChild(w.calendarContainer)}w.config.static||w.config.inline||(void 0!==w.config.appendTo?w.config.appendTo:window.document.body).appendChild(w.calendarContainer)}(),function(){w.config.wrap&&["open","close","toggle","clear"].forEach((function(e){Array.prototype.forEach.call(w.element.querySelectorAll("[data-"+e+"]"),(function(t){return A(t,"click",w[e])}))}));if(w.isMobile)return void function(){var e=w.config.enableTime?w.config.noCalendar?"time":"datetime-local":"date";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));w.config.minDate&&(w.mobileInput.min=w.formatDate(w.config.minDate,"Y-m-d"));w.config.maxDate&&(w.mobileInput.max=w.formatDate(w.config.maxDate,"Y-m-d"));w.input.getAttribute("step")&&(w.mobileInput.step=String(w.input.getAttribute("step")));w.input.type="hidden",void 0!==w.altInput&&(w.altInput.type="hidden");try{w.input.parentNode&&w.input.parentNode.insertBefore(w.mobileInput,w.input.nextSibling)}catch(e){}A(w.mobileInput,"change",(function(e){w.setDate(g(e).value,!1,w.mobileFormatStr),pe("onChange"),pe("onClose")}))}();var e=l(ie,50);w._debouncedChange=l(N,300),w.daysContainer&&!/iPhone|iPad|iPod/i.test(navigator.userAgent)&&A(w.daysContainer,"mouseover",(function(e){"range"===w.config.mode&&ae(g(e))}));A(window.document.body,"keydown",ne),w.config.inline||w.config.static||A(window,"resize",e);void 0!==window.ontouchstart?A(window.document,"touchstart",Z):A(window.document,"mousedown",Z);A(window.document,"focus",Z,{capture:!0}),!0===w.config.clickOpens&&(A(w._input,"focus",w.open),A(w._input,"click",w.open));void 0!==w.daysContainer&&(A(w.monthNav,"click",Ce),A(w.monthNav,["keyup","increment"],F),A(w.daysContainer,"click",ue));if(void 0!==w.timeContainer&&void 0!==w.minuteElement&&void 0!==w.hourElement){var t=function(e){return g(e).select()};A(w.timeContainer,["increment"],I),A(w.timeContainer,"blur",I,{capture:!0}),A(w.timeContainer,"click",Y),A([w.hourElement,w.minuteElement],["focus","click"],t),void 0!==w.secondElement&&A(w.secondElement,"focus",(function(){return w.secondElement&&w.secondElement.select()})),void 0!==w.amPM&&A(w.amPM,"click",(function(e){I(e),N()}))}w.config.allowInput&&A(w._input,"blur",te)}(),(w.selectedDates.length||w.config.noCalendar)&&(w.config.enableTime&&_(w.config.noCalendar?w.latestSelectedDateObj:void 0),be(!1)),k();var t=/^((?!chrome|android).)*safari/i.test(navigator.userAgent);!w.isMobile&&t&&ce(),pe("onReady")}(),w}function k(e,t){for(var n=Array.prototype.slice.call(e).filter((function(e){return e instanceof HTMLElement})),a=[],i=0;i<n.length;i++){var o=n[i];try{if(null!==o.getAttribute("data-fp-omit"))continue;void 0!==o._flatpickr&&(o._flatpickr.destroy(),o._flatpickr=void 0),o._flatpickr=E(o,t||{}),a.push(o._flatpickr)}catch(e){console.error(e)}}return 1===a.length?a[0]:a}"undefined"!=typeof HTMLElement&&"undefined"!=typeof HTMLCollection&&"undefined"!=typeof NodeList&&(HTMLCollection.prototype.flatpickr=NodeList.prototype.flatpickr=function(e){return k(this,e)},HTMLElement.prototype.flatpickr=function(e){return k([this],e)});var T=function(e,t){return"string"==typeof e?k(window.document.querySelectorAll(e),t):e instanceof Node?k([e],t):k(e,t)};return T.defaultConfig={},T.l10ns={en:e({},i),default:e({},i)},T.localize=function(t){T.l10ns.default=e(e({},T.l10ns.default),t)},T.setDefaults=function(t){T.defaultConfig=e(e({},T.defaultConfig),t)},T.parseDate=C({}),T.formatDate=b({}),T.compareDates=M,"undefined"!=typeof jQuery&&void 0!==jQuery.fn&&(jQuery.fn.flatpickr=function(e){return k(this,e)}),Date.prototype.fp_incr=function(e){return new Date(this.getFullYear(),this.getMonth(),this.getDate()+("string"==typeof e?parseInt(e,10):e))},"undefined"!=typeof window&&(window.flatpickr=T),T}));
7277
7263
 
7278
7264
  /***/ }),
7279
7265
 
@@ -13243,9 +13229,9 @@ var CdsTooltipInteractive_component = normalizeComponent(
13243
13229
  )
13244
13230
 
13245
13231
  /* harmony default export */ var CdsTooltipInteractive = (CdsTooltipInteractive_component.exports);
13246
- ;// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/CdsTooltip/CdsTooltip.vue?vue&type=template&id=043fd755&
13247
- var CdsTooltipvue_type_template_id_043fd755_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',_vm._g({class:_vm.classesTooltip,attrs:{"aria-label":_vm.tip,"tabindex":"0","aria-describedby":_vm.id}},_vm.events),[_vm._t("default"),_vm._v(" "),_c('span',{class:_vm.classesContent,attrs:{"role":"tooltip","aria-hidden":[!_vm.isVisible]}},[_vm._v("\n "+_vm._s(_vm.tip)+"\n ")])],2)}
13248
- var CdsTooltipvue_type_template_id_043fd755_staticRenderFns = []
13232
+ ;// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/CdsTooltip/CdsTooltip.vue?vue&type=template&id=241bee0b&
13233
+ var CdsTooltipvue_type_template_id_241bee0b_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',_vm._g({ref:"trigger",class:_vm.classesTooltip,attrs:{"aria-label":_vm.tip,"tabindex":"0","aria-describedby":_vm.id}},_vm.events),[_vm._t("default"),_vm._v(" "),_c('span',{ref:"content",class:_vm.classesContent,style:({ left: _vm.left + 'px', top: _vm.top + 'px' }),attrs:{"role":"tooltip","aria-hidden":[!_vm.isVisible]}},[_vm._v("\n "+_vm._s(_vm.tip)+"\n ")])],2)}
13234
+ var CdsTooltipvue_type_template_id_241bee0b_staticRenderFns = []
13249
13235
 
13250
13236
 
13251
13237
  ;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/CdsTooltip/CdsTooltip.vue?vue&type=script&lang=js&
@@ -13260,6 +13246,12 @@ var CdsTooltipvue_type_template_id_043fd755_staticRenderFns = []
13260
13246
  //
13261
13247
  //
13262
13248
  //
13249
+ //
13250
+ //
13251
+ //
13252
+ //
13253
+ //
13254
+ //
13263
13255
 
13264
13256
 
13265
13257
 
@@ -13301,22 +13293,24 @@ var CdsTooltipvue_type_script_lang_js_PROPS_AVAILABLE = {
13301
13293
  },
13302
13294
  data: function data() {
13303
13295
  return {
13304
- isVisible: false
13296
+ isVisible: false,
13297
+ left: -99999,
13298
+ top: 0
13305
13299
  };
13306
13300
  },
13307
13301
  computed: {
13308
13302
  classesTooltip: function classesTooltip() {
13309
- return _defineProperty({
13303
+ return {
13310
13304
  'cds-tooltip': true,
13311
13305
  'cds-tooltip__trigger': true
13312
- }, state.active, this.isVisible);
13306
+ };
13313
13307
  },
13314
13308
  classesContent: function classesContent() {
13315
- var _ref2;
13309
+ var _ref;
13316
13310
 
13317
- return _ref2 = {
13311
+ return _ref = {
13318
13312
  'cds-tooltip__content': true
13319
- }, _defineProperty(_ref2, this.direction, this.direction), _defineProperty(_ref2, this.align, this.align), _ref2;
13313
+ }, _defineProperty(_ref, this.direction, this.direction), _defineProperty(_ref, this.align, this.align), _defineProperty(_ref, state.active, this.isVisible), _ref;
13320
13314
  },
13321
13315
  events: function events() {
13322
13316
  return _objectSpread2(_objectSpread2({}, this.$listeners), {}, {
@@ -13333,20 +13327,78 @@ var CdsTooltipvue_type_script_lang_js_PROPS_AVAILABLE = {
13333
13327
  }
13334
13328
  },
13335
13329
  mounted: function mounted() {
13330
+ this.tooltipContent = document.body.appendChild(this.$refs.content);
13331
+
13336
13332
  if (this.visible) {
13337
13333
  this.show();
13338
13334
  } else {
13339
13335
  this.hide();
13340
13336
  }
13341
13337
  },
13338
+ beforeDestroy: function beforeDestroy() {
13339
+ this._positionListen(false);
13340
+
13341
+ if (this.tooltipContent) {
13342
+ this.$el.appendChild(this.tooltipContent);
13343
+ }
13344
+ },
13342
13345
  methods: {
13346
+ _positionListen: function _positionListen(on) {
13347
+ if (on) {
13348
+ window.addEventListener('scroll', this._calculatePosition);
13349
+ window.addEventListener('resize', this._calculatePosition);
13350
+ } else {
13351
+ window.removeEventListener('scroll', this._calculatePosition);
13352
+ window.removeEventListener('resize', this._calculatePosition);
13353
+ }
13354
+ },
13355
+ _calculatePosition: function _calculatePosition() {
13356
+ var triggerPosition = this.$refs.trigger.getBoundingClientRect();
13357
+ var pixelsScrolledX = window.scrollX || window.pageXOffset;
13358
+ var pixelsScrolledY = window.scrollY || window.pageYOffset;
13359
+
13360
+ if (this.direction === 'top' || this.direction === 'bottom') {
13361
+ this.left = triggerPosition.left + 0.5 + (this.$refs.trigger.offsetWidth - this.$refs.content.offsetWidth) / 2 + pixelsScrolledX;
13362
+
13363
+ if (this.direction === 'bottom') {
13364
+ this.top = triggerPosition.bottom + 10 + pixelsScrolledY;
13365
+ } else {
13366
+ this.top = triggerPosition.top - 15 - this.$refs.content.offsetHeight + pixelsScrolledY;
13367
+ }
13368
+
13369
+ if (this.align === 'start') {
13370
+ this.left += this.$refs.content.offsetWidth / 2 - this.$refs.trigger.offsetWidth;
13371
+ }
13372
+
13373
+ if (this.align === 'end') {
13374
+ this.left -= this.$refs.content.offsetWidth / 2 - this.$refs.trigger.offsetWidth;
13375
+ }
13376
+ } else {
13377
+ this.top = triggerPosition.top + (this.$refs.trigger.offsetHeight - 0.5 - this.$refs.content.offsetHeight) / 2 + pixelsScrolledY;
13378
+
13379
+ if (this.direction === 'left') {
13380
+ this.left = triggerPosition.left - 10 - this.$refs.content.offsetWidth + pixelsScrolledX;
13381
+ } else {
13382
+ this.left = triggerPosition.right + 15 + pixelsScrolledX;
13383
+ }
13384
+ }
13385
+ },
13386
+
13343
13387
  /**
13344
13388
  * Показать тултип
13345
13389
  *
13346
13390
  * @method show
13347
13391
  */
13348
13392
  show: function show() {
13393
+ var _this = this;
13394
+
13349
13395
  this.isVisible = true;
13396
+
13397
+ this._positionListen(true);
13398
+
13399
+ this.$nextTick(function () {
13400
+ _this._calculatePosition();
13401
+ });
13350
13402
  /**
13351
13403
  * Тултип показан
13352
13404
  *
@@ -13364,6 +13416,8 @@ var CdsTooltipvue_type_script_lang_js_PROPS_AVAILABLE = {
13364
13416
  */
13365
13417
  hide: function hide() {
13366
13418
  this.isVisible = false;
13419
+
13420
+ this._positionListen(false);
13367
13421
  /**
13368
13422
  * Тултип скрыт
13369
13423
  *
@@ -13371,6 +13425,7 @@ var CdsTooltipvue_type_script_lang_js_PROPS_AVAILABLE = {
13371
13425
  * @property boolean
13372
13426
  */
13373
13427
 
13428
+
13374
13429
  this.$emit('hide', false);
13375
13430
  },
13376
13431
  _onFocus: function _onFocus(e) {
@@ -13409,8 +13464,8 @@ var CdsTooltipvue_type_script_lang_js_PROPS_AVAILABLE = {
13409
13464
 
13410
13465
  var CdsTooltip_component = normalizeComponent(
13411
13466
  CdsTooltip_CdsTooltipvue_type_script_lang_js_,
13412
- CdsTooltipvue_type_template_id_043fd755_render,
13413
- CdsTooltipvue_type_template_id_043fd755_staticRenderFns,
13467
+ CdsTooltipvue_type_template_id_241bee0b_render,
13468
+ CdsTooltipvue_type_template_id_241bee0b_staticRenderFns,
13414
13469
  false,
13415
13470
  null,
13416
13471
  null,
@@ -13961,7 +14016,7 @@ var notification = function notification() {
13961
14016
  });
13962
14017
  ;// CONCATENATED MODULE: ./src/index.scss
13963
14018
  // extracted by mini-css-extract-plugin
13964
- /* harmony default export */ var src = ({"cds-border-radius-s":"cds-border-radius-s","cds-border-radius-m":"cds-border-radius-m","cds-border-radius-l":"cds-border-radius-l","cds-color-background-page-primary":"cds-color-background-page-primary","cds-color-background-page-secondary":"cds-color-background-page-secondary","cds-color-background-container-primary":"cds-color-background-container-primary","cds-color-background-container-secondary":"cds-color-background-container-secondary","cds-color-background-field-primary":"cds-color-background-field-primary","cds-color-background-field-secondary":"cds-color-background-field-secondary","cds-color-background-element-primary":"cds-color-background-element-primary","cds-color-background-inverse":"cds-color-background-inverse","cds-color-border-element-primary":"cds-color-border-element-primary","cds-color-border-element-secondary":"cds-color-border-element-secondary","cds-color-disabled-01":"cds-color-disabled-01","cds-color-disabled-02":"cds-color-disabled-02","cds-color-feedback-error-10":"cds-color-feedback-error-10","cds-color-feedback-error-20":"cds-color-feedback-error-20","cds-color-feedback-error-100":"cds-color-feedback-error-100","cds-color-feedback-warning-10":"cds-color-feedback-warning-10","cds-color-feedback-warning-20":"cds-color-feedback-warning-20","cds-color-feedback-warning-100":"cds-color-feedback-warning-100","cds-color-feedback-success-10":"cds-color-feedback-success-10","cds-color-feedback-success-20":"cds-color-feedback-success-20","cds-color-feedback-success-100":"cds-color-feedback-success-100","cds-color-feedback-info-10":"cds-color-feedback-info-10","cds-color-feedback-info-20":"cds-color-feedback-info-20","cds-color-feedback-info-100":"cds-color-feedback-info-100","cds-color-feedback-progress-10":"cds-color-feedback-progress-10","cds-color-feedback-progress-20":"cds-color-feedback-progress-20","cds-color-feedback-progress-100":"cds-color-feedback-progress-100","cds-color-icon-default":"cds-color-icon-default","cds-color-icon-inverse":"cds-color-icon-inverse","cds-color-interactive-01":"cds-color-interactive-01","cds-color-interactive-02":"cds-color-interactive-02","cds-color-link-default":"cds-color-link-default","cds-color-link-visited":"cds-color-link-visited","cds-color-neutral-0":"cds-color-neutral-0","cds-color-neutral-4":"cds-color-neutral-4","cds-color-neutral-8":"cds-color-neutral-8","cds-color-neutral-10":"cds-color-neutral-10","cds-color-neutral-15":"cds-color-neutral-15","cds-color-neutral-25":"cds-color-neutral-25","cds-color-neutral-40":"cds-color-neutral-40","cds-color-neutral-48":"cds-color-neutral-48","cds-color-neutral-66":"cds-color-neutral-66","cds-color-neutral-100":"cds-color-neutral-100","cds-color-overlay-01":"cds-color-overlay-01","cds-color-overlay-02":"cds-color-overlay-02","cds-color-text-primary":"cds-color-text-primary","cds-color-text-secondary":"cds-color-text-secondary","cds-color-text-description":"cds-color-text-description","cds-color-text-label":"cds-color-text-label","cds-color-text-placeholder":"cds-color-text-placeholder","cds-color-text-inverse":"cds-color-text-inverse","cds-font-family-size":"cds-font-family-size","cds-font-body-size-xs":"cds-font-body-size-xs","cds-font-body-size-s":"cds-font-body-size-s","cds-font-body-size-m":"cds-font-body-size-m","cds-font-body-size-l":"cds-font-body-size-l","cds-font-heading-1":"cds-font-heading-1","cds-font-heading-2":"cds-font-heading-2","cds-font-heading-3":"cds-font-heading-3","cds-font-heading-4":"cds-font-heading-4","cds-font-heading-5":"cds-font-heading-5","cds-font-heading-6":"cds-font-heading-6","cds-font-heading-eyebrow":"cds-font-heading-eyebrow","cds-font-display-1":"cds-font-display-1","cds-font-display-2":"cds-font-display-2","cds-font-weight-bold":"cds-font-weight-bold","cds-font-weight-semi-bold":"cds-font-weight-semi-bold","cds-font-weight-normal":"cds-font-weight-normal","cds-font-weight-light":"cds-font-weight-light","cds-font-height-body":"cds-font-height-body","cds-font-height-heading":"cds-font-height-heading","cds-font-height-display":"cds-font-height-display","cds-font-height-helper":"cds-font-height-helper","cds-font-margin-heading-1":"cds-font-margin-heading-1","cds-font-margin-heading-2":"cds-font-margin-heading-2","cds-font-margin-heading-3":"cds-font-margin-heading-3","cds-font-margin-heading-4":"cds-font-margin-heading-4","cds-font-margin-heading-5":"cds-font-margin-heading-5","cds-font-margin-heading-6":"cds-font-margin-heading-6","cds-font-margin-display-1":"cds-font-margin-display-1","cds-font-margin-display-2":"cds-font-margin-display-2","cds-font-margin-s":"cds-font-margin-s","cds-box-shadow-header":"cds-box-shadow-header","cds-box-shadow-footer":"cds-box-shadow-footer","cds-box-shadow-sidebar-left":"cds-box-shadow-sidebar-left","cds-box-shadow-sidebar-right":"cds-box-shadow-sidebar-right","cds-box-shadow-menu":"cds-box-shadow-menu","cds-box-shadow-modal":"cds-box-shadow-modal","cds-box-shadow-notification":"cds-box-shadow-notification","cds-block":"cds-block","cds-inline-block":"cds-inline-block","cds-inline":"cds-inline","cds-flex":"cds-flex","cds-inline-flex":"cds-inline-flex","cds-hidden":"cds-hidden","cds-flex-col":"cds-flex-col","cds-flex-row":"cds-flex-row","cds-flex-row-reverse":"cds-flex-row-reverse","cds-flex-col-reverse":"cds-flex-col-reverse","cds-invisible":"cds-invisible","cds-visible":"cds-visible","cds-layer-extra-low":"cds-layer-extra-low","cds-layer-low":"cds-layer-low","cds-layer-middle":"cds-layer-middle","cds-layer-high":"cds-layer-high","cds-layer-extra-high":"cds-layer-extra-high","cds-pa-none":"cds-pa-none","cds-pa-3xs":"cds-pa-3xs","cds-pa-xxs":"cds-pa-xxs","cds-pa-xs":"cds-pa-xs","cds-pa-s":"cds-pa-s","cds-pa-m":"cds-pa-m","cds-pa-l":"cds-pa-l","cds-pa-xl":"cds-pa-xl","cds-pa-xxl":"cds-pa-xxl","cds-pa-3xl":"cds-pa-3xl","cds-pa-4xl":"cds-pa-4xl","cds-pa-5xl":"cds-pa-5xl","cds-pa-6xl":"cds-pa-6xl","cds-pt-none":"cds-pt-none","cds-pt-3xs":"cds-pt-3xs","cds-pt-xxs":"cds-pt-xxs","cds-pt-xs":"cds-pt-xs","cds-pt-s":"cds-pt-s","cds-pt-m":"cds-pt-m","cds-pt-l":"cds-pt-l","cds-pt-xl":"cds-pt-xl","cds-pt-xxl":"cds-pt-xxl","cds-pt-3xl":"cds-pt-3xl","cds-pt-4xl":"cds-pt-4xl","cds-pt-5xl":"cds-pt-5xl","cds-pt-6xl":"cds-pt-6xl","cds-pb-none":"cds-pb-none","cds-pb-3xs":"cds-pb-3xs","cds-pb-xxs":"cds-pb-xxs","cds-pb-xs":"cds-pb-xs","cds-pb-s":"cds-pb-s","cds-pb-m":"cds-pb-m","cds-pb-l":"cds-pb-l","cds-pb-xl":"cds-pb-xl","cds-pb-xxl":"cds-pb-xxl","cds-pb-3xl":"cds-pb-3xl","cds-pb-4xl":"cds-pb-4xl","cds-pb-5xl":"cds-pb-5xl","cds-pb-6xl":"cds-pb-6xl","cds-pr-none":"cds-pr-none","cds-pr-3xs":"cds-pr-3xs","cds-pr-xxs":"cds-pr-xxs","cds-pr-xs":"cds-pr-xs","cds-pr-s":"cds-pr-s","cds-pr-m":"cds-pr-m","cds-pr-l":"cds-pr-l","cds-pr-xl":"cds-pr-xl","cds-pr-xxl":"cds-pr-xxl","cds-pr-3xl":"cds-pr-3xl","cds-pr-4xl":"cds-pr-4xl","cds-pr-5xl":"cds-pr-5xl","cds-pr-6xl":"cds-pr-6xl","cds-pl-none":"cds-pl-none","cds-pl-3xs":"cds-pl-3xs","cds-pl-xxs":"cds-pl-xxs","cds-pl-xs":"cds-pl-xs","cds-pl-s":"cds-pl-s","cds-pl-m":"cds-pl-m","cds-pl-l":"cds-pl-l","cds-pl-xl":"cds-pl-xl","cds-pl-xxl":"cds-pl-xxl","cds-pl-3xl":"cds-pl-3xl","cds-pl-4xl":"cds-pl-4xl","cds-pl-5xl":"cds-pl-5xl","cds-pl-6xl":"cds-pl-6xl","cds-px-none":"cds-px-none","cds-px-3xs":"cds-px-3xs","cds-px-xxs":"cds-px-xxs","cds-px-xs":"cds-px-xs","cds-px-s":"cds-px-s","cds-px-m":"cds-px-m","cds-px-l":"cds-px-l","cds-px-xl":"cds-px-xl","cds-px-xxl":"cds-px-xxl","cds-px-3xl":"cds-px-3xl","cds-px-4xl":"cds-px-4xl","cds-px-5xl":"cds-px-5xl","cds-px-6xl":"cds-px-6xl","cds-py-none":"cds-py-none","cds-py-3xs":"cds-py-3xs","cds-py-xxs":"cds-py-xxs","cds-py-xs":"cds-py-xs","cds-py-s":"cds-py-s","cds-py-m":"cds-py-m","cds-py-l":"cds-py-l","cds-py-xl":"cds-py-xl","cds-py-xxl":"cds-py-xxl","cds-py-3xl":"cds-py-3xl","cds-py-4xl":"cds-py-4xl","cds-py-5xl":"cds-py-5xl","cds-py-6xl":"cds-py-6xl","cds-ma-none":"cds-ma-none","cds-ma-3xs":"cds-ma-3xs","cds-ma-xxs":"cds-ma-xxs","cds-ma-xs":"cds-ma-xs","cds-ma-s":"cds-ma-s","cds-ma-m":"cds-ma-m","cds-ma-l":"cds-ma-l","cds-ma-xl":"cds-ma-xl","cds-ma-xxl":"cds-ma-xxl","cds-ma-3xl":"cds-ma-3xl","cds-ma-4xl":"cds-ma-4xl","cds-ma-5xl":"cds-ma-5xl","cds-ma-6xl":"cds-ma-6xl","cds-mt-none":"cds-mt-none","cds-mt-3xs":"cds-mt-3xs","cds-mt-xxs":"cds-mt-xxs","cds-mt-xs":"cds-mt-xs","cds-mt-s":"cds-mt-s","cds-mt-m":"cds-mt-m","cds-mt-l":"cds-mt-l","cds-mt-xl":"cds-mt-xl","cds-mt-xxl":"cds-mt-xxl","cds-mt-3xl":"cds-mt-3xl","cds-mt-4xl":"cds-mt-4xl","cds-mt-5xl":"cds-mt-5xl","cds-mt-6xl":"cds-mt-6xl","cds-mb-none":"cds-mb-none","cds-mb-3xs":"cds-mb-3xs","cds-mb-xxs":"cds-mb-xxs","cds-mb-xs":"cds-mb-xs","cds-mb-s":"cds-mb-s","cds-mb-m":"cds-mb-m","cds-mb-l":"cds-mb-l","cds-mb-xl":"cds-mb-xl","cds-mb-xxl":"cds-mb-xxl","cds-mb-3xl":"cds-mb-3xl","cds-mb-4xl":"cds-mb-4xl","cds-mb-5xl":"cds-mb-5xl","cds-mb-6xl":"cds-mb-6xl","cds-mr-none":"cds-mr-none","cds-mr-3xs":"cds-mr-3xs","cds-mr-xxs":"cds-mr-xxs","cds-mr-xs":"cds-mr-xs","cds-mr-s":"cds-mr-s","cds-mr-m":"cds-mr-m","cds-mr-l":"cds-mr-l","cds-mr-xl":"cds-mr-xl","cds-mr-xxl":"cds-mr-xxl","cds-mr-3xl":"cds-mr-3xl","cds-mr-4xl":"cds-mr-4xl","cds-mr-5xl":"cds-mr-5xl","cds-mr-6xl":"cds-mr-6xl","cds-ml-none":"cds-ml-none","cds-ml-3xs":"cds-ml-3xs","cds-ml-xxs":"cds-ml-xxs","cds-ml-xs":"cds-ml-xs","cds-ml-s":"cds-ml-s","cds-ml-m":"cds-ml-m","cds-ml-l":"cds-ml-l","cds-ml-xl":"cds-ml-xl","cds-ml-xxl":"cds-ml-xxl","cds-ml-3xl":"cds-ml-3xl","cds-ml-4xl":"cds-ml-4xl","cds-ml-5xl":"cds-ml-5xl","cds-ml-6xl":"cds-ml-6xl","cds-mx-none":"cds-mx-none","cds-mx-3xs":"cds-mx-3xs","cds-mx-xxs":"cds-mx-xxs","cds-mx-xs":"cds-mx-xs","cds-mx-s":"cds-mx-s","cds-mx-m":"cds-mx-m","cds-mx-l":"cds-mx-l","cds-mx-xl":"cds-mx-xl","cds-mx-xxl":"cds-mx-xxl","cds-mx-3xl":"cds-mx-3xl","cds-mx-4xl":"cds-mx-4xl","cds-mx-5xl":"cds-mx-5xl","cds-mx-6xl":"cds-mx-6xl","cds-my-none":"cds-my-none","cds-my-3xs":"cds-my-3xs","cds-my-xxs":"cds-my-xxs","cds-my-xs":"cds-my-xs","cds-my-s":"cds-my-s","cds-my-m":"cds-my-m","cds-my-l":"cds-my-l","cds-my-xl":"cds-my-xl","cds-my-xxl":"cds-my-xxl","cds-my-3xl":"cds-my-3xl","cds-my-4xl":"cds-my-4xl","cds-my-5xl":"cds-my-5xl","cds-my-6xl":"cds-my-6xl","cds-text-h1":"cds-text-h1","cds-text-h2":"cds-text-h2","cds-text-h3":"cds-text-h3","cds-text-h4":"cds-text-h4","cds-text-h5":"cds-text-h5","cds-text-h6":"cds-text-h6","cds-text-xs":"cds-text-xs","cds-text-sm":"cds-text-sm","cds-text-md":"cds-text-md","cds-text-lg":"cds-text-lg","cds-text-display-1":"cds-text-display-1","cds-text-display-2":"cds-text-display-2","h1":"h1","h2":"h2","h3":"h3","h4":"h4","h5":"h5","h6":"h6","small":"small"});
14019
+ /* harmony default export */ var src = ({"cds-border-radius-s":"cds-border-radius-s","cds-border-radius-m":"cds-border-radius-m","cds-border-radius-l":"cds-border-radius-l","cds-color-background-page-primary":"cds-color-background-page-primary","cds-color-background-page-secondary":"cds-color-background-page-secondary","cds-color-background-container-primary":"cds-color-background-container-primary","cds-color-background-container-secondary":"cds-color-background-container-secondary","cds-color-background-field-primary":"cds-color-background-field-primary","cds-color-background-field-secondary":"cds-color-background-field-secondary","cds-color-background-element-primary":"cds-color-background-element-primary","cds-color-background-inverse":"cds-color-background-inverse","cds-color-border-element-primary":"cds-color-border-element-primary","cds-color-border-element-secondary":"cds-color-border-element-secondary","cds-color-disabled-01":"cds-color-disabled-01","cds-color-disabled-02":"cds-color-disabled-02","cds-color-feedback-error-10":"cds-color-feedback-error-10","cds-color-feedback-error-20":"cds-color-feedback-error-20","cds-color-feedback-error-100":"cds-color-feedback-error-100","cds-color-feedback-warning-10":"cds-color-feedback-warning-10","cds-color-feedback-warning-20":"cds-color-feedback-warning-20","cds-color-feedback-warning-100":"cds-color-feedback-warning-100","cds-color-feedback-success-10":"cds-color-feedback-success-10","cds-color-feedback-success-20":"cds-color-feedback-success-20","cds-color-feedback-success-100":"cds-color-feedback-success-100","cds-color-feedback-info-10":"cds-color-feedback-info-10","cds-color-feedback-info-20":"cds-color-feedback-info-20","cds-color-feedback-info-100":"cds-color-feedback-info-100","cds-color-feedback-progress-10":"cds-color-feedback-progress-10","cds-color-feedback-progress-20":"cds-color-feedback-progress-20","cds-color-feedback-progress-100":"cds-color-feedback-progress-100","cds-color-icon-default":"cds-color-icon-default","cds-color-icon-inverse":"cds-color-icon-inverse","cds-color-interactive-01":"cds-color-interactive-01","cds-color-interactive-02":"cds-color-interactive-02","cds-color-link-default":"cds-color-link-default","cds-color-link-visited":"cds-color-link-visited","cds-color-neutral-0":"cds-color-neutral-0","cds-color-neutral-4":"cds-color-neutral-4","cds-color-neutral-8":"cds-color-neutral-8","cds-color-neutral-10":"cds-color-neutral-10","cds-color-neutral-15":"cds-color-neutral-15","cds-color-neutral-25":"cds-color-neutral-25","cds-color-neutral-40":"cds-color-neutral-40","cds-color-neutral-48":"cds-color-neutral-48","cds-color-neutral-66":"cds-color-neutral-66","cds-color-neutral-100":"cds-color-neutral-100","cds-color-overlay-01":"cds-color-overlay-01","cds-color-overlay-02":"cds-color-overlay-02","cds-color-text-primary":"cds-color-text-primary","cds-color-text-secondary":"cds-color-text-secondary","cds-color-text-description":"cds-color-text-description","cds-color-text-label":"cds-color-text-label","cds-color-text-placeholder":"cds-color-text-placeholder","cds-color-text-inverse":"cds-color-text-inverse","cds-font-family-size":"cds-font-family-size","cds-font-body-size-xs":"cds-font-body-size-xs","cds-font-body-size-s":"cds-font-body-size-s","cds-font-body-size-m":"cds-font-body-size-m","cds-font-body-size-l":"cds-font-body-size-l","cds-font-heading-1":"cds-font-heading-1","cds-font-heading-2":"cds-font-heading-2","cds-font-heading-3":"cds-font-heading-3","cds-font-heading-4":"cds-font-heading-4","cds-font-heading-5":"cds-font-heading-5","cds-font-heading-6":"cds-font-heading-6","cds-font-heading-eyebrow":"cds-font-heading-eyebrow","cds-font-display-1":"cds-font-display-1","cds-font-display-2":"cds-font-display-2","cds-font-weight-bold":"cds-font-weight-bold","cds-font-weight-semi-bold":"cds-font-weight-semi-bold","cds-font-weight-normal":"cds-font-weight-normal","cds-font-weight-light":"cds-font-weight-light","cds-font-height-body":"cds-font-height-body","cds-font-height-heading":"cds-font-height-heading","cds-font-height-display":"cds-font-height-display","cds-font-height-helper":"cds-font-height-helper","cds-font-margin-heading-1":"cds-font-margin-heading-1","cds-font-margin-heading-2":"cds-font-margin-heading-2","cds-font-margin-heading-3":"cds-font-margin-heading-3","cds-font-margin-heading-4":"cds-font-margin-heading-4","cds-font-margin-heading-5":"cds-font-margin-heading-5","cds-font-margin-heading-6":"cds-font-margin-heading-6","cds-font-margin-display-1":"cds-font-margin-display-1","cds-font-margin-display-2":"cds-font-margin-display-2","cds-font-margin-s":"cds-font-margin-s","cds-box-shadow-header":"cds-box-shadow-header","cds-box-shadow-footer":"cds-box-shadow-footer","cds-box-shadow-sidebar-left":"cds-box-shadow-sidebar-left","cds-box-shadow-sidebar-right":"cds-box-shadow-sidebar-right","cds-box-shadow-menu":"cds-box-shadow-menu","cds-box-shadow-modal":"cds-box-shadow-modal","cds-box-shadow-notification":"cds-box-shadow-notification","cds-block":"cds-block","cds-inline-block":"cds-inline-block","cds-inline":"cds-inline","cds-flex":"cds-flex","cds-inline-flex":"cds-inline-flex","cds-hidden":"cds-hidden","cds-invisible":"cds-invisible","cds-visible":"cds-visible","cds-layer-extra-low":"cds-layer-extra-low","cds-layer-low":"cds-layer-low","cds-layer-middle":"cds-layer-middle","cds-layer-high":"cds-layer-high","cds-layer-extra-high":"cds-layer-extra-high","cds-pa-none":"cds-pa-none","cds-pa-3xs":"cds-pa-3xs","cds-pa-xxs":"cds-pa-xxs","cds-pa-xs":"cds-pa-xs","cds-pa-s":"cds-pa-s","cds-pa-m":"cds-pa-m","cds-pa-l":"cds-pa-l","cds-pa-xl":"cds-pa-xl","cds-pa-xxl":"cds-pa-xxl","cds-pa-3xl":"cds-pa-3xl","cds-pa-4xl":"cds-pa-4xl","cds-pa-5xl":"cds-pa-5xl","cds-pa-6xl":"cds-pa-6xl","cds-pt-none":"cds-pt-none","cds-pt-3xs":"cds-pt-3xs","cds-pt-xxs":"cds-pt-xxs","cds-pt-xs":"cds-pt-xs","cds-pt-s":"cds-pt-s","cds-pt-m":"cds-pt-m","cds-pt-l":"cds-pt-l","cds-pt-xl":"cds-pt-xl","cds-pt-xxl":"cds-pt-xxl","cds-pt-3xl":"cds-pt-3xl","cds-pt-4xl":"cds-pt-4xl","cds-pt-5xl":"cds-pt-5xl","cds-pt-6xl":"cds-pt-6xl","cds-pb-none":"cds-pb-none","cds-pb-3xs":"cds-pb-3xs","cds-pb-xxs":"cds-pb-xxs","cds-pb-xs":"cds-pb-xs","cds-pb-s":"cds-pb-s","cds-pb-m":"cds-pb-m","cds-pb-l":"cds-pb-l","cds-pb-xl":"cds-pb-xl","cds-pb-xxl":"cds-pb-xxl","cds-pb-3xl":"cds-pb-3xl","cds-pb-4xl":"cds-pb-4xl","cds-pb-5xl":"cds-pb-5xl","cds-pb-6xl":"cds-pb-6xl","cds-pr-none":"cds-pr-none","cds-pr-3xs":"cds-pr-3xs","cds-pr-xxs":"cds-pr-xxs","cds-pr-xs":"cds-pr-xs","cds-pr-s":"cds-pr-s","cds-pr-m":"cds-pr-m","cds-pr-l":"cds-pr-l","cds-pr-xl":"cds-pr-xl","cds-pr-xxl":"cds-pr-xxl","cds-pr-3xl":"cds-pr-3xl","cds-pr-4xl":"cds-pr-4xl","cds-pr-5xl":"cds-pr-5xl","cds-pr-6xl":"cds-pr-6xl","cds-pl-none":"cds-pl-none","cds-pl-3xs":"cds-pl-3xs","cds-pl-xxs":"cds-pl-xxs","cds-pl-xs":"cds-pl-xs","cds-pl-s":"cds-pl-s","cds-pl-m":"cds-pl-m","cds-pl-l":"cds-pl-l","cds-pl-xl":"cds-pl-xl","cds-pl-xxl":"cds-pl-xxl","cds-pl-3xl":"cds-pl-3xl","cds-pl-4xl":"cds-pl-4xl","cds-pl-5xl":"cds-pl-5xl","cds-pl-6xl":"cds-pl-6xl","cds-px-none":"cds-px-none","cds-px-3xs":"cds-px-3xs","cds-px-xxs":"cds-px-xxs","cds-px-xs":"cds-px-xs","cds-px-s":"cds-px-s","cds-px-m":"cds-px-m","cds-px-l":"cds-px-l","cds-px-xl":"cds-px-xl","cds-px-xxl":"cds-px-xxl","cds-px-3xl":"cds-px-3xl","cds-px-4xl":"cds-px-4xl","cds-px-5xl":"cds-px-5xl","cds-px-6xl":"cds-px-6xl","cds-py-none":"cds-py-none","cds-py-3xs":"cds-py-3xs","cds-py-xxs":"cds-py-xxs","cds-py-xs":"cds-py-xs","cds-py-s":"cds-py-s","cds-py-m":"cds-py-m","cds-py-l":"cds-py-l","cds-py-xl":"cds-py-xl","cds-py-xxl":"cds-py-xxl","cds-py-3xl":"cds-py-3xl","cds-py-4xl":"cds-py-4xl","cds-py-5xl":"cds-py-5xl","cds-py-6xl":"cds-py-6xl","cds-ma-none":"cds-ma-none","cds-ma-3xs":"cds-ma-3xs","cds-ma-xxs":"cds-ma-xxs","cds-ma-xs":"cds-ma-xs","cds-ma-s":"cds-ma-s","cds-ma-m":"cds-ma-m","cds-ma-l":"cds-ma-l","cds-ma-xl":"cds-ma-xl","cds-ma-xxl":"cds-ma-xxl","cds-ma-3xl":"cds-ma-3xl","cds-ma-4xl":"cds-ma-4xl","cds-ma-5xl":"cds-ma-5xl","cds-ma-6xl":"cds-ma-6xl","cds-mt-none":"cds-mt-none","cds-mt-3xs":"cds-mt-3xs","cds-mt-xxs":"cds-mt-xxs","cds-mt-xs":"cds-mt-xs","cds-mt-s":"cds-mt-s","cds-mt-m":"cds-mt-m","cds-mt-l":"cds-mt-l","cds-mt-xl":"cds-mt-xl","cds-mt-xxl":"cds-mt-xxl","cds-mt-3xl":"cds-mt-3xl","cds-mt-4xl":"cds-mt-4xl","cds-mt-5xl":"cds-mt-5xl","cds-mt-6xl":"cds-mt-6xl","cds-mb-none":"cds-mb-none","cds-mb-3xs":"cds-mb-3xs","cds-mb-xxs":"cds-mb-xxs","cds-mb-xs":"cds-mb-xs","cds-mb-s":"cds-mb-s","cds-mb-m":"cds-mb-m","cds-mb-l":"cds-mb-l","cds-mb-xl":"cds-mb-xl","cds-mb-xxl":"cds-mb-xxl","cds-mb-3xl":"cds-mb-3xl","cds-mb-4xl":"cds-mb-4xl","cds-mb-5xl":"cds-mb-5xl","cds-mb-6xl":"cds-mb-6xl","cds-mr-none":"cds-mr-none","cds-mr-3xs":"cds-mr-3xs","cds-mr-xxs":"cds-mr-xxs","cds-mr-xs":"cds-mr-xs","cds-mr-s":"cds-mr-s","cds-mr-m":"cds-mr-m","cds-mr-l":"cds-mr-l","cds-mr-xl":"cds-mr-xl","cds-mr-xxl":"cds-mr-xxl","cds-mr-3xl":"cds-mr-3xl","cds-mr-4xl":"cds-mr-4xl","cds-mr-5xl":"cds-mr-5xl","cds-mr-6xl":"cds-mr-6xl","cds-ml-none":"cds-ml-none","cds-ml-3xs":"cds-ml-3xs","cds-ml-xxs":"cds-ml-xxs","cds-ml-xs":"cds-ml-xs","cds-ml-s":"cds-ml-s","cds-ml-m":"cds-ml-m","cds-ml-l":"cds-ml-l","cds-ml-xl":"cds-ml-xl","cds-ml-xxl":"cds-ml-xxl","cds-ml-3xl":"cds-ml-3xl","cds-ml-4xl":"cds-ml-4xl","cds-ml-5xl":"cds-ml-5xl","cds-ml-6xl":"cds-ml-6xl","cds-mx-none":"cds-mx-none","cds-mx-3xs":"cds-mx-3xs","cds-mx-xxs":"cds-mx-xxs","cds-mx-xs":"cds-mx-xs","cds-mx-s":"cds-mx-s","cds-mx-m":"cds-mx-m","cds-mx-l":"cds-mx-l","cds-mx-xl":"cds-mx-xl","cds-mx-xxl":"cds-mx-xxl","cds-mx-3xl":"cds-mx-3xl","cds-mx-4xl":"cds-mx-4xl","cds-mx-5xl":"cds-mx-5xl","cds-mx-6xl":"cds-mx-6xl","cds-my-none":"cds-my-none","cds-my-3xs":"cds-my-3xs","cds-my-xxs":"cds-my-xxs","cds-my-xs":"cds-my-xs","cds-my-s":"cds-my-s","cds-my-m":"cds-my-m","cds-my-l":"cds-my-l","cds-my-xl":"cds-my-xl","cds-my-xxl":"cds-my-xxl","cds-my-3xl":"cds-my-3xl","cds-my-4xl":"cds-my-4xl","cds-my-5xl":"cds-my-5xl","cds-my-6xl":"cds-my-6xl","cds-text-h1":"cds-text-h1","cds-text-h2":"cds-text-h2","cds-text-h3":"cds-text-h3","cds-text-h4":"cds-text-h4","cds-text-h5":"cds-text-h5","cds-text-h6":"cds-text-h6","cds-text-xs":"cds-text-xs","cds-text-sm":"cds-text-sm","cds-text-md":"cds-text-md","cds-text-lg":"cds-text-lg","cds-text-display-1":"cds-text-display-1","cds-text-display-2":"cds-text-display-2","cds-flex-col":"cds-flex-col","cds-flex-row":"cds-flex-row","cds-flex-row-reverse":"cds-flex-row-reverse","cds-flex-col-reverse":"cds-flex-col-reverse","cds-justify-center":"cds-justify-center","cds-justify-start":"cds-justify-start","cds-justify-end":"cds-justify-end","cds-justify-between":"cds-justify-between","cds-justify-around":"cds-justify-around","cds-justify-stretch":"cds-justify-stretch","cds-items-start":"cds-items-start","cds-items-end":"cds-items-end","cds-items-center":"cds-items-center","cds-items-baseline":"cds-items-baseline","cds-items-stretch":"cds-items-stretch","cds-content-start":"cds-content-start","cds-content-end":"cds-content-end","cds-content-center":"cds-content-center","cds-content-between":"cds-content-between","cds-content-around":"cds-content-around","cds-content-stretch":"cds-content-stretch","cds-flex-wrap":"cds-flex-wrap","cds-flex-nowrap":"cds-flex-nowrap","cds-flex-wrap-reverse":"cds-flex-wrap-reverse","cds-self-start":"cds-self-start","cds-self-end":"cds-self-end","cds-self-center":"cds-self-center","cds-self-baseline":"cds-self-baseline","cds-self-stretch":"cds-self-stretch","cds-self-auto":"cds-self-auto","cds-self-normal":"cds-self-normal","cds-self-first-baseline":"cds-self-first-baseline","cds-self-last-baseline":"cds-self-last-baseline","h1":"h1","h2":"h2","h3":"h3","h4":"h4","h5":"h5","h6":"h6","small":"small"});
13965
14020
  ;// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/CdsAccordion/CdsAccordion.vue?vue&type=template&id=0887f876&
13966
14021
  var CdsAccordionvue_type_template_id_0887f876_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',_vm._g({staticClass:"cds-accordion"},_vm.$listeners),[_vm._t("default")],2)}
13967
14022
  var CdsAccordionvue_type_template_id_0887f876_staticRenderFns = []
@@ -18605,9 +18660,9 @@ if (typeof window !== 'undefined' && window.Vue) {
18605
18660
  CdsDataTableCell: CdsDataTableCell,
18606
18661
  CdsDataTableSkeleton: CdsDataTableSkeleton
18607
18662
  });
18608
- ;// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/CdsDatePicker/CdsDatePicker.vue?vue&type=template&id=1a2cbaeb&
18609
- var CdsDatePickervue_type_template_id_1a2cbaeb_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"datepicker",class:_vm.classes},[_c('cds-input-label',{directives:[{name:"show",rawName:"v-show",value:(_vm.label),expression:"label"}],attrs:{"id":(_vm.id + "-input-1"),"label":_vm.label}}),_vm._v(" "),(_vm.description)?_c('cds-input-description',{attrs:{"description":_vm.description}}):_vm._e(),_vm._v(" "),_c('div',{class:_vm.wrapperClasses},[_c('div',{staticClass:"cds-date-picker__control"},[_c('CdsInput',_vm._g({ref:"date",class:{ 'cds-date-picker__range--start': _vm.type === 'range' },attrs:{"id":(_vm.id + "-input-1"),"type":"text","invalid":_vm.error,"placeholder":_vm.placeholder,"disabled":_vm.disabled,"value":_vm.inputValue,"autocomplete":"off","maxlength":"10","suffix-class":"input-suffix"}},_vm.events),[(!_vm.error && !_vm.isSimple)?_c('CdsIcon',{staticClass:"cds-date-picker__icon",attrs:{"slot":"suffix","name":"calendar","aria-label":_vm.label},slot:"suffix"}):_vm._e()],1)],1),_vm._v(" "),(_vm.isRange)?_c('div',{staticClass:"cds-date-picker__control"},[_c('CdsInputLabel',{directives:[{name:"show",rawName:"v-show",value:(false),expression:"false"}],attrs:{"id":(_vm.id + "-input-2"),"label":_vm.label}}),_vm._v(" "),_c('CdsInput',_vm._g({ref:"toDate",staticClass:"cds-date-picker__range--end",attrs:{"id":(_vm.id + "-input-2"),"type":"text","invalid":_vm.error,"disabled":_vm.disabled,"placeholder":_vm.placeholder,"autocomplete":"off","maxlength":"10","suffix-class":"input-suffix"}},_vm.events),[(!_vm.error && !_vm.isSimple)?_c('CdsIcon',{staticClass:"cds-date-picker__icon",attrs:{"slot":"suffix","name":"calendar","aria-label":_vm.label},slot:"suffix"}):_vm._e()],1)],1):_vm._e(),_vm._v(" "),(_vm.enableTime)?_c('CdsTime',{ref:"time",attrs:{"label":"time","disabled":_vm.disabled,"hidden-label":true},on:{"input":_vm._onTimeChange}}):_vm._e()],1),_vm._v(" "),(_vm.error)?_c('CdsInputError',{attrs:{"text":_vm.errorMessage}}):_vm._e()],1)}
18610
- var CdsDatePickervue_type_template_id_1a2cbaeb_staticRenderFns = []
18663
+ ;// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/CdsDatePicker/CdsDatePicker.vue?vue&type=template&id=d31f932a&
18664
+ var CdsDatePickervue_type_template_id_d31f932a_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"datepicker",class:_vm.classes},[_c('cds-input-label',{directives:[{name:"show",rawName:"v-show",value:(_vm.label),expression:"label"}],attrs:{"id":(_vm.id + "-input-1"),"label":_vm.label}}),_vm._v(" "),(_vm.description)?_c('cds-input-description',{attrs:{"description":_vm.description}}):_vm._e(),_vm._v(" "),_c('div',{class:_vm.wrapperClasses},[_c('div',{staticClass:"cds-date-picker__control"},[_c('CdsInput',_vm._g({ref:"date",class:{ 'cds-date-picker__range--start': _vm.type === 'range' },attrs:{"id":(_vm.id + "-input-1"),"type":"text","invalid":_vm.error,"placeholder":_vm.placeholder,"disabled":_vm.disabled,"value":_vm.inputValue,"autocomplete":"off","maxlength":"10","suffix-class":"input-suffix"}},_vm.events),[(!_vm.error && !_vm.isSimple)?_c('CdsIcon',{staticClass:"cds-date-picker__icon",attrs:{"slot":"suffix","name":"calendar","aria-label":_vm.label},slot:"suffix"}):_vm._e()],1)],1),_vm._v(" "),(_vm.isRange)?_c('div',{staticClass:"cds-date-picker__control"},[_c('CdsInputLabel',{directives:[{name:"show",rawName:"v-show",value:(false),expression:"false"}],attrs:{"id":(_vm.id + "-input-2"),"label":_vm.label}}),_vm._v(" "),_c('CdsInput',_vm._g({ref:"toDate",staticClass:"cds-date-picker__range--end",attrs:{"id":(_vm.id + "-input-2"),"type":"text","invalid":_vm.error,"disabled":_vm.disabled,"placeholder":_vm.placeholder,"autocomplete":"off","maxlength":"10","suffix-class":"input-suffix"}},_vm.events),[(!_vm.error && !_vm.isSimple)?_c('CdsIcon',{staticClass:"cds-date-picker__icon",attrs:{"slot":"suffix","name":"calendar","aria-label":_vm.label},slot:"suffix"}):_vm._e()],1)],1):_vm._e(),_vm._v(" "),(_vm.enableTime)?_c('CdsTime',{ref:"time",attrs:{"label":"time","disabled":_vm.disabled,"hidden-label":true},on:{"input":_vm._onTimeChange}}):_vm._e()],1),_vm._v(" "),(_vm.error)?_c('CdsInputError',{attrs:{"text":_vm.errorMessage}}):_vm._e()],1)}
18665
+ var CdsDatePickervue_type_template_id_d31f932a_staticRenderFns = []
18611
18666
 
18612
18667
 
18613
18668
  ;// CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
@@ -18658,2469 +18713,9 @@ function _slicedToArray(arr, i) {
18658
18713
  }
18659
18714
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.split.js
18660
18715
  var es_string_split = __webpack_require__(3123);
18661
- ;// CONCATENATED MODULE: ./node_modules/flatpickr/dist/esm/types/options.js
18662
- const HOOKS = [
18663
- "onChange",
18664
- "onClose",
18665
- "onDayCreate",
18666
- "onDestroy",
18667
- "onKeyDown",
18668
- "onMonthChange",
18669
- "onOpen",
18670
- "onParseConfig",
18671
- "onReady",
18672
- "onValueUpdate",
18673
- "onYearChange",
18674
- "onPreCalendarPosition",
18675
- ];
18676
- const defaults = {
18677
- _disable: [],
18678
- allowInput: false,
18679
- allowInvalidPreload: false,
18680
- altFormat: "F j, Y",
18681
- altInput: false,
18682
- altInputClass: "form-control input",
18683
- animate: typeof window === "object" &&
18684
- window.navigator.userAgent.indexOf("MSIE") === -1,
18685
- ariaDateFormat: "F j, Y",
18686
- autoFillDefaultTime: true,
18687
- clickOpens: true,
18688
- closeOnSelect: true,
18689
- conjunction: ", ",
18690
- dateFormat: "Y-m-d",
18691
- defaultHour: 12,
18692
- defaultMinute: 0,
18693
- defaultSeconds: 0,
18694
- disable: [],
18695
- disableMobile: false,
18696
- enableSeconds: false,
18697
- enableTime: false,
18698
- errorHandler: (err) => typeof console !== "undefined" && console.warn(err),
18699
- getWeek: (givenDate) => {
18700
- const date = new Date(givenDate.getTime());
18701
- date.setHours(0, 0, 0, 0);
18702
- date.setDate(date.getDate() + 3 - ((date.getDay() + 6) % 7));
18703
- var week1 = new Date(date.getFullYear(), 0, 4);
18704
- return (1 +
18705
- Math.round(((date.getTime() - week1.getTime()) / 86400000 -
18706
- 3 +
18707
- ((week1.getDay() + 6) % 7)) /
18708
- 7));
18709
- },
18710
- hourIncrement: 1,
18711
- ignoredFocusElements: [],
18712
- inline: false,
18713
- locale: "default",
18714
- minuteIncrement: 5,
18715
- mode: "single",
18716
- monthSelectorType: "dropdown",
18717
- nextArrow: "<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M13.207 8.472l-7.854 7.854-0.707-0.707 7.146-7.146-7.146-7.148 0.707-0.707 7.854 7.854z' /></svg>",
18718
- noCalendar: false,
18719
- now: new Date(),
18720
- onChange: [],
18721
- onClose: [],
18722
- onDayCreate: [],
18723
- onDestroy: [],
18724
- onKeyDown: [],
18725
- onMonthChange: [],
18726
- onOpen: [],
18727
- onParseConfig: [],
18728
- onReady: [],
18729
- onValueUpdate: [],
18730
- onYearChange: [],
18731
- onPreCalendarPosition: [],
18732
- plugins: [],
18733
- position: "auto",
18734
- positionElement: undefined,
18735
- prevArrow: "<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M5.207 8.471l7.146 7.147-0.707 0.707-7.853-7.854 7.854-7.853 0.707 0.707-7.147 7.146z' /></svg>",
18736
- shorthandCurrentMonth: false,
18737
- showMonths: 1,
18738
- static: false,
18739
- time_24hr: false,
18740
- weekNumbers: false,
18741
- wrap: false,
18742
- };
18743
-
18744
- ;// CONCATENATED MODULE: ./node_modules/flatpickr/dist/esm/l10n/default.js
18745
- const english = {
18746
- weekdays: {
18747
- shorthand: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
18748
- longhand: [
18749
- "Sunday",
18750
- "Monday",
18751
- "Tuesday",
18752
- "Wednesday",
18753
- "Thursday",
18754
- "Friday",
18755
- "Saturday",
18756
- ],
18757
- },
18758
- months: {
18759
- shorthand: [
18760
- "Jan",
18761
- "Feb",
18762
- "Mar",
18763
- "Apr",
18764
- "May",
18765
- "Jun",
18766
- "Jul",
18767
- "Aug",
18768
- "Sep",
18769
- "Oct",
18770
- "Nov",
18771
- "Dec",
18772
- ],
18773
- longhand: [
18774
- "January",
18775
- "February",
18776
- "March",
18777
- "April",
18778
- "May",
18779
- "June",
18780
- "July",
18781
- "August",
18782
- "September",
18783
- "October",
18784
- "November",
18785
- "December",
18786
- ],
18787
- },
18788
- daysInMonth: [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31],
18789
- firstDayOfWeek: 0,
18790
- ordinal: (nth) => {
18791
- const s = nth % 100;
18792
- if (s > 3 && s < 21)
18793
- return "th";
18794
- switch (s % 10) {
18795
- case 1:
18796
- return "st";
18797
- case 2:
18798
- return "nd";
18799
- case 3:
18800
- return "rd";
18801
- default:
18802
- return "th";
18803
- }
18804
- },
18805
- rangeSeparator: " to ",
18806
- weekAbbreviation: "Wk",
18807
- scrollTitle: "Scroll to increment",
18808
- toggleTitle: "Click to toggle",
18809
- amPM: ["AM", "PM"],
18810
- yearAriaLabel: "Year",
18811
- monthAriaLabel: "Month",
18812
- hourAriaLabel: "Hour",
18813
- minuteAriaLabel: "Minute",
18814
- time_24hr: false,
18815
- };
18816
- /* harmony default export */ var l10n_default = (english);
18817
-
18818
- ;// CONCATENATED MODULE: ./node_modules/flatpickr/dist/esm/utils/index.js
18819
- const pad = (number, length = 2) => `000${number}`.slice(length * -1);
18820
- const utils_int = (bool) => (bool === true ? 1 : 0);
18821
- function debounce(fn, wait) {
18822
- let t;
18823
- return function () {
18824
- clearTimeout(t);
18825
- t = setTimeout(() => fn.apply(this, arguments), wait);
18826
- };
18827
- }
18828
- const arrayify = (obj) => obj instanceof Array ? obj : [obj];
18829
-
18830
- ;// CONCATENATED MODULE: ./node_modules/flatpickr/dist/esm/utils/dom.js
18831
- function toggleClass(elem, className, bool) {
18832
- if (bool === true)
18833
- return elem.classList.add(className);
18834
- elem.classList.remove(className);
18835
- }
18836
- function createElement(tag, className, content) {
18837
- const e = window.document.createElement(tag);
18838
- className = className || "";
18839
- content = content || "";
18840
- e.className = className;
18841
- if (content !== undefined)
18842
- e.textContent = content;
18843
- return e;
18844
- }
18845
- function clearNode(node) {
18846
- while (node.firstChild)
18847
- node.removeChild(node.firstChild);
18848
- }
18849
- function findParent(node, condition) {
18850
- if (condition(node))
18851
- return node;
18852
- else if (node.parentNode)
18853
- return findParent(node.parentNode, condition);
18854
- return undefined;
18855
- }
18856
- function createNumberInput(inputClassName, opts) {
18857
- const wrapper = createElement("div", "numInputWrapper"), numInput = createElement("input", "numInput " + inputClassName), arrowUp = createElement("span", "arrowUp"), arrowDown = createElement("span", "arrowDown");
18858
- if (navigator.userAgent.indexOf("MSIE 9.0") === -1) {
18859
- numInput.type = "number";
18860
- }
18861
- else {
18862
- numInput.type = "text";
18863
- numInput.pattern = "\\d*";
18864
- }
18865
- if (opts !== undefined)
18866
- for (const key in opts)
18867
- numInput.setAttribute(key, opts[key]);
18868
- wrapper.appendChild(numInput);
18869
- wrapper.appendChild(arrowUp);
18870
- wrapper.appendChild(arrowDown);
18871
- return wrapper;
18872
- }
18873
- function getEventTarget(event) {
18874
- try {
18875
- if (typeof event.composedPath === "function") {
18876
- const path = event.composedPath();
18877
- return path[0];
18878
- }
18879
- return event.target;
18880
- }
18881
- catch (error) {
18882
- return event.target;
18883
- }
18884
- }
18885
-
18886
- ;// CONCATENATED MODULE: ./node_modules/flatpickr/dist/esm/utils/formatting.js
18887
-
18888
- const doNothing = () => undefined;
18889
- const monthToStr = (monthNumber, shorthand, locale) => locale.months[shorthand ? "shorthand" : "longhand"][monthNumber];
18890
- const revFormat = {
18891
- D: doNothing,
18892
- F: function (dateObj, monthName, locale) {
18893
- dateObj.setMonth(locale.months.longhand.indexOf(monthName));
18894
- },
18895
- G: (dateObj, hour) => {
18896
- dateObj.setHours(parseFloat(hour));
18897
- },
18898
- H: (dateObj, hour) => {
18899
- dateObj.setHours(parseFloat(hour));
18900
- },
18901
- J: (dateObj, day) => {
18902
- dateObj.setDate(parseFloat(day));
18903
- },
18904
- K: (dateObj, amPM, locale) => {
18905
- dateObj.setHours((dateObj.getHours() % 12) +
18906
- 12 * utils_int(new RegExp(locale.amPM[1], "i").test(amPM)));
18907
- },
18908
- M: function (dateObj, shortMonth, locale) {
18909
- dateObj.setMonth(locale.months.shorthand.indexOf(shortMonth));
18910
- },
18911
- S: (dateObj, seconds) => {
18912
- dateObj.setSeconds(parseFloat(seconds));
18913
- },
18914
- U: (_, unixSeconds) => new Date(parseFloat(unixSeconds) * 1000),
18915
- W: function (dateObj, weekNum, locale) {
18916
- const weekNumber = parseInt(weekNum);
18917
- const date = new Date(dateObj.getFullYear(), 0, 2 + (weekNumber - 1) * 7, 0, 0, 0, 0);
18918
- date.setDate(date.getDate() - date.getDay() + locale.firstDayOfWeek);
18919
- return date;
18920
- },
18921
- Y: (dateObj, year) => {
18922
- dateObj.setFullYear(parseFloat(year));
18923
- },
18924
- Z: (_, ISODate) => new Date(ISODate),
18925
- d: (dateObj, day) => {
18926
- dateObj.setDate(parseFloat(day));
18927
- },
18928
- h: (dateObj, hour) => {
18929
- dateObj.setHours(parseFloat(hour));
18930
- },
18931
- i: (dateObj, minutes) => {
18932
- dateObj.setMinutes(parseFloat(minutes));
18933
- },
18934
- j: (dateObj, day) => {
18935
- dateObj.setDate(parseFloat(day));
18936
- },
18937
- l: doNothing,
18938
- m: (dateObj, month) => {
18939
- dateObj.setMonth(parseFloat(month) - 1);
18940
- },
18941
- n: (dateObj, month) => {
18942
- dateObj.setMonth(parseFloat(month) - 1);
18943
- },
18944
- s: (dateObj, seconds) => {
18945
- dateObj.setSeconds(parseFloat(seconds));
18946
- },
18947
- u: (_, unixMillSeconds) => new Date(parseFloat(unixMillSeconds)),
18948
- w: doNothing,
18949
- y: (dateObj, year) => {
18950
- dateObj.setFullYear(2000 + parseFloat(year));
18951
- },
18952
- };
18953
- const tokenRegex = {
18954
- D: "(\\w+)",
18955
- F: "(\\w+)",
18956
- G: "(\\d\\d|\\d)",
18957
- H: "(\\d\\d|\\d)",
18958
- J: "(\\d\\d|\\d)\\w+",
18959
- K: "",
18960
- M: "(\\w+)",
18961
- S: "(\\d\\d|\\d)",
18962
- U: "(.+)",
18963
- W: "(\\d\\d|\\d)",
18964
- Y: "(\\d{4})",
18965
- Z: "(.+)",
18966
- d: "(\\d\\d|\\d)",
18967
- h: "(\\d\\d|\\d)",
18968
- i: "(\\d\\d|\\d)",
18969
- j: "(\\d\\d|\\d)",
18970
- l: "(\\w+)",
18971
- m: "(\\d\\d|\\d)",
18972
- n: "(\\d\\d|\\d)",
18973
- s: "(\\d\\d|\\d)",
18974
- u: "(.+)",
18975
- w: "(\\d\\d|\\d)",
18976
- y: "(\\d{2})",
18977
- };
18978
- const formats = {
18979
- Z: (date) => date.toISOString(),
18980
- D: function (date, locale, options) {
18981
- return locale.weekdays.shorthand[formats.w(date, locale, options)];
18982
- },
18983
- F: function (date, locale, options) {
18984
- return monthToStr(formats.n(date, locale, options) - 1, false, locale);
18985
- },
18986
- G: function (date, locale, options) {
18987
- return pad(formats.h(date, locale, options));
18988
- },
18989
- H: (date) => pad(date.getHours()),
18990
- J: function (date, locale) {
18991
- return locale.ordinal !== undefined
18992
- ? date.getDate() + locale.ordinal(date.getDate())
18993
- : date.getDate();
18994
- },
18995
- K: (date, locale) => locale.amPM[utils_int(date.getHours() > 11)],
18996
- M: function (date, locale) {
18997
- return monthToStr(date.getMonth(), true, locale);
18998
- },
18999
- S: (date) => pad(date.getSeconds()),
19000
- U: (date) => date.getTime() / 1000,
19001
- W: function (date, _, options) {
19002
- return options.getWeek(date);
19003
- },
19004
- Y: (date) => pad(date.getFullYear(), 4),
19005
- d: (date) => pad(date.getDate()),
19006
- h: (date) => (date.getHours() % 12 ? date.getHours() % 12 : 12),
19007
- i: (date) => pad(date.getMinutes()),
19008
- j: (date) => date.getDate(),
19009
- l: function (date, locale) {
19010
- return locale.weekdays.longhand[date.getDay()];
19011
- },
19012
- m: (date) => pad(date.getMonth() + 1),
19013
- n: (date) => date.getMonth() + 1,
19014
- s: (date) => date.getSeconds(),
19015
- u: (date) => date.getTime(),
19016
- w: (date) => date.getDay(),
19017
- y: (date) => String(date.getFullYear()).substring(2),
19018
- };
19019
-
19020
- ;// CONCATENATED MODULE: ./node_modules/flatpickr/dist/esm/utils/dates.js
19021
-
19022
-
19023
-
19024
- const createDateFormatter = ({ config = defaults, l10n = english, isMobile = false, }) => (dateObj, frmt, overrideLocale) => {
19025
- const locale = overrideLocale || l10n;
19026
- if (config.formatDate !== undefined && !isMobile) {
19027
- return config.formatDate(dateObj, frmt, locale);
19028
- }
19029
- return frmt
19030
- .split("")
19031
- .map((c, i, arr) => formats[c] && arr[i - 1] !== "\\"
19032
- ? formats[c](dateObj, locale, config)
19033
- : c !== "\\"
19034
- ? c
19035
- : "")
19036
- .join("");
19037
- };
19038
- const createDateParser = ({ config = defaults, l10n = english }) => (date, givenFormat, timeless, customLocale) => {
19039
- if (date !== 0 && !date)
19040
- return undefined;
19041
- const locale = customLocale || l10n;
19042
- let parsedDate;
19043
- const dateOrig = date;
19044
- if (date instanceof Date)
19045
- parsedDate = new Date(date.getTime());
19046
- else if (typeof date !== "string" &&
19047
- date.toFixed !== undefined)
19048
- parsedDate = new Date(date);
19049
- else if (typeof date === "string") {
19050
- const format = givenFormat || (config || defaults).dateFormat;
19051
- const datestr = String(date).trim();
19052
- if (datestr === "today") {
19053
- parsedDate = new Date();
19054
- timeless = true;
19055
- }
19056
- else if (/Z$/.test(datestr) ||
19057
- /GMT$/.test(datestr))
19058
- parsedDate = new Date(date);
19059
- else if (config && config.parseDate)
19060
- parsedDate = config.parseDate(date, format);
19061
- else {
19062
- parsedDate =
19063
- !config || !config.noCalendar
19064
- ? new Date(new Date().getFullYear(), 0, 1, 0, 0, 0, 0)
19065
- : new Date(new Date().setHours(0, 0, 0, 0));
19066
- let matched, ops = [];
19067
- for (let i = 0, matchIndex = 0, regexStr = ""; i < format.length; i++) {
19068
- const token = format[i];
19069
- const isBackSlash = token === "\\";
19070
- const escaped = format[i - 1] === "\\" || isBackSlash;
19071
- if (tokenRegex[token] && !escaped) {
19072
- regexStr += tokenRegex[token];
19073
- const match = new RegExp(regexStr).exec(date);
19074
- if (match && (matched = true)) {
19075
- ops[token !== "Y" ? "push" : "unshift"]({
19076
- fn: revFormat[token],
19077
- val: match[++matchIndex],
19078
- });
19079
- }
19080
- }
19081
- else if (!isBackSlash)
19082
- regexStr += ".";
19083
- ops.forEach(({ fn, val }) => (parsedDate = fn(parsedDate, val, locale) || parsedDate));
19084
- }
19085
- parsedDate = matched ? parsedDate : undefined;
19086
- }
19087
- }
19088
- if (!(parsedDate instanceof Date && !isNaN(parsedDate.getTime()))) {
19089
- config.errorHandler(new Error(`Invalid date provided: ${dateOrig}`));
19090
- return undefined;
19091
- }
19092
- if (timeless === true)
19093
- parsedDate.setHours(0, 0, 0, 0);
19094
- return parsedDate;
19095
- };
19096
- function compareDates(date1, date2, timeless = true) {
19097
- if (timeless !== false) {
19098
- return (new Date(date1.getTime()).setHours(0, 0, 0, 0) -
19099
- new Date(date2.getTime()).setHours(0, 0, 0, 0));
19100
- }
19101
- return date1.getTime() - date2.getTime();
19102
- }
19103
- function compareTimes(date1, date2) {
19104
- return (3600 * (date1.getHours() - date2.getHours()) +
19105
- 60 * (date1.getMinutes() - date2.getMinutes()) +
19106
- date1.getSeconds() -
19107
- date2.getSeconds());
19108
- }
19109
- const isBetween = (ts, ts1, ts2) => {
19110
- return ts > Math.min(ts1, ts2) && ts < Math.max(ts1, ts2);
19111
- };
19112
- const duration = {
19113
- DAY: 86400000,
19114
- };
19115
- function getDefaultHours(config) {
19116
- let hours = config.defaultHour;
19117
- let minutes = config.defaultMinute;
19118
- let seconds = config.defaultSeconds;
19119
- if (config.minDate !== undefined) {
19120
- const minHour = config.minDate.getHours();
19121
- const minMinutes = config.minDate.getMinutes();
19122
- const minSeconds = config.minDate.getSeconds();
19123
- if (hours < minHour) {
19124
- hours = minHour;
19125
- }
19126
- if (hours === minHour && minutes < minMinutes) {
19127
- minutes = minMinutes;
19128
- }
19129
- if (hours === minHour && minutes === minMinutes && seconds < minSeconds)
19130
- seconds = config.minDate.getSeconds();
19131
- }
19132
- if (config.maxDate !== undefined) {
19133
- const maxHr = config.maxDate.getHours();
19134
- const maxMinutes = config.maxDate.getMinutes();
19135
- hours = Math.min(hours, maxHr);
19136
- if (hours === maxHr)
19137
- minutes = Math.min(maxMinutes, minutes);
19138
- if (hours === maxHr && minutes === maxMinutes)
19139
- seconds = config.maxDate.getSeconds();
19140
- }
19141
- return { hours, minutes, seconds };
19142
- }
19143
-
19144
- // EXTERNAL MODULE: ./node_modules/flatpickr/dist/esm/utils/polyfills.js
19145
- var polyfills = __webpack_require__(1895);
19146
- ;// CONCATENATED MODULE: ./node_modules/flatpickr/dist/esm/index.js
19147
-
19148
-
19149
-
19150
-
19151
-
19152
-
19153
-
19154
- const DEBOUNCED_CHANGE_MS = 300;
19155
- function FlatpickrInstance(element, instanceConfig) {
19156
- const self = {
19157
- config: Object.assign(Object.assign({}, defaults), flatpickr.defaultConfig),
19158
- l10n: l10n_default,
19159
- };
19160
- self.parseDate = createDateParser({ config: self.config, l10n: self.l10n });
19161
- self._handlers = [];
19162
- self.pluginElements = [];
19163
- self.loadedPlugins = [];
19164
- self._bind = bind;
19165
- self._setHoursFromDate = setHoursFromDate;
19166
- self._positionCalendar = positionCalendar;
19167
- self.changeMonth = changeMonth;
19168
- self.changeYear = changeYear;
19169
- self.clear = clear;
19170
- self.close = close;
19171
- self._createElement = createElement;
19172
- self.destroy = destroy;
19173
- self.isEnabled = isEnabled;
19174
- self.jumpToDate = jumpToDate;
19175
- self.open = open;
19176
- self.redraw = redraw;
19177
- self.set = set;
19178
- self.setDate = setDate;
19179
- self.toggle = toggle;
19180
- function setupHelperFunctions() {
19181
- self.utils = {
19182
- getDaysInMonth(month = self.currentMonth, yr = self.currentYear) {
19183
- if (month === 1 && ((yr % 4 === 0 && yr % 100 !== 0) || yr % 400 === 0))
19184
- return 29;
19185
- return self.l10n.daysInMonth[month];
19186
- },
19187
- };
19188
- }
19189
- function init() {
19190
- self.element = self.input = element;
19191
- self.isOpen = false;
19192
- parseConfig();
19193
- setupLocale();
19194
- setupInputs();
19195
- setupDates();
19196
- setupHelperFunctions();
19197
- if (!self.isMobile)
19198
- build();
19199
- bindEvents();
19200
- if (self.selectedDates.length || self.config.noCalendar) {
19201
- if (self.config.enableTime) {
19202
- setHoursFromDate(self.config.noCalendar ? self.latestSelectedDateObj : undefined);
19203
- }
19204
- updateValue(false);
19205
- }
19206
- setCalendarWidth();
19207
- const isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
19208
- if (!self.isMobile && isSafari) {
19209
- positionCalendar();
19210
- }
19211
- triggerEvent("onReady");
19212
- }
19213
- function bindToInstance(fn) {
19214
- return fn.bind(self);
19215
- }
19216
- function setCalendarWidth() {
19217
- const config = self.config;
19218
- if (config.weekNumbers === false && config.showMonths === 1) {
19219
- return;
19220
- }
19221
- else if (config.noCalendar !== true) {
19222
- window.requestAnimationFrame(function () {
19223
- if (self.calendarContainer !== undefined) {
19224
- self.calendarContainer.style.visibility = "hidden";
19225
- self.calendarContainer.style.display = "block";
19226
- }
19227
- if (self.daysContainer !== undefined) {
19228
- const daysWidth = (self.days.offsetWidth + 1) * config.showMonths;
19229
- self.daysContainer.style.width = daysWidth + "px";
19230
- self.calendarContainer.style.width =
19231
- daysWidth +
19232
- (self.weekWrapper !== undefined
19233
- ? self.weekWrapper.offsetWidth
19234
- : 0) +
19235
- "px";
19236
- self.calendarContainer.style.removeProperty("visibility");
19237
- self.calendarContainer.style.removeProperty("display");
19238
- }
19239
- });
19240
- }
19241
- }
19242
- function updateTime(e) {
19243
- if (self.selectedDates.length === 0) {
19244
- const defaultDate = self.config.minDate === undefined ||
19245
- compareDates(new Date(), self.config.minDate) >= 0
19246
- ? new Date()
19247
- : new Date(self.config.minDate.getTime());
19248
- const defaults = getDefaultHours(self.config);
19249
- defaultDate.setHours(defaults.hours, defaults.minutes, defaults.seconds, defaultDate.getMilliseconds());
19250
- self.selectedDates = [defaultDate];
19251
- self.latestSelectedDateObj = defaultDate;
19252
- }
19253
- if (e !== undefined && e.type !== "blur") {
19254
- timeWrapper(e);
19255
- }
19256
- const prevValue = self._input.value;
19257
- setHoursFromInputs();
19258
- updateValue();
19259
- if (self._input.value !== prevValue) {
19260
- self._debouncedChange();
19261
- }
19262
- }
19263
- function ampm2military(hour, amPM) {
19264
- return (hour % 12) + 12 * utils_int(amPM === self.l10n.amPM[1]);
19265
- }
19266
- function military2ampm(hour) {
19267
- switch (hour % 24) {
19268
- case 0:
19269
- case 12:
19270
- return 12;
19271
- default:
19272
- return hour % 12;
19273
- }
19274
- }
19275
- function setHoursFromInputs() {
19276
- if (self.hourElement === undefined || self.minuteElement === undefined)
19277
- return;
19278
- let hours = (parseInt(self.hourElement.value.slice(-2), 10) || 0) % 24, minutes = (parseInt(self.minuteElement.value, 10) || 0) % 60, seconds = self.secondElement !== undefined
19279
- ? (parseInt(self.secondElement.value, 10) || 0) % 60
19280
- : 0;
19281
- if (self.amPM !== undefined) {
19282
- hours = ampm2military(hours, self.amPM.textContent);
19283
- }
19284
- const limitMinHours = self.config.minTime !== undefined ||
19285
- (self.config.minDate &&
19286
- self.minDateHasTime &&
19287
- self.latestSelectedDateObj &&
19288
- compareDates(self.latestSelectedDateObj, self.config.minDate, true) ===
19289
- 0);
19290
- const limitMaxHours = self.config.maxTime !== undefined ||
19291
- (self.config.maxDate &&
19292
- self.maxDateHasTime &&
19293
- self.latestSelectedDateObj &&
19294
- compareDates(self.latestSelectedDateObj, self.config.maxDate, true) ===
19295
- 0);
19296
- if (limitMaxHours) {
19297
- const maxTime = self.config.maxTime !== undefined
19298
- ? self.config.maxTime
19299
- : self.config.maxDate;
19300
- hours = Math.min(hours, maxTime.getHours());
19301
- if (hours === maxTime.getHours())
19302
- minutes = Math.min(minutes, maxTime.getMinutes());
19303
- if (minutes === maxTime.getMinutes())
19304
- seconds = Math.min(seconds, maxTime.getSeconds());
19305
- }
19306
- if (limitMinHours) {
19307
- const minTime = self.config.minTime !== undefined
19308
- ? self.config.minTime
19309
- : self.config.minDate;
19310
- hours = Math.max(hours, minTime.getHours());
19311
- if (hours === minTime.getHours() && minutes < minTime.getMinutes())
19312
- minutes = minTime.getMinutes();
19313
- if (minutes === minTime.getMinutes())
19314
- seconds = Math.max(seconds, minTime.getSeconds());
19315
- }
19316
- setHours(hours, minutes, seconds);
19317
- }
19318
- function setHoursFromDate(dateObj) {
19319
- const date = dateObj || self.latestSelectedDateObj;
19320
- if (date) {
19321
- setHours(date.getHours(), date.getMinutes(), date.getSeconds());
19322
- }
19323
- }
19324
- function setHours(hours, minutes, seconds) {
19325
- if (self.latestSelectedDateObj !== undefined) {
19326
- self.latestSelectedDateObj.setHours(hours % 24, minutes, seconds || 0, 0);
19327
- }
19328
- if (!self.hourElement || !self.minuteElement || self.isMobile)
19329
- return;
19330
- self.hourElement.value = pad(!self.config.time_24hr
19331
- ? ((12 + hours) % 12) + 12 * utils_int(hours % 12 === 0)
19332
- : hours);
19333
- self.minuteElement.value = pad(minutes);
19334
- if (self.amPM !== undefined)
19335
- self.amPM.textContent = self.l10n.amPM[utils_int(hours >= 12)];
19336
- if (self.secondElement !== undefined)
19337
- self.secondElement.value = pad(seconds);
19338
- }
19339
- function onYearInput(event) {
19340
- const eventTarget = getEventTarget(event);
19341
- const year = parseInt(eventTarget.value) + (event.delta || 0);
19342
- if (year / 1000 > 1 ||
19343
- (event.key === "Enter" && !/[^\d]/.test(year.toString()))) {
19344
- changeYear(year);
19345
- }
19346
- }
19347
- function bind(element, event, handler, options) {
19348
- if (event instanceof Array)
19349
- return event.forEach((ev) => bind(element, ev, handler, options));
19350
- if (element instanceof Array)
19351
- return element.forEach((el) => bind(el, event, handler, options));
19352
- element.addEventListener(event, handler, options);
19353
- self._handlers.push({
19354
- remove: () => element.removeEventListener(event, handler),
19355
- });
19356
- }
19357
- function triggerChange() {
19358
- triggerEvent("onChange");
19359
- }
19360
- function bindEvents() {
19361
- if (self.config.wrap) {
19362
- ["open", "close", "toggle", "clear"].forEach((evt) => {
19363
- Array.prototype.forEach.call(self.element.querySelectorAll(`[data-${evt}]`), (el) => bind(el, "click", self[evt]));
19364
- });
19365
- }
19366
- if (self.isMobile) {
19367
- setupMobile();
19368
- return;
19369
- }
19370
- const debouncedResize = debounce(onResize, 50);
19371
- self._debouncedChange = debounce(triggerChange, DEBOUNCED_CHANGE_MS);
19372
- if (self.daysContainer && !/iPhone|iPad|iPod/i.test(navigator.userAgent))
19373
- bind(self.daysContainer, "mouseover", (e) => {
19374
- if (self.config.mode === "range")
19375
- onMouseOver(getEventTarget(e));
19376
- });
19377
- bind(window.document.body, "keydown", onKeyDown);
19378
- if (!self.config.inline && !self.config.static)
19379
- bind(window, "resize", debouncedResize);
19380
- if (window.ontouchstart !== undefined)
19381
- bind(window.document, "touchstart", documentClick);
19382
- else
19383
- bind(window.document, "mousedown", documentClick);
19384
- bind(window.document, "focus", documentClick, { capture: true });
19385
- if (self.config.clickOpens === true) {
19386
- bind(self._input, "focus", self.open);
19387
- bind(self._input, "click", self.open);
19388
- }
19389
- if (self.daysContainer !== undefined) {
19390
- bind(self.monthNav, "click", onMonthNavClick);
19391
- bind(self.monthNav, ["keyup", "increment"], onYearInput);
19392
- bind(self.daysContainer, "click", selectDate);
19393
- }
19394
- if (self.timeContainer !== undefined &&
19395
- self.minuteElement !== undefined &&
19396
- self.hourElement !== undefined) {
19397
- const selText = (e) => getEventTarget(e).select();
19398
- bind(self.timeContainer, ["increment"], updateTime);
19399
- bind(self.timeContainer, "blur", updateTime, { capture: true });
19400
- bind(self.timeContainer, "click", timeIncrement);
19401
- bind([self.hourElement, self.minuteElement], ["focus", "click"], selText);
19402
- if (self.secondElement !== undefined)
19403
- bind(self.secondElement, "focus", () => self.secondElement && self.secondElement.select());
19404
- if (self.amPM !== undefined) {
19405
- bind(self.amPM, "click", (e) => {
19406
- updateTime(e);
19407
- triggerChange();
19408
- });
19409
- }
19410
- }
19411
- if (self.config.allowInput) {
19412
- bind(self._input, "blur", onBlur);
19413
- }
19414
- }
19415
- function jumpToDate(jumpDate, triggerChange) {
19416
- const jumpTo = jumpDate !== undefined
19417
- ? self.parseDate(jumpDate)
19418
- : self.latestSelectedDateObj ||
19419
- (self.config.minDate && self.config.minDate > self.now
19420
- ? self.config.minDate
19421
- : self.config.maxDate && self.config.maxDate < self.now
19422
- ? self.config.maxDate
19423
- : self.now);
19424
- const oldYear = self.currentYear;
19425
- const oldMonth = self.currentMonth;
19426
- try {
19427
- if (jumpTo !== undefined) {
19428
- self.currentYear = jumpTo.getFullYear();
19429
- self.currentMonth = jumpTo.getMonth();
19430
- }
19431
- }
19432
- catch (e) {
19433
- e.message = "Invalid date supplied: " + jumpTo;
19434
- self.config.errorHandler(e);
19435
- }
19436
- if (triggerChange && self.currentYear !== oldYear) {
19437
- triggerEvent("onYearChange");
19438
- buildMonthSwitch();
19439
- }
19440
- if (triggerChange &&
19441
- (self.currentYear !== oldYear || self.currentMonth !== oldMonth)) {
19442
- triggerEvent("onMonthChange");
19443
- }
19444
- self.redraw();
19445
- }
19446
- function timeIncrement(e) {
19447
- const eventTarget = getEventTarget(e);
19448
- if (~eventTarget.className.indexOf("arrow"))
19449
- incrementNumInput(e, eventTarget.classList.contains("arrowUp") ? 1 : -1);
19450
- }
19451
- function incrementNumInput(e, delta, inputElem) {
19452
- const target = e && getEventTarget(e);
19453
- const input = inputElem ||
19454
- (target && target.parentNode && target.parentNode.firstChild);
19455
- const event = createEvent("increment");
19456
- event.delta = delta;
19457
- input && input.dispatchEvent(event);
19458
- }
19459
- function build() {
19460
- const fragment = window.document.createDocumentFragment();
19461
- self.calendarContainer = createElement("div", "flatpickr-calendar");
19462
- self.calendarContainer.tabIndex = -1;
19463
- if (!self.config.noCalendar) {
19464
- fragment.appendChild(buildMonthNav());
19465
- self.innerContainer = createElement("div", "flatpickr-innerContainer");
19466
- if (self.config.weekNumbers) {
19467
- const { weekWrapper, weekNumbers } = buildWeeks();
19468
- self.innerContainer.appendChild(weekWrapper);
19469
- self.weekNumbers = weekNumbers;
19470
- self.weekWrapper = weekWrapper;
19471
- }
19472
- self.rContainer = createElement("div", "flatpickr-rContainer");
19473
- self.rContainer.appendChild(buildWeekdays());
19474
- if (!self.daysContainer) {
19475
- self.daysContainer = createElement("div", "flatpickr-days");
19476
- self.daysContainer.tabIndex = -1;
19477
- }
19478
- buildDays();
19479
- self.rContainer.appendChild(self.daysContainer);
19480
- self.innerContainer.appendChild(self.rContainer);
19481
- fragment.appendChild(self.innerContainer);
19482
- }
19483
- if (self.config.enableTime) {
19484
- fragment.appendChild(buildTime());
19485
- }
19486
- toggleClass(self.calendarContainer, "rangeMode", self.config.mode === "range");
19487
- toggleClass(self.calendarContainer, "animate", self.config.animate === true);
19488
- toggleClass(self.calendarContainer, "multiMonth", self.config.showMonths > 1);
19489
- self.calendarContainer.appendChild(fragment);
19490
- const customAppend = self.config.appendTo !== undefined &&
19491
- self.config.appendTo.nodeType !== undefined;
19492
- if (self.config.inline || self.config.static) {
19493
- self.calendarContainer.classList.add(self.config.inline ? "inline" : "static");
19494
- if (self.config.inline) {
19495
- if (!customAppend && self.element.parentNode)
19496
- self.element.parentNode.insertBefore(self.calendarContainer, self._input.nextSibling);
19497
- else if (self.config.appendTo !== undefined)
19498
- self.config.appendTo.appendChild(self.calendarContainer);
19499
- }
19500
- if (self.config.static) {
19501
- const wrapper = createElement("div", "flatpickr-wrapper");
19502
- if (self.element.parentNode)
19503
- self.element.parentNode.insertBefore(wrapper, self.element);
19504
- wrapper.appendChild(self.element);
19505
- if (self.altInput)
19506
- wrapper.appendChild(self.altInput);
19507
- wrapper.appendChild(self.calendarContainer);
19508
- }
19509
- }
19510
- if (!self.config.static && !self.config.inline)
19511
- (self.config.appendTo !== undefined
19512
- ? self.config.appendTo
19513
- : window.document.body).appendChild(self.calendarContainer);
19514
- }
19515
- function createDay(className, date, dayNumber, i) {
19516
- const dateIsEnabled = isEnabled(date, true), dayElement = createElement("span", "flatpickr-day " + className, date.getDate().toString());
19517
- dayElement.dateObj = date;
19518
- dayElement.$i = i;
19519
- dayElement.setAttribute("aria-label", self.formatDate(date, self.config.ariaDateFormat));
19520
- if (className.indexOf("hidden") === -1 &&
19521
- compareDates(date, self.now) === 0) {
19522
- self.todayDateElem = dayElement;
19523
- dayElement.classList.add("today");
19524
- dayElement.setAttribute("aria-current", "date");
19525
- }
19526
- if (dateIsEnabled) {
19527
- dayElement.tabIndex = -1;
19528
- if (isDateSelected(date)) {
19529
- dayElement.classList.add("selected");
19530
- self.selectedDateElem = dayElement;
19531
- if (self.config.mode === "range") {
19532
- toggleClass(dayElement, "startRange", self.selectedDates[0] &&
19533
- compareDates(date, self.selectedDates[0], true) === 0);
19534
- toggleClass(dayElement, "endRange", self.selectedDates[1] &&
19535
- compareDates(date, self.selectedDates[1], true) === 0);
19536
- if (className === "nextMonthDay")
19537
- dayElement.classList.add("inRange");
19538
- }
19539
- }
19540
- }
19541
- else {
19542
- dayElement.classList.add("flatpickr-disabled");
19543
- }
19544
- if (self.config.mode === "range") {
19545
- if (isDateInRange(date) && !isDateSelected(date))
19546
- dayElement.classList.add("inRange");
19547
- }
19548
- if (self.weekNumbers &&
19549
- self.config.showMonths === 1 &&
19550
- className !== "prevMonthDay" &&
19551
- dayNumber % 7 === 1) {
19552
- self.weekNumbers.insertAdjacentHTML("beforeend", "<span class='flatpickr-day'>" + self.config.getWeek(date) + "</span>");
19553
- }
19554
- triggerEvent("onDayCreate", dayElement);
19555
- return dayElement;
19556
- }
19557
- function focusOnDayElem(targetNode) {
19558
- targetNode.focus();
19559
- if (self.config.mode === "range")
19560
- onMouseOver(targetNode);
19561
- }
19562
- function getFirstAvailableDay(delta) {
19563
- const startMonth = delta > 0 ? 0 : self.config.showMonths - 1;
19564
- const endMonth = delta > 0 ? self.config.showMonths : -1;
19565
- for (let m = startMonth; m != endMonth; m += delta) {
19566
- const month = self.daysContainer.children[m];
19567
- const startIndex = delta > 0 ? 0 : month.children.length - 1;
19568
- const endIndex = delta > 0 ? month.children.length : -1;
19569
- for (let i = startIndex; i != endIndex; i += delta) {
19570
- const c = month.children[i];
19571
- if (c.className.indexOf("hidden") === -1 && isEnabled(c.dateObj))
19572
- return c;
19573
- }
19574
- }
19575
- return undefined;
19576
- }
19577
- function getNextAvailableDay(current, delta) {
19578
- const givenMonth = current.className.indexOf("Month") === -1
19579
- ? current.dateObj.getMonth()
19580
- : self.currentMonth;
19581
- const endMonth = delta > 0 ? self.config.showMonths : -1;
19582
- const loopDelta = delta > 0 ? 1 : -1;
19583
- for (let m = givenMonth - self.currentMonth; m != endMonth; m += loopDelta) {
19584
- const month = self.daysContainer.children[m];
19585
- const startIndex = givenMonth - self.currentMonth === m
19586
- ? current.$i + delta
19587
- : delta < 0
19588
- ? month.children.length - 1
19589
- : 0;
19590
- const numMonthDays = month.children.length;
19591
- for (let i = startIndex; i >= 0 && i < numMonthDays && i != (delta > 0 ? numMonthDays : -1); i += loopDelta) {
19592
- const c = month.children[i];
19593
- if (c.className.indexOf("hidden") === -1 &&
19594
- isEnabled(c.dateObj) &&
19595
- Math.abs(current.$i - i) >= Math.abs(delta))
19596
- return focusOnDayElem(c);
19597
- }
19598
- }
19599
- self.changeMonth(loopDelta);
19600
- focusOnDay(getFirstAvailableDay(loopDelta), 0);
19601
- return undefined;
19602
- }
19603
- function focusOnDay(current, offset) {
19604
- const dayFocused = isInView(document.activeElement || document.body);
19605
- const startElem = current !== undefined
19606
- ? current
19607
- : dayFocused
19608
- ? document.activeElement
19609
- : self.selectedDateElem !== undefined && isInView(self.selectedDateElem)
19610
- ? self.selectedDateElem
19611
- : self.todayDateElem !== undefined && isInView(self.todayDateElem)
19612
- ? self.todayDateElem
19613
- : getFirstAvailableDay(offset > 0 ? 1 : -1);
19614
- if (startElem === undefined) {
19615
- self._input.focus();
19616
- }
19617
- else if (!dayFocused) {
19618
- focusOnDayElem(startElem);
19619
- }
19620
- else {
19621
- getNextAvailableDay(startElem, offset);
19622
- }
19623
- }
19624
- function buildMonthDays(year, month) {
19625
- const firstOfMonth = (new Date(year, month, 1).getDay() - self.l10n.firstDayOfWeek + 7) % 7;
19626
- const prevMonthDays = self.utils.getDaysInMonth((month - 1 + 12) % 12, year);
19627
- const daysInMonth = self.utils.getDaysInMonth(month, year), days = window.document.createDocumentFragment(), isMultiMonth = self.config.showMonths > 1, prevMonthDayClass = isMultiMonth ? "prevMonthDay hidden" : "prevMonthDay", nextMonthDayClass = isMultiMonth ? "nextMonthDay hidden" : "nextMonthDay";
19628
- let dayNumber = prevMonthDays + 1 - firstOfMonth, dayIndex = 0;
19629
- for (; dayNumber <= prevMonthDays; dayNumber++, dayIndex++) {
19630
- days.appendChild(createDay(prevMonthDayClass, new Date(year, month - 1, dayNumber), dayNumber, dayIndex));
19631
- }
19632
- for (dayNumber = 1; dayNumber <= daysInMonth; dayNumber++, dayIndex++) {
19633
- days.appendChild(createDay("", new Date(year, month, dayNumber), dayNumber, dayIndex));
19634
- }
19635
- for (let dayNum = daysInMonth + 1; dayNum <= 42 - firstOfMonth &&
19636
- (self.config.showMonths === 1 || dayIndex % 7 !== 0); dayNum++, dayIndex++) {
19637
- days.appendChild(createDay(nextMonthDayClass, new Date(year, month + 1, dayNum % daysInMonth), dayNum, dayIndex));
19638
- }
19639
- const dayContainer = createElement("div", "dayContainer");
19640
- dayContainer.appendChild(days);
19641
- return dayContainer;
19642
- }
19643
- function buildDays() {
19644
- if (self.daysContainer === undefined) {
19645
- return;
19646
- }
19647
- clearNode(self.daysContainer);
19648
- if (self.weekNumbers)
19649
- clearNode(self.weekNumbers);
19650
- const frag = document.createDocumentFragment();
19651
- for (let i = 0; i < self.config.showMonths; i++) {
19652
- const d = new Date(self.currentYear, self.currentMonth, 1);
19653
- d.setMonth(self.currentMonth + i);
19654
- frag.appendChild(buildMonthDays(d.getFullYear(), d.getMonth()));
19655
- }
19656
- self.daysContainer.appendChild(frag);
19657
- self.days = self.daysContainer.firstChild;
19658
- if (self.config.mode === "range" && self.selectedDates.length === 1) {
19659
- onMouseOver();
19660
- }
19661
- }
19662
- function buildMonthSwitch() {
19663
- if (self.config.showMonths > 1 ||
19664
- self.config.monthSelectorType !== "dropdown")
19665
- return;
19666
- const shouldBuildMonth = function (month) {
19667
- if (self.config.minDate !== undefined &&
19668
- self.currentYear === self.config.minDate.getFullYear() &&
19669
- month < self.config.minDate.getMonth()) {
19670
- return false;
19671
- }
19672
- return !(self.config.maxDate !== undefined &&
19673
- self.currentYear === self.config.maxDate.getFullYear() &&
19674
- month > self.config.maxDate.getMonth());
19675
- };
19676
- self.monthsDropdownContainer.tabIndex = -1;
19677
- self.monthsDropdownContainer.innerHTML = "";
19678
- for (let i = 0; i < 12; i++) {
19679
- if (!shouldBuildMonth(i))
19680
- continue;
19681
- const month = createElement("option", "flatpickr-monthDropdown-month");
19682
- month.value = new Date(self.currentYear, i).getMonth().toString();
19683
- month.textContent = monthToStr(i, self.config.shorthandCurrentMonth, self.l10n);
19684
- month.tabIndex = -1;
19685
- if (self.currentMonth === i) {
19686
- month.selected = true;
19687
- }
19688
- self.monthsDropdownContainer.appendChild(month);
19689
- }
19690
- }
19691
- function buildMonth() {
19692
- const container = createElement("div", "flatpickr-month");
19693
- const monthNavFragment = window.document.createDocumentFragment();
19694
- let monthElement;
19695
- if (self.config.showMonths > 1 ||
19696
- self.config.monthSelectorType === "static") {
19697
- monthElement = createElement("span", "cur-month");
19698
- }
19699
- else {
19700
- self.monthsDropdownContainer = createElement("select", "flatpickr-monthDropdown-months");
19701
- self.monthsDropdownContainer.setAttribute("aria-label", self.l10n.monthAriaLabel);
19702
- bind(self.monthsDropdownContainer, "change", (e) => {
19703
- const target = getEventTarget(e);
19704
- const selectedMonth = parseInt(target.value, 10);
19705
- self.changeMonth(selectedMonth - self.currentMonth);
19706
- triggerEvent("onMonthChange");
19707
- });
19708
- buildMonthSwitch();
19709
- monthElement = self.monthsDropdownContainer;
19710
- }
19711
- const yearInput = createNumberInput("cur-year", { tabindex: "-1" });
19712
- const yearElement = yearInput.getElementsByTagName("input")[0];
19713
- yearElement.setAttribute("aria-label", self.l10n.yearAriaLabel);
19714
- if (self.config.minDate) {
19715
- yearElement.setAttribute("min", self.config.minDate.getFullYear().toString());
19716
- }
19717
- if (self.config.maxDate) {
19718
- yearElement.setAttribute("max", self.config.maxDate.getFullYear().toString());
19719
- yearElement.disabled =
19720
- !!self.config.minDate &&
19721
- self.config.minDate.getFullYear() === self.config.maxDate.getFullYear();
19722
- }
19723
- const currentMonth = createElement("div", "flatpickr-current-month");
19724
- currentMonth.appendChild(monthElement);
19725
- currentMonth.appendChild(yearInput);
19726
- monthNavFragment.appendChild(currentMonth);
19727
- container.appendChild(monthNavFragment);
19728
- return {
19729
- container,
19730
- yearElement,
19731
- monthElement,
19732
- };
19733
- }
19734
- function buildMonths() {
19735
- clearNode(self.monthNav);
19736
- self.monthNav.appendChild(self.prevMonthNav);
19737
- if (self.config.showMonths) {
19738
- self.yearElements = [];
19739
- self.monthElements = [];
19740
- }
19741
- for (let m = self.config.showMonths; m--;) {
19742
- const month = buildMonth();
19743
- self.yearElements.push(month.yearElement);
19744
- self.monthElements.push(month.monthElement);
19745
- self.monthNav.appendChild(month.container);
19746
- }
19747
- self.monthNav.appendChild(self.nextMonthNav);
19748
- }
19749
- function buildMonthNav() {
19750
- self.monthNav = createElement("div", "flatpickr-months");
19751
- self.yearElements = [];
19752
- self.monthElements = [];
19753
- self.prevMonthNav = createElement("span", "flatpickr-prev-month");
19754
- self.prevMonthNav.innerHTML = self.config.prevArrow;
19755
- self.nextMonthNav = createElement("span", "flatpickr-next-month");
19756
- self.nextMonthNav.innerHTML = self.config.nextArrow;
19757
- buildMonths();
19758
- Object.defineProperty(self, "_hidePrevMonthArrow", {
19759
- get: () => self.__hidePrevMonthArrow,
19760
- set(bool) {
19761
- if (self.__hidePrevMonthArrow !== bool) {
19762
- toggleClass(self.prevMonthNav, "flatpickr-disabled", bool);
19763
- self.__hidePrevMonthArrow = bool;
19764
- }
19765
- },
19766
- });
19767
- Object.defineProperty(self, "_hideNextMonthArrow", {
19768
- get: () => self.__hideNextMonthArrow,
19769
- set(bool) {
19770
- if (self.__hideNextMonthArrow !== bool) {
19771
- toggleClass(self.nextMonthNav, "flatpickr-disabled", bool);
19772
- self.__hideNextMonthArrow = bool;
19773
- }
19774
- },
19775
- });
19776
- self.currentYearElement = self.yearElements[0];
19777
- updateNavigationCurrentMonth();
19778
- return self.monthNav;
19779
- }
19780
- function buildTime() {
19781
- self.calendarContainer.classList.add("hasTime");
19782
- if (self.config.noCalendar)
19783
- self.calendarContainer.classList.add("noCalendar");
19784
- const defaults = getDefaultHours(self.config);
19785
- self.timeContainer = createElement("div", "flatpickr-time");
19786
- self.timeContainer.tabIndex = -1;
19787
- const separator = createElement("span", "flatpickr-time-separator", ":");
19788
- const hourInput = createNumberInput("flatpickr-hour", {
19789
- "aria-label": self.l10n.hourAriaLabel,
19790
- });
19791
- self.hourElement = hourInput.getElementsByTagName("input")[0];
19792
- const minuteInput = createNumberInput("flatpickr-minute", {
19793
- "aria-label": self.l10n.minuteAriaLabel,
19794
- });
19795
- self.minuteElement = minuteInput.getElementsByTagName("input")[0];
19796
- self.hourElement.tabIndex = self.minuteElement.tabIndex = -1;
19797
- self.hourElement.value = pad(self.latestSelectedDateObj
19798
- ? self.latestSelectedDateObj.getHours()
19799
- : self.config.time_24hr
19800
- ? defaults.hours
19801
- : military2ampm(defaults.hours));
19802
- self.minuteElement.value = pad(self.latestSelectedDateObj
19803
- ? self.latestSelectedDateObj.getMinutes()
19804
- : defaults.minutes);
19805
- self.hourElement.setAttribute("step", self.config.hourIncrement.toString());
19806
- self.minuteElement.setAttribute("step", self.config.minuteIncrement.toString());
19807
- self.hourElement.setAttribute("min", self.config.time_24hr ? "0" : "1");
19808
- self.hourElement.setAttribute("max", self.config.time_24hr ? "23" : "12");
19809
- self.hourElement.setAttribute("maxlength", "2");
19810
- self.minuteElement.setAttribute("min", "0");
19811
- self.minuteElement.setAttribute("max", "59");
19812
- self.minuteElement.setAttribute("maxlength", "2");
19813
- self.timeContainer.appendChild(hourInput);
19814
- self.timeContainer.appendChild(separator);
19815
- self.timeContainer.appendChild(minuteInput);
19816
- if (self.config.time_24hr)
19817
- self.timeContainer.classList.add("time24hr");
19818
- if (self.config.enableSeconds) {
19819
- self.timeContainer.classList.add("hasSeconds");
19820
- const secondInput = createNumberInput("flatpickr-second");
19821
- self.secondElement = secondInput.getElementsByTagName("input")[0];
19822
- self.secondElement.value = pad(self.latestSelectedDateObj
19823
- ? self.latestSelectedDateObj.getSeconds()
19824
- : defaults.seconds);
19825
- self.secondElement.setAttribute("step", self.minuteElement.getAttribute("step"));
19826
- self.secondElement.setAttribute("min", "0");
19827
- self.secondElement.setAttribute("max", "59");
19828
- self.secondElement.setAttribute("maxlength", "2");
19829
- self.timeContainer.appendChild(createElement("span", "flatpickr-time-separator", ":"));
19830
- self.timeContainer.appendChild(secondInput);
19831
- }
19832
- if (!self.config.time_24hr) {
19833
- self.amPM = createElement("span", "flatpickr-am-pm", self.l10n.amPM[utils_int((self.latestSelectedDateObj
19834
- ? self.hourElement.value
19835
- : self.config.defaultHour) > 11)]);
19836
- self.amPM.title = self.l10n.toggleTitle;
19837
- self.amPM.tabIndex = -1;
19838
- self.timeContainer.appendChild(self.amPM);
19839
- }
19840
- return self.timeContainer;
19841
- }
19842
- function buildWeekdays() {
19843
- if (!self.weekdayContainer)
19844
- self.weekdayContainer = createElement("div", "flatpickr-weekdays");
19845
- else
19846
- clearNode(self.weekdayContainer);
19847
- for (let i = self.config.showMonths; i--;) {
19848
- const container = createElement("div", "flatpickr-weekdaycontainer");
19849
- self.weekdayContainer.appendChild(container);
19850
- }
19851
- updateWeekdays();
19852
- return self.weekdayContainer;
19853
- }
19854
- function updateWeekdays() {
19855
- if (!self.weekdayContainer) {
19856
- return;
19857
- }
19858
- const firstDayOfWeek = self.l10n.firstDayOfWeek;
19859
- let weekdays = [...self.l10n.weekdays.shorthand];
19860
- if (firstDayOfWeek > 0 && firstDayOfWeek < weekdays.length) {
19861
- weekdays = [
19862
- ...weekdays.splice(firstDayOfWeek, weekdays.length),
19863
- ...weekdays.splice(0, firstDayOfWeek),
19864
- ];
19865
- }
19866
- for (let i = self.config.showMonths; i--;) {
19867
- self.weekdayContainer.children[i].innerHTML = `
19868
- <span class='flatpickr-weekday'>
19869
- ${weekdays.join("</span><span class='flatpickr-weekday'>")}
19870
- </span>
19871
- `;
19872
- }
19873
- }
19874
- function buildWeeks() {
19875
- self.calendarContainer.classList.add("hasWeeks");
19876
- const weekWrapper = createElement("div", "flatpickr-weekwrapper");
19877
- weekWrapper.appendChild(createElement("span", "flatpickr-weekday", self.l10n.weekAbbreviation));
19878
- const weekNumbers = createElement("div", "flatpickr-weeks");
19879
- weekWrapper.appendChild(weekNumbers);
19880
- return {
19881
- weekWrapper,
19882
- weekNumbers,
19883
- };
19884
- }
19885
- function changeMonth(value, isOffset = true) {
19886
- const delta = isOffset ? value : value - self.currentMonth;
19887
- if ((delta < 0 && self._hidePrevMonthArrow === true) ||
19888
- (delta > 0 && self._hideNextMonthArrow === true))
19889
- return;
19890
- self.currentMonth += delta;
19891
- if (self.currentMonth < 0 || self.currentMonth > 11) {
19892
- self.currentYear += self.currentMonth > 11 ? 1 : -1;
19893
- self.currentMonth = (self.currentMonth + 12) % 12;
19894
- triggerEvent("onYearChange");
19895
- buildMonthSwitch();
19896
- }
19897
- buildDays();
19898
- triggerEvent("onMonthChange");
19899
- updateNavigationCurrentMonth();
19900
- }
19901
- function clear(triggerChangeEvent = true, toInitial = true) {
19902
- self.input.value = "";
19903
- if (self.altInput !== undefined)
19904
- self.altInput.value = "";
19905
- if (self.mobileInput !== undefined)
19906
- self.mobileInput.value = "";
19907
- self.selectedDates = [];
19908
- self.latestSelectedDateObj = undefined;
19909
- if (toInitial === true) {
19910
- self.currentYear = self._initialDate.getFullYear();
19911
- self.currentMonth = self._initialDate.getMonth();
19912
- }
19913
- if (self.config.enableTime === true) {
19914
- const { hours, minutes, seconds } = getDefaultHours(self.config);
19915
- setHours(hours, minutes, seconds);
19916
- }
19917
- self.redraw();
19918
- if (triggerChangeEvent)
19919
- triggerEvent("onChange");
19920
- }
19921
- function close() {
19922
- self.isOpen = false;
19923
- if (!self.isMobile) {
19924
- if (self.calendarContainer !== undefined) {
19925
- self.calendarContainer.classList.remove("open");
19926
- }
19927
- if (self._input !== undefined) {
19928
- self._input.classList.remove("active");
19929
- }
19930
- }
19931
- triggerEvent("onClose");
19932
- }
19933
- function destroy() {
19934
- if (self.config !== undefined)
19935
- triggerEvent("onDestroy");
19936
- for (let i = self._handlers.length; i--;) {
19937
- self._handlers[i].remove();
19938
- }
19939
- self._handlers = [];
19940
- if (self.mobileInput) {
19941
- if (self.mobileInput.parentNode)
19942
- self.mobileInput.parentNode.removeChild(self.mobileInput);
19943
- self.mobileInput = undefined;
19944
- }
19945
- else if (self.calendarContainer && self.calendarContainer.parentNode) {
19946
- if (self.config.static && self.calendarContainer.parentNode) {
19947
- const wrapper = self.calendarContainer.parentNode;
19948
- wrapper.lastChild && wrapper.removeChild(wrapper.lastChild);
19949
- if (wrapper.parentNode) {
19950
- while (wrapper.firstChild)
19951
- wrapper.parentNode.insertBefore(wrapper.firstChild, wrapper);
19952
- wrapper.parentNode.removeChild(wrapper);
19953
- }
19954
- }
19955
- else
19956
- self.calendarContainer.parentNode.removeChild(self.calendarContainer);
19957
- }
19958
- if (self.altInput) {
19959
- self.input.type = "text";
19960
- if (self.altInput.parentNode)
19961
- self.altInput.parentNode.removeChild(self.altInput);
19962
- delete self.altInput;
19963
- }
19964
- if (self.input) {
19965
- self.input.type = self.input._type;
19966
- self.input.classList.remove("flatpickr-input");
19967
- self.input.removeAttribute("readonly");
19968
- }
19969
- [
19970
- "_showTimeInput",
19971
- "latestSelectedDateObj",
19972
- "_hideNextMonthArrow",
19973
- "_hidePrevMonthArrow",
19974
- "__hideNextMonthArrow",
19975
- "__hidePrevMonthArrow",
19976
- "isMobile",
19977
- "isOpen",
19978
- "selectedDateElem",
19979
- "minDateHasTime",
19980
- "maxDateHasTime",
19981
- "days",
19982
- "daysContainer",
19983
- "_input",
19984
- "_positionElement",
19985
- "innerContainer",
19986
- "rContainer",
19987
- "monthNav",
19988
- "todayDateElem",
19989
- "calendarContainer",
19990
- "weekdayContainer",
19991
- "prevMonthNav",
19992
- "nextMonthNav",
19993
- "monthsDropdownContainer",
19994
- "currentMonthElement",
19995
- "currentYearElement",
19996
- "navigationCurrentMonth",
19997
- "selectedDateElem",
19998
- "config",
19999
- ].forEach((k) => {
20000
- try {
20001
- delete self[k];
20002
- }
20003
- catch (_) { }
20004
- });
20005
- }
20006
- function isCalendarElem(elem) {
20007
- if (self.config.appendTo && self.config.appendTo.contains(elem))
20008
- return true;
20009
- return self.calendarContainer.contains(elem);
20010
- }
20011
- function documentClick(e) {
20012
- if (self.isOpen && !self.config.inline) {
20013
- const eventTarget = getEventTarget(e);
20014
- const isCalendarElement = isCalendarElem(eventTarget);
20015
- const isInput = eventTarget === self.input ||
20016
- eventTarget === self.altInput ||
20017
- self.element.contains(eventTarget) ||
20018
- (e.path &&
20019
- e.path.indexOf &&
20020
- (~e.path.indexOf(self.input) ||
20021
- ~e.path.indexOf(self.altInput)));
20022
- const lostFocus = e.type === "blur"
20023
- ? isInput &&
20024
- e.relatedTarget &&
20025
- !isCalendarElem(e.relatedTarget)
20026
- : !isInput &&
20027
- !isCalendarElement &&
20028
- !isCalendarElem(e.relatedTarget);
20029
- const isIgnored = !self.config.ignoredFocusElements.some((elem) => elem.contains(eventTarget));
20030
- if (lostFocus && isIgnored) {
20031
- if (self.timeContainer !== undefined &&
20032
- self.minuteElement !== undefined &&
20033
- self.hourElement !== undefined &&
20034
- self.input.value !== "" &&
20035
- self.input.value !== undefined) {
20036
- updateTime();
20037
- }
20038
- self.close();
20039
- if (self.config &&
20040
- self.config.mode === "range" &&
20041
- self.selectedDates.length === 1) {
20042
- self.clear(false);
20043
- self.redraw();
20044
- }
20045
- }
20046
- }
20047
- }
20048
- function changeYear(newYear) {
20049
- if (!newYear ||
20050
- (self.config.minDate && newYear < self.config.minDate.getFullYear()) ||
20051
- (self.config.maxDate && newYear > self.config.maxDate.getFullYear()))
20052
- return;
20053
- const newYearNum = newYear, isNewYear = self.currentYear !== newYearNum;
20054
- self.currentYear = newYearNum || self.currentYear;
20055
- if (self.config.maxDate &&
20056
- self.currentYear === self.config.maxDate.getFullYear()) {
20057
- self.currentMonth = Math.min(self.config.maxDate.getMonth(), self.currentMonth);
20058
- }
20059
- else if (self.config.minDate &&
20060
- self.currentYear === self.config.minDate.getFullYear()) {
20061
- self.currentMonth = Math.max(self.config.minDate.getMonth(), self.currentMonth);
20062
- }
20063
- if (isNewYear) {
20064
- self.redraw();
20065
- triggerEvent("onYearChange");
20066
- buildMonthSwitch();
20067
- }
20068
- }
20069
- function isEnabled(date, timeless = true) {
20070
- var _a;
20071
- const dateToCheck = self.parseDate(date, undefined, timeless);
20072
- if ((self.config.minDate &&
20073
- dateToCheck &&
20074
- compareDates(dateToCheck, self.config.minDate, timeless !== undefined ? timeless : !self.minDateHasTime) < 0) ||
20075
- (self.config.maxDate &&
20076
- dateToCheck &&
20077
- compareDates(dateToCheck, self.config.maxDate, timeless !== undefined ? timeless : !self.maxDateHasTime) > 0))
20078
- return false;
20079
- if (!self.config.enable && self.config.disable.length === 0)
20080
- return true;
20081
- if (dateToCheck === undefined)
20082
- return false;
20083
- const bool = !!self.config.enable, array = (_a = self.config.enable) !== null && _a !== void 0 ? _a : self.config.disable;
20084
- for (let i = 0, d; i < array.length; i++) {
20085
- d = array[i];
20086
- if (typeof d === "function" &&
20087
- d(dateToCheck))
20088
- return bool;
20089
- else if (d instanceof Date &&
20090
- dateToCheck !== undefined &&
20091
- d.getTime() === dateToCheck.getTime())
20092
- return bool;
20093
- else if (typeof d === "string") {
20094
- const parsed = self.parseDate(d, undefined, true);
20095
- return parsed && parsed.getTime() === dateToCheck.getTime()
20096
- ? bool
20097
- : !bool;
20098
- }
20099
- else if (typeof d === "object" &&
20100
- dateToCheck !== undefined &&
20101
- d.from &&
20102
- d.to &&
20103
- dateToCheck.getTime() >= d.from.getTime() &&
20104
- dateToCheck.getTime() <= d.to.getTime())
20105
- return bool;
20106
- }
20107
- return !bool;
20108
- }
20109
- function isInView(elem) {
20110
- if (self.daysContainer !== undefined)
20111
- return (elem.className.indexOf("hidden") === -1 &&
20112
- elem.className.indexOf("flatpickr-disabled") === -1 &&
20113
- self.daysContainer.contains(elem));
20114
- return false;
20115
- }
20116
- function onBlur(e) {
20117
- const isInput = e.target === self._input;
20118
- if (isInput &&
20119
- (self.selectedDates.length > 0 || self._input.value.length > 0) &&
20120
- !(e.relatedTarget && isCalendarElem(e.relatedTarget))) {
20121
- self.setDate(self._input.value, true, e.target === self.altInput
20122
- ? self.config.altFormat
20123
- : self.config.dateFormat);
20124
- }
20125
- }
20126
- function onKeyDown(e) {
20127
- const eventTarget = getEventTarget(e);
20128
- const isInput = self.config.wrap
20129
- ? element.contains(eventTarget)
20130
- : eventTarget === self._input;
20131
- const allowInput = self.config.allowInput;
20132
- const allowKeydown = self.isOpen && (!allowInput || !isInput);
20133
- const allowInlineKeydown = self.config.inline && isInput && !allowInput;
20134
- if (e.keyCode === 13 && isInput) {
20135
- if (allowInput) {
20136
- self.setDate(self._input.value, true, eventTarget === self.altInput
20137
- ? self.config.altFormat
20138
- : self.config.dateFormat);
20139
- return eventTarget.blur();
20140
- }
20141
- else {
20142
- self.open();
20143
- }
20144
- }
20145
- else if (isCalendarElem(eventTarget) ||
20146
- allowKeydown ||
20147
- allowInlineKeydown) {
20148
- const isTimeObj = !!self.timeContainer &&
20149
- self.timeContainer.contains(eventTarget);
20150
- switch (e.keyCode) {
20151
- case 13:
20152
- if (isTimeObj) {
20153
- e.preventDefault();
20154
- updateTime();
20155
- focusAndClose();
20156
- }
20157
- else
20158
- selectDate(e);
20159
- break;
20160
- case 27:
20161
- e.preventDefault();
20162
- focusAndClose();
20163
- break;
20164
- case 8:
20165
- case 46:
20166
- if (isInput && !self.config.allowInput) {
20167
- e.preventDefault();
20168
- self.clear();
20169
- }
20170
- break;
20171
- case 37:
20172
- case 39:
20173
- if (!isTimeObj && !isInput) {
20174
- e.preventDefault();
20175
- if (self.daysContainer !== undefined &&
20176
- (allowInput === false ||
20177
- (document.activeElement && isInView(document.activeElement)))) {
20178
- const delta = e.keyCode === 39 ? 1 : -1;
20179
- if (!e.ctrlKey)
20180
- focusOnDay(undefined, delta);
20181
- else {
20182
- e.stopPropagation();
20183
- changeMonth(delta);
20184
- focusOnDay(getFirstAvailableDay(1), 0);
20185
- }
20186
- }
20187
- }
20188
- else if (self.hourElement)
20189
- self.hourElement.focus();
20190
- break;
20191
- case 38:
20192
- case 40:
20193
- e.preventDefault();
20194
- const delta = e.keyCode === 40 ? 1 : -1;
20195
- if ((self.daysContainer &&
20196
- eventTarget.$i !== undefined) ||
20197
- eventTarget === self.input ||
20198
- eventTarget === self.altInput) {
20199
- if (e.ctrlKey) {
20200
- e.stopPropagation();
20201
- changeYear(self.currentYear - delta);
20202
- focusOnDay(getFirstAvailableDay(1), 0);
20203
- }
20204
- else if (!isTimeObj)
20205
- focusOnDay(undefined, delta * 7);
20206
- }
20207
- else if (eventTarget === self.currentYearElement) {
20208
- changeYear(self.currentYear - delta);
20209
- }
20210
- else if (self.config.enableTime) {
20211
- if (!isTimeObj && self.hourElement)
20212
- self.hourElement.focus();
20213
- updateTime(e);
20214
- self._debouncedChange();
20215
- }
20216
- break;
20217
- case 9:
20218
- if (isTimeObj) {
20219
- const elems = [
20220
- self.hourElement,
20221
- self.minuteElement,
20222
- self.secondElement,
20223
- self.amPM,
20224
- ]
20225
- .concat(self.pluginElements)
20226
- .filter((x) => x);
20227
- const i = elems.indexOf(eventTarget);
20228
- if (i !== -1) {
20229
- const target = elems[i + (e.shiftKey ? -1 : 1)];
20230
- e.preventDefault();
20231
- (target || self._input).focus();
20232
- }
20233
- }
20234
- else if (!self.config.noCalendar &&
20235
- self.daysContainer &&
20236
- self.daysContainer.contains(eventTarget) &&
20237
- e.shiftKey) {
20238
- e.preventDefault();
20239
- self._input.focus();
20240
- }
20241
- break;
20242
- default:
20243
- break;
20244
- }
20245
- }
20246
- if (self.amPM !== undefined && eventTarget === self.amPM) {
20247
- switch (e.key) {
20248
- case self.l10n.amPM[0].charAt(0):
20249
- case self.l10n.amPM[0].charAt(0).toLowerCase():
20250
- self.amPM.textContent = self.l10n.amPM[0];
20251
- setHoursFromInputs();
20252
- updateValue();
20253
- break;
20254
- case self.l10n.amPM[1].charAt(0):
20255
- case self.l10n.amPM[1].charAt(0).toLowerCase():
20256
- self.amPM.textContent = self.l10n.amPM[1];
20257
- setHoursFromInputs();
20258
- updateValue();
20259
- break;
20260
- }
20261
- }
20262
- if (isInput || isCalendarElem(eventTarget)) {
20263
- triggerEvent("onKeyDown", e);
20264
- }
20265
- }
20266
- function onMouseOver(elem) {
20267
- if (self.selectedDates.length !== 1 ||
20268
- (elem &&
20269
- (!elem.classList.contains("flatpickr-day") ||
20270
- elem.classList.contains("flatpickr-disabled"))))
20271
- return;
20272
- const hoverDate = elem
20273
- ? elem.dateObj.getTime()
20274
- : self.days.firstElementChild.dateObj.getTime(), initialDate = self.parseDate(self.selectedDates[0], undefined, true).getTime(), rangeStartDate = Math.min(hoverDate, self.selectedDates[0].getTime()), rangeEndDate = Math.max(hoverDate, self.selectedDates[0].getTime());
20275
- let containsDisabled = false;
20276
- let minRange = 0, maxRange = 0;
20277
- for (let t = rangeStartDate; t < rangeEndDate; t += duration.DAY) {
20278
- if (!isEnabled(new Date(t), true)) {
20279
- containsDisabled =
20280
- containsDisabled || (t > rangeStartDate && t < rangeEndDate);
20281
- if (t < initialDate && (!minRange || t > minRange))
20282
- minRange = t;
20283
- else if (t > initialDate && (!maxRange || t < maxRange))
20284
- maxRange = t;
20285
- }
20286
- }
20287
- for (let m = 0; m < self.config.showMonths; m++) {
20288
- const month = self.daysContainer.children[m];
20289
- for (let i = 0, l = month.children.length; i < l; i++) {
20290
- const dayElem = month.children[i], date = dayElem.dateObj;
20291
- const timestamp = date.getTime();
20292
- const outOfRange = (minRange > 0 && timestamp < minRange) ||
20293
- (maxRange > 0 && timestamp > maxRange);
20294
- if (outOfRange) {
20295
- dayElem.classList.add("notAllowed");
20296
- ["inRange", "startRange", "endRange"].forEach((c) => {
20297
- dayElem.classList.remove(c);
20298
- });
20299
- continue;
20300
- }
20301
- else if (containsDisabled && !outOfRange)
20302
- continue;
20303
- ["startRange", "inRange", "endRange", "notAllowed"].forEach((c) => {
20304
- dayElem.classList.remove(c);
20305
- });
20306
- if (elem !== undefined) {
20307
- elem.classList.add(hoverDate <= self.selectedDates[0].getTime()
20308
- ? "startRange"
20309
- : "endRange");
20310
- if (initialDate < hoverDate && timestamp === initialDate)
20311
- dayElem.classList.add("startRange");
20312
- else if (initialDate > hoverDate && timestamp === initialDate)
20313
- dayElem.classList.add("endRange");
20314
- if (timestamp >= minRange &&
20315
- (maxRange === 0 || timestamp <= maxRange) &&
20316
- isBetween(timestamp, initialDate, hoverDate))
20317
- dayElem.classList.add("inRange");
20318
- }
20319
- }
20320
- }
20321
- }
20322
- function onResize() {
20323
- if (self.isOpen && !self.config.static && !self.config.inline)
20324
- positionCalendar();
20325
- }
20326
- function open(e, positionElement = self._positionElement) {
20327
- if (self.isMobile === true) {
20328
- if (e) {
20329
- e.preventDefault();
20330
- const eventTarget = getEventTarget(e);
20331
- if (eventTarget) {
20332
- eventTarget.blur();
20333
- }
20334
- }
20335
- if (self.mobileInput !== undefined) {
20336
- self.mobileInput.focus();
20337
- self.mobileInput.click();
20338
- }
20339
- triggerEvent("onOpen");
20340
- return;
20341
- }
20342
- else if (self._input.disabled || self.config.inline) {
20343
- return;
20344
- }
20345
- const wasOpen = self.isOpen;
20346
- self.isOpen = true;
20347
- if (!wasOpen) {
20348
- self.calendarContainer.classList.add("open");
20349
- self._input.classList.add("active");
20350
- triggerEvent("onOpen");
20351
- positionCalendar(positionElement);
20352
- }
20353
- if (self.config.enableTime === true && self.config.noCalendar === true) {
20354
- if (self.config.allowInput === false &&
20355
- (e === undefined ||
20356
- !self.timeContainer.contains(e.relatedTarget))) {
20357
- setTimeout(() => self.hourElement.select(), 50);
20358
- }
20359
- }
20360
- }
20361
- function minMaxDateSetter(type) {
20362
- return (date) => {
20363
- const dateObj = (self.config[`_${type}Date`] = self.parseDate(date, self.config.dateFormat));
20364
- const inverseDateObj = self.config[`_${type === "min" ? "max" : "min"}Date`];
20365
- if (dateObj !== undefined) {
20366
- self[type === "min" ? "minDateHasTime" : "maxDateHasTime"] =
20367
- dateObj.getHours() > 0 ||
20368
- dateObj.getMinutes() > 0 ||
20369
- dateObj.getSeconds() > 0;
20370
- }
20371
- if (self.selectedDates) {
20372
- self.selectedDates = self.selectedDates.filter((d) => isEnabled(d));
20373
- if (!self.selectedDates.length && type === "min")
20374
- setHoursFromDate(dateObj);
20375
- updateValue();
20376
- }
20377
- if (self.daysContainer) {
20378
- redraw();
20379
- if (dateObj !== undefined)
20380
- self.currentYearElement[type] = dateObj.getFullYear().toString();
20381
- else
20382
- self.currentYearElement.removeAttribute(type);
20383
- self.currentYearElement.disabled =
20384
- !!inverseDateObj &&
20385
- dateObj !== undefined &&
20386
- inverseDateObj.getFullYear() === dateObj.getFullYear();
20387
- }
20388
- };
20389
- }
20390
- function parseConfig() {
20391
- const boolOpts = [
20392
- "wrap",
20393
- "weekNumbers",
20394
- "allowInput",
20395
- "allowInvalidPreload",
20396
- "clickOpens",
20397
- "time_24hr",
20398
- "enableTime",
20399
- "noCalendar",
20400
- "altInput",
20401
- "shorthandCurrentMonth",
20402
- "inline",
20403
- "static",
20404
- "enableSeconds",
20405
- "disableMobile",
20406
- ];
20407
- const userConfig = Object.assign(Object.assign({}, JSON.parse(JSON.stringify(element.dataset || {}))), instanceConfig);
20408
- const formats = {};
20409
- self.config.parseDate = userConfig.parseDate;
20410
- self.config.formatDate = userConfig.formatDate;
20411
- Object.defineProperty(self.config, "enable", {
20412
- get: () => self.config._enable,
20413
- set: (dates) => {
20414
- self.config._enable = parseDateRules(dates);
20415
- },
20416
- });
20417
- Object.defineProperty(self.config, "disable", {
20418
- get: () => self.config._disable,
20419
- set: (dates) => {
20420
- self.config._disable = parseDateRules(dates);
20421
- },
20422
- });
20423
- const timeMode = userConfig.mode === "time";
20424
- if (!userConfig.dateFormat && (userConfig.enableTime || timeMode)) {
20425
- const defaultDateFormat = flatpickr.defaultConfig.dateFormat || defaults.dateFormat;
20426
- formats.dateFormat =
20427
- userConfig.noCalendar || timeMode
20428
- ? "H:i" + (userConfig.enableSeconds ? ":S" : "")
20429
- : defaultDateFormat + " H:i" + (userConfig.enableSeconds ? ":S" : "");
20430
- }
20431
- if (userConfig.altInput &&
20432
- (userConfig.enableTime || timeMode) &&
20433
- !userConfig.altFormat) {
20434
- const defaultAltFormat = flatpickr.defaultConfig.altFormat || defaults.altFormat;
20435
- formats.altFormat =
20436
- userConfig.noCalendar || timeMode
20437
- ? "h:i" + (userConfig.enableSeconds ? ":S K" : " K")
20438
- : defaultAltFormat + ` h:i${userConfig.enableSeconds ? ":S" : ""} K`;
20439
- }
20440
- Object.defineProperty(self.config, "minDate", {
20441
- get: () => self.config._minDate,
20442
- set: minMaxDateSetter("min"),
20443
- });
20444
- Object.defineProperty(self.config, "maxDate", {
20445
- get: () => self.config._maxDate,
20446
- set: minMaxDateSetter("max"),
20447
- });
20448
- const minMaxTimeSetter = (type) => (val) => {
20449
- self.config[type === "min" ? "_minTime" : "_maxTime"] = self.parseDate(val, "H:i:S");
20450
- };
20451
- Object.defineProperty(self.config, "minTime", {
20452
- get: () => self.config._minTime,
20453
- set: minMaxTimeSetter("min"),
20454
- });
20455
- Object.defineProperty(self.config, "maxTime", {
20456
- get: () => self.config._maxTime,
20457
- set: minMaxTimeSetter("max"),
20458
- });
20459
- if (userConfig.mode === "time") {
20460
- self.config.noCalendar = true;
20461
- self.config.enableTime = true;
20462
- }
20463
- Object.assign(self.config, formats, userConfig);
20464
- for (let i = 0; i < boolOpts.length; i++)
20465
- self.config[boolOpts[i]] =
20466
- self.config[boolOpts[i]] === true ||
20467
- self.config[boolOpts[i]] === "true";
20468
- HOOKS.filter((hook) => self.config[hook] !== undefined).forEach((hook) => {
20469
- self.config[hook] = arrayify(self.config[hook] || []).map(bindToInstance);
20470
- });
20471
- self.isMobile =
20472
- !self.config.disableMobile &&
20473
- !self.config.inline &&
20474
- self.config.mode === "single" &&
20475
- !self.config.disable.length &&
20476
- !self.config.enable &&
20477
- !self.config.weekNumbers &&
20478
- /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
20479
- for (let i = 0; i < self.config.plugins.length; i++) {
20480
- const pluginConf = self.config.plugins[i](self) || {};
20481
- for (const key in pluginConf) {
20482
- if (HOOKS.indexOf(key) > -1) {
20483
- self.config[key] = arrayify(pluginConf[key])
20484
- .map(bindToInstance)
20485
- .concat(self.config[key]);
20486
- }
20487
- else if (typeof userConfig[key] === "undefined")
20488
- self.config[key] = pluginConf[key];
20489
- }
20490
- }
20491
- if (!userConfig.altInputClass) {
20492
- self.config.altInputClass =
20493
- getInputElem().className + " " + self.config.altInputClass;
20494
- }
20495
- triggerEvent("onParseConfig");
20496
- }
20497
- function getInputElem() {
20498
- return self.config.wrap
20499
- ? element.querySelector("[data-input]")
20500
- : element;
20501
- }
20502
- function setupLocale() {
20503
- if (typeof self.config.locale !== "object" &&
20504
- typeof flatpickr.l10ns[self.config.locale] === "undefined")
20505
- self.config.errorHandler(new Error(`flatpickr: invalid locale ${self.config.locale}`));
20506
- self.l10n = Object.assign(Object.assign({}, flatpickr.l10ns.default), (typeof self.config.locale === "object"
20507
- ? self.config.locale
20508
- : self.config.locale !== "default"
20509
- ? flatpickr.l10ns[self.config.locale]
20510
- : undefined));
20511
- tokenRegex.K = `(${self.l10n.amPM[0]}|${self.l10n.amPM[1]}|${self.l10n.amPM[0].toLowerCase()}|${self.l10n.amPM[1].toLowerCase()})`;
20512
- const userConfig = Object.assign(Object.assign({}, instanceConfig), JSON.parse(JSON.stringify(element.dataset || {})));
20513
- if (userConfig.time_24hr === undefined &&
20514
- flatpickr.defaultConfig.time_24hr === undefined) {
20515
- self.config.time_24hr = self.l10n.time_24hr;
20516
- }
20517
- self.formatDate = createDateFormatter(self);
20518
- self.parseDate = createDateParser({ config: self.config, l10n: self.l10n });
20519
- }
20520
- function positionCalendar(customPositionElement) {
20521
- if (typeof self.config.position === "function") {
20522
- return void self.config.position(self, customPositionElement);
20523
- }
20524
- if (self.calendarContainer === undefined)
20525
- return;
20526
- triggerEvent("onPreCalendarPosition");
20527
- const positionElement = customPositionElement || self._positionElement;
20528
- const calendarHeight = Array.prototype.reduce.call(self.calendarContainer.children, ((acc, child) => acc + child.offsetHeight), 0), calendarWidth = self.calendarContainer.offsetWidth, configPos = self.config.position.split(" "), configPosVertical = configPos[0], configPosHorizontal = configPos.length > 1 ? configPos[1] : null, inputBounds = positionElement.getBoundingClientRect(), distanceFromBottom = window.innerHeight - inputBounds.bottom, showOnTop = configPosVertical === "above" ||
20529
- (configPosVertical !== "below" &&
20530
- distanceFromBottom < calendarHeight &&
20531
- inputBounds.top > calendarHeight);
20532
- const top = window.pageYOffset +
20533
- inputBounds.top +
20534
- (!showOnTop ? positionElement.offsetHeight + 2 : -calendarHeight - 2);
20535
- toggleClass(self.calendarContainer, "arrowTop", !showOnTop);
20536
- toggleClass(self.calendarContainer, "arrowBottom", showOnTop);
20537
- if (self.config.inline)
20538
- return;
20539
- let left = window.pageXOffset + inputBounds.left;
20540
- let isCenter = false;
20541
- let isRight = false;
20542
- if (configPosHorizontal === "center") {
20543
- left -= (calendarWidth - inputBounds.width) / 2;
20544
- isCenter = true;
20545
- }
20546
- else if (configPosHorizontal === "right") {
20547
- left -= calendarWidth - inputBounds.width;
20548
- isRight = true;
20549
- }
20550
- toggleClass(self.calendarContainer, "arrowLeft", !isCenter && !isRight);
20551
- toggleClass(self.calendarContainer, "arrowCenter", isCenter);
20552
- toggleClass(self.calendarContainer, "arrowRight", isRight);
20553
- const right = window.document.body.offsetWidth -
20554
- (window.pageXOffset + inputBounds.right);
20555
- const rightMost = left + calendarWidth > window.document.body.offsetWidth;
20556
- const centerMost = right + calendarWidth > window.document.body.offsetWidth;
20557
- toggleClass(self.calendarContainer, "rightMost", rightMost);
20558
- if (self.config.static)
20559
- return;
20560
- self.calendarContainer.style.top = `${top}px`;
20561
- if (!rightMost) {
20562
- self.calendarContainer.style.left = `${left}px`;
20563
- self.calendarContainer.style.right = "auto";
20564
- }
20565
- else if (!centerMost) {
20566
- self.calendarContainer.style.left = "auto";
20567
- self.calendarContainer.style.right = `${right}px`;
20568
- }
20569
- else {
20570
- const doc = getDocumentStyleSheet();
20571
- if (doc === undefined)
20572
- return;
20573
- const bodyWidth = window.document.body.offsetWidth;
20574
- const centerLeft = Math.max(0, bodyWidth / 2 - calendarWidth / 2);
20575
- const centerBefore = ".flatpickr-calendar.centerMost:before";
20576
- const centerAfter = ".flatpickr-calendar.centerMost:after";
20577
- const centerIndex = doc.cssRules.length;
20578
- const centerStyle = `{left:${inputBounds.left}px;right:auto;}`;
20579
- toggleClass(self.calendarContainer, "rightMost", false);
20580
- toggleClass(self.calendarContainer, "centerMost", true);
20581
- doc.insertRule(`${centerBefore},${centerAfter}${centerStyle}`, centerIndex);
20582
- self.calendarContainer.style.left = `${centerLeft}px`;
20583
- self.calendarContainer.style.right = "auto";
20584
- }
20585
- }
20586
- function getDocumentStyleSheet() {
20587
- let editableSheet = null;
20588
- for (let i = 0; i < document.styleSheets.length; i++) {
20589
- const sheet = document.styleSheets[i];
20590
- try {
20591
- sheet.cssRules;
20592
- }
20593
- catch (err) {
20594
- continue;
20595
- }
20596
- editableSheet = sheet;
20597
- break;
20598
- }
20599
- return editableSheet != null ? editableSheet : createStyleSheet();
20600
- }
20601
- function createStyleSheet() {
20602
- const style = document.createElement("style");
20603
- document.head.appendChild(style);
20604
- return style.sheet;
20605
- }
20606
- function redraw() {
20607
- if (self.config.noCalendar || self.isMobile)
20608
- return;
20609
- buildMonthSwitch();
20610
- updateNavigationCurrentMonth();
20611
- buildDays();
20612
- }
20613
- function focusAndClose() {
20614
- self._input.focus();
20615
- if (window.navigator.userAgent.indexOf("MSIE") !== -1 ||
20616
- navigator.msMaxTouchPoints !== undefined) {
20617
- setTimeout(self.close, 0);
20618
- }
20619
- else {
20620
- self.close();
20621
- }
20622
- }
20623
- function selectDate(e) {
20624
- e.preventDefault();
20625
- e.stopPropagation();
20626
- const isSelectable = (day) => day.classList &&
20627
- day.classList.contains("flatpickr-day") &&
20628
- !day.classList.contains("flatpickr-disabled") &&
20629
- !day.classList.contains("notAllowed");
20630
- const t = findParent(getEventTarget(e), isSelectable);
20631
- if (t === undefined)
20632
- return;
20633
- const target = t;
20634
- const selectedDate = (self.latestSelectedDateObj = new Date(target.dateObj.getTime()));
20635
- const shouldChangeMonth = (selectedDate.getMonth() < self.currentMonth ||
20636
- selectedDate.getMonth() >
20637
- self.currentMonth + self.config.showMonths - 1) &&
20638
- self.config.mode !== "range";
20639
- self.selectedDateElem = target;
20640
- if (self.config.mode === "single")
20641
- self.selectedDates = [selectedDate];
20642
- else if (self.config.mode === "multiple") {
20643
- const selectedIndex = isDateSelected(selectedDate);
20644
- if (selectedIndex)
20645
- self.selectedDates.splice(parseInt(selectedIndex), 1);
20646
- else
20647
- self.selectedDates.push(selectedDate);
20648
- }
20649
- else if (self.config.mode === "range") {
20650
- if (self.selectedDates.length === 2) {
20651
- self.clear(false, false);
20652
- }
20653
- self.latestSelectedDateObj = selectedDate;
20654
- self.selectedDates.push(selectedDate);
20655
- if (compareDates(selectedDate, self.selectedDates[0], true) !== 0)
20656
- self.selectedDates.sort((a, b) => a.getTime() - b.getTime());
20657
- }
20658
- setHoursFromInputs();
20659
- if (shouldChangeMonth) {
20660
- const isNewYear = self.currentYear !== selectedDate.getFullYear();
20661
- self.currentYear = selectedDate.getFullYear();
20662
- self.currentMonth = selectedDate.getMonth();
20663
- if (isNewYear) {
20664
- triggerEvent("onYearChange");
20665
- buildMonthSwitch();
20666
- }
20667
- triggerEvent("onMonthChange");
20668
- }
20669
- updateNavigationCurrentMonth();
20670
- buildDays();
20671
- updateValue();
20672
- if (!shouldChangeMonth &&
20673
- self.config.mode !== "range" &&
20674
- self.config.showMonths === 1)
20675
- focusOnDayElem(target);
20676
- else if (self.selectedDateElem !== undefined &&
20677
- self.hourElement === undefined) {
20678
- self.selectedDateElem && self.selectedDateElem.focus();
20679
- }
20680
- if (self.hourElement !== undefined)
20681
- self.hourElement !== undefined && self.hourElement.focus();
20682
- if (self.config.closeOnSelect) {
20683
- const single = self.config.mode === "single" && !self.config.enableTime;
20684
- const range = self.config.mode === "range" &&
20685
- self.selectedDates.length === 2 &&
20686
- !self.config.enableTime;
20687
- if (single || range) {
20688
- focusAndClose();
20689
- }
20690
- }
20691
- triggerChange();
20692
- }
20693
- const CALLBACKS = {
20694
- locale: [setupLocale, updateWeekdays],
20695
- showMonths: [buildMonths, setCalendarWidth, buildWeekdays],
20696
- minDate: [jumpToDate],
20697
- maxDate: [jumpToDate],
20698
- clickOpens: [
20699
- () => {
20700
- if (self.config.clickOpens === true) {
20701
- bind(self._input, "focus", self.open);
20702
- bind(self._input, "click", self.open);
20703
- }
20704
- else {
20705
- self._input.removeEventListener("focus", self.open);
20706
- self._input.removeEventListener("click", self.open);
20707
- }
20708
- },
20709
- ],
20710
- };
20711
- function set(option, value) {
20712
- if (option !== null && typeof option === "object") {
20713
- Object.assign(self.config, option);
20714
- for (const key in option) {
20715
- if (CALLBACKS[key] !== undefined)
20716
- CALLBACKS[key].forEach((x) => x());
20717
- }
20718
- }
20719
- else {
20720
- self.config[option] = value;
20721
- if (CALLBACKS[option] !== undefined)
20722
- CALLBACKS[option].forEach((x) => x());
20723
- else if (HOOKS.indexOf(option) > -1)
20724
- self.config[option] = arrayify(value);
20725
- }
20726
- self.redraw();
20727
- updateValue(true);
20728
- }
20729
- function setSelectedDate(inputDate, format) {
20730
- let dates = [];
20731
- if (inputDate instanceof Array)
20732
- dates = inputDate.map((d) => self.parseDate(d, format));
20733
- else if (inputDate instanceof Date || typeof inputDate === "number")
20734
- dates = [self.parseDate(inputDate, format)];
20735
- else if (typeof inputDate === "string") {
20736
- switch (self.config.mode) {
20737
- case "single":
20738
- case "time":
20739
- dates = [self.parseDate(inputDate, format)];
20740
- break;
20741
- case "multiple":
20742
- dates = inputDate
20743
- .split(self.config.conjunction)
20744
- .map((date) => self.parseDate(date, format));
20745
- break;
20746
- case "range":
20747
- dates = inputDate
20748
- .split(self.l10n.rangeSeparator)
20749
- .map((date) => self.parseDate(date, format));
20750
- break;
20751
- default:
20752
- break;
20753
- }
20754
- }
20755
- else
20756
- self.config.errorHandler(new Error(`Invalid date supplied: ${JSON.stringify(inputDate)}`));
20757
- self.selectedDates = (self.config.allowInvalidPreload
20758
- ? dates
20759
- : dates.filter((d) => d instanceof Date && isEnabled(d, false)));
20760
- if (self.config.mode === "range")
20761
- self.selectedDates.sort((a, b) => a.getTime() - b.getTime());
20762
- }
20763
- function setDate(date, triggerChange = false, format = self.config.dateFormat) {
20764
- if ((date !== 0 && !date) || (date instanceof Array && date.length === 0))
20765
- return self.clear(triggerChange);
20766
- setSelectedDate(date, format);
20767
- self.latestSelectedDateObj =
20768
- self.selectedDates[self.selectedDates.length - 1];
20769
- self.redraw();
20770
- jumpToDate(undefined, triggerChange);
20771
- setHoursFromDate();
20772
- if (self.selectedDates.length === 0) {
20773
- self.clear(false);
20774
- }
20775
- updateValue(triggerChange);
20776
- if (triggerChange)
20777
- triggerEvent("onChange");
20778
- }
20779
- function parseDateRules(arr) {
20780
- return arr
20781
- .slice()
20782
- .map((rule) => {
20783
- if (typeof rule === "string" ||
20784
- typeof rule === "number" ||
20785
- rule instanceof Date) {
20786
- return self.parseDate(rule, undefined, true);
20787
- }
20788
- else if (rule &&
20789
- typeof rule === "object" &&
20790
- rule.from &&
20791
- rule.to)
20792
- return {
20793
- from: self.parseDate(rule.from, undefined),
20794
- to: self.parseDate(rule.to, undefined),
20795
- };
20796
- return rule;
20797
- })
20798
- .filter((x) => x);
20799
- }
20800
- function setupDates() {
20801
- self.selectedDates = [];
20802
- self.now = self.parseDate(self.config.now) || new Date();
20803
- const preloadedDate = self.config.defaultDate ||
20804
- ((self.input.nodeName === "INPUT" ||
20805
- self.input.nodeName === "TEXTAREA") &&
20806
- self.input.placeholder &&
20807
- self.input.value === self.input.placeholder
20808
- ? null
20809
- : self.input.value);
20810
- if (preloadedDate)
20811
- setSelectedDate(preloadedDate, self.config.dateFormat);
20812
- self._initialDate =
20813
- self.selectedDates.length > 0
20814
- ? self.selectedDates[0]
20815
- : self.config.minDate &&
20816
- self.config.minDate.getTime() > self.now.getTime()
20817
- ? self.config.minDate
20818
- : self.config.maxDate &&
20819
- self.config.maxDate.getTime() < self.now.getTime()
20820
- ? self.config.maxDate
20821
- : self.now;
20822
- self.currentYear = self._initialDate.getFullYear();
20823
- self.currentMonth = self._initialDate.getMonth();
20824
- if (self.selectedDates.length > 0)
20825
- self.latestSelectedDateObj = self.selectedDates[0];
20826
- if (self.config.minTime !== undefined)
20827
- self.config.minTime = self.parseDate(self.config.minTime, "H:i");
20828
- if (self.config.maxTime !== undefined)
20829
- self.config.maxTime = self.parseDate(self.config.maxTime, "H:i");
20830
- self.minDateHasTime =
20831
- !!self.config.minDate &&
20832
- (self.config.minDate.getHours() > 0 ||
20833
- self.config.minDate.getMinutes() > 0 ||
20834
- self.config.minDate.getSeconds() > 0);
20835
- self.maxDateHasTime =
20836
- !!self.config.maxDate &&
20837
- (self.config.maxDate.getHours() > 0 ||
20838
- self.config.maxDate.getMinutes() > 0 ||
20839
- self.config.maxDate.getSeconds() > 0);
20840
- }
20841
- function setupInputs() {
20842
- self.input = getInputElem();
20843
- if (!self.input) {
20844
- self.config.errorHandler(new Error("Invalid input element specified"));
20845
- return;
20846
- }
20847
- self.input._type = self.input.type;
20848
- self.input.type = "text";
20849
- self.input.classList.add("flatpickr-input");
20850
- self._input = self.input;
20851
- if (self.config.altInput) {
20852
- self.altInput = createElement(self.input.nodeName, self.config.altInputClass);
20853
- self._input = self.altInput;
20854
- self.altInput.placeholder = self.input.placeholder;
20855
- self.altInput.disabled = self.input.disabled;
20856
- self.altInput.required = self.input.required;
20857
- self.altInput.tabIndex = self.input.tabIndex;
20858
- self.altInput.type = "text";
20859
- self.input.setAttribute("type", "hidden");
20860
- if (!self.config.static && self.input.parentNode)
20861
- self.input.parentNode.insertBefore(self.altInput, self.input.nextSibling);
20862
- }
20863
- if (!self.config.allowInput)
20864
- self._input.setAttribute("readonly", "readonly");
20865
- self._positionElement = self.config.positionElement || self._input;
20866
- }
20867
- function setupMobile() {
20868
- const inputType = self.config.enableTime
20869
- ? self.config.noCalendar
20870
- ? "time"
20871
- : "datetime-local"
20872
- : "date";
20873
- self.mobileInput = createElement("input", self.input.className + " flatpickr-mobile");
20874
- self.mobileInput.tabIndex = 1;
20875
- self.mobileInput.type = inputType;
20876
- self.mobileInput.disabled = self.input.disabled;
20877
- self.mobileInput.required = self.input.required;
20878
- self.mobileInput.placeholder = self.input.placeholder;
20879
- self.mobileFormatStr =
20880
- inputType === "datetime-local"
20881
- ? "Y-m-d\\TH:i:S"
20882
- : inputType === "date"
20883
- ? "Y-m-d"
20884
- : "H:i:S";
20885
- if (self.selectedDates.length > 0) {
20886
- self.mobileInput.defaultValue = self.mobileInput.value = self.formatDate(self.selectedDates[0], self.mobileFormatStr);
20887
- }
20888
- if (self.config.minDate)
20889
- self.mobileInput.min = self.formatDate(self.config.minDate, "Y-m-d");
20890
- if (self.config.maxDate)
20891
- self.mobileInput.max = self.formatDate(self.config.maxDate, "Y-m-d");
20892
- if (self.input.getAttribute("step"))
20893
- self.mobileInput.step = String(self.input.getAttribute("step"));
20894
- self.input.type = "hidden";
20895
- if (self.altInput !== undefined)
20896
- self.altInput.type = "hidden";
20897
- try {
20898
- if (self.input.parentNode)
20899
- self.input.parentNode.insertBefore(self.mobileInput, self.input.nextSibling);
20900
- }
20901
- catch (_a) { }
20902
- bind(self.mobileInput, "change", (e) => {
20903
- self.setDate(getEventTarget(e).value, false, self.mobileFormatStr);
20904
- triggerEvent("onChange");
20905
- triggerEvent("onClose");
20906
- });
20907
- }
20908
- function toggle(e) {
20909
- if (self.isOpen === true)
20910
- return self.close();
20911
- self.open(e);
20912
- }
20913
- function triggerEvent(event, data) {
20914
- if (self.config === undefined)
20915
- return;
20916
- const hooks = self.config[event];
20917
- if (hooks !== undefined && hooks.length > 0) {
20918
- for (let i = 0; hooks[i] && i < hooks.length; i++)
20919
- hooks[i](self.selectedDates, self.input.value, self, data);
20920
- }
20921
- if (event === "onChange") {
20922
- self.input.dispatchEvent(createEvent("change"));
20923
- self.input.dispatchEvent(createEvent("input"));
20924
- }
20925
- }
20926
- function createEvent(name) {
20927
- const e = document.createEvent("Event");
20928
- e.initEvent(name, true, true);
20929
- return e;
20930
- }
20931
- function isDateSelected(date) {
20932
- for (let i = 0; i < self.selectedDates.length; i++) {
20933
- if (compareDates(self.selectedDates[i], date) === 0)
20934
- return "" + i;
20935
- }
20936
- return false;
20937
- }
20938
- function isDateInRange(date) {
20939
- if (self.config.mode !== "range" || self.selectedDates.length < 2)
20940
- return false;
20941
- return (compareDates(date, self.selectedDates[0]) >= 0 &&
20942
- compareDates(date, self.selectedDates[1]) <= 0);
20943
- }
20944
- function updateNavigationCurrentMonth() {
20945
- if (self.config.noCalendar || self.isMobile || !self.monthNav)
20946
- return;
20947
- self.yearElements.forEach((yearElement, i) => {
20948
- const d = new Date(self.currentYear, self.currentMonth, 1);
20949
- d.setMonth(self.currentMonth + i);
20950
- if (self.config.showMonths > 1 ||
20951
- self.config.monthSelectorType === "static") {
20952
- self.monthElements[i].textContent =
20953
- monthToStr(d.getMonth(), self.config.shorthandCurrentMonth, self.l10n) + " ";
20954
- }
20955
- else {
20956
- self.monthsDropdownContainer.value = d.getMonth().toString();
20957
- }
20958
- yearElement.value = d.getFullYear().toString();
20959
- });
20960
- self._hidePrevMonthArrow =
20961
- self.config.minDate !== undefined &&
20962
- (self.currentYear === self.config.minDate.getFullYear()
20963
- ? self.currentMonth <= self.config.minDate.getMonth()
20964
- : self.currentYear < self.config.minDate.getFullYear());
20965
- self._hideNextMonthArrow =
20966
- self.config.maxDate !== undefined &&
20967
- (self.currentYear === self.config.maxDate.getFullYear()
20968
- ? self.currentMonth + 1 > self.config.maxDate.getMonth()
20969
- : self.currentYear > self.config.maxDate.getFullYear());
20970
- }
20971
- function getDateStr(format) {
20972
- return self.selectedDates
20973
- .map((dObj) => self.formatDate(dObj, format))
20974
- .filter((d, i, arr) => self.config.mode !== "range" ||
20975
- self.config.enableTime ||
20976
- arr.indexOf(d) === i)
20977
- .join(self.config.mode !== "range"
20978
- ? self.config.conjunction
20979
- : self.l10n.rangeSeparator);
20980
- }
20981
- function updateValue(triggerChange = true) {
20982
- if (self.mobileInput !== undefined && self.mobileFormatStr) {
20983
- self.mobileInput.value =
20984
- self.latestSelectedDateObj !== undefined
20985
- ? self.formatDate(self.latestSelectedDateObj, self.mobileFormatStr)
20986
- : "";
20987
- }
20988
- self.input.value = getDateStr(self.config.dateFormat);
20989
- if (self.altInput !== undefined) {
20990
- self.altInput.value = getDateStr(self.config.altFormat);
20991
- }
20992
- if (triggerChange !== false)
20993
- triggerEvent("onValueUpdate");
20994
- }
20995
- function onMonthNavClick(e) {
20996
- const eventTarget = getEventTarget(e);
20997
- const isPrevMonth = self.prevMonthNav.contains(eventTarget);
20998
- const isNextMonth = self.nextMonthNav.contains(eventTarget);
20999
- if (isPrevMonth || isNextMonth) {
21000
- changeMonth(isPrevMonth ? -1 : 1);
21001
- }
21002
- else if (self.yearElements.indexOf(eventTarget) >= 0) {
21003
- eventTarget.select();
21004
- }
21005
- else if (eventTarget.classList.contains("arrowUp")) {
21006
- self.changeYear(self.currentYear + 1);
21007
- }
21008
- else if (eventTarget.classList.contains("arrowDown")) {
21009
- self.changeYear(self.currentYear - 1);
21010
- }
21011
- }
21012
- function timeWrapper(e) {
21013
- e.preventDefault();
21014
- const isKeyDown = e.type === "keydown", eventTarget = getEventTarget(e), input = eventTarget;
21015
- if (self.amPM !== undefined && eventTarget === self.amPM) {
21016
- self.amPM.textContent =
21017
- self.l10n.amPM[utils_int(self.amPM.textContent === self.l10n.amPM[0])];
21018
- }
21019
- const min = parseFloat(input.getAttribute("min")), max = parseFloat(input.getAttribute("max")), step = parseFloat(input.getAttribute("step")), curValue = parseInt(input.value, 10), delta = e.delta ||
21020
- (isKeyDown ? (e.which === 38 ? 1 : -1) : 0);
21021
- let newValue = curValue + step * delta;
21022
- if (typeof input.value !== "undefined" && input.value.length === 2) {
21023
- const isHourElem = input === self.hourElement, isMinuteElem = input === self.minuteElement;
21024
- if (newValue < min) {
21025
- newValue =
21026
- max +
21027
- newValue +
21028
- utils_int(!isHourElem) +
21029
- (utils_int(isHourElem) && utils_int(!self.amPM));
21030
- if (isMinuteElem)
21031
- incrementNumInput(undefined, -1, self.hourElement);
21032
- }
21033
- else if (newValue > max) {
21034
- newValue =
21035
- input === self.hourElement ? newValue - max - utils_int(!self.amPM) : min;
21036
- if (isMinuteElem)
21037
- incrementNumInput(undefined, 1, self.hourElement);
21038
- }
21039
- if (self.amPM &&
21040
- isHourElem &&
21041
- (step === 1
21042
- ? newValue + curValue === 23
21043
- : Math.abs(newValue - curValue) > step)) {
21044
- self.amPM.textContent =
21045
- self.l10n.amPM[utils_int(self.amPM.textContent === self.l10n.amPM[0])];
21046
- }
21047
- input.value = pad(newValue);
21048
- }
21049
- }
21050
- init();
21051
- return self;
21052
- }
21053
- function _flatpickr(nodeList, config) {
21054
- const nodes = Array.prototype.slice
21055
- .call(nodeList)
21056
- .filter((x) => x instanceof HTMLElement);
21057
- const instances = [];
21058
- for (let i = 0; i < nodes.length; i++) {
21059
- const node = nodes[i];
21060
- try {
21061
- if (node.getAttribute("data-fp-omit") !== null)
21062
- continue;
21063
- if (node._flatpickr !== undefined) {
21064
- node._flatpickr.destroy();
21065
- node._flatpickr = undefined;
21066
- }
21067
- node._flatpickr = FlatpickrInstance(node, config || {});
21068
- instances.push(node._flatpickr);
21069
- }
21070
- catch (e) {
21071
- console.error(e);
21072
- }
21073
- }
21074
- return instances.length === 1 ? instances[0] : instances;
21075
- }
21076
- if (typeof HTMLElement !== "undefined" &&
21077
- typeof HTMLCollection !== "undefined" &&
21078
- typeof NodeList !== "undefined") {
21079
- HTMLCollection.prototype.flatpickr = NodeList.prototype.flatpickr = function (config) {
21080
- return _flatpickr(this, config);
21081
- };
21082
- HTMLElement.prototype.flatpickr = function (config) {
21083
- return _flatpickr([this], config);
21084
- };
21085
- }
21086
- var flatpickr = function (selector, config) {
21087
- if (typeof selector === "string") {
21088
- return _flatpickr(window.document.querySelectorAll(selector), config);
21089
- }
21090
- else if (selector instanceof Node) {
21091
- return _flatpickr([selector], config);
21092
- }
21093
- else {
21094
- return _flatpickr(selector, config);
21095
- }
21096
- };
21097
- flatpickr.defaultConfig = {};
21098
- flatpickr.l10ns = {
21099
- en: Object.assign({}, l10n_default),
21100
- default: Object.assign({}, l10n_default),
21101
- };
21102
- flatpickr.localize = (l10n) => {
21103
- flatpickr.l10ns.default = Object.assign(Object.assign({}, flatpickr.l10ns.default), l10n);
21104
- };
21105
- flatpickr.setDefaults = (config) => {
21106
- flatpickr.defaultConfig = Object.assign(Object.assign({}, flatpickr.defaultConfig), config);
21107
- };
21108
- flatpickr.parseDate = createDateParser({});
21109
- flatpickr.formatDate = createDateFormatter({});
21110
- flatpickr.compareDates = compareDates;
21111
- if (typeof jQuery !== "undefined" && typeof jQuery.fn !== "undefined") {
21112
- jQuery.fn.flatpickr = function (config) {
21113
- return _flatpickr(this, config);
21114
- };
21115
- }
21116
- Date.prototype.fp_incr = function (days) {
21117
- return new Date(this.getFullYear(), this.getMonth(), this.getDate() + (typeof days === "string" ? parseInt(days, 10) : days));
21118
- };
21119
- if (typeof window !== "undefined") {
21120
- window.flatpickr = flatpickr;
21121
- }
21122
- /* harmony default export */ var esm = (flatpickr);
21123
-
18716
+ // EXTERNAL MODULE: ./node_modules/flatpickr/dist/flatpickr.min.js
18717
+ var flatpickr_min = __webpack_require__(8393);
18718
+ var flatpickr_min_default = /*#__PURE__*/__webpack_require__.n(flatpickr_min);
21124
18719
  // EXTERNAL MODULE: ./node_modules/flatpickr/dist/l10n/ru.js
21125
18720
  var ru = __webpack_require__(8809);
21126
18721
  // EXTERNAL MODULE: ./node_modules/flatpickr/dist/plugins/rangePlugin.js
@@ -21659,12 +19254,12 @@ var CdsDatePickervue_type_script_lang_js_PROPS_AVAILABLE = {
21659
19254
  getDate: function getDate() {
21660
19255
  if (this.isRange) {
21661
19256
  return {
21662
- startDate: esm.parseDate(this.internalValue.startDate, this.dateTimeFormat),
21663
- endDate: esm.parseDate(this.internalValue.endDate, this.dateTimeFormat)
19257
+ startDate: flatpickr_min_default().parseDate(this.internalValue.startDate, this.dateTimeFormat),
19258
+ endDate: flatpickr_min_default().parseDate(this.internalValue.endDate, this.dateTimeFormat)
21664
19259
  };
21665
19260
  }
21666
19261
 
21667
- return esm.parseDate(this.internalValue, this.dateTimeFormat);
19262
+ return flatpickr_min_default().parseDate(this.internalValue, this.dateTimeFormat);
21668
19263
  },
21669
19264
 
21670
19265
  /**
@@ -21703,7 +19298,7 @@ var CdsDatePickervue_type_script_lang_js_PROPS_AVAILABLE = {
21703
19298
  _initPlugin: function _initPlugin() {
21704
19299
  if (this.isSimple) return;
21705
19300
  var input = this.$refs.date.$el.querySelector('input');
21706
- this.plugin = new esm(input, this._getOptions());
19301
+ this.plugin = new (flatpickr_min_default())(input, this._getOptions());
21707
19302
  },
21708
19303
  _getOptions: function _getOptions() {
21709
19304
  var options = _objectSpread2({
@@ -21731,7 +19326,7 @@ var CdsDatePickervue_type_script_lang_js_PROPS_AVAILABLE = {
21731
19326
 
21732
19327
  if (timeInput) {
21733
19328
  var date = this.isRange ? this.getDate().startDate : this.getDate();
21734
- this.time = esm.formatDate(date, this.timeFormat);
19329
+ this.time = flatpickr_min_default().formatDate(date, this.timeFormat);
21735
19330
  timeInput.value = this.time;
21736
19331
  }
21737
19332
  }
@@ -21828,7 +19423,7 @@ var CdsDatePickervue_type_script_lang_js_PROPS_AVAILABLE = {
21828
19423
 
21829
19424
  if (this.plugin && internalValue) {
21830
19425
  var date = this.isRange ? this.getDate().startDate : this.getDate();
21831
- var formatDate = "".concat(esm.formatDate(date, this.dateFormat), " ").concat(this.time);
19426
+ var formatDate = "".concat(flatpickr_min_default().formatDate(date, this.dateFormat), " ").concat(this.time);
21832
19427
  this.plugin.setDate(formatDate, true, this.dateTimeFormat);
21833
19428
  }
21834
19429
  /**
@@ -22006,8 +19601,8 @@ var CdsDatePickervue_type_script_lang_js_PROPS_AVAILABLE = {
22006
19601
 
22007
19602
  var CdsDatePicker_component = normalizeComponent(
22008
19603
  CdsDatePicker_CdsDatePickervue_type_script_lang_js_,
22009
- CdsDatePickervue_type_template_id_1a2cbaeb_render,
22010
- CdsDatePickervue_type_template_id_1a2cbaeb_staticRenderFns,
19604
+ CdsDatePickervue_type_template_id_d31f932a_render,
19605
+ CdsDatePickervue_type_template_id_d31f932a_staticRenderFns,
22011
19606
  false,
22012
19607
  null,
22013
19608
  null,
@@ -28138,6 +25733,8 @@ if (typeof window !== 'undefined' && window.Vue) {
28138
25733
  CdsStepsItem: CdsStepsItem,
28139
25734
  CdsStepsSkeleton: CdsStepsSkeleton
28140
25735
  });
25736
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.find.js
25737
+ var es_array_find = __webpack_require__(9826);
28141
25738
  ;// CONCATENATED MODULE: ./src/components/CdsTable/CdsTable.scss
28142
25739
  // extracted by mini-css-extract-plugin
28143
25740
  /* harmony default export */ var CdsTable = ({"cds-table-wrap":"cds-table-wrap","cds-table":"cds-table","cds-table__horizontal-scroll":"cds-table__horizontal-scroll","cds-table__scroll":"cds-table__scroll","cds-table__fixed-left":"cds-table__fixed-left","cds-table__table--focus":"cds-table__table--focus","cds-table__fixed-left-header":"cds-table__fixed-left-header","cds-table__fixed-left-header--fixed":"cds-table__fixed-left-header--fixed","cds-table__fixed-header":"cds-table__fixed-header","cds-table__auto-width":"cds-table__auto-width","cds-data-table__table":"cds-data-table__table","cds-table__heading":"cds-table__heading","cds-table__right-shadow":"cds-table__right-shadow","cds-table__table":"cds-table__table","cds-table__table--hide-header":"cds-table__table--hide-header","right":"right","center":"center","expand":"expand","selection":"selection","nowrap":"nowrap","ellipsis":"ellipsis","cds-table__table--short":"cds-table__table--short","no-vertical-pad":"no-vertical-pad","cds-table__table--expandable":"cds-table__table--expandable","expandable-row__sub":"expandable-row__sub","cds-table__table--hover":"cds-table__table--hover","cds-table__table--select":"cds-table__table--select","cds-table__table--borderless":"cds-table__table--borderless","cds-table__table--ellipsis":"cds-table__table--ellipsis","cds-table__table--selectable":"cds-table__table--selectable","cds-table__table--sortable":"cds-table__table--sortable","sortable-icon":"sortable-icon","asc":"asc","desc":"desc","cds-table--group":"cds-table--group","level-1":"level-1","tree-leaf":"tree-leaf","tree-leaf--last":"tree-leaf--last","level-2":"level-2","level-3":"level-3","level-4":"level-4","level-5":"level-5","tree-open":"tree-open","tree-action":"tree-action","tree-action-content":"tree-action-content","expandable-content":"expandable-content","cds-table__footer":"cds-table__footer","cds-table__footer--summary":"cds-table__footer--summary","cds-table__footer--view":"cds-table__footer--view","cds-select__control":"cds-select__control","cds-table__empty-message":"cds-table__empty-message"});
@@ -28189,9 +25786,9 @@ var CdsTableCell_component = normalizeComponent(
28189
25786
  )
28190
25787
 
28191
25788
  /* harmony default export */ var CdsTableCell = (CdsTableCell_component.exports);
28192
- ;// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/CdsTable/CdsTableRow.vue?vue&type=template&id=73c0c93e&
28193
- var CdsTableRowvue_type_template_id_73c0c93e_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('tr',_vm._g({class:_vm.classes},_vm.events),[(_vm.multiselectable)?_c(_vm.cellTag,{tag:"component",staticClass:"selection"},[_c('cds-checkbox',{attrs:{"label":"","hidden-label":"","indeterminate":_vm.indeterminate},on:{"change":_vm._onChangeCheckbox},model:{value:(_vm.internalSelected),callback:function ($$v) {_vm.internalSelected=$$v},expression:"internalSelected"}})],1):_vm._e(),_vm._v(" "),(_vm.expandable)?_c(_vm.cellTag,{tag:"component",staticClass:"expand"},[_c('cds-button',{attrs:{"icon-only":""},on:{"click":_vm._toggleExpandedSlot},scopedSlots:_vm._u([{key:"icon",fn:function(){return [_c('cds-icon',{attrs:{"name":_vm.expanded ? 'chevron-down' : 'chevron-up'}})]},proxy:true}],null,false,615983407)})],1):_vm._e(),_vm._v(" "),_vm._t("default")],2)}
28194
- var CdsTableRowvue_type_template_id_73c0c93e_staticRenderFns = []
25789
+ ;// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/CdsTable/CdsTableRow.vue?vue&type=template&id=0c409c95&
25790
+ var CdsTableRowvue_type_template_id_0c409c95_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('tr',_vm._g({class:_vm.classes},_vm.events),[(_vm.multiselectable)?_c(_vm.cellTag,{tag:"component",staticClass:"selection"},[_c('cds-checkbox',{attrs:{"label":"","hidden-label":"","indeterminate":_vm.indeterminate},on:{"change":_vm._onChangeCheckbox},model:{value:(_vm.internalSelected),callback:function ($$v) {_vm.internalSelected=$$v},expression:"internalSelected"}})],1):_vm._e(),_vm._v(" "),(_vm.expandable)?_c(_vm.cellTag,{tag:"component",staticClass:"expand"},[_c('cds-button',{attrs:{"icon-only":""},on:{"click":_vm._toggleExpandedSlot},scopedSlots:_vm._u([{key:"icon",fn:function(){return [_c('cds-icon',{attrs:{"name":_vm.internalExpanded ? 'chevron-down' : 'chevron-up'}})]},proxy:true}],null,false,3183986376)})],1):_vm._e(),_vm._v(" "),_vm._t("default")],2)}
25791
+ var CdsTableRowvue_type_template_id_0c409c95_staticRenderFns = []
28195
25792
 
28196
25793
 
28197
25794
  ;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js??vue-loader-options!./src/components/CdsTable/CdsTableRow.vue?vue&type=script&lang=js&
@@ -28201,6 +25798,7 @@ var CdsTableRowvue_type_template_id_73c0c93e_staticRenderFns = []
28201
25798
 
28202
25799
 
28203
25800
 
25801
+
28204
25802
  //
28205
25803
  //
28206
25804
  //
@@ -28263,13 +25861,17 @@ var CdsTableRowvue_type_template_id_73c0c93e_staticRenderFns = []
28263
25861
  expandable: {
28264
25862
  type: Boolean,
28265
25863
  default: false
25864
+ },
25865
+ expanded: {
25866
+ type: Boolean,
25867
+ default: false
28266
25868
  }
28267
25869
  },
28268
25870
  data: function data() {
28269
25871
  return {
28270
25872
  focus: false,
28271
25873
  hover: false,
28272
- expanded: false,
25874
+ internalExpanded: false,
28273
25875
  indeterminate: false,
28274
25876
  internalSelected: this.selected
28275
25877
  };
@@ -28296,19 +25898,23 @@ var CdsTableRowvue_type_template_id_73c0c93e_staticRenderFns = []
28296
25898
  },
28297
25899
  mounted: function mounted() {
28298
25900
  if (this.table.selectedRowKeys.includes(this.rowKey)) this.setSelected(true);
25901
+ this.internalExpanded = this.expanded;
25902
+ if (this.internalExpanded) this._toggleExpandedSlot();
28299
25903
  },
28300
25904
  methods: {
28301
25905
  _onClick: function _onClick(e) {
28302
25906
  if (e.target.tagName !== this.cellTag && e.target.tagName !== 'TR' || this.isHead) return;
28303
25907
 
25908
+ var row = this._findRowByKey(this.rowKey);
25909
+
28304
25910
  if (this.selectable || this.multiselectable) {
28305
25911
  this._onSelect();
28306
25912
 
28307
- this.$emit('select', this.rowKey);
25913
+ this.$emit('select', row);
28308
25914
  }
28309
25915
 
28310
25916
  this.table.currentFocusRowKey = this.rowKey;
28311
- this.$emit('click', this.rowKey);
25917
+ this.$emit('click', row);
28312
25918
  },
28313
25919
  _onKeyDown: function _onKeyDown(e) {
28314
25920
  if (e.target.tagName !== this.cellTag && e.target.tagName !== 'TR' || e.keyCode !== keyCodes.enter && e.keyCode !== keyCodes.space || this.isHead) {
@@ -28358,7 +25964,10 @@ var CdsTableRowvue_type_template_id_73c0c93e_staticRenderFns = []
28358
25964
  },
28359
25965
  _onSelect: function _onSelect() {
28360
25966
  if (this.isHead) return;
28361
- this.$emit('select', this.rowKey);
25967
+
25968
+ var row = this._findRowByKey(this.rowKey);
25969
+
25970
+ this.$emit('select', row);
28362
25971
 
28363
25972
  if (!this.multiselectable) {
28364
25973
  this.table.selectedRowKeys.splice(0, 1);
@@ -28374,6 +25983,13 @@ var CdsTableRowvue_type_template_id_73c0c93e_staticRenderFns = []
28374
25983
  this.table.selectedRowKeys.push(this.rowKey);
28375
25984
  }
28376
25985
  },
25986
+ _findRowByKey: function _findRowByKey(key) {
25987
+ var dataSource = this.$parent.dataSource;
25988
+ if (!dataSource) return;
25989
+ return dataSource.find(function (item) {
25990
+ return item.key === key;
25991
+ });
25992
+ },
28377
25993
  setSelected: function setSelected(flag) {
28378
25994
  this.internalSelected = flag;
28379
25995
  },
@@ -28387,7 +26003,7 @@ var CdsTableRowvue_type_template_id_73c0c93e_staticRenderFns = []
28387
26003
  this.indeterminate = flag;
28388
26004
  },
28389
26005
  setExpanded: function setExpanded(flag) {
28390
- this.expanded = flag;
26006
+ this.internalExpanded = flag;
28391
26007
  }
28392
26008
  }
28393
26009
  });
@@ -28403,8 +26019,8 @@ var CdsTableRowvue_type_template_id_73c0c93e_staticRenderFns = []
28403
26019
  ;
28404
26020
  var CdsTableRow_component = normalizeComponent(
28405
26021
  CdsTable_CdsTableRowvue_type_script_lang_js_,
28406
- CdsTableRowvue_type_template_id_73c0c93e_render,
28407
- CdsTableRowvue_type_template_id_73c0c93e_staticRenderFns,
26022
+ CdsTableRowvue_type_template_id_0c409c95_render,
26023
+ CdsTableRowvue_type_template_id_0c409c95_staticRenderFns,
28408
26024
  false,
28409
26025
  null,
28410
26026
  null,
@@ -29000,7 +26616,8 @@ var noop = function noop() {};
29000
26616
  class: (_class = {}, _defineProperty(_class, "level-".concat(level), level), _defineProperty(_class, 'tree-open', level || this.table.expandedTreeRowKeys.includes(row.key)), _class),
29001
26617
  props: _objectSpread2({
29002
26618
  rowKey: row.key,
29003
- level: level
26619
+ level: level,
26620
+ expanded: row.expanded
29004
26621
  }, this.rowProps),
29005
26622
  on: {
29006
26623
  click: this.rowSelection.onClick || noop,
@@ -29257,6 +26874,8 @@ var ColumnManager = /*#__PURE__*/function () {
29257
26874
 
29258
26875
 
29259
26876
 
26877
+
26878
+
29260
26879
  var CdsTable_PROPS_AVAILABLE = {
29261
26880
  rowSize: ['standard', 'short']
29262
26881
  };
@@ -29437,11 +27056,13 @@ var cm;
29437
27056
  };
29438
27057
  },
29439
27058
  watch: {
29440
- 'table.selectedRowKeys': function tableSelectedRowKeys(rows) {
29441
- this.table.isAllChecked = rows.length === this.cacheDataKeys.length;
29442
- this.table.isIndeterminate = !this.table.isAllChecked && rows.length > 0;
27059
+ 'table.selectedRowKeys': function tableSelectedRowKeys(rowKeys) {
27060
+ this.table.isAllChecked = rowKeys.length === this.cacheDataKeys.length;
27061
+ this.table.isIndeterminate = !this.table.isAllChecked && rowKeys.length > 0;
29443
27062
 
29444
27063
  if (this.table.isAllChecked && this.rowSelection.onSelectAll) {
27064
+ var rows = this._findRowsByKeys(rowKeys);
27065
+
29445
27066
  this.rowSelection.onSelectAll(rows);
29446
27067
  }
29447
27068
  },
@@ -29831,6 +27452,36 @@ var cm;
29831
27452
  if (this.table.currentFocusRowKey !== null) {
29832
27453
  this.table.currentFocusRowKey = null;
29833
27454
  }
27455
+ },
27456
+ _findRowsByKeys: function _findRowsByKeys(rows) {
27457
+ var _this5 = this;
27458
+
27459
+ var results = [];
27460
+
27461
+ var _iterator = _createForOfIteratorHelper(rows),
27462
+ _step;
27463
+
27464
+ try {
27465
+ var _loop = function _loop() {
27466
+ var row = _step.value;
27467
+
27468
+ var item = _this5.dataSource.find(function (item) {
27469
+ return item.key === row;
27470
+ });
27471
+
27472
+ results.push(item);
27473
+ };
27474
+
27475
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
27476
+ _loop();
27477
+ }
27478
+ } catch (err) {
27479
+ _iterator.e(err);
27480
+ } finally {
27481
+ _iterator.f();
27482
+ }
27483
+
27484
+ return results;
29834
27485
  }
29835
27486
  }
29836
27487
  });
@@ -29909,8 +27560,6 @@ var CdsTabsvue_type_template_id_349e22a0_render = function () {var _vm=this;var
29909
27560
  var CdsTabsvue_type_template_id_349e22a0_staticRenderFns = []
29910
27561
 
29911
27562
 
29912
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.find.js
29913
- var es_array_find = __webpack_require__(9826);
29914
27563
  // EXTERNAL MODULE: ./node_modules/core-js/modules/web.url.js
29915
27564
  var web_url = __webpack_require__(285);
29916
27565
  ;// CONCATENATED MODULE: ./src/utils/expiringStorage.js