{"version":3,"sources":["webpack://frontendplaceholder/./Src/Scripts/components/tour-calendar.js","webpack://frontendplaceholder/./node_modules/color-calendar/dist/bundle.js"],"names":["constructor","elm","args","timeSlotsContainer","querySelector","calendar","colorCalendar","Calendar","id","eventsData","startWeekday","calendarSize","theme","customMonthValues","customWeekdayValues","dateChanged","currentDate","filteredDateEvents","timeslots","innerHTML","length","classList","add","remove","forEach","slot","timeslotElement","start","end","link","status","timeslotDiv","document","createElement","href","target","className","textContent","statusSpan","appendChild","createTimeslotElement","formatTime","window","innerWidth","scrollIntoView","behavior","monthChanged","setTimeout","querySelectorAll","x","addEventListener","firstStartDate","reduce","earliest","current","dateString","date","Date","getHours","toString","padStart","getMinutes","setDate","module","exports","e","t","a","i","r","n","s","o","l","d","c","h","y","p","this","CAL_NAME","DAYS_TO_DISPLAY","weekdayDisplayTypeOptions","short","layoutModifiers","primaryColor","headerColor","headerBackgroundColor","weekdaysColor","weekdayDisplayType","monthDisplayType","fontFamilyHeader","fontFamilyWeekdays","fontFamilyBody","dropShadow","border","borderRadius","disableMonthYearPickers","disableDayClick","disableMonthArrowClick","selectedDateClicked","weekdays","today","pickerType","eventDayMap","oldSelectedNode","filteredEventsThisMonth","daysIn_PrevMonth","daysIn_CurrentMonth","daysIn_NextMonth","firstDay_PrevMonth","firstDay_CurrentMonth","firstDay_NextMonth","numOfDays_PrevMonth","numOfDays_CurrentMonth","numOfDays_NextMonth","yearPickerOffset","yearPickerOffsetTemporary","Error","map","join","calendarRoot","calendarHeader","calendarWeekdays","calendarDays","pickerContainer","pickerMonthContainer","pickerYearContainer","yearPickerChevronLeft","yearPickerChevronRight","children","getMonth","includes","monthyearDisplay","monthDisplay","yearDisplay","prevButton","nextButton","togglePicker","configureStylePreferences","addEventListeners","reset","clearCalendarDays","updateMonthYear","updateMonthPickerSelection","generatePickerYears","updateYearPickerSelection","getFullYear","updateYearPickerTodaySelection","generateWeekdays","generateDays","selectDayInitial","renderDays","setOldSelectedNode","getDateEvents","getMonthEvents","prototype","handlePrevMonthButtonClick","bind","handleNextMonthButtonClick","handleMonthYearDisplayClick","handleCalendarDayClick","handleMonthPickerClick","handleYearPickerClick","handleYearChevronLeftClick","handleYearChevronRightClick","style","setProperty","visibility","opacity","removeYearPickerSelection","contains","parseInt","dataset","value","updateCurrentDate","removeMonthPickerSelection","innerText","setMonthDisplayType","display","Intl","DateTimeFormat","month","format","setWeekdayDisplayType","getSelectedDate","updateCalendar","childNodes","getDate","selected","parentElement","removeOldDaySelection","Object","assign","rerenderSelectedDay","getDay","push","day","filter","previousElementSibling","insertBefore","nextSibling","console","log","getEventsData","JSON","parse","stringify","setEventsData","addEventsData"],"mappings":"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","file":"1563.fa3e5b76900fabbe6090.js","sourcesContent":["import Calendar from 'color-calendar';\nexport default class TourCalendar {\n constructor(elm, args) {\n const timeSlotsContainer = elm.querySelector('[data-timeslots]');\n const calendar = elm.querySelector('[data-calendar]');\n let colorCalendar = null;\n\n colorCalendar = new Calendar({\n id: '#' + calendar.id,\n eventsData: args,\n startWeekday: 1,\n calendarSize: 'large',\n theme: 'basic',\n customMonthValues:\n ['Januar', 'Februar', 'Marts', 'April', 'Maj', 'Juni',\n 'Juli', 'August', 'September', 'Oktober', 'November', 'December'],\n customWeekdayValues: ['Søn', 'Man', 'Tir', 'Ons', 'Tor', 'Fre', 'Lør'],\n dateChanged: (currentDate, filteredDateEvents) => {\n renderTimeslots(filteredDateEvents);\n },\n monthChanged: () => {\n setTimeout(() => {\n elm.classList.add('tour-calendar--no-events');\n elm.querySelectorAll('.calendar__day-event.calendar__day-selected').forEach(x => x.addEventListener('click', () => {\n elm.classList.remove('tour-calendar--no-events');\n }));\n }, 1);\n\n },\n });\n\n const firstStartDate = args.reduce((earliest, current) => {\n return earliest < current.start ? earliest : current.start;\n }, args[0].start);\n if (firstStartDate) {\n colorCalendar.setDate(firstStartDate);\n }\n\n\n function formatTime(dateString) {\n const date = new Date(dateString);\n const hours = date.getHours().toString().padStart(2, '0');\n const minutes = date.getMinutes().toString().padStart(2, '0');\n return `${hours}.${minutes}`;\n }\n\n function createTimeslotElement(start, end, link, status) {\n const timeslotDiv = document.createElement('a');\n timeslotDiv.href = link;\n timeslotDiv.target = '_blank';\n timeslotDiv.className = `tour-calendar__timeslot btn ${status === 'udsolgt' || status === 'aflyst' ? 'btn--inactive' : ''}`;\n timeslotDiv.textContent = `${start} - ${end}`;\n if (status) {\n const statusSpan = document.createElement('p');\n statusSpan.textContent = status;\n statusSpan.className = 'tour-calendar__timeslot__status';\n timeslotDiv.appendChild(statusSpan);\n }\n return timeslotDiv;\n }\n\n function renderTimeslots(timeslots) {\n timeSlotsContainer.innerHTML = '';\n if (timeslots.length === 0) {\n elm.classList.add('tour-calendar--no-events');\n } else {\n elm.classList.remove('tour-calendar--no-events');\n timeslots.forEach(slot => {\n const start = formatTime(slot.start);\n const end = formatTime(slot.end);\n const timeslotElement = createTimeslotElement(start, end, slot.link, slot.status);\n timeSlotsContainer.appendChild(timeslotElement);\n });\n if (window.innerWidth < 992) {\n timeSlotsContainer.scrollIntoView({ behavior: 'smooth' });\n }\n }\n }\n }\n}\n","/**\n * color-calendar\n * v1.0.6\n * by Pawan Kolhe <contact@pawankolhe.com> (https://pawankolhe.com/)\n */\n\n!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).Calendar=t()}(this,(function(){\"use strict\";class e{constructor(e={}){var t,a,i,r,n,s,o,l,d,c,h,y,p;if(this.CAL_NAME=\"color-calendar\",this.DAYS_TO_DISPLAY=42,this.weekdayDisplayTypeOptions={short:[\"S\",\"M\",\"T\",\"W\",\"T\",\"F\",\"S\"],\"long-lower\":[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],\"long-upper\":[\"SUN\",\"MON\",\"TUE\",\"WED\",\"THU\",\"FRI\",\"SAT\"]},this.id=null!==(t=e.id)&&void 0!==t?t:\"#color-calendar\",this.calendarSize=null!==(a=e.calendarSize)&&void 0!==a?a:\"large\",this.layoutModifiers=null!==(i=e.layoutModifiers)&&void 0!==i?i:[],this.eventsData=null!==(r=e.eventsData)&&void 0!==r?r:[],this.theme=null!==(n=e.theme)&&void 0!==n?n:\"basic\",this.primaryColor=e.primaryColor,this.headerColor=e.headerColor,this.headerBackgroundColor=e.headerBackgroundColor,this.weekdaysColor=e.weekdaysColor,this.weekdayDisplayType=null!==(s=e.weekdayDisplayType)&&void 0!==s?s:\"long-lower\",this.monthDisplayType=null!==(o=e.monthDisplayType)&&void 0!==o?o:\"long\",this.startWeekday=null!==(l=e.startWeekday)&&void 0!==l?l:0,this.fontFamilyHeader=e.fontFamilyHeader,this.fontFamilyWeekdays=e.fontFamilyWeekdays,this.fontFamilyBody=e.fontFamilyBody,this.dropShadow=e.dropShadow,this.border=e.border,this.borderRadius=e.borderRadius,this.disableMonthYearPickers=null!==(d=e.disableMonthYearPickers)&&void 0!==d&&d,this.disableDayClick=null!==(c=e.disableDayClick)&&void 0!==c&&c,this.disableMonthArrowClick=null!==(h=e.disableMonthArrowClick)&&void 0!==h&&h,this.customMonthValues=e.customMonthValues,this.customWeekdayValues=e.customWeekdayValues,this.monthChanged=e.monthChanged,this.dateChanged=e.dateChanged,this.selectedDateClicked=e.selectedDateClicked,this.customWeekdayValues&&7===this.customWeekdayValues.length?this.weekdays=this.customWeekdayValues:this.weekdays=null!==(y=this.weekdayDisplayTypeOptions[this.weekdayDisplayType])&&void 0!==y?y:this.weekdayDisplayTypeOptions.short,this.today=new Date,this.currentDate=new Date,this.pickerType=\"month\",this.eventDayMap={},this.oldSelectedNode=null,this.filteredEventsThisMonth=[],this.daysIn_PrevMonth=[],this.daysIn_CurrentMonth=[],this.daysIn_NextMonth=[],this.firstDay_PrevMonth=0,this.firstDay_CurrentMonth=0,this.firstDay_NextMonth=0,this.numOfDays_PrevMonth=0,this.numOfDays_CurrentMonth=0,this.numOfDays_NextMonth=0,this.yearPickerOffset=0,this.yearPickerOffsetTemporary=0,this.calendar=document.querySelector(this.id),!this.calendar)throw new Error(`[COLOR-CALENDAR] Element with selector '${this.id}' not found`);this.calendar.innerHTML=`\\n <div class=\"${this.CAL_NAME} ${this.theme} color-calendar--${this.calendarSize}\">\\n <div class=\"calendar__header\">\\n <div class=\"calendar__arrow calendar__arrow-prev\"><div class=\"calendar__arrow-inner\"></div></div>\\n <div class=\"calendar__monthyear\">\\n <span class=\"calendar__month\"></span> \\n <span class=\"calendar__year\"></span>\\n </div>\\n <div class=\"calendar__arrow calendar__arrow-next\"><div class=\"calendar__arrow-inner\"></div></div>\\n </div>\\n <div class=\"calendar__body\">\\n <div class=\"calendar__weekdays\"></div>\\n <div class=\"calendar__days\"></div>\\n <div class=\"calendar__picker\">\\n <div class=\"calendar__picker-month\">\\n ${(null!==(p=this.customMonthValues)&&void 0!==p?p:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"]).map((e,t)=>`<div class=\"calendar__picker-month-option\" data-value=\"${t}\">${e}</div>`).join(\"\")}\\n </div>\\n <div class=\"calendar__picker-year\">\\n <div class=\"calendar__picker-year-option\" data-value=\"0\"></div>\\n <div class=\"calendar__picker-year-option\" data-value=\"1\"></div>\\n <div class=\"calendar__picker-year-option\" data-value=\"2\"></div>\\n <div class=\"calendar__picker-year-option\" data-value=\"3\"></div>\\n <div class=\"calendar__picker-year-option\" data-value=\"4\"></div>\\n <div class=\"calendar__picker-year-option\" data-value=\"5\"></div>\\n <div class=\"calendar__picker-year-option\" data-value=\"6\"></div>\\n <div class=\"calendar__picker-year-option\" data-value=\"7\"></div>\\n <div class=\"calendar__picker-year-option\" data-value=\"8\"></div>\\n <div class=\"calendar__picker-year-option\" data-value=\"9\"></div>\\n <div class=\"calendar__picker-year-option\" data-value=\"10\"></div>\\n <div class=\"calendar__picker-year-option\" data-value=\"11\"></div>\\n <div class=\"calendar__picker-year-arrow calendar__picker-year-arrow-left\">\\n <div class=\"chevron-thin chevron-thin-left\"></div>\\n </div>\\n <div class=\"calendar__picker-year-arrow calendar__picker-year-arrow-right\">\\n <div class=\"chevron-thin chevron-thin-right\"></div>\\n </div>\\n </div>\\n </div>\\n </div>\\n </div>\\n `,this.calendarRoot=document.querySelector(`${this.id} .${this.CAL_NAME}`),this.calendarHeader=document.querySelector(this.id+\" .calendar__header\"),this.calendarWeekdays=document.querySelector(this.id+\" .calendar__weekdays\"),this.calendarDays=document.querySelector(this.id+\" .calendar__days\"),this.pickerContainer=document.querySelector(this.id+\" .calendar__picker\"),this.pickerMonthContainer=document.querySelector(this.id+\" .calendar__picker-month\"),this.pickerYearContainer=document.querySelector(this.id+\" .calendar__picker-year\"),this.yearPickerChevronLeft=document.querySelector(this.id+\" .calendar__picker-year-arrow-left\"),this.yearPickerChevronRight=document.querySelector(this.id+\" .calendar__picker-year-arrow-right\"),this.pickerMonthContainer.children[this.today.getMonth()].classList.add(\"calendar__picker-month-today\"),this.layoutModifiers.forEach(e=>{this.calendarRoot.classList.add(e)}),this.layoutModifiers.includes(\"month-left-align\")&&(this.calendarHeader.innerHTML='\\n <div class=\"calendar__monthyear\">\\n <span class=\"calendar__month\"></span> \\n <span class=\"calendar__year\"></span>\\n </div>\\n <div class=\"calendar__arrow calendar__arrow-prev\"><div class=\"calendar__arrow-inner\"></div></div>\\n <div class=\"calendar__arrow calendar__arrow-next\"><div class=\"calendar__arrow-inner\"></div></div>\\n '),this.monthyearDisplay=document.querySelector(this.id+\" .calendar__monthyear\"),this.monthDisplay=document.querySelector(this.id+\" .calendar__month\"),this.yearDisplay=document.querySelector(this.id+\" .calendar__year\"),this.prevButton=document.querySelector(this.id+\" .calendar__arrow-prev .calendar__arrow-inner\"),this.nextButton=document.querySelector(this.id+\" .calendar__arrow-next .calendar__arrow-inner\"),this.togglePicker(!1),this.configureStylePreferences(),this.addEventListeners(),this.reset(new Date)}reset(e){this.currentDate=e||new Date,this.clearCalendarDays(),this.updateMonthYear(),this.updateMonthPickerSelection(this.currentDate.getMonth()),this.generatePickerYears(),this.updateYearPickerSelection(this.currentDate.getFullYear(),4),this.updateYearPickerTodaySelection(),this.generateWeekdays(),this.generateDays(),this.selectDayInitial(!!e),this.renderDays(),this.setOldSelectedNode(),this.dateChanged&&this.dateChanged(this.currentDate,this.getDateEvents(this.currentDate)),this.monthChanged&&this.monthChanged(this.currentDate,this.getMonthEvents())}}return e.prototype.addEventListeners=function(){this.prevButton.addEventListener(\"click\",this.handlePrevMonthButtonClick.bind(this)),this.nextButton.addEventListener(\"click\",this.handleNextMonthButtonClick.bind(this)),this.monthyearDisplay.addEventListener(\"click\",this.handleMonthYearDisplayClick.bind(this)),this.calendarDays.addEventListener(\"click\",this.handleCalendarDayClick.bind(this)),this.pickerMonthContainer.addEventListener(\"click\",this.handleMonthPickerClick.bind(this)),this.pickerYearContainer.addEventListener(\"click\",this.handleYearPickerClick.bind(this)),this.yearPickerChevronLeft.addEventListener(\"click\",this.handleYearChevronLeftClick.bind(this)),this.yearPickerChevronRight.addEventListener(\"click\",this.handleYearChevronRightClick.bind(this))},e.prototype.configureStylePreferences=function(){let e=this.calendarRoot;this.primaryColor&&e.style.setProperty(\"--cal-color-primary\",this.primaryColor),this.fontFamilyHeader&&e.style.setProperty(\"--cal-font-family-header\",this.fontFamilyHeader),this.fontFamilyWeekdays&&e.style.setProperty(\"--cal-font-family-weekdays\",this.fontFamilyWeekdays),this.fontFamilyBody&&e.style.setProperty(\"--cal-font-family-body\",this.fontFamilyBody),this.dropShadow&&e.style.setProperty(\"--cal-drop-shadow\",this.dropShadow),this.border&&e.style.setProperty(\"--cal-border\",this.border),this.borderRadius&&e.style.setProperty(\"--cal-border-radius\",this.borderRadius),this.headerColor&&e.style.setProperty(\"--cal-header-color\",this.headerColor),this.headerBackgroundColor&&e.style.setProperty(\"--cal-header-background-color\",this.headerBackgroundColor),this.weekdaysColor&&e.style.setProperty(\"--cal-weekdays-color\",this.weekdaysColor)},e.prototype.togglePicker=function(e){!0===e?(this.pickerContainer.style.visibility=\"visible\",this.pickerContainer.style.opacity=\"1\",\"year\"===this.pickerType&&this.generatePickerYears(),this.removeYearPickerSelection(),this.updateYearPickerSelection(this.currentDate.getFullYear())):!1===e?(this.pickerContainer.style.visibility=\"hidden\",this.pickerContainer.style.opacity=\"0\",this.monthDisplay&&this.yearDisplay&&(this.monthDisplay.style.opacity=\"1\",this.yearDisplay.style.opacity=\"1\"),this.yearPickerOffsetTemporary=0):\"hidden\"===this.pickerContainer.style.visibility?(this.pickerContainer.style.visibility=\"visible\",this.pickerContainer.style.opacity=\"1\",\"year\"===this.pickerType&&this.generatePickerYears(),this.removeYearPickerSelection(),this.updateYearPickerSelection(this.currentDate.getFullYear())):(this.pickerContainer.style.visibility=\"hidden\",this.pickerContainer.style.opacity=\"0\",this.monthDisplay&&this.yearDisplay&&(this.monthDisplay.style.opacity=\"1\",this.yearDisplay.style.opacity=\"1\"),this.yearPickerOffsetTemporary=0)},e.prototype.handleMonthPickerClick=function(e){if(!e.target.classList.contains(\"calendar__picker-month-option\"))return;const t=parseInt(e.target.dataset.value,10);this.updateMonthPickerSelection(t),this.updateCurrentDate(0,void 0,t),this.togglePicker(!1)},e.prototype.updateMonthPickerSelection=function(e){e<0?e=11:e%=12,this.removeMonthPickerSelection(),this.pickerMonthContainer.children[e].classList.add(\"calendar__picker-month-selected\")},e.prototype.removeMonthPickerSelection=function(){for(let e=0;e<12;e++)this.pickerMonthContainer.children[e].classList.contains(\"calendar__picker-month-selected\")&&this.pickerMonthContainer.children[e].classList.remove(\"calendar__picker-month-selected\")},e.prototype.handleYearPickerClick=function(e){if(!e.target.classList.contains(\"calendar__picker-year-option\"))return;this.yearPickerOffset+=this.yearPickerOffsetTemporary;const t=parseInt(e.target.innerText),a=parseInt(e.target.dataset.value);this.updateYearPickerSelection(t,a),this.updateCurrentDate(0,void 0,void 0,t),this.togglePicker(!1)},e.prototype.updateYearPickerSelection=function(e,t){if(void 0===t){for(let a=0;a<12;a++){let i=this.pickerYearContainer.children[a];if(parseInt(i.innerHTML)===e&&i.dataset.value){t=parseInt(i.dataset.value);break}}if(void 0===t)return}this.removeYearPickerSelection(),this.pickerYearContainer.children[t].classList.add(\"calendar__picker-year-selected\")},e.prototype.updateYearPickerTodaySelection=function(){parseInt(this.pickerYearContainer.children[4].innerHTML)===this.today.getFullYear()?this.pickerYearContainer.children[4].classList.add(\"calendar__picker-year-today\"):this.pickerYearContainer.children[4].classList.remove(\"calendar__picker-year-today\")},e.prototype.removeYearPickerSelection=function(){for(let e=0;e<12;e++)this.pickerYearContainer.children[e].classList.contains(\"calendar__picker-year-selected\")&&this.pickerYearContainer.children[e].classList.remove(\"calendar__picker-year-selected\")},e.prototype.generatePickerYears=function(){const e=this.today.getFullYear()+this.yearPickerOffset+this.yearPickerOffsetTemporary;let t=0;for(let a=e-4;a<=e+7;a++){this.pickerYearContainer.children[t].innerText=a.toString(),t++}this.updateYearPickerTodaySelection()},e.prototype.handleYearChevronLeftClick=function(){this.yearPickerOffsetTemporary-=12,this.generatePickerYears(),this.removeYearPickerSelection(),this.updateYearPickerSelection(this.currentDate.getFullYear()),this.updateYearPickerTodaySelection()},e.prototype.handleYearChevronRightClick=function(){this.yearPickerOffsetTemporary+=12,this.generatePickerYears(),this.removeYearPickerSelection(),this.updateYearPickerSelection(this.currentDate.getFullYear()),this.updateYearPickerTodaySelection()},e.prototype.setMonthDisplayType=function(e){this.monthDisplayType=e,this.updateMonthYear()},e.prototype.handleMonthYearDisplayClick=function(e){if(!e.target.classList.contains(\"calendar__month\")&&!e.target.classList.contains(\"calendar__year\"))return;if(this.disableMonthYearPickers)return;const t=this.pickerType,a=e.target.classList;a.contains(\"calendar__month\")?(this.pickerType=\"month\",this.monthDisplay.style.opacity=\"1\",this.yearDisplay.style.opacity=\"0.7\",this.pickerMonthContainer.style.display=\"grid\",this.pickerYearContainer.style.display=\"none\"):a.contains(\"calendar__year\")&&(this.pickerType=\"year\",this.monthDisplay.style.opacity=\"0.7\",this.yearDisplay.style.opacity=\"1\",this.pickerMonthContainer.style.display=\"none\",this.pickerYearContainer.style.display=\"grid\"),t===this.pickerType?this.togglePicker():this.togglePicker(!0)},e.prototype.handlePrevMonthButtonClick=function(){if(this.disableMonthArrowClick)return;const e=this.currentDate.getMonth()-1;this.currentDate.getFullYear()<=this.today.getFullYear()+this.yearPickerOffset-4&&e<0&&(this.yearPickerOffset-=12,this.generatePickerYears()),e<0&&this.updateYearPickerSelection(this.currentDate.getFullYear()-1),this.updateMonthPickerSelection(e),this.updateCurrentDate(-1),this.togglePicker(!1)},e.prototype.handleNextMonthButtonClick=function(){if(this.disableMonthArrowClick)return;const e=this.currentDate.getMonth()+1;this.currentDate.getFullYear()>=this.today.getFullYear()+this.yearPickerOffset+7&&e>11&&(this.yearPickerOffset+=12,this.generatePickerYears()),e>11&&this.updateYearPickerSelection(this.currentDate.getFullYear()+1),this.updateMonthPickerSelection(e),this.updateCurrentDate(1),this.togglePicker(!1)},e.prototype.updateMonthYear=function(){this.oldSelectedNode=null,this.customMonthValues?this.monthDisplay.innerHTML=this.customMonthValues[this.currentDate.getMonth()]:this.monthDisplay.innerHTML=new Intl.DateTimeFormat(\"default\",{month:this.monthDisplayType}).format(this.currentDate),this.yearDisplay.innerHTML=this.currentDate.getFullYear().toString()},e.prototype.setWeekdayDisplayType=function(e){var t;this.weekdayDisplayType=e,this.weekdays=null!==(t=this.weekdayDisplayTypeOptions[this.weekdayDisplayType])&&void 0!==t?t:this.weekdayDisplayTypeOptions.short,this.generateWeekdays()},e.prototype.generateWeekdays=function(){let e=\"\";for(let t=0;t<7;t++)e+=`\\n <div class=\"calendar__weekday\">${this.weekdays[(t+this.startWeekday)%7]}</div>\\n `;this.calendarWeekdays.innerHTML=e},e.prototype.setDate=function(e){e&&(e instanceof Date?this.reset(e):this.reset(new Date(e)))},e.prototype.getSelectedDate=function(){return this.currentDate},e.prototype.clearCalendarDays=function(){this.daysIn_PrevMonth=[],this.daysIn_CurrentMonth=[],this.daysIn_NextMonth=[]},e.prototype.updateCalendar=function(e){e&&(this.updateMonthYear(),this.clearCalendarDays(),this.generateDays(),this.selectDayInitial()),this.renderDays(),e&&this.setOldSelectedNode()},e.prototype.setOldSelectedNode=function(){if(!this.oldSelectedNode){let e=void 0;for(let t=1;t<this.calendarDays.childNodes.length;t+=2){let a=this.calendarDays.childNodes[t];if(a.classList&&a.classList.contains(\"calendar__day-active\")&&a.innerText===this.currentDate.getDate().toString()){e=a;break}}e&&(this.oldSelectedNode=[e,parseInt(e.innerText)])}},e.prototype.selectDayInitial=function(e){if(e)this.daysIn_CurrentMonth[this.currentDate.getDate()-1].selected=!0;else{let e=this.today.getMonth()===this.currentDate.getMonth(),t=this.today.getDate()===this.currentDate.getDate();e&&t?this.daysIn_CurrentMonth[this.today.getDate()-1].selected=!0:this.daysIn_CurrentMonth[0].selected=!0}},e.prototype.handleCalendarDayClick=function(e){if(!(e.target.classList.contains(\"calendar__day-box\")||e.target.classList.contains(\"calendar__day-text\")||e.target.classList.contains(\"calendar__day-box-today\")||e.target.classList.contains(\"calendar__day-bullet\")))return;if(this.disableDayClick)return;if(this.oldSelectedNode&&!this.oldSelectedNode[0])return;if(e.target.parentElement.classList.contains(\"calendar__day-selected\"))return void(this.selectedDateClicked&&this.selectedDateClicked(this.currentDate,this.getDateEvents(this.currentDate)));let t,a;t=e.target.parentElement.innerText,a=parseInt(t,10),this.removeOldDaySelection(),t&&(this.updateCurrentDate(0,a),Object.assign(this.daysIn_CurrentMonth[a-1],{selected:!0}),this.rerenderSelectedDay(e.target.parentElement,a,!0))},e.prototype.removeOldDaySelection=function(){this.oldSelectedNode&&(Object.assign(this.daysIn_CurrentMonth[this.oldSelectedNode[1]-1],{selected:!1}),this.rerenderSelectedDay(this.oldSelectedNode[0],this.oldSelectedNode[1]))},e.prototype.updateCurrentDate=function(e,t,a,i){this.currentDate=new Date(i||this.currentDate.getFullYear(),null!=a?a:this.currentDate.getMonth()+e,0===e&&t?t:1),(0!==e||null!=a||i)&&(this.updateCalendar(!0),this.monthChanged&&this.monthChanged(this.currentDate,this.getMonthEvents())),this.dateChanged&&this.dateChanged(this.currentDate,this.getDateEvents(this.currentDate))},e.prototype.generateDays=function(){this.numOfDays_PrevMonth=new Date(this.currentDate.getFullYear(),this.currentDate.getMonth(),0).getDate(),this.firstDay_CurrentMonth=new Date(this.currentDate.getFullYear(),this.currentDate.getMonth(),1).getDay(),this.numOfDays_CurrentMonth=new Date(this.currentDate.getFullYear(),this.currentDate.getMonth()+1,0).getDate();for(let e=0;e<this.numOfDays_CurrentMonth;e++)this.daysIn_CurrentMonth.push({day:e+1,selected:!1})},e.prototype.renderDays=function(){let e=0;const t=this.currentDate.getFullYear(),a=this.currentDate.getMonth();let i;this.filteredEventsThisMonth=this.eventsData.filter(e=>{const i=new Date(e.start);return i.getFullYear()===t&&i.getMonth()===a}),this.eventDayMap={},this.filteredEventsThisMonth.forEach(e=>{const t=new Date(e.start).getDate(),a=new Date(e.end).getDate();for(let e=t;e<=a;e++)this.eventDayMap[e]=!0}),i=this.firstDay_CurrentMonth<this.startWeekday?7+this.firstDay_CurrentMonth-this.startWeekday:this.firstDay_CurrentMonth-this.startWeekday;let r=\"\";for(let t=0;t<i;t++)r+=`\\n <div class=\"calendar__day calendar__day-other\">${this.numOfDays_PrevMonth+1-i+t}</div>\\n `,e++;let n=this.today.getFullYear()===this.currentDate.getFullYear(),s=this.today.getMonth()===this.currentDate.getMonth()&&n;this.daysIn_CurrentMonth.forEach(t=>{let a=s&&t.day===this.today.getDate();r+=`\\n <div class=\"calendar__day calendar__day-active${a?\" calendar__day-today\":\"\"}${this.eventDayMap[t.day]?\" calendar__day-event\":\" calendar__day-no-event\"}${t.selected?\" calendar__day-selected\":\"\"}\">\\n <span class=\"calendar__day-text\">${t.day}</span>\\n <div class=\"calendar__day-bullet\"></div>\\n <div class=\"calendar__day-box\"></div>\\n </div>\\n `,e++});for(let t=0;t<this.DAYS_TO_DISPLAY-e;t++)r+=`\\n <div class=\"calendar__day calendar__day-other\">${t+1}</div>\\n `;this.calendarDays.innerHTML=r},e.prototype.rerenderSelectedDay=function(e,t,a){let i=e.previousElementSibling,r=this.today.getFullYear()===this.currentDate.getFullYear(),n=this.today.getMonth()===this.currentDate.getMonth()&&r&&t===this.today.getDate(),s=document.createElement(\"div\");s.className+=`calendar__day calendar__day-active${n?\" calendar__day-today\":\"\"}${this.eventDayMap[t]?\" calendar__day-event\":\" calendar__day-no-event\"}${this.daysIn_CurrentMonth[t-1].selected?\" calendar__day-selected\":\"\"}`,s.innerHTML=`\\n <span class=\"calendar__day-text\">${t}</span>\\n <div class=\"calendar__day-bullet\"></div>\\n <div class=\"calendar__day-box\"></div>\\n `,i?i.parentElement?i.parentElement.insertBefore(s,i.nextSibling):console.log(\"Previous element does not have parent\"):this.calendarDays.insertBefore(s,e),a&&(this.oldSelectedNode=[s,t]),e.remove()},e.prototype.getEventsData=function(){return JSON.parse(JSON.stringify(this.eventsData))},e.prototype.setEventsData=function(e){return this.eventsData=JSON.parse(JSON.stringify(e)),this.setDate(this.currentDate),this.eventsData.length},e.prototype.addEventsData=function(e=[]){const t=this.eventsData.push(...e);return this.setDate(this.currentDate),t},e.prototype.getDateEvents=function(e){return this.filteredEventsThisMonth.filter(t=>{const a=new Date(t.start).getDate(),i=new Date(t.end).getDate();return e.getDate()>=a&&e.getDate()<=i})},e.prototype.getMonthEvents=function(){return this.filteredEventsThisMonth},e}));\n"],"sourceRoot":""}