{"version":3,"sources":["main.js","Website/DesktopModules/CM.Calendar/main.mjs","Website/DesktopModules/CM.Calendar/scripts/Custom_fullCalendar/miniListViewConfig.mjs"],"names":["this","CM","Calendar","exports","init","options","calendarElement","CalendarId","Events","CalendarApiKey","CalendarSources","_eventBubble","_limitVisibleEvents","_noEventMessage","_popupBackgroundColor","_popupLinkColor","_timeZone","_timeZoneCustom","_dateformat","_dateformatWeekday","_dateformatDay","_dateformatDivider","_dateformatMonth","_dateformatYear","_saperator","_timeformat","_timeformatHours","_timeformatDivider","_timeformatMinutes","_timeformatMeridieum","_weekstartOn","_weekstartOnCustom","_calendarView","_calendarstartdefault","_upcomingEventLimit","_earliestEvent","_earliestEventRange","_latestEvent","_latestEventRange","toolbarElement","document","createElement","head","appendChild","toolbarSheet","sheet","insertRule","getTimeFormatMeridiem","toUpperCase","getTimeFormatMinute","getTimeFormatHour","hourFormat","getTimeFormatHour12","hour12Format","formatDateOptions","_dateformatMonthType","month","year","day","hour","hour12","minute","meridiem","timeZone","toString","concat","injectSeparator","str","lastCommaIndex","lastIndexOf","substring","createEventSources","eventSources","forEach","source","CalendarTypeId","push","googleCalendarId","Source","googleCalendarApiKey","GoogleCalendarApiKey","color","Color","className","Id","url","format","calendarEventSources","tooltipContainer","body","insertAdjacentHTML","tooltipInner","getElementById","calendarDropdown","classList","add","checkBoxes","eventClickedTooltip","title","startDate","endDate","description","pageY","pageX","tooltip","formatedStartDate","FullCalendar","formatDate","eventClickedStartDate","formatedEndDate","eventClickedEndDate","undefined","eventClickedDescription","eventClickedURL","innerHTML","style","display","top","left","id","miniListViewConfig","type","duration","weeks","content","props","sorted","sliceEvents","sort","a","b","range","start","filter","item","Date","parse","slice","html","map","seg","weekday","def","end","extendedProps","join","initMiniListView","calendar","height","initialView","getInitialView","initialDate","firstDay","parseInt","headerToolbar","center","right","dayMaxEventRows","views","dayGridDay","displayEventTime","dayGridWeek","dayGridMonth","listMonth","validRange","setDate","getDate","setEarliestEvent","setLatestEvent","miniListWeek","eventClick","info","jsEvent","preventDefault","event","eventContent","eventTitleDiv","eventTimeDiv","timeText","view","anchorTag","setAttribute","_def","domNodes","loading","bool","headerElement","getElementsByClassName","length","after","windowResize","todayBtn","toggles","window","innerWidth","changeView","handleSourceChange","e","target","checked","addEventSource","getEventSources","refetch","addCalendarSource","internalEventSource","meta","remove","removeCalendarSource","sourceItem","sourceLabel","htmlFor","innerText","DisplayName","sourceInput","value","backgroundColor","prepend","sourceCustomCheckbox","borderColor","addEventListener","toggleCheckboxColor","sourcesElement","sourcesSheet","ind","styles","createSourcesStylesheet","render","includes","parentElement","children"],"mappings":"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","file":"main.min.js","sourcesContent":[null,"/* eslint-disable no-magic-numbers */\r\n/* eslint-disable no-unused-vars */\r\n/* global $, FullCalendar, FullCalendarICalendar*/\r\nimport { initMiniListView } from '../CM.Calendar/scripts/Custom_fullCalendar/miniListViewConfig.mjs';\r\n\r\nexport function init(options) {\r\n\tconst {\r\n\t\tcalendarElement,\r\n\t\tCalendarId,\r\n\t\tEvents,\r\n\t\tCalendarApiKey,\r\n\t\tCalendarSources,\r\n\t\t_eventBubble,\r\n\t\t_limitVisibleEvents,\r\n\t\t_noEventMessage,\r\n\t\t_popupBackgroundColor,\r\n\t\t_popupLinkColor,\r\n\t\t_timeZone,\r\n\t\t_timeZoneCustom,\r\n\t\t_dateformat,\r\n\t\t_dateformatWeekday,\r\n\t\t_dateformatDay,\r\n\t\t_dateformatDivider,\r\n\t\t_dateformatMonth,\r\n\t\t_dateformatYear,\r\n\t\t_saperator,\r\n\t\t_timeformat,\r\n\t\t_timeformatHours,\r\n\t\t_timeformatDivider,\r\n\t\t_timeformatMinutes,\r\n\t\t_timeformatMeridieum,\r\n\t\t_weekstartOn,\r\n\t\t_weekstartOnCustom,\r\n\t\t_calendarView,\r\n\t\t_calendarstartdefault,\r\n\t\t_upcomingEventLimit,\r\n\t\t_earliestEvent,\r\n\t\t_earliestEventRange,\r\n\t\t_latestEvent,\r\n\t\t_latestEventRange,\r\n\t} = options;\r\n\r\n\tif (_calendarView === '3') {\r\n\t\t// remove margin on header toolbar when the view is upcoming list\r\n\t\t// create a style sheet to insert rules\r\n\t\tconst toolbarElement = document.createElement('style');\r\n\r\n\t\t// Append style element to head\r\n\t\tdocument.head.appendChild(toolbarElement);\r\n\r\n\t\tconst toolbarSheet = toolbarElement.sheet;\r\n\r\n\t\ttoolbarSheet.insertRule(\r\n\t\t\t'.fc .fc-toolbar.fc-header-toolbar{ margin-bottom: 0;}',\r\n\t\t\t0\r\n\t\t);\r\n\t\t// remove margin-left on upcomingEventsList\r\n\t\ttoolbarSheet.insertRule('#upcomingEventsList{margin-left: 0;}', 1);\r\n\t}\r\n\r\n\t// get users selected time format\r\n\tfunction getTimeFormatMeridiem() {\r\n\t\t// set meridiem Ex: PM vs pm\r\n\t\tif (_timeformat === '2') {\r\n\t\t\tif (_timeformatMeridieum === 'a') {\r\n\t\t\t\treturn 'short';\r\n\t\t\t}\r\n\t\t\treturn 'short'.toUpperCase();\r\n\t\t}\r\n\t\treturn 'short'.toUpperCase();\r\n\t}\r\n\tfunction getTimeFormatMinute() {\r\n\t\t// set minutes to use a numeric or 2-digit representation.\r\n\t\tif (_timeformat === '2') {\r\n\t\t\tif (_timeformatMinutes === 'm') {\r\n\t\t\t\treturn 'numeric';\r\n\t\t\t}\r\n\t\t\treturn '2-digit';\r\n\t\t}\r\n\t\treturn 'numeric';\r\n\t}\r\n\tfunction getTimeFormatHour() {\r\n\t\t// set hours to use a numeric or 2-digit representation. Ex: 1:30 vs 01:30\r\n\t\tlet hourFormat;\r\n\t\tif (_timeformat === '2') {\r\n\t\t\tif (_timeformatHours === 'h' || _timeformatHours === 'hh') {\r\n\t\t\t\thourFormat = 'numeric';\r\n\t\t\t} else if (_timeformatHours === 'H' || _timeformatHours === 'HH') {\r\n\t\t\t\thourFormat = '2-digit';\r\n\t\t\t}\r\n\t\t\treturn hourFormat;\r\n\t\t}\r\n\t\treturn 'numeric';\r\n\t}\r\n\tfunction getTimeFormatHour12() {\r\n\t\t// sets the calendar to use a 12 or 24-hour format\r\n\t\tlet hour12Format;\r\n\t\tif (_timeformat === '2') {\r\n\t\t\tif (_timeformatHours === 'h' || _timeformatHours === 'hh') {\r\n\t\t\t\thour12Format = true;\r\n\t\t\t} else if (_timeformatHours === 'H' || _timeformatHours === 'HH') {\r\n\t\t\t\thour12Format = false;\r\n\t\t\t}\r\n\t\t\treturn hour12Format;\r\n\t\t}\r\n\t\treturn true;\r\n\t}\r\n\t// get users selected view\r\n\tfunction getInitialView() {\r\n\t\t// checks the calendar view selected by the user and returns the corresponding view\r\n\t\tlet initialView;\r\n\t\tswitch (_calendarView) {\r\n\t\t\tcase '1':\r\n\t\t\t\tinitialView = 'dayGridMonth';\r\n\t\t\t\tbreak;\r\n\t\t\tcase '2':\r\n\t\t\t\tinitialView = 'listMonth';\r\n\t\t\t\tbreak;\r\n\t\t\tcase '3':\r\n\t\t\t\tinitialView = 'miniListWeek'; // miniListWeek custom view\r\n\t\t\t\t// let calendar = document.getElementById(`${calendarElement.id}`);\r\n\t\t\t\t// calendar.classList.add('fc-shrink');\r\n\t\t\t\tbreak;\r\n\t\t\tcase '4':\r\n\t\t\t\tinitialView = 'dayGridMonth'; // Full Width with toggles\r\n\t\t\t\tbreak;\r\n\t\t\tdefault:\r\n\t\t\t\tinitialView = 'dayGridMonth';\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t\treturn initialView;\r\n\t}\r\n\tfunction getHeader() {\r\n\t\t// checks the calendar view selected by the user and returns a header object\r\n\t\tif (_calendarView === '4') {\r\n\t\t\t// Full Width With Toggles\r\n\t\t\treturn {\r\n\t\t\t\tleft: 'prev,next today',\r\n\t\t\t\tcenter: 'title',\r\n\t\t\t\tright: 'dayGridMonth,dayGridWeek,dayGridDay,listMonth',\r\n\t\t\t};\r\n\t\t} else if (_calendarView === '3') {\r\n\t\t\t// Upcoming Events View\r\n\t\t\treturn { left: '', center: '', right: '' };\r\n\t\t}\r\n\t\treturn { left: 'prev today', center: 'title', right: 'next' };\r\n\t}\r\n\tfunction formatDateOptions() {\r\n\t\t// returns a config object for the FullCalendar.formatDate method\r\n\t\tlet _dateformatMonthType;\r\n\t\tswitch (\r\n\t\t\t_dateformatMonth // checks selected month type and assigns it to _dateformatMonthType\r\n\t\t) {\r\n\t\t\tcase 'MMM':\r\n\t\t\t\t_dateformatMonthType = 'short';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'MM':\r\n\t\t\t\t_dateformatMonthType = '2-digit';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'M':\r\n\t\t\t\t_dateformatMonthType = 'numeric';\r\n\t\t\t\tbreak;\r\n\t\t\tdefault:\r\n\t\t\t\t_dateformatMonthType = 'long';\r\n\t\t}\r\n\r\n\t\tif (_dateformat === '1') {\r\n\t\t\t// defaults for date format\r\n\t\t\treturn {\r\n\t\t\t\tmonth: 'long',\r\n\t\t\t\tyear: 'numeric',\r\n\t\t\t\tday: 'numeric',\r\n\t\t\t\thour: getTimeFormatHour(),\r\n\t\t\t\thour12: getTimeFormatHour12(),\r\n\t\t\t\tminute: getTimeFormatMinute(),\r\n\t\t\t\tmeridiem: getTimeFormatMeridiem(),\r\n\t\t\t\ttimeZone:\r\n\t\t\t\t\t_timeZone.toString() === '2' ? `${_timeZoneCustom}` : '',\r\n\t\t\t};\r\n\t\t}\r\n\t\treturn {\r\n\t\t\t// custom options for date format\r\n\t\t\tmonth: _dateformatMonthType,\r\n\t\t\tyear: _dateformatYear === 'YYYY' ? 'numeric' : '2-digit',\r\n\t\t\tday: _dateformatDay === 'DD' ? '2-digit' : 'numeric',\r\n\t\t\thour: getTimeFormatHour(),\r\n\t\t\thour12: getTimeFormatHour12(),\r\n\t\t\tminute: getTimeFormatMinute(),\r\n\t\t\tmeridiem: getTimeFormatMeridiem(),\r\n\t\t\ttimeZone: _timeZone.toString() === '2' ? `${_timeZoneCustom}` : '',\r\n\t\t};\r\n\t}\r\n\tfunction injectSeparator(str) {\r\n\t\t// replaces the comma separating the date and time with the user selected separator\r\n\t\tconst lastCommaIndex = str.lastIndexOf(',');\r\n\t\treturn `${str.substring(\r\n\t\t\t0,\r\n\t\t\tlastCommaIndex\r\n\t\t)} ${_saperator} ${str.substring(lastCommaIndex + 1)}`;\r\n\t}\r\n\tfunction setEarliestEvent() {\r\n\t\tlet startDate = new Date(_calendarstartdefault);\r\n\t\tswitch (parseInt(_earliestEvent, 10)) {\r\n\t\t\tcase 0: // provides an empty string to the validRange start value - shows all events prior to start date\r\n\t\t\t\tstartDate = '';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 1: // sets the earliest event displayed to todays date\r\n\t\t\t\tstartDate = _calendarstartdefault;\r\n\t\t\t\tbreak;\r\n\t\t\tcase 2: // sets the earliest event displayed to '_earliestEventRange' days before todays date.\r\n\t\t\t\tstartDate = startDate.setDate(\r\n\t\t\t\t\tstartDate.getDate() + 1 - _earliestEventRange\r\n\t\t\t\t);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 3: // sets the earliest event displayed to '_earliestEventRange' weeks before todays date.\r\n\t\t\t\tstartDate = startDate.setDate(\r\n\t\t\t\t\tstartDate.getDate() + 1 - _earliestEventRange * 7\r\n\t\t\t\t);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 4: // sets the earliest event displayed to '_earliestEventRange' months before todays date.\r\n\t\t\t\tstartDate = startDate.setDate(\r\n\t\t\t\t\tstartDate.getDate() + 1 - _earliestEventRange * 30\r\n\t\t\t\t);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 5: // sets the earliest event displayed to '_earliestEventRange' years before todays date.\r\n\t\t\t\tstartDate = startDate.setDate(\r\n\t\t\t\t\tstartDate.getDate() + 1 - _earliestEventRange * 365\r\n\t\t\t\t);\r\n\t\t\t\tbreak;\r\n\t\t\tdefault:\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t\treturn startDate;\r\n\t}\r\n\tfunction setLatestEvent() {\r\n\t\tlet endDate = new Date(_calendarstartdefault);\r\n\t\tswitch (parseInt(_latestEvent, 10)) {\r\n\t\t\tcase 0: // provides an empty string to the validRange end value - shows all events after the start date\r\n\t\t\t\tendDate = '';\r\n\t\t\t\tbreak;\r\n\t\t\tcase 1: // sets the latest event displayed to todays date - will display the entire day\r\n\t\t\t\tendDate = endDate.setDate(endDate.getDate() + 1);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 2: // sets the earliest event displayed to '_latestEventRange' days before todays date.\r\n\t\t\t\tendDate = endDate.setDate(\r\n\t\t\t\t\tendDate.getDate() + 1 + _latestEventRange\r\n\t\t\t\t);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 3: // sets the earliest event displayed to '_latestEventRange' weeks before todays date.\r\n\t\t\t\tendDate = endDate.setDate(\r\n\t\t\t\t\tendDate.getDate() + 1 + _latestEventRange * 7\r\n\t\t\t\t);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 4: // sets the earliest event displayed to '_latestEventRange' months before todays date.\r\n\t\t\t\tendDate = endDate.setDate(\r\n\t\t\t\t\tendDate.getDate() + 1 + _latestEventRange * 30\r\n\t\t\t\t);\r\n\t\t\t\tbreak;\r\n\t\t\tcase 5: // sets the earliest event displayed to '_latestEventRange' years before todays date.\r\n\t\t\t\tendDate = endDate.setDate(\r\n\t\t\t\t\tendDate.getDate() + 1 + _latestEventRange * 365\r\n\t\t\t\t);\r\n\t\t\t\tbreak;\r\n\t\t\tdefault:\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t\treturn endDate;\r\n\t}\r\n\tfunction createEventSources() {\r\n\t\tconst eventSources = [];\r\n\t\tCalendarSources.forEach((source) => {\r\n\t\t\tif (source.CalendarTypeId.toString() === '1') {\r\n\t\t\t\teventSources.push({\r\n\t\t\t\t\tgoogleCalendarId: `${source.Source}`,\r\n\t\t\t\t\tgoogleCalendarApiKey: `${source.GoogleCalendarApiKey}`,\r\n\t\t\t\t\tcolor: `${source.Color}`,\r\n\t\t\t\t\tclassName: `source-${source.Id}`,\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\teventSources.push({\r\n\t\t\t\t\turl: source.Source,\r\n\t\t\t\t\tformat: 'ics',\r\n\t\t\t\t\tcolor: `${source.Color}`,\r\n\t\t\t\t\tclassName: `source-${source.Id}`,\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t\treturn eventSources;\r\n\t}\r\n\tfunction createSourcesStylesheet() {\r\n\t\t// creates a style sheet and inserts rules for each source added.\r\n\t\tconst sourcesElement = document.createElement('style');\r\n\r\n\t\t// Append style element to head\r\n\t\tdocument.head.appendChild(sourcesElement);\r\n\r\n\t\tconst sourcesSheet = sourcesElement.sheet;\r\n\r\n\t\tCalendarSources.forEach((source, ind) => {\r\n\t\t\tconst styles = `.source-${source.Id} {color: ${source.Color} !important;}`;\r\n\t\t\tsourcesSheet.insertRule(styles, ind);\r\n\t\t});\r\n\t}\r\n\r\n\tconst calendarEventSources = createEventSources();\r\n\r\n\t// Tooltip for showing calendar event descriptions\r\n\tconst tooltipContainer = `
`;\r\n\tdocument.body.insertAdjacentHTML('beforeend', tooltipContainer);\r\n\tconst tooltipInner = document.getElementById('dvToolTipContainer'); // used to set the innerHtml\r\n\r\n\tlet expanded = false;\r\n\tfunction showCheckboxes() {\r\n\t\tconst checkboxes = document.getElementById('checkboxes');\r\n\t\tif (!expanded) {\r\n\t\t\tcheckboxes.style.display = 'block';\r\n\t\t\texpanded = true;\r\n\t\t} else {\r\n\t\t\tcheckboxes.style.display = 'none';\r\n\t\t\texpanded = false;\r\n\t\t}\r\n\t}\r\n\r\n\tconst calendarDropdown = document.createElement('div');\r\n\tcalendarDropdown.classList.add('multiselect');\r\n\r\n\t// check boxes\r\n\tconst checkBoxes = document.createElement('div');\r\n\tcheckBoxes.id = 'checkboxes';\r\n\r\n\tcalendarDropdown.appendChild(checkBoxes);\r\n\r\n\t// functions for eventClick && Upcoming Events\r\n\tfunction eventClickedURL(url) {\r\n\t\t// if the events url is not empty provide an anchor tag redirecting them to the url\r\n\t\treturn url !== ''\r\n\t\t\t? `More Details`\r\n\t\t\t: '';\r\n\t}\r\n\tfunction eventClickedDescription(description) {\r\n\t\t// returns a string of the events description. If empty returns 'No description'\r\n\t\treturn description !== 'undefined' && description !== undefined\r\n\t\t\t? `${description}`\r\n\t\t\t: 'No description';\r\n\t}\r\n\tfunction eventClickedStartDate(startDate) {\r\n\t\t// formats and returns the clicked start date\r\n\t\tif (startDate) {\r\n\t\t\tlet formatedStartDate = FullCalendar.formatDate(\r\n\t\t\t\tstartDate,\r\n\t\t\t\tformatDateOptions()\r\n\t\t\t);\r\n\r\n\t\t\tformatedStartDate = injectSeparator(formatedStartDate);\r\n\t\t\treturn formatedStartDate;\r\n\t\t}\r\n\t\treturn '';\r\n\t}\r\n\tfunction eventClickedEndDate(endDate) {\r\n\t\t// formats and returns the clicked end date\r\n\t\tif (endDate) {\r\n\t\t\tlet formatedEndDate = FullCalendar.formatDate(\r\n\t\t\t\tendDate,\r\n\t\t\t\tformatDateOptions()\r\n\t\t\t);\r\n\r\n\t\t\tformatedEndDate = injectSeparator(formatedEndDate);\r\n\t\t\treturn formatedEndDate;\r\n\t\t}\r\n\t\treturn '';\r\n\t}\r\n\tfunction eventClickedTooltip(\r\n\t\ttitle,\r\n\t\tstartDate,\r\n\t\tendDate,\r\n\t\tdescription,\r\n\t\turl,\r\n\t\tpageY,\r\n\t\tpageX\r\n\t) {\r\n\t\t// creates the tooltip that will be displayed when a user clicks an event.\r\n\t\tconst tooltip = `${eventClickedDescription(\r\n\t\t\tdescription\r\n\t\t)}