{"version":3,"sources":["utils.js","detector.js","node.js","advance-ajax-table.js","anchor.js","bottom-bar.js","bulk-select.js","chat.js","choices.js","cookie-notice.js","copy-link.js","countup.js","datatables.js","dropdown-menu.js","dropdown-on-hover.js","dropzone.js","emoji-mart.js","flatpickr.js","form-validation.js","fullcalendar.js","glightbox.js","googleMap.js","hide-on-collapse.js","icons.js","inputmask.js","kanban.js","leaflet-active-user.js","list.js","lottie.js","navbar-combo.js","navbar-darken-on-scroll.js","navbar-top.js","navbar-vertical.js","nouislider.js","plyr.js","popover.js","progress.js","quantity.js","rater.js","scroll.js","scrollbar.js","search.js","select2.js","sortable.js","swiper.js","theme-control.js","tinymce.js","toast.js","tooltip.js","treeview.js","typed.js","unresolved-tickets-tab.js","wizard.js","calendar/events.js","calendar/index.js","calendar/management-calendar.js","calendar/management-events.js","calendar/template.js","charts/d3/d3-packed-bubble.js","charts/d3/trending-keywords.js","charts/chartjs/chart-bar.js","charts/chartjs/chart-bubble.js","charts/chartjs/chart-combo.js","charts/chartjs/chart-doughnut.js","charts/chartjs/chart-half-doughnut.js","charts/chartjs/chart-line.js","charts/chartjs/chart-pie.js","charts/chartjs/chart-polar.js","charts/chartjs/chart-radar.js","charts/chartjs/chart-scatter.js","charts/chartjs/chartjs-utils.js","charts/chartjs/product-share-doughnut.js","charts/echarts/active-users-report.js","charts/echarts/assignment-scores.js","charts/echarts/audience.js","charts/echarts/average-enrollment-rate.js","charts/echarts/bandwidth-saved.js","charts/echarts/basic-echarts.js","charts/echarts/bounce-rate.js","charts/echarts/browsed-courses.js","charts/echarts/candle-chart.js","charts/echarts/closed-vs-goal.js","charts/echarts/course-enrollments.js","charts/echarts/course-status.js","charts/echarts/crm-revenue.js","charts/echarts/customer-satisfaction.js","charts/echarts/deal-storage-funnel.js","charts/echarts/distribution-of-performance.js","charts/echarts/echarts-utils.js","charts/echarts/echarts.js","charts/echarts/gross-revenue.js","charts/echarts/lead-conversion.js","charts/echarts/line-payment.js","charts/echarts/location-by-session-crm.js","charts/echarts/market-share-ecommerce.js","charts/echarts/market-share.js","charts/echarts/marketing-expenses.js","charts/echarts/most-leads.js","charts/echarts/number-of-tickets.js","charts/echarts/real-time-users.js","charts/echarts/received-tickets.js","charts/echarts/report-for-this-week.js","charts/echarts/returning-customer-rate.js","charts/echarts/sales-by-pos-location.js","charts/echarts/satisfaction-survey.js","charts/echarts/session-by-browser.js","charts/echarts/session-by-country-map.js","charts/echarts/session-by-country.js","charts/echarts/ticket-priority.js","charts/echarts/ticket-volume.js","charts/echarts/top-customers.js","charts/echarts/top-products.js","charts/echarts/total-order.js","charts/echarts/total-sales-ecommerce.js","charts/echarts/total-sales.js","charts/echarts/traffic-channels.js","charts/echarts/unresolved-tickets.js","charts/echarts/user-by-location-lms.js","charts/echarts/users-by-time.js","charts/echarts/weekly-goals-lms.js","charts/echarts/weekly-sales.js","theme.js"],"names":["docReady","fn","document","readyState","addEventListener","setTimeout","resize","window","isIterableArray","array","Array","isArray","length","camelize","str","text","replace","match","capture","toUpperCase","concat","substr","toLowerCase","getData","el","data","JSON","parse","dataset","e","hexToRgb","hexValue","hex","indexOf","substring","result","exec","m","r","g","b","parseInt","rgbaColor","color","arguments","undefined","alpha","getColor","name","dom","documentElement","getComputedStyle","getPropertyValue","trim","getColors","primary","secondary","success","info","warning","danger","light","dark","white","black","emphasis","getSubtleColors","getGrays","100","200","300","400","500","600","700","800","900","1000","1100","hasClass","className","classList","value","includes","addClass","add","removeClass","remove","getOffset","rect","getBoundingClientRect","scrollLeft","pageXOffset","scrollTop","pageYOffset","top","left","isScrolledIntoView","windowHeight","innerHeight","clientHeight","windowWidth","innerWidth","clientWidth","vertInView","height","horInView","width","breakpoints","xs","sm","md","lg","xl","xxl","getBreakpoint","breakpoint","classes","split","filter","cls","pop","getSystemTheme","matchMedia","matches","isDark","localStorage","getItem","setCookie","expire","expires","Date","setTime","getTime","cookie","toUTCString","getCookie","keyValue","settings","tinymce","theme","chart","borderColor","newChart","config","ctx","getContext","Chart","getItemFromStore","key","defaultValue","store","_unused","setItemToStore","payload","setItem","getStoreSpace","parseFloat","escape","encodeURIComponent","stringify","toFixed","getDates","startDate","endDate","interval","from","v","i","valueOf","getPastDates","duration","days","date","setDate","getDate","getRandomNumber","min","max","Math","floor","random","utils","detectorInit","is","html","querySelector","opera","mobile","firefox","safari","ios","iphone","ipad","ie","edge","chrome","mac","windows","navigator","userAgent","DomNode","_createClass","node","_classCallCheck","this","isValidNode","toggle","contains","setAttribute","removeAttribute","event","cb","_","c","orders","id","dropdownId","orderId","mailLink","email","address","shippingType","status","badge","type","icon","amount","advanceAjaxTableInit","togglePaginationButtonDisable","button","disabled","updatedButton","options","paginationButtonNext","paginationButtonPrev","viewAll","viewLess","listInfo","listFilter","orderList","totalItem","itemsPerPage","btnDropdownClose","pageQuantity","numberOfcurrentItems","pageCount","updateListControls","toggleViewBtn","table","getElementById","page","pagination","item","values","List","on","fallback","matchingItems","items","listContainer","ceil","visibleItems","fuzzySearch","innerHTML","preventDefault","nextInitialIndex","size","show","prevItem","target","Number","innerText","anchors","AnchorJS","bottomBarInit","isElementInViewport","offsetTop","bottom","right","bottomBars","querySelectorAll","navbarButtons","forEach","bar","barOptions","_window$_$merge","merge","breakPoint","targetEl","btn","elementMap","Map","BulkSelect","element","option","_objectSpread","displayNoneClassName","set","attachNodes","clickBulkCheckbox","clickRowCheckbox","bulkSelectRows","row","checked","map","_utils$getData","body","replacedElement","actions","elms","_this","indeterminate","removeBulkCheck","rowCheck","setProp","toggleDisplay","_this2","_toConsumableArray","every","toggleClass","has","get","bulkSelectInit","bulkSelectEl","bulkSelectInstance","bulkSelects","selectedRowsBtn","init","selectedRows","getInstance","console","log","getSelectedRows","chatInit","setScrollbarPosition","$chatArea","scrollHeight","Events","Selector","ClassName","DATA_KEY","$chatSidebar","$chatContact","$chatEmojiarea","$btnSend","$currentChatArea","$this","currentTarget","style","TargetChatArea","textContent","dataIndex","choicesInit","Choices","userOptions","choices","itemSelectText","validationItem","selectFormValidation","choicesItem","singleSelect","multipleSelect","_singleSelect$querySe","getAttribute","getElementsByTagName","cookieNoticeInit","DataKeys","ClassNames","notices","showNotice","btnNoticeToggle","notice","bootstrap","Toast","autoShow","autoShowDelay","showOnce","cookieExpireTime","hasNotice","toastOptions","_ref","_element","hide","copyLink","copyLinkModal","copyButtons","select","tooltip","Tooltip","stopPropagation","update","inputID","execCommand","countupInit","countUp","_utils$getData2","endValue","_objectWithoutProperties","_excluded","CountUp","error","start","dataTablesInit","$","dataTables","customDataTable","jQuery","elem","find","each","index","extend","$wrpper","DataTable","closest","dropdownMenuInit","Event","t","scrollWidth","paddingBottom","nextElementSibling","dropdownOnHover","navbarArea","dropdownInstance","Dropdown","_menu","parentNode","dropzoneInit","Dropzone","autoDiscover","dropzones","url","addRemoveLinks","previewsContainer","previewTemplate","thumbnailWidth","thumbnailHeight","maxFilesize","autoProcessQueue","filesizeBase","thisDropzone","mockFile","addedfile","call","thumbnail","maxFiles","files","removeFile","file","message","previewElement","dropzone","emojiMartInit","emojiMartBtns","Picker","EmojiMart","inputTarget","input","picker","previewPosition","skinTonePosition","onEmojiSelect","onClickOutside","parentElement","appendChild","defaultPredefinedRanges","label","range","setHours","getFullYear","getMonth","formValidationInit","generateRangeButtons","predefinedDefaultRanges","userDefinedRanges","mergedRanges","userRange","defaultRange","_typeof","matchingDefault","mathItem","Object","keys","rangeItem","Boolean","_ref3","toISOString","join","flatpickr","onOpen","selectedDates","dateStr","instance","calendarContainer","rangeButtonsHtml","predefinedRanges","insertAdjacentHTML","redraw","onClose","forms","prototype","slice","form","checkValidity","renderCalendar","initialView","editable","direction","headerToolbar","center","buttonText","month","week","day","calendar","FullCalendar","Calendar","render","_document$querySelect","updateSize","fullCalendarInit","fullCalendar","glightboxInit","GLightbox","selector","initMap","mapStyles","themeController","$googlemaps","google","Default","featureType","elementType","stylers","lightness","weight","visibility","saturation","Gray","Midnight","Hopper","hue","Beard","AssassianCreed","SubtleGray","Tripitty","Cobalt","invert_lightness","gamma","itm","mapOptions","infowindow","marker","latLng","markerPopup","zoom","mapElement","mapStyle","pov","position","lat","lng","gestureHandling","scrollwheel","maps","StreetViewPanorama","LatLng","styles","InfoWindow","content","Marker","addListener","open","_ref4","_ref4$detail","detail","control","hideOnCollapseInit","previewMailForm","previewFooter","iconCopiedInit","iconList","iconCopiedToast","iconCopiedToastInstance","tagName","setSelectionRange","inputmaskInit","Inputmask","maskOptions","showMaskOnFocus","showMaskOnHover","jitMasking","mask","kanbanInit","Selectors","addCardButtons","formHideButtons","addListForm","collapseDismissButtons","_ref5","column","container","focus","scrollTo","_ref6","_ref7","nextElement","_ref8","_ref9","collapseElement","collapse","Collapse","leafletActiveUserInit","tiles","mcg","L","mapContainer","tileLayer","colorFilter","attribution","transparent","layers","minZoom","zoomSnap","dragging","Browser","tap","markerClusterGroup","chunkedLoading","spiderfyOnMaxZoom","long","street","location","point","iconUrl","popupContent","popup","minWidth","setContent","bindPopup","addLayer","_ref10","_ref10$detail","updateFilter","listInit","lists","list","bulkSelect","listFilters","activeFilters","attachRowNodes","elm","lottieInit","lotties","bodymovin","loadAnimation","path","renderer","loop","autoplay","navbarComboInit","moveNavContent","moveableContainer","navbarNav","navbarVerticalBreakpoint","navbarVertical","navbarTopBreakpoint","navbarTopCombo","navbarTopContent","navbarCollapse","targetID","targetElement","navbarDarkenOnScroll","navbar","removeNavbarBgClass","toggleThemeClass","defaultColorName","colorRgb","backgroundImage","transition","getBgClassName","parent","allColors","colorName","bgClassName","_ref11","_ref11$detail","backgroundColor","navbarTopDropShadow","setDropShadow","$elem","navDropShadowFlag","$navbar","$navbarVertical","$navbarVerticalContent","$navbarVerticalCollapse","outerWidth","handleNavbarVerticalCollapsed","navbarVerticalToggle","navbarVerticalCollapse","blur","isNavbarVerticalCollapsed","CustomEvent","dispatchEvent","nouisliderInit","noUiSlider","sliderValue","connect","step","tooltips","create","handle","plyrInit","Plyr","plyr","captions","active","popoverInit","popoverTriggerEl","Popover","progressAnimationToggle","progress","progressID","quantityInit","Attributes","DataKey","quantity","numberInput","ratingInit","rater","reverse","starSize","rateCallback","rating","done","setRating","raterJs","scrollInit","dropdownElements","dropdownElement","instanceEl","scrollbarInit","SimpleBar","autoHide","searchInit","hideSearchSuggestion","searchArea","SEARCH_TOGGLE","dropdownMenu","DROPDOWN_MENU","Attribute","ARIA_EXPANDED","SHOW","hideAllSearchAreas","searchAreas","SEARCH_DISMISS","DROPDOWN_TOGGLE","SEARCH_BOX","SEARCH_INPUT","_ref12","dropdown","select2Init","select2","sortableInit","sortableEl","defaultOptions","animation","group","delay","delayOnTouchOnly","forceFallback","onStart","onEnd","Sortable","swiperInit","swipers","swiper","slides","thumbs","thumbsOptions","thumb","swiperNav","thumbImages","img","src","createElement","thumbsInit","Swiper","newSwiper","navigation","nextEl","prevEl","initialDomSetup","dataUrlDom","hasDataUrl","inputDataAttributeValue","localStorageValue","changeTheme","handleThemeDropdownIcon","themeControl","hasOwnProperty","CONFIG","clickControl","reload","pageUrl","selectedOptions","href","_ref13","_ref13$detail","tinymceInit","tinymces","menubar","license_key","skin","content_style","toolbar","statusbar","plugins","directionality","theme_advanced_toolbar_align","setup","editor","triggerSave","_ref14","tinymceEl","addStyle","toastInit","toastEl","liveToast","liveToastBtn","tooltipInit","tooltipTriggerEl","trigger","treeviewInit","makeStriped","treeview","tag","treeviews","striped","collapseElementList","wholeRow","prepend","collapseId","composedPath","childs","parents","unshift","collapseEl","typedTextInit","typedTexts","Typed","typedText","strings","typeSpeed","backDelay","unresolvedTicketsTabInit","dropdownToggle","layout","wizardInit","selectors","events","wizard","tabToggleButtonEl","passwordInput","confirmPasswordInput","nextButton","prevButton","wizardFooter","submitEvent","bubbles","cancelable","tabs","Tab","getOrCreateInstance","count","showEvent","setCustomValidity","tab","j","_window3","dayjs","currentDay","format","currentMonth","prevMonth","subtract","nextMonth","currentYear","title","end","description","organizer","allDay","schedules","appCalendarInit","updateTitle","eventList","reduce","acc","val","appCalendar","addEventForm","addEventModal","eventDetailsModal","dayMaxEvents","stickyHeaderDates","views","eventLimit","eventTimeFormat","hour","minute","omitZeroMinute","meridiem","eventClick","jsEvent","template","getTemplate","Modal","dateClick","_flatpickr","currentData","viewTitle","prev","next","today","link","changeView","_e$target","addEvent","reset","_ref15","managementCalendarInit","calendarData","managementCalendarEvents","managementEventList","managementCalendar","selectTitle","managementEvents","push","display","classNames","startTime","endTime","eventManagementInfo","li","currentDate","getDay","selectDay","thisDay","plus2Day","thisMonthNumber","thisMonthName","upcomingMonthNumber","upcomingMonthName","thisYear","extendedProps","getStackIcon","transform","schedule","D3PackedBubbleInit","tooltipDot","tooltipName","tooltipValue","tooltipStyles","labelStyles","circle","svg","d3","tooltipNameColor","tooltipValueColor","attr","bubbleData","root","pack","padding","hierarchy","children","sum","d","selectAll","enter","append","clientY","clientX","x","y","ease","easeExpInOut","diagram","trendingKeywordsInit","barChartInit","barChartElement","chartJsInit","labels","datasets","borderWidth","chartJsDefaultTooltip","legend","scales","ticks","grid","drawBorder","chartBubble","pie","getBubbleDataset","hoverBackgroundColor","chartCombo","combo","fill","maintainAspectRatio","chartDoughnut","doughnut","chartHalfDoughnutInit","$chartHalfDoughnut","rotation","circumference","cutout","hover","mode","enabled","mergedDatasets","chartLine","line","tension","chartPie","chartPolar","polar","chartRadar","radar","chartScatter","scatter","pointBackgroundColor","borderRadius","chartEl","_ref16","destroy","titleColor","callbacks","labelTextColor","rmin","rmax","productShareDoughnutInit","marketShareDoughnutElement","activeUsersChartReportInit","tooltipFormatter","$echartsActiveUsersChart","echarts","params","axisValue","echartSetOption","textStyle","transitionDuration","pos","getPosition","formatter","xAxis","boundaryGap","silent","axisPointer","lineStyle","splitLine","axisLine","axisTick","axisLabel","align","fontSize","yAxis","round","series","showSymbol","symbol","itemStyle","symbolSize","assignmentScoresInit","$echartAssignmentScores","radius","avoidLabelOverlap","hoverAnimation","normal","fontWeight","labelLine","audienceChartInit","percentage","perTemp","abs","prevDate","getDefaultOptions","data1","data2","dates","showMaxLabel","areaStyle","x2","y2","colorStops","offset","initChart","users","sessions","rate","triggerEl","$echartAudience","avgEnrollmentRateInit","onSaleCourseRate","regularPaidCourseRate","$echartsLineAvgEnrollmentLms","optionOne","optionTwo","_ref17","seriesName","margin","showMinLabel","splitNumber","dispatchAction","bandwidthSavedInit","$echartsBandwidthSaved","startAngle","endAngle","pointer","overlap","roundCap","clip","offsetCenter","fontFamily","valueAnimation","animationDuration","removeEventListener","basicEchartsInit","$echartBasicChart","bounceRateChartInit","$echartsBounceRateChart","selectMenu","setOption","browsedCoursesInit","newCourseBrowsedEl","paidCourseBrowsedEl","$echartsBrowsedCourses","months","isValid","_ref18","barWidth","z","barBorderRadius","barGap","candleChartInit","$echartsZoomIn","$echartsZoomOut","zoomStart","zoomEnd","dispatchZoomAction","categoryData","$echartsCandleChart","actionTarget","splice","scale","toLocaleString","dataZoom","color0","borderColor0","batch","closedVsGoalInit","$echartsLineTotalSales","itemWidth","itemHeight","inactiveColor","itemGap","nameGap","nameLocation","nameTextStyle","smooth","courseEnrollmentsInit","$echartBarCourseEnrollments","source","componentIndex","courseStatusInit","$echartsCourseStatus","revenueChartInit","revenue","deals","profit","echartsCustomerSatisfactionInit","$echartCustomerSatisfaction","inactiveBorderColor","dealStorageFunnelInit","dataAxis1","dataAxis2","$echartDealStorageFunnel","inside","inverse","showBackground","backgroundStyle","echartsDistributionOfPerformanceInit","xAxisData","emphasisStyle","$distributionOfPerformance","shadowColor","splitArea","stack","containLabel","contentSize","_ref19","tooltipItem","resizeEcharts","$echarts","echartTabs","grossRevenueChartInit","hash","bsTarget","LEGEND_MONTH_TARGET","LEGEND_PREV_MONTH","$legendCurrentMonth","$legendPrevMonth","monthsnumber","monthSelect","currentMonthData","prevMonthData","$echartsGrossRevenue","SELECT_MONTH","LEGEND_CURRENT_MONTH","selectedIndex","leadConversionInit","$leadConversion","linePaymentChartInit","$echartsLinePaymentChart","all","successful","failed","locationBySessionInit","zoomLevel","$locationBySessionMap","_params$data","visualMap","inRange","roam","scaleLimit","areaColor","_document$querySelect2","_document$querySelect3","_document$querySelect4","marketShareEcommerceInit","$echartProductShare","percent","marketShareInit","$echartMarketShare","marketingExpensesInit","marketingExpenses","detailedExpenses","$echartsMarketingExp","rich","per","selectedMode","lineHeight","mostLeadsInit","$echartMostLeads","echartsNumberOfTicketsInit","data3","data4","$numberOfTickets","numberOfTicketsLegend","realTimeUsersChartInit","axisData","userCounterDom","$echartsRealTimeUsers","barCategoryGap","setInterval","rndData","shift","echartsReceivedTicketsInit","$receivedTickets","reportForThisWeekInit","legendThisWeek","legendLastWeek","$echartBarReportForThisWeek","selectChart","option1","option2","returningCustomerRateInit","LEGEND_NEW_MONTH","LEGEND_RETURNING_MONTH","$legendNewMonth","$legendReturningMonth","monthNumbers","$echartsLineReturningCustomerRate","dataNewMonth","dataReturningMonth","salesByPosLocationInit","$echartsRadarSalesByPosLocation","getformatter","indicator","echartsSatisfactionSurveyInit","emphasisStyle1","emphasisStyle2","$satisfactionSurvey","sessionByBrowserChartInit","$sessionByBroswser","year","sessionByCountryMapInit","$sessionByCountryMap","_params$data2","toolbox","feature","restore","_document$querySelect5","sessionByCountryChartInit","$sessionByCountry","alignWithLabel","echartTicketPriority","$paginationBtnNext","$paginationBtnPrev","$paginationContainer","ticketVolumeChartInit","$ticketVolume","ticketVolumeLegend","topCustomersChartInit","hours","monday","tuesday","wednesday","thursday","friday","saturday","sunday","$echartTopCustomers","topProductsInit","$echartBarTopProducts","totalOrderInit","$echartLineTotalOrder","triggerOn","smoothMonotone","totalSalesEcommerce","totalSalesLastMonth","totalSalesPreviousYear","$echartsLineTotalSalesEcomm","TOTAL_SALES_LAST_MONTH","TOTAL_SALES_PREVIOUS_YEAR","_ref20","totalSalesInit","_params$","_params$2","trafficChannelChartInit","$trafficChannels","echartsUnresolvedTicketsInit","$unresolvedTickets","unresolvedTicketsLegend","userByLocationInit","$userByLocationMap","_params$data4","_params$data3","_document$querySelect6","_document$querySelect7","usersByTimeChartInit","$echartUsersByTimeChart","gradientColor","orient","itemSymbol","textGap","shadowBlur","weeklyGoalsInit","weeklySalesInit","$echartBarWeeklySales"],"mappings":"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wkB,OAAA,oBACAC,SAAA,QACA,EACA,CACAxE,IAAA,UACAsE,KAAA,CAAA,SACAvkB,KAAA,kBACAwkB,OAAA,sBACA,EACA,CACAvE,IAAA,OACAsE,KAAA,CAAA,OACAvkB,KAAA,oBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,OACAsE,KAAA,CAAA,OACAvkB,KAAA,oBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,OACAsE,KAAA,CAAA,OACAvkB,KAAA,oBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,OACAsE,KAAA,CAAA,OACAvkB,KAAA,oBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,OACAsE,KAAA,CAAA,OACAvkB,KAAA,oBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,OACAsE,KAAA,CAAA,OACAvkB,KAAA,oBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,OACAsE,KAAA,CAAA,OACAvkB,KAAA,oBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,OACAsE,KAAA,CAAA,OACAvkB,KAAA,oBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,OACAsE,KAAA,CAAA,OACAvkB,KAAA,oBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,OACAsE,KAAA,CAAA,OACAvkB,KAAA,oBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,QACAsE,KAAA,OACAvkB,KAAA,qBACAwkB,OAAA,qBACAC,SAAA,iBACA,EACA,CACAxE,IAAA,QACAsE,KAAA,QACAvkB,KAAA,qBACAwkB,OAAA,qBACAC,SAAA,iBACA,EACA,CACAxE,IAAA,OACAsE,KAAA,QACAvkB,KAAA,iBACAwkB,OAAA,kBACAC,SAAA,eACA,EACA,CACAxE,IAAA,OACAsE,KAAA,QACAvkB,KAAA,iBACAwkB,OAAA,kBACAC,SAAA,eACA,EACA,CACAxE,IAAA,OACAsE,KAAA,QACAvkB,KAAA,iBACAwkB,OAAA,kBACAC,SAAA,eACA,EACA,CACAxE,IAAA,OACAsE,KAAA,QACAvkB,KAAA,iBACAwkB,OAAA,kBACAC,SAAA,eACA,EACA,CACAxE,IAAA,QACAsE,KAAA,QACAvkB,KAAA,iBACAwkB,OAAA,uBACAC,SAAA,SACA,EACA,CACAxE,IAAA,QACAsE,KAAA,QACAvkB,KAAA,iBACAwkB,OAAA,uBACAC,SAAA,SACA,EACA,CACAxE,IAAA,QACAsE,KAAA,QACAvkB,KAAA,mBACAwkB,OAAA,8BACAC,SAAA,UACA,EACA,CACAxE,IAAA,QACAsE,KAAA,QACAvkB,KAAA,mBACAwkB,OAAA,8BACAC,SAAA,UACA,EACA,CACAxE,IAAA,CAAA,cACAsE,KAAA,eACAvkB,KAAA,mBACAwkB,OAAA,kBACAC,SAAA,WACA,EACA,CACAxE,IAAA,CAAA,cACAsE,KAAA,eACAvkB,KAAA,mBACAwkB,OAAA,kBACAC,SAAA,WACA,EACA,CACAxE,IAAA,CAAA,UACAsE,KAAA,CAAA,UACAvkB,KAAA,gBACAwkB,OAAA,kBACAC,SAAA,QACA,EACA,CACAxE,IAAA,CAAA,UACAsE,KAAA,CAAA,UACAvkB,KAAA,iBACAwkB,OAAA,6BACAC,SAAA,OACA,EACA,CACAxE,IAAA,CAAA,UACAsE,KAAA,CAAA,UACAvkB,KAAA,gBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,CAAA,UACAsE,KAAA,CAAA,UACAvkB,KAAA,gBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,CAAA,UACAsE,KAAA,CAAA,UACAvkB,KAAA,gBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,CAAA,UACAsE,KAAA,CAAA,UACAvkB,KAAA,gBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,UACAsE,KAAA,WACAvkB,KAAA,gBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,UACAsE,KAAA,WACAvkB,KAAA,gBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,UACAsE,KAAA,WACAvkB,KAAA,gBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,UACAsE,KAAA,QACAvkB,KAAA,gBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,UACAsE,KAAA,UACAvkB,KAAA,gBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,UACAsE,KAAA,UACAvkB,KAAA,gBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,CAAA,UACAsE,KAAA,UACAvkB,KAAA,gBACAwkB,OAAA,uBACAC,SAAA,UACA,EACA,CACAxE,IAAA,CAAA,KACAsE,KAAA,QACAvkB,KAAA,gBACAwkB,OAAA,sBACAC,SAAA,YACA,EACA,CACAxE,IAAA,CAAA,UACAsE,KAAA,UACAvkB,KAAA,gBACAwkB,OAAA,sBACAC,SAAA,YACA,EACA,CACAxE,IAAA,CAAA,UACAsE,KAAA,UACAvkB,KAAA,gBACAwkB,OAAA,sBACAC,SAAA,YACA,EACA,CACAxE,IAAA,CAAA,UACAsE,KAAA,UACAvkB,KAAA,gBACAwkB,OAAA,sBACAC,SAAA,YACA,EACA,CACAxE,IAAA,CAAA,UACAsE,KAAA,UACAvkB,KAAA,gBACAwkB,OAAA,sBACAC,SAAA,YACA,EACA,CACAxE,IAAA,CAAA,UACAsE,KAAA,UACAvkB,KAAA,gBACAwkB,OAAA,sBACAC,SAAA,YACA,EACA,CACAxE,IAAA,CAAA,UACAsE,KAAA,UACAvkB,KAAA,gBACAwkB,OAAA,sBACAC,SAAA,YACA,EACA,CACAxE,IAAA,SACAsE,KAAA,CAAA,WACAvkB,KAAA,kBACAwkB,OAAA,sBACAC,SAAA,eACA,EACA,CACAxE,IAAA,UACAsE,KAAA,CAAA,WACAvkB,KAAA,kBACAwkB,OAAA,sBACAC,SAAA,eACA,EACA,CACAxE,IAAA,UACAsE,KAAA,CAAA,WACAvkB,KAAA,kBACAwkB,OAAA,sBACAC,SAAA,eACA,EACA,CACAxE,IAAA,QACAsE,KAAA,CAAA,UACAvkB,KAA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","file":"theme.min.js","sourcesContent":["/* -------------------------------------------------------------------------- */\r\n/* Utils */\r\n/* -------------------------------------------------------------------------- */\r\nconst docReady = fn => {\r\n // see if DOM is already available\r\n if (document.readyState === 'loading') {\r\n document.addEventListener('DOMContentLoaded', fn);\r\n } else {\r\n setTimeout(fn, 1);\r\n }\r\n};\r\n\r\nconst resize = fn => window.addEventListener('resize', fn);\r\n\r\nconst isIterableArray = array => Array.isArray(array) && !!array.length;\r\n\r\nconst camelize = str => {\r\n const text = str.replace(/[-_\\s.]+(.)?/g, (match, capture) => {\r\n if (capture) {\r\n return capture.toUpperCase();\r\n }\r\n return '';\r\n });\r\n return `${text.substr(0, 1).toLowerCase()}${text.substr(1)}`;\r\n};\r\n\r\nconst getData = (el, data) => {\r\n try {\r\n return JSON.parse(el.dataset[camelize(data)]);\r\n } catch (e) {\r\n return el.dataset[camelize(data)];\r\n }\r\n};\r\n\r\n/* ----------------------------- Colors function ---------------------------- */\r\n\r\nconst hexToRgb = hexValue => {\r\n let hex;\r\n hexValue.indexOf('#') === 0 ? (hex = hexValue.substring(1)) : (hex = hexValue);\r\n // Expand shorthand form (e.g. \"03F\") to full form (e.g. \"0033FF\")\r\n const shorthandRegex = /^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i;\r\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(\r\n hex.replace(shorthandRegex, (m, r, g, b) => r + r + g + g + b + b)\r\n );\r\n return result\r\n ? [parseInt(result[1], 16), parseInt(result[2], 16), parseInt(result[3], 16)]\r\n : null;\r\n};\r\n\r\nconst rgbaColor = (color = '#fff', alpha = 0.5) => `rgba(${hexToRgb(color)}, ${alpha})`;\r\n\r\n/* --------------------------------- Colors --------------------------------- */\r\n\r\nconst getColor = (name, dom = document.documentElement) =>\r\n getComputedStyle(dom).getPropertyValue(`--falcon-${name}`).trim();\r\n\r\nconst getColors = dom => ({\r\n primary: getColor('primary', dom),\r\n secondary: getColor('secondary', dom),\r\n success: getColor('success', dom),\r\n info: getColor('info', dom),\r\n warning: getColor('warning', dom),\r\n danger: getColor('danger', dom),\r\n light: getColor('light', dom),\r\n dark: getColor('dark', dom),\r\n white: getColor('white', dom),\r\n black: getColor('black', dom),\r\n emphasis: getColor('emphasis-color', dom)\r\n});\r\n\r\nconst getSubtleColors = dom => ({\r\n primary: getColor('primary-bg-subtle', dom),\r\n secondary: getColor('secondary-bg-subtle', dom),\r\n success: getColor('success-bg-subtle', dom),\r\n info: getColor('info-bg-subtle', dom),\r\n warning: getColor('warning-bg-subtle', dom),\r\n danger: getColor('danger-bg-subtle', dom),\r\n light: getColor('light-bg-subtle', dom),\r\n dark: getColor('dark-bg-subtle', dom)\r\n});\r\n\r\nconst getGrays = dom => ({\r\n 100: getColor('gray-100', dom),\r\n 200: getColor('gray-200', dom),\r\n 300: getColor('gray-300', dom),\r\n 400: getColor('gray-400', dom),\r\n 500: getColor('gray-500', dom),\r\n 600: getColor('gray-600', dom),\r\n 700: getColor('gray-700', dom),\r\n 800: getColor('gray-800', dom),\r\n 900: getColor('gray-900', dom),\r\n 1000: getColor('gray-1000', dom),\r\n 1100: getColor('gray-1100', dom)\r\n});\r\n\r\nconst hasClass = (el, className) => {\r\n !el && false;\r\n return el.classList.value.includes(className);\r\n};\r\n\r\nconst addClass = (el, className) => {\r\n el.classList.add(className);\r\n};\r\n\r\nconst removeClass = (el, className) => {\r\n el.classList.remove(className);\r\n};\r\n\r\nconst getOffset = el => {\r\n const rect = el.getBoundingClientRect();\r\n const scrollLeft = window.pageXOffset || document.documentElement.scrollLeft;\r\n const scrollTop = window.pageYOffset || document.documentElement.scrollTop;\r\n return { top: rect.top + scrollTop, left: rect.left + scrollLeft };\r\n};\r\n\r\nfunction isScrolledIntoView(el) {\r\n const rect = el.getBoundingClientRect();\r\n const windowHeight = window.innerHeight || document.documentElement.clientHeight;\r\n const windowWidth = window.innerWidth || document.documentElement.clientWidth;\r\n\r\n const vertInView = rect.top <= windowHeight && rect.top + rect.height >= 0;\r\n const horInView = rect.left <= windowWidth && rect.left + rect.width >= 0;\r\n\r\n return vertInView && horInView;\r\n}\r\n\r\nconst breakpoints = {\r\n xs: 0,\r\n sm: 576,\r\n md: 768,\r\n lg: 992,\r\n xl: 1200,\r\n xxl: 1540\r\n};\r\n\r\nconst getBreakpoint = el => {\r\n const classes = el && el.classList.value;\r\n let breakpoint;\r\n if (classes) {\r\n breakpoint =\r\n breakpoints[\r\n classes\r\n .split(' ')\r\n .filter(cls => cls.includes('navbar-expand-'))\r\n .pop()\r\n .split('-')\r\n .pop()\r\n ];\r\n }\r\n return breakpoint;\r\n};\r\n\r\nconst getSystemTheme = () => (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light');\r\n\r\nconst isDark = () => (localStorage.getItem('theme') === 'auto' ? getSystemTheme() : localStorage.getItem('theme'));\r\n/* --------------------------------- Cookie --------------------------------- */\r\n\r\nconst setCookie = (name, value, expire) => {\r\n const expires = new Date();\r\n expires.setTime(expires.getTime() + expire);\r\n document.cookie = `${name}=${value};expires=${expires.toUTCString()}`;\r\n};\r\n\r\nconst getCookie = name => {\r\n const keyValue = document.cookie.match(`(^|;) ?${name}=([^;]*)(;|$)`);\r\n return keyValue ? keyValue[2] : keyValue;\r\n};\r\n\r\nconst settings = {\r\n tinymce: {\r\n theme: 'oxide'\r\n },\r\n chart: {\r\n borderColor: 'rgba(255, 255, 255, 0.8)'\r\n }\r\n};\r\n\r\n/* -------------------------- Chart Initialization -------------------------- */\r\n\r\nconst newChart = (chart, config) => {\r\n const ctx = chart.getContext('2d');\r\n return new window.Chart(ctx, config);\r\n};\r\n\r\n/* ---------------------------------- Store --------------------------------- */\r\n\r\nconst getItemFromStore = (key, defaultValue, store = localStorage) => {\r\n try {\r\n return JSON.parse(store.getItem(key)) || defaultValue;\r\n } catch {\r\n return store.getItem(key) || defaultValue;\r\n }\r\n};\r\n\r\nconst setItemToStore = (key, payload, store = localStorage) => store.setItem(key, payload);\r\nconst getStoreSpace = (store = localStorage) =>\r\n parseFloat((escape(encodeURIComponent(JSON.stringify(store))).length / (1024 * 1024)).toFixed(2));\r\n\r\n/* get Dates between */\r\n\r\nconst getDates = (startDate, endDate, interval = 1000 * 60 * 60 * 24) => {\r\n const duration = endDate - startDate;\r\n const steps = duration / interval;\r\n return Array.from({ length: steps + 1 }, (v, i) => new Date(startDate.valueOf() + interval * i));\r\n};\r\n\r\nconst getPastDates = duration => {\r\n let days;\r\n\r\n switch (duration) {\r\n case 'week':\r\n days = 7;\r\n break;\r\n case 'month':\r\n days = 30;\r\n break;\r\n case 'year':\r\n days = 365;\r\n break;\r\n\r\n default:\r\n days = duration;\r\n }\r\n\r\n const date = new Date();\r\n const endDate = date;\r\n const startDate = new Date(new Date().setDate(date.getDate() - (days - 1)));\r\n return getDates(startDate, endDate);\r\n};\r\n\r\n/* Get Random Number */\r\nconst getRandomNumber = (min, max) => Math.floor(Math.random() * (max - min) + min);\r\n\r\nconst utils = {\r\n docReady,\r\n breakpoints,\r\n resize,\r\n isIterableArray,\r\n camelize,\r\n getData,\r\n hasClass,\r\n addClass,\r\n hexToRgb,\r\n rgbaColor,\r\n getColor,\r\n getColors,\r\n getSubtleColors,\r\n getGrays,\r\n getOffset,\r\n isScrolledIntoView,\r\n getBreakpoint,\r\n setCookie,\r\n getCookie,\r\n newChart,\r\n settings,\r\n getItemFromStore,\r\n setItemToStore,\r\n getStoreSpace,\r\n getDates,\r\n getPastDates,\r\n getRandomNumber,\r\n removeClass,\r\n getSystemTheme,\r\n isDark\r\n};\r\n\r\nexport default utils;\r\n","import { addClass } from './utils';\r\n/* -------------------------------------------------------------------------- */\r\n/* Detector */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst detectorInit = () => {\r\n const { is } = window;\r\n const html = document.querySelector('html');\r\n\r\n is.opera() && addClass(html, 'opera');\r\n is.mobile() && addClass(html, 'mobile');\r\n is.firefox() && addClass(html, 'firefox');\r\n is.safari() && addClass(html, 'safari');\r\n is.ios() && addClass(html, 'ios');\r\n is.iphone() && addClass(html, 'iphone');\r\n is.ipad() && addClass(html, 'ipad');\r\n is.ie() && addClass(html, 'ie');\r\n is.edge() && addClass(html, 'edge');\r\n is.chrome() && addClass(html, 'chrome');\r\n is.mac() && addClass(html, 'osx');\r\n is.windows() && addClass(html, 'windows');\r\n navigator.userAgent.match('CriOS') && addClass(html, 'chrome');\r\n};\r\n\r\nexport default detectorInit;\r\n","/*-----------------------------------------------\r\n| DomNode\r\n-----------------------------------------------*/\r\nclass DomNode {\r\n constructor(node) {\r\n this.node = node;\r\n }\r\n\r\n addClass(className) {\r\n this.isValidNode() && this.node.classList.add(className);\r\n }\r\n\r\n removeClass(className) {\r\n this.isValidNode() && this.node.classList.remove(className);\r\n }\r\n\r\n toggleClass(className) {\r\n this.isValidNode() && this.node.classList.toggle(className);\r\n }\r\n\r\n hasClass(className) {\r\n this.isValidNode() && this.node.classList.contains(className);\r\n }\r\n\r\n data(key) {\r\n if (this.isValidNode()) {\r\n try {\r\n return JSON.parse(this.node.dataset[this.camelize(key)]);\r\n } catch (e) {\r\n return this.node.dataset[this.camelize(key)];\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n attr(name) {\r\n return this.isValidNode() && this.node[name];\r\n }\r\n\r\n setAttribute(name, value) {\r\n this.isValidNode() && this.node.setAttribute(name, value);\r\n }\r\n\r\n removeAttribute(name) {\r\n this.isValidNode() && this.node.removeAttribute(name);\r\n }\r\n\r\n setProp(name, value) {\r\n this.isValidNode() && (this.node[name] = value);\r\n }\r\n\r\n on(event, cb) {\r\n this.isValidNode() && this.node.addEventListener(event, cb);\r\n }\r\n\r\n isValidNode() {\r\n return !!this.node;\r\n }\r\n\r\n // eslint-disable-next-line class-methods-use-this\r\n camelize(str) {\r\n const text = str.replace(/[-_\\s.]+(.)?/g, (_, c) => (c ? c.toUpperCase() : ''));\r\n return `${text.substr(0, 1).toLowerCase()}${text.substr(1)}`;\r\n }\r\n}\r\n\r\nexport default DomNode;\r\n","const orders = [\r\n {\r\n id: 1,\r\n dropdownId: 'order-dropdown-1',\r\n orderId: '#181',\r\n mailLink: 'mailto:ricky@example.com',\r\n name: 'Ricky Antony',\r\n email: 'ricky@example.com',\r\n date: '20/04/2019',\r\n address: 'Ricky Antony, 2392 Main Avenue, Penasauka, New Jersey 02149',\r\n shippingType: 'Via Flat Rate',\r\n status: 'Completed',\r\n badge: { type: 'success', icon: 'fas fa-check' },\r\n amount: '$99'\r\n },\r\n {\r\n id: 2,\r\n dropdownId: 'order-dropdown-2',\r\n orderId: '#182',\r\n mailLink: 'mailto:kin@example.com',\r\n name: 'Kin Rossow',\r\n email: 'kin@example.com',\r\n date: '20/04/2019',\r\n address: 'Kin Rossow, 1 Hollywood Blvd,Beverly Hills, California 90210',\r\n shippingType: 'Via Free Shipping',\r\n status: 'Processing',\r\n badge: { type: 'primary', icon: 'fas fa-redo' },\r\n amount: '$120'\r\n },\r\n {\r\n id: 3,\r\n dropdownId: 'order-dropdown-3',\r\n orderId: '#183',\r\n mailLink: 'mailto:merry@example.com',\r\n name: 'Merry Diana',\r\n email: 'merry@example.com',\r\n date: '30/04/2019',\r\n address: 'Merry Diana, 1 Infinite Loop, Cupertino, California 90210',\r\n shippingType: 'Via Link Road',\r\n status: 'On Hold',\r\n badge: { type: 'secondary', icon: 'fas fa-ban' },\r\n amount: '$70'\r\n },\r\n {\r\n id: 4,\r\n dropdownId: 'order-dropdown-4',\r\n orderId: '#184',\r\n mailLink: 'mailto:bucky@example.com',\r\n name: 'Bucky Robert',\r\n email: 'bucky@example.com',\r\n date: '30/04/2019',\r\n address: 'Bucky Robert, 1 Infinite Loop, Cupertino, California 90210',\r\n shippingType: 'Via Free Shipping',\r\n status: 'Pending',\r\n badge: { type: 'warning', icon: 'fas fa-stream' },\r\n amount: '$92'\r\n },\r\n {\r\n id: 5,\r\n dropdownId: 'order-dropdown-5',\r\n orderId: '#185',\r\n mailLink: 'mailto:rocky@example.com',\r\n name: 'Rocky Zampa',\r\n email: 'rocky@example.com',\r\n date: '30/04/2019',\r\n address: 'Rocky Zampa, 1 Infinite Loop, Cupertino, California 90210',\r\n shippingType: 'Via Free Road',\r\n status: 'On Hold',\r\n badge: { type: 'secondary', icon: 'fas fa-ban' },\r\n amount: '$120'\r\n },\r\n {\r\n id: 6,\r\n dropdownId: 'order-dropdown-6',\r\n orderId: '#186',\r\n mailLink: 'mailto:ricky@example.com',\r\n name: 'Ricky John',\r\n email: 'ricky@example.com',\r\n date: '30/04/2019',\r\n address: 'Ricky John, 1 Infinite Loop, Cupertino, California 90210',\r\n shippingType: 'Via Free Shipping',\r\n status: 'Processing',\r\n badge: { type: 'primary', icon: 'fas fa-redo' },\r\n amount: '$145'\r\n },\r\n {\r\n id: 7,\r\n dropdownId: 'order-dropdown-7',\r\n orderId: '#187',\r\n mailLink: 'mailto:cristofer@example.com',\r\n name: 'Cristofer Henric',\r\n email: 'cristofer@example.com',\r\n date: '30/04/2019',\r\n address: 'Cristofer Henric, 1 Infinite Loop, Cupertino, California 90210',\r\n shippingType: 'Via Flat Rate',\r\n status: 'Completed',\r\n badge: { type: 'success', icon: 'fas fa-check' },\r\n amount: '$55'\r\n },\r\n {\r\n id: 8,\r\n dropdownId: 'order-dropdown-8',\r\n orderId: '#188',\r\n mailLink: 'mailto:lee@example.com',\r\n name: 'Brate Lee',\r\n email: 'lee@example.com',\r\n date: '29/04/2019',\r\n address: 'Brate Lee, 1 Infinite Loop, Cupertino, California 90210',\r\n shippingType: 'Via Link Road',\r\n status: 'On Hold',\r\n badge: { type: 'secondary', icon: 'fas fa-ban' },\r\n amount: '$90'\r\n },\r\n {\r\n id: 9,\r\n dropdownId: 'order-dropdown-9',\r\n orderId: '#189',\r\n mailLink: 'mailto:Stephenson@example.com',\r\n name: 'Thomas Stephenson',\r\n email: 'Stephenson@example.com',\r\n date: '29/04/2019',\r\n address: 'Thomas Stephenson, 116 Ballifeary Road, Bamff',\r\n shippingType: 'Via Flat Rate',\r\n status: 'Processing',\r\n badge: { type: 'primary', icon: 'fas fa-redo' },\r\n amount: '$52'\r\n },\r\n {\r\n id: 10,\r\n dropdownId: 'order-dropdown-10',\r\n orderId: '#190',\r\n mailLink: 'mailto:eviewsing@example.com',\r\n name: 'Evie Singh',\r\n email: 'eviewsing@example.com',\r\n date: '29/04/2019',\r\n address: 'Evie Singh, 54 Castledore Road, Tunstead',\r\n shippingType: 'Via Flat Rate',\r\n status: 'Completed',\r\n badge: { type: 'success', icon: 'fas fa-check' },\r\n amount: '$90'\r\n },\r\n {\r\n id: 11,\r\n dropdownId: 'order-dropdown-11',\r\n orderId: '#191',\r\n mailLink: 'mailto:peter@example.com',\r\n name: 'David Peters',\r\n email: 'peter@example.com',\r\n date: '29/04/2019',\r\n address: 'David Peters, Rhyd Y Groes, Rhosgoch, LL66 0AT',\r\n shippingType: 'Via Link Road',\r\n status: 'Completed',\r\n badge: { type: 'success', icon: 'fas fa-check' },\r\n amount: '$69'\r\n },\r\n {\r\n id: 12,\r\n dropdownId: 'order-dropdown-12',\r\n orderId: '#192',\r\n mailLink: 'mailto:jennifer@example.com',\r\n name: 'Jennifer Johnson',\r\n email: 'jennifer@example.com',\r\n date: '28/04/2019',\r\n address: 'Jennifer Johnson, Rhyd Y Groes, Rhosgoch, LL66 0AT',\r\n shippingType: 'Via Flat Rate',\r\n status: 'Processing',\r\n badge: { type: 'primary', icon: 'fas fa-redo' },\r\n amount: '$112'\r\n },\r\n {\r\n id: 13,\r\n dropdownId: 'order-dropdown-13',\r\n orderId: '#193',\r\n mailLink: 'mailto:okuneva@example.com',\r\n name: ' Demarcus Okuneva',\r\n email: 'okuneva@example.com',\r\n date: '28/04/2019',\r\n address: ' Demarcus Okuneva, 90555 Upton Drive Jeffreyview, UT 08771',\r\n shippingType: 'Via Flat Rate',\r\n status: 'Completed',\r\n badge: { type: 'success', icon: 'fas fa-check' },\r\n amount: '$99'\r\n },\r\n {\r\n id: 14,\r\n dropdownId: 'order-dropdown-14',\r\n orderId: '#194',\r\n mailLink: 'mailto:simeon@example.com',\r\n name: 'Simeon Harber',\r\n email: 'simeon@example.com',\r\n date: '27/04/2019',\r\n address: 'Simeon Harber, 702 Kunde Plain Apt. 634 East Bridgetview, HI 13134-1862',\r\n shippingType: 'Via Free Shipping',\r\n status: 'On Hold',\r\n badge: { type: 'secondary', icon: 'fas fa-ban' },\r\n amount: '$129'\r\n },\r\n {\r\n id: 15,\r\n dropdownId: 'order-dropdown-15',\r\n orderId: '#195',\r\n mailLink: 'mailto:lavon@example.com',\r\n name: 'Lavon Haley',\r\n email: 'lavon@example.com',\r\n date: '27/04/2019',\r\n address: 'Lavon Haley, 30998 Adonis Locks McGlynnside, ID 27241',\r\n shippingType: 'Via Free Shipping',\r\n status: 'Pending',\r\n badge: { type: 'warning', icon: 'fas fa-stream' },\r\n amount: '$70'\r\n },\r\n {\r\n id: 16,\r\n dropdownId: 'order-dropdown-16',\r\n orderId: '#196',\r\n mailLink: 'mailto:ashley@example.com',\r\n name: 'Ashley Kirlin',\r\n email: 'ashley@example.com',\r\n date: '26/04/2019',\r\n address: 'Ashley Kirlin, 43304 Prosacco Shore South Dejuanfurt, MO 18623-0505',\r\n shippingType: 'Via Link Road',\r\n status: 'Processing',\r\n badge: { type: 'primary', icon: 'fas fa-redo' },\r\n amount: '$39'\r\n },\r\n {\r\n id: 17,\r\n dropdownId: 'order-dropdown-17',\r\n orderId: '#197',\r\n mailLink: 'mailto:johnnie@example.com',\r\n name: 'Johnnie Considine',\r\n email: 'johnnie@example.com',\r\n date: '26/04/2019',\r\n address: 'Johnnie Considine, 6008 Hermann Points Suite 294 Hansenville, TN 14210',\r\n shippingType: 'Via Flat Rate',\r\n status: 'Pending',\r\n badge: { type: 'warning', icon: 'fas fa-stream' },\r\n amount: '$70'\r\n },\r\n {\r\n id: 18,\r\n dropdownId: 'order-dropdown-18',\r\n orderId: '#198',\r\n mailLink: 'mailto:trace@example.com',\r\n name: 'Trace Farrell',\r\n email: 'trace@example.com',\r\n date: '26/04/2019',\r\n address: 'Trace Farrell, 431 Steuber Mews Apt. 252 Germanland, AK 25882',\r\n shippingType: 'Via Free Shipping',\r\n status: 'Completed',\r\n badge: { type: 'success', icon: 'fas fa-check' },\r\n amount: '$70'\r\n },\r\n {\r\n id: 19,\r\n dropdownId: 'order-dropdown-19',\r\n orderId: '#199',\r\n mailLink: 'mailto:nienow@example.com',\r\n name: 'Estell Nienow',\r\n email: 'nienow@example.com',\r\n date: '26/04/2019',\r\n address: 'Estell Nienow, 4167 Laverna Manor Marysemouth, NV 74590',\r\n shippingType: 'Via Free Shipping',\r\n status: 'Completed',\r\n badge: { type: 'success', icon: 'fas fa-check' },\r\n amount: '$59'\r\n },\r\n {\r\n id: 20,\r\n dropdownId: 'order-dropdown-20',\r\n orderId: '#200',\r\n mailLink: 'mailto:howe@example.com',\r\n name: 'Daisha Howe',\r\n email: 'howe@example.com',\r\n date: '25/04/2019',\r\n address: 'Daisha Howe, 829 Lavonne Valley Apt. 074 Stehrfort, RI 77914-0379',\r\n shippingType: 'Via Free Shipping',\r\n status: 'Completed',\r\n badge: { type: 'success', icon: 'fas fa-check' },\r\n amount: '$39'\r\n },\r\n {\r\n id: 21,\r\n dropdownId: 'order-dropdown-21',\r\n orderId: '#201',\r\n mailLink: 'mailto:haley@example.com',\r\n name: 'Miles Haley',\r\n email: 'haley@example.com',\r\n date: '24/04/2019',\r\n address: 'Miles Haley, 53150 Thad Squares Apt. 263 Archibaldfort, MO 00837',\r\n shippingType: 'Via Flat Rate',\r\n status: 'Completed',\r\n badge: { type: 'success', icon: 'fas fa-check' },\r\n amount: '$55'\r\n },\r\n {\r\n id: 22,\r\n dropdownId: 'order-dropdown-22',\r\n orderId: '#202',\r\n mailLink: 'mailto:watsica@example.com',\r\n name: 'Brenda Watsica',\r\n email: 'watsica@example.com',\r\n date: '24/04/2019',\r\n address: \"Brenda Watsica, 9198 O'Kon Harbors Morarborough, IA 75409-7383\",\r\n shippingType: 'Via Free Shipping',\r\n status: 'Completed',\r\n badge: { type: 'success', icon: 'fas fa-check' },\r\n amount: '$89'\r\n },\r\n {\r\n id: 23,\r\n dropdownId: 'order-dropdown-23',\r\n orderId: '#203',\r\n mailLink: 'mailto:ellie@example.com',\r\n name: \"Ellie O'Reilly\",\r\n email: 'ellie@example.com',\r\n date: '24/04/2019',\r\n address: \"Ellie O'Reilly, 1478 Kaitlin Haven Apt. 061 Lake Muhammadmouth, SC 35848\",\r\n shippingType: 'Via Free Shipping',\r\n status: 'Completed',\r\n badge: { type: 'success', icon: 'fas fa-check' },\r\n amount: '$47'\r\n },\r\n {\r\n id: 24,\r\n dropdownId: 'order-dropdown-24',\r\n orderId: '#204',\r\n mailLink: 'mailto:garry@example.com',\r\n name: 'Garry Brainstrow',\r\n email: 'garry@example.com',\r\n date: '23/04/2019',\r\n address: 'Garry Brainstrow, 13572 Kurt Mews South Merritt, IA 52491',\r\n shippingType: 'Via Free Shipping',\r\n status: 'Completed',\r\n badge: { type: 'success', icon: 'fas fa-check' },\r\n amount: '$139'\r\n },\r\n {\r\n id: 25,\r\n dropdownId: 'order-dropdown-25',\r\n orderId: '#205',\r\n mailLink: 'mailto:estell@example.com',\r\n name: 'Estell Pollich',\r\n email: 'estell@example.com',\r\n date: '23/04/2019',\r\n address: 'Estell Pollich, 13572 Kurt Mews South Merritt, IA 52491',\r\n shippingType: 'Via Free Shipping',\r\n status: 'On Hold',\r\n badge: { type: 'secondary', icon: 'fas fa-ban' },\r\n amount: '$49'\r\n },\r\n {\r\n id: 26,\r\n dropdownId: 'order-dropdown-26',\r\n orderId: '#206',\r\n mailLink: 'mailto:ara@example.com',\r\n name: 'Ara Mueller',\r\n email: 'ara@example.com',\r\n date: '23/04/2019',\r\n address: 'Ara Mueller, 91979 Kohler Place Waelchiborough, CT 41291',\r\n shippingType: 'Via Flat Rate',\r\n status: 'On Hold',\r\n badge: { type: 'secondary', icon: 'fas fa-ban' },\r\n amount: '$19'\r\n },\r\n {\r\n id: 27,\r\n dropdownId: 'order-dropdown-27',\r\n orderId: '#207',\r\n mailLink: 'mailto:blick@example.com',\r\n name: 'Lucienne Blick',\r\n email: 'blick@example.com',\r\n date: '23/04/2019',\r\n address: 'Lucienne Blick, 6757 Giuseppe Meadows Geraldinemouth, MO 48819-4970',\r\n shippingType: 'Via Flat Rate',\r\n status: 'On Hold',\r\n badge: { type: 'secondary', icon: 'fas fa-ban' },\r\n amount: '$59'\r\n },\r\n {\r\n id: 28,\r\n dropdownId: 'order-dropdown-28',\r\n orderId: '#208',\r\n mailLink: 'mailto:haag@example.com',\r\n name: 'Laverne Haag',\r\n email: 'haag@example.com',\r\n date: '22/04/2019',\r\n address: 'Laverne Haag, 2327 Kaylee Mill East Citlalli, AZ 89582-3143',\r\n shippingType: 'Via Flat Rate',\r\n status: 'On Hold',\r\n badge: { type: 'secondary', icon: 'fas fa-ban' },\r\n amount: '$49'\r\n },\r\n {\r\n id: 29,\r\n dropdownId: 'order-dropdown-29',\r\n orderId: '#209',\r\n mailLink: 'mailto:bednar@example.com',\r\n name: 'Brandon Bednar',\r\n email: 'bednar@example.com',\r\n date: '22/04/2019',\r\n address: 'Brandon Bednar, 25156 Isaac Crossing Apt. 810 Lonborough, CO 83774-5999',\r\n shippingType: 'Via Flat Rate',\r\n status: 'On Hold',\r\n badge: { type: 'secondary', icon: 'fas fa-ban' },\r\n amount: '$39'\r\n },\r\n {\r\n id: 30,\r\n dropdownId: 'order-dropdown-30',\r\n orderId: '#210',\r\n mailLink: 'mailto:dimitri@example.com',\r\n name: 'Dimitri Boehm',\r\n email: 'dimitri@example.com',\r\n date: '23/04/2019',\r\n address: 'Dimitri Boehm, 71603 Wolff Plains Apt. 885 Johnstonton, MI 01581',\r\n shippingType: 'Via Flat Rate',\r\n status: 'On Hold',\r\n badge: { type: 'secondary', icon: 'fas fa-ban' },\r\n amount: '$111'\r\n }\r\n];\r\n\r\nconst advanceAjaxTableInit = () => {\r\n const togglePaginationButtonDisable = (button, disabled) => {\r\n const updatedButton = button;\r\n updatedButton.disabled = disabled;\r\n updatedButton.classList[disabled ? 'add' : 'remove']('disabled');\r\n };\r\n // Selectors\r\n const table = document.getElementById('advanceAjaxTable');\r\n\r\n if (table) {\r\n const options = {\r\n page: 10,\r\n pagination: {\r\n item: \"
  • \"\r\n },\r\n item: values => {\r\n const { orderId, id, name, email, date, address, shippingType, status, badge, amount } =\r\n values;\r\n return `\r\n \r\n \r\n \r\n ${orderId}\r\n \r\n by\r\n ${name}\r\n
    \r\n ${email}\r\n \r\n \r\n ${date}\r\n \r\n \r\n ${address}\r\n

    ${shippingType}

    \r\n \r\n \r\n \r\n ${status}\r\n \r\n \r\n \r\n \r\n ${amount}\r\n \r\n \r\n
    \r\n \r\n
    \r\n View\r\n Edit\r\n Refund\r\n
    \r\n Archive\r\n Archive\r\n
    \r\n
    \r\n \r\n \r\n `;\r\n }\r\n };\r\n const paginationButtonNext = table.querySelector('[data-list-pagination=\"next\"]');\r\n const paginationButtonPrev = table.querySelector('[data-list-pagination=\"prev\"]');\r\n const viewAll = table.querySelector('[data-list-view=\"*\"]');\r\n const viewLess = table.querySelector('[data-list-view=\"less\"]');\r\n const listInfo = table.querySelector('[data-list-info]');\r\n const listFilter = document.querySelector('[data-list-filter]');\r\n\r\n const orderList = new window.List(table, options, orders);\r\n\r\n // Fallback\r\n orderList.on('updated', item => {\r\n const fallback =\r\n table.querySelector('.fallback') || document.getElementById(options.fallback);\r\n\r\n if (fallback) {\r\n if (item.matchingItems.length === 0) {\r\n fallback.classList.remove('d-none');\r\n } else {\r\n fallback.classList.add('d-none');\r\n }\r\n }\r\n });\r\n\r\n const totalItem = orderList.items.length;\r\n const itemsPerPage = orderList.page;\r\n const btnDropdownClose = orderList.listContainer.querySelector('.btn-close');\r\n let pageQuantity = Math.ceil(totalItem / itemsPerPage);\r\n let numberOfcurrentItems = orderList.visibleItems.length;\r\n let pageCount = 1;\r\n\r\n btnDropdownClose &&\r\n btnDropdownClose.addEventListener('search.close', () => orderList.fuzzySearch(''));\r\n\r\n const updateListControls = () => {\r\n listInfo &&\r\n (listInfo.innerHTML = `${orderList.i} to ${numberOfcurrentItems} of ${totalItem}`);\r\n paginationButtonPrev && togglePaginationButtonDisable(paginationButtonPrev, pageCount === 1);\r\n if (paginationButtonNext) {\r\n togglePaginationButtonDisable(paginationButtonNext, pageCount === pageQuantity);\r\n }\r\n\r\n if (pageCount > 1 && pageCount < pageQuantity) {\r\n togglePaginationButtonDisable(paginationButtonNext, false);\r\n togglePaginationButtonDisable(paginationButtonPrev, false);\r\n }\r\n };\r\n updateListControls();\r\n\r\n if (paginationButtonNext) {\r\n paginationButtonNext.addEventListener('click', e => {\r\n e.preventDefault();\r\n pageCount += 1;\r\n\r\n const nextInitialIndex = orderList.i + itemsPerPage;\r\n nextInitialIndex <= orderList.size() && orderList.show(nextInitialIndex, itemsPerPage);\r\n numberOfcurrentItems += orderList.visibleItems.length;\r\n updateListControls();\r\n });\r\n }\r\n\r\n if (paginationButtonPrev) {\r\n paginationButtonPrev.addEventListener('click', e => {\r\n e.preventDefault();\r\n pageCount -= 1;\r\n\r\n numberOfcurrentItems -= orderList.visibleItems.length;\r\n const prevItem = orderList.i - itemsPerPage;\r\n prevItem > 0 && orderList.show(prevItem, itemsPerPage);\r\n updateListControls();\r\n });\r\n }\r\n\r\n const toggleViewBtn = () => {\r\n viewLess.classList.toggle('d-none');\r\n viewAll.classList.toggle('d-none');\r\n };\r\n\r\n if (viewAll) {\r\n viewAll.addEventListener('click', () => {\r\n orderList.show(1, totalItem);\r\n pageQuantity = 1;\r\n pageCount = 1;\r\n numberOfcurrentItems = totalItem;\r\n updateListControls();\r\n toggleViewBtn();\r\n });\r\n }\r\n if (viewLess) {\r\n viewLess.addEventListener('click', () => {\r\n orderList.show(1, itemsPerPage);\r\n pageQuantity = Math.ceil(totalItem / itemsPerPage);\r\n pageCount = 1;\r\n numberOfcurrentItems = orderList.visibleItems.length;\r\n updateListControls();\r\n toggleViewBtn();\r\n });\r\n }\r\n if (options.pagination) {\r\n table.querySelector('.pagination').addEventListener('click', e => {\r\n if (e.target.classList[0] === 'page') {\r\n pageCount = Number(e.target.innerText);\r\n updateListControls();\r\n }\r\n });\r\n }\r\n if (options.filter) {\r\n const { key } = options.filter;\r\n listFilter.addEventListener('change', e => {\r\n orderList.filter(item => {\r\n if (e.target.value === '') {\r\n return true;\r\n }\r\n return item.values()[key].toLowerCase().includes(e.target.value.toLowerCase());\r\n });\r\n });\r\n }\r\n }\r\n};\r\n\r\nexport default advanceAjaxTableInit;\r\n","/* -------------------------------------------------------------------------- */\r\n/* Anchor JS */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst anchors = new window.AnchorJS();\r\nanchors.options = {\r\n icon: '#'\r\n};\r\nanchors.add('[data-anchor]');\r\n","import utils from './utils';\r\n/*-----------------------------------------------\r\n| Bottom Bar Control\r\n-----------------------------------------------*/\r\n\r\nconst bottomBarInit = () => {\r\n const bottomBars = document.querySelectorAll('[data-bottom-bar]');\r\n const navbarButtons = [\r\n document.querySelector('[data-bs-target=\"#navbarVerticalCollapse\"]'),\r\n document.querySelector('[data-bs-target=\"#navbarStandard\"]')\r\n ];\r\n\r\n const isElementInViewport = (el, offsetTop = 0) => {\r\n const rect = el.getBoundingClientRect();\r\n\r\n return (\r\n rect.bottom > 0 &&\r\n rect.top > offsetTop &&\r\n rect.right > 0 &&\r\n rect.left < (window.innerWidth || document.documentElement.clientWidth) &&\r\n rect.top < (window.innerHeight || document.documentElement.clientHeight)\r\n );\r\n };\r\n\r\n if (bottomBars.length) {\r\n bottomBars.forEach(bar => {\r\n // get options\r\n const barOptions = utils.getData(bar, 'bottom-bar');\r\n const defaultOptions = {\r\n target: '#bottom-bar-target',\r\n offsetTop: 0,\r\n breakPoint: 'lg'\r\n };\r\n const { target, offsetTop, breakPoint } = window._.merge(defaultOptions, barOptions);\r\n\r\n // select target\r\n const targetEl = document.getElementById(target);\r\n\r\n // handle Bottombar\r\n const toggleBottomBar = () => {\r\n if (window.matchMedia(`(max-width: ${utils.breakpoints[breakPoint]}px)`).matches) {\r\n if (!isElementInViewport(targetEl, offsetTop)) {\r\n utils.removeClass(bar, 'hide');\r\n } else {\r\n utils.addClass(bar, 'hide');\r\n }\r\n }\r\n };\r\n\r\n window.addEventListener('scroll', toggleBottomBar);\r\n\r\n const toggleBottomBarOnNavbarCollapse = el => {\r\n if (!utils.hasClass(el, 'collapsed')) {\r\n utils.addClass(bar, 'hide');\r\n } else if (!isElementInViewport(targetEl, offsetTop)) {\r\n utils.removeClass(bar, 'hide');\r\n }\r\n };\r\n\r\n navbarButtons.forEach(\r\n btn => btn && btn.addEventListener('click', () => toggleBottomBarOnNavbarCollapse(btn))\r\n );\r\n });\r\n }\r\n};\r\n\r\nexport default bottomBarInit;\r\n","import DomNode from './node';\r\nimport utils from './utils';\r\n\r\n/*-----------------------------------------------\r\n| Bulk Select\r\n-----------------------------------------------*/\r\n\r\nconst elementMap = new Map();\r\n\r\nclass BulkSelect {\r\n constructor(element, option) {\r\n this.element = element;\r\n this.option = {\r\n displayNoneClassName: 'd-none',\r\n ...option\r\n };\r\n elementMap.set(this.element, this);\r\n }\r\n\r\n // Static\r\n static getInstance(element) {\r\n if (elementMap.has(element)) {\r\n return elementMap.get(element);\r\n }\r\n return null;\r\n }\r\n\r\n init() {\r\n this.attachNodes();\r\n this.clickBulkCheckbox();\r\n this.clickRowCheckbox();\r\n }\r\n\r\n getSelectedRows() {\r\n return Array.from(this.bulkSelectRows)\r\n .filter(row => row.checked)\r\n .map(row => utils.getData(row, 'bulk-select-row'));\r\n }\r\n\r\n attachNodes() {\r\n const { body, actions, replacedElement } = utils.getData(this.element, 'bulk-select');\r\n this.actions = new DomNode(document.getElementById(actions));\r\n this.replacedElement = new DomNode(document.getElementById(replacedElement));\r\n this.bulkSelectRows = document.getElementById(body).querySelectorAll('[data-bulk-select-row]');\r\n }\r\n\r\n attachRowNodes(elms) {\r\n this.bulkSelectRows = elms;\r\n }\r\n\r\n clickBulkCheckbox() {\r\n // Handle click event in bulk checkbox\r\n this.element.addEventListener('click', () => {\r\n if (this.element.indeterminate === 'indeterminate') {\r\n this.actions.addClass(this.option.displayNoneClassName);\r\n this.replacedElement.removeClass(this.option.displayNoneClassName);\r\n\r\n this.removeBulkCheck();\r\n\r\n this.bulkSelectRows.forEach(el => {\r\n const rowCheck = new DomNode(el);\r\n rowCheck.setProp('checked', false);\r\n rowCheck.setAttribute('checked', false);\r\n });\r\n return;\r\n }\r\n\r\n this.toggleDisplay();\r\n this.bulkSelectRows.forEach(el => {\r\n el.checked = this.element.checked;\r\n });\r\n if (this.element.checked) {\r\n this.actions.removeClass(this.option.displayNoneClassName);\r\n this.replacedElement.addClass(this.option.displayNoneClassName);\r\n } else {\r\n this.actions.addClass(this.option.displayNoneClassName);\r\n this.replacedElement.removeClass(this.option.displayNoneClassName);\r\n }\r\n });\r\n }\r\n\r\n clickRowCheckbox() {\r\n // Handle click event in checkbox of each row\r\n this.bulkSelectRows.forEach(el => {\r\n const rowCheck = new DomNode(el);\r\n rowCheck.on('click', () => {\r\n if (this.element.indeterminate !== 'indeterminate') {\r\n this.element.indeterminate = true;\r\n this.element.setAttribute('indeterminate', 'indeterminate');\r\n this.element.checked = true;\r\n this.element.setAttribute('checked', true);\r\n\r\n this.actions.removeClass(this.option.displayNoneClassName);\r\n this.replacedElement.addClass(this.option.displayNoneClassName);\r\n }\r\n\r\n if ([...this.bulkSelectRows].every(element => element.checked)) {\r\n this.element.indeterminate = false;\r\n this.element.setAttribute('indeterminate', false);\r\n }\r\n\r\n if ([...this.bulkSelectRows].every(element => !element.checked)) {\r\n this.removeBulkCheck();\r\n this.toggleDisplay();\r\n }\r\n });\r\n });\r\n }\r\n\r\n removeBulkCheck() {\r\n this.element.indeterminate = false;\r\n this.element.removeAttribute('indeterminate');\r\n this.element.checked = false;\r\n this.element.setAttribute('checked', false);\r\n }\r\n\r\n toggleDisplay() {\r\n this.actions.toggleClass(this.option.displayNoneClassName);\r\n this.replacedElement.toggleClass(this.option.displayNoneClassName);\r\n }\r\n}\r\n\r\nfunction bulkSelectInit() {\r\n const bulkSelects = document.querySelectorAll('[data-bulk-select');\r\n\r\n if (bulkSelects.length) {\r\n bulkSelects.forEach(el => {\r\n const bulkSelect = new BulkSelect(el);\r\n bulkSelect.init();\r\n });\r\n }\r\n const selectedRowsBtn = document.querySelector('[data-selected-rows]');\r\n const selectedRows = document.getElementById('selectedRows');\r\n if (selectedRowsBtn) {\r\n const bulkSelectEl = document.getElementById('bulk-select-example');\r\n const bulkSelectInstance = window.BulkSelect.getInstance(bulkSelectEl);\r\n selectedRowsBtn.addEventListener('click', () => {\r\n console.log(bulkSelectInstance);\r\n selectedRows.innerHTML = JSON.stringify(bulkSelectInstance.getSelectedRows(), undefined, 2);\r\n });\r\n }\r\n}\r\n\r\nexport default bulkSelectInit;\r\n\r\nwindow.BulkSelect = BulkSelect;\r\n","import utils from './utils';\r\n\r\n/*-----------------------------------------------\r\n| Chat\r\n-----------------------------------------------*/\r\nconst chatInit = () => {\r\n const Events = {\r\n CLICK: 'click',\r\n SHOWN_BS_TAB: 'shown.bs.tab',\r\n KEYUP: 'keyup',\r\n EMOJI: 'emoji'\r\n };\r\n\r\n const Selector = {\r\n CHAT_SIDEBAR: '.chat-sidebar',\r\n CHAT_CONTACT: '.chat-contact',\r\n CHAT_CONTENT_SCROLL_AREA: '.chat-content-scroll-area',\r\n CHAT_CONTENT_SCROLL_AREA_ACTIVE: '.card-chat-pane.active .chat-content-scroll-area',\r\n CHAT_EMOJIAREA: '.chat-editor-area .emojiarea-editor',\r\n BTN_SEND: '.btn-send',\r\n EMOJIEAREA_EDITOR: '.emojiarea-editor',\r\n BTN_INFO: '.btn-chat-info',\r\n CONVERSATION_INFO: '.conversation-info',\r\n CONTACTS_LIST_SHOW: '.contacts-list-show'\r\n };\r\n\r\n const ClassName = {\r\n UNREAD_MESSAGE: 'unread-message',\r\n TEXT_PRIMARY: 'text-primary',\r\n SHOW: 'show'\r\n };\r\n\r\n const DATA_KEY = {\r\n INDEX: 'index'\r\n };\r\n\r\n const $chatSidebar = document.querySelector(Selector.CHAT_SIDEBAR);\r\n const $chatContact = document.querySelectorAll(Selector.CHAT_CONTACT);\r\n const $chatEmojiarea = document.querySelector(Selector.CHAT_EMOJIAREA);\r\n const $btnSend = document.querySelector(Selector.BTN_SEND);\r\n const $currentChatArea = document.querySelector(Selector.CHAT_CONTENT_SCROLL_AREA);\r\n\r\n // Set scrollbar position\r\n const setScrollbarPosition = $chatArea => {\r\n if ($chatArea) {\r\n const scrollArea = $chatArea;\r\n scrollArea.scrollTop = $chatArea.scrollHeight;\r\n }\r\n };\r\n\r\n setTimeout(() => {\r\n setScrollbarPosition($currentChatArea);\r\n }, 700);\r\n\r\n document.querySelectorAll(Selector.CHAT_CONTACT).forEach(el => {\r\n el.addEventListener(Events.CLICK, e => {\r\n const $this = e.currentTarget;\r\n $this.classList.add('active');\r\n // Hide contact list sidebar on responsive\r\n window.innerWidth < 768 &&\r\n !e.target.classList.contains('hover-actions') &&\r\n ($chatSidebar.style.left = '-100%');\r\n\r\n // Remove unread-message class when read\r\n $this.classList.contains(ClassName.UNREAD_MESSAGE) &&\r\n $this.classList.remove(ClassName.UNREAD_MESSAGE);\r\n });\r\n });\r\n\r\n $chatContact.forEach(el => {\r\n el.addEventListener(Events.SHOWN_BS_TAB, () => {\r\n $chatEmojiarea.innerHTML = '';\r\n $btnSend.classList.remove(ClassName.TEXT_PRIMARY);\r\n const TargetChatArea = document.querySelector(Selector.CHAT_CONTENT_SCROLL_AREA_ACTIVE);\r\n setScrollbarPosition(TargetChatArea);\r\n });\r\n });\r\n\r\n // change send button color on\r\n\r\n if ($chatEmojiarea) {\r\n $chatEmojiarea.setAttribute('placeholder', 'Type your message');\r\n $chatEmojiarea.addEventListener(Events.KEYUP, e => {\r\n if (e.target.textContent.length <= 0) {\r\n $btnSend.classList.remove(ClassName.TEXT_PRIMARY);\r\n if (e.target.innerHTML === '
    ') {\r\n e.target.innerHTML = '';\r\n }\r\n } else {\r\n $btnSend.classList.add(ClassName.TEXT_PRIMARY);\r\n }\r\n\r\n const TargetChatArea = document.querySelector(Selector.CHAT_CONTENT_SCROLL_AREA_ACTIVE);\r\n setScrollbarPosition(TargetChatArea);\r\n });\r\n }\r\n // Open conversation info sidebar\r\n $chatEmojiarea &&\r\n document.querySelectorAll(Selector.BTN_INFO).forEach(el => {\r\n el.addEventListener(Events.CLICK, e => {\r\n const $this = e.currentTarget;\r\n const dataIndex = utils.getData($this, DATA_KEY.INDEX);\r\n const $info = document.querySelector(\r\n `${Selector.CONVERSATION_INFO}[data-${DATA_KEY.INDEX}='${dataIndex}']`\r\n );\r\n $info.classList.toggle(ClassName.SHOW);\r\n });\r\n });\r\n\r\n // Show contact list sidebar on responsive\r\n document.querySelectorAll(Selector.CONTACTS_LIST_SHOW).forEach(el => {\r\n el.addEventListener(Events.CLICK, () => {\r\n $chatSidebar.style.left = 0;\r\n });\r\n });\r\n\r\n // Set scrollbar area height on resize\r\n utils.resize(() => {\r\n const TargetChatArea = document.querySelector(Selector.CHAT_CONTENT_SCROLL_AREA_ACTIVE);\r\n setScrollbarPosition(TargetChatArea);\r\n });\r\n};\r\n\r\nexport default chatInit;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* choices */\r\n/* -------------------------------------------------------------------------- */\r\nconst choicesInit = () => {\r\n if (window.Choices) {\r\n const elements = document.querySelectorAll('.js-choice');\r\n elements.forEach(item => {\r\n const userOptions = utils.getData(item, 'options');\r\n const choices = new window.Choices(item, {\r\n itemSelectText: '',\r\n ...userOptions\r\n });\r\n\r\n const needsValidation = document.querySelectorAll('.needs-validation');\r\n\r\n needsValidation.forEach(validationItem => {\r\n const selectFormValidation = () => {\r\n validationItem.querySelectorAll('.choices').forEach(choicesItem => {\r\n const singleSelect = choicesItem.querySelector('.choices__list--single');\r\n const multipleSelect = choicesItem.querySelector('.choices__list--multiple');\r\n\r\n if (choicesItem.querySelector('[required]')) {\r\n if (singleSelect) {\r\n if (\r\n singleSelect\r\n .querySelector('.choices__item--selectable')\r\n ?.getAttribute('data-value') !== ''\r\n ) {\r\n choicesItem.classList.remove('invalid');\r\n choicesItem.classList.add('valid');\r\n } else {\r\n choicesItem.classList.remove('valid');\r\n choicesItem.classList.add('invalid');\r\n }\r\n }\r\n //----- for multiple select only ----------\r\n if (multipleSelect) {\r\n if (choicesItem.getElementsByTagName('option').length) {\r\n choicesItem.classList.remove('invalid');\r\n choicesItem.classList.add('valid');\r\n } else {\r\n choicesItem.classList.remove('valid');\r\n choicesItem.classList.add('invalid');\r\n }\r\n }\r\n\r\n //------ select end ---------------\r\n }\r\n });\r\n };\r\n\r\n validationItem.addEventListener('submit', () => {\r\n selectFormValidation();\r\n });\r\n\r\n item.addEventListener('change', () => {\r\n selectFormValidation();\r\n });\r\n });\r\n\r\n return choices;\r\n });\r\n }\r\n};\r\n\r\nexport default choicesInit;\r\n","import utils from './utils';\r\n\r\n/*-----------------------------------------------\r\n| Cookie notice\r\n-----------------------------------------------*/\r\nconst cookieNoticeInit = () => {\r\n const Selector = {\r\n NOTICE: '.notice',\r\n DATA_TOGGLE_Notice: '[data-bs-toggle=\"notice\"]'\r\n };\r\n\r\n const Events = {\r\n CLICK: 'click',\r\n HIDDEN_BS_TOAST: 'hidden.bs.toast'\r\n };\r\n\r\n const DataKeys = {\r\n OPTIONS: 'options'\r\n };\r\n\r\n const ClassNames = {\r\n HIDE: 'hide'\r\n };\r\n\r\n const notices = document.querySelectorAll(Selector.NOTICE);\r\n let showNotice = true;\r\n notices.forEach(item => {\r\n const notice = new window.bootstrap.Toast(item);\r\n const options = {\r\n autoShow: false,\r\n autoShowDelay: 0,\r\n showOnce: false,\r\n cookieExpireTime: 3600000,\r\n ...utils.getData(item, DataKeys.OPTIONS)\r\n };\r\n const { showOnce, autoShow, autoShowDelay } = options;\r\n\r\n if (showOnce) {\r\n const hasNotice = utils.getCookie('notice');\r\n showNotice = hasNotice === null;\r\n }\r\n\r\n if (autoShow && showNotice) {\r\n setTimeout(() => {\r\n notice.show();\r\n }, autoShowDelay);\r\n }\r\n\r\n item.addEventListener(Events.HIDDEN_BS_TOAST, e => {\r\n const el = e.currentTarget;\r\n const toastOptions = {\r\n cookieExpireTime: 3600000,\r\n showOnce: false,\r\n ...utils.getData(el, DataKeys.OPTIONS)\r\n };\r\n if (toastOptions.showOnce) {\r\n utils.setCookie('notice', false, toastOptions.cookieExpireTime);\r\n }\r\n });\r\n });\r\n\r\n const btnNoticeToggle = document.querySelector(Selector.DATA_TOGGLE_Notice);\r\n if (btnNoticeToggle) {\r\n btnNoticeToggle.addEventListener(Events.CLICK, ({ currentTarget }) => {\r\n const id = currentTarget.getAttribute('href');\r\n const notice = new window.bootstrap.Toast(document.querySelector(id));\r\n\r\n const el = notice._element;\r\n utils.hasClass(el, ClassNames.HIDE) ? notice.show() : notice.hide();\r\n });\r\n }\r\n};\r\n\r\nexport default cookieNoticeInit;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Copy LinK */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst copyLink = () => {\r\n const copyLinkModal = document.getElementById('copyLinkModal');\r\n copyLinkModal &&\r\n copyLinkModal.addEventListener('shown.bs.modal', () => {\r\n const invitationLink = document.querySelector('.invitation-link');\r\n invitationLink.select();\r\n });\r\n\r\n const copyButtons = document.querySelectorAll('[data-copy]');\r\n copyButtons &&\r\n copyButtons.forEach(button => {\r\n const tooltip = new window.bootstrap.Tooltip(button);\r\n\r\n button.addEventListener('mouseover', () => tooltip.show());\r\n button.addEventListener('mouseleave', () => tooltip.hide());\r\n\r\n button.addEventListener('click', e => {\r\n e.stopPropagation();\r\n const el = e.target;\r\n el.setAttribute('data-original-title', 'Copied');\r\n tooltip.show();\r\n el.setAttribute('data-original-title', 'Copy to clipboard');\r\n tooltip.update();\r\n const inputID = utils.getData(el, 'copy');\r\n const input = document.querySelector(inputID);\r\n input.select();\r\n document.execCommand('copy');\r\n });\r\n });\r\n};\r\n\r\nexport default copyLink;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Count Up */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst countupInit = () => {\r\n if (window.countUp) {\r\n const countups = document.querySelectorAll('[data-countup]');\r\n countups.forEach(node => {\r\n const { endValue, ...options } = utils.getData(node, 'countup');\r\n const countUp = new window.countUp.CountUp(node, endValue, {\r\n duration: 5,\r\n ...options\r\n });\r\n if (!countUp.error) {\r\n countUp.start();\r\n } else {\r\n console.error(countUp.error);\r\n }\r\n });\r\n }\r\n};\r\n\r\nexport default countupInit;\r\n","import bulkSelectInit from './bulk-select';\r\n\r\n/*-----------------------------------------------\r\n| Data table\r\n-----------------------------------------------*/\r\nconst dataTablesInit = () => {\r\n if (window.jQuery) {\r\n const $ = window.jQuery;\r\n\r\n const dataTables = $('[data-datatables]');\r\n const customDataTable = elem => {\r\n elem.find('.pagination').addClass('pagination-sm');\r\n };\r\n dataTables.length &&\r\n dataTables.each((index, value) => {\r\n const $this = $(value);\r\n const options = $.extend(\r\n {\r\n dom:\r\n \"<'row mx-0'<'col-md-6'l><'col-md-6'f>>\" +\r\n \"<'table-responsive scrollbar'tr>\" +\r\n \"<'row g-0 align-items-center justify-content-center justify-content-sm-between'<'col-auto mb-2 mb-sm-0 px-3'i><'col-auto px-3'p>>\"\r\n },\r\n $this.data('datatables')\r\n );\r\n $this.DataTable(options);\r\n bulkSelectInit();\r\n const $wrpper = $this.closest('.dt-container');\r\n customDataTable($wrpper);\r\n $this.on('draw.dt', () => customDataTable($wrpper));\r\n });\r\n }\r\n};\r\nexport default dataTablesInit;\r\n","/*-----------------------------------------------\r\n| Dashboard Table dropdown\r\n-----------------------------------------------*/\r\nconst dropdownMenuInit = () => {\r\n // Only for ios\r\n if (window.is.ios()) {\r\n const Event = {\r\n SHOWN_BS_DROPDOWN: 'shown.bs.dropdown',\r\n HIDDEN_BS_DROPDOWN: 'hidden.bs.dropdown'\r\n };\r\n const Selector = {\r\n TABLE_RESPONSIVE: '.table-responsive',\r\n DROPDOWN_MENU: '.dropdown-menu'\r\n };\r\n document.querySelectorAll(Selector.TABLE_RESPONSIVE).forEach(table => {\r\n table.addEventListener(Event.SHOWN_BS_DROPDOWN, e => {\r\n const t = e.currentTarget;\r\n if (t.scrollWidth > t.clientWidth) {\r\n t.style.paddingBottom = `${e.target.nextElementSibling.clientHeight}px`;\r\n }\r\n });\r\n table.addEventListener(Event.HIDDEN_BS_DROPDOWN, e => {\r\n e.currentTarget.style.paddingBottom = '';\r\n });\r\n });\r\n }\r\n};\r\n\r\n// Reference\r\n// https://github.com/twbs/bootstrap/issues/11037#issuecomment-274870381\r\n\r\nexport default dropdownMenuInit;\r\n","/* -------------------------------------------------------------------------- */\r\n/* Open dropdown on hover */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst dropdownOnHover = () => {\r\n const navbarArea = document.querySelector('[data-top-nav-dropdowns]');\r\n\r\n if (navbarArea) {\r\n navbarArea.addEventListener('mouseover', e => {\r\n if (e.target.className.includes('dropdown-toggle') && window.innerWidth > 992) {\r\n const dropdownInstance = new window.bootstrap.Dropdown(e.target);\r\n\r\n dropdownInstance._element.classList.add('show');\r\n dropdownInstance._menu.classList.add('show');\r\n dropdownInstance._menu.setAttribute('data-bs-popper', 'none');\r\n\r\n e.target.parentNode.addEventListener('mouseleave', () => {\r\n dropdownInstance.hide();\r\n });\r\n }\r\n });\r\n }\r\n};\r\n\r\nexport default dropdownOnHover;\r\n","import utils from './utils';\r\n\r\n/*-----------------------------------------------\r\n| Dropzone\r\n-----------------------------------------------*/\r\n\r\nwindow.Dropzone ? (window.Dropzone.autoDiscover = false) : '';\r\n\r\nconst dropzoneInit = () => {\r\n const { merge } = window._;\r\n\r\n const Selector = {\r\n DROPZONE: '[data-dropzone]',\r\n DZ_ERROR_MESSAGE: '.dz-error-message',\r\n DZ_PREVIEW: '.dz-preview',\r\n DZ_PROGRESS: '.dz-preview .dz-preview-cover .dz-progress',\r\n DZ_PREVIEW_COVER: '.dz-preview .dz-preview-cover'\r\n };\r\n\r\n const ClassName = {\r\n DZ_FILE_PROCESSING: 'dz-file-processing',\r\n DZ_FILE_COMPLETE: 'dz-file-complete',\r\n DZ_COMPLETE: 'dz-complete',\r\n DZ_PROCESSING: 'dz-processing'\r\n };\r\n\r\n const DATA_KEY = {\r\n OPTIONS: 'options'\r\n };\r\n\r\n const Events = {\r\n ADDED_FILE: 'addedfile',\r\n REMOVED_FILE: 'removedfile',\r\n COMPLETE: 'complete'\r\n };\r\n\r\n const dropzones = document.querySelectorAll(Selector.DROPZONE);\r\n\r\n !!dropzones.length &&\r\n dropzones.forEach(item => {\r\n let userOptions = utils.getData(item, DATA_KEY.OPTIONS);\r\n userOptions = userOptions || {};\r\n const data = userOptions.data ? userOptions.data : {};\r\n const options = merge(\r\n {\r\n url: '/assets/php/',\r\n addRemoveLinks: false,\r\n previewsContainer: item.querySelector(Selector.DZ_PREVIEW),\r\n previewTemplate: item.querySelector(Selector.DZ_PREVIEW).innerHTML,\r\n thumbnailWidth: null,\r\n thumbnailHeight: null,\r\n maxFilesize: 20,\r\n autoProcessQueue: false,\r\n filesizeBase: 1000,\r\n init: function init() {\r\n const thisDropzone = this;\r\n\r\n if (data.length) {\r\n data.forEach(v => {\r\n const mockFile = { name: v.name, size: v.size };\r\n thisDropzone.options.addedfile.call(thisDropzone, mockFile);\r\n thisDropzone.options.thumbnail.call(thisDropzone, mockFile, `${v.url}/${v.name}`);\r\n });\r\n }\r\n\r\n thisDropzone.on(Events.ADDED_FILE, function addedfile() {\r\n if ('maxFiles' in userOptions) {\r\n if (\r\n userOptions.maxFiles === 1 &&\r\n item.querySelectorAll(Selector.DZ_PREVIEW_COVER).length > 1\r\n ) {\r\n item.querySelector(Selector.DZ_PREVIEW_COVER).remove();\r\n }\r\n if (userOptions.maxFiles === 1 && this.files.length > 1) {\r\n this.removeFile(this.files[0]);\r\n }\r\n }\r\n });\r\n },\r\n error(file, message) {\r\n if (file.previewElement) {\r\n file.previewElement.classList.add('dz-error');\r\n if (typeof message !== 'string' && message.error) {\r\n message = message.error;\r\n }\r\n const errorNodes = Array.from(\r\n file.previewElement.querySelectorAll('[data-dz-errormessage]')\r\n );\r\n errorNodes.forEach(node => {\r\n node.textContent = message;\r\n });\r\n }\r\n }\r\n },\r\n userOptions\r\n );\r\n item.querySelector(Selector.DZ_PREVIEW).innerHTML = '';\r\n\r\n const dropzone = new window.Dropzone(item, options);\r\n\r\n dropzone.on(Events.ADDED_FILE, () => {\r\n if (item.querySelector(Selector.DZ_PREVIEW_COVER)) {\r\n item\r\n .querySelector(Selector.DZ_PREVIEW_COVER)\r\n .classList.remove(ClassName.DZ_FILE_COMPLETE);\r\n }\r\n item.classList.add(ClassName.DZ_FILE_PROCESSING);\r\n });\r\n dropzone.on(Events.REMOVED_FILE, () => {\r\n if (item.querySelector(Selector.DZ_PREVIEW_COVER)) {\r\n item.querySelector(Selector.DZ_PREVIEW_COVER).classList.remove(ClassName.DZ_PROCESSING);\r\n }\r\n item.classList.add(ClassName.DZ_FILE_COMPLETE);\r\n });\r\n dropzone.on(Events.COMPLETE, () => {\r\n if (item.querySelector(Selector.DZ_PREVIEW_COVER)) {\r\n item.querySelector(Selector.DZ_PREVIEW_COVER).classList.remove(ClassName.DZ_PROCESSING);\r\n }\r\n\r\n item.classList.add(ClassName.DZ_FILE_COMPLETE);\r\n });\r\n });\r\n};\r\n\r\nexport default dropzoneInit;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Popover */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst emojiMartInit = () => {\r\n const { Picker } = window.EmojiMart || {};\r\n if (Picker) {\r\n const emojiMartBtns = document.querySelectorAll('[data-emoji-mart]');\r\n if (emojiMartBtns) {\r\n Array.from(emojiMartBtns).forEach(btn => {\r\n const inputTarget = utils.getData(btn, 'emoji-mart-input-target');\r\n const input = document.querySelector(inputTarget);\r\n const picker = new Picker(\r\n window._.merge(utils.getData(btn, 'emoji-mart'), {\r\n previewPosition: 'none',\r\n skinTonePosition: 'none',\r\n onEmojiSelect: e => {\r\n if (input) input.innerHTML += e.native;\r\n },\r\n onClickOutside: e => {\r\n if (!picker.contains(e.target) && !btn.contains(e.target)) {\r\n picker.classList.add('d-none');\r\n }\r\n }\r\n })\r\n );\r\n\r\n picker.classList.add('d-none');\r\n btn.parentElement.appendChild(picker);\r\n\r\n btn.addEventListener('click', () => picker.classList.toggle('d-none'));\r\n });\r\n }\r\n }\r\n};\r\nexport default emojiMartInit;\r\n","import 'flatpickr/dist/l10n/bn';\r\nimport utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Flatpickr */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst defaultPredefinedRanges = [\r\n {\r\n id: 'today',\r\n label: 'Today',\r\n range: [new Date(new Date().setHours(0, 0, 0, 0)), new Date()]\r\n },\r\n {\r\n id: 'this_month',\r\n label: 'This Month',\r\n range: [\r\n new Date(new Date().getFullYear(), new Date().getMonth(), 1),\r\n new Date(new Date().getFullYear(), new Date().getMonth() + 1, 0)\r\n ]\r\n },\r\n {\r\n id: 'last_month',\r\n label: 'Last Month',\r\n range: [\r\n new Date(new Date().getFullYear(), new Date().getMonth() - 1, 1),\r\n new Date(new Date().getFullYear(), new Date().getMonth(), 0)\r\n ]\r\n },\r\n {\r\n id: 'last_7_days',\r\n label: 'Last 7 Days',\r\n range: [new Date(new Date().getTime() - 7 * 24 * 60 * 60 * 1000), new Date()]\r\n },\r\n {\r\n id: 'last_30_days',\r\n label: 'Last 30 Days',\r\n range: [new Date(new Date().getTime() - 30 * 24 * 60 * 60 * 1000), new Date()]\r\n }\r\n];\r\n\r\ndocument.querySelectorAll('.datetimepicker').forEach(item => {\r\n function applyUserRange(defaultRange, userRange) {\r\n const matchingDefault = defaultRange.find(\r\n mathItem => mathItem.id === Object.keys(userRange)[0]\r\n );\r\n return matchingDefault\r\n ? { ...matchingDefault, label: userRange[Object.keys(userRange)[0]] }\r\n : userRange;\r\n }\r\n\r\n function findDefaultRange(defaultRange, userRange) {\r\n return defaultRange.find(rangeItem => rangeItem.id === userRange) || null;\r\n }\r\n\r\n function generateRangeButtons(predefinedDefaultRanges, userDefinedRanges = []) {\r\n const normalizedUserRanges = Array.isArray(userDefinedRanges)\r\n ? userDefinedRanges\r\n : predefinedDefaultRanges;\r\n\r\n const mergedRanges = normalizedUserRanges\r\n .map(userRange => {\r\n if (typeof userRange === 'object') {\r\n return applyUserRange(predefinedDefaultRanges, userRange);\r\n }\r\n\r\n return findDefaultRange(predefinedDefaultRanges, userRange);\r\n })\r\n .filter(Boolean);\r\n\r\n return `\r\n \r\n `;\r\n }\r\n\r\n function appendRangeButtonsIfNotExists(calendarContainer, rangeButtonsHtml) {\r\n if (!calendarContainer.querySelector('.flatpickr-predefined-ranges')) {\r\n calendarContainer.insertAdjacentHTML('afterbegin', rangeButtonsHtml);\r\n }\r\n }\r\n\r\n function addRangeButtonClickListeners(instance, calendarContainer) {\r\n [...calendarContainer.querySelectorAll('[data-range]')].map(btn =>\r\n btn.addEventListener('click', () => {\r\n const startDate = new Date(utils.getData(btn, 'range').split(',')[0]);\r\n const endDate = new Date(utils.getData(btn, 'range').split(',')[1]);\r\n instance.setDate([startDate, endDate], true);\r\n instance.redraw();\r\n })\r\n );\r\n }\r\n\r\n function initializeFlatpickr(element, options) {\r\n function showPredefinedRanges(selectedDates, dateStr, instance) {\r\n const { calendarContainer } = instance;\r\n\r\n if (options.predefinedRanges) {\r\n calendarContainer.classList.add('predefinedRange');\r\n\r\n const rangeButtonsHtml = generateRangeButtons(\r\n defaultPredefinedRanges,\r\n options.predefinedRanges\r\n );\r\n appendRangeButtonsIfNotExists(calendarContainer, rangeButtonsHtml);\r\n\r\n addRangeButtonClickListeners(instance, calendarContainer);\r\n }\r\n }\r\n\r\n function hidePredefinedRanges(selectedDates, dateStr, instance) {\r\n if (options.predefinedRanges) {\r\n const { calendarContainer } = instance;\r\n calendarContainer.classList.remove('predefinedRange');\r\n }\r\n }\r\n\r\n const instance = window.flatpickr(element, {\r\n ...options,\r\n onOpen: showPredefinedRanges,\r\n onClose: hidePredefinedRanges\r\n });\r\n\r\n return instance;\r\n }\r\n\r\n const options = utils.getData(item, 'options');\r\n initializeFlatpickr(item, options);\r\n});\r\n","/* -------------------------------------------------------------------------- */\r\n/* from-validation */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst formValidationInit = () => {\r\n // Fetch all the forms we want to apply custom Bootstrap validation styles to\r\n const forms = document.querySelectorAll('.needs-validation');\r\n\r\n // Loop over them and prevent submission\r\n Array.prototype.slice.call(forms).forEach(form => {\r\n form.addEventListener(\r\n 'submit',\r\n event => {\r\n if (!form.checkValidity()) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n }\r\n\r\n form.classList.add('was-validated');\r\n },\r\n false\r\n );\r\n });\r\n};\r\n\r\nexport default formValidationInit;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* FullCalendar */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst { merge } = window._;\r\n\r\nconst renderCalendar = (el, option) => {\r\n const options = merge(\r\n {\r\n initialView: 'dayGridMonth',\r\n editable: true,\r\n direction: document.querySelector('html').getAttribute('dir'),\r\n headerToolbar: {\r\n left: 'prev,next today',\r\n center: 'title',\r\n right: 'dayGridMonth,timeGridWeek,timeGridDay'\r\n },\r\n buttonText: {\r\n month: 'Month',\r\n week: 'Week',\r\n day: 'Day'\r\n }\r\n },\r\n option\r\n );\r\n const calendar = new window.FullCalendar.Calendar(el, options);\r\n calendar.render();\r\n document\r\n .querySelector('.navbar-vertical-toggle')\r\n ?.addEventListener('navbar.vertical.toggle', () => calendar.updateSize());\r\n return calendar;\r\n};\r\n\r\nconst fullCalendarInit = () => {\r\n const calendars = document.querySelectorAll('[data-calendar]');\r\n calendars.forEach(item => {\r\n const options = utils.getData(item, 'calendar');\r\n renderCalendar(item, options);\r\n });\r\n};\r\n\r\nconst fullCalendar = {\r\n renderCalendar,\r\n fullCalendarInit\r\n};\r\nexport default fullCalendar;\r\n","/* -------------------------------------------------------------------------- */\r\n/* Glightbox */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst glightboxInit = () => {\r\n if (window.GLightbox) {\r\n window.GLightbox({\r\n selector: '[data-gallery]'\r\n });\r\n }\r\n};\r\nexport default glightboxInit;\r\n","import utils from './utils';\r\n/*-----------------------------------------------\r\n| Gooogle Map\r\n-----------------------------------------------*/\r\n\r\nfunction initMap() {\r\n const themeController = document.body;\r\n const $googlemaps = document.querySelectorAll('.googlemap');\r\n\r\n if ($googlemaps.length && window.google) {\r\n // Visit https://snazzymaps.com/ for more themes\r\n const mapStyles = {\r\n Default: [\r\n {\r\n featureType: 'water',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#e9e9e9' }, { lightness: 17 }]\r\n },\r\n {\r\n featureType: 'landscape',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#f5f5f5' }, { lightness: 20 }]\r\n },\r\n {\r\n featureType: 'road.highway',\r\n elementType: 'geometry.fill',\r\n stylers: [{ color: '#ffffff' }, { lightness: 17 }]\r\n },\r\n {\r\n featureType: 'road.highway',\r\n elementType: 'geometry.stroke',\r\n stylers: [{ color: '#ffffff' }, { lightness: 29 }, { weight: 0.2 }]\r\n },\r\n {\r\n featureType: 'road.arterial',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#ffffff' }, { lightness: 18 }]\r\n },\r\n {\r\n featureType: 'road.local',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#ffffff' }, { lightness: 16 }]\r\n },\r\n {\r\n featureType: 'poi',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#f5f5f5' }, { lightness: 21 }]\r\n },\r\n {\r\n featureType: 'poi.park',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#dedede' }, { lightness: 21 }]\r\n },\r\n {\r\n elementType: 'labels.text.stroke',\r\n stylers: [{ visibility: 'on' }, { color: '#ffffff' }, { lightness: 16 }]\r\n },\r\n {\r\n elementType: 'labels.text.fill',\r\n stylers: [{ saturation: 36 }, { color: '#333333' }, { lightness: 40 }]\r\n },\r\n { elementType: 'labels.icon', stylers: [{ visibility: 'off' }] },\r\n {\r\n featureType: 'transit',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#f2f2f2' }, { lightness: 19 }]\r\n },\r\n {\r\n featureType: 'administrative',\r\n elementType: 'geometry.fill',\r\n stylers: [{ color: '#fefefe' }, { lightness: 20 }]\r\n },\r\n {\r\n featureType: 'administrative',\r\n elementType: 'geometry.stroke',\r\n stylers: [{ color: '#fefefe' }, { lightness: 17 }, { weight: 1.2 }]\r\n }\r\n ],\r\n Gray: [\r\n {\r\n featureType: 'all',\r\n elementType: 'labels.text.fill',\r\n stylers: [{ saturation: 36 }, { color: '#000000' }, { lightness: 40 }]\r\n },\r\n {\r\n featureType: 'all',\r\n elementType: 'labels.text.stroke',\r\n stylers: [{ visibility: 'on' }, { color: '#000000' }, { lightness: 16 }]\r\n },\r\n {\r\n featureType: 'all',\r\n elementType: 'labels.icon',\r\n stylers: [{ visibility: 'off' }]\r\n },\r\n {\r\n featureType: 'administrative',\r\n elementType: 'geometry.fill',\r\n stylers: [{ color: '#000000' }, { lightness: 20 }]\r\n },\r\n {\r\n featureType: 'administrative',\r\n elementType: 'geometry.stroke',\r\n stylers: [{ color: '#000000' }, { lightness: 17 }, { weight: 1.2 }]\r\n },\r\n {\r\n featureType: 'landscape',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#000000' }, { lightness: 20 }]\r\n },\r\n {\r\n featureType: 'poi',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#000000' }, { lightness: 21 }]\r\n },\r\n {\r\n featureType: 'road.highway',\r\n elementType: 'geometry.fill',\r\n stylers: [{ color: '#000000' }, { lightness: 17 }]\r\n },\r\n {\r\n featureType: 'road.highway',\r\n elementType: 'geometry.stroke',\r\n stylers: [{ color: '#000000' }, { lightness: 29 }, { weight: 0.2 }]\r\n },\r\n {\r\n featureType: 'road.arterial',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#000000' }, { lightness: 18 }]\r\n },\r\n {\r\n featureType: 'road.local',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#000000' }, { lightness: 16 }]\r\n },\r\n {\r\n featureType: 'transit',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#000000' }, { lightness: 19 }]\r\n },\r\n {\r\n featureType: 'water',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#000000' }, { lightness: 17 }]\r\n }\r\n ],\r\n Midnight: [\r\n {\r\n featureType: 'all',\r\n elementType: 'labels.text.fill',\r\n stylers: [{ color: '#ffffff' }]\r\n },\r\n {\r\n featureType: 'all',\r\n elementType: 'labels.text.stroke',\r\n stylers: [{ color: '#000000' }, { lightness: 13 }]\r\n },\r\n {\r\n featureType: 'administrative',\r\n elementType: 'geometry.fill',\r\n stylers: [{ color: '#000000' }]\r\n },\r\n {\r\n featureType: 'administrative',\r\n elementType: 'geometry.stroke',\r\n stylers: [{ color: '#144b53' }, { lightness: 14 }, { weight: 1.4 }]\r\n },\r\n {\r\n featureType: 'landscape',\r\n elementType: 'all',\r\n stylers: [{ color: '#08304b' }]\r\n },\r\n {\r\n featureType: 'poi',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#0c4152' }, { lightness: 5 }]\r\n },\r\n {\r\n featureType: 'road.highway',\r\n elementType: 'geometry.fill',\r\n stylers: [{ color: '#000000' }]\r\n },\r\n {\r\n featureType: 'road.highway',\r\n elementType: 'geometry.stroke',\r\n stylers: [{ color: '#0b434f' }, { lightness: 25 }]\r\n },\r\n {\r\n featureType: 'road.arterial',\r\n elementType: 'geometry.fill',\r\n stylers: [{ color: '#000000' }]\r\n },\r\n {\r\n featureType: 'road.arterial',\r\n elementType: 'geometry.stroke',\r\n stylers: [{ color: '#0b3d51' }, { lightness: 16 }]\r\n },\r\n {\r\n featureType: 'road.local',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#000000' }]\r\n },\r\n {\r\n featureType: 'transit',\r\n elementType: 'all',\r\n stylers: [{ color: '#146474' }]\r\n },\r\n {\r\n featureType: 'water',\r\n elementType: 'all',\r\n stylers: [{ color: '#021019' }]\r\n }\r\n ],\r\n Hopper: [\r\n {\r\n featureType: 'water',\r\n elementType: 'geometry',\r\n stylers: [\r\n { hue: '#165c64' },\r\n { saturation: 34 },\r\n { lightness: -69 },\r\n { visibility: 'on' }\r\n ]\r\n },\r\n {\r\n featureType: 'landscape',\r\n elementType: 'geometry',\r\n stylers: [\r\n { hue: '#b7caaa' },\r\n { saturation: -14 },\r\n { lightness: -18 },\r\n { visibility: 'on' }\r\n ]\r\n },\r\n {\r\n featureType: 'landscape.man_made',\r\n elementType: 'all',\r\n stylers: [{ hue: '#cbdac1' }, { saturation: -6 }, { lightness: -9 }, { visibility: 'on' }]\r\n },\r\n {\r\n featureType: 'road',\r\n elementType: 'geometry',\r\n stylers: [\r\n { hue: '#8d9b83' },\r\n { saturation: -89 },\r\n { lightness: -12 },\r\n { visibility: 'on' }\r\n ]\r\n },\r\n {\r\n featureType: 'road.highway',\r\n elementType: 'geometry',\r\n stylers: [\r\n { hue: '#d4dad0' },\r\n { saturation: -88 },\r\n { lightness: 54 },\r\n { visibility: 'simplified' }\r\n ]\r\n },\r\n {\r\n featureType: 'road.arterial',\r\n elementType: 'geometry',\r\n stylers: [\r\n { hue: '#bdc5b6' },\r\n { saturation: -89 },\r\n { lightness: -3 },\r\n { visibility: 'simplified' }\r\n ]\r\n },\r\n {\r\n featureType: 'road.local',\r\n elementType: 'geometry',\r\n stylers: [\r\n { hue: '#bdc5b6' },\r\n { saturation: -89 },\r\n { lightness: -26 },\r\n { visibility: 'on' }\r\n ]\r\n },\r\n {\r\n featureType: 'poi',\r\n elementType: 'geometry',\r\n stylers: [\r\n { hue: '#c17118' },\r\n { saturation: 61 },\r\n { lightness: -45 },\r\n { visibility: 'on' }\r\n ]\r\n },\r\n {\r\n featureType: 'poi.park',\r\n elementType: 'all',\r\n stylers: [\r\n { hue: '#8ba975' },\r\n { saturation: -46 },\r\n { lightness: -28 },\r\n { visibility: 'on' }\r\n ]\r\n },\r\n {\r\n featureType: 'transit',\r\n elementType: 'geometry',\r\n stylers: [\r\n { hue: '#a43218' },\r\n { saturation: 74 },\r\n { lightness: -51 },\r\n { visibility: 'simplified' }\r\n ]\r\n },\r\n {\r\n featureType: 'administrative.province',\r\n elementType: 'all',\r\n stylers: [\r\n { hue: '#ffffff' },\r\n { saturation: 0 },\r\n { lightness: 100 },\r\n { visibility: 'simplified' }\r\n ]\r\n },\r\n {\r\n featureType: 'administrative.neighborhood',\r\n elementType: 'all',\r\n stylers: [\r\n { hue: '#ffffff' },\r\n { saturation: 0 },\r\n { lightness: 100 },\r\n { visibility: 'off' }\r\n ]\r\n },\r\n {\r\n featureType: 'administrative.locality',\r\n elementType: 'labels',\r\n stylers: [\r\n { hue: '#ffffff' },\r\n { saturation: 0 },\r\n { lightness: 100 },\r\n { visibility: 'off' }\r\n ]\r\n },\r\n {\r\n featureType: 'administrative.land_parcel',\r\n elementType: 'all',\r\n stylers: [\r\n { hue: '#ffffff' },\r\n { saturation: 0 },\r\n { lightness: 100 },\r\n { visibility: 'off' }\r\n ]\r\n },\r\n {\r\n featureType: 'administrative',\r\n elementType: 'all',\r\n stylers: [\r\n { hue: '#3a3935' },\r\n { saturation: 5 },\r\n { lightness: -57 },\r\n { visibility: 'off' }\r\n ]\r\n },\r\n {\r\n featureType: 'poi.medical',\r\n elementType: 'geometry',\r\n stylers: [\r\n { hue: '#cba923' },\r\n { saturation: 50 },\r\n { lightness: -46 },\r\n { visibility: 'on' }\r\n ]\r\n }\r\n ],\r\n Beard: [\r\n {\r\n featureType: 'poi.business',\r\n elementType: 'labels.text',\r\n stylers: [{ visibility: 'on' }, { color: '#333333' }]\r\n }\r\n ],\r\n AssassianCreed: [\r\n {\r\n featureType: 'all',\r\n elementType: 'all',\r\n stylers: [{ visibility: 'on' }]\r\n },\r\n {\r\n featureType: 'all',\r\n elementType: 'labels',\r\n stylers: [{ visibility: 'off' }, { saturation: '-100' }]\r\n },\r\n {\r\n featureType: 'all',\r\n elementType: 'labels.text.fill',\r\n stylers: [\r\n { saturation: 36 },\r\n { color: '#000000' },\r\n { lightness: 40 },\r\n { visibility: 'off' }\r\n ]\r\n },\r\n {\r\n featureType: 'all',\r\n elementType: 'labels.text.stroke',\r\n stylers: [{ visibility: 'off' }, { color: '#000000' }, { lightness: 16 }]\r\n },\r\n {\r\n featureType: 'all',\r\n elementType: 'labels.icon',\r\n stylers: [{ visibility: 'off' }]\r\n },\r\n {\r\n featureType: 'administrative',\r\n elementType: 'geometry.fill',\r\n stylers: [{ color: '#000000' }, { lightness: 20 }]\r\n },\r\n {\r\n featureType: 'administrative',\r\n elementType: 'geometry.stroke',\r\n stylers: [{ color: '#000000' }, { lightness: 17 }, { weight: 1.2 }]\r\n },\r\n {\r\n featureType: 'landscape',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#000000' }, { lightness: 20 }]\r\n },\r\n {\r\n featureType: 'landscape',\r\n elementType: 'geometry.fill',\r\n stylers: [{ color: '#4d6059' }]\r\n },\r\n {\r\n featureType: 'landscape',\r\n elementType: 'geometry.stroke',\r\n stylers: [{ color: '#4d6059' }]\r\n },\r\n {\r\n featureType: 'landscape.natural',\r\n elementType: 'geometry.fill',\r\n stylers: [{ color: '#4d6059' }]\r\n },\r\n {\r\n featureType: 'poi',\r\n elementType: 'geometry',\r\n stylers: [{ lightness: 21 }]\r\n },\r\n {\r\n featureType: 'poi',\r\n elementType: 'geometry.fill',\r\n stylers: [{ color: '#4d6059' }]\r\n },\r\n {\r\n featureType: 'poi',\r\n elementType: 'geometry.stroke',\r\n stylers: [{ color: '#4d6059' }]\r\n },\r\n {\r\n featureType: 'road',\r\n elementType: 'geometry',\r\n stylers: [{ visibility: 'on' }, { color: '#7f8d89' }]\r\n },\r\n {\r\n featureType: 'road',\r\n elementType: 'geometry.fill',\r\n stylers: [{ color: '#7f8d89' }]\r\n },\r\n {\r\n featureType: 'road.highway',\r\n elementType: 'geometry.fill',\r\n stylers: [{ color: '#7f8d89' }, { lightness: 17 }]\r\n },\r\n {\r\n featureType: 'road.highway',\r\n elementType: 'geometry.stroke',\r\n stylers: [{ color: '#7f8d89' }, { lightness: 29 }, { weight: 0.2 }]\r\n },\r\n {\r\n featureType: 'road.arterial',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#000000' }, { lightness: 18 }]\r\n },\r\n {\r\n featureType: 'road.arterial',\r\n elementType: 'geometry.fill',\r\n stylers: [{ color: '#7f8d89' }]\r\n },\r\n {\r\n featureType: 'road.arterial',\r\n elementType: 'geometry.stroke',\r\n stylers: [{ color: '#7f8d89' }]\r\n },\r\n {\r\n featureType: 'road.local',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#000000' }, { lightness: 16 }]\r\n },\r\n {\r\n featureType: 'road.local',\r\n elementType: 'geometry.fill',\r\n stylers: [{ color: '#7f8d89' }]\r\n },\r\n {\r\n featureType: 'road.local',\r\n elementType: 'geometry.stroke',\r\n stylers: [{ color: '#7f8d89' }]\r\n },\r\n {\r\n featureType: 'transit',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#000000' }, { lightness: 19 }]\r\n },\r\n {\r\n featureType: 'water',\r\n elementType: 'all',\r\n stylers: [{ color: '#2b3638' }, { visibility: 'on' }]\r\n },\r\n {\r\n featureType: 'water',\r\n elementType: 'geometry',\r\n stylers: [{ color: '#2b3638' }, { lightness: 17 }]\r\n },\r\n {\r\n featureType: 'water',\r\n elementType: 'geometry.fill',\r\n stylers: [{ color: '#24282b' }]\r\n },\r\n {\r\n featureType: 'water',\r\n elementType: 'geometry.stroke',\r\n stylers: [{ color: '#24282b' }]\r\n },\r\n {\r\n featureType: 'water',\r\n elementType: 'labels',\r\n stylers: [{ visibility: 'off' }]\r\n },\r\n {\r\n featureType: 'water',\r\n elementType: 'labels.text',\r\n stylers: [{ visibility: 'off ' }]\r\n },\r\n {\r\n featureType: 'water',\r\n elementType: 'labels.text.fill',\r\n stylers: [{ visibility: 'off' }]\r\n },\r\n {\r\n featureType: 'water',\r\n elementType: 'labels.text.stroke',\r\n stylers: [{ visibility: 'off' }]\r\n },\r\n {\r\n featureType: 'water',\r\n elementType: 'labels.icon',\r\n stylers: [{ visibility: 'off' }]\r\n }\r\n ],\r\n SubtleGray: [\r\n {\r\n featureType: 'administrative',\r\n elementType: 'all',\r\n stylers: [{ saturation: '-100' }]\r\n },\r\n {\r\n featureType: 'administrative.province',\r\n elementType: 'all',\r\n stylers: [{ visibility: 'off' }]\r\n },\r\n {\r\n featureType: 'landscape',\r\n elementType: 'all',\r\n stylers: [{ saturation: -100 }, { lightness: 65 }, { visibility: 'on' }]\r\n },\r\n {\r\n featureType: 'poi',\r\n elementType: 'all',\r\n stylers: [{ saturation: -100 }, { lightness: '50' }, { visibility: 'simplified' }]\r\n },\r\n {\r\n featureType: 'road',\r\n elementType: 'all',\r\n stylers: [{ saturation: -100 }]\r\n },\r\n {\r\n featureType: 'road.highway',\r\n elementType: 'all',\r\n stylers: [{ visibility: 'simplified' }]\r\n },\r\n {\r\n featureType: 'road.arterial',\r\n elementType: 'all',\r\n stylers: [{ lightness: '30' }]\r\n },\r\n {\r\n featureType: 'road.local',\r\n elementType: 'all',\r\n stylers: [{ lightness: '40' }]\r\n },\r\n {\r\n featureType: 'transit',\r\n elementType: 'all',\r\n stylers: [{ saturation: -100 }, { visibility: 'simplified' }]\r\n },\r\n {\r\n featureType: 'water',\r\n elementType: 'geometry',\r\n stylers: [{ hue: '#ffff00' }, { lightness: -25 }, { saturation: -97 }]\r\n },\r\n {\r\n featureType: 'water',\r\n elementType: 'labels',\r\n stylers: [{ lightness: -25 }, { saturation: -100 }]\r\n }\r\n ],\r\n Tripitty: [\r\n {\r\n featureType: 'all',\r\n elementType: 'labels',\r\n stylers: [{ visibility: 'off' }]\r\n },\r\n {\r\n featureType: 'administrative',\r\n elementType: 'all',\r\n stylers: [{ visibility: 'off' }]\r\n },\r\n {\r\n featureType: 'landscape',\r\n elementType: 'all',\r\n stylers: [{ color: '#2c5ca5' }]\r\n },\r\n {\r\n featureType: 'poi',\r\n elementType: 'all',\r\n stylers: [{ color: '#2c5ca5' }]\r\n },\r\n {\r\n featureType: 'road',\r\n elementType: 'all',\r\n stylers: [{ visibility: 'off' }]\r\n },\r\n {\r\n featureType: 'transit',\r\n elementType: 'all',\r\n stylers: [{ visibility: 'off' }]\r\n },\r\n {\r\n featureType: 'water',\r\n elementType: 'all',\r\n stylers: [{ color: '#193a70' }, { visibility: 'on' }]\r\n }\r\n ],\r\n Cobalt: [\r\n {\r\n featureType: 'all',\r\n elementType: 'all',\r\n stylers: [\r\n {\r\n invert_lightness: true\r\n },\r\n {\r\n saturation: 10\r\n },\r\n {\r\n lightness: 30\r\n },\r\n {\r\n gamma: 0.5\r\n },\r\n {\r\n hue: '#435158'\r\n }\r\n ]\r\n }\r\n ]\r\n };\r\n\r\n $googlemaps.forEach(itm => {\r\n const latLng = utils.getData(itm, 'latlng').split(',');\r\n const markerPopup = itm.innerHTML;\r\n const icon = utils.getData(itm, 'icon')\r\n ? utils.getData(itm, 'icon')\r\n : 'https://maps.gstatic.com/mapfiles/api-3/images/spotlight-poi.png';\r\n const zoom = utils.getData(itm, 'zoom');\r\n const mapElement = itm;\r\n const mapStyle = utils.getData(itm, 'theme');\r\n\r\n if (utils.getData(itm, 'theme') === 'streetview') {\r\n const pov = utils.getData(itm, 'pov');\r\n const mapOptions = {\r\n position: { lat: Number(latLng[0]), lng: Number(latLng[1]) },\r\n pov,\r\n zoom,\r\n gestureHandling: 'none',\r\n scrollwheel: false\r\n };\r\n\r\n return new window.google.maps.StreetViewPanorama(mapElement, mapOptions);\r\n }\r\n\r\n const mapOptions = {\r\n zoom,\r\n scrollwheel: utils.getData(itm, 'scrollwheel'),\r\n center: new window.google.maps.LatLng(latLng[0], latLng[1]),\r\n styles: utils.isDark() === 'dark' ? mapStyles.Cobalt : mapStyles[mapStyle]\r\n };\r\n\r\n const map = new window.google.maps.Map(mapElement, mapOptions);\r\n const infowindow = new window.google.maps.InfoWindow({\r\n content: markerPopup\r\n });\r\n const marker = new window.google.maps.Marker({\r\n position: new window.google.maps.LatLng(latLng[0], latLng[1]),\r\n icon,\r\n map\r\n });\r\n\r\n marker.addListener('click', () => {\r\n infowindow.open(map, marker);\r\n });\r\n\r\n themeController &&\r\n themeController.addEventListener('clickControl', ({ detail: { control, value } }) => {\r\n if (control === 'theme') {\r\n map.set('styles', value === 'dark' ? mapStyles.Cobalt : mapStyles[mapStyle]);\r\n }\r\n });\r\n return null;\r\n });\r\n }\r\n}\r\n\r\nexport default initMap;\r\n","const hideOnCollapseInit = () => {\r\n const previewMailForm = document.querySelector('#previewMailForm');\r\n const previewFooter = document.querySelector('#preview-footer');\r\n if (previewMailForm) {\r\n previewMailForm.addEventListener('show.bs.collapse', () => {\r\n previewFooter.classList.add('d-none');\r\n });\r\n }\r\n};\r\n\r\nexport default hideOnCollapseInit;\r\n","/* -------------------------------------------------------------------------- */\r\n/* Icon copy to clipboard */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst iconCopiedInit = () => {\r\n const iconList = document.getElementById('icon-list');\r\n const iconCopiedToast = document.getElementById('icon-copied-toast');\r\n const iconCopiedToastInstance = new window.bootstrap.Toast(iconCopiedToast);\r\n\r\n if (iconList) {\r\n iconList.addEventListener('click', e => {\r\n const el = e.target;\r\n if (el.tagName === 'INPUT') {\r\n el.select();\r\n el.setSelectionRange(0, 99999);\r\n document.execCommand('copy');\r\n iconCopiedToast.querySelector('.toast-body').innerHTML =\r\n `Copied: ${el.value}`;\r\n iconCopiedToastInstance.show();\r\n }\r\n });\r\n }\r\n};\r\n\r\nexport default iconCopiedInit;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Inputmask */\r\n/* -------------------------------------------------------------------------- */\r\nconst inputmaskInit = () => {\r\n if (window.Inputmask) {\r\n const elements = document.querySelectorAll('[data-input-mask]');\r\n elements.forEach(item => {\r\n const userOptions = utils.getData(item, 'input-mask');\r\n const defaultOptions = {\r\n showMaskOnFocus: false,\r\n showMaskOnHover: false,\r\n jitMasking: true\r\n };\r\n const maskOptions = window._.merge(defaultOptions, userOptions);\r\n const inputmask = new window.Inputmask({\r\n ...maskOptions\r\n }).mask(item);\r\n\r\n return inputmask;\r\n });\r\n }\r\n};\r\n\r\nexport default inputmaskInit;\r\n","/* -------------------------------------------------------------------------- */\r\n/* Kanbah */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nimport utils from './utils';\r\n\r\nconst kanbanInit = () => {\r\n const Selectors = {\r\n KANBAN_COLUMN: '.kanban-column',\r\n KANBAN_ITEMS_CONTAINER: '.kanban-items-container',\r\n BTN_ADD_CARD: '.btn-add-card',\r\n COLLAPSE: '.collapse',\r\n ADD_LIST_FORM: '#addListForm',\r\n BTN_COLLAPSE_DISMISS: '[data-dismiss=\"collapse\"]',\r\n BTN_FORM_HIDE: '[data-btn-form=\"hide\"]',\r\n INPUT_ADD_CARD: '[data-input=\"add-card\"]',\r\n INPUT_ADD_LIST: '[data-input=\"add-list\"]'\r\n };\r\n\r\n const ClassNames = {\r\n FORM_ADDED: 'form-added',\r\n D_NONE: 'd-none'\r\n };\r\n\r\n const Events = {\r\n CLICK: 'click',\r\n SHOW_BS_COLLAPSE: 'show.bs.collapse',\r\n SHOWN_BS_COLLAPSE: 'shown.bs.collapse'\r\n };\r\n\r\n const addCardButtons = document.querySelectorAll(Selectors.BTN_ADD_CARD);\r\n const formHideButtons = document.querySelectorAll(Selectors.BTN_FORM_HIDE);\r\n const addListForm = document.querySelector(Selectors.ADD_LIST_FORM);\r\n const collapseDismissButtons = document.querySelectorAll(Selectors.BTN_COLLAPSE_DISMISS);\r\n\r\n // Show add card form and place scrollbar bottom of the list\r\n addCardButtons &&\r\n addCardButtons.forEach(button => {\r\n button.addEventListener(Events.CLICK, ({ currentTarget: el }) => {\r\n const column = el.closest(Selectors.KANBAN_COLUMN);\r\n const container = column.querySelector(Selectors.KANBAN_ITEMS_CONTAINER);\r\n const { scrollHeight } = container;\r\n\r\n column.classList.add(ClassNames.FORM_ADDED);\r\n container.querySelector(Selectors.INPUT_ADD_CARD).focus();\r\n container.scrollTo({ top: scrollHeight });\r\n });\r\n });\r\n\r\n // Remove add card form\r\n formHideButtons.forEach(button => {\r\n button.addEventListener(Events.CLICK, ({ currentTarget: el }) => {\r\n el.closest(Selectors.KANBAN_COLUMN).classList.remove(ClassNames.FORM_ADDED);\r\n });\r\n });\r\n\r\n if (addListForm) {\r\n // Hide add list button when the form is going to show\r\n addListForm.addEventListener(Events.SHOW_BS_COLLAPSE, ({ currentTarget: el }) => {\r\n const nextElement = el.nextElementSibling;\r\n nextElement && nextElement.classList.add(ClassNames.D_NONE);\r\n });\r\n\r\n // Focus input field when the form is shown\r\n addListForm.addEventListener(Events.SHOWN_BS_COLLAPSE, ({ currentTarget: el }) => {\r\n el.querySelector(Selectors.INPUT_ADD_LIST).focus();\r\n });\r\n }\r\n\r\n // Hide add list form when the dismiss button is clicked\r\n collapseDismissButtons.forEach(button => {\r\n button.addEventListener(Events.CLICK, ({ currentTarget: el }) => {\r\n const collapseElement = el.closest(Selectors.COLLAPSE);\r\n const collapse = window.bootstrap.Collapse.getInstance(collapseElement);\r\n\r\n utils.hasClass(collapseElement.nextElementSibling, ClassNames.D_NONE) &&\r\n collapseElement.nextElementSibling.classList.remove(ClassNames.D_NONE);\r\n collapse.hide();\r\n });\r\n });\r\n};\r\n\r\nexport default kanbanInit;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* leaflet */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst leafletActiveUserInit = () => {\r\n const points = [\r\n {\r\n lat: 53.958332,\r\n long: -1.080278,\r\n name: 'Diana Meyer',\r\n street: 'Slude Strand 27',\r\n location: '1130 Kobenhavn'\r\n },\r\n {\r\n lat: 52.958332,\r\n long: -1.080278,\r\n name: 'Diana Meyer',\r\n street: 'Slude Strand 27',\r\n location: '1130 Kobenhavn'\r\n },\r\n {\r\n lat: 51.958332,\r\n long: -1.080278,\r\n name: 'Diana Meyer',\r\n street: 'Slude Strand 27',\r\n location: '1130 Kobenhavn'\r\n },\r\n {\r\n lat: 53.958332,\r\n long: -1.080278,\r\n name: 'Diana Meyer',\r\n street: 'Slude Strand 27',\r\n location: '1130 Kobenhavn'\r\n },\r\n {\r\n lat: 54.958332,\r\n long: -1.080278,\r\n name: 'Diana Meyer',\r\n street: 'Slude Strand 27',\r\n location: '1130 Kobenhavn'\r\n },\r\n {\r\n lat: 55.958332,\r\n long: -1.080278,\r\n name: 'Diana Meyer',\r\n street: 'Slude Strand 27',\r\n location: '1130 Kobenhavn'\r\n },\r\n {\r\n lat: 53.908332,\r\n long: -1.080278,\r\n name: 'Diana Meyer',\r\n street: 'Slude Strand 27',\r\n location: '1130 Kobenhavn'\r\n },\r\n {\r\n lat: 53.008332,\r\n long: -1.080278,\r\n name: 'Diana Meyer',\r\n street: 'Slude Strand 27',\r\n location: '1130 Kobenhavn'\r\n },\r\n {\r\n lat: 53.158332,\r\n long: -1.080278,\r\n name: 'Diana Meyer',\r\n street: 'Slude Strand 27',\r\n location: '1130 Kobenhavn'\r\n },\r\n {\r\n lat: 53.000032,\r\n long: -1.080278,\r\n name: 'Diana Meyer',\r\n street: 'Slude Strand 27',\r\n location: '1130 Kobenhavn'\r\n },\r\n {\r\n lat: 52.292001,\r\n long: -2.22,\r\n name: 'Anke Schroder',\r\n street: 'Industrivej 54',\r\n location: '4140 Borup'\r\n },\r\n {\r\n lat: 52.392001,\r\n long: -2.22,\r\n name: 'Anke Schroder',\r\n street: 'Industrivej 54',\r\n location: '4140 Borup'\r\n },\r\n {\r\n lat: 51.492001,\r\n long: -2.22,\r\n name: 'Anke Schroder',\r\n street: 'Industrivej 54',\r\n location: '4140 Borup'\r\n },\r\n {\r\n lat: 51.192001,\r\n long: -2.22,\r\n name: 'Anke Schroder',\r\n street: 'Industrivej 54',\r\n location: '4140 Borup'\r\n },\r\n {\r\n lat: 52.292001,\r\n long: -2.22,\r\n name: 'Anke Schroder',\r\n street: 'Industrivej 54',\r\n location: '4140 Borup'\r\n },\r\n {\r\n lat: 54.392001,\r\n long: -2.22,\r\n name: 'Anke Schroder',\r\n street: 'Industrivej 54',\r\n location: '4140 Borup'\r\n },\r\n {\r\n lat: 51.292001,\r\n long: -2.22,\r\n name: 'Anke Schroder',\r\n street: 'Industrivej 54',\r\n location: '4140 Borup'\r\n },\r\n {\r\n lat: 52.102001,\r\n long: -2.22,\r\n name: 'Anke Schroder',\r\n street: 'Industrivej 54',\r\n location: '4140 Borup'\r\n },\r\n {\r\n lat: 52.202001,\r\n long: -2.22,\r\n name: 'Anke Schroder',\r\n street: 'Industrivej 54',\r\n location: '4140 Borup'\r\n },\r\n {\r\n lat: 51.063202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 51.363202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 51.463202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 51.563202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 51.763202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 51.863202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 51.963202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 51.000202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 51.000202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 51.163202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 52.263202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 53.463202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 55.163202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 56.263202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 56.463202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 56.563202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 56.663202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 56.763202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 56.863202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 56.963202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 57.973202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 57.163202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 51.163202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 51.263202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 51.363202,\r\n long: -1.308,\r\n name: 'Tobias Vogel',\r\n street: 'Mollebakken 33',\r\n location: '3650 Olstykke'\r\n },\r\n {\r\n lat: 51.409,\r\n long: -2.647,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.68,\r\n long: -1.49,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 50.259998,\r\n long: -5.051,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 54.906101,\r\n long: -1.38113,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.383331,\r\n long: -1.466667,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.483002,\r\n long: -2.2931,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 51.509865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 51.109865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 51.209865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 51.309865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 51.409865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 51.609865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 51.709865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 51.809865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 51.909865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 52.109865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 52.209865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 52.309865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 52.409865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 52.509865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 52.609865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 52.709865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 52.809865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 52.909865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 52.519865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 52.529865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 52.539865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.549865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 52.549865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.109865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.209865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.319865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.329865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.409865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.559865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.619865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.629865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.639865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.649865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.669865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.669865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.719865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.739865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.749865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.759865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.769865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.769865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.819865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.829865,\r\n long: -0.118092,\r\n name: 'Richard Hendricks',\r\n street: '37 Seafield Place',\r\n location: 'London'\r\n },\r\n {\r\n lat: 53.483959,\r\n long: -2.244644,\r\n name: 'Ethel B. Brooks',\r\n street: '2576 Sun Valley Road'\r\n },\r\n {\r\n lat: 40.737,\r\n long: -73.923,\r\n name: 'Marshall D. Lewis',\r\n street: '1489 Michigan Avenue',\r\n location: 'Michigan'\r\n },\r\n {\r\n lat: 39.737,\r\n long: -73.923,\r\n name: 'Marshall D. Lewis',\r\n street: '1489 Michigan Avenue',\r\n location: 'Michigan'\r\n },\r\n {\r\n lat: 38.737,\r\n long: -73.923,\r\n name: 'Marshall D. Lewis',\r\n street: '1489 Michigan Avenue',\r\n location: 'Michigan'\r\n },\r\n {\r\n lat: 37.737,\r\n long: -73.923,\r\n name: 'Marshall D. Lewis',\r\n street: '1489 Michigan Avenue',\r\n location: 'Michigan'\r\n },\r\n {\r\n lat: 40.737,\r\n long: -73.923,\r\n name: 'Marshall D. Lewis',\r\n street: '1489 Michigan Avenue',\r\n location: 'Michigan'\r\n },\r\n {\r\n lat: 41.737,\r\n long: -73.923,\r\n name: 'Marshall D. Lewis',\r\n street: '1489 Michigan Avenue',\r\n location: 'Michigan'\r\n },\r\n {\r\n lat: 42.737,\r\n long: -73.923,\r\n name: 'Marshall D. Lewis',\r\n street: '1489 Michigan Avenue',\r\n location: 'Michigan'\r\n },\r\n {\r\n lat: 43.737,\r\n long: -73.923,\r\n name: 'Marshall D. Lewis',\r\n street: '1489 Michigan Avenue',\r\n location: 'Michigan'\r\n },\r\n {\r\n lat: 44.737,\r\n long: -73.923,\r\n name: 'Marshall D. Lewis',\r\n street: '1489 Michigan Avenue',\r\n location: 'Michigan'\r\n },\r\n {\r\n lat: 45.737,\r\n long: -73.923,\r\n name: 'Marshall D. Lewis',\r\n street: '1489 Michigan Avenue',\r\n location: 'Michigan'\r\n },\r\n {\r\n lat: 46.7128,\r\n long: 74.006,\r\n name: 'Elizabeth C. Lyons',\r\n street: '4553 Kenwood Place',\r\n location: 'Fort Lauderdale'\r\n },\r\n {\r\n lat: 40.7128,\r\n long: 74.1181,\r\n name: 'Elizabeth C. Lyons',\r\n street: '4553 Kenwood Place',\r\n location: 'Fort Lauderdale'\r\n },\r\n {\r\n lat: 14.235,\r\n long: 51.9253,\r\n name: 'Ralph D. Wylie',\r\n street: '3186 Levy Court',\r\n location: 'North Reading'\r\n },\r\n {\r\n lat: 15.235,\r\n long: 51.9253,\r\n name: 'Ralph D. Wylie',\r\n street: '3186 Levy Court',\r\n location: 'North Reading'\r\n },\r\n {\r\n lat: 16.235,\r\n long: 51.9253,\r\n name: 'Ralph D. Wylie',\r\n street: '3186 Levy Court',\r\n location: 'North Reading'\r\n },\r\n {\r\n lat: 14.235,\r\n long: 51.9253,\r\n name: 'Ralph D. Wylie',\r\n street: '3186 Levy Court',\r\n location: 'North Reading'\r\n },\r\n {\r\n lat: 15.8267,\r\n long: 47.9218,\r\n name: 'Hope A. Atkins',\r\n street: '3715 Hillcrest Drive',\r\n location: 'Seattle'\r\n },\r\n {\r\n lat: 15.9267,\r\n long: 47.9218,\r\n name: 'Hope A. Atkins',\r\n street: '3715 Hillcrest Drive',\r\n location: 'Seattle'\r\n },\r\n {\r\n lat: 23.4425,\r\n long: 58.4438,\r\n name: 'Samuel R. Bailey',\r\n street: '2883 Raoul Wallenberg Place',\r\n location: 'Cheshire'\r\n },\r\n {\r\n lat: 23.5425,\r\n long: 58.3438,\r\n name: 'Samuel R. Bailey',\r\n street: '2883 Raoul Wallenberg Place',\r\n location: 'Cheshire'\r\n },\r\n {\r\n lat: -37.8927369333,\r\n long: 175.4087452333,\r\n name: 'Samuel R. Bailey',\r\n street: '3228 Glory Road',\r\n location: 'Nashville'\r\n },\r\n {\r\n lat: -38.9064188833,\r\n long: 175.4441556833,\r\n name: 'Samuel R. Bailey',\r\n street: '3228 Glory Road',\r\n location: 'Nashville'\r\n },\r\n {\r\n lat: -12.409874,\r\n long: -65.596832,\r\n name: 'Ann J. Perdue',\r\n street: '921 Ella Street',\r\n location: 'Dublin'\r\n },\r\n {\r\n lat: -22.090887,\r\n long: -57.411827,\r\n name: 'Jorge C. Woods',\r\n street: '4800 North Bend River Road',\r\n location: 'Allen'\r\n },\r\n {\r\n lat: -19.019585,\r\n long: -65.261963,\r\n name: 'Russ E. Panek',\r\n street: '4068 Hartland Avenue',\r\n location: 'Appleton'\r\n },\r\n {\r\n lat: -16.500093,\r\n long: -68.214684,\r\n name: 'Russ E. Panek',\r\n street: '4068 Hartland Avenue',\r\n location: 'Appleton'\r\n },\r\n {\r\n lat: -17.413977,\r\n long: -66.165321,\r\n name: 'Russ E. Panek',\r\n street: '4068 Hartland Avenue',\r\n location: 'Appleton'\r\n },\r\n {\r\n lat: -16.489689,\r\n long: -68.119293,\r\n name: 'Russ E. Panek',\r\n street: '4068 Hartland Avenue',\r\n location: 'Appleton'\r\n },\r\n {\r\n lat: 54.766323,\r\n long: 3.08603729,\r\n name: 'Russ E. Panek',\r\n street: '4068 Hartland Avenue',\r\n location: 'Appleton'\r\n },\r\n {\r\n lat: 54.866323,\r\n long: 3.08603729,\r\n name: 'Russ E. Panek',\r\n street: '4068 Hartland Avenue',\r\n location: 'Appleton'\r\n },\r\n {\r\n lat: 49.537685,\r\n long: 3.08603729,\r\n name: 'Russ E. Panek',\r\n street: '4068 Hartland Avenue',\r\n location: 'Appleton'\r\n },\r\n {\r\n lat: 54.715424,\r\n long: 0.509207,\r\n name: 'Russ E. Panek',\r\n street: '4068 Hartland Avenue',\r\n location: 'Appleton'\r\n },\r\n {\r\n lat: 44.891666,\r\n long: 10.136665,\r\n name: 'Russ E. Panek',\r\n street: '4068 Hartland Avenue',\r\n location: 'Appleton'\r\n },\r\n {\r\n lat: 48.078335,\r\n long: 14.535004,\r\n name: 'Russ E. Panek',\r\n street: '4068 Hartland Avenue',\r\n location: 'Appleton'\r\n },\r\n {\r\n lat: -26.358055,\r\n long: 27.398056,\r\n name: 'Russ E. Panek',\r\n street: '4068 Hartland Avenue',\r\n location: 'Appleton'\r\n },\r\n {\r\n lat: -29.1,\r\n long: 26.2167,\r\n name: 'Wilbur J. Dry',\r\n street: '2043 Jadewood Drive',\r\n location: 'Northbrook'\r\n },\r\n {\r\n lat: -29.883333,\r\n long: 31.049999,\r\n name: 'Wilbur J. Dry',\r\n street: '2043 Jadewood Drive',\r\n location: 'Northbrook'\r\n },\r\n {\r\n lat: -26.266111,\r\n long: 27.865833,\r\n name: 'Wilbur J. Dry',\r\n street: '2043 Jadewood Drive',\r\n location: 'Northbrook'\r\n },\r\n {\r\n lat: -29.087217,\r\n long: 26.154898,\r\n name: 'Wilbur J. Dry',\r\n street: '2043 Jadewood Drive',\r\n location: 'Northbrook'\r\n },\r\n {\r\n lat: -33.958252,\r\n long: 25.619022,\r\n name: 'Wilbur J. Dry',\r\n street: '2043 Jadewood Drive',\r\n location: 'Northbrook'\r\n },\r\n {\r\n lat: -33.977074,\r\n long: 22.457581,\r\n name: 'Wilbur J. Dry',\r\n street: '2043 Jadewood Drive',\r\n location: 'Northbrook'\r\n },\r\n {\r\n lat: -26.563404,\r\n long: 27.844164,\r\n name: 'Wilbur J. Dry',\r\n street: '2043 Jadewood Drive',\r\n location: 'Northbrook'\r\n },\r\n {\r\n lat: 51.21389,\r\n long: -102.462776,\r\n name: 'Joseph B. Poole',\r\n street: '3364 Lunetta Street',\r\n location: 'Wichita Falls'\r\n },\r\n {\r\n lat: 52.321945,\r\n long: -106.584167,\r\n name: 'Joseph B. Poole',\r\n street: '3364 Lunetta Street',\r\n location: 'Wichita Falls'\r\n },\r\n {\r\n lat: 50.288055,\r\n long: -107.793892,\r\n name: 'Joseph B. Poole',\r\n street: '3364 Lunetta Street',\r\n location: 'Wichita Falls'\r\n },\r\n {\r\n lat: 52.7575,\r\n long: -108.28611,\r\n name: 'Joseph B. Poole',\r\n street: '3364 Lunetta Street',\r\n location: 'Wichita Falls'\r\n },\r\n {\r\n lat: 50.393333,\r\n long: -105.551941,\r\n name: 'Joseph B. Poole',\r\n street: '3364 Lunetta Street',\r\n location: 'Wichita Falls'\r\n },\r\n {\r\n lat: 50.930557,\r\n long: -102.807777,\r\n name: 'Joseph B. Poole',\r\n street: '3364 Lunetta Street',\r\n location: 'Wichita Falls'\r\n },\r\n {\r\n lat: 52.856388,\r\n long: -104.610001,\r\n name: 'Joseph B. Poole',\r\n street: '3364 Lunetta Street',\r\n location: 'Wichita Falls'\r\n },\r\n {\r\n lat: 52.289722,\r\n long: -106.666664,\r\n name: 'Joseph B. Poole',\r\n street: '3364 Lunetta Street',\r\n location: 'Wichita Falls'\r\n },\r\n {\r\n lat: 52.201942,\r\n long: -105.123055,\r\n name: 'Joseph B. Poole',\r\n street: '3364 Lunetta Street',\r\n location: 'Wichita Falls'\r\n },\r\n {\r\n lat: 53.278046,\r\n long: -110.00547,\r\n name: 'Joseph B. Poole',\r\n street: '3364 Lunetta Street',\r\n location: 'Wichita Falls'\r\n },\r\n {\r\n lat: 49.13673,\r\n long: -102.990959,\r\n name: 'Joseph B. Poole',\r\n street: '3364 Lunetta Street',\r\n location: 'Wichita Falls'\r\n },\r\n {\r\n lat: 45.484531,\r\n long: -73.597023,\r\n name: 'Claudette D. Nowakowski',\r\n street: '3742 Farland Avenue',\r\n location: 'San Antonio'\r\n },\r\n {\r\n lat: 45.266666,\r\n long: -71.900002,\r\n name: 'Claudette D. Nowakowski',\r\n street: '3742 Farland Avenue',\r\n location: 'San Antonio'\r\n },\r\n {\r\n lat: 45.349998,\r\n long: -72.51667,\r\n name: 'Claudette D. Nowakowski',\r\n street: '3742 Farland Avenue',\r\n location: 'San Antonio'\r\n },\r\n {\r\n lat: 47.333332,\r\n long: -79.433334,\r\n name: 'Claudette D. Nowakowski',\r\n street: '3742 Farland Avenue',\r\n location: 'San Antonio'\r\n },\r\n {\r\n lat: 45.400002,\r\n long: -74.033333,\r\n name: 'Claudette D. Nowakowski',\r\n street: '3742 Farland Avenue',\r\n location: 'San Antonio'\r\n },\r\n {\r\n lat: 45.683334,\r\n long: -73.433334,\r\n name: 'Claudette D. Nowakowski',\r\n street: '3742 Farland Avenue',\r\n location: 'San Antonio'\r\n },\r\n {\r\n lat: 48.099998,\r\n long: -77.783333,\r\n name: 'Claudette D. Nowakowski',\r\n street: '3742 Farland Avenue',\r\n location: 'San Antonio'\r\n },\r\n {\r\n lat: 45.5,\r\n long: -72.316666,\r\n name: 'Claudette D. Nowakowski',\r\n street: '3742 Farland Avenue',\r\n location: 'San Antonio'\r\n },\r\n {\r\n lat: 46.349998,\r\n long: -72.550003,\r\n name: 'Claudette D. Nowakowski',\r\n street: '3742 Farland Avenue',\r\n location: 'San Antonio'\r\n },\r\n {\r\n lat: 48.119999,\r\n long: -69.18,\r\n name: 'Claudette D. Nowakowski',\r\n street: '3742 Farland Avenue',\r\n location: 'San Antonio'\r\n },\r\n {\r\n lat: 45.599998,\r\n long: -75.25,\r\n name: 'Claudette D. Nowakowski',\r\n street: '3742 Farland Avenue',\r\n location: 'San Antonio'\r\n },\r\n {\r\n lat: 46.099998,\r\n long: -71.300003,\r\n name: 'Claudette D. Nowakowski',\r\n street: '3742 Farland Avenue',\r\n location: 'San Antonio'\r\n },\r\n {\r\n lat: 45.700001,\r\n long: -73.633331,\r\n name: 'Claudette D. Nowakowski',\r\n street: '3742 Farland Avenue',\r\n location: 'San Antonio'\r\n },\r\n {\r\n lat: 47.68,\r\n long: -68.879997,\r\n name: 'Claudette D. Nowakowski',\r\n street: '3742 Farland Avenue',\r\n location: 'San Antonio'\r\n },\r\n {\r\n lat: 46.716667,\r\n long: -79.099998,\r\n name: '299'\r\n },\r\n {\r\n lat: 45.016666,\r\n long: -72.099998,\r\n name: '299'\r\n }\r\n ];\r\n\r\n const { L } = window;\r\n const mapContainer = document.getElementById('map');\r\n if (L && mapContainer) {\r\n const getFilterColor = () =>\r\n (utils.isDark() === 'dark'\r\n ? [\r\n 'invert:98%',\r\n 'grayscale:69%',\r\n 'bright:89%',\r\n 'contrast:111%',\r\n 'hue:205deg',\r\n 'saturate:1000%'\r\n ]\r\n : ['bright:101%', 'contrast:101%', 'hue:23deg', 'saturate:225%']);\r\n\r\n const tileLayerTheme = 'https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}{r}.png';\r\n\r\n const tiles = L.tileLayer.colorFilter(tileLayerTheme, {\r\n attribution: null,\r\n transparent: true,\r\n filter: getFilterColor()\r\n });\r\n\r\n const map = L.map('map', {\r\n center: L.latLng(10.737, 0),\r\n zoom: 0,\r\n layers: [tiles],\r\n minZoom: 1.3,\r\n zoomSnap: 0.5,\r\n dragging: !L.Browser.mobile,\r\n tap: !L.Browser.mobile\r\n });\r\n\r\n const mcg = L.markerClusterGroup({\r\n chunkedLoading: false,\r\n spiderfyOnMaxZoom: false\r\n });\r\n\r\n points.map(point => {\r\n const { name, location, street } = point;\r\n const icon = L.icon({\r\n iconUrl: `data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAACXBIWXMAAAFgAAABYAEg2RPaAAADpElEQVRYCZ1XS1LbQBBtybIdiMEJKSpUqihgEW/xDdARyAnirOIl3MBH8NK7mBvkBpFv4Gy9IRSpFIQiRPyNfqkeZkY9HwmFt7Lm06+7p/vN2MmyDIrQ6QebALAHAD4AbFuWfQeAAACGs5H/w5jlsJJw4wMA+GhMFuMA99jIDJJOP+ihZwDQFmNuowWO1wS3viDXpdEdZPEc0odruj0EgN5s5H8tJOEEX8R3rbkMtcU34NTqhe5nSQTJ7Tkk80s6/Gk28scGiULguFBffgdufdEwWoQ0uoXo8hdAlooVH0REjISfwZSlyHGh0V5n6aHAtKTxXI5g6nQnMH0P4bEgwtR18Yw8Pj8QZ4ARUAI0Hl+fQZZGisGEBVwHr7XKzox57DXZ/ij8Cdwe2u057z9/wygOxRl4S2vSUHx1oucaMQGAHTrgtdag9mK5aN+Wx/uAAQ9Zenp/SRce4TpaNbQK4+sTcGqeTB/aIXv3XN5oj2VKqii++U0JunpZ8urxee4hvjqVc2hHpBDXuKKT9XMgVYJ1/1fPGSeaikzgmWWkMIi9bVf8UhotXxzORn5gWFchI8QyttlzjS0qpsaIGY2MMsujV/AUSdcY0dDpB6/EiOPYzclR1CI5mOez3ekHvrFLxa7cR5pTscfrXjk0Vhm5V2PqLUWnH3R5GbPGpMVD7E1ckXesKBQ7AS/vmQ1c0+kHuxpBj98lTCm8pbc5QRJRdZ6qHb/wGryXq3Lxszv+5gySuwvxueXySwYvHEjuQ9ofTGKYlrmK1EsCHMd5SoD7mZ1HHFCBHLNbMEshvrugqWLn01hpVVJhFgVGkDvK7hR6n2B+d9C7xsqWsbkqHv4cCsWezEb+o2SR+SFweUBxfA5wH7kShjKt2vWL57Px3GhIFEezkb8pxvUWHYhotAfCk2AtkEcxoOttrxUWDR5svb1emSQKj0WXK1HYIgFREbiBqmoZcB2RkbE+byMZiosorVgAZF1ID7yQhEs38wa7nUqNDezdlavC2HbBGSQkGgZ8uJVBmzeiKCRRpEa9ilWghORVeGB7BxeSKF5xqbFBkxBrFKUk/JHA7ppENQaCnCjthK+3opCEYyANztXmZN858cDYWSUSHk3A311GAZDvo6deNKUk1EsqnJoQlkYBNlmxQZeaMgmxoUokICoHDce351RCCiuKoirJWEgNOYvQplM2VCLhUqF7jf94rW9kHVUjQeheV4riv0i4ZOzzz/2y/+0KAOAfr4EE4HpCFhwAAAAASUVORK5CYII=\r\n `\r\n });\r\n const marker = L.marker(\r\n new L.LatLng(point.lat, point.long),\r\n { icon },\r\n {\r\n name,\r\n location\r\n }\r\n );\r\n const popupContent = `\r\n
    ${name}
    \r\n

    ${street}, ${location}

    \r\n `;\r\n const popup = L.popup({ minWidth: 180 }).setContent(popupContent);\r\n marker.bindPopup(popup);\r\n mcg.addLayer(marker);\r\n return true;\r\n });\r\n map.addLayer(mcg);\r\n const themeController = document.body;\r\n\r\n themeController.addEventListener('clickControl', ({ detail: { control, value } }) => {\r\n if (control === 'theme') {\r\n tiles.updateFilter(\r\n value === 'dark'\r\n ? [\r\n 'invert:98%',\r\n 'grayscale:69%',\r\n 'bright:89%',\r\n 'contrast:111%',\r\n 'hue:205deg',\r\n 'saturate:1000%'\r\n ]\r\n : ['bright:101%', 'contrast:101%', 'hue:23deg', 'saturate:225%']\r\n );\r\n }\r\n });\r\n }\r\n};\r\n\r\nexport default leafletActiveUserInit;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Data Table */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst togglePaginationButtonDisable = (button, disabled) => {\r\n button.disabled = disabled;\r\n button.classList[disabled ? 'add' : 'remove']('disabled');\r\n};\r\n\r\nconst listInit = () => {\r\n if (window.List) {\r\n const lists = document.querySelectorAll('[data-list]');\r\n\r\n if (lists.length) {\r\n lists.forEach(el => {\r\n const bulkSelect = el.querySelector('[data-bulk-select]');\r\n let options = utils.getData(el, 'list');\r\n\r\n if (options.pagination) {\r\n options = {\r\n ...options,\r\n pagination: {\r\n item: \"
  • \",\r\n ...options.pagination\r\n }\r\n };\r\n }\r\n\r\n const paginationButtonNext = el.querySelector('[data-list-pagination=\"next\"]');\r\n const paginationButtonPrev = el.querySelector('[data-list-pagination=\"prev\"]');\r\n const viewAll = el.querySelector('[data-list-view=\"*\"]');\r\n const viewLess = el.querySelector('[data-list-view=\"less\"]');\r\n const listInfo = el.querySelector('[data-list-info]');\r\n const listFilters = document.querySelectorAll('[data-list-filter]');\r\n const list = new window.List(el, options);\r\n\r\n //-------fallback-----------\r\n\r\n list.on('updated', item => {\r\n const fallback =\r\n el.querySelector('.fallback') || document.getElementById(options.fallback);\r\n\r\n if (fallback) {\r\n if (item.matchingItems.length === 0) {\r\n fallback.classList.remove('d-none');\r\n } else {\r\n fallback.classList.add('d-none');\r\n }\r\n }\r\n });\r\n\r\n // ---------------------------------------\r\n\r\n const totalItem = list.items.length;\r\n const itemsPerPage = list.page;\r\n const btnDropdownClose = list.listContainer.querySelector('.btn-close');\r\n let pageQuantity = Math.ceil(totalItem / itemsPerPage);\r\n let numberOfcurrentItems = list.visibleItems.length;\r\n let pageCount = 1;\r\n\r\n btnDropdownClose &&\r\n btnDropdownClose.addEventListener('search.close', () => {\r\n list.fuzzySearch('');\r\n });\r\n\r\n const updateListControls = () => {\r\n listInfo && (listInfo.innerHTML = `${list.i} to ${numberOfcurrentItems} of ${totalItem}`);\r\n paginationButtonPrev &&\r\n togglePaginationButtonDisable(paginationButtonPrev, pageCount === 1);\r\n paginationButtonNext &&\r\n togglePaginationButtonDisable(paginationButtonNext, pageCount === pageQuantity);\r\n\r\n if (pageCount > 1 && pageCount < pageQuantity) {\r\n togglePaginationButtonDisable(paginationButtonNext, false);\r\n togglePaginationButtonDisable(paginationButtonPrev, false);\r\n }\r\n };\r\n\r\n // List info\r\n updateListControls();\r\n\r\n if (paginationButtonNext) {\r\n paginationButtonNext.addEventListener('click', e => {\r\n e.preventDefault();\r\n pageCount += 1;\r\n\r\n const nextInitialIndex = list.i + itemsPerPage;\r\n nextInitialIndex <= list.size() && list.show(nextInitialIndex, itemsPerPage);\r\n numberOfcurrentItems += list.visibleItems.length;\r\n updateListControls();\r\n });\r\n }\r\n\r\n if (paginationButtonPrev) {\r\n paginationButtonPrev.addEventListener('click', e => {\r\n e.preventDefault();\r\n pageCount -= 1;\r\n\r\n numberOfcurrentItems -= list.visibleItems.length;\r\n const prevItem = list.i - itemsPerPage;\r\n prevItem > 0 && list.show(prevItem, itemsPerPage);\r\n updateListControls();\r\n });\r\n }\r\n\r\n const toggleViewBtn = () => {\r\n viewLess.classList.toggle('d-none');\r\n viewAll.classList.toggle('d-none');\r\n };\r\n\r\n if (viewAll) {\r\n viewAll.addEventListener('click', () => {\r\n list.show(1, totalItem);\r\n pageQuantity = 1;\r\n pageCount = 1;\r\n numberOfcurrentItems = totalItem;\r\n updateListControls();\r\n toggleViewBtn();\r\n });\r\n }\r\n if (viewLess) {\r\n viewLess.addEventListener('click', () => {\r\n list.show(1, itemsPerPage);\r\n pageQuantity = Math.ceil(totalItem / itemsPerPage);\r\n pageCount = 1;\r\n numberOfcurrentItems = list.visibleItems.length;\r\n updateListControls();\r\n toggleViewBtn();\r\n });\r\n }\r\n // numbering pagination\r\n if (options.pagination) {\r\n el.querySelector('.pagination').addEventListener('click', e => {\r\n if (e.target.classList[0] === 'page') {\r\n pageCount = Number(e.target.innerText);\r\n updateListControls();\r\n }\r\n });\r\n }\r\n if (listFilters) {\r\n listFilters.forEach(listFilter => {\r\n listFilter.addEventListener('change', () => {\r\n const activeFilters = {};\r\n\r\n listFilters.forEach(filter => {\r\n const key = filter.getAttribute('data-list-filter');\r\n const value = filter.value.trim().toLowerCase();\r\n if (value) {\r\n activeFilters[key] = value;\r\n }\r\n });\r\n list.filter(item =>\r\n Object.keys(activeFilters).every(key => {\r\n const itemValue = item.values()[key].toLowerCase();\r\n return itemValue.includes(activeFilters[key]);\r\n })\r\n );\r\n });\r\n });\r\n }\r\n\r\n //bulk-select\r\n if (bulkSelect) {\r\n const bulkSelectInstance = window.BulkSelect.getInstance(bulkSelect);\r\n bulkSelectInstance.attachRowNodes(\r\n list.items.map(item => item.elm.querySelector('[data-bulk-select-row]'))\r\n );\r\n\r\n bulkSelect.addEventListener('change', () => {\r\n if (list) {\r\n if (bulkSelect.checked) {\r\n list.items.forEach(item => {\r\n item.elm.querySelector('[data-bulk-select-row]').checked = true;\r\n });\r\n } else {\r\n list.items.forEach(item => {\r\n item.elm.querySelector('[data-bulk-select-row]').checked = false;\r\n });\r\n }\r\n }\r\n });\r\n }\r\n });\r\n }\r\n }\r\n};\r\n\r\nexport default listInit;\r\n","import utils from './utils';\r\n\r\nconst lottieInit = () => {\r\n const lotties = document.querySelectorAll('.lottie');\r\n if (lotties.length) {\r\n lotties.forEach(item => {\r\n const options = utils.getData(item, 'options');\r\n window.bodymovin.loadAnimation({\r\n container: item,\r\n path: '../img/animated-icons/warning-light.json',\r\n renderer: 'svg',\r\n loop: true,\r\n autoplay: true,\r\n name: 'Hello World',\r\n ...options\r\n });\r\n });\r\n }\r\n};\r\n\r\nexport default lottieInit;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Navbar Combo Layout */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst navbarComboInit = () => {\r\n const Selector = {\r\n NAVBAR_VERTICAL: '.navbar-vertical',\r\n NAVBAR_TOP_COMBO: '[data-navbar-top=\"combo\"]',\r\n COLLAPSE: '.collapse',\r\n DATA_MOVE_CONTAINER: '[data-move-container]',\r\n NAVBAR_NAV: '.navbar-nav',\r\n NAVBAR_VERTICAL_DIVIDER: '.navbar-vertical-divider'\r\n };\r\n\r\n const ClassName = {\r\n FLEX_COLUMN: 'flex-column'\r\n };\r\n\r\n const navbarVertical = document.querySelector(Selector.NAVBAR_VERTICAL);\r\n const navbarTopCombo = document.querySelector(Selector.NAVBAR_TOP_COMBO);\r\n\r\n const moveNavContent = windowWidth => {\r\n const navbarVerticalBreakpoint = utils.getBreakpoint(navbarVertical);\r\n const navbarTopBreakpoint = utils.getBreakpoint(navbarTopCombo);\r\n\r\n if (windowWidth < navbarTopBreakpoint) {\r\n const navbarCollapse = navbarTopCombo.querySelector(Selector.COLLAPSE);\r\n const navbarTopContent = navbarCollapse.innerHTML;\r\n\r\n if (navbarTopContent) {\r\n const targetID = utils.getData(navbarTopCombo, 'move-target');\r\n const targetElement = document.querySelector(targetID);\r\n\r\n navbarCollapse.innerHTML = '';\r\n targetElement.insertAdjacentHTML(\r\n 'afterend',\r\n `\r\n
    \r\n \r\n ${navbarTopContent}\r\n
    \r\n `\r\n );\r\n\r\n if (navbarVerticalBreakpoint < navbarTopBreakpoint) {\r\n const navbarNav = document\r\n .querySelector(Selector.DATA_MOVE_CONTAINER)\r\n .querySelector(Selector.NAVBAR_NAV);\r\n utils.addClass(navbarNav, ClassName.FLEX_COLUMN);\r\n }\r\n }\r\n } else {\r\n const moveableContainer = document.querySelector(Selector.DATA_MOVE_CONTAINER);\r\n if (moveableContainer) {\r\n const navbarNav = moveableContainer.querySelector(Selector.NAVBAR_NAV);\r\n utils.hasClass(navbarNav, ClassName.FLEX_COLUMN) &&\r\n navbarNav.classList.remove(ClassName.FLEX_COLUMN);\r\n moveableContainer.querySelector(Selector.NAVBAR_VERTICAL_DIVIDER).remove();\r\n navbarTopCombo.querySelector(Selector.COLLAPSE).innerHTML = moveableContainer.innerHTML;\r\n moveableContainer.remove();\r\n }\r\n }\r\n };\r\n\r\n moveNavContent(window.innerWidth);\r\n\r\n utils.resize(() => moveNavContent(window.innerWidth));\r\n};\r\n\r\nexport default navbarComboInit;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Navbar Darken on scroll */\r\n/* -------------------------------------------------------------------------- */\r\nconst navbarDarkenOnScroll = () => {\r\n const Selector = {\r\n NAVBAR: '[data-navbar-darken-on-scroll]',\r\n NAVBAR_COLLAPSE: '.navbar-collapse',\r\n NAVBAR_TOGGLER: '.navbar-toggler'\r\n };\r\n\r\n const ClassNames = {\r\n COLLAPSED: 'collapsed'\r\n };\r\n\r\n const Events = {\r\n SCROLL: 'scroll',\r\n SHOW_BS_COLLAPSE: 'show.bs.collapse',\r\n HIDE_BS_COLLAPSE: 'hide.bs.collapse',\r\n HIDDEN_BS_COLLAPSE: 'hidden.bs.collapse'\r\n };\r\n\r\n const DataKey = {\r\n NAVBAR_DARKEN_ON_SCROLL: 'navbar-darken-on-scroll'\r\n };\r\n\r\n const navbar = document.querySelector(Selector.NAVBAR);\r\n\r\n function removeNavbarBgClass() {\r\n navbar.classList.remove('bg-dark');\r\n navbar.classList.remove('bg-100');\r\n }\r\n\r\n const toggleThemeClass = theme => {\r\n if (theme === 'dark') {\r\n navbar.classList.remove('navbar-dark');\r\n navbar.classList.add('navbar-light');\r\n } else {\r\n navbar.classList.remove('navbar-light');\r\n navbar.classList.add('navbar-dark');\r\n }\r\n };\r\n\r\n function getBgClassName(name, defaultColorName) {\r\n const parent = document.documentElement;\r\n const allColors = {\r\n ...utils.getColors(parent),\r\n ...utils.getGrays(parent)\r\n };\r\n\r\n const colorName = Object.keys(allColors).includes(name) ? name : defaultColorName;\r\n const color = allColors[colorName];\r\n const bgClassName = `bg-${colorName}`;\r\n return { color, bgClassName };\r\n }\r\n\r\n if (navbar) {\r\n const theme = utils.isDark();\r\n let defaultColorName = theme === 'dark' ? '100' : 'dark';\r\n const name = utils.getData(navbar, DataKey.NAVBAR_DARKEN_ON_SCROLL);\r\n\r\n toggleThemeClass(theme);\r\n const themeController = document.body;\r\n themeController.addEventListener('clickControl', ({ detail: { control, value } }) => {\r\n if (control === 'theme') {\r\n toggleThemeClass(value);\r\n defaultColorName = value === 'dark' ? '100' : 'dark';\r\n if (navbar.classList.contains('bg-dark') || navbar.classList.contains('bg-100')) {\r\n removeNavbarBgClass();\r\n navbar.classList.add(getBgClassName(name, defaultColorName).bgClassName);\r\n }\r\n }\r\n });\r\n\r\n const windowHeight = window.innerHeight;\r\n const html = document.documentElement;\r\n const navbarCollapse = navbar.querySelector(Selector.NAVBAR_COLLAPSE);\r\n const colorRgb = utils.hexToRgb(getBgClassName(name, defaultColorName).color);\r\n const { backgroundImage } = window.getComputedStyle(navbar);\r\n const transition = 'background-color 0.35s ease';\r\n\r\n navbar.style.backgroundImage = 'none';\r\n // Change navbar background color on scroll\r\n window.addEventListener(Events.SCROLL, () => {\r\n const { scrollTop } = html;\r\n let alpha = (scrollTop / windowHeight) * 2;\r\n alpha >= 1 && (alpha = 1);\r\n navbar.style.backgroundColor = `rgba(${colorRgb[0]}, ${colorRgb[1]}, ${colorRgb[2]}, ${alpha})`;\r\n navbar.style.backgroundImage =\r\n alpha > 0 || utils.hasClass(navbarCollapse, 'show') ? backgroundImage : 'none';\r\n });\r\n window.addEventListener('resize', () => {\r\n if (navbarCollapse.classList.contains('show')) {\r\n navbar.classList.add(getBgClassName(name, defaultColorName).bgClassName);\r\n }\r\n });\r\n\r\n // Toggle bg class on window resize\r\n utils.resize(() => {\r\n const breakPoint = utils.getBreakpoint(navbar);\r\n if (window.innerWidth > breakPoint) {\r\n removeNavbarBgClass();\r\n navbar.style.backgroundImage = html.scrollTop ? backgroundImage : 'none';\r\n navbar.style.transition = 'none';\r\n } else if (\r\n utils.hasClass(navbar.querySelector(Selector.NAVBAR_TOGGLER), ClassNames.COLLAPSED)\r\n ) {\r\n removeNavbarBgClass();\r\n navbar.style.backgroundImage = backgroundImage;\r\n }\r\n\r\n if (window.innerWidth <= breakPoint) {\r\n navbar.style.transition = utils.hasClass(navbarCollapse, 'show') ? transition : 'none';\r\n }\r\n });\r\n\r\n navbarCollapse.addEventListener(Events.SHOW_BS_COLLAPSE, () => {\r\n navbar.classList.add(getBgClassName(name, defaultColorName).bgClassName);\r\n navbar.style.backgroundImage = backgroundImage;\r\n navbar.style.transition = transition;\r\n });\r\n\r\n navbarCollapse.addEventListener(Events.HIDE_BS_COLLAPSE, () => {\r\n removeNavbarBgClass();\r\n !html.scrollTop && (navbar.style.backgroundImage = 'none');\r\n });\r\n\r\n navbarCollapse.addEventListener(Events.HIDDEN_BS_COLLAPSE, () => {\r\n navbar.style.transition = 'none';\r\n });\r\n }\r\n};\r\n\r\nexport default navbarDarkenOnScroll;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Navbar Top */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst navbarTopDropShadow = () => {\r\n const Selector = {\r\n NAVBAR: '.navbar:not(.navbar-vertical)',\r\n NAVBAR_VERTICAL: '.navbar-vertical',\r\n NAVBAR_VERTICAL_CONTENT: '.navbar-vertical-content',\r\n NAVBAR_VERTICAL_COLLAPSE: 'navbarVerticalCollapse'\r\n };\r\n\r\n const ClassNames = {\r\n NAVBAR_GLASS_SHADOW: 'navbar-glass-shadow',\r\n SHOW: 'show'\r\n };\r\n\r\n const Events = {\r\n SCROLL: 'scroll',\r\n SHOW_BS_COLLAPSE: 'show.bs.collapse',\r\n HIDDEN_BS_COLLAPSE: 'hidden.bs.collapse'\r\n };\r\n let navDropShadowFlag = true;\r\n\r\n const $navbar = document.querySelector(Selector.NAVBAR);\r\n const $navbarVertical = document.querySelector(Selector.NAVBAR_VERTICAL);\r\n const $navbarVerticalContent = document.querySelector(Selector.NAVBAR_VERTICAL_CONTENT);\r\n const $navbarVerticalCollapse = document.getElementById(Selector.NAVBAR_VERTICAL_COLLAPSE);\r\n const html = document.documentElement;\r\n const breakPoint = utils.getBreakpoint($navbarVertical);\r\n const setDropShadow = $elem => {\r\n if ($elem.scrollTop > 0 && navDropShadowFlag) {\r\n $navbar && $navbar.classList.add(ClassNames.NAVBAR_GLASS_SHADOW);\r\n } else {\r\n $navbar && $navbar.classList.remove(ClassNames.NAVBAR_GLASS_SHADOW);\r\n }\r\n };\r\n setDropShadow(html);\r\n\r\n window.addEventListener(Events.SCROLL, () => {\r\n setDropShadow(html);\r\n });\r\n\r\n if ($navbarVerticalContent) {\r\n $navbarVerticalContent.addEventListener(Events.SCROLL, () => {\r\n if (window.outerWidth < breakPoint) {\r\n navDropShadowFlag = true;\r\n setDropShadow($navbarVerticalContent);\r\n }\r\n });\r\n }\r\n if ($navbarVerticalCollapse) {\r\n $navbarVerticalCollapse.addEventListener(Events.SHOW_BS_COLLAPSE, () => {\r\n if (window.outerWidth < breakPoint) {\r\n navDropShadowFlag = false;\r\n setDropShadow(html);\r\n }\r\n });\r\n }\r\n if ($navbarVerticalCollapse) {\r\n $navbarVerticalCollapse.addEventListener(Events.HIDDEN_BS_COLLAPSE, () => {\r\n if (\r\n utils.hasClass($navbarVerticalCollapse, ClassNames.SHOW) &&\r\n window.outerWidth < breakPoint\r\n ) {\r\n navDropShadowFlag = false;\r\n } else {\r\n navDropShadowFlag = true;\r\n }\r\n setDropShadow(html);\r\n });\r\n }\r\n};\r\n\r\nexport default navbarTopDropShadow;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Navbar Vertical */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst handleNavbarVerticalCollapsed = () => {\r\n const Selector = {\r\n HTML: 'html',\r\n NAVBAR_VERTICAL_TOGGLE: '.navbar-vertical-toggle',\r\n NAVBAR_VERTICAL_COLLAPSE: '.navbar-vertical .navbar-collapse',\r\n ECHART_RESPONSIVE: '[data-echart-responsive]'\r\n };\r\n\r\n const Events = {\r\n CLICK: 'click',\r\n MOUSE_OVER: 'mouseover',\r\n MOUSE_LEAVE: 'mouseleave',\r\n NAVBAR_VERTICAL_TOGGLE: 'navbar.vertical.toggle'\r\n };\r\n const ClassNames = {\r\n NAVBAR_VERTICAL_COLLAPSED: 'navbar-vertical-collapsed',\r\n NAVBAR_VERTICAL_COLLAPSED_HOVER: 'navbar-vertical-collapsed-hover'\r\n };\r\n const navbarVerticalToggle = document.querySelector(Selector.NAVBAR_VERTICAL_TOGGLE);\r\n const html = document.querySelector(Selector.HTML);\r\n const navbarVerticalCollapse = document.querySelector(Selector.NAVBAR_VERTICAL_COLLAPSE);\r\n\r\n if (navbarVerticalToggle) {\r\n navbarVerticalToggle.addEventListener(Events.CLICK, e => {\r\n navbarVerticalToggle.blur();\r\n html.classList.toggle(ClassNames.NAVBAR_VERTICAL_COLLAPSED);\r\n\r\n // Set collapse state on localStorage\r\n const isNavbarVerticalCollapsed = utils.getItemFromStore('isNavbarVerticalCollapsed');\r\n utils.setItemToStore('isNavbarVerticalCollapsed', !isNavbarVerticalCollapsed);\r\n\r\n const event = new CustomEvent(Events.NAVBAR_VERTICAL_TOGGLE);\r\n e.currentTarget.dispatchEvent(event);\r\n });\r\n }\r\n if (navbarVerticalCollapse) {\r\n navbarVerticalCollapse.addEventListener(Events.MOUSE_OVER, () => {\r\n if (utils.hasClass(html, ClassNames.NAVBAR_VERTICAL_COLLAPSED)) {\r\n html.classList.add(ClassNames.NAVBAR_VERTICAL_COLLAPSED_HOVER);\r\n }\r\n });\r\n navbarVerticalCollapse.addEventListener(Events.MOUSE_LEAVE, () => {\r\n if (utils.hasClass(html, ClassNames.NAVBAR_VERTICAL_COLLAPSED_HOVER)) {\r\n html.classList.remove(ClassNames.NAVBAR_VERTICAL_COLLAPSED_HOVER);\r\n }\r\n });\r\n }\r\n};\r\n\r\nexport default handleNavbarVerticalCollapsed;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* noUiSlider */\r\n/* -------------------------------------------------------------------------- */\r\nconst nouisliderInit = () => {\r\n if (window.noUiSlider) {\r\n const elements = document.querySelectorAll('[data-nouislider]');\r\n elements.forEach(item => {\r\n const sliderValue = document.querySelector('[data-nouislider-value]');\r\n const userOptions = utils.getData(item, 'nouislider');\r\n const defaultOptions = {\r\n start: [10],\r\n connect: [true, false],\r\n step: 1,\r\n range: { min: [0], max: [100] },\r\n tooltips: true\r\n };\r\n const options = window._.merge(defaultOptions, userOptions);\r\n window.noUiSlider.create(item, { ...options });\r\n\r\n sliderValue &&\r\n item.noUiSlider.on('update', (values, handle) => {\r\n sliderValue.innerHTML = values[handle];\r\n });\r\n });\r\n }\r\n};\r\n\r\nexport default nouisliderInit;\r\n","import utils from './utils';\r\n/*-----------------------------------------------\r\n| Inline Player [plyr]\r\n-----------------------------------------------*/\r\n\r\nconst plyrInit = () => {\r\n if (window.Plyr) {\r\n const plyrs = document.querySelectorAll('.player');\r\n plyrs.forEach(plyr => {\r\n const userOptions = utils.getData(plyr, 'options');\r\n const defaultOptions = { captions: { active: true } };\r\n const options = window._.merge(defaultOptions, userOptions);\r\n return new window.Plyr(plyr, options);\r\n });\r\n }\r\n};\r\n\r\nexport default plyrInit;\r\n","/* -------------------------------------------------------------------------- */\r\n/* Popover */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst popoverInit = () => {\r\n const popoverTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle=\"popover\"]'));\r\n popoverTriggerList.map(popoverTriggerEl => new window.bootstrap.Popover(popoverTriggerEl));\r\n};\r\n\r\nexport default popoverInit;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Bootstrap Animated Progress */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst progressAnimationToggle = () => {\r\n const animatedProgress = document.querySelectorAll('[data-progress-animation]');\r\n\r\n animatedProgress.forEach(progress => {\r\n progress.addEventListener('click', e => {\r\n const progressID = utils.getData(e.currentTarget, 'progressAnimation');\r\n const $progress = document.getElementById(progressID);\r\n $progress.classList.toggle('progress-bar-animated');\r\n });\r\n });\r\n};\r\n\r\nexport default progressAnimationToggle;\r\n","import utils from './utils';\r\n\r\n/*-----------------------------------------------\r\n| Quantity\r\n-----------------------------------------------*/\r\nconst quantityInit = () => {\r\n const Selector = {\r\n DATA_QUANTITY_BTN: '[data-quantity] [data-type]',\r\n DATA_QUANTITY: '[data-quantity]',\r\n DATA_QUANTITY_INPUT: '[data-quantity] input[type=\"number\"]'\r\n };\r\n\r\n const Events = {\r\n CLICK: 'click'\r\n };\r\n\r\n const Attributes = {\r\n MIN: 'min'\r\n };\r\n\r\n const DataKey = {\r\n TYPE: 'type'\r\n };\r\n\r\n const quantities = document.querySelectorAll(Selector.DATA_QUANTITY_BTN);\r\n\r\n quantities.forEach(quantity => {\r\n quantity.addEventListener(Events.CLICK, e => {\r\n const el = e.currentTarget;\r\n const type = utils.getData(el, DataKey.TYPE);\r\n const numberInput = el\r\n .closest(Selector.DATA_QUANTITY)\r\n .querySelector(Selector.DATA_QUANTITY_INPUT);\r\n\r\n const min = numberInput.getAttribute(Attributes.MIN);\r\n let value = parseInt(numberInput.value, 10);\r\n\r\n if (type === 'plus') {\r\n value += 1;\r\n } else {\r\n value = value > min ? (value -= 1) : value;\r\n }\r\n numberInput.value = value;\r\n });\r\n });\r\n};\r\n\r\nexport default quantityInit;\r\n","import utils from './utils';\r\n/* -------------------------------------------------------------------------- */\r\n\r\n/* Ratings */\r\n\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst ratingInit = () => {\r\n const raters = document.querySelectorAll('[data-rater]');\r\n\r\n raters.forEach(rater => {\r\n const options = {\r\n reverse: utils.getItemFromStore('isRTL'),\r\n starSize: 32,\r\n step: 0.5,\r\n element: rater,\r\n rateCallback(rating, done) {\r\n this.setRating(rating);\r\n done();\r\n },\r\n ...utils.getData(rater, 'rater')\r\n };\r\n\r\n return window.raterJs(options);\r\n });\r\n};\r\nexport default ratingInit;\r\n","/* -------------------------------------------------------------------------- */\r\n/* Scrollbars */\r\n/* -------------------------------------------------------------------------- */\r\n// import utils from './utils';\r\n\r\nconst scrollInit = () => {\r\n const dropdownElements = Array.from(document.querySelectorAll('[data-hide-on-body-scroll]'));\r\n\r\n if (window.innerWidth < 1200) {\r\n window.addEventListener('scroll', () => {\r\n dropdownElements.forEach(dropdownElement => {\r\n const instanceEl = window.bootstrap.Dropdown.getInstance(dropdownElement);\r\n instanceEl && instanceEl.hide();\r\n });\r\n });\r\n }\r\n};\r\nexport default scrollInit;\r\n","/* -------------------------------------------------------------------------- */\r\n/* Scrollbars */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst scrollbarInit = () => {\r\n Array.prototype.forEach.call(\r\n document.querySelectorAll('.scrollbar-overlay'),\r\n el => new window.SimpleBar(el, { autoHide: true })\r\n );\r\n};\r\n\r\nexport default scrollbarInit;\r\n","const searchInit = () => {\r\n const Selectors = {\r\n SEARCH_DISMISS: '[data-bs-dismiss=\"search\"]',\r\n DROPDOWN_TOGGLE: '[data-bs-toggle=\"dropdown\"]',\r\n DROPDOWN_MENU: '.dropdown-menu',\r\n SEARCH_BOX: '.search-box',\r\n SEARCH_INPUT: '.search-input',\r\n SEARCH_TOGGLE: '[data-bs-toggle=\"search\"]'\r\n };\r\n\r\n const ClassName = {\r\n SHOW: 'show'\r\n };\r\n\r\n const Attribute = {\r\n ARIA_EXPANDED: 'aria-expanded'\r\n };\r\n\r\n const Events = {\r\n CLICK: 'click',\r\n FOCUS: 'focus',\r\n SHOW_BS_DROPDOWN: 'show.bs.dropdown',\r\n SEARCH_CLOSE: 'search.close'\r\n };\r\n\r\n const hideSearchSuggestion = searchArea => {\r\n const el = searchArea.querySelector(Selectors.SEARCH_TOGGLE);\r\n const dropdownMenu = searchArea.querySelector(Selectors.DROPDOWN_MENU);\r\n if (!el || !dropdownMenu) return;\r\n\r\n el.setAttribute(Attribute.ARIA_EXPANDED, 'false');\r\n el.classList.remove(ClassName.SHOW);\r\n dropdownMenu.classList.remove(ClassName.SHOW);\r\n };\r\n\r\n const searchAreas = document.querySelectorAll(Selectors.SEARCH_BOX);\r\n\r\n const hideAllSearchAreas = () => {\r\n searchAreas.forEach(hideSearchSuggestion);\r\n };\r\n\r\n searchAreas.forEach(searchArea => {\r\n const input = searchArea.querySelector(Selectors.SEARCH_INPUT);\r\n const btnDropdownClose = searchArea.querySelector(Selectors.SEARCH_DISMISS);\r\n const dropdownMenu = searchArea.querySelector(Selectors.DROPDOWN_MENU);\r\n\r\n if (input) {\r\n input.addEventListener(Events.FOCUS, () => {\r\n hideAllSearchAreas();\r\n const el = searchArea.querySelector(Selectors.SEARCH_TOGGLE);\r\n if (!el || !dropdownMenu) return;\r\n el.setAttribute(Attribute.ARIA_EXPANDED, 'true');\r\n el.classList.add(ClassName.SHOW);\r\n dropdownMenu.classList.add(ClassName.SHOW);\r\n });\r\n }\r\n\r\n document.addEventListener(Events.CLICK, ({ target }) => {\r\n !searchArea.contains(target) && hideSearchSuggestion(searchArea);\r\n });\r\n\r\n btnDropdownClose &&\r\n btnDropdownClose.addEventListener(Events.CLICK, e => {\r\n hideSearchSuggestion(searchArea);\r\n input.value = '';\r\n const event = new CustomEvent(Events.SEARCH_CLOSE);\r\n e.currentTarget.dispatchEvent(event);\r\n });\r\n });\r\n\r\n document.querySelectorAll(Selectors.DROPDOWN_TOGGLE).forEach(dropdown => {\r\n dropdown.addEventListener(Events.SHOW_BS_DROPDOWN, () => {\r\n hideAllSearchAreas();\r\n });\r\n });\r\n};\r\n\r\nexport default searchInit;\r\n","/*-----------------------------------------------\r\n| Select2\r\n-----------------------------------------------*/\r\n\r\nconst select2Init = () => {\r\n if (window.jQuery) {\r\n const $ = window.jQuery;\r\n\r\n const select2 = $('.selectpicker');\r\n select2.length &&\r\n select2.each((index, value) => {\r\n const $this = $(value);\r\n const options = $.extend({ theme: 'bootstrap-5' }, $this.data('options'));\r\n $this.select2(options);\r\n });\r\n }\r\n};\r\n\r\nexport default select2Init;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* SortableJS */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst sortableInit = () => {\r\n const { getData } = utils;\r\n\r\n const sortableEl = document.querySelectorAll('[data-sortable]');\r\n\r\n const defaultOptions = {\r\n animation: 150,\r\n group: {\r\n name: 'shared'\r\n },\r\n delay: 100,\r\n delayOnTouchOnly: true,\r\n forceFallback: true,\r\n onStart() {\r\n document.body.classList.add('sortable-dragging');\r\n },\r\n onEnd() {\r\n document.body.classList.remove('sortable-dragging');\r\n }\r\n };\r\n\r\n sortableEl.forEach(el => {\r\n const userOptions = getData(el, 'sortable');\r\n const options = window._.merge(defaultOptions, userOptions);\r\n\r\n return window.Sortable.create(el, options);\r\n });\r\n};\r\n\r\nexport default sortableInit;\r\n","import utils from './utils';\r\n\r\n/*-----------------------------------------------\r\n| Swiper\r\n-----------------------------------------------*/\r\nconst swiperInit = () => {\r\n const swipers = document.querySelectorAll('[data-swiper]');\r\n const navbarVerticalToggle = document.querySelector('.navbar-vertical-toggle');\r\n swipers.forEach(swiper => {\r\n const options = utils.getData(swiper, 'swiper');\r\n const thumbsOptions = options.thumb;\r\n let thumbsInit;\r\n if (thumbsOptions) {\r\n const thumbImages = swiper.querySelectorAll('img');\r\n let slides = '';\r\n thumbImages.forEach(img => {\r\n slides += `\r\n
    \r\n \r\n
    \r\n `;\r\n });\r\n\r\n const thumbs = document.createElement('div');\r\n thumbs.setAttribute('class', 'swiper thumb');\r\n thumbs.innerHTML = `
    ${slides}
    `;\r\n\r\n if (thumbsOptions.parent) {\r\n const parent = document.querySelector(thumbsOptions.parent);\r\n parent.parentNode.appendChild(thumbs);\r\n } else {\r\n swiper.parentNode.appendChild(thumbs);\r\n }\r\n\r\n thumbsInit = new window.Swiper(thumbs, thumbsOptions);\r\n }\r\n\r\n const swiperNav = swiper.querySelector('.swiper-nav');\r\n const newSwiper = new window.Swiper(swiper, {\r\n ...options,\r\n navigation: {\r\n nextEl: swiperNav?.querySelector('.swiper-button-next'),\r\n prevEl: swiperNav?.querySelector('.swiper-button-prev')\r\n },\r\n thumbs: {\r\n swiper: thumbsInit\r\n }\r\n });\r\n if (navbarVerticalToggle) {\r\n navbarVerticalToggle.addEventListener('navbar.vertical.toggle', () => {\r\n newSwiper.update();\r\n });\r\n }\r\n });\r\n};\r\n\r\nexport default swiperInit;\r\n","import { setItemToStore, getData, getItemFromStore, getSystemTheme } from './utils';\r\nimport DomNode from './node';\r\nimport CONFIG from './config';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Theme Control */\r\n/* -------------------------------------------------------------------------- */\r\nconst initialDomSetup = element => {\r\n if (!element) return;\r\n const dataUrlDom = element.querySelector('[data-theme-control = \"navbarPosition\"]');\r\n const hasDataUrl = dataUrlDom ? getData(dataUrlDom, 'page-url') : null;\r\n\r\n element.querySelectorAll('[data-theme-control]').forEach(el => {\r\n const inputDataAttributeValue = getData(el, 'theme-control');\r\n const localStorageValue = getItemFromStore(inputDataAttributeValue);\r\n\r\n if (\r\n inputDataAttributeValue === 'navbarStyle' &&\r\n !hasDataUrl &&\r\n (getItemFromStore('navbarPosition') === 'top' ||\r\n getItemFromStore('navbarPosition') === 'double-top')\r\n ) {\r\n el.setAttribute('disabled', true);\r\n }\r\n if (el.type === 'select-one' && inputDataAttributeValue === 'navbarPosition') {\r\n el.value = localStorageValue;\r\n }\r\n if (el.type === 'checkbox') {\r\n if (inputDataAttributeValue === 'theme') {\r\n if (\r\n localStorageValue === 'auto' ? getSystemTheme() === 'dark' : localStorageValue === 'dark'\r\n ) {\r\n el.setAttribute('checked', true);\r\n }\r\n } else {\r\n localStorageValue && el.setAttribute('checked', true);\r\n }\r\n } else if (el.type === 'radio') {\r\n const isChecked = localStorageValue === el.value;\r\n isChecked && el.setAttribute('checked', true);\r\n } else {\r\n const isActive = localStorageValue === el.value;\r\n isActive && el.classList.add('active');\r\n }\r\n });\r\n};\r\n\r\nconst changeTheme = element => {\r\n element.querySelectorAll('[data-theme-control = \"theme\"]').forEach(el => {\r\n const inputDataAttributeValue = getData(el, 'theme-control');\r\n const localStorageValue = getItemFromStore(inputDataAttributeValue);\r\n\r\n if (el.type === 'checkbox') {\r\n if (localStorageValue === 'auto') {\r\n getSystemTheme() === 'dark' ? (el.checked = true) : (el.checked = false);\r\n } else {\r\n localStorageValue === 'dark' ? (el.checked = true) : (el.checked = false);\r\n }\r\n } else if (el.type === 'radio') {\r\n localStorageValue === el.value ? (el.checked = true) : (el.checked = false);\r\n } else {\r\n localStorageValue === el.value ? el.classList.add('active') : el.classList.remove('active');\r\n }\r\n });\r\n};\r\n\r\nconst handleThemeDropdownIcon = value => {\r\n document.querySelectorAll('[data-theme-dropdown-toggle-icon]').forEach(el => {\r\n el.classList.toggle('d-none', value !== getData(el, 'theme-dropdown-toggle-icon'));\r\n });\r\n};\r\n\r\nhandleThemeDropdownIcon(getItemFromStore('theme'));\r\n\r\nconst themeControl = () => {\r\n const themeController = new DomNode(document.body);\r\n\r\n const navbarVertical = document.querySelector('.navbar-vertical');\r\n initialDomSetup(themeController.node);\r\n\r\n themeController.on('click', e => {\r\n const target = new DomNode(e.target);\r\n\r\n if (target.data('theme-control')) {\r\n const control = target.data('theme-control');\r\n let value = e.target[e.target.type === 'checkbox' ? 'checked' : 'value'];\r\n\r\n if (control === 'theme') {\r\n typeof value === 'boolean' && (value = value ? 'dark' : 'light');\r\n }\r\n if (control !== 'navbarPosition') {\r\n Object.prototype.hasOwnProperty.call(CONFIG, control) && setItemToStore(control, value);\r\n switch (control) {\r\n case 'theme': {\r\n document.documentElement.setAttribute(\r\n 'data-bs-theme',\r\n value === 'auto' ? getSystemTheme() : value\r\n );\r\n const clickControl = new CustomEvent('clickControl', {\r\n detail: { control, value }\r\n });\r\n e.currentTarget.dispatchEvent(clickControl);\r\n changeTheme(themeController.node);\r\n break;\r\n }\r\n case 'navbarStyle': {\r\n navbarVertical.classList.remove('navbar-card');\r\n navbarVertical.classList.remove('navbar-inverted');\r\n navbarVertical.classList.remove('navbar-vibrant');\r\n if (value !== 'transparent') {\r\n navbarVertical.classList.add(`navbar-${value}`);\r\n }\r\n break;\r\n }\r\n case 'reset': {\r\n Object.keys(CONFIG).forEach(key => {\r\n localStorage.setItem(key, CONFIG[key]);\r\n });\r\n window.location.reload();\r\n break;\r\n }\r\n default:\r\n window.location.reload();\r\n }\r\n }\r\n }\r\n });\r\n\r\n // control navbar position\r\n themeController.on('change', e => {\r\n const target = new DomNode(e.target);\r\n\r\n if (target.data('theme-control') === 'navbarPosition') {\r\n Object.prototype.hasOwnProperty.call(CONFIG, 'navbarPosition') &&\r\n setItemToStore('navbarPosition', e.target.value);\r\n\r\n const pageUrl = getData(target.node.selectedOptions[0], 'page-url');\r\n pageUrl\r\n ? window.location.replace(pageUrl)\r\n : window.location.replace(window.location.href.split('#')[0]);\r\n }\r\n });\r\n\r\n themeController.on('clickControl', ({ detail: { control, value } }) => {\r\n if (control === 'theme') {\r\n handleThemeDropdownIcon(value);\r\n }\r\n });\r\n};\r\n\r\nexport default themeControl;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Tinymce */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst tinymceInit = () => {\r\n if (window.tinymce) {\r\n const tinymces = document.querySelectorAll('[data-tinymce]');\r\n if (tinymces.length) {\r\n window.tinymce.execCommand('mceFocus', false, 'course-description');\r\n window.tinymce.init({\r\n selector: '.tinymce',\r\n height: '50vh',\r\n menubar: false,\r\n license_key: 'gpl',\r\n skin: utils.settings.tinymce.theme,\r\n content_style: `\r\n .mce-content-body {\r\n color: ${utils.getColors().emphasis};\r\n background-color: ${utils.getColor('tinymce-bg')};\r\n }\r\n `,\r\n mobile: {\r\n theme: 'mobile',\r\n toolbar: ['undo', 'bold']\r\n },\r\n statusbar: false,\r\n plugins: 'link,image,lists,table,media',\r\n toolbar: 'styles | bold italic link bullist numlist image blockquote table media undo redo',\r\n directionality: utils.getItemFromStore('isRTL') ? 'rtl' : 'ltr',\r\n theme_advanced_toolbar_align: 'center',\r\n setup: editor => {\r\n editor.on('change', () => {\r\n window.tinymce.triggerSave();\r\n });\r\n }\r\n });\r\n }\r\n\r\n const themeController = document.body;\r\n if (themeController) {\r\n themeController.addEventListener('clickControl', ({ detail: { control } }) => {\r\n if (control === 'theme') {\r\n tinymces.forEach(tinymceEl => {\r\n const instance = window.tinymce.get(tinymceEl.id);\r\n instance.dom.addStyle(\r\n `\r\n .mce-content-body {\r\n color: ${utils.getColors().emphasis} !important;\r\n background-color: ${utils.getColor('tinymce-bg')} !important;\r\n }\r\n `\r\n );\r\n });\r\n }\r\n });\r\n }\r\n }\r\n};\r\n\r\nexport default tinymceInit;\r\n","/* -------------------------------------------------------------------------- */\r\n/* Toast */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst toastInit = () => {\r\n const toastElList = [].slice.call(document.querySelectorAll('.toast'));\r\n toastElList.map(toastEl => new window.bootstrap.Toast(toastEl));\r\n\r\n const liveToastBtn = document.getElementById('liveToastBtn');\r\n\r\n if (liveToastBtn) {\r\n const liveToast = new window.bootstrap.Toast(document.getElementById('liveToast'));\r\n\r\n liveToastBtn.addEventListener('click', () => {\r\n liveToast && liveToast.show();\r\n });\r\n }\r\n};\r\n\r\nexport default toastInit;\r\n","/* -------------------------------------------------------------------------- */\r\n/* Tooltip */\r\n/* -------------------------------------------------------------------------- */\r\nconst tooltipInit = () => {\r\n const tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle=\"tooltip\"]'));\r\n\r\n tooltipTriggerList.map(\r\n tooltipTriggerEl =>\r\n new window.bootstrap.Tooltip(tooltipTriggerEl, {\r\n trigger: 'hover'\r\n })\r\n );\r\n};\r\n\r\nexport default tooltipInit;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Treeview */\r\n/* -------------------------------------------------------------------------- */\r\nconst treeviewInit = () => {\r\n const Events = {\r\n CHANGE: 'change',\r\n SHOW_BS_COLLAPSE: 'show.bs.collapse',\r\n HIDE_BS_COLLAPSE: 'hide.bs.collapse'\r\n };\r\n\r\n const Selector = {\r\n TREEVIEW_ROW:\r\n '.treeview > li > .treeview-row,.treeview-list.collapse-show > li > .treeview-row',\r\n TREEVIEW: '.treeview',\r\n TREEVIEW_LIST: '.treeview-list',\r\n TOGGLE_ELEMENT: \"[data-bs-toggle='collapse']\",\r\n INPUT: 'input',\r\n TREEVIEW_LIST_ITEM: '.treeview-list-item',\r\n CHILD_SELECTOR: ':scope > li > .collapse.collapse-show'\r\n };\r\n\r\n const ClassName = {\r\n TREEVIEW: 'treeview',\r\n TREEVIEW_LIST: 'treeview-list',\r\n TREEVIEW_BORDER: 'treeview-border',\r\n TREEVIEW_BORDER_TRANSPARENT: 'treeview-border-transparent',\r\n COLLAPSE_SHOW: 'collapse-show',\r\n COLLAPSE_HIDDEN: 'collapse-hidden',\r\n TREEVIEW_ROW: 'treeview-row',\r\n TREEVIEW_ROW_ODD: 'treeview-row-odd',\r\n TREEVIEW_ROW_EVEN: 'treeview-row-even'\r\n };\r\n\r\n const treeviews = document.querySelectorAll(Selector.TREEVIEW);\r\n\r\n const makeStriped = treeview => {\r\n const tags = Array.from(treeview.querySelectorAll(Selector.TREEVIEW_ROW));\r\n\r\n const uTags = tags.filter(tag => {\r\n let result = true;\r\n while (tag.parentElement) {\r\n if (tag.parentElement.classList.contains(ClassName.COLLAPSE_HIDDEN)) {\r\n result = false;\r\n break;\r\n }\r\n tag = tag.parentElement;\r\n }\r\n return result;\r\n });\r\n uTags.forEach((tag, index) => {\r\n if (index % 2 === 0) {\r\n tag.classList.add(ClassName.TREEVIEW_ROW_EVEN);\r\n tag.classList.remove(ClassName.TREEVIEW_ROW_ODD);\r\n } else {\r\n tag.classList.add(ClassName.TREEVIEW_ROW_ODD);\r\n tag.classList.remove(ClassName.TREEVIEW_ROW_EVEN);\r\n }\r\n });\r\n };\r\n\r\n if (treeviews.length) {\r\n treeviews.forEach(treeview => {\r\n const options = utils.getData(treeview, 'options');\r\n const striped = options?.striped;\r\n const select = options?.select;\r\n\r\n if (striped) {\r\n makeStriped(treeview);\r\n }\r\n\r\n const collapseElementList = Array.from(treeview.querySelectorAll(Selector.TREEVIEW_LIST));\r\n const collapseListItem = Array.from(treeview.querySelectorAll(Selector.TREEVIEW_LIST_ITEM));\r\n\r\n collapseListItem.forEach(item => {\r\n const wholeRow = document.createElement('div');\r\n wholeRow.setAttribute('class', ClassName.TREEVIEW_ROW);\r\n item.prepend(wholeRow);\r\n });\r\n collapseElementList.forEach(collapse => {\r\n const collapseId = collapse.id;\r\n if (!striped) {\r\n collapse.classList.add(ClassName.TREEVIEW_BORDER);\r\n }\r\n collapse.addEventListener(Events.SHOW_BS_COLLAPSE, e => {\r\n e.target.classList.remove(ClassName.COLLAPSE_HIDDEN);\r\n e.target.classList.add(ClassName.COLLAPSE_SHOW);\r\n if (striped) {\r\n makeStriped(treeview);\r\n } else {\r\n e.composedPath()[2].classList.add(ClassName.TREEVIEW_BORDER_TRANSPARENT);\r\n }\r\n });\r\n\r\n collapse.addEventListener(Events.HIDE_BS_COLLAPSE, e => {\r\n e.target.classList.add(ClassName.COLLAPSE_HIDDEN);\r\n e.target.classList.remove(ClassName.COLLAPSE_SHOW);\r\n\r\n if (striped) {\r\n makeStriped(treeview);\r\n } else {\r\n const childs = e.composedPath()[2].querySelectorAll(Selector.CHILD_SELECTOR);\r\n if (\r\n !e.composedPath()[2].classList.contains(ClassName.TREEVIEW) &&\r\n childs.length === 0\r\n ) {\r\n e.composedPath()[2].classList.remove(ClassName.TREEVIEW_BORDER_TRANSPARENT);\r\n }\r\n }\r\n });\r\n\r\n if (collapse.dataset.show === 'true') {\r\n const parents = [collapse];\r\n while (collapse.parentElement) {\r\n if (collapse.parentElement.classList.contains(ClassName.TREEVIEW_LIST)) {\r\n parents.unshift(collapse.parentElement);\r\n }\r\n collapse = collapse.parentElement;\r\n }\r\n parents.forEach(collapseEl => {\r\n // eslint-disable-next-line no-new\r\n new window.bootstrap.Collapse(collapseEl, {\r\n show: true\r\n });\r\n });\r\n }\r\n\r\n if (select) {\r\n const inputElement = treeview.querySelector(`input[data-target='#${collapseId}']`);\r\n inputElement.addEventListener(Events.CHANGE, e => {\r\n const childInputElements = Array.from(\r\n treeview.querySelector(`#${collapseId}`).querySelectorAll(Selector.INPUT)\r\n );\r\n childInputElements.forEach(input => {\r\n input.checked = e.target.checked;\r\n });\r\n });\r\n }\r\n });\r\n });\r\n }\r\n};\r\n\r\nexport default treeviewInit;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Typed Text */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst typedTextInit = () => {\r\n const typedTexts = document.querySelectorAll('.typed-text');\r\n if (typedTexts.length && window.Typed) {\r\n typedTexts.forEach(\r\n typedText =>\r\n new window.Typed(typedText, {\r\n strings: utils.getData(typedText, 'typedText'),\r\n typeSpeed: 100,\r\n loop: true,\r\n backDelay: 1500\r\n })\r\n );\r\n }\r\n};\r\n\r\nexport default typedTextInit;\r\n","const unresolvedTicketsTabInit = () => {\r\n const dropdownToggle = document.querySelectorAll('.dropdown-toggle-item a');\r\n const layout = document.querySelector('.table-layout');\r\n dropdownToggle.forEach(item => {\r\n item.addEventListener('shown.bs.tab', e => {\r\n layout.innerText = e.target.innerText;\r\n });\r\n });\r\n};\r\n\r\nexport default unresolvedTicketsTabInit;\r\n","/* -------------------------------------------------------------------------- */\r\n/* step wizard */\r\n/* -------------------------------------------------------------------------- */\r\nimport utils from './utils';\r\n\r\nconst wizardInit = () => {\r\n const { getData } = utils;\r\n\r\n const selectors = {\r\n WIZARDS: '.theme-wizard',\r\n TOGGLE_BUTTON_EL: '[data-wizard-step]',\r\n FORMS: '[data-wizard-form]',\r\n PASSWORD_INPUT: '[data-wizard-password]',\r\n CONFIRM_PASSWORD_INPUT: '[data-wizard-confirm-password]',\r\n NEXT_BTN: '.next button',\r\n PREV_BTN: '.previous button',\r\n FOOTER: '.theme-wizard .card-footer'\r\n };\r\n\r\n const events = {\r\n SUBMIT: 'submit',\r\n SHOW: 'show.bs.tab',\r\n SHOWN: 'shown.bs.tab',\r\n CLICK: 'click'\r\n };\r\n\r\n const wizards = document.querySelectorAll(selectors.WIZARDS);\r\n\r\n wizards.forEach(wizard => {\r\n const tabToggleButtonEl = wizard.querySelectorAll(selectors.TOGGLE_BUTTON_EL);\r\n const forms = wizard.querySelectorAll(selectors.FORMS);\r\n const passwordInput = wizard.querySelector(selectors.PASSWORD_INPUT);\r\n const confirmPasswordInput = wizard.querySelector(selectors.CONFIRM_PASSWORD_INPUT);\r\n const nextButton = wizard.querySelector(selectors.NEXT_BTN);\r\n const prevButton = wizard.querySelector(selectors.PREV_BTN);\r\n const wizardFooter = wizard.querySelector(selectors.FOOTER);\r\n const submitEvent = new Event(events.SUBMIT, {\r\n bubbles: true,\r\n cancelable: true\r\n });\r\n\r\n const tabs = Array.from(tabToggleButtonEl).map(item =>\r\n window.bootstrap.Tab.getOrCreateInstance(item)\r\n );\r\n\r\n let count = 0;\r\n let showEvent = null;\r\n\r\n forms.forEach(form => {\r\n form.addEventListener(events.SUBMIT, e => {\r\n e.preventDefault();\r\n if (form.classList.contains('needs-validation')) {\r\n if (passwordInput && confirmPasswordInput) {\r\n if (passwordInput.value !== confirmPasswordInput.value) {\r\n confirmPasswordInput.setCustomValidity('Invalid field.');\r\n } else {\r\n confirmPasswordInput.setCustomValidity('');\r\n }\r\n }\r\n if (!form.checkValidity()) {\r\n showEvent.preventDefault();\r\n return false;\r\n }\r\n }\r\n count += 1;\r\n return null;\r\n });\r\n });\r\n\r\n nextButton.addEventListener(events.CLICK, () => {\r\n if (count + 1 < tabs.length) {\r\n tabs[count + 1].show();\r\n }\r\n });\r\n\r\n prevButton.addEventListener(events.CLICK, () => {\r\n count -= 1;\r\n tabs[count].show();\r\n });\r\n\r\n if (tabToggleButtonEl.length) {\r\n tabToggleButtonEl.forEach((item, index) => {\r\n item.addEventListener(events.SHOW, e => {\r\n const step = getData(item, 'wizard-step');\r\n showEvent = e;\r\n if (step > count) {\r\n forms[count].dispatchEvent(submitEvent);\r\n }\r\n });\r\n item.addEventListener(events.SHOWN, () => {\r\n count = index;\r\n // can't go back tab\r\n if (count === tabToggleButtonEl.length - 1) {\r\n tabToggleButtonEl.forEach(tab => {\r\n tab.setAttribute('data-bs-toggle', 'modal');\r\n tab.setAttribute('data-bs-target', '#error-modal');\r\n });\r\n }\r\n // add done class\r\n for (let i = 0; i < count; i += 1) {\r\n tabToggleButtonEl[i].classList.add('done');\r\n if (i > 0) {\r\n tabToggleButtonEl[i - 1].classList.add('complete');\r\n }\r\n }\r\n // remove done class\r\n for (let j = count; j < tabToggleButtonEl.length; j += 1) {\r\n tabToggleButtonEl[j].classList.remove('done');\r\n if (j > 0) {\r\n tabToggleButtonEl[j - 1].classList.remove('complete');\r\n }\r\n }\r\n\r\n // card footer remove at last step\r\n if (count > tabToggleButtonEl.length - 2) {\r\n wizardFooter.classList.add('d-none');\r\n } else {\r\n wizardFooter.classList.remove('d-none');\r\n }\r\n // prev-button removing\r\n if (count > 0 && count !== tabToggleButtonEl.length - 1) {\r\n prevButton.classList.remove('d-none');\r\n } else {\r\n prevButton.classList.add('d-none');\r\n }\r\n });\r\n });\r\n }\r\n });\r\n};\r\n\r\nexport default wizardInit;\r\n","const { dayjs } = window;\r\nconst currentDay = dayjs && dayjs().format('DD');\r\nconst currentMonth = dayjs && dayjs().format('MM');\r\nconst prevMonth = dayjs && dayjs().subtract(1, 'month').format('MM');\r\nconst nextMonth = dayjs && dayjs().add(1, 'month').format('MM');\r\nconst currentYear = dayjs && dayjs().format('YYYY');\r\nconst events = [\r\n {\r\n title: 'Boot Camp',\r\n start: `${currentYear}-${currentMonth}-01 10:00:00`,\r\n end: `${currentYear}-${currentMonth}-03 16:00:00`,\r\n description:\r\n \"Boston Harbor Now in partnership with the Friends of Christopher Columbus Park, the Wharf District Council and the City of Boston is proud to announce the New Year's Eve Midnight Harbor Fireworks! This beloved nearly 40-year old tradition is made possible by the generous support of local waterfront organizations and businesses and the support of the City of Boston and the Office of Mayor Marty Walsh.\",\r\n className: 'bg-success-subtle',\r\n location: 'Boston Harborwalk, Christopher Columbus Park,
    Boston, MA 02109, United States',\r\n organizer: 'Boston Harbor Now'\r\n },\r\n {\r\n title: \"Crain's New York Business\",\r\n start: `${currentYear}-${currentMonth}-11`,\r\n description:\r\n \"Crain's 2020 Hall of Fame. Sponsored Content By Crain's Content Studio. Crain's Content Studio Presents: New Jersey: Perfect for Business. Crain's Business Forum: Letitia James, New York State Attorney General. Crain's NYC Summit: Examining racial disparities during the pandemic\",\r\n className: 'bg-primary-subtle'\r\n },\r\n {\r\n title: 'Conference',\r\n start: `${currentYear}-${currentMonth}-${currentDay}`,\r\n description:\r\n 'The Milken Institute Global Conference gathered the best minds in the world to tackle some of its most stubborn challenges. It was a unique experience in which individuals with the power to enact change connected with experts who are reinventing health, technology, philanthropy, industry, and media.',\r\n className: 'bg-success-subtle',\r\n allDay: true,\r\n schedules: [\r\n {\r\n title: 'Reporting',\r\n start: `${currentYear}-${currentMonth}-${currentDay} 11:00:00`,\r\n description: 'Time to start the conference and will briefly describe all information about the event. ',\r\n className: 'event-bg-success-subtle'\r\n },\r\n {\r\n title: 'Lunch',\r\n start: `${currentYear}-${currentMonth}-${currentDay} 14:00:00`,\r\n description: 'Lunch facility for all the attendance in the conference.',\r\n className: 'event-bg-success-subtle'\r\n },\r\n {\r\n title: 'Contest',\r\n start: `${currentYear}-${currentMonth}-${currentDay} 16:00:00`,\r\n description: 'The starting of the programming contest',\r\n className: 'event-bg-success-subtle'\r\n },\r\n {\r\n title: 'Dinner',\r\n start: `${currentYear}-${currentMonth}-${currentDay} 22:00:00`,\r\n description: 'Dinner facility for all the attendance in the conference',\r\n className: 'event-bg-success-subtle'\r\n }\r\n ]\r\n },\r\n {\r\n title: `ICT Expo ${currentYear} - Product Release`,\r\n start: `${currentYear}-${currentMonth}-16 10:00:00`,\r\n description: `ICT Expo ${currentYear} is the largest private-sector exposition aimed at showcasing IT and ITES products and services in Switzerland.`,\r\n end: `${currentYear}-${currentMonth}-18 16:00:00`,\r\n className: 'bg-warning-subtle'\r\n },\r\n {\r\n title: 'Meeting',\r\n start: `${currentYear}-${currentMonth}-07 10:00:00`,\r\n description: 'Discuss about the upcoming projects in current year and assign all tasks to the individuals'\r\n },\r\n {\r\n title: 'Contest',\r\n start: `${currentYear}-${currentMonth}-14 10:00:00`,\r\n description:\r\n 'PeaceX is an international peace and amity organisation that aims at casting a pall at the striking issues surmounting the development of peoples and is committed to impacting the lives of young people all over the world.'\r\n },\r\n {\r\n title: 'Event With Url',\r\n start: `${currentYear}-${currentMonth}-23`,\r\n description: 'Sample example of a event with url. Click the event, will redirect to the given link.',\r\n className: 'bg-success-subtle',\r\n url: 'http://google.com'\r\n },\r\n {\r\n title: 'Competition',\r\n start: `${currentYear}-${currentMonth}-26`,\r\n description:\r\n 'The Future of Zambia – Top 30 Under 30 is an annual award, ranking scheme, and recognition platform for young Zambian achievers under the age of 30, who are building brands, creating jobs, changing the game, and transforming the country.',\r\n className: 'bg-danger-subtle'\r\n },\r\n {\r\n title: 'Birthday Party',\r\n start: `${currentYear}-${nextMonth}-05`,\r\n description: 'Will celebrate birthday party with my friends and family',\r\n className: 'bg-primary-subtle'\r\n },\r\n {\r\n title: 'Click for Google',\r\n url: 'http://google.com/',\r\n start: `${currentYear}-${prevMonth}-10`,\r\n description:\r\n 'Applications are open for the New Media Writing Prize 2020. The New Media Writing Prize (NMWP) showcases exciting and inventive stories and poetry that integrate a variety of formats, platforms, and digital media.',\r\n className: 'bg-primary-subtle'\r\n }\r\n];\r\n\r\nexport default events;\r\n","import utils from '../utils';\r\nimport events from './events';\r\nimport getTemplate from './template';\r\nimport { renderCalendar } from '../fullcalendar';\r\n\r\n/*-----------------------------------------------\r\n| Calendar\r\n-----------------------------------------------*/\r\nconst appCalendarInit = () => {\r\n const Selectors = {\r\n ACTIVE: '.active',\r\n ADD_EVENT_FORM: '#addEventForm',\r\n ADD_EVENT_MODAL: '#addEventModal',\r\n CALENDAR: '#appCalendar',\r\n CALENDAR_TITLE: '.calendar-title',\r\n DATA_CALENDAR_VIEW: '[data-fc-view]',\r\n DATA_EVENT: '[data-event]',\r\n DATA_VIEW_TITLE: '[data-view-title]',\r\n EVENT_DETAILS_MODAL: '#eventDetailsModal',\r\n EVENT_DETAILS_MODAL_CONTENT: '#eventDetailsModal .modal-content',\r\n EVENT_START_DATE: \"#addEventModal [name='startDate']\",\r\n INPUT_TITLE: \"[name='title']\"\r\n };\r\n\r\n const Events = {\r\n CLICK: 'click',\r\n SHOWN_BS_MODAL: 'shown.bs.modal',\r\n SUBMIT: 'submit'\r\n };\r\n\r\n const DataKeys = {\r\n EVENT: 'event',\r\n FC_VIEW: 'fc-view'\r\n };\r\n\r\n const ClassNames = {\r\n ACTIVE: 'active'\r\n };\r\n\r\n const eventList = events.reduce((acc, val) => {\r\n if (val.schedules) {\r\n return acc.concat(val.schedules.concat(val));\r\n }\r\n return acc.concat(val);\r\n }, []);\r\n\r\n const updateTitle = title => {\r\n document.querySelector(Selectors.CALENDAR_TITLE).textContent = title;\r\n };\r\n\r\n const appCalendar = document.querySelector(Selectors.CALENDAR);\r\n const addEventForm = document.querySelector(Selectors.ADD_EVENT_FORM);\r\n const addEventModal = document.querySelector(Selectors.ADD_EVENT_MODAL);\r\n const eventDetailsModal = document.querySelector(Selectors.EVENT_DETAILS_MODAL);\r\n\r\n if (appCalendar) {\r\n const calendar = renderCalendar(appCalendar, {\r\n headerToolbar: false,\r\n dayMaxEvents: 2,\r\n height: 800,\r\n stickyHeaderDates: false,\r\n views: {\r\n week: {\r\n eventLimit: 3\r\n }\r\n },\r\n eventTimeFormat: {\r\n hour: 'numeric',\r\n minute: '2-digit',\r\n omitZeroMinute: true,\r\n meridiem: true\r\n },\r\n events: eventList,\r\n eventClick: info => {\r\n if (info.event.url) {\r\n window.open(info.event.url, '_blank');\r\n info.jsEvent.preventDefault();\r\n } else {\r\n const template = getTemplate(info.event);\r\n document.querySelector(Selectors.EVENT_DETAILS_MODAL_CONTENT).innerHTML = template;\r\n const modal = new window.bootstrap.Modal(eventDetailsModal);\r\n modal.show();\r\n }\r\n },\r\n dateClick(info) {\r\n const modal = new window.bootstrap.Modal(addEventModal);\r\n modal.show();\r\n const flatpickr = document.querySelector(Selectors.EVENT_START_DATE)._flatpickr;\r\n flatpickr.setDate([info.dateStr]);\r\n }\r\n });\r\n\r\n updateTitle(calendar.currentData.viewTitle);\r\n\r\n document.querySelectorAll(Selectors.DATA_EVENT).forEach(button => {\r\n button.addEventListener(Events.CLICK, e => {\r\n const el = e.currentTarget;\r\n const type = utils.getData(el, DataKeys.EVENT);\r\n switch (type) {\r\n case 'prev':\r\n calendar.prev();\r\n updateTitle(calendar.currentData.viewTitle);\r\n break;\r\n case 'next':\r\n calendar.next();\r\n updateTitle(calendar.currentData.viewTitle);\r\n break;\r\n case 'today':\r\n calendar.today();\r\n updateTitle(calendar.currentData.viewTitle);\r\n break;\r\n default:\r\n calendar.today();\r\n updateTitle(calendar.currentData.viewTitle);\r\n break;\r\n }\r\n });\r\n });\r\n\r\n document.querySelectorAll(Selectors.DATA_CALENDAR_VIEW).forEach(link => {\r\n link.addEventListener(Events.CLICK, e => {\r\n e.preventDefault();\r\n const el = e.currentTarget;\r\n const text = el.textContent;\r\n el.parentElement.querySelector(Selectors.ACTIVE).classList.remove(ClassNames.ACTIVE);\r\n el.classList.add(ClassNames.ACTIVE);\r\n document.querySelector(Selectors.DATA_VIEW_TITLE).textContent = text;\r\n calendar.changeView(utils.getData(el, DataKeys.FC_VIEW));\r\n updateTitle(calendar.currentData.viewTitle);\r\n });\r\n });\r\n\r\n addEventForm &&\r\n addEventForm.addEventListener(Events.SUBMIT, e => {\r\n e.preventDefault();\r\n const { title, startDate, endDate, label, description, allDay } = e.target;\r\n calendar.addEvent({\r\n title: title.value,\r\n start: startDate.value,\r\n end: endDate.value ? endDate.value : null,\r\n allDay: allDay.checked,\r\n className: allDay.checked && label.value ? `bg-${label.value}-subtle` : '',\r\n description: description.value\r\n });\r\n e.target.reset();\r\n window.bootstrap.Modal.getInstance(addEventModal).hide();\r\n });\r\n }\r\n\r\n addEventModal &&\r\n addEventModal.addEventListener(Events.SHOWN_BS_MODAL, ({ currentTarget }) => {\r\n currentTarget.querySelector(Selectors.INPUT_TITLE).focus();\r\n });\r\n};\r\n\r\nexport default appCalendarInit;\r\n","import utils from '../utils';\r\nimport managementEvents from './management-events';\r\nimport { renderCalendar } from '../fullcalendar';\r\nimport getTemplate from './template';\r\n\r\n/*-----------------------------------------------\r\n| Project Management Calendar\r\n-----------------------------------------------*/\r\nconst managementCalendarInit = () => {\r\n const Selectors = {\r\n ADD_EVENT_FORM: '#addEventForm',\r\n ADD_EVENT_MODAL: '#addEventModal',\r\n CALENDAR: '#managementAppCalendar',\r\n EVENT_DETAILS_MODAL: '#eventDetailsModal',\r\n EVENT_DETAILS_MODAL_CONTENT: '#eventDetailsModal .modal-content',\r\n DATA_EVENT: '[data-event]',\r\n DATA_VIEW_TITLE: '[data-view-title]',\r\n EVENT_START_DATE: '#addEventModal [name=\"startDate\"]',\r\n EVENT_MANAGEMENT_INFO: '[data-calendar-events]'\r\n };\r\n\r\n const Events = {\r\n CLICK: 'click',\r\n SUBMIT: 'submit'\r\n };\r\n\r\n const managementEventList = [];\r\n const DataKeys = {\r\n EVENT: 'event'\r\n };\r\n\r\n const managementCalendar = document.querySelector(Selectors.CALENDAR);\r\n\r\n if (managementCalendar) {\r\n const calendarData = utils.getData(managementCalendar, 'calendar-option');\r\n const managementCalendarEvents = document.getElementById(calendarData?.events);\r\n const addEventForm = document.querySelector(Selectors.ADD_EVENT_FORM);\r\n const addEventModal = document.querySelector(Selectors.ADD_EVENT_MODAL);\r\n const eventDetailsModal = document.querySelector(Selectors.EVENT_DETAILS_MODAL);\r\n const updateTitle = title => {\r\n const selectTitle = document.getElementById(calendarData?.title);\r\n if (selectTitle) {\r\n selectTitle.textContent = title;\r\n }\r\n };\r\n\r\n const updateDay = day => {\r\n const days = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];\r\n const selectDay = document.getElementById(calendarData?.day);\r\n if (selectDay) {\r\n selectDay.textContent = days[day];\r\n }\r\n };\r\n\r\n if (managementEvents) {\r\n managementEvents.forEach(e => {\r\n managementEventList.push({\r\n start: e.start,\r\n end: e.end,\r\n display: 'background',\r\n classNames: `border border-2 border-${e.classNames} bg-100`\r\n });\r\n });\r\n }\r\n\r\n if (managementCalendarEvents) {\r\n managementEvents.forEach(e => {\r\n managementCalendarEvents.innerHTML += `\r\n
  • \r\n
    \r\n
    ${e.title}
    \r\n

    ${e.startTime || ''} ${e.endTime ? '-' : ''} ${e.endTime || ''}

    \r\n
    \r\n
  • `;\r\n });\r\n }\r\n\r\n const eventManagementInfo = document.querySelectorAll(Selectors.EVENT_MANAGEMENT_INFO);\r\n\r\n if (eventManagementInfo) {\r\n eventManagementInfo.forEach((li, index) => {\r\n li.addEventListener(Events.CLICK, () => {\r\n const event = managementEvents[index];\r\n const template = getTemplate(event);\r\n document.querySelector(Selectors.EVENT_DETAILS_MODAL_CONTENT).innerHTML = template;\r\n const modal = new window.bootstrap.Modal(eventDetailsModal);\r\n modal.show();\r\n });\r\n });\r\n }\r\n\r\n if (managementCalendar) {\r\n const calendar = renderCalendar(managementCalendar, {\r\n headerToolbar: false,\r\n dayMaxEvents: 2,\r\n height: 360,\r\n stickyHeaderDates: false,\r\n dateClick(info) {\r\n const modal = new window.bootstrap.Modal(addEventModal);\r\n modal.show();\r\n const flatpickr = document.querySelector(Selectors.EVENT_START_DATE)._flatpickr;\r\n flatpickr.setDate([info.dateStr]);\r\n },\r\n events: managementEventList\r\n });\r\n\r\n updateTitle(calendar.currentData.viewTitle);\r\n updateDay(calendar.currentData.currentDate.getDay());\r\n\r\n document.querySelectorAll(Selectors.DATA_EVENT).forEach(button => {\r\n button.addEventListener(Events.CLICK, e => {\r\n const el = e.currentTarget;\r\n const type = utils.getData(el, DataKeys.EVENT);\r\n switch (type) {\r\n case 'prev':\r\n calendar.prev();\r\n updateTitle(calendar.currentData.viewTitle);\r\n break;\r\n case 'next':\r\n calendar.next();\r\n updateTitle(calendar.currentData.viewTitle);\r\n break;\r\n case 'today':\r\n calendar.today();\r\n updateTitle(calendar.currentData.viewTitle);\r\n break;\r\n default:\r\n calendar.today();\r\n updateTitle(calendar.currentData.viewTitle);\r\n break;\r\n }\r\n });\r\n });\r\n\r\n if (addEventForm) {\r\n addEventForm.addEventListener(Events.SUBMIT, e => {\r\n e.preventDefault();\r\n e.target.reset();\r\n window.bootstrap.Modal.getInstance(addEventModal).hide();\r\n });\r\n }\r\n }\r\n }\r\n};\r\n\r\nexport default managementCalendarInit;\r\n","const thisDay = window.dayjs && window.dayjs().format('DD');\r\nconst plus2Day = window.dayjs && window.dayjs().add(2, 'day').format('DD');\r\nconst thisMonthNumber = window.dayjs && window.dayjs().format('MM');\r\nconst thisMonthName = window.dayjs && window.dayjs().format('MMM');\r\nconst upcomingMonthNumber = window.dayjs && window.dayjs().add(1, 'month').format('MM');\r\nconst upcomingMonthName = window.dayjs && window.dayjs().format('MMM');\r\n\r\nconst thisYear = window.dayjs && window.dayjs().format('YYYY');\r\nconst managementEvents = [\r\n {\r\n title: 'Monthly team meeting for Falcon React Project',\r\n start: `${thisYear}-${thisMonthNumber}-07`,\r\n end: `${thisYear}-${thisMonthNumber}-09`,\r\n startTime: `07 ${thisMonthName}, ${thisYear}`,\r\n endTime: `10 ${thisMonthName}, ${thisYear}`,\r\n classNames: 'primary',\r\n extendedProps: {\r\n description:\r\n 'Boston Harbor Now in partnership with the Friends of Christopher Columbus Park, the Wharf District Council.',\r\n location:\r\n 'Boston Harborwalk, Christopher Columbus Park,
    Boston, MA 02109, United States',\r\n organizer: 'Boston Harbor Now'\r\n }\r\n },\r\n {\r\n title: 'Newmarket Nights',\r\n start: `${thisYear}-${thisMonthNumber}-16`,\r\n end: `${thisYear}-${thisMonthNumber}-18`,\r\n startTime: `16 ${thisMonthName}, ${thisYear}`,\r\n classNames: 'success',\r\n extendedProps: {\r\n description:\r\n 'Boston Harbor Now in partnership with the Friends of Christopher Columbus Park, the Wharf District Council.',\r\n location:\r\n 'Boston Harborwalk, Christopher Columbus Park,
    Boston, MA 02109, United States',\r\n organizer: 'Boston Harbor Now'\r\n }\r\n },\r\n {\r\n title: 'Folk Festival',\r\n start: `${thisYear}-${thisMonthNumber}-25`,\r\n end: `${thisYear}-${thisMonthNumber}-28`,\r\n startTime: `07 ${thisMonthName}, ${thisYear}`,\r\n endTime: `10 ${thisMonthName}, ${thisYear}`,\r\n classNames: 'warning',\r\n extendedProps: {\r\n description:\r\n 'Boston Harbor Now in partnership with the Friends of Christopher Columbus Park, the Wharf District Council.',\r\n location:\r\n 'Boston Harborwalk, Christopher Columbus Park,
    Boston, MA 02109, United States',\r\n organizer: 'Boston Harbor Now'\r\n }\r\n },\r\n {\r\n title: 'Film Festival',\r\n start: `${thisYear}-${upcomingMonthNumber}-${thisDay}`,\r\n end: `${thisYear}-${upcomingMonthNumber}-${plus2Day}`,\r\n startTime: `07 ${upcomingMonthName}, ${thisYear}`,\r\n endTime: `10 ${upcomingMonthName}, ${thisYear}`,\r\n classNames: 'danger',\r\n extendedProps: {\r\n description:\r\n 'Boston Harbor Now in partnership with the Friends of Christopher Columbus Park, the Wharf District Council.',\r\n location:\r\n 'Boston Harborwalk, Christopher Columbus Park,
    Boston, MA 02109, United States',\r\n organizer: 'Boston Harbor Now'\r\n }\r\n },\r\n {\r\n title: 'Meeting',\r\n start: `${thisYear}-${upcomingMonthNumber}-28`,\r\n startTime: `07 ${upcomingMonthName}, ${thisYear}`,\r\n classNames: 'warning',\r\n extendedProps: {\r\n description:\r\n 'Boston Harbor Now in partnership with the Friends of Christopher Columbus Park, the Wharf District Council.',\r\n location:\r\n 'Boston Harborwalk, Christopher Columbus Park,
    Boston, MA 02109, United States',\r\n organizer: 'Boston Harbor Now'\r\n }\r\n }\r\n];\r\n\r\nexport default managementEvents;\r\n","const getStackIcon = (icon, transform) => `\r\n \r\n \r\n \r\n \r\n`;\r\n\r\nconst getTemplate = event => `\r\n
    \r\n
    \r\n
    ${event.title}
    \r\n ${\r\n event.extendedProps.organizer\r\n ? `

    \r\n by ${event.extendedProps.organizer}\r\n

    `\r\n : ''\r\n}\r\n
    \r\n \r\n
    \r\n
    \r\n ${\r\n event.extendedProps.description\r\n ? `\r\n
    \r\n ${getStackIcon('fas fa-align-left')}\r\n
    \r\n
    Description
    \r\n

    \r\n \r\n ${event.extendedProps.description.split(' ').slice(0, 30).join(' ')}\r\n

    \r\n
    \r\n
    \r\n `\r\n : ''\r\n} \r\n
    \r\n ${getStackIcon('fas fa-calendar-check')}\r\n
    \r\n
    Date and Time
    \r\n

    \r\n ${window.dayjs && window.dayjs(event.start).format('dddd, MMMM D, YYYY, h:mm A')} \r\n ${\r\n event.end\r\n ? `–
    ${\r\n window.dayjs && window.dayjs(event.end).subtract(1, 'day').format('dddd, MMMM D, YYYY, h:mm A')\r\n }`\r\n : ''\r\n}\r\n

    \r\n
    \r\n
    \r\n ${\r\n event.extendedProps.location\r\n ? `\r\n
    \r\n ${getStackIcon('fas fa-map-marker-alt')}\r\n
    \r\n
    Location
    \r\n

    ${event.extendedProps.location}

    \r\n
    \r\n
    \r\n `\r\n : ''\r\n}\r\n ${\r\n event.schedules\r\n ? `\r\n
    \r\n ${getStackIcon('fas fa-clock')}\r\n
    \r\n
    Schedule
    \r\n \r\n
      \r\n ${event.schedules.map(schedule => `
    • ${schedule.title}
    • `).join('')}\r\n
    \r\n
    \r\n `\r\n : ''\r\n}\r\n
    \r\n
    \r\n\r\n`;\r\n\r\nexport default getTemplate;\r\n","import * as d3 from 'd3';\r\nimport utils from '../../utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* D3 Packed Bubble Chart */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst D3PackedBubbleInit = () => {\r\n const $d3PackedBubble = document.querySelector('.d3-packed-bubble-chart');\r\n\r\n if ($d3PackedBubble) {\r\n const width = 960;\r\n const height = 960;\r\n const itemsSpacing = 30;\r\n\r\n const svg = d3.select('.d3-packed-bubble-svg');\r\n const tooltip = d3.select('.d3-packed-bubble-tooltip');\r\n const tooltipDot = tooltip.select('.d3-tooltip-dot');\r\n const tooltipName = tooltip.select('.d3-tooltip-name');\r\n const tooltipValue = tooltip.select('.d3-tooltip-value');\r\n\r\n const tooltipStyles = {\r\n backgroundColor: utils.getColor('gray-100'),\r\n tooltipNameColor: utils.getColor('gray-700'),\r\n tooltipValueColor: utils.getColor('gray-700')\r\n };\r\n\r\n const labelStyles = {\r\n fill: '#ffffff',\r\n fontSize: '1.8rem'\r\n };\r\n\r\n const packedBubbleData = [\r\n { name: 'Blockchain', value: 160, color: '#2A7BE4' },\r\n { name: 'NFT', value: 20, color: '#1956A6' },\r\n { name: 'HTML', value: 90, color: '#195099' },\r\n { name: 'Crypto', value: 57, color: '#2A7BE4' },\r\n { name: 'Photoshop', value: 117, color: '#2A7BE4' },\r\n { name: 'UX', value: 20, color: '#1956A6' },\r\n { name: 'AWS', value: 90, color: '#195099' },\r\n { name: '3D', value: 33, color: '#9DBFEB' },\r\n { name: 'Writing', value: 117, color: '#2A7BE4' },\r\n { name: 'sql', value: 20, color: '#1956A6' },\r\n { name: 'Blender', value: 90, color: '#195099' },\r\n { name: 'UI/UX', value: 33, color: '#9DBFEB' },\r\n { name: 'Blockchain', value: 117, color: '#2A7BE4' },\r\n { name: 'css', value: 20, color: '#1956A6' },\r\n { name: 'Marketing', value: 90, color: '#195099' },\r\n { name: 'Meta', value: 33, color: '#9DBFEB' },\r\n { name: 'js', value: 12, color: '#0F67D9' },\r\n { name: 'FOREX', value: 66, color: '#7FA5D5' },\r\n { name: 'UI', value: 33, color: '#8ABBFB' },\r\n { name: 'Vector', value: 56, color: '#85B6F5' },\r\n { name: 'CAD', value: 28, color: '#6486B4' },\r\n { name: 'Python', value: 66, color: '#2A7BE4' },\r\n { name: 'Adobe', value: 66, color: '#68A0E9' },\r\n { name: 'C#', value: 20, color: '#385780' },\r\n { name: 'Branding', value: 88, color: '#74A2DE' },\r\n { name: 'Bitcoin', value: 80, color: '#4E7AB4' },\r\n { name: 'AI', value: 34, color: '#71AFFF' }\r\n ];\r\n\r\n const generateChart = data => {\r\n const bubble = bubbleData =>\r\n d3.pack().size([width, height]).padding(itemsSpacing)(\r\n d3.hierarchy({ children: bubbleData }).sum(d => d.value)\r\n );\r\n\r\n tooltip.style('visibility', 'hidden');\r\n\r\n svg.attr('width', '100%').attr('height', '100%').attr('viewBox', `-20 10 ${width} ${height}`);\r\n\r\n const root = bubble(data);\r\n\r\n const node = svg\r\n .selectAll()\r\n .data(root.children)\r\n .enter()\r\n .append('g')\r\n .style('cursor', 'pointer')\r\n .style('pointer-events', 'all')\r\n .attr('text-anchor', 'middle')\r\n .on('mousemove', e =>\r\n tooltip.style('top', `${e.clientY - 40}px`).style('left', `${e.clientX - 40}px`)\r\n )\r\n .attr('transform', d => `translate(${d.x}, ${d.y})`);\r\n\r\n const circle = node\r\n .append('circle')\r\n .style('fill', d => d.data.color)\r\n .on('mouseover', (e, d) => {\r\n d3.select(e.target)\r\n .transition()\r\n .ease(d3.easeExpInOut)\r\n .duration(200)\r\n .attr('r', diagram => diagram.r * 1.1);\r\n tooltip\r\n .style('visibility', 'visible')\r\n .style('z-index', '100000')\r\n .style('background-color', tooltipStyles.backgroundColor)\r\n .style('border', `1px solid ${d.data.color}`);\r\n tooltipDot.style('background-color', d.data.color);\r\n tooltipName.text(d.data.name).style('color', tooltipStyles.tooltipNameColor);\r\n tooltipValue.text(d.data.value).style('color', tooltipStyles.tooltipValueColor);\r\n })\r\n .on('mouseout', e => {\r\n d3.select(e.target)\r\n .transition()\r\n .ease(d3.easeExpInOut)\r\n .duration(200)\r\n .attr('r', d => d.r);\r\n tooltip.style('visibility', 'hidden');\r\n });\r\n\r\n const label = node\r\n .append('text')\r\n .style('fill', labelStyles.fill)\r\n .style('font-size', labelStyles.fontSize)\r\n .style('pointer-events', 'none')\r\n .style('opacity', 0)\r\n .attr('dy', '.35em')\r\n .text(d => d.data.name);\r\n\r\n node.transition().ease(d3.easeExpInOut).duration(1000);\r\n\r\n circle\r\n .transition()\r\n .ease(d3.easeExpInOut)\r\n .duration(1000)\r\n .attr('r', d => d.r);\r\n\r\n label\r\n .transition()\r\n .delay(400)\r\n .ease(d3.easeExpInOut)\r\n .duration(2000)\r\n .style('opacity', 1);\r\n };\r\n\r\n generateChart(packedBubbleData);\r\n }\r\n};\r\n\r\nexport default D3PackedBubbleInit;\r\n","import * as d3 from 'd3';\r\nimport utils from '../../utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Trending Keywords */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst trendingKeywordsInit = () => {\r\n const $d3TrendingKeywords = document.querySelector('.d3-trending-keywords');\r\n\r\n if ($d3TrendingKeywords) {\r\n const width = 960;\r\n const height = 960;\r\n const itemsSpacing = 30;\r\n\r\n const svg = d3.select('.d3-trending-keywords-svg');\r\n const tooltip = d3.select('.d3-trending-keywords-tooltip');\r\n const tooltipDot = tooltip.select('.d3-tooltip-dot');\r\n const tooltipName = tooltip.select('.d3-tooltip-name');\r\n const tooltipValue = tooltip.select('.d3-tooltip-value');\r\n\r\n const tooltipStyles = {\r\n backgroundColor: utils.getColor('gray-100'),\r\n tooltipNameColor: utils.getColor('gray-700'),\r\n tooltipValueColor: utils.getColor('gray-700'),\r\n };\r\n\r\n const labelStyles = {\r\n fill: '#ffffff',\r\n fontSize: '1.8rem',\r\n };\r\n\r\n const trendingKeywordsData = [\r\n { name: 'Blockchain', value: 160, color: '#2A7BE4' },\r\n { name: 'NFT', value: 20, color: '#1956A6' },\r\n { name: 'HTML', value: 90, color: '#195099' },\r\n { name: 'Crypto', value: 57, color: '#2A7BE4' },\r\n { name: 'Photoshop', value: 117, color: '#2A7BE4' },\r\n { name: 'UX', value: 20, color: '#1956A6' },\r\n { name: 'AWS', value: 90, color: '#195099' },\r\n { name: '3D', value: 33, color: '#9DBFEB' },\r\n { name: 'Writing', value: 117, color: '#2A7BE4' },\r\n { name: 'sql', value: 20, color: '#1956A6' },\r\n { name: 'Blender', value: 90, color: '#195099' },\r\n { name: 'UI/UX', value: 33, color: '#9DBFEB' },\r\n { name: 'Blockchain', value: 117, color: '#2A7BE4' },\r\n { name: 'css', value: 20, color: '#1956A6' },\r\n { name: 'Marketing', value: 90, color: '#195099' },\r\n { name: 'Meta', value: 33, color: '#9DBFEB' },\r\n { name: 'js', value: 12, color: '#0F67D9' },\r\n { name: 'FOREX', value: 66, color: '#7FA5D5' },\r\n { name: 'UI', value: 33, color: '#8ABBFB' },\r\n { name: 'Vector', value: 56, color: '#85B6F5' },\r\n { name: 'CAD', value: 28, color: '#6486B4' },\r\n { name: 'Python', value: 66, color: '#2A7BE4' },\r\n { name: 'Adobe', value: 66, color: '#68A0E9' },\r\n { name: 'C#', value: 20, color: '#385780' },\r\n { name: 'Branding', value: 88, color: '#74A2DE' },\r\n { name: 'Bitcoin', value: 80, color: '#4E7AB4' },\r\n { name: 'AI', value: 34, color: '#71AFFF' },\r\n ];\r\n\r\n const generateChart = (data) => {\r\n const bubble = (bubbleData) =>\r\n d3.pack().size([width, height]).padding(itemsSpacing)(\r\n d3.hierarchy({ children: bubbleData }).sum((d) => d.value)\r\n );\r\n\r\n tooltip.style('visibility', 'hidden');\r\n\r\n svg\r\n .attr('width', '100%')\r\n .attr('height', '100%')\r\n .attr('viewBox', `-20 10 ${width} ${height}`);\r\n\r\n const root = bubble(data);\r\n\r\n const node = svg\r\n .selectAll()\r\n .data(root.children)\r\n .enter()\r\n .append('g')\r\n .style('cursor', 'pointer')\r\n .style('pointer-events', 'all')\r\n .attr('text-anchor', 'middle')\r\n .on('mousemove', (e) =>\r\n tooltip\r\n .style('top', `${e.clientY - 40}px`)\r\n .style('left', `${e.clientX - 40}px`)\r\n )\r\n .attr('transform', (d) => `translate(${d.x}, ${d.y})`);\r\n\r\n const circle = node\r\n .append('circle')\r\n .style('fill', (d) => d.data.color)\r\n .on('mouseover', (e, d) => {\r\n d3.select(e.target)\r\n .transition()\r\n .ease(d3.easeExpInOut)\r\n .duration(200)\r\n .attr('r', (diagram) => diagram.r * 1.1);\r\n tooltip\r\n .style('visibility', 'visible')\r\n .style('z-index', '100000')\r\n .style('background-color', tooltipStyles.backgroundColor)\r\n .style('border', `1px solid ${d.data.color}`);\r\n tooltipDot.style('background-color', d.data.color);\r\n tooltipName\r\n .text(d.data.name)\r\n .style('color', tooltipStyles.tooltipNameColor);\r\n tooltipValue\r\n .text(d.data.value)\r\n .style('color', tooltipStyles.tooltipValueColor);\r\n })\r\n .on('mouseout', (e) => {\r\n d3.select(e.target)\r\n .transition()\r\n .ease(d3.easeExpInOut)\r\n .duration(200)\r\n .attr('r', (d) => d.r);\r\n tooltip.style('visibility', 'hidden');\r\n });\r\n\r\n const label = node\r\n .append('text')\r\n .style('fill', labelStyles.fill)\r\n .style('font-size', labelStyles.fontSize)\r\n .style('pointer-events', 'none')\r\n .style('opacity', 0)\r\n .attr('dy', '.35em')\r\n .text((d) => d.data.name);\r\n\r\n node.transition().ease(d3.easeExpInOut).duration(1000);\r\n\r\n circle\r\n .transition()\r\n .ease(d3.easeExpInOut)\r\n .duration(1000)\r\n .attr('r', (d) => d.r);\r\n\r\n label\r\n .transition()\r\n .delay(400)\r\n .ease(d3.easeExpInOut)\r\n .duration(2000)\r\n .style('opacity', 1);\r\n };\r\n\r\n generateChart(trendingKeywordsData);\r\n }\r\n};\r\n\r\nexport default trendingKeywordsInit;\r\n","import utils from '../../utils';\r\nimport { chartJsDefaultTooltip, chartJsInit } from './chartjs-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* bar-chart */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst barChartInit = () => {\r\n const barChartElement = document.getElementById('chartjs-bar-chart');\r\n\r\n const getOptions = () => ({\r\n type: 'bar',\r\n data: {\r\n labels: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun'],\r\n datasets: [\r\n {\r\n label: '# of Votes',\r\n data: [12, 19, 3, 5, 6, 3],\r\n backgroundColor: [\r\n utils.getSubtleColors().secondary,\r\n utils.getSubtleColors().warning,\r\n utils.getSubtleColors().info,\r\n utils.getSubtleColors().success,\r\n utils.getSubtleColors().info,\r\n utils.getSubtleColors().primary\r\n ],\r\n borderWidth: 0\r\n }\r\n ]\r\n },\r\n options: {\r\n plugins: {\r\n tooltip: chartJsDefaultTooltip(),\r\n legend: {\r\n labels: {\r\n color: utils.getGrays()['500']\r\n }\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: utils.getGrays()['500']\r\n },\r\n grid: {\r\n color: utils.getGrays()['300'],\r\n drawBorder: false\r\n }\r\n },\r\n y: {\r\n ticks: {\r\n color: utils.getGrays()['500']\r\n },\r\n grid: {\r\n color: utils.getGrays()['300'],\r\n drawBorder: false\r\n }\r\n }\r\n }\r\n }\r\n });\r\n\r\n chartJsInit(barChartElement, getOptions);\r\n};\r\n\r\nexport default barChartInit;\r\n","import utils from '../../utils';\r\nimport { chartJsDefaultTooltip, chartJsInit, getBubbleDataset } from './chartjs-utils';\r\n/* -------------------------------------------------------------------------- */\r\n/* Chart Bubble */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst chartBubble = () => {\r\n const pie = document.getElementById('chartjs-bubble-chart');\r\n const getOptions = () => ({\r\n type: 'bubble',\r\n data: {\r\n datasets: [\r\n {\r\n label: 'Dataset 1',\r\n data: getBubbleDataset(5, 5, 15, 0, 100),\r\n backgroundColor: utils.getColor('info'),\r\n hoverBackgroundColor: utils.getColor('info')\r\n },\r\n {\r\n label: 'Dataset 2',\r\n data: getBubbleDataset(5, 5, 15, 0, 100),\r\n backgroundColor: utils.getColor('success'),\r\n hoverBackgroundColor: utils.getColor('success')\r\n },\r\n {\r\n label: 'Dataset 3',\r\n data: getBubbleDataset(5, 5, 15, 0, 100),\r\n backgroundColor: utils.getColor('warning'),\r\n hoverBackgroundColor: utils.getColor('warning')\r\n }\r\n ]\r\n },\r\n options: {\r\n plugins: {\r\n legend: {\r\n position: 'top',\r\n labels: {\r\n color: utils.getGrays()['500']\r\n }\r\n },\r\n tooltip: chartJsDefaultTooltip()\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: utils.getGrays()['500']\r\n },\r\n grid: {\r\n color: utils.getGrays()['300'],\r\n drawBorder: false\r\n }\r\n },\r\n y: {\r\n ticks: {\r\n color: utils.getGrays()['500']\r\n },\r\n grid: {\r\n color: utils.getGrays()['300'],\r\n drawBorder: false\r\n }\r\n }\r\n }\r\n }\r\n });\r\n\r\n chartJsInit(pie, getOptions);\r\n};\r\n\r\nexport default chartBubble;\r\n","import utils from '../../utils';\r\nimport { chartJsDefaultTooltip, chartJsInit } from './chartjs-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Chart Combo */\r\n/* -------------------------------------------------------------------------- */\r\nconst chartCombo = () => {\r\n const combo = document.getElementById('chartjs-combo-chart');\r\n\r\n const getOptions = () => ({\r\n type: 'bar',\r\n data: {\r\n labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'],\r\n datasets: [\r\n {\r\n type: 'line',\r\n label: 'Dataset 1',\r\n borderColor: utils.getColor('primary'),\r\n borderWidth: 2,\r\n fill: false,\r\n data: [55, 80, -60, -22, -50, 40, 90]\r\n },\r\n {\r\n type: 'bar',\r\n label: 'Dataset 2',\r\n backgroundColor: utils.getSubtleColors().danger,\r\n data: [4, -80, 90, -22, 70, 35, -50],\r\n borderWidth: 1\r\n },\r\n {\r\n type: 'bar',\r\n label: 'Dataset 3',\r\n backgroundColor: utils.getSubtleColors().primary,\r\n data: [-30, 30, -18, 100, -45, -25, -50],\r\n borderWidth: 1\r\n }\r\n ]\r\n },\r\n options: {\r\n maintainAspectRatio: false,\r\n plugins: {\r\n tooltip: chartJsDefaultTooltip(),\r\n legend: {\r\n position: 'top',\r\n labels: {\r\n color: utils.getGrays()['500']\r\n }\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: utils.getGrays()['500']\r\n },\r\n grid: {\r\n color: utils.getGrays()['300'],\r\n drawBorder: false\r\n }\r\n },\r\n y: {\r\n ticks: {\r\n color: utils.getGrays()['500']\r\n },\r\n grid: {\r\n color: utils.getGrays()['300'],\r\n drawBorder: false\r\n }\r\n }\r\n }\r\n }\r\n });\r\n\r\n chartJsInit(combo, getOptions);\r\n};\r\n\r\nexport default chartCombo;\r\n","import utils from '../../utils';\r\nimport { chartJsDefaultTooltip, chartJsInit } from './chartjs-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Chart Doughnut */\r\n/* -------------------------------------------------------------------------- */\r\nconst chartDoughnut = () => {\r\n const doughnut = document.getElementById('chartjs-doughnut-chart');\r\n\r\n const getOptions = () => ({\r\n type: 'doughnut',\r\n data: {\r\n datasets: [\r\n {\r\n data: [5, 3, 2, 1, 1],\r\n backgroundColor: [\r\n utils.rgbaColor(utils.getColor('facebook'), 0.75),\r\n utils.rgbaColor(utils.getColor('youtube'), 0.75),\r\n utils.rgbaColor(utils.getColor('twitter'), 0.75),\r\n utils.rgbaColor(utils.getColor('linkedin'), 0.75),\r\n utils.rgbaColor(utils.getColor('github'), 0.75)\r\n ],\r\n borderWidth: 1,\r\n borderColor: utils.getGrays()['100']\r\n }\r\n ],\r\n\r\n labels: ['Facebook', 'Youtube', 'Twitter', 'Linkedin', 'GitHub']\r\n },\r\n options: {\r\n plugins: {\r\n tooltip: chartJsDefaultTooltip(),\r\n legend: {\r\n labels: {\r\n color: utils.getGrays()['500']\r\n }\r\n }\r\n },\r\n maintainAspectRatio: false\r\n }\r\n });\r\n\r\n chartJsInit(doughnut, getOptions);\r\n};\r\n\r\nexport default chartDoughnut;\r\n","import utils from '../../utils';\r\nimport { chartJsInit } from './chartjs-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Chart Half Doughnut */\r\n/* -------------------------------------------------------------------------- */\r\nconst chartHalfDoughnutInit = () => {\r\n const $chartHalfDoughnuts = document.querySelectorAll('[data-half-doughnut]');\r\n\r\n $chartHalfDoughnuts.forEach($chartHalfDoughnut => {\r\n if ($chartHalfDoughnut) {\r\n const getOptions = () => {\r\n const userOptions = utils.getData($chartHalfDoughnut, 'half-doughnut');\r\n const defaultOptions = {\r\n type: 'doughnut',\r\n data: {\r\n labels: ['Reached', 'Target'],\r\n datasets: [\r\n {\r\n data: [50, 50],\r\n backgroundColor: ['primary', 'gray-300'],\r\n borderWidth: [0, 0, 0, 0]\r\n }\r\n ]\r\n },\r\n options: {\r\n rotation: -90,\r\n circumference: '180',\r\n cutout: '80%',\r\n hover: { mode: null },\r\n plugins: {\r\n legend: {\r\n display: false\r\n },\r\n tooltip: {\r\n enabled: false\r\n }\r\n }\r\n }\r\n };\r\n const options = window._.merge(defaultOptions, userOptions);\r\n const mergedDatasets = options.data.datasets[0];\r\n\r\n mergedDatasets.backgroundColor = [\r\n utils.getColor(mergedDatasets.backgroundColor[0]),\r\n utils.getColor(mergedDatasets.backgroundColor[1])\r\n ];\r\n\r\n return options;\r\n };\r\n\r\n chartJsInit($chartHalfDoughnut, getOptions);\r\n }\r\n });\r\n};\r\n\r\nexport default chartHalfDoughnutInit;\r\n","import utils from '../../utils';\r\nimport { chartJsDefaultTooltip, chartJsInit } from './chartjs-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Chart Line */\r\n/* -------------------------------------------------------------------------- */\r\nconst chartLine = () => {\r\n const line = document.getElementById('chartjs-line-chart');\r\n\r\n const getOptions = () => ({\r\n type: 'bar',\r\n data: {\r\n labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'],\r\n datasets: [\r\n {\r\n type: 'line',\r\n label: 'Dataset 1',\r\n borderColor: utils.getColor('primary'),\r\n borderWidth: 2,\r\n fill: false,\r\n data: [55, 80, 60, 22, 50, 40, 90],\r\n tension: 0.3\r\n }\r\n ]\r\n },\r\n options: {\r\n plugins: {\r\n tooltip: chartJsDefaultTooltip(),\r\n legend: {\r\n labels: {\r\n color: utils.getGrays()['500']\r\n }\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: utils.getGrays()['500']\r\n },\r\n grid: {\r\n color: utils.getGrays()['300'],\r\n drawBorder: false\r\n }\r\n },\r\n y: {\r\n ticks: {\r\n color: utils.getGrays()['500']\r\n },\r\n grid: {\r\n color: utils.getGrays()['300'],\r\n drawBorder: false\r\n }\r\n }\r\n }\r\n }\r\n });\r\n\r\n chartJsInit(line, getOptions);\r\n};\r\n\r\nexport default chartLine;\r\n","import utils from '../../utils';\r\nimport { chartJsDefaultTooltip, chartJsInit } from './chartjs-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Chart Pie */\r\n/* -------------------------------------------------------------------------- */\r\nconst chartPie = () => {\r\n const pie = document.getElementById('chartjs-pie-chart');\r\n const getOptions = () => ({\r\n type: 'pie',\r\n data: {\r\n datasets: [\r\n {\r\n data: [5, 3, 2, 1, 1],\r\n backgroundColor: [\r\n utils.rgbaColor(utils.getColor('facebook'), 0.75),\r\n utils.rgbaColor(utils.getColor('youtube'), 0.75),\r\n utils.rgbaColor(utils.getColor('twitter'), 0.75),\r\n utils.rgbaColor(utils.getColor('linkedin'), 0.75),\r\n utils.rgbaColor(utils.getColor('github'), 0.75)\r\n ],\r\n borderWidth: 1,\r\n borderColor: utils.getGrays()['100']\r\n }\r\n ],\r\n\r\n labels: ['Facebook', 'Youtube', 'Twitter', 'Linkedin', 'GitHub']\r\n },\r\n options: {\r\n plugins: {\r\n tooltip: chartJsDefaultTooltip(),\r\n legend: {\r\n labels: {\r\n color: utils.getGrays()['500']\r\n }\r\n }\r\n },\r\n maintainAspectRatio: false\r\n }\r\n });\r\n\r\n chartJsInit(pie, getOptions);\r\n};\r\n\r\nexport default chartPie;\r\n","import utils from '../../utils';\r\nimport { chartJsDefaultTooltip, chartJsInit } from './chartjs-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Chart Polar */\r\n/* -------------------------------------------------------------------------- */\r\nconst chartPolar = () => {\r\n const polar = document.getElementById('chartjs-polar-chart');\r\n\r\n const getOptions = () => ({\r\n type: 'polarArea',\r\n data: {\r\n datasets: [\r\n {\r\n data: [10, 20, 50, 40, 30],\r\n backgroundColor: [\r\n utils.rgbaColor(utils.getColor('facebook'), 0.5),\r\n utils.rgbaColor(utils.getColor('youtube'), 0.5),\r\n utils.rgbaColor(utils.getColor('twitter'), 0.5),\r\n utils.rgbaColor(utils.getColor('linkedin'), 0.5),\r\n utils.rgbaColor(utils.getColor('success'), 0.5)\r\n ],\r\n borderWidth: 1,\r\n borderColor: utils.getGrays()['400']\r\n }\r\n ],\r\n\r\n labels: ['Facebook', 'Youtube', 'Twitter', 'Linkedin', 'Medium']\r\n },\r\n options: {\r\n plugins: {\r\n tooltip: chartJsDefaultTooltip(),\r\n legend: {\r\n labels: {\r\n color: utils.getGrays()['500']\r\n }\r\n }\r\n },\r\n maintainAspectRatio: false,\r\n scales: {\r\n r: {\r\n grid: {\r\n color: utils.getGrays()['300']\r\n }\r\n }\r\n }\r\n }\r\n });\r\n\r\n chartJsInit(polar, getOptions);\r\n};\r\n\r\nexport default chartPolar;\r\n","import utils from '../../utils';\r\nimport { chartJsDefaultTooltip, chartJsInit } from './chartjs-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Chart Radar */\r\n/* -------------------------------------------------------------------------- */\r\nconst chartRadar = () => {\r\n const radar = document.getElementById('chartjs-radar-chart');\r\n\r\n const getOptions = () => ({\r\n type: 'radar',\r\n data: {\r\n labels: ['English', 'Maths', 'Physics', 'Chemistry', 'Biology', 'History'],\r\n datasets: [\r\n {\r\n label: 'Student A',\r\n backgroundColor: utils.rgbaColor(utils.getColor('success'), 0.5),\r\n data: [65, 75, 70, 80, 60, 80],\r\n borderWidth: 1\r\n },\r\n {\r\n label: 'Student B',\r\n backgroundColor: utils.rgbaColor(utils.getColor('primary'), 0.5),\r\n data: [54, 65, 60, 70, 70, 75],\r\n borderWidth: 1\r\n }\r\n ]\r\n },\r\n options: {\r\n plugins: {\r\n tooltip: chartJsDefaultTooltip(),\r\n legend: {\r\n labels: {\r\n color: utils.getGrays()['500']\r\n }\r\n }\r\n },\r\n maintainAspectRatio: false,\r\n scales: {\r\n r: {\r\n grid: {\r\n color: utils.getGrays()['300']\r\n }\r\n }\r\n }\r\n }\r\n });\r\n\r\n chartJsInit(radar, getOptions);\r\n};\r\n\r\nexport default chartRadar;\r\n","import utils from '../../utils';\r\nimport { chartJsDefaultTooltip, chartJsInit } from './chartjs-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Chart Scatter */\r\n/* -------------------------------------------------------------------------- */\r\nconst chartScatter = () => {\r\n const scatter = document.getElementById('chartjs-scatter-chart');\r\n\r\n const getOptions = () => ({\r\n type: 'scatter',\r\n data: {\r\n datasets: [\r\n {\r\n label: 'Dataset one',\r\n data: [\r\n {\r\n x: -98,\r\n y: 42\r\n },\r\n {\r\n x: -85,\r\n y: -29\r\n },\r\n {\r\n x: -87,\r\n y: -70\r\n },\r\n {\r\n x: -53,\r\n y: 28\r\n },\r\n {\r\n x: -29,\r\n y: 4\r\n },\r\n {\r\n x: -2,\r\n y: -42\r\n },\r\n {\r\n x: 5,\r\n y: 3\r\n },\r\n {\r\n x: 39,\r\n y: 19\r\n },\r\n {\r\n x: 49,\r\n y: 79\r\n },\r\n {\r\n x: 83,\r\n y: -9\r\n },\r\n {\r\n x: 93,\r\n y: 12\r\n }\r\n ],\r\n pointBackgroundColor: utils.getColor('primary'),\r\n borderColor: utils.getColor('primary'),\r\n borderWidth: 1\r\n },\r\n {\r\n label: 'Dataset Two',\r\n data: [\r\n {\r\n x: 53,\r\n y: 12\r\n },\r\n {\r\n x: -78,\r\n y: 42\r\n },\r\n {\r\n x: -65,\r\n y: -39\r\n },\r\n {\r\n x: -57,\r\n y: -20\r\n },\r\n {\r\n x: 57,\r\n y: 28\r\n },\r\n {\r\n x: -35,\r\n y: 75\r\n },\r\n {\r\n x: -29,\r\n y: -43\r\n },\r\n {\r\n x: 15,\r\n y: 31\r\n },\r\n {\r\n x: 97,\r\n y: 19\r\n },\r\n {\r\n x: 49,\r\n y: 69\r\n },\r\n {\r\n x: 33,\r\n y: -57\r\n }\r\n ],\r\n pointBackgroundColor: utils.getColor('warning'),\r\n borderColor: utils.getColor('warning'),\r\n borderWidth: 1,\r\n borderRadius: '50%'\r\n }\r\n ]\r\n },\r\n options: {\r\n plugins: {\r\n tooltip: chartJsDefaultTooltip(),\r\n legend: {\r\n labels: {\r\n color: utils.getGrays()['500']\r\n }\r\n }\r\n },\r\n scales: {\r\n x: {\r\n ticks: {\r\n color: utils.getGrays()['500']\r\n },\r\n grid: {\r\n color: utils.getGrays()['300'],\r\n drawBorder: false\r\n }\r\n },\r\n y: {\r\n ticks: {\r\n color: utils.getGrays()['500']\r\n },\r\n grid: {\r\n color: utils.getGrays()['300'],\r\n drawBorder: false\r\n }\r\n }\r\n },\r\n animation: {\r\n duration: 2000\r\n }\r\n }\r\n });\r\n\r\n chartJsInit(scatter, getOptions);\r\n};\r\n\r\nexport default chartScatter;\r\n","import utils from '../../utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* ChartJs Initialization */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst chartJsInit = (chartEl, config) => {\r\n if (!chartEl) return;\r\n\r\n const ctx = chartEl.getContext('2d');\r\n let chart = new window.Chart(ctx, config());\r\n\r\n const themeController = document.body;\r\n themeController.addEventListener('clickControl', ({ detail: { control } }) => {\r\n if (control === 'theme') {\r\n chart.destroy();\r\n chart = new window.Chart(ctx, config());\r\n }\r\n return null;\r\n });\r\n};\r\n\r\nconst chartJsDefaultTooltip = () => ({\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n borderWidth: 1,\r\n titleColor: utils.getColors().emphasis,\r\n callbacks: {\r\n labelTextColor() {\r\n return utils.getColors().emphasis;\r\n }\r\n }\r\n});\r\n\r\nconst getBubbleDataset = (count, rmin, rmax, min, max) => {\r\n const arr = Array.from(Array(count).keys());\r\n return arr.map(() => ({\r\n x: utils.getRandomNumber(min, max),\r\n y: utils.getRandomNumber(min, max),\r\n r: utils.getRandomNumber(rmin, rmax)\r\n }));\r\n};\r\n\r\nexport default { chartJsDefaultTooltip, chartJsInit, getBubbleDataset };\r\n","import utils from '../../utils';\r\nimport { chartJsDefaultTooltip, chartJsInit } from './chartjs-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Chart Scatter */\r\n/* -------------------------------------------------------------------------- */\r\nconst productShareDoughnutInit = () => {\r\n const marketShareDoughnutElement = document.getElementById('marketShareDoughnut');\r\n\r\n const getOptions = () => ({\r\n type: 'doughnut',\r\n data: {\r\n labels: ['Flacon', 'Sparrow'],\r\n datasets: [\r\n {\r\n data: [50, 88],\r\n backgroundColor: [utils.getColor('primary'), utils.getColor('gray-300')],\r\n borderColor: [utils.getColor('primary'), utils.getColor('gray-300')]\r\n }\r\n ]\r\n },\r\n options: {\r\n tooltips: chartJsDefaultTooltip(),\r\n rotation: -90,\r\n circumference: '180',\r\n cutout: '80%',\r\n plugins: {\r\n legend: {\r\n display: false\r\n }\r\n }\r\n }\r\n });\r\n\r\n chartJsInit(marketShareDoughnutElement, getOptions);\r\n};\r\n\r\nexport default productShareDoughnutInit;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Echarts Active Users */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst activeUsersChartReportInit = () => {\r\n const $echartsActiveUsersChart = document.querySelector('.echart-active-users-report');\r\n\r\n if ($echartsActiveUsersChart) {\r\n const userOptions = utils.getData($echartsActiveUsersChart, 'options');\r\n const chart = window.echarts.init($echartsActiveUsersChart);\r\n\r\n const tooltipFormatter = params => `\r\n
    \r\n

    ${window.dayjs(params[0].axisValue).format('MMM DD, YYYY')}

    \r\n
    \r\n
    ${params[0].value}
    \r\n
    ${params[1].value}
    \r\n
    ${params[2].value}
    \r\n
    \r\n
    \r\n `;\r\n const getDefaultOptions = () => ({\r\n color: [utils.getColor('primary'), utils.getColor('success'), utils.getColor('info')],\r\n tooltip: {\r\n trigger: 'axis',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n },\r\n formatter: tooltipFormatter\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: utils.getPastDates(30).map(date => window.dayjs(date).format('DD MMM, YYYY')),\r\n boundaryGap: false,\r\n silent: true,\r\n axisPointer: {\r\n lineStyle: {\r\n color: utils.getGrays()['300']\r\n }\r\n },\r\n splitLine: { show: false },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300']\r\n }\r\n },\r\n axisTick: {\r\n show: true,\r\n length: 20,\r\n lineStyle: {\r\n color: utils.getGrays()['200']\r\n },\r\n\r\n interval: 5\r\n },\r\n axisLabel: {\r\n color: utils.getGrays()['600'],\r\n formatter: value => window.dayjs(value).format('MMM DD'),\r\n align: 'left',\r\n fontSize: 11,\r\n padding: [0, 0, 0, 5],\r\n interval: 5\r\n }\r\n },\r\n yAxis: {\r\n type: 'value',\r\n position: 'right',\r\n axisPointer: { show: false },\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['200']\r\n }\r\n },\r\n axisLabel: {\r\n show: true,\r\n color: utils.getGrays()['600'],\r\n formatter: value => `${Math.round((value / 1000) * 10) / 10}k`\r\n },\r\n axisTick: { show: false },\r\n axisLine: { show: false }\r\n },\r\n series: [\r\n {\r\n type: 'line',\r\n data: [\r\n 4164, 4652, 4817, 4841, 4920, 5439, 5486, 5498, 5512, 5538, 5841, 5877, 6086, 6146,\r\n 6199, 6431, 6704, 7939, 8127, 8296, 8322, 8389, 8411, 8502, 8868, 8977, 9273, 9325,\r\n 9345, 9430\r\n ],\r\n showSymbol: false,\r\n symbol: 'circle',\r\n itemStyle: {\r\n borderColor: utils.getColors().primary,\r\n borderWidth: 2\r\n },\r\n lineStyle: {\r\n color: utils.getColor('primary')\r\n },\r\n symbolSize: 2\r\n },\r\n {\r\n type: 'line',\r\n data: [\r\n 2164, 2292, 2386, 2430, 2528, 3045, 3255, 3295, 3481, 3604, 3688, 3840, 3932, 3949,\r\n 4003, 4298, 4424, 4869, 4922, 4973, 5155, 5267, 5566, 5689, 5692, 5758, 5773, 5799,\r\n 5960, 6000\r\n ],\r\n showSymbol: false,\r\n symbol: 'circle',\r\n itemStyle: {\r\n borderColor: utils.getColors().success,\r\n borderWidth: 2\r\n },\r\n lineStyle: {\r\n color: utils.getColor('success')\r\n },\r\n symbolSize: 2\r\n },\r\n {\r\n type: 'line',\r\n data: [\r\n 1069, 1089, 1125, 1141, 1162, 1179, 1185, 1216, 1274, 1322, 1346, 1395, 1439, 1564,\r\n 1581, 1590, 1656, 1815, 1868, 2010, 2133, 2179, 2264, 2265, 2278, 2343, 2354, 2456,\r\n 2472, 2480\r\n ],\r\n showSymbol: false,\r\n symbol: 'circle',\r\n itemStyle: {\r\n borderColor: utils.getColors().info,\r\n borderWidth: 2\r\n },\r\n lineStyle: {\r\n color: utils.getColor('info')\r\n },\r\n symbolSize: 2\r\n }\r\n ],\r\n grid: {\r\n right: '30px',\r\n left: '5px',\r\n bottom: '20px',\r\n top: '20px'\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default activeUsersChartReportInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption, getPosition } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Market Share */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst assignmentScoresInit = () => {\r\n const $echartAssignmentScores = document.querySelector('.echart-assignment-scores');\r\n\r\n if ($echartAssignmentScores) {\r\n const userOptions = utils.getData($echartAssignmentScores, 'options');\r\n const chart = window.echarts.init($echartAssignmentScores);\r\n\r\n const data = [\r\n { value: 12, name: '90-100%' },\r\n { value: 16, name: '70-90%' },\r\n { value: 12, name: '40-70%' },\r\n { value: 2, name: '0-40%' }\r\n ];\r\n\r\n const getDefaultOptions = () => ({\r\n color: [\r\n utils.getColors().success,\r\n utils.getColors().primary,\r\n utils.getColors().info,\r\n utils.getColors().warning\r\n ],\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter(params) {\r\n return `${params.data.name}: ${params.data.value} courses`;\r\n }\r\n },\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n },\r\n legend: { show: false },\r\n series: [\r\n {\r\n type: 'pie',\r\n radius: ['85%', '60%'],\r\n avoidLabelOverlap: false,\r\n hoverAnimation: false,\r\n itemStyle: {\r\n borderWidth: 2,\r\n borderColor: utils.getColor('gray-100')\r\n },\r\n label: {\r\n normal: {\r\n show: false,\r\n position: 'center',\r\n textStyle: {\r\n fontSize: '20',\r\n fontWeight: '500',\r\n color: utils.getGrays()['700']\r\n }\r\n },\r\n emphasis: {\r\n show: false\r\n }\r\n },\r\n labelLine: { normal: { show: false } },\r\n data\r\n }\r\n ]\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default assignmentScoresInit;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Audience Chart */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst audienceChartInit = () => {\r\n const data = {\r\n dates: utils.getPastDates(7),\r\n dataset: {\r\n users: [\r\n [504, 333, 400, 606, 451, 685, 404],\r\n [237, 229, 707, 575, 420, 536, 258]\r\n ],\r\n sessions: [\r\n [322, 694, 235, 537, 791, 292, 806],\r\n [584, 661, 214, 286, 526, 707, 627]\r\n ],\r\n rate: [\r\n [789, 749, 412, 697, 633, 254, 472],\r\n [276, 739, 525, 394, 643, 653, 719]\r\n ],\r\n duration: [\r\n [625, 269, 479, 654, 549, 305, 671],\r\n [499, 670, 550, 222, 696, 695, 469]\r\n ]\r\n }\r\n };\r\n const tooltipFormatter = params => {\r\n const percentage = ((params[0].value - params[1].value) / params[1].value) * 100;\r\n const perTemp = `\r\n
    \r\n \r\n
    ${Math.abs(percentage).toFixed(2)} %
    \r\n
    \r\n `;\r\n const currentDate = new Date(params[0].axisValue);\r\n const prevDate = new Date(new Date().setDate(currentDate.getDate() - 7));\r\n return `
    \r\n

    ${window.dayjs(params[0].axisValue).format('MMM DD')} vs ${window.dayjs(prevDate).format('MMM DD')}

    \r\n
    \r\n

    \r\n Users: ${params[0].data}\r\n

    \r\n ${perTemp}\r\n
    \r\n
    `;\r\n };\r\n\r\n const getDefaultOptions = (data1, data2) => () => ({\r\n color: utils.getGrays()['100'],\r\n tooltip: {\r\n trigger: 'axis',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n },\r\n axisPointer: {\r\n type: 'none'\r\n },\r\n formatter: tooltipFormatter\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: data.dates,\r\n axisLabel: {\r\n color: utils.getGrays()['600'],\r\n formatter: value => window.dayjs(value).format('MMM DD'),\r\n align: 'left',\r\n fontSize: 11,\r\n padding: [0, 0, 0, 5],\r\n showMaxLabel: false\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['200']\r\n }\r\n },\r\n axisTick: {\r\n show: true,\r\n length: 20,\r\n lineStyle: {\r\n color: utils.getGrays()['200']\r\n }\r\n },\r\n boundaryGap: false\r\n },\r\n yAxis: {\r\n position: 'right',\r\n axisPointer: { type: 'none' },\r\n axisTick: 'none',\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['200']\r\n }\r\n },\r\n axisLine: { show: false },\r\n axisLabel: { color: utils.getGrays()['600'] }\r\n },\r\n series: [\r\n {\r\n type: 'line',\r\n data: data1,\r\n showSymbol: false,\r\n symbol: 'circle',\r\n itemStyle: {\r\n borderColor: utils.getColors().primary,\r\n borderWidth: 2\r\n },\r\n lineStyle: {\r\n color: utils.getColor('primary')\r\n },\r\n areaStyle: {\r\n color: {\r\n type: 'linear',\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: utils.rgbaColor(utils.getColors().primary, 0.2)\r\n },\r\n {\r\n offset: 1,\r\n color: utils.rgbaColor(utils.getColors().primary, 0)\r\n }\r\n ]\r\n }\r\n }\r\n },\r\n {\r\n type: 'line',\r\n data: data2,\r\n symbol: 'none',\r\n lineStyle: {\r\n type: 'dashed',\r\n width: 1,\r\n color: utils.getColor('info')\r\n }\r\n }\r\n ],\r\n grid: {\r\n right: '40px',\r\n left: '5px',\r\n bottom: '10%',\r\n top: '3%'\r\n }\r\n });\r\n\r\n const initChart = (el, options) => {\r\n const userOptions = utils.getData(el, 'options');\r\n const chart = window.echarts.init(el);\r\n echartSetOption(chart, userOptions, options);\r\n };\r\n\r\n const tab = document.querySelector('#audience-chart-tab');\r\n\r\n if (tab) {\r\n initChart(\r\n document.querySelector('.echart-audience'),\r\n getDefaultOptions(data.dataset.users[0], data.dataset.users[1])\r\n );\r\n\r\n const triggerTabList = Array.from(tab.querySelectorAll('[data-bs-toggle=\"tab\"]'));\r\n triggerTabList.forEach(triggerEl => {\r\n triggerEl.addEventListener('shown.bs.tab', () => {\r\n const key = triggerEl.href.split('#').pop();\r\n const $echartAudience = document.getElementById(key).querySelector('.echart-audience');\r\n\r\n initChart($echartAudience, getDefaultOptions(data.dataset[key][0], data.dataset[key][1]));\r\n });\r\n });\r\n }\r\n};\r\n\r\nexport default audienceChartInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Echarts Total Sales Courses */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst avgEnrollmentRateInit = () => {\r\n const $echartsLineAvgEnrollmentLms = document.querySelector('.echart-avg-enrollment-rate');\r\n\r\n function getFormatter(params) {\r\n return params\r\n .map(\r\n ({ seriesName, value, borderColor }) =>\r\n `\r\n \r\n ${seriesName} : ${value}\r\n `\r\n )\r\n .join('
    ');\r\n }\r\n if ($echartsLineAvgEnrollmentLms) {\r\n const userOptions = utils.getData($echartsLineAvgEnrollmentLms, 'options');\r\n const onSaleCourseRate = document.querySelector(`#${userOptions.optionOne}`);\r\n const regularPaidCourseRate = document.querySelector(`#${userOptions.optionTwo}`);\r\n\r\n const chart = window.echarts.init($echartsLineAvgEnrollmentLms);\r\n const getDefaultOptions = () => ({\r\n color: utils.getGrays()['100'],\r\n tooltip: {\r\n trigger: 'axis',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n formatter(params) {\r\n return getFormatter(params);\r\n },\r\n transitionDuration: 0\r\n },\r\n legend: {\r\n show: false\r\n },\r\n xAxis: [\r\n {\r\n type: 'category',\r\n position: 'bottom',\r\n data: [\r\n 'launch',\r\n 'week 1',\r\n 'week 2',\r\n 'week 3',\r\n 'week 4',\r\n 'week 5',\r\n 'week 6',\r\n 'week 7',\r\n 'week 8',\r\n 'week 9',\r\n 'week 10',\r\n 'week 11',\r\n 'week 12'\r\n ],\r\n boundaryGap: false,\r\n axisPointer: {\r\n lineStyle: {\r\n color: utils.getGrays()['200'],\r\n type: 'line'\r\n }\r\n },\r\n splitLine: { show: false },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['200'],\r\n type: 'line'\r\n }\r\n },\r\n\r\n axisTick: { show: false },\r\n axisLabel: {\r\n color: utils.getColor('gray-500'),\r\n formatter(value) {\r\n return value;\r\n },\r\n interval: 3,\r\n margin: 15,\r\n showMinLabel: true,\r\n showMaxLabel: false,\r\n align: 'center'\r\n }\r\n },\r\n {\r\n type: 'category',\r\n position: 'bottom',\r\n data: [\r\n 'launch',\r\n 'week 1',\r\n 'week 2',\r\n 'week 3',\r\n 'week 4',\r\n 'week 5',\r\n 'week 6',\r\n 'week 7',\r\n 'week 8',\r\n 'week 9',\r\n 'week 10',\r\n 'week 11',\r\n 'week 12'\r\n ],\r\n boundaryGap: false,\r\n axisPointer: {\r\n lineStyle: {\r\n color: utils.getGrays()['200'],\r\n type: 'line'\r\n }\r\n },\r\n splitLine: { show: false },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['200'],\r\n type: 'line'\r\n }\r\n },\r\n\r\n axisTick: { show: false },\r\n axisLabel: {\r\n color: utils.getColor('gray-500'),\r\n formatter(value) {\r\n return value;\r\n },\r\n interval: 200,\r\n margin: 15,\r\n showMaxLabel: true,\r\n showMinLabel: false,\r\n align: 'right'\r\n }\r\n }\r\n ],\r\n yAxis: {\r\n type: 'value',\r\n splitNumber: 3,\r\n axisPointer: { show: false },\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getColor('gray-200'),\r\n type: 'line'\r\n }\r\n },\r\n boundaryGap: false,\r\n axisLabel: {\r\n showMinLabel: false,\r\n show: true,\r\n color: utils.getColor('gray-400'),\r\n formatter: value => `${Math.round((value / 1000) * 10) / 10}k`\r\n },\r\n axisTick: { show: false },\r\n axisLine: { show: false }\r\n },\r\n\r\n series: [\r\n {\r\n name: 'On Sale Course',\r\n type: 'line',\r\n data: [2000, 2800, 2200, 3001, 600, 600, 2000, 2000, 700, 1000, 200, 900, 1200],\r\n lineStyle: { color: utils.getColor('primary') },\r\n itemStyle: {\r\n borderColor: utils.getColor('primary'),\r\n borderWidth: 2\r\n },\r\n symbol: 'circle',\r\n symbolSize: 10,\r\n hoverAnimation: true\r\n },\r\n\r\n {\r\n name: 'Regular Paid Course',\r\n type: 'line',\r\n data: [1700, 1200, 500, 700, 1500, 1100, 700, 1100, 2600, 2050, 1050, 600, 700],\r\n lineStyle: { color: utils.getColor('warning'), type: 'dashed' },\r\n itemStyle: {\r\n borderColor: utils.getColor('warning'),\r\n borderWidth: 2\r\n },\r\n symbol: 'circle',\r\n symbolSize: 10,\r\n hoverAnimation: true,\r\n areaStyle: {\r\n color: {\r\n type: 'linear',\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: utils.rgbaColor(utils.getColor('warning'), 0.4)\r\n },\r\n {\r\n offset: 1,\r\n color: utils.rgbaColor(utils.getColor('warning'), 0)\r\n }\r\n ]\r\n }\r\n }\r\n }\r\n ],\r\n grid: {\r\n right: '10px',\r\n left: '30px',\r\n bottom: '15%',\r\n top: '5%'\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n\r\n onSaleCourseRate.addEventListener('click', () => {\r\n onSaleCourseRate.classList.toggle('opacity-50');\r\n chart.dispatchAction({\r\n type: 'legendToggleSelect',\r\n name: 'On Sale Course'\r\n });\r\n });\r\n\r\n regularPaidCourseRate.addEventListener('click', () => {\r\n regularPaidCourseRate.classList.toggle('opacity-50');\r\n chart.dispatchAction({\r\n type: 'legendToggleSelect',\r\n name: 'Regular Paid Course'\r\n });\r\n });\r\n }\r\n};\r\n\r\nexport default avgEnrollmentRateInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Bandwidth Saved */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst bandwidthSavedInit = () => {\r\n const $echartsBandwidthSaved = document.querySelector('.echart-bandwidth-saved');\r\n\r\n if ($echartsBandwidthSaved) {\r\n const userOptions = utils.getData($echartsBandwidthSaved, 'options');\r\n const chart = window.echarts.init($echartsBandwidthSaved);\r\n\r\n const getDefaultOptions = () => ({\r\n series: [\r\n {\r\n type: 'gauge',\r\n startAngle: 90,\r\n endAngle: -270,\r\n radius: '90%',\r\n pointer: {\r\n show: false\r\n },\r\n progress: {\r\n show: true,\r\n overlap: false,\r\n roundCap: true,\r\n clip: false,\r\n itemStyle: {\r\n color: {\r\n type: 'linear',\r\n x: 0,\r\n y: 0,\r\n x2: 1,\r\n y2: 0,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: '#1970e2'\r\n },\r\n {\r\n offset: 1,\r\n color: '#4695ff'\r\n }\r\n ]\r\n }\r\n }\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n width: 8,\r\n color: [[1, utils.getColor('gray-200')]]\r\n }\r\n },\r\n splitLine: {\r\n show: false\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n axisLabel: {\r\n show: false\r\n },\r\n data: [\r\n {\r\n value: 93,\r\n detail: {\r\n offsetCenter: ['7%', '4%']\r\n }\r\n }\r\n ],\r\n detail: {\r\n width: 50,\r\n height: 14,\r\n fontSize: 28,\r\n fontWeight: 500,\r\n fontFamily: 'poppins',\r\n color: utils.getColor('gray-500'),\r\n formatter: '{value}%',\r\n valueAnimation: true\r\n },\r\n animationDuration: 3000\r\n }\r\n ]\r\n });\r\n\r\n const initChart = () => {\r\n if (utils.isScrolledIntoView($echartsBandwidthSaved)) {\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n window.removeEventListener('scroll', initChart);\r\n }\r\n };\r\n\r\n window.addEventListener('scroll', initChart);\r\n }\r\n};\r\n\r\nexport default bandwidthSavedInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption, getPosition } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Echart Bar Member info */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst basicEchartsInit = () => {\r\n const $echartBasicCharts = document.querySelectorAll('[data-echarts]');\r\n\r\n $echartBasicCharts.forEach($echartBasicChart => {\r\n const userOptions = utils.getData($echartBasicChart, 'echarts');\r\n const chart = window.echarts.init($echartBasicChart);\r\n const getDefaultOptions = () => ({\r\n color: utils.getColors().primary,\r\n tooltip: {\r\n trigger: 'item',\r\n axisPointer: {\r\n type: 'none'\r\n },\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n }\r\n },\r\n xAxis: {\r\n type: 'category',\r\n show: false,\r\n boundaryGap: false\r\n },\r\n yAxis: {\r\n show: false,\r\n type: 'value',\r\n boundaryGap: false\r\n },\r\n series: [\r\n {\r\n type: 'bar',\r\n symbol: 'none',\r\n areaStyle: {\r\n color: {\r\n type: 'linear',\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: utils.rgbaColor(utils.getColor('primary'), 0.25)\r\n },\r\n {\r\n offset: 1,\r\n color: utils.rgbaColor(utils.getColor('primary'), 0)\r\n }\r\n ]\r\n }\r\n }\r\n }\r\n ],\r\n grid: {\r\n right: '0',\r\n left: '0',\r\n bottom: '0',\r\n top: '0'\r\n }\r\n });\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n });\r\n};\r\n\r\nexport default basicEchartsInit;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Echarts Bounce Rate */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst bounceRateChartInit = () => {\r\n const $echartsBounceRateChart = document.querySelector('.echart-bounce-rate');\r\n\r\n const tooltipFormatter = params => `\r\n
    \r\n

    ${window.dayjs(params[0].axisValue).format('DD, MMMM')}

    \r\n
    \r\n

    \r\n Rate : ${params[0].value}%\r\n

    \r\n
    \r\n
    \r\n `;\r\n\r\n const dataset = {\r\n week: [41, 45, 37, 44, 35, 39, 43],\r\n month: [\r\n 40, 37, 42, 44, 36, 39, 37, 43, 38, 35, 43, 39, 42, 36, 37, 36, 42, 44, 34, 41, 37, 41, 40,\r\n 40, 43, 34, 41, 35, 44, 41, 40\r\n ]\r\n };\r\n\r\n if ($echartsBounceRateChart) {\r\n const userOptions = utils.getData($echartsBounceRateChart, 'options');\r\n const chart = window.echarts.init($echartsBounceRateChart);\r\n\r\n const getDefaultOptions = () => ({\r\n color: utils.getGrays()['100'],\r\n title: {\r\n text: 'Bounce Rate',\r\n padding: [5, 0, 0, 0],\r\n textStyle: {\r\n color: utils.getGrays()['900'],\r\n fontSize: 13,\r\n fontWeight: 600\r\n }\r\n },\r\n tooltip: {\r\n trigger: 'axis',\r\n axisPointer: {\r\n type: 'none'\r\n },\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n },\r\n formatter: tooltipFormatter\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: utils.getPastDates(30).map(date => window.dayjs(date).format('DD MMM, YYYY')),\r\n axisPointer: {\r\n lineStyle: {\r\n color: utils.getGrays()['300']\r\n }\r\n },\r\n splitLine: { show: false },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['400']\r\n }\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n axisLabel: {\r\n color: utils.getGrays()['600'],\r\n formatter: value => window.dayjs(value).format('MMM DD'),\r\n fontSize: 11\r\n }\r\n },\r\n yAxis: {\r\n type: 'value',\r\n axisPointer: { show: false },\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['200']\r\n }\r\n },\r\n axisLabel: {\r\n show: true,\r\n color: utils.getGrays()['600'],\r\n formatter: value => `${value}%`,\r\n margin: 15\r\n },\r\n axisTick: { show: false },\r\n axisLine: { show: false }\r\n },\r\n series: [\r\n {\r\n type: 'line',\r\n data: [\r\n 40, 37, 42, 44, 36, 39, 37, 43, 38, 35, 43, 39, 42, 36, 37, 36, 42, 44, 34, 41, 37, 41,\r\n 40, 40, 43, 34, 41, 35, 44, 41, 40\r\n ],\r\n showSymbol: false,\r\n symbol: 'circle',\r\n itemStyle: {\r\n borderColor: utils.getColors().primary,\r\n borderWidth: 2\r\n },\r\n lineStyle: {\r\n color: utils.getColor('primary')\r\n },\r\n symbolSize: 2\r\n }\r\n ],\r\n grid: { right: '10px', left: '40px', bottom: '10%', top: '13%' }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n\r\n const selectMenu = document.querySelector(\"[data-target='.echart-bounce-rate']\");\r\n\r\n if (selectMenu) {\r\n selectMenu.addEventListener('change', e => {\r\n const { value } = e.currentTarget;\r\n chart.setOption({\r\n xAxis: {\r\n data: utils.getPastDates(value).map(date => window.dayjs(date).format('DD MMM, YYYY'))\r\n },\r\n series: [{ data: dataset[value] }]\r\n });\r\n });\r\n }\r\n }\r\n};\r\n\r\nexport default bounceRateChartInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Browsed Courses */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst browsedCoursesInit = () => {\r\n const $echartsBrowsedCourses = document.querySelector('.echart-browsed-courses');\r\n\r\n const months = [\r\n 'Jan',\r\n 'Feb',\r\n 'Mar',\r\n 'Apr',\r\n 'May',\r\n 'Jun',\r\n 'Jul',\r\n 'Aug',\r\n 'Sep',\r\n 'Oct',\r\n 'Nov',\r\n 'Dec'\r\n ];\r\n\r\n const tooltipFormatter = params => `\r\n
    \r\n

    \r\n ${window.dayjs(params[0].axisValue).isValid() ? window.dayjs(params[0].axisValue).format('MMMM YYYY') : params[0].axisValue}\r\n

    \r\n ${params.map(({ seriesName, value, borderColor }) => `\r\n \r\n \r\n ${seriesName} : ${value}\r\n \r\n `).join('
    ')}\r\n
    `;\r\n\r\n if ($echartsBrowsedCourses) {\r\n const userOptions = utils.getData($echartsBrowsedCourses, 'options');\r\n const newCourseBrowsedEl = document.querySelector(`#${userOptions.optionOne}`);\r\n const paidCourseBrowsedEl = document.querySelector(`#${userOptions.optionTwo}`);\r\n const chart = window.echarts.init($echartsBrowsedCourses);\r\n\r\n const getDefaultOptions = () => ({\r\n color: utils.getGrays()['100'],\r\n legend: {\r\n data: ['newCourseBrowsed', 'paidCourseBrowsed'],\r\n show: false\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: [\r\n '2020-01-01',\r\n '2020-02-01',\r\n '2020-03-01',\r\n '2020-04-01',\r\n '2020-05-01',\r\n '2020-06-01',\r\n '2020-07-01',\r\n '2020-08-01',\r\n '2020-09-01',\r\n '2020-10-01',\r\n '2020-11-01',\r\n '2020-12-01',\r\n '2021-01-01',\r\n '2021-02-01',\r\n '2021-03-01',\r\n '2021-04-01',\r\n '2021-05-01',\r\n '2021-06-01',\r\n '2021-07-01',\r\n '2021-08-01',\r\n '2021-09-01',\r\n '2021-10-01',\r\n '2021-11-01',\r\n '2021-12-01'\r\n ],\r\n axisLine: {\r\n show: false\r\n },\r\n splitLine: {\r\n show: false\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n axisLabel: {\r\n color: utils.getGrays()['600'],\r\n formatter: value => {\r\n const date = new Date(value);\r\n return `${months[date.getMonth()]}`;\r\n },\r\n interval: 2\r\n }\r\n },\r\n yAxis: {\r\n type: 'value',\r\n show: false\r\n },\r\n tooltip: {\r\n trigger: 'axis',\r\n padding: [7, 10],\r\n axisPointer: {\r\n type: 'none'\r\n },\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter(params) {\r\n return tooltipFormatter(params);\r\n }\r\n },\r\n\r\n series: [\r\n {\r\n name: 'Total',\r\n type: 'bar',\r\n barWidth: '50%',\r\n z: -1,\r\n data: [\r\n 600, 832, 901, 934, 1290, 1330, 1320, 1250, 1190, 1345, 1009, 1320, 600, 832, 901, 934,\r\n 1290, 1330, 1320, 1250, 1190, 1345, 1009, 1320\r\n ],\r\n itemStyle: {\r\n emphasis: {\r\n color: utils.getSubtleColors().info,\r\n barBorderRadius: [5, 5, 0, 0],\r\n borderWidth: 1,\r\n borderColor: utils.getGrays()[300]\r\n },\r\n normal: {\r\n color: utils.getSubtleColors().primary,\r\n barBorderRadius: [5, 5, 0, 0],\r\n borderWidth: 1,\r\n borderColor: utils.getGrays()[300]\r\n }\r\n }\r\n },\r\n {\r\n name: 'Paid',\r\n type: 'bar',\r\n barWidth: '50%',\r\n barGap: '-100%',\r\n data: [\r\n 320, 420, 800, 100, 1000, 930, 720, 1020, 800, 320, 450, 150, 320, 420, 800, 100, 1000,\r\n 930, 720, 1020, 800, 320, 450, 150\r\n ],\r\n itemStyle: {\r\n normal: {\r\n barBorderRadius: [5, 5, 0, 0],\r\n color: utils.getColors().primary,\r\n borderWidth: 1,\r\n borderColor: utils.getColors().primary\r\n }\r\n }\r\n }\r\n ],\r\n\r\n grid: {\r\n right: '0px',\r\n left: '0px',\r\n bottom: '10%',\r\n top: '15%'\r\n }\r\n });\r\n\r\n const initChart = () => {\r\n if (utils.isScrolledIntoView($echartsBrowsedCourses)) {\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n window.removeEventListener('scroll', initChart);\r\n }\r\n };\r\n\r\n window.addEventListener('scroll', initChart);\r\n\r\n newCourseBrowsedEl.addEventListener('click', () => {\r\n newCourseBrowsedEl.classList.toggle('opacity-50');\r\n chart.dispatchAction({\r\n type: 'legendToggleSelect',\r\n name: 'Total'\r\n });\r\n });\r\n\r\n paidCourseBrowsedEl.addEventListener('click', () => {\r\n paidCourseBrowsedEl.classList.toggle('opacity-50');\r\n chart.dispatchAction({\r\n type: 'legendToggleSelect',\r\n name: 'Paid'\r\n });\r\n });\r\n }\r\n};\r\n\r\nexport default browsedCoursesInit;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Echarts Candle Chart */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst candleChartInit = () => {\r\n const ECHART_CANDLE_CHART = '.echart-candle-chart';\r\n const ECHART_ZOOM_IN = \"[data-zoom='in']\";\r\n const ECHART_ZOOM_OUT = \"[data-zoom='out']\";\r\n\r\n const $echartsCandleChart = document.querySelector(ECHART_CANDLE_CHART);\r\n\r\n if ($echartsCandleChart) {\r\n const userOptions = utils.getData($echartsCandleChart, 'options');\r\n const chart = window.echarts.init($echartsCandleChart);\r\n\r\n const $echartsZoomIn = document\r\n .getElementById($echartsCandleChart.dataset.actionTarget)\r\n .querySelector(ECHART_ZOOM_IN);\r\n const $echartsZoomOut = document\r\n .getElementById($echartsCandleChart.dataset.actionTarget)\r\n .querySelector(ECHART_ZOOM_OUT);\r\n\r\n const { warning } = utils.getColors();\r\n const { primary } = utils.getColors();\r\n\r\n const splitData = rawData => {\r\n const categoryData = [];\r\n const values = [];\r\n\r\n rawData.forEach(item => {\r\n categoryData.push(item.splice(0, 1)[0]);\r\n values.push(item);\r\n });\r\n return { categoryData, values };\r\n };\r\n\r\n const data = splitData([\r\n ['2013/1/24', 2320.26, 2320.26, 2287.3, 2362.94],\r\n ['2013/1/25', 2300, 2291.3, 2288.26, 2308.38],\r\n ['2013/1/28', 2295.35, 2346.5, 2295.35, 2346.92],\r\n ['2013/1/29', 2347.22, 2358.98, 2337.35, 2363.8],\r\n ['2013/1/30', 2360.75, 2382.48, 2347.89, 2383.76],\r\n ['2013/1/31', 2383.43, 2385.42, 2371.23, 2391.82],\r\n ['2013/2/1', 2377.41, 2419.02, 2369.57, 2421.15],\r\n ['2013/2/4', 2425.92, 2428.15, 2417.58, 2440.38],\r\n ['2013/2/5', 2411, 2433.13, 2403.3, 2437.42],\r\n ['2013/2/6', 2432.68, 2434.48, 2427.7, 2441.73],\r\n ['2013/2/7', 2430.69, 2418.53, 2394.22, 2433.89],\r\n ['2013/2/8', 2416.62, 2432.4, 2414.4, 2443.03],\r\n ['2013/2/18', 2441.91, 2421.56, 2415.43, 2444.8],\r\n ['2013/2/19', 2420.26, 2382.91, 2373.53, 2427.07],\r\n ['2013/2/20', 2383.49, 2397.18, 2370.61, 2397.94],\r\n ['2013/2/21', 2378.82, 2325.95, 2309.17, 2378.82],\r\n ['2013/2/22', 2322.94, 2314.16, 2308.76, 2330.88],\r\n ['2013/2/25', 2320.62, 2325.82, 2315.01, 2338.78],\r\n ['2013/2/26', 2313.74, 2293.34, 2289.89, 2340.71],\r\n ['2013/2/27', 2297.77, 2313.22, 2292.03, 2324.63],\r\n ['2013/2/28', 2322.32, 2365.59, 2308.92, 2366.16],\r\n ['2013/3/1', 2364.54, 2359.51, 2330.86, 2369.65],\r\n ['2013/3/4', 2332.08, 2273.4, 2259.25, 2333.54],\r\n ['2013/3/5', 2274.81, 2326.31, 2270.1, 2328.14],\r\n ['2013/3/6', 2333.61, 2347.18, 2321.6, 2351.44],\r\n ['2013/3/7', 2340.44, 2324.29, 2304.27, 2352.02],\r\n ['2013/3/8', 2326.42, 2318.61, 2314.59, 2333.67],\r\n ['2013/3/11', 2314.68, 2310.59, 2296.58, 2320.96],\r\n ['2013/3/12', 2309.16, 2286.6, 2264.83, 2333.29],\r\n ['2013/3/13', 2282.17, 2263.97, 2253.25, 2286.33],\r\n ['2013/3/14', 2255.77, 2270.28, 2253.31, 2276.22],\r\n ['2013/3/15', 2269.31, 2278.4, 2250, 2312.08],\r\n ['2013/3/18', 2267.29, 2240.02, 2239.21, 2276.05],\r\n ['2013/3/19', 2244.26, 2257.43, 2232.02, 2261.31],\r\n ['2013/3/20', 2257.74, 2317.37, 2257.42, 2317.86],\r\n ['2013/3/21', 2318.21, 2324.24, 2311.6, 2330.81],\r\n ['2013/3/22', 2321.4, 2328.28, 2314.97, 2332],\r\n ['2013/3/25', 2334.74, 2326.72, 2319.91, 2344.89],\r\n ['2013/3/26', 2318.58, 2297.67, 2281.12, 2319.99],\r\n ['2013/3/27', 2299.38, 2301.26, 2289, 2323.48],\r\n ['2013/3/28', 2273.55, 2236.3, 2232.91, 2273.55],\r\n ['2013/3/29', 2238.49, 2236.62, 2228.81, 2246.87],\r\n ['2013/4/1', 2229.46, 2234.4, 2227.31, 2243.95],\r\n ['2013/4/2', 2234.9, 2227.74, 2220.44, 2253.42],\r\n ['2013/4/3', 2232.69, 2225.29, 2217.25, 2241.34],\r\n ['2013/4/8', 2196.24, 2211.59, 2180.67, 2212.59],\r\n ['2013/4/9', 2215.47, 2225.77, 2215.47, 2234.73],\r\n ['2013/4/10', 2224.93, 2226.13, 2212.56, 2233.04],\r\n ['2013/4/11', 2236.98, 2219.55, 2217.26, 2242.48],\r\n ['2013/4/12', 2218.09, 2206.78, 2204.44, 2226.26]\r\n ]);\r\n\r\n let zoomStart = 0;\r\n let zoomEnd = 70;\r\n\r\n const getDefaultOptions = () => ({\r\n tooltip: {\r\n trigger: 'axis',\r\n // axisPointer: {\r\n // type: \"cross\",\r\n // },\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n }\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: data.categoryData,\r\n scale: true,\r\n splitLine: { show: false },\r\n splitNumber: 10,\r\n min: 'dataMin',\r\n max: 'dataMax',\r\n boundaryGap: true,\r\n axisPointer: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'solid'\r\n }\r\n },\r\n axisTick: { show: false },\r\n axisLabel: {\r\n color: utils.getGrays()['600'],\r\n formatter: value =>\r\n new Date(value).toLocaleString('en-US', {\r\n month: 'short',\r\n day: 'numeric'\r\n }),\r\n margin: 15,\r\n fontWeight: 500\r\n }\r\n },\r\n yAxis: {\r\n scale: true,\r\n position: 'right',\r\n axisPointer: { show: false },\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['200'],\r\n type: 'dashed'\r\n }\r\n },\r\n boundaryGap: false,\r\n axisLabel: {\r\n show: true,\r\n color: utils.getGrays()['600'],\r\n margin: 15,\r\n fontWeight: 500\r\n },\r\n axisTick: { show: false },\r\n axisLine: { show: false }\r\n },\r\n dataZoom: [\r\n {\r\n type: 'inside',\r\n start: zoomStart,\r\n end: zoomEnd\r\n }\r\n ],\r\n\r\n series: [\r\n {\r\n name: 'candlestick',\r\n type: 'candlestick',\r\n data: data.values,\r\n itemStyle: {\r\n color: warning,\r\n color0: primary,\r\n borderColor: warning,\r\n borderColor0: primary\r\n }\r\n }\r\n ],\r\n grid: { right: '70px', left: '20px', bottom: '15%', top: '20px' }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n\r\n const dispatchZoomAction = () => {\r\n chart.dispatchAction({\r\n type: 'dataZoom',\r\n start: zoomStart,\r\n end: zoomEnd\r\n });\r\n };\r\n\r\n $echartsZoomIn.addEventListener('click', () => {\r\n if (zoomEnd > 10) {\r\n zoomEnd -= 10;\r\n }\r\n\r\n if (zoomEnd <= 10) {\r\n $echartsZoomIn.disabled = true;\r\n }\r\n\r\n if (zoomEnd > 0) {\r\n $echartsZoomOut.disabled = false;\r\n dispatchZoomAction();\r\n }\r\n });\r\n\r\n $echartsZoomOut.addEventListener('click', () => {\r\n if (zoomEnd < 100) {\r\n zoomEnd += 10;\r\n }\r\n\r\n if (zoomEnd >= 100) {\r\n $echartsZoomOut.disabled = true;\r\n }\r\n\r\n if (zoomEnd > 0) {\r\n $echartsZoomIn.disabled = false;\r\n dispatchZoomAction();\r\n }\r\n });\r\n\r\n chart.on('dataZoom', params => {\r\n if (params.batch) {\r\n zoomStart = params.batch[0].start;\r\n zoomEnd = params.batch[0].end;\r\n }\r\n });\r\n }\r\n};\r\n\r\nexport default candleChartInit;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption, tooltipFormatter } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Echarts Total Sales */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst closedVsGoalInit = () => {\r\n const ECHART_LINE_TOTAL_SALES = '.echart-closed-vs-goal';\r\n\r\n const $echartsLineTotalSales = document.querySelector(ECHART_LINE_TOTAL_SALES);\r\n const months = [\r\n 'Jan',\r\n 'Feb',\r\n 'Mar',\r\n 'Apr',\r\n 'May',\r\n 'Jun',\r\n 'Jul',\r\n 'Aug',\r\n 'Sep',\r\n 'Oct',\r\n 'Nov',\r\n 'Dec'\r\n ];\r\n\r\n if ($echartsLineTotalSales) {\r\n // Get options from data attribute\r\n const userOptions = utils.getData($echartsLineTotalSales, 'options');\r\n const chart = window.echarts.init($echartsLineTotalSales);\r\n\r\n const getDefaultOptions = () => ({\r\n color: [utils.getColors().primary, utils.getColors().warning],\r\n tooltip: {\r\n trigger: 'axis',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n formatter: tooltipFormatter,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n }\r\n },\r\n\r\n legend: {\r\n left: 'left',\r\n data: ['Closed Amount', 'Revenue Date'],\r\n itemWidth: 10,\r\n itemHeight: 10,\r\n borderRadius: 0,\r\n icon: 'circle',\r\n inactiveColor: utils.getGrays()['400'],\r\n textStyle: { color: utils.getGrays()['700'] },\r\n itemGap: 20\r\n },\r\n xAxis: {\r\n type: 'category',\r\n name: 'Closed Date',\r\n nameGap: 50,\r\n nameLocation: 'center',\r\n offset: 0,\r\n nameTextStyle: {\r\n color: utils.getGrays()['700']\r\n },\r\n data: [\r\n '2019-06-15',\r\n '2019-06-22',\r\n '2019-06-29',\r\n '2019-07-06',\r\n '2019-07-13',\r\n '2019-07-20',\r\n '2019-07-27',\r\n '2019-07-12',\r\n '2019-07-03'\r\n ],\r\n boundaryGap: false,\r\n axisPointer: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n splitLine: { show: false },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.rgbaColor('#000', 0.01),\r\n type: 'dashed'\r\n }\r\n },\r\n axisTick: { show: false },\r\n axisLabel: {\r\n color: utils.getGrays()['400'],\r\n formatter: value => {\r\n const date = new Date(value);\r\n return `${date.getDate()} ${months[date.getMonth()]} , 21`;\r\n },\r\n margin: 20\r\n }\r\n },\r\n yAxis: {\r\n type: 'value',\r\n name: 'Closed Amount',\r\n nameGap: 85,\r\n nameLocation: 'middle',\r\n nameTextStyle: {\r\n color: utils.getGrays()['700']\r\n },\r\n splitNumber: 3,\r\n axisPointer: { show: false },\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['200']\r\n }\r\n },\r\n boundaryGap: false,\r\n axisLabel: {\r\n show: true,\r\n color: utils.getGrays()['400'],\r\n formatter: value => `$${value}`,\r\n margin: 15\r\n },\r\n axisTick: { show: false },\r\n axisLine: { show: false }\r\n },\r\n series: [\r\n {\r\n type: 'line',\r\n name: 'Closed Amount',\r\n data: [0, 5000, 18000, 40000, 58000, 65000, 90000, 110000, 140000],\r\n symbolSize: 5,\r\n symbol: 'circle',\r\n smooth: false,\r\n hoverAnimation: true,\r\n lineStyle: { color: utils.rgbaColor(utils.getColor('primary')) },\r\n itemStyle: {\r\n borderColor: utils.rgbaColor(utils.getColor('primary'), 0.6),\r\n borderWidth: 2\r\n }\r\n },\r\n {\r\n type: 'line',\r\n name: 'Revenue Date',\r\n data: [0, 10000, 24000, 35000, 45000, 53000, 57000, 68000, 79000],\r\n symbolSize: 5,\r\n symbol: 'circle',\r\n smooth: false,\r\n hoverAnimation: true,\r\n lineStyle: { color: utils.rgbaColor(utils.getColor('warning')) },\r\n itemStyle: {\r\n borderColor: utils.rgbaColor(utils.getColor('warning'), 0.6),\r\n borderWidth: 2\r\n }\r\n }\r\n ],\r\n grid: { right: '25px', left: '100px', bottom: '60px', top: '35px' }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default closedVsGoalInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Course Enrollment */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst courseEnrollmentsInit = () => {\r\n const $echartBarCourseEnrollments = document.querySelector('.echart-bar-course-enrollments');\r\n\r\n const data = [\r\n ['course', 'Free Course', 'Paid Course', 'On sale Course'],\r\n ['Sun', 4300, 8500, 5000],\r\n ['Mon', 8300, 7300, 4500],\r\n ['Tue', 8600, 6200, 3600],\r\n ['Wed', 7200, 5300, 4500],\r\n ['Thu', 8000, 5000, 2600],\r\n ['Fri', 5000, 7000, 8800],\r\n ['Sat', 8000, 9000, 6000]\r\n ];\r\n\r\n if ($echartBarCourseEnrollments) {\r\n const userOptions = utils.getData($echartBarCourseEnrollments, 'options');\r\n const chart = window.echarts.init($echartBarCourseEnrollments);\r\n\r\n const getDefaultOptions = () => ({\r\n color: [\r\n utils.rgbaColor(utils.getColors().info, 0.6),\r\n utils.getColors().primary,\r\n utils.rgbaColor(utils.getColors().warning, 0.4)\r\n ],\r\n dataset: { source: data },\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays().primary,\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter: params =>\r\n `
    ${params.seriesName}
    ${\r\n params.name\r\n }: ${params.value[params.componentIndex + 1]}
    `\r\n },\r\n legend: {\r\n data: ['Free Course', 'Paid Course', 'On sale Course'],\r\n left: 'left',\r\n itemWidth: 10,\r\n itemHeight: 10,\r\n borderRadius: 0,\r\n icon: 'circle',\r\n inactiveColor: utils.getGrays()['400'],\r\n textStyle: { color: utils.getGrays()['700'] }\r\n },\r\n xAxis: {\r\n type: 'category',\r\n axisLabel: { color: utils.getGrays()['400'] },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'line'\r\n }\r\n },\r\n splitLine: {\r\n show: true,\r\n lineStyle: {\r\n color: utils.getGrays()['200'],\r\n type: 'line',\r\n width: 0.5\r\n }\r\n },\r\n axisTick: { show: false },\r\n boundaryGap: true\r\n },\r\n yAxis: {\r\n axisPointer: { type: 'none' },\r\n axisTick: 'none',\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['200'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisLine: {\r\n show: false\r\n },\r\n axisLabel: {\r\n color: utils.getGrays()['400'],\r\n formatter: value => `${Math.round((value / 1000) * 10) / 10}k`\r\n }\r\n },\r\n series: [\r\n {\r\n type: 'bar',\r\n barWidth: '15%',\r\n barGap: '30%',\r\n label: { normal: { show: false } },\r\n z: 10,\r\n emphasis: {\r\n focus: 'series'\r\n },\r\n itemStyle: {\r\n normal: {\r\n barBorderRadius: [2, 2, 0, 0]\r\n }\r\n }\r\n },\r\n {\r\n type: 'bar',\r\n barWidth: '15%',\r\n barGap: '30%',\r\n label: { normal: { show: false } },\r\n z: 10,\r\n emphasis: {\r\n focus: 'series'\r\n },\r\n itemStyle: {\r\n normal: {\r\n barBorderRadius: [2, 2, 0, 0]\r\n }\r\n }\r\n },\r\n {\r\n type: 'bar',\r\n barWidth: '15%',\r\n barGap: '30%',\r\n label: { normal: { show: false } },\r\n z: 10,\r\n emphasis: {\r\n focus: 'series'\r\n },\r\n itemStyle: {\r\n normal: {\r\n barBorderRadius: [2, 2, 0, 0]\r\n }\r\n }\r\n }\r\n ],\r\n grid: {\r\n right: '1px',\r\n left: '30px',\r\n bottom: '10%',\r\n top: '20%'\r\n }\r\n });\r\n\r\n const initChart = () => {\r\n if (utils.isScrolledIntoView($echartBarCourseEnrollments)) {\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n window.removeEventListener('scroll', initChart);\r\n }\r\n };\r\n\r\n window.addEventListener('scroll', initChart);\r\n }\r\n};\r\n\r\nexport default courseEnrollmentsInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Echarts Pie Chart */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst courseStatusInit = () => {\r\n const $echartsCourseStatus = document.querySelector('.echart-course-status');\r\n\r\n const data = [\r\n {\r\n value: 13,\r\n name: 'Completed',\r\n itemStyle: {\r\n color: utils.getColor('primary')\r\n }\r\n },\r\n {\r\n value: 20,\r\n name: 'On going',\r\n itemStyle: {\r\n color: utils.getColor('info')\r\n }\r\n },\r\n {\r\n value: 10,\r\n name: 'Droped',\r\n itemStyle: {\r\n color: utils.getColor('warning')\r\n }\r\n },\r\n {\r\n value: 7,\r\n name: 'Refunded',\r\n itemStyle: {\r\n color: utils.getColor('success')\r\n }\r\n }\r\n ];\r\n\r\n if ($echartsCourseStatus) {\r\n const userOptions = utils.getData($echartsCourseStatus, 'options');\r\n const chart = window.echarts.init($echartsCourseStatus);\r\n\r\n const getDefaultOptions = () => ({\r\n legend: {\r\n show: false\r\n },\r\n series: [\r\n {\r\n type: 'pie',\r\n radius: '70%',\r\n itemStyle: {\r\n borderWidth: 2,\r\n borderColor: utils.getColor('gray-100')\r\n },\r\n label: {\r\n show: false\r\n },\r\n center: ['50%', '50%'],\r\n data\r\n }\r\n ],\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n axisPointer: {\r\n type: 'none'\r\n }\r\n }\r\n });\r\n\r\n const initChart = () => {\r\n if (utils.isScrolledIntoView($echartsCourseStatus)) {\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n window.removeEventListener('scroll', initChart);\r\n }\r\n };\r\n\r\n window.addEventListener('scroll', initChart);\r\n }\r\n};\r\n\r\nexport default courseStatusInit;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Audience Chart */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst revenueChartInit = () => {\r\n const data = {\r\n dates: utils.getDates(new Date('5-6-2019'), new Date('5-6-2021'), 1000 * 60 * 60 * 24 * 30),\r\n dataset: {\r\n revenue: [\r\n [\r\n 645, 500, 550, 550, 473, 405, 286, 601, 743, 450, 604, 815, 855, 722, 700, 896, 866, 952,\r\n 719, 558, 737, 885, 972, 650, 600\r\n ],\r\n [\r\n 440, 250, 270, 400, 175, 180, 200, 400, 600, 380, 340, 550, 650, 450, 400, 688, 650, 721,\r\n 500, 300, 445, 680, 568, 400, 371\r\n ]\r\n ],\r\n users: [\r\n [\r\n 545, 500, 650, 727, 773, 705, 686, 501, 643, 580, 604, 615, 755, 722, 727, 816, 836, 952,\r\n 719, 758, 937, 785, 872, 850, 800\r\n ],\r\n [\r\n 340, 360, 230, 250, 410, 430, 450, 200, 220, 540, 500, 250, 355, 320, 500, 630, 680, 500,\r\n 520, 550, 750, 720, 700, 780, 750\r\n ]\r\n ],\r\n deals: [\r\n [\r\n 545, 400, 450, 627, 473, 450, 460, 780, 770, 800, 504, 550, 500, 530, 727, 716, 736, 820,\r\n 719, 758, 737, 885, 872, 850, 800\r\n ],\r\n [\r\n 245, 300, 450, 427, 273, 250, 260, 580, 570, 500, 402, 450, 400, 330, 527, 516, 536, 620,\r\n 519, 558, 537, 483, 472, 250, 300\r\n ]\r\n ],\r\n profit: [\r\n [\r\n 545, 400, 450, 627, 673, 605, 686, 501, 843, 518, 504, 715, 955, 622, 627, 716, 736, 952,\r\n 619, 558, 937, 785, 872, 550, 400\r\n ],\r\n [\r\n 340, 360, 330, 300, 410, 380, 450, 400, 420, 240, 200, 250, 355, 320, 500, 630, 680, 400,\r\n 420, 450, 650, 620, 700, 450, 340\r\n ]\r\n ]\r\n }\r\n };\r\n\r\n const tooltipFormatter = params => `\r\n
    \r\n
    \r\n
    ${params[0].axisValue}
    \r\n
    \r\n
    \r\n
    \r\n Revenue: \r\n $${params[0].data}
    \r\n
    \r\n Revenue Goal: \r\n $${params[1].data}
    \r\n
    \r\n
    \r\n `;\r\n\r\n const getDefaultOptions = (data1, data2) => () => ({\r\n color: utils.getColors().white,\r\n tooltip: {\r\n trigger: 'axis',\r\n padding: 0,\r\n backgroundColor: 'transparent',\r\n borderWidth: 0,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n },\r\n axisPointer: {\r\n type: 'none'\r\n },\r\n formatter: tooltipFormatter\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: utils.getPastDates(25).map(date => window.dayjs(date).format('DD MMM, YYYY')),\r\n axisLabel: {\r\n color: utils.getGrays()['600'],\r\n formatter: value => window.dayjs(value).format('MMM DD'),\r\n align: 'left',\r\n fontSize: 11,\r\n padding: [0, 0, 0, 5],\r\n showMaxLabel: false\r\n },\r\n axisLine: {\r\n show: false\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n boundaryGap: true\r\n },\r\n yAxis: {\r\n position: 'right',\r\n axisPointer: { type: 'none' },\r\n axisTick: 'none',\r\n splitLine: {\r\n show: false\r\n },\r\n axisLine: {\r\n show: false\r\n },\r\n axisLabel: {\r\n show: false\r\n }\r\n },\r\n series: [\r\n {\r\n type: 'bar',\r\n name: 'Revenue',\r\n data: data1,\r\n lineStyle: {\r\n color: utils.getColor('primary')\r\n },\r\n itemStyle: {\r\n barBorderRadius: [4, 4, 0, 0],\r\n color: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n borderWidth: 1\r\n },\r\n emphasis: {\r\n itemStyle: {\r\n color: utils.getColor('primary')\r\n }\r\n }\r\n },\r\n {\r\n type: 'line',\r\n name: 'Revenue Goal',\r\n data: data2,\r\n symbol: 'circle',\r\n symbolSize: 6,\r\n animation: false,\r\n itemStyle: {\r\n color: utils.getColor('warning')\r\n },\r\n lineStyle: {\r\n type: 'dashed',\r\n width: 2,\r\n color: utils.getColor('warning')\r\n }\r\n }\r\n ],\r\n grid: { right: 5, left: 5, bottom: '8%', top: '5%' }\r\n });\r\n const initChart = (el, options) => {\r\n const userOptions = utils.getData(el, 'options');\r\n const chart = window.echarts.init(el);\r\n echartSetOption(chart, userOptions, options);\r\n };\r\n const chartKeys = ['revenue', 'users', 'deals', 'profit'];\r\n chartKeys.forEach(key => {\r\n const el = document.querySelector(`.echart-crm-${key}`);\r\n el && initChart(el, getDefaultOptions(data.dataset[key][0], data.dataset[key][1]));\r\n });\r\n};\r\n\r\nexport default revenueChartInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\nconst echartsCustomerSatisfactionInit = () => {\r\n const $echartCustomerSatisfaction = document.querySelector('.echart-customer-setisfaction');\r\n\r\n if ($echartCustomerSatisfaction) {\r\n // Get options from data attribute\r\n const userOptions = utils.getData($echartCustomerSatisfaction, 'options');\r\n const chart = window.echarts.init($echartCustomerSatisfaction);\r\n\r\n const getDefaultOptions = () => ({\r\n legend: {\r\n left: 'center',\r\n bottom: 22,\r\n itemWidth: 12,\r\n itemHeight: 12,\r\n borderRadius: 0,\r\n icon: 'circle',\r\n inactiveColor: utils.getGrays()['400'],\r\n inactiveBorderColor: 'transparent',\r\n textStyle: {\r\n color: utils.getGrays()['600'],\r\n fontSize: 12,\r\n fontFamily: 'Poppins',\r\n fontWeight: '500'\r\n },\r\n itemGap: 16\r\n },\r\n series: [\r\n {\r\n type: 'pie',\r\n radius: '70%',\r\n label: {\r\n show: false\r\n },\r\n center: ['50%', '45%'],\r\n itemStyle: {\r\n borderWidth: 2,\r\n borderColor: utils.isDark() === 'dark' ? '#121E2D' : utils.getGrays()['100']\r\n },\r\n data: [\r\n {\r\n value: 1100,\r\n name: 'Positive',\r\n itemStyle: {\r\n color: utils.getColor('primary')\r\n }\r\n },\r\n {\r\n value: 550,\r\n name: 'Nagative',\r\n itemStyle: {\r\n color: utils.rgbaColor(utils.getColor('primary'), 0.5)\r\n }\r\n }\r\n ]\r\n }\r\n ],\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n axisPointer: {\r\n type: 'none'\r\n }\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default echartsCustomerSatisfactionInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Echarts Bounce Rate */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst dealStorageFunnelInit = () => {\r\n const $echartDealStorageFunnel = document.querySelector('.echart-deal-storage-funnel');\r\n\r\n if ($echartDealStorageFunnel) {\r\n const userOptions = utils.getData($echartDealStorageFunnel, 'options');\r\n const { data, dataAxis1, dataAxis2 } = userOptions;\r\n const chart = window.echarts.init($echartDealStorageFunnel);\r\n\r\n const getDefaultOptions = () => ({\r\n yAxis: [\r\n {\r\n data: dataAxis1,\r\n axisLabel: {\r\n inside: true,\r\n textStyle: {\r\n color: utils.getGrays()['700'],\r\n fontWeight: 500,\r\n fontSize: 11,\r\n fontFamily: 'poppins'\r\n }\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n axisLine: {\r\n show: false\r\n },\r\n z: 10\r\n },\r\n {\r\n data: dataAxis2,\r\n axisLabel: {\r\n inside: false,\r\n textStyle: {\r\n color: utils.getColors().primary,\r\n fontWeight: 500,\r\n fontSize: 11,\r\n fontFamily: 'poppins'\r\n },\r\n borderRadius: 5,\r\n backgroundColor: utils.getSubtleColors().primary,\r\n padding: [6, 16, 6, 16],\r\n width: 115\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n axisLine: {\r\n show: false\r\n },\r\n z: 10\r\n }\r\n ],\r\n xAxis: {\r\n type: 'value',\r\n min: 0,\r\n max: 35,\r\n axisLine: {\r\n show: false\r\n },\r\n splitLine: {\r\n show: false\r\n },\r\n inverse: true,\r\n axisTick: {\r\n show: false\r\n },\r\n axisLabel: {\r\n show: false\r\n }\r\n },\r\n\r\n series: [\r\n {\r\n type: 'bar',\r\n showBackground: true,\r\n barWidth: 25,\r\n label: {\r\n show: true,\r\n formatter: '{c} ',\r\n position: 'insideLeft'\r\n },\r\n backgroundStyle: {\r\n color: utils.getGrays()['200'],\r\n borderRadius: 5\r\n },\r\n itemStyle: {\r\n color: utils.getColors().primary,\r\n borderRadius: 5\r\n },\r\n data\r\n }\r\n ],\r\n grid: { right: '65px', left: '0', bottom: '0', top: '0' }\r\n });\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default dealStorageFunnelInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\nconst echartsDistributionOfPerformanceInit = () => {\r\n const $distributionOfPerformance = document.querySelector('.echart-distribution-of-performance');\r\n\r\n if ($distributionOfPerformance) {\r\n const userOptions = utils.getData($distributionOfPerformance, 'options');\r\n const chart = window.echarts.init($distributionOfPerformance);\r\n\r\n const xAxisData = [\r\n 'Mar 01',\r\n 'Mar 02',\r\n 'Mar 03',\r\n 'Mar 04',\r\n 'Mar 05',\r\n 'Mar 06',\r\n 'Mar 07',\r\n 'Mar 08',\r\n 'Mar 09',\r\n 'Mar 10',\r\n 'Mar 11',\r\n 'Mar 12'\r\n ];\r\n const data1 = [50, 25, 35, 30, 45, 35, 38, 30, 35, 30, 35, 38];\r\n const data2 = [45, 50, 40, 35, 50, 40, 44, 35, 40, 45, 40, 44];\r\n\r\n const emphasisStyle = {\r\n itemStyle: {\r\n shadowColor: utils.rgbaColor(utils.getColor('dark'), 0.3)\r\n }\r\n };\r\n\r\n const getDefaultOptions = () => ({\r\n color: [utils.getColor('primary'), utils.isDark() === 'dark' ? '#236EA1' : '#7DD7FE'],\r\n legend: {\r\n data: ['Agent Support', 'Group Support'],\r\n icon: 'circle',\r\n itemWidth: 10,\r\n itemHeight: 10,\r\n padding: [0, 0, 0, 0],\r\n textStyle: {\r\n color: utils.getGrays()['700'],\r\n fontWeight: '500',\r\n fontSize: '13px'\r\n },\r\n left: 0,\r\n itemGap: 16\r\n },\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['900'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n axisPointer: {\r\n type: 'none'\r\n }\r\n },\r\n xAxis: {\r\n data: xAxisData,\r\n splitLine: { show: false },\r\n splitArea: { show: false },\r\n\r\n axisLabel: {\r\n color: utils.getGrays()['600']\r\n },\r\n\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300']\r\n }\r\n },\r\n axisTick: {\r\n show: false\r\n }\r\n },\r\n yAxis: {\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisLabel: {\r\n color: utils.getGrays()['600']\r\n }\r\n },\r\n series: [\r\n {\r\n name: 'Agent Support',\r\n type: 'bar',\r\n stack: 'one',\r\n emphasis: emphasisStyle,\r\n data: data1\r\n },\r\n {\r\n name: 'Group Support',\r\n type: 'bar',\r\n stack: 'one',\r\n emphasis: emphasisStyle,\r\n data: data2,\r\n itemStyle: {\r\n barBorderRadius: [3, 3, 0, 0]\r\n }\r\n }\r\n ],\r\n barWidth: '15px',\r\n grid: {\r\n top: '15%',\r\n bottom: 0,\r\n left: 0,\r\n right: 0,\r\n containLabel: true\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default echartsDistributionOfPerformanceInit;\r\n","const getPosition = (pos, params, dom, rect, size) => ({\r\n top: pos[1] - size.contentSize[1] - 10,\r\n left: pos[0] - size.contentSize[0] / 2\r\n});\r\n\r\nconst echartSetOption = (chart, userOptions, getDefaultOptions) => {\r\n const themeController = document.body;\r\n // Merge user options with lodash\r\n chart.setOption(window._.merge(getDefaultOptions(), userOptions));\r\n\r\n themeController.addEventListener('clickControl', ({ detail: { control } }) => {\r\n if (control === 'theme') {\r\n chart.setOption(window._.merge(getDefaultOptions(), userOptions));\r\n }\r\n });\r\n};\r\n\r\nconst tooltipFormatter = params => {\r\n let tooltipItem = '';\r\n params.forEach(el => {\r\n tooltipItem += `
    \r\n
    \r\n \r\n ${el.seriesName} : ${typeof el.value === 'object' ? el.value[1] : el.value}\r\n
    \r\n
    `;\r\n });\r\n return `\r\n
    \r\n

    \r\n ${window.dayjs(params[0].axisValue).isValid() ? window.dayjs(params[0].axisValue).format('MMMM DD') : params[0].axisValue}\r\n

    \r\n ${tooltipItem}\r\n
    `;\r\n};\r\n\r\nexport default { getPosition, echartSetOption, tooltipFormatter };\r\n","import utils from '../../utils';\r\n\r\nconst resizeEcharts = () => {\r\n const $echarts = document.querySelectorAll('[data-echart-responsive]');\r\n if ($echarts.length) {\r\n $echarts.forEach(item => {\r\n if (utils.getData(item, 'echart-responsive')) {\r\n if (\r\n !(\r\n item.closest('.tab-pane') &&\r\n window.getComputedStyle(item.closest('.tab-pane')).display === 'none'\r\n )\r\n ) {\r\n window.echarts.init(item).resize();\r\n }\r\n }\r\n });\r\n }\r\n};\r\n\r\nutils.resize(() => resizeEcharts());\r\n\r\nconst navbarVerticalToggle = document.querySelector('.navbar-vertical-toggle');\r\nnavbarVerticalToggle &&\r\n navbarVerticalToggle.addEventListener('navbar.vertical.toggle', () => resizeEcharts());\r\n\r\nconst echartTabs = document.querySelectorAll('[data-tab-has-echarts]');\r\nechartTabs &&\r\n echartTabs.forEach(tab => {\r\n tab.addEventListener('shown.bs.tab', e => {\r\n const el = e.target;\r\n const { hash } = el;\r\n const id = hash || el.dataset.bsTarget;\r\n const content = document.getElementById(id.substring(1));\r\n const chart = content?.querySelector('[data-echart-tab]');\r\n chart && window.echarts.init(chart).resize();\r\n });\r\n });\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Echarts Gross Revenue */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst grossRevenueChartInit = () => {\r\n const ECHART_GROSS_REVENUE = '.echart-gross-revenue-chart';\r\n\r\n const $echartsGrossRevenue = document.querySelector(ECHART_GROSS_REVENUE);\r\n\r\n const months = [\r\n 'Jan',\r\n 'Feb',\r\n 'Mar',\r\n 'Apr',\r\n 'May',\r\n 'Jun',\r\n 'Jul',\r\n 'Aug',\r\n 'Sep',\r\n 'Oct',\r\n 'Nov',\r\n 'Dec'\r\n ];\r\n\r\n if ($echartsGrossRevenue) {\r\n // Get options from data attribute\r\n const userOptions = utils.getData($echartsGrossRevenue, 'options');\r\n const chart = window.echarts.init($echartsGrossRevenue);\r\n\r\n const SELECT_MONTH = `#${userOptions.monthSelect}`;\r\n const LEGEND_MONTH_TARGET = userOptions.target;\r\n const LEGEND_CURRENT_MONTH = `#${userOptions.optionOne}`;\r\n const LEGEND_PREV_MONTH = `#${userOptions.optionTwo}`;\r\n\r\n const $legendCurrentMonth = document\r\n .getElementById(LEGEND_MONTH_TARGET)\r\n .querySelector(LEGEND_CURRENT_MONTH);\r\n const $legendPrevMonth = document\r\n .getElementById(LEGEND_MONTH_TARGET)\r\n .querySelector(LEGEND_PREV_MONTH);\r\n\r\n const dates = month =>\r\n utils.getDates(\r\n window.dayjs().month(month).date(1),\r\n window\r\n .dayjs()\r\n .month(Number(month) + 1)\r\n .date(0),\r\n 1000 * 60 * 60 * 24 * 3\r\n );\r\n\r\n const monthsnumber = [\r\n [20, 40, 20, 80, 50, 80, 120, 80, 50, 120, 110, 110],\r\n [60, 80, 60, 80, 65, 130, 120, 100, 30, 40, 30, 70],\r\n [100, 70, 80, 50, 120, 100, 130, 140, 90, 100, 40, 50],\r\n [80, 50, 60, 40, 60, 120, 100, 130, 60, 80, 50, 60],\r\n [70, 80, 100, 70, 90, 60, 80, 130, 40, 60, 50, 80],\r\n [90, 40, 80, 80, 100, 140, 100, 130, 90, 60, 70, 50],\r\n [80, 60, 80, 60, 40, 100, 120, 100, 30, 40, 30, 70],\r\n [20, 40, 20, 50, 70, 60, 110, 80, 90, 30, 50, 50],\r\n [60, 70, 30, 40, 80, 140, 80, 140, 120, 130, 100, 110],\r\n [90, 90, 40, 60, 40, 110, 90, 110, 60, 80, 60, 70],\r\n [50, 80, 50, 80, 50, 80, 120, 80, 50, 120, 110, 110],\r\n [60, 90, 60, 70, 40, 70, 100, 140, 30, 40, 30, 70],\r\n [20, 40, 20, 50, 30, 80, 120, 100, 30, 40, 30, 70]\r\n ];\r\n\r\n const tooltipFormatter = params => {\r\n const currentDate = window.dayjs(params[0].axisValue);\r\n let tooltipItem = '';\r\n params.forEach(el => {\r\n tooltipItem += `
    \r\n ${currentDate.format('MMM DD')} : ${el.value}\r\n
    `;\r\n });\r\n return `
    \r\n ${tooltipItem}\r\n
    `;\r\n };\r\n const getDefaultOptions = () => ({\r\n title: {\r\n text: 'Sales over time',\r\n textStyle: {\r\n fontWeight: 500,\r\n fontSize: 13,\r\n fontFamily: 'poppins'\r\n }\r\n },\r\n legend: {\r\n show: false,\r\n data: ['currentMonth', 'prevMonth']\r\n },\r\n color: utils.getColors().white,\r\n tooltip: {\r\n trigger: 'axis',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n formatter: tooltipFormatter,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n }\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: dates(0),\r\n boundaryGap: false,\r\n axisPointer: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'solid'\r\n }\r\n },\r\n axisTick: { show: false },\r\n axisLabel: {\r\n color: utils.getGrays()['400'],\r\n formatter(value) {\r\n const date = new Date(value);\r\n return `${months[date.getMonth()].substring(0, 3)} ${date.getDate()}`;\r\n },\r\n margin: 15\r\n },\r\n splitLine: {\r\n show: true,\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n }\r\n },\r\n yAxis: {\r\n type: 'value',\r\n axisPointer: { show: false },\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300']\r\n }\r\n },\r\n boundaryGap: false,\r\n axisLabel: {\r\n show: true,\r\n color: utils.getGrays()['400'],\r\n margin: 15\r\n },\r\n axisTick: { show: false },\r\n axisLine: { show: false }\r\n },\r\n series: [\r\n {\r\n name: 'prevMonth',\r\n type: 'line',\r\n data: monthsnumber[0],\r\n lineStyle: { color: utils.getGrays()['300'] },\r\n itemStyle: {\r\n borderColor: utils.getGrays()['300'],\r\n borderWidth: 2\r\n },\r\n symbol: 'none',\r\n smooth: false,\r\n hoverAnimation: true\r\n },\r\n {\r\n name: 'currentMonth',\r\n type: 'line',\r\n data: monthsnumber[1],\r\n lineStyle: { color: utils.getColors().primary },\r\n itemStyle: {\r\n borderColor: utils.getColors().primary,\r\n borderWidth: 2\r\n },\r\n symbol: 'none',\r\n smooth: false,\r\n hoverAnimation: true\r\n }\r\n ],\r\n grid: {\r\n right: '8px',\r\n left: '40px',\r\n bottom: '15%',\r\n top: '20%'\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n\r\n // Change chart options accordiong to the selected month\r\n const monthSelect = document.querySelector(SELECT_MONTH);\r\n\r\n let month = 0;\r\n let currentMonthData = monthsnumber[Number(month) + 1];\r\n let prevMonthData = monthsnumber[monthSelect.selectedIndex];\r\n\r\n monthSelect.addEventListener('change', e => {\r\n month = e.currentTarget.value;\r\n currentMonthData = monthsnumber[Number(month) + 1];\r\n prevMonthData = monthsnumber[month];\r\n\r\n $legendCurrentMonth.querySelector('.text').innerText = months[month];\r\n $legendPrevMonth.querySelector('.text').innerText = months[month - 1]\r\n ? months[month - 1]\r\n : 'Dec';\r\n\r\n chart.setOption({\r\n xAxis: {\r\n data: dates(month)\r\n },\r\n series: [\r\n {\r\n data: currentMonthData\r\n },\r\n {\r\n data: prevMonthData\r\n }\r\n ]\r\n });\r\n });\r\n\r\n $legendCurrentMonth.addEventListener('click', () => {\r\n $legendCurrentMonth.classList.toggle('opacity-50');\r\n\r\n chart.dispatchAction({\r\n type: 'legendToggleSelect',\r\n name: 'currentMonth'\r\n });\r\n });\r\n\r\n $legendPrevMonth.addEventListener('click', () => {\r\n $legendPrevMonth.classList.toggle('opacity-50');\r\n\r\n chart.dispatchAction({\r\n type: 'legendToggleSelect',\r\n name: 'prevMonth'\r\n });\r\n });\r\n }\r\n};\r\n\r\nexport default grossRevenueChartInit;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption, tooltipFormatter } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Traffic Channels */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst leadConversionInit = () => {\r\n const $leadConversion = document.querySelector('.echart-lead-conversion');\r\n\r\n if ($leadConversion) {\r\n const userOptions = utils.getData($leadConversion, 'options');\r\n const chart = window.echarts.init($leadConversion);\r\n\r\n const getDefaultOptions = () => ({\r\n color: [\r\n utils.rgbaColor(utils.getColors().primary, 0.7),\r\n utils.rgbaColor(utils.getColors().info, 0.6),\r\n utils.rgbaColor(utils.getColors().secondary, 0.2),\r\n utils.rgbaColor(utils.getColors().warning, 0.6)\r\n ],\r\n legend: {\r\n data: ['Campaigns', 'Lead', 'Opportunity', 'Deal'],\r\n left: '0%',\r\n icon: 'circle',\r\n inactiveColor: utils.getGrays()['400'],\r\n textStyle: { color: utils.getGrays()['700'] },\r\n itemGap: 10\r\n },\r\n yAxis: {\r\n type: 'category',\r\n data: [\r\n 'kerry Ingram',\r\n 'Bradie Pitter',\r\n 'Harrington',\r\n 'Ashley Shaw',\r\n 'Jenny Horas',\r\n 'Chris Pratt'\r\n ],\r\n axisLine: {\r\n show: false\r\n },\r\n boundaryGap: false,\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['200']\r\n }\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n axisLabel: {\r\n color: utils.getGrays()['600']\r\n }\r\n },\r\n xAxis: {\r\n type: 'value',\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['200']\r\n }\r\n },\r\n axisLine: {\r\n show: false\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n axisLabel: {\r\n show: false\r\n }\r\n },\r\n tooltip: {\r\n trigger: 'axis',\r\n padding: [7, 10],\r\n axisPointer: {\r\n type: 'none'\r\n },\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n },\r\n formatter: tooltipFormatter\r\n },\r\n\r\n series: [\r\n {\r\n name: 'Campaigns',\r\n type: 'bar',\r\n stack: 'total',\r\n data: [1405, 1300, 1620, 1430, 1500, 1520],\r\n barWidth: '20%'\r\n },\r\n {\r\n name: 'Lead',\r\n type: 'bar',\r\n stack: 'total',\r\n data: [320, 302, 301, 334, 340, 390],\r\n barWidth: '20%'\r\n },\r\n {\r\n name: 'Opportunity',\r\n type: 'bar',\r\n stack: 'total',\r\n data: [220, 182, 351, 234, 290, 300],\r\n barWidth: '20%'\r\n },\r\n {\r\n name: 'Deal',\r\n type: 'bar',\r\n stack: 'total',\r\n data: [120, 182, 191, 134, 190, 170],\r\n barWidth: '20%'\r\n }\r\n ],\r\n grid: {\r\n right: 5,\r\n left: 5,\r\n bottom: 8,\r\n top: 60,\r\n containLabel: true\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default leadConversionInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Echarts Line Payment */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst linePaymentChartInit = () => {\r\n const $echartsLinePaymentChart = document.querySelector('.echart-line-payment');\r\n\r\n const dataset = {\r\n all: [4, 1, 6, 2, 7, 12, 4, 6, 5, 4, 5, 10],\r\n successful: [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 8],\r\n failed: [1, 0, 2, 1, 2, 1, 1, 0, 0, 1, 0, 2]\r\n };\r\n const labels = [\r\n '9:00 AM',\r\n '10:00 AM',\r\n '11:00 AM',\r\n '12:00 PM',\r\n '1:00 PM',\r\n '2:00 PM',\r\n '3:00 PM',\r\n '4:00 PM',\r\n '5:00 PM',\r\n '6:00 PM',\r\n '7:00 PM',\r\n '8:00 PM'\r\n ];\r\n\r\n if ($echartsLinePaymentChart) {\r\n const userOptions = utils.getData($echartsLinePaymentChart, 'options');\r\n const chart = window.echarts.init($echartsLinePaymentChart);\r\n\r\n const getDefaultOptions = () => ({\r\n tooltip: {\r\n trigger: 'axis',\r\n axisPointer: {\r\n type: 'none'\r\n },\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter: params => `${params[0].axisValue} - ${params[0].value} USD`,\r\n textStyle: {\r\n fontWeight: 500,\r\n fontSize: 12,\r\n color: utils.getGrays()['1100']\r\n }\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: labels,\r\n splitLine: {\r\n show: true,\r\n lineStyle: {\r\n color: utils.rgbaColor('#fff', 0.1)\r\n },\r\n interval: 0\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.rgbaColor('#fff', 0.1)\r\n }\r\n },\r\n axisTick: {\r\n show: true,\r\n length: 10,\r\n lineStyle: {\r\n color: utils.rgbaColor('#fff', 0.1)\r\n }\r\n },\r\n axisLabel: {\r\n color: utils.getGrays()['400'],\r\n fontWeight: 600,\r\n formatter: value => value.substring(0, value.length - 3),\r\n fontSize: 12,\r\n interval: window.innerWidth < 768 ? 'auto' : 0,\r\n margin: 15\r\n },\r\n boundaryGap: false\r\n },\r\n yAxis: {\r\n type: 'value',\r\n axisPointer: { show: false },\r\n splitLine: {\r\n show: false\r\n },\r\n axisLabel: {\r\n show: false\r\n },\r\n axisTick: { show: false },\r\n axisLine: { show: false }\r\n },\r\n series: [\r\n {\r\n type: 'line',\r\n smooth: true,\r\n data: dataset.successful.map(d => (d * 3.14).toFixed(2)),\r\n symbol: 'emptyCircle',\r\n itemStyle: {\r\n color: utils.isDark() === 'light' ? utils.getColors().white : utils.getColors().primary\r\n },\r\n lineStyle: {\r\n color:\r\n utils.isDark() === 'light'\r\n ? utils.rgbaColor(utils.getColors().white, 0.8)\r\n : utils.getColors().primary\r\n },\r\n areaStyle: {\r\n color: {\r\n type: 'linear',\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color:\r\n utils.isDark() === 'light'\r\n ? 'rgba(255, 255, 255, 0.5)'\r\n : utils.rgbaColor(utils.getColors().primary, 0.5)\r\n },\r\n {\r\n offset: 1,\r\n color:\r\n utils.isDark() === 'light'\r\n ? 'rgba(255, 255, 255, 0)'\r\n : utils.rgbaColor(utils.getColors().primary, 0)\r\n }\r\n ]\r\n }\r\n },\r\n emphasis: {\r\n lineStyle: {\r\n width: 2\r\n }\r\n }\r\n }\r\n ],\r\n grid: { right: 15, left: 15, bottom: '15%', top: 0 }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n\r\n utils.resize(() => {\r\n if (window.innerWidth < 768) {\r\n chart.setOption({\r\n xAxis: {\r\n axisLabel: {\r\n interval: 'auto'\r\n }\r\n }\r\n });\r\n }\r\n });\r\n\r\n const selectMenu = document.querySelector('#dashboard-chart-select');\r\n\r\n if (selectMenu) {\r\n selectMenu.addEventListener('change', e => {\r\n const { value } = e.currentTarget;\r\n chart.setOption({\r\n series: [{ data: dataset[value].map(d => (d * 3.14).toFixed(2)) }]\r\n });\r\n });\r\n }\r\n }\r\n};\r\n\r\nexport default linePaymentChartInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Session By Country Map */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst locationBySessionInit = () => {\r\n const $locationBySessionMap = document.querySelector('.echart-location-by-session-map');\r\n\r\n const data = [\r\n { name: 'Afghanistan', value: 28397.812 },\r\n { name: 'Angola', value: 19549.124 },\r\n { name: 'Albania', value: 3150.143 },\r\n { name: 'United Arab Emirates', value: 8441.537 },\r\n { name: 'Argentina', value: 40374.224 },\r\n { name: 'Armenia', value: 2963.496 },\r\n { name: 'French Southern and Antarctic Lands', value: 268.065 },\r\n { name: 'Australia', value: 22404.488 },\r\n { name: 'Austria', value: 8401.924 },\r\n { name: 'Azerbaijan', value: 9094.718 },\r\n { name: 'Burundi', value: 9232.753 },\r\n { name: 'Belgium', value: 10941.288 },\r\n { name: 'Benin', value: 9509.798 },\r\n { name: 'Burkina Faso', value: 15540.284 },\r\n { name: 'Bangladesh', value: 151125.475 },\r\n { name: 'Bulgaria', value: 7389.175 },\r\n { name: 'The Bahamas', value: 66402.316 },\r\n { name: 'Bosnia and Herzegovina', value: 3845.929 },\r\n { name: 'Belarus', value: 9491.07 },\r\n { name: 'Belize', value: 308.595 },\r\n { name: 'Bermuda', value: 64.951 },\r\n { name: 'Bolivia', value: 716.939 },\r\n { name: 'Brazil', value: 195210.154 },\r\n { name: 'Brunei', value: 27.223 },\r\n { name: 'Bhutan', value: 716.939 },\r\n { name: 'Botswana', value: 1969.341 },\r\n { name: 'Central African Rep.', value: 4349.921 },\r\n { name: 'Canada', value: 34126.24 },\r\n { name: 'Switzerland', value: 7830.534 },\r\n { name: 'Chile', value: 17150.76 },\r\n { name: 'China', value: 1359821.465 },\r\n { name: \"Côte d'Ivoire\", value: 60508.978 },\r\n { name: 'Cameroon', value: 20624.343 },\r\n { name: 'Dem. Rep. Congo', value: 62191.161 },\r\n { name: 'Congo', value: 3573.024 },\r\n { name: 'Colombia', value: 46444.798 },\r\n { name: 'Costa Rica', value: 4669.685 },\r\n { name: 'Cuba', value: 11281.768 },\r\n { name: 'Northern Cyprus', value: 1.468 },\r\n { name: 'Cyprus', value: 1103.685 },\r\n { name: 'Czech Republic', value: 10553.701 },\r\n { name: 'Germany', value: 83017.404 },\r\n { name: 'Djibouti', value: 834.036 },\r\n { name: 'Denmark', value: 5550.959 },\r\n { name: 'Dominican Republic', value: 10016.797 },\r\n { name: 'Algeria', value: 37062.82 },\r\n { name: 'Ecuador', value: 15001.072 },\r\n { name: 'Egypt', value: 78075.705 },\r\n { name: 'Eritrea', value: 5741.159 },\r\n { name: 'Spain', value: 46182.038 },\r\n { name: 'Estonia', value: 1298.533 },\r\n { name: 'Ethiopia', value: 87095.281 },\r\n { name: 'Finland', value: 5367.693 },\r\n { name: 'Fiji', value: 860.559 },\r\n { name: 'Falkland Islands', value: 49.581 },\r\n { name: 'France', value: 63230.866 },\r\n { name: 'Gabon', value: 1556.222 },\r\n { name: 'United Kingdom', value: 62066.35 },\r\n { name: 'Georgia', value: 4388.674 },\r\n { name: 'Ghana', value: 24262.901 },\r\n { name: 'Eq. Guinea', value: 10876.033 },\r\n { name: 'Guinea', value: 10876.033 },\r\n { name: 'Gambia', value: 1680.64 },\r\n { name: 'Guinea Bissau', value: 10876.033 },\r\n { name: 'Equatorial Guinea', value: 696.167 },\r\n { name: 'Greece', value: 11109.999 },\r\n { name: 'Greenland', value: 56.546 },\r\n { name: 'Guatemala', value: 14341.576 },\r\n { name: 'French Guiana', value: 231.169 },\r\n { name: 'Guyana', value: 786.126 },\r\n { name: 'Honduras', value: 7621.204 },\r\n { name: 'Croatia', value: 4338.027 },\r\n { name: 'Haiti', value: 9896.4 },\r\n { name: 'Hungary', value: 10014.633 },\r\n { name: 'Indonesia', value: 240676.485 },\r\n { name: 'India', value: 1205624.648 },\r\n { name: 'Ireland', value: 4467.561 },\r\n { name: 'Iran', value: 240676.485 },\r\n { name: 'Iraq', value: 30962.38 },\r\n { name: 'Iceland', value: 318.042 },\r\n { name: 'Israel', value: 7420.368 },\r\n { name: 'Italy', value: 60508.978 },\r\n { name: 'Jamaica', value: 2741.485 },\r\n { name: 'Jordan', value: 6454.554 },\r\n { name: 'Japan', value: 127352.833 },\r\n { name: 'Kazakhstan', value: 15921.127 },\r\n { name: 'Kenya', value: 40909.194 },\r\n { name: 'Kyrgyzstan', value: 5334.223 },\r\n { name: 'Cambodia', value: 14364.931 },\r\n { name: 'South Korea', value: 51452.352 },\r\n { name: 'Kosovo', value: 97.743 },\r\n { name: 'Kuwait', value: 2991.58 },\r\n { name: 'Laos', value: 6395.713 },\r\n { name: 'Lebanon', value: 4341.092 },\r\n { name: 'Liberia', value: 3957.99 },\r\n { name: 'Libya', value: 6040.612 },\r\n { name: 'Sri Lanka', value: 20758.779 },\r\n { name: 'Lesotho', value: 2008.921 },\r\n { name: 'Lithuania', value: 3068.457 },\r\n { name: 'Luxembourg', value: 507.885 },\r\n { name: 'Latvia', value: 2090.519 },\r\n { name: 'Morocco', value: 31642.36 },\r\n { name: 'Moldova', value: 103.619 },\r\n { name: 'Madagascar', value: 21079.532 },\r\n { name: 'Mexico', value: 117886.404 },\r\n { name: 'Macedonia', value: 507.885 },\r\n { name: 'Mali', value: 13985.961 },\r\n { name: 'Myanmar', value: 51931.231 },\r\n { name: 'Montenegro', value: 620.078 },\r\n { name: 'Mongolia', value: 2712.738 },\r\n { name: 'Mozambique', value: 23967.265 },\r\n { name: 'Mauritania', value: 3609.42 },\r\n { name: 'Malawi', value: 15013.694 },\r\n { name: 'Malaysia', value: 28275.835 },\r\n { name: 'Namibia', value: 2178.967 },\r\n { name: 'New Caledonia', value: 246.379 },\r\n { name: 'Niger', value: 15893.746 },\r\n { name: 'Nigeria', value: 159707.78 },\r\n { name: 'Nicaragua', value: 5822.209 },\r\n { name: 'Netherlands', value: 16615.243 },\r\n { name: 'Norway', value: 4891.251 },\r\n { name: 'Nepal', value: 26846.016 },\r\n { name: 'New Zealand', value: 4368.136 },\r\n { name: 'Oman', value: 2802.768 },\r\n { name: 'Pakistan', value: 173149.306 },\r\n { name: 'Panama', value: 3678.128 },\r\n { name: 'Peru', value: 29262.83 },\r\n { name: 'Philippines', value: 93444.322 },\r\n { name: 'Papua New Guinea', value: 6858.945 },\r\n { name: 'Poland', value: 38198.754 },\r\n { name: 'Puerto Rico', value: 3709.671 },\r\n { name: 'North Korea', value: 1.468 },\r\n { name: 'Portugal', value: 10589.792 },\r\n { name: 'Paraguay', value: 6459.721 },\r\n { name: 'Qatar', value: 1749.713 },\r\n { name: 'Romania', value: 21861.476 },\r\n { name: 'Russia', value: 21861.476 },\r\n { name: 'Rwanda', value: 10836.732 },\r\n { name: 'Western Sahara', value: 514.648 },\r\n { name: 'Saudi Arabia', value: 27258.387 },\r\n { name: 'Sudan', value: 35652.002 },\r\n { name: 'S. Sudan', value: 9940.929 },\r\n { name: 'Senegal', value: 12950.564 },\r\n { name: 'Solomon Islands', value: 526.447 },\r\n { name: 'Sierra Leone', value: 5751.976 },\r\n { name: 'El Salvador', value: 6218.195 },\r\n { name: 'Somaliland', value: 9636.173 },\r\n { name: 'Somalia', value: 9636.173 },\r\n { name: 'Republic of Serbia', value: 3573.024 },\r\n { name: 'Suriname', value: 524.96 },\r\n { name: 'Slovakia', value: 5433.437 },\r\n { name: 'Slovenia', value: 2054.232 },\r\n { name: 'Sweden', value: 9382.297 },\r\n { name: 'Swaziland', value: 1193.148 },\r\n { name: 'Syria', value: 7830.534 },\r\n { name: 'Chad', value: 11720.781 },\r\n { name: 'Togo', value: 6306.014 },\r\n { name: 'Thailand', value: 66402.316 },\r\n { name: 'Tajikistan', value: 7627.326 },\r\n { name: 'Turkmenistan', value: 5041.995 },\r\n { name: 'East Timor', value: 10016.797 },\r\n { name: 'Trinidad and Tobago', value: 1328.095 },\r\n { name: 'Tunisia', value: 10631.83 },\r\n { name: 'Turkey', value: 72137.546 },\r\n { name: 'Tanzania', value: 44973.33 },\r\n { name: 'Uganda', value: 33987.213 },\r\n { name: 'Ukraine', value: 46050.22 },\r\n { name: 'Uruguay', value: 3371.982 },\r\n { name: 'United States', value: 312247.116 },\r\n { name: 'Uzbekistan', value: 27769.27 },\r\n { name: 'Venezuela', value: 236.299 },\r\n { name: 'Vietnam', value: 89047.397 },\r\n { name: 'Vanuatu', value: 236.299 },\r\n { name: 'West Bank', value: 13.565 },\r\n { name: 'Yemen', value: 22763.008 },\r\n { name: 'South Africa', value: 51452.352 },\r\n { name: 'Zambia', value: 13216.985 },\r\n { name: 'Zimbabwe', value: 13076.978 }\r\n ];\r\n\r\n const total = 6961500;\r\n\r\n const maxZoomLevel = 5;\r\n const minZoomLevel = 1;\r\n\r\n if ($locationBySessionMap) {\r\n const userOptions = utils.getData($locationBySessionMap, 'options');\r\n const chart = window.echarts.init($locationBySessionMap);\r\n\r\n const getDefaultOptions = () => ({\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter: params =>\r\n `${params.data?.name} : ${(\r\n (params.data && params.data.value / total) * 100\r\n ).toFixed(2)}%`\r\n },\r\n\r\n visualMap: {\r\n show: false,\r\n min: 800,\r\n max: 50000,\r\n inRange: {\r\n color: [\r\n utils.getColors().primary,\r\n utils.rgbaColor(utils.getColors().primary, 0.8),\r\n utils.rgbaColor(utils.getColors().primary, 0.6),\r\n utils.rgbaColor(utils.getColors().primary, 0.4),\r\n utils.rgbaColor(utils.getColors().primary, 0.2)\r\n ].reverse()\r\n }\r\n },\r\n series: [\r\n {\r\n type: 'map',\r\n map: 'world',\r\n data,\r\n roam: 'move',\r\n\r\n scaleLimit: {\r\n min: minZoomLevel,\r\n max: maxZoomLevel\r\n },\r\n left: 0,\r\n right: 0,\r\n label: {\r\n show: false\r\n },\r\n itemStyle: {\r\n borderColor: utils.getGrays()['300']\r\n },\r\n emphasis: {\r\n label: {\r\n show: false\r\n },\r\n itemStyle: {\r\n areaColor: utils.getColor('warning')\r\n }\r\n }\r\n }\r\n ]\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n\r\n let zoomLevel = 1;\r\n\r\n document.querySelector('.location-by-session-map-reset')?.addEventListener('click', () => {\r\n zoomLevel = 1;\r\n chart.dispatchAction({\r\n type: 'restore'\r\n });\r\n chart.setOption({\r\n series: {\r\n zoom: 1\r\n }\r\n });\r\n });\r\n\r\n document.querySelector('.location-by-session-map-zoom')?.addEventListener('click', () => {\r\n if (zoomLevel < maxZoomLevel) {\r\n zoomLevel += 1;\r\n }\r\n chart.setOption({\r\n series: {\r\n zoom: zoomLevel\r\n }\r\n });\r\n });\r\n\r\n document.querySelector('.location-by-session-map-zoomOut')?.addEventListener('click', () => {\r\n if (zoomLevel > minZoomLevel) {\r\n zoomLevel -= 1;\r\n }\r\n chart.setOption({\r\n series: {\r\n zoom: zoomLevel\r\n }\r\n });\r\n });\r\n }\r\n};\r\n\r\nexport default locationBySessionInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption, getPosition } from './echarts-utils';\r\n/* -------------------------------------------------------------------------- */\r\n/* Product Share */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst marketShareEcommerceInit = () => {\r\n const ECHART_PRODUCT_SHARE = '.echart-product-share';\r\n const $echartProductShare = document.querySelector(ECHART_PRODUCT_SHARE);\r\n\r\n if ($echartProductShare) {\r\n const userOptions = utils.getData($echartProductShare, 'options');\r\n const chart = window.echarts.init($echartProductShare);\r\n\r\n const getDefaultOptions = () => ({\r\n color: [utils.getColors().primary, utils.getColors().info, utils.getColors().warning],\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter(params) {\r\n return `${params.data.name}: ${params.percent}%`;\r\n }\r\n },\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n },\r\n legend: { show: false },\r\n series: [\r\n {\r\n type: 'pie',\r\n radius: ['100%', '80%'],\r\n avoidLabelOverlap: false,\r\n hoverAnimation: false,\r\n itemStyle: {\r\n borderWidth: 2,\r\n borderColor: utils.getColor('gray-100')\r\n },\r\n label: {\r\n normal: {\r\n show: false,\r\n position: 'center',\r\n textStyle: {\r\n fontSize: '20',\r\n fontWeight: '500',\r\n color: utils.getGrays()['700']\r\n }\r\n },\r\n emphasis: {\r\n show: false\r\n }\r\n },\r\n labelLine: { normal: { show: false } },\r\n data: [\r\n { value: 5300000, name: 'Falcon' },\r\n { value: 1900000, name: 'Sparrow' },\r\n { value: 2000000, name: 'Phoenix' }\r\n ]\r\n }\r\n ]\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default marketShareEcommerceInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption, getPosition } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Market Share */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst marketShareInit = () => {\r\n const ECHART_MARKET_SHARE = '.echart-market-share';\r\n const $echartMarketShare = document.querySelector(ECHART_MARKET_SHARE);\r\n\r\n if ($echartMarketShare) {\r\n const userOptions = utils.getData($echartMarketShare, 'options');\r\n const chart = window.echarts.init($echartMarketShare);\r\n\r\n const getDefaultOptions = () => ({\r\n color: [utils.getColors().primary, utils.getColors().info, utils.getGrays()[300]],\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter(params) {\r\n return `${params.data.name}: ${params.percent}%`;\r\n }\r\n },\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n },\r\n legend: { show: false },\r\n series: [\r\n {\r\n type: 'pie',\r\n radius: ['100%', '87%'],\r\n avoidLabelOverlap: false,\r\n hoverAnimation: false,\r\n itemStyle: {\r\n borderWidth: 2,\r\n borderColor: utils.getColor('gray-100')\r\n },\r\n label: {\r\n normal: {\r\n show: false,\r\n position: 'center',\r\n textStyle: {\r\n fontSize: '20',\r\n fontWeight: '500',\r\n color: utils.getGrays()['100']\r\n }\r\n },\r\n emphasis: {\r\n show: false\r\n }\r\n },\r\n labelLine: { normal: { show: false } },\r\n data: [\r\n { value: 5300000, name: 'Samsung' },\r\n { value: 1900000, name: 'Huawei' },\r\n { value: 2000000, name: 'Apple' }\r\n ]\r\n }\r\n ]\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default marketShareInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Bandwidth Saved */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst marketingExpensesInit = () => {\r\n const $echartsMarketingExp = document.querySelector('.echart-marketing-expenses');\r\n\r\n if ($echartsMarketingExp) {\r\n const userOptions = utils.getData($echartsMarketingExp, 'options');\r\n const chart = window.echarts.init($echartsMarketingExp);\r\n\r\n const marketingExpenses = [\r\n {\r\n value: 412600,\r\n name: 'Offline Marketing',\r\n itemStyle: { color: utils.getColor('primary') },\r\n label: {\r\n rich: {\r\n per: {\r\n color: '#1C4F93'\r\n }\r\n }\r\n }\r\n },\r\n {\r\n value: 641500,\r\n name: 'Digital Marketing',\r\n itemStyle: {\r\n color: utils.rgbaColor(utils.getColor('info'), 0.35)\r\n },\r\n label: {\r\n rich: {\r\n per: {\r\n color: '#1978A2'\r\n }\r\n }\r\n }\r\n }\r\n ];\r\n\r\n const detailedExpenses = [\r\n {\r\n value: 91600,\r\n name: 'Event Sponsorship',\r\n itemStyle: {\r\n color: utils.rgbaColor(utils.getColor('primary'), 0.4)\r\n }\r\n },\r\n {\r\n value: 183000,\r\n name: 'Outrich Event',\r\n itemStyle: {\r\n color: utils.rgbaColor(utils.getColor('primary'), 0.6)\r\n }\r\n },\r\n {\r\n value: 138000,\r\n name: 'Ad Campaign',\r\n itemStyle: {\r\n color: utils.rgbaColor(utils.getColor('primary'), 0.8)\r\n }\r\n },\r\n {\r\n value: 183000,\r\n name: 'Social Media',\r\n itemStyle: {\r\n color: utils.rgbaColor(utils.getColor('info'), 0.2)\r\n }\r\n },\r\n {\r\n value: 45900,\r\n name: 'Google Ads',\r\n itemStyle: {\r\n color: utils.rgbaColor(utils.getColor('info'), 0.35)\r\n }\r\n },\r\n {\r\n value: 138000,\r\n name: 'Influencer Marketing',\r\n itemStyle: {\r\n color: utils.rgbaColor(utils.getColor('info'), 0.5)\r\n }\r\n },\r\n {\r\n value: 183000,\r\n name: 'Email Marketing',\r\n itemStyle: {\r\n color: utils.rgbaColor(utils.getColor('info'), 0.7)\r\n }\r\n },\r\n {\r\n value: 91600,\r\n name: 'Generate Backlinks',\r\n itemStyle: {\r\n color: utils.rgbaColor(utils.getColor('info'), 0.8)\r\n }\r\n }\r\n ];\r\n\r\n const getDefaultOptions = () => ({\r\n tooltip: {\r\n trigger: 'item',\r\n backgroundColor: utils.getGrays()['100'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n formatter: '{b}
    {c} ({d}%)'\r\n },\r\n series: [\r\n {\r\n name: 'Marketing Expenses',\r\n type: 'pie',\r\n selectedMode: 'single',\r\n radius: ['45%', '60%'],\r\n label: {\r\n show: false\r\n },\r\n labelLine: {\r\n show: false\r\n },\r\n itemStyle: {\r\n borderColor: utils.getColor('gray-100'),\r\n borderWidth: 2\r\n },\r\n\r\n data: detailedExpenses\r\n },\r\n {\r\n name: 'Marketing Expenses',\r\n type: 'pie',\r\n radius: ['70%', '75%'],\r\n barWidth: 10,\r\n labelLine: {\r\n length: 0,\r\n show: false\r\n },\r\n label: {\r\n formatter: '{per|{d}%}',\r\n rich: {\r\n per: {\r\n fontSize: 14,\r\n fontWeight: 'bold',\r\n lineHeight: 33\r\n }\r\n }\r\n },\r\n data: marketingExpenses\r\n }\r\n ]\r\n });\r\n\r\n const initChart = () => {\r\n if (utils.isScrolledIntoView($echartsMarketingExp)) {\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n window.removeEventListener('scroll', initChart);\r\n }\r\n };\r\n\r\n window.addEventListener('scroll', initChart);\r\n }\r\n};\r\n\r\nexport default marketingExpensesInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption, getPosition } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Market Share */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst mostLeadsInit = () => {\r\n const ECHART_MOST_LEADS = '.echart-most-leads';\r\n const $echartMostLeads = document.querySelector(ECHART_MOST_LEADS);\r\n\r\n if ($echartMostLeads) {\r\n const userOptions = utils.getData($echartMostLeads, 'options');\r\n const chart = window.echarts.init($echartMostLeads);\r\n\r\n const getDefaultOptions = () => ({\r\n color: [\r\n utils.getColors().primary,\r\n utils.rgbaColor(utils.getColors().primary, 0.5),\r\n utils.getColors().warning,\r\n utils.getColors().info\r\n ],\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter(params) {\r\n return `${params.data.name}: ${params.percent}%`;\r\n }\r\n },\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n },\r\n legend: { show: false },\r\n series: [\r\n {\r\n type: 'pie',\r\n radius: ['100%', '67%'],\r\n avoidLabelOverlap: false,\r\n hoverAnimation: false,\r\n itemStyle: {\r\n borderWidth: 2,\r\n borderColor: utils.getColor('gray-100')\r\n },\r\n label: {\r\n normal: {\r\n show: false,\r\n position: 'center',\r\n textStyle: {\r\n fontSize: '20',\r\n fontWeight: '500',\r\n color: utils.getGrays()['700']\r\n }\r\n },\r\n emphasis: {\r\n show: false\r\n }\r\n },\r\n labelLine: { normal: { show: false } },\r\n data: [\r\n { value: 60, name: 'Social' },\r\n { value: 30, name: 'Other' },\r\n { value: 10, name: 'Call' },\r\n { value: 120, name: 'Email' }\r\n ]\r\n }\r\n ]\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default mostLeadsInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\nconst echartsNumberOfTicketsInit = () => {\r\n const $numberOfTickets = document.querySelector('.echart-number-of-tickets');\r\n\r\n if ($numberOfTickets) {\r\n const userOptions = utils.getData($numberOfTickets, 'options');\r\n const chart = window.echarts.init($numberOfTickets);\r\n const numberOfTicketsLegend = document.querySelectorAll('[data-number-of-tickets]');\r\n\r\n const xAxisData = ['Mar 01', 'Mar 02', 'Mar 03', 'Mar 04', 'Mar 05', 'Mar 06'];\r\n const data1 = [45, 35, 55, 55, 55, 45];\r\n const data2 = [58, 42, 65, 65, 65, 30];\r\n const data3 = [38, 25, 42, 42, 42, 45];\r\n const data4 = [62, 45, 75, 75, 75, 55];\r\n\r\n const emphasisStyle = {\r\n itemStyle: {\r\n shadowColor: utils.rgbaColor(utils.getColor('dark'), 0.3),\r\n borderRadius: [5, 5, 5, 5]\r\n }\r\n };\r\n\r\n const getDefaultOptions = () => ({\r\n color: [\r\n utils.getColor('primary'),\r\n utils.isDark() === 'dark' ? '#1E4C88' : '#94BCF1',\r\n utils.isDark() === 'dark' ? '#1A3A64' : '#C0D8F7',\r\n utils.isDark() === 'dark' ? '#225FAE' : '#6AA3ED'\r\n ],\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['900'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n axisPointer: {\r\n type: 'none'\r\n }\r\n },\r\n legend: {\r\n data: ['On Hold Tickets', 'Open Tickets', 'Due Tickets', 'Unassigned Tickets'],\r\n show: false\r\n },\r\n xAxis: {\r\n data: xAxisData,\r\n splitLine: { show: false },\r\n splitArea: { show: false },\r\n\r\n axisLabel: {\r\n color: utils.getGrays()['600']\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisTick: {\r\n show: false\r\n }\r\n },\r\n yAxis: {\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisLabel: {\r\n color: utils.getGrays()['600']\r\n }\r\n },\r\n series: [\r\n {\r\n name: 'On Hold Tickets',\r\n type: 'bar',\r\n stack: 'one',\r\n emphasis: emphasisStyle,\r\n data: data1\r\n },\r\n {\r\n name: 'Open Tickets',\r\n type: 'bar',\r\n stack: 'two',\r\n emphasis: emphasisStyle,\r\n data: data2\r\n },\r\n {\r\n name: 'Due Tickets',\r\n type: 'bar',\r\n stack: 'three',\r\n emphasis: emphasisStyle,\r\n data: data3\r\n },\r\n {\r\n name: 'Unassigned Tickets',\r\n type: 'bar',\r\n stack: 'four',\r\n emphasis: emphasisStyle,\r\n data: data4\r\n }\r\n ],\r\n itemStyle: {\r\n borderRadius: [3, 3, 0, 0]\r\n },\r\n\r\n barWidth: '12px',\r\n grid: {\r\n top: '10%',\r\n bottom: 0,\r\n left: 0,\r\n right: 0,\r\n containLabel: true\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n\r\n numberOfTicketsLegend.forEach(el => {\r\n el.addEventListener('change', () => {\r\n chart.dispatchAction({\r\n type: 'legendToggleSelect',\r\n name: utils.getData(el, 'number-of-tickets')\r\n });\r\n });\r\n });\r\n }\r\n};\r\n\r\nexport default echartsNumberOfTicketsInit;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Echarts Real Time Users */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst realTimeUsersChartInit = () => {\r\n const $echartsRealTimeUsers = document.querySelector('.echart-real-time-users');\r\n\r\n if ($echartsRealTimeUsers) {\r\n const userOptions = utils.getData($echartsRealTimeUsers, 'options');\r\n const chart = window.echarts.init($echartsRealTimeUsers);\r\n\r\n const data = [\r\n 921, 950, 916, 913, 909, 962, 926, 936, 977, 976, 999, 981, 998, 1000, 900, 906, 973, 911,\r\n 994, 982, 917, 972, 952, 963, 991\r\n ];\r\n const axisData = [\r\n 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25\r\n ];\r\n\r\n const tooltipFormatter = params => `\r\n
    \r\n
    \r\n Users : ${params[0].value}\r\n
    \r\n
    \r\n `;\r\n\r\n const getDefaultOptions = () => ({\r\n tooltip: {\r\n trigger: 'axis',\r\n padding: [7, 10],\r\n axisPointer: {\r\n type: 'none'\r\n },\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n },\r\n formatter: tooltipFormatter\r\n },\r\n xAxis: {\r\n type: 'category',\r\n\r\n axisLabel: {\r\n show: false\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n axisLine: {\r\n show: false\r\n },\r\n boundaryGap: [0.2, 0.2],\r\n data: axisData\r\n },\r\n yAxis: {\r\n type: 'value',\r\n scale: true,\r\n boundaryGap: false,\r\n axisLabel: {\r\n show: false\r\n },\r\n splitLine: {\r\n show: false\r\n },\r\n min: 500,\r\n max: 1100\r\n },\r\n series: [\r\n {\r\n type: 'bar',\r\n barCategoryGap: '12%',\r\n data,\r\n itemStyle: {\r\n color: utils.rgbaColor('#fff', 0.3)\r\n }\r\n }\r\n ],\r\n grid: {\r\n right: '0px',\r\n left: '0px',\r\n bottom: 0,\r\n top: 0\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n\r\n const userCounterDom = document.querySelector('.real-time-user');\r\n\r\n setInterval(() => {\r\n const rndData = utils.getRandomNumber(900, 1000);\r\n data.shift();\r\n data.push(rndData);\r\n axisData.shift();\r\n axisData.push(utils.getRandomNumber(100, 500));\r\n userCounterDom.innerHTML = rndData;\r\n\r\n chart.setOption({\r\n xAxis: {\r\n data: axisData\r\n },\r\n series: [\r\n {\r\n data\r\n }\r\n ]\r\n });\r\n }, 2000);\r\n }\r\n};\r\n\r\nexport default realTimeUsersChartInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\nconst echartsReceivedTicketsInit = () => {\r\n const $receivedTickets = document.querySelector('.echart-received-tickets');\r\n\r\n if ($receivedTickets) {\r\n const userOptions = utils.getData($receivedTickets, 'options');\r\n const chart = window.echarts.init($receivedTickets);\r\n\r\n const xAxisData = [\r\n 'Apr 01',\r\n 'Apr 02',\r\n 'Apr 03',\r\n 'Apr 04',\r\n 'Apr 05',\r\n 'Apr 06',\r\n 'Apr 07',\r\n 'Apr 08',\r\n 'Apr 09',\r\n 'Apr 10'\r\n ];\r\n const data1 = [28, 35, 28, 25, 21, 32, 25, 30, 23, 37];\r\n const data2 = [20, 27, 21, 15, 17, 22, 18, 20, 15, 27];\r\n const data3 = [15, 21, 23, 21, 12, 14, 13, 15, 10, 19];\r\n\r\n const emphasisStyle = {\r\n itemStyle: {\r\n shadowColor: utils.rgbaColor(utils.getColor('dark'), 0.3)\r\n }\r\n };\r\n\r\n const getDefaultOptions = () => ({\r\n color: [utils.getColor('primary'), utils.getColor('info'), utils.getGrays()['300']],\r\n legend: {\r\n data: ['All Received Tickets', 'New Received Tickets', 'Total Received Load Tickets'],\r\n icon: 'circle',\r\n itemWidth: 10,\r\n itemHeight: 10,\r\n padding: [0, 0, 0, 0],\r\n textStyle: {\r\n color: utils.getGrays()['700'],\r\n fontWeight: '500',\r\n fontSize: '13px'\r\n },\r\n left: 0,\r\n itemGap: 16\r\n },\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['900'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n axisPointer: {\r\n type: 'none'\r\n }\r\n },\r\n xAxis: {\r\n data: xAxisData,\r\n splitLine: { show: false },\r\n splitArea: { show: false },\r\n\r\n axisLabel: {\r\n color: utils.getGrays()['600']\r\n },\r\n\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisTick: {\r\n show: false\r\n }\r\n },\r\n yAxis: {\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisLabel: {\r\n color: utils.getGrays()['600']\r\n }\r\n },\r\n series: [\r\n {\r\n name: 'All Received Tickets',\r\n type: 'bar',\r\n stack: 'one',\r\n emphasis: emphasisStyle,\r\n data: data1\r\n },\r\n {\r\n name: 'New Received Tickets',\r\n type: 'bar',\r\n stack: 'two',\r\n emphasis: emphasisStyle,\r\n data: data2\r\n },\r\n {\r\n name: 'Total Received Load Tickets',\r\n type: 'bar',\r\n stack: 'three',\r\n emphasis: emphasisStyle,\r\n data: data3\r\n }\r\n ],\r\n itemStyle: {\r\n borderRadius: [3, 3, 0, 0]\r\n },\r\n\r\n barWidth: '13.03px',\r\n grid: {\r\n top: '13%',\r\n bottom: 0,\r\n left: 0,\r\n right: 0,\r\n containLabel: true\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default echartsReceivedTicketsInit;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Echart Bar Report For This Week */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst reportForThisWeekInit = () => {\r\n const ECHART_BAR_REPORT_FOR_THIS_WEEK = '.echart-bar-report-for-this-week';\r\n const $echartBarReportForThisWeek = document.querySelector(ECHART_BAR_REPORT_FOR_THIS_WEEK);\r\n\r\n if ($echartBarReportForThisWeek) {\r\n const selectChart = utils.getData($echartBarReportForThisWeek, 'chart');\r\n const legendThisWeek = document.getElementById(selectChart?.option1);\r\n const legendLastWeek = document.getElementById(selectChart?.option2);\r\n\r\n const data = [\r\n ['product', 'This Week', 'Last Week'],\r\n ['Sun', 43, 85],\r\n ['Mon', 83, 73],\r\n ['Tue', 86, 62],\r\n ['Wed', 72, 53],\r\n ['Thu', 80, 50],\r\n ['Fri', 50, 70],\r\n ['Sat', 80, 90]\r\n ];\r\n const userOptions = utils.getData($echartBarReportForThisWeek, 'options');\r\n const chart = window.echarts.init($echartBarReportForThisWeek);\r\n\r\n const getDefaultOptions = () => ({\r\n color: [utils.getColors().primary, utils.getGrays()['300']],\r\n dataset: { source: data },\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n },\r\n formatter(params) {\r\n return `
    ${params.seriesName}
    ${\r\n params.name\r\n }: ${params.value[params.componentIndex + 1]}
    `;\r\n }\r\n },\r\n legend: {\r\n show: false\r\n },\r\n xAxis: {\r\n type: 'category',\r\n axisLabel: { color: utils.getGrays()['400'] },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisTick: false,\r\n boundaryGap: true\r\n },\r\n yAxis: {\r\n axisPointer: { type: 'none' },\r\n axisTick: 'none',\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisLine: { show: false },\r\n\r\n axisLabel: {\r\n color: utils.getGrays()['400'],\r\n formatter: value => `${value} hr`\r\n }\r\n },\r\n series: [\r\n {\r\n type: 'bar',\r\n name: '',\r\n barWidth: '12%',\r\n barGap: '30%',\r\n label: { normal: { show: false } },\r\n z: 10,\r\n itemStyle: {\r\n normal: {\r\n barBorderRadius: [10, 10, 0, 0],\r\n color: utils.getColors().primary\r\n }\r\n }\r\n },\r\n {\r\n type: 'bar',\r\n barWidth: '12%',\r\n barGap: '30%',\r\n label: { normal: { show: false } },\r\n itemStyle: {\r\n normal: {\r\n barBorderRadius: [4, 4, 0, 0],\r\n color: utils.getGrays()[300]\r\n }\r\n }\r\n }\r\n ],\r\n grid: {\r\n right: '0',\r\n left: '40px',\r\n bottom: '10%',\r\n top: '15%'\r\n }\r\n });\r\n\r\n legendLastWeek &&\r\n legendLastWeek.addEventListener('click', () => {\r\n legendLastWeek.classList.toggle('opacity-50');\r\n chart.dispatchAction({\r\n type: 'legendToggleSelect',\r\n name: 'Last Week'\r\n });\r\n });\r\n\r\n legendThisWeek &&\r\n legendThisWeek.addEventListener('click', () => {\r\n legendThisWeek.classList.toggle('opacity-50');\r\n chart.dispatchAction({\r\n type: 'legendToggleSelect',\r\n name: 'This Week'\r\n });\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default reportForThisWeekInit;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption, tooltipFormatter } from './echarts-utils';\r\n/* -------------------------------------------------------------------------- */\r\n/* Echarts Line Returing Customer Rate */\r\n/* -------------------------------------------------------------------------- */\r\nconst returningCustomerRateInit = () => {\r\n const ECHART_LINE_RETURNING_CUSTOMER_RATE = '.echart-line-returning-customer-rate';\r\n const $echartsLineReturningCustomerRate = document.querySelector(\r\n ECHART_LINE_RETURNING_CUSTOMER_RATE\r\n );\r\n const months = [\r\n 'Jan',\r\n 'Feb',\r\n 'Mar',\r\n 'Apr',\r\n 'May',\r\n 'Jun',\r\n 'Jul',\r\n 'Aug',\r\n 'Sep',\r\n 'Oct',\r\n 'Nov',\r\n 'Dec'\r\n ];\r\n\r\n if ($echartsLineReturningCustomerRate) {\r\n // Get options from data attribute\r\n const userOptions = utils.getData($echartsLineReturningCustomerRate, 'options');\r\n const LEGEND_MONTH_TARGET = userOptions.target;\r\n const SELECT_MONTH = `#${userOptions.monthSelect}`;\r\n const LEGEND_NEW_MONTH = `#${userOptions.optionOne}`;\r\n const LEGEND_RETURNING_MONTH = `#${userOptions.optionTwo}`;\r\n const $legendNewMonth = document\r\n .getElementById(LEGEND_MONTH_TARGET)\r\n .querySelector(LEGEND_NEW_MONTH);\r\n const $legendReturningMonth = document\r\n .getElementById(LEGEND_MONTH_TARGET)\r\n .querySelector(LEGEND_RETURNING_MONTH);\r\n const chart = window.echarts.init($echartsLineReturningCustomerRate);\r\n\r\n const monthNumbers = [\r\n [20, 40, 20, 80, 50, 80, 120, 80, 50, 120, 110, 110],\r\n [60, 80, 60, 80, 65, 130, 120, 100, 30, 40, 30, 70],\r\n [100, 70, 80, 50, 120, 100, 130, 140, 90, 100, 40, 50],\r\n [80, 50, 60, 40, 60, 120, 100, 130, 60, 80, 50, 60],\r\n [70, 80, 100, 70, 90, 60, 80, 130, 40, 60, 50, 80],\r\n [90, 40, 80, 80, 100, 140, 100, 130, 90, 60, 70, 50],\r\n [80, 60, 80, 60, 40, 100, 120, 100, 30, 40, 30, 70],\r\n [20, 40, 20, 50, 70, 60, 110, 80, 90, 30, 50, 50],\r\n [60, 70, 30, 40, 80, 140, 80, 140, 120, 130, 100, 110],\r\n [90, 90, 40, 60, 40, 110, 90, 110, 60, 80, 60, 70],\r\n [50, 80, 50, 80, 50, 80, 120, 80, 50, 120, 110, 110],\r\n [60, 90, 60, 70, 40, 70, 100, 140, 30, 40, 30, 70],\r\n [20, 40, 20, 50, 30, 80, 120, 100, 30, 40, 30, 70]\r\n ];\r\n const dates = month =>\r\n utils.getDates(\r\n window.dayjs().month(month).date(1),\r\n window\r\n .dayjs()\r\n .month(Number(month) + 1)\r\n .date(0),\r\n 1000 * 60 * 60 * 24 * 3\r\n );\r\n const getDefaultOptions = () => ({\r\n title: {\r\n text: 'Customers',\r\n textStyle: {\r\n fontWeight: 500,\r\n fontSize: 13,\r\n fontFamily: 'poppins',\r\n color: utils.getColor('gray-900')\r\n }\r\n },\r\n legend: {\r\n show: false,\r\n data: ['New', 'Returning']\r\n },\r\n tooltip: {\r\n trigger: 'axis',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n },\r\n formatter: tooltipFormatter\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: dates(0),\r\n boundaryGap: false,\r\n axisPointer: {\r\n lineStyle: {\r\n color: utils.getColor('gray-300'),\r\n type: 'dashed'\r\n }\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getColor('gray-300'),\r\n type: 'solid'\r\n }\r\n },\r\n axisTick: { show: false },\r\n axisLabel: {\r\n color: utils.getColor('gray-400'),\r\n formatter(value) {\r\n const date = new Date(value);\r\n if (date.getDate() === 1) {\r\n return `${months[date.getMonth()].substring(0, 3)} ${date.getDate()}`;\r\n }\r\n return `${date.getDate()}`;\r\n },\r\n margin: 15\r\n },\r\n splitLine: {\r\n show: true,\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n }\r\n },\r\n yAxis: {\r\n type: 'value',\r\n axisPointer: { show: false },\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300']\r\n }\r\n },\r\n boundaryGap: false,\r\n axisLabel: {\r\n show: true,\r\n color: utils.getGrays()['400'],\r\n margin: 15\r\n },\r\n axisTick: { show: false },\r\n axisLine: { show: false }\r\n },\r\n series: [\r\n {\r\n name: 'New',\r\n type: 'line',\r\n data: monthNumbers[1],\r\n lineStyle: { color: utils.getColors().primary },\r\n itemStyle: {\r\n borderColor: utils.getColors().primary,\r\n borderWidth: 2\r\n },\r\n areaStyle: {\r\n color: {\r\n type: 'linear',\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: utils.rgbaColor(utils.getColor('primary'), 0.2)\r\n },\r\n {\r\n offset: 1,\r\n color: utils.rgbaColor(utils.getColor('primary'), 0.01)\r\n }\r\n ]\r\n }\r\n },\r\n symbol: 'none',\r\n smooth: false,\r\n hoverAnimation: true\r\n },\r\n {\r\n name: 'Returning',\r\n type: 'line',\r\n data: monthNumbers[0],\r\n lineStyle: { color: utils.getColor('warning') },\r\n itemStyle: {\r\n borderColor: utils.getColor('warning'),\r\n borderWidth: 2\r\n },\r\n areaStyle: {\r\n color: {\r\n type: 'linear',\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: utils.rgbaColor(utils.getColor('warning'), 0.2)\r\n },\r\n {\r\n offset: 1,\r\n color: utils.rgbaColor(utils.getColor('warning'), 0.01)\r\n }\r\n ]\r\n }\r\n },\r\n symbol: 'none',\r\n smooth: false,\r\n hoverAnimation: true\r\n }\r\n ],\r\n grid: { right: '7px', left: '35px', bottom: '8%', top: '15%' }\r\n });\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n\r\n // Change chart options accordiong to the selected month\r\n const monthSelect = document.querySelector(SELECT_MONTH);\r\n\r\n monthSelect.addEventListener('change', e => {\r\n const month = e.currentTarget.value;\r\n const dataNewMonth = monthNumbers[Number(month) + 1];\r\n const dataReturningMonth = monthNumbers[month];\r\n chart.setOption({\r\n xAxis: {\r\n data: dates(month)\r\n },\r\n series: [\r\n {\r\n data: dataNewMonth\r\n },\r\n {\r\n data: dataReturningMonth\r\n }\r\n ]\r\n });\r\n });\r\n $legendNewMonth.addEventListener('click', () => {\r\n $legendNewMonth.classList.toggle('opacity-50');\r\n chart.dispatchAction({\r\n type: 'legendToggleSelect',\r\n name: 'New'\r\n });\r\n });\r\n $legendReturningMonth.addEventListener('click', () => {\r\n $legendReturningMonth.classList.toggle('opacity-50');\r\n chart.dispatchAction({\r\n type: 'legendToggleSelect',\r\n name: 'Returning'\r\n });\r\n });\r\n }\r\n};\r\nexport default returningCustomerRateInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Echarts Sales Pos Location */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst salesByPosLocationInit = () => {\r\n const ECHART_RADAR_SALES_BY_POS_LOCATION = '.echart-radar-sales-by-pos-location';\r\n\r\n const $echartsRadarSalesByPosLocation = document.querySelector(\r\n ECHART_RADAR_SALES_BY_POS_LOCATION\r\n );\r\n function getformatter(params) {\r\n //const indicators = ['Marketing','Sales', 'Dev', 'Support', 'Tech', 'Admin']\r\n return ` ${params.name} \r\n
    \r\n Marketing: ${params.value[0]}
    \r\n Sales: ${params.value[1]}
    \r\n Dev: ${params.value[2]}
    \r\n Support: ${params.value[3]}
    \r\n Tech: ${params.value[4]}
    \r\n Admin: ${params.value[5]}
    \r\n
    `;\r\n }\r\n\r\n if ($echartsRadarSalesByPosLocation) {\r\n // Get options from data attribute\r\n const userOptions = utils.getData($echartsRadarSalesByPosLocation, 'options');\r\n const chart = window.echarts.init($echartsRadarSalesByPosLocation);\r\n const getDefaultOptions = () => ({\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getColor('gray-100'),\r\n borderColor: utils.getColor('gray-300'),\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter: getformatter\r\n },\r\n radar: {\r\n splitNumber: 7,\r\n radius: '75%',\r\n axisLine: {\r\n show: true,\r\n symbol: 'circle',\r\n symbolSize: [13, 13],\r\n lineStyle: {\r\n color: {\r\n type: 'radial',\r\n x: 0.5,\r\n y: 0.5,\r\n r: 0.5,\r\n colorStops: [\r\n {\r\n offset: 0.7,\r\n color: utils.getColor('gray-100')\r\n },\r\n {\r\n offset: 1,\r\n color: utils.getColor('gray-400')\r\n }\r\n ]\r\n }\r\n }\r\n },\r\n splitArea: {\r\n show: false\r\n },\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getColor('gray-300')\r\n }\r\n },\r\n name: {\r\n textStyle: {\r\n color: utils.getColor('gray-600'),\r\n fontWeight: 500\r\n }\r\n },\r\n indicator: [\r\n { name: 'Marketing', max: 70 },\r\n { name: 'Admin', max: 70 },\r\n { name: 'Tech', max: 70 },\r\n { name: 'Support', max: 70 },\r\n { name: 'Dev', max: 70 },\r\n { name: 'Sales', max: 70 }\r\n ]\r\n },\r\n series: [\r\n {\r\n name: 'Budget vs spending',\r\n type: 'radar',\r\n symbol: 'pin',\r\n data: [\r\n {\r\n value: [20, 50, 60, 50, 60, 60],\r\n name: 'Budget',\r\n itemStyle: {\r\n color: utils.rgbaColor(utils.getColors().warning, 0.5)\r\n },\r\n areaStyle: {\r\n color: utils.rgbaColor(utils.getColors().warning, 0.24)\r\n },\r\n symbol: 'circle',\r\n symbolSize: 8\r\n },\r\n {\r\n value: [40, 60, 30, 15, 60, 35],\r\n name: 'Spending',\r\n areaStyle: {\r\n color: utils.rgbaColor(utils.getColors().primary, 0.24)\r\n },\r\n symbol: 'circle',\r\n symbolSize: 8,\r\n itemStyle: {\r\n color: utils.rgbaColor(utils.getColors().primary)\r\n }\r\n }\r\n ]\r\n }\r\n ],\r\n grid: {\r\n top: 0,\r\n bottom: '100px'\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default salesByPosLocationInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\nconst echartsSatisfactionSurveyInit = () => {\r\n const $satisfactionSurvey = document.querySelector('.echart-satisfaction-survey');\r\n\r\n if ($satisfactionSurvey) {\r\n const userOptions = utils.getData($satisfactionSurvey, 'options');\r\n const chart = window.echarts.init($satisfactionSurvey);\r\n\r\n const xAxisData = [\r\n '05 April',\r\n '06 April',\r\n '07 April',\r\n '08 April',\r\n '09 April',\r\n '10 April',\r\n '11 April',\r\n '12 April',\r\n '13 April',\r\n '14 April',\r\n '15 April'\r\n ];\r\n const data1 = [98, 105, 65, 110, 75, 55, 95, 75, 90, 45, 70];\r\n const data2 = [80, 60, 78, 58, 65, 65, 75, 110, 40, 60, 60];\r\n\r\n const emphasisStyle1 = {\r\n itemStyle: {\r\n shadowColor: utils.rgbaColor(utils.getColor('dark'), 0.3),\r\n color: utils.rgbaColor(utils.getColor('primary'), 0.8)\r\n }\r\n };\r\n const emphasisStyle2 = {\r\n itemStyle: {\r\n shadowColor: utils.rgbaColor(utils.getColor('dark'), 0.3),\r\n color: utils.getGrays()['300']\r\n }\r\n };\r\n\r\n const getDefaultOptions = () => ({\r\n color: [utils.getColor('primary'), utils.getGrays()['200']],\r\n legend: {\r\n data: ['Satisfied', 'Dissatisfied'],\r\n icon: 'circle',\r\n itemWidth: 10,\r\n itemHeight: 10,\r\n padding: [0, 0, 0, 0],\r\n textStyle: {\r\n color: utils.getGrays()['700'],\r\n fontWeight: '500',\r\n fontSize: '13px'\r\n },\r\n left: 0,\r\n itemGap: 16\r\n },\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['900'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n axisPointer: {\r\n type: 'none'\r\n }\r\n },\r\n xAxis: {\r\n data: xAxisData,\r\n splitLine: { show: false },\r\n splitArea: { show: false },\r\n\r\n axisLabel: {\r\n color: utils.getGrays()['600']\r\n },\r\n\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300']\r\n }\r\n },\r\n axisTick: {\r\n show: false\r\n }\r\n },\r\n yAxis: {\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisLabel: {\r\n color: utils.getGrays()['600']\r\n }\r\n },\r\n series: [\r\n {\r\n name: 'Satisfied',\r\n type: 'bar',\r\n stack: 'one',\r\n emphasis: emphasisStyle1,\r\n data: data1\r\n },\r\n {\r\n name: 'Dissatisfied',\r\n type: 'bar',\r\n stack: 'two',\r\n emphasis: emphasisStyle2,\r\n data: data2\r\n }\r\n ],\r\n itemStyle: {\r\n borderRadius: [3, 3, 0, 0]\r\n },\r\n\r\n barWidth: '13.03px',\r\n grid: {\r\n top: '13%',\r\n bottom: 0,\r\n left: 0,\r\n right: 0,\r\n containLabel: true\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default echartsSatisfactionSurveyInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption, getPosition } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Session By Device */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst sessionByBrowserChartInit = () => {\r\n const $sessionByBroswser = document.querySelector('.echart-session-by-browser');\r\n\r\n if ($sessionByBroswser) {\r\n const userOptions = utils.getData($sessionByBroswser, 'options');\r\n const chart = window.echarts.init($sessionByBroswser);\r\n\r\n const dataset = {\r\n week: [\r\n { value: 50.3, name: 'Chrome' },\r\n { value: 20.6, name: 'Safari' },\r\n { value: 30.1, name: 'Mozilla' }\r\n ],\r\n month: [\r\n { value: 35.1, name: 'Chrome' },\r\n { value: 25.6, name: 'Safari' },\r\n { value: 40.3, name: 'Mozilla' }\r\n ],\r\n year: [\r\n { value: 26.1, name: 'Chrome' },\r\n { value: 10.6, name: 'Safari' },\r\n { value: 64.3, name: 'Mozilla' }\r\n ]\r\n };\r\n\r\n const getDefaultOptions = () => ({\r\n color: [utils.getColors().primary, utils.getColors().success, utils.getColors().info],\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter: params => `${params.data.name}: ${params.data.value}%`,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n }\r\n },\r\n\r\n legend: { show: false },\r\n series: [\r\n {\r\n type: 'pie',\r\n radius: ['100%', '65%'],\r\n avoidLabelOverlap: false,\r\n hoverAnimation: false,\r\n itemStyle: {\r\n borderWidth: 2,\r\n borderColor: utils.getColor('gray-100')\r\n },\r\n label: {\r\n normal: {\r\n show: false\r\n },\r\n emphasis: {\r\n show: false\r\n }\r\n },\r\n labelLine: { normal: { show: false } },\r\n data: dataset.week\r\n }\r\n ]\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n\r\n const selectMenu = document.querySelector(\"[data-target='.echart-session-by-browser']\");\r\n\r\n if (selectMenu) {\r\n selectMenu.addEventListener('change', e => {\r\n const { value } = e.currentTarget;\r\n chart.setOption({\r\n series: [{ data: dataset[value] }]\r\n });\r\n });\r\n }\r\n }\r\n};\r\n\r\nexport default sessionByBrowserChartInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Session By Country Map */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst sessionByCountryMapInit = () => {\r\n const $sessionByCountryMap = document.querySelector('.echart-session-by-country-map');\r\n\r\n const data = [\r\n { name: 'Afghanistan', value: 28397.812 },\r\n { name: 'Angola', value: 19549.124 },\r\n { name: 'Albania', value: 3150.143 },\r\n { name: 'United Arab Emirates', value: 8441.537 },\r\n { name: 'Argentina', value: 40374.224 },\r\n { name: 'Armenia', value: 2963.496 },\r\n { name: 'French Southern and Antarctic Lands', value: 268.065 },\r\n { name: 'Australia', value: 22404.488 },\r\n { name: 'Austria', value: 8401.924 },\r\n { name: 'Azerbaijan', value: 9094.718 },\r\n { name: 'Burundi', value: 9232.753 },\r\n { name: 'Belgium', value: 10941.288 },\r\n { name: 'Benin', value: 9509.798 },\r\n { name: 'Burkina Faso', value: 15540.284 },\r\n { name: 'Bangladesh', value: 151125.475 },\r\n { name: 'Bulgaria', value: 7389.175 },\r\n { name: 'The Bahamas', value: 66402.316 },\r\n { name: 'Bosnia and Herzegovina', value: 3845.929 },\r\n { name: 'Belarus', value: 9491.07 },\r\n { name: 'Belize', value: 308.595 },\r\n { name: 'Bermuda', value: 64.951 },\r\n { name: 'Bolivia', value: 716.939 },\r\n { name: 'Brazil', value: 195210.154 },\r\n { name: 'Brunei', value: 27.223 },\r\n { name: 'Bhutan', value: 716.939 },\r\n { name: 'Botswana', value: 1969.341 },\r\n { name: 'Central African Rep.', value: 4349.921 },\r\n { name: 'Canada', value: 34126.24 },\r\n { name: 'Switzerland', value: 7830.534 },\r\n { name: 'Chile', value: 17150.76 },\r\n { name: 'China', value: 1359821.465 },\r\n { name: \"Côte d'Ivoire\", value: 60508.978 },\r\n { name: 'Cameroon', value: 20624.343 },\r\n { name: 'Dem. Rep. Congo', value: 62191.161 },\r\n { name: 'Congo', value: 3573.024 },\r\n { name: 'Colombia', value: 46444.798 },\r\n { name: 'Costa Rica', value: 4669.685 },\r\n { name: 'Cuba', value: 11281.768 },\r\n { name: 'Northern Cyprus', value: 1.468 },\r\n { name: 'Cyprus', value: 1103.685 },\r\n { name: 'Czech Republic', value: 10553.701 },\r\n { name: 'Germany', value: 83017.404 },\r\n { name: 'Djibouti', value: 834.036 },\r\n { name: 'Denmark', value: 5550.959 },\r\n { name: 'Dominican Republic', value: 10016.797 },\r\n { name: 'Algeria', value: 37062.82 },\r\n { name: 'Ecuador', value: 15001.072 },\r\n { name: 'Egypt', value: 78075.705 },\r\n { name: 'Eritrea', value: 5741.159 },\r\n { name: 'Spain', value: 46182.038 },\r\n { name: 'Estonia', value: 1298.533 },\r\n { name: 'Ethiopia', value: 87095.281 },\r\n { name: 'Finland', value: 5367.693 },\r\n { name: 'Fiji', value: 860.559 },\r\n { name: 'Falkland Islands', value: 49.581 },\r\n { name: 'France', value: 63230.866 },\r\n { name: 'Gabon', value: 1556.222 },\r\n { name: 'United Kingdom', value: 62066.35 },\r\n { name: 'Georgia', value: 4388.674 },\r\n { name: 'Ghana', value: 24262.901 },\r\n { name: 'Eq. Guinea', value: 10876.033 },\r\n { name: 'Guinea', value: 10876.033 },\r\n { name: 'Gambia', value: 1680.64 },\r\n { name: 'Guinea Bissau', value: 10876.033 },\r\n { name: 'Equatorial Guinea', value: 696.167 },\r\n { name: 'Greece', value: 11109.999 },\r\n { name: 'Greenland', value: 56.546 },\r\n { name: 'Guatemala', value: 14341.576 },\r\n { name: 'French Guiana', value: 231.169 },\r\n { name: 'Guyana', value: 786.126 },\r\n { name: 'Honduras', value: 7621.204 },\r\n { name: 'Croatia', value: 4338.027 },\r\n { name: 'Haiti', value: 9896.4 },\r\n { name: 'Hungary', value: 10014.633 },\r\n { name: 'Indonesia', value: 240676.485 },\r\n { name: 'India', value: 1205624.648 },\r\n { name: 'Ireland', value: 4467.561 },\r\n { name: 'Iran', value: 240676.485 },\r\n { name: 'Iraq', value: 30962.38 },\r\n { name: 'Iceland', value: 318.042 },\r\n { name: 'Israel', value: 7420.368 },\r\n { name: 'Italy', value: 60508.978 },\r\n { name: 'Jamaica', value: 2741.485 },\r\n { name: 'Jordan', value: 6454.554 },\r\n { name: 'Japan', value: 127352.833 },\r\n { name: 'Kazakhstan', value: 15921.127 },\r\n { name: 'Kenya', value: 40909.194 },\r\n { name: 'Kyrgyzstan', value: 5334.223 },\r\n { name: 'Cambodia', value: 14364.931 },\r\n { name: 'South Korea', value: 51452.352 },\r\n { name: 'Kosovo', value: 97.743 },\r\n { name: 'Kuwait', value: 2991.58 },\r\n { name: 'Laos', value: 6395.713 },\r\n { name: 'Lebanon', value: 4341.092 },\r\n { name: 'Liberia', value: 3957.99 },\r\n { name: 'Libya', value: 6040.612 },\r\n { name: 'Sri Lanka', value: 20758.779 },\r\n { name: 'Lesotho', value: 2008.921 },\r\n { name: 'Lithuania', value: 3068.457 },\r\n { name: 'Luxembourg', value: 507.885 },\r\n { name: 'Latvia', value: 2090.519 },\r\n { name: 'Morocco', value: 31642.36 },\r\n { name: 'Moldova', value: 103.619 },\r\n { name: 'Madagascar', value: 21079.532 },\r\n { name: 'Mexico', value: 117886.404 },\r\n { name: 'Macedonia', value: 507.885 },\r\n { name: 'Mali', value: 13985.961 },\r\n { name: 'Myanmar', value: 51931.231 },\r\n { name: 'Montenegro', value: 620.078 },\r\n { name: 'Mongolia', value: 2712.738 },\r\n { name: 'Mozambique', value: 23967.265 },\r\n { name: 'Mauritania', value: 3609.42 },\r\n { name: 'Malawi', value: 15013.694 },\r\n { name: 'Malaysia', value: 28275.835 },\r\n { name: 'Namibia', value: 2178.967 },\r\n { name: 'New Caledonia', value: 246.379 },\r\n { name: 'Niger', value: 15893.746 },\r\n { name: 'Nigeria', value: 159707.78 },\r\n { name: 'Nicaragua', value: 5822.209 },\r\n { name: 'Netherlands', value: 16615.243 },\r\n { name: 'Norway', value: 4891.251 },\r\n { name: 'Nepal', value: 26846.016 },\r\n { name: 'New Zealand', value: 4368.136 },\r\n { name: 'Oman', value: 2802.768 },\r\n { name: 'Pakistan', value: 173149.306 },\r\n { name: 'Panama', value: 3678.128 },\r\n { name: 'Peru', value: 29262.83 },\r\n { name: 'Philippines', value: 93444.322 },\r\n { name: 'Papua New Guinea', value: 6858.945 },\r\n { name: 'Poland', value: 38198.754 },\r\n { name: 'Puerto Rico', value: 3709.671 },\r\n { name: 'North Korea', value: 1.468 },\r\n { name: 'Portugal', value: 10589.792 },\r\n { name: 'Paraguay', value: 6459.721 },\r\n { name: 'Qatar', value: 1749.713 },\r\n { name: 'Romania', value: 21861.476 },\r\n { name: 'Russia', value: 21861.476 },\r\n { name: 'Rwanda', value: 10836.732 },\r\n { name: 'Western Sahara', value: 514.648 },\r\n { name: 'Saudi Arabia', value: 27258.387 },\r\n { name: 'Sudan', value: 35652.002 },\r\n { name: 'S. Sudan', value: 9940.929 },\r\n { name: 'Senegal', value: 12950.564 },\r\n { name: 'Solomon Islands', value: 526.447 },\r\n { name: 'Sierra Leone', value: 5751.976 },\r\n { name: 'El Salvador', value: 6218.195 },\r\n { name: 'Somaliland', value: 9636.173 },\r\n { name: 'Somalia', value: 9636.173 },\r\n { name: 'Republic of Serbia', value: 3573.024 },\r\n { name: 'Suriname', value: 524.96 },\r\n { name: 'Slovakia', value: 5433.437 },\r\n { name: 'Slovenia', value: 2054.232 },\r\n { name: 'Sweden', value: 9382.297 },\r\n { name: 'Swaziland', value: 1193.148 },\r\n { name: 'Syria', value: 7830.534 },\r\n { name: 'Chad', value: 11720.781 },\r\n { name: 'Togo', value: 6306.014 },\r\n { name: 'Thailand', value: 66402.316 },\r\n { name: 'Tajikistan', value: 7627.326 },\r\n { name: 'Turkmenistan', value: 5041.995 },\r\n { name: 'East Timor', value: 10016.797 },\r\n { name: 'Trinidad and Tobago', value: 1328.095 },\r\n { name: 'Tunisia', value: 10631.83 },\r\n { name: 'Turkey', value: 72137.546 },\r\n { name: 'Tanzania', value: 44973.33 },\r\n { name: 'Uganda', value: 33987.213 },\r\n { name: 'Ukraine', value: 46050.22 },\r\n { name: 'Uruguay', value: 3371.982 },\r\n { name: 'United States', value: 312247.116 },\r\n { name: 'Uzbekistan', value: 27769.27 },\r\n { name: 'Venezuela', value: 236.299 },\r\n { name: 'Vietnam', value: 89047.397 },\r\n { name: 'Vanuatu', value: 236.299 },\r\n { name: 'West Bank', value: 13.565 },\r\n { name: 'Yemen', value: 22763.008 },\r\n { name: 'South Africa', value: 51452.352 },\r\n { name: 'Zambia', value: 13216.985 },\r\n { name: 'Zimbabwe', value: 13076.978 }\r\n ];\r\n\r\n const total = 6961500;\r\n\r\n if ($sessionByCountryMap) {\r\n const userOptions = utils.getData($sessionByCountryMap, 'options');\r\n const chart = window.echarts.init($sessionByCountryMap);\r\n\r\n const getDefaultOptions = () => ({\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter: params =>\r\n `${params.data?.name} : ${((params.data && params.data.value / total) * 100).toFixed(2)}%`\r\n },\r\n toolbox: {\r\n show: false,\r\n feature: {\r\n restore: {}\r\n }\r\n },\r\n visualMap: {\r\n show: false,\r\n min: 800,\r\n max: 50000,\r\n inRange: {\r\n color: [\r\n utils.getColors().primary,\r\n utils.rgbaColor(utils.getColors().primary, 0.8),\r\n utils.rgbaColor(utils.getColors().primary, 0.6),\r\n utils.rgbaColor(utils.getColors().primary, 0.4),\r\n utils.rgbaColor(utils.getColors().primary, 0.2)\r\n ].reverse()\r\n }\r\n },\r\n series: [\r\n {\r\n type: 'map',\r\n map: 'world',\r\n data,\r\n roam: true,\r\n scaleLimit: {\r\n min: 1,\r\n max: 5\r\n },\r\n left: 0,\r\n right: 0,\r\n label: {\r\n show: false\r\n },\r\n itemStyle: {\r\n borderColor: utils.getGrays()['300']\r\n },\r\n emphasis: {\r\n label: {\r\n show: false\r\n },\r\n itemStyle: {\r\n areaColor: utils.getColor('warning')\r\n }\r\n }\r\n }\r\n ]\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n\r\n document.querySelector('.session-by-country-map-reset')?.addEventListener('click', () => {\r\n chart.dispatchAction({\r\n type: 'restore'\r\n });\r\n });\r\n }\r\n};\r\n\r\nexport default sessionByCountryMapInit;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Session By Country */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst sessionByCountryChartInit = () => {\r\n const $sessionByCountry = document.querySelector('.echart-session-by-country');\r\n\r\n const data = [\r\n ['CHINA', 'INDIA', 'USA', 'IRAN', 'BRAZIL', 'PAKISTAN'],\r\n [19.53, 17.32, 4.49, 3.46, 2.8, 1.7]\r\n ];\r\n\r\n if ($sessionByCountry) {\r\n const userOptions = utils.getData($sessionByCountry, 'options');\r\n const chart = window.echarts.init($sessionByCountry);\r\n\r\n const getDefaultOptions = () => ({\r\n tooltip: {\r\n trigger: 'axis',\r\n padding: [7, 10],\r\n axisPointer: {\r\n type: 'none'\r\n },\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n }\r\n // formatter: tooltipFormatter\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: data[0],\r\n axisLabel: {\r\n color: utils.getGrays()['600'],\r\n formatter: value => value.substring(0, 3)\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['400']\r\n }\r\n },\r\n axisTick: {\r\n show: true,\r\n // length: 8,\r\n alignWithLabel: true,\r\n lineStyle: {\r\n color: utils.getGrays()['200']\r\n }\r\n }\r\n },\r\n yAxis: {\r\n type: 'value',\r\n // inverse: true,\r\n axisTick: {\r\n show: false\r\n },\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisLabel: {\r\n color: utils.getGrays()['600'],\r\n formatter: value => `${value}%`,\r\n fontWeight: 500,\r\n padding: [3, 0, 0, 0],\r\n margin: 12\r\n },\r\n axisLine: {\r\n show: false\r\n }\r\n },\r\n series: [\r\n {\r\n type: 'bar',\r\n data: data[1],\r\n itemStyle: {\r\n barBorderRadius: [3, 3, 0, 0],\r\n color: utils.getColors().primary\r\n },\r\n barWidth: 15\r\n }\r\n ],\r\n grid: { right: '12px', left: '40px', bottom: '10%', top: '16px' }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default sessionByCountryChartInit;\r\n","import basicEchartsInit from './basic-echarts';\r\n\r\nconst echartTicketPriority = () => {\r\n const $paginationBtnNext = document.querySelector('[data-list-pagination-chart=\"next\"]');\r\n const $paginationBtnPrev = document.querySelector('[data-list-pagination-chart=\"prev\"]');\r\n const $paginationContainer = document.querySelector('[data-list-pagination-chart]');\r\n if ($paginationBtnNext) {\r\n $paginationBtnNext.addEventListener('click', () => {\r\n basicEchartsInit();\r\n });\r\n }\r\n if ($paginationBtnPrev) {\r\n $paginationBtnPrev.addEventListener('click', () => {\r\n basicEchartsInit();\r\n });\r\n }\r\n if ($paginationContainer) {\r\n $paginationContainer.addEventListener('click', e => {\r\n if (e.target.tagName === 'BUTTON') {\r\n setTimeout(() => {\r\n basicEchartsInit();\r\n });\r\n }\r\n });\r\n }\r\n};\r\n\r\nexport default echartTicketPriority;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption, tooltipFormatter } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Traffic Channels */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst ticketVolumeChartInit = () => {\r\n const $ticketVolume = document.querySelector('.echart-ticket-volume');\r\n\r\n if ($ticketVolume) {\r\n const userOptions = utils.getData($ticketVolume, 'options');\r\n const chart = window.echarts.init($ticketVolume);\r\n const ticketVolumeLegend = document.querySelectorAll('[data-ticket-volume]');\r\n\r\n const getDefaultOptions = () => ({\r\n color: [\r\n utils.getColors().primary,\r\n utils.isDark() === 'dark' ? '#235FAD' : '#6AA2EC',\r\n utils.isDark() === 'dark' ? '#1C4477' : '#AACAF4',\r\n utils.isDark() === 'dark' ? '#152C48' : '#DFEBFB'\r\n ],\r\n legend: {\r\n data: ['On Hold Tickets', 'Open Tickets', 'Due Tickets', 'Unassigned Tickets'],\r\n show: false\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: utils.getPastDates(10),\r\n axisLine: {\r\n show: false\r\n },\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300']\r\n }\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n axisLabel: {\r\n color: utils.getGrays()['600'],\r\n formatter: value => window.dayjs(value).format('MMM DD')\r\n }\r\n },\r\n yAxis: {\r\n type: 'value',\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300']\r\n }\r\n },\r\n axisLine: {\r\n show: false\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n axisLabel: {\r\n show: true,\r\n color: utils.getGrays()['600']\r\n }\r\n },\r\n tooltip: {\r\n trigger: 'axis',\r\n padding: [7, 10],\r\n axisPointer: {\r\n type: 'none'\r\n },\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n },\r\n formatter: tooltipFormatter\r\n },\r\n\r\n series: [\r\n {\r\n name: 'On Hold Tickets',\r\n type: 'bar',\r\n stack: 'total',\r\n data: [8, 6, 5, 12, 9, 6, 9, 6, 4, 7],\r\n emphasis: {\r\n itemStyle: {\r\n color: utils.getColor('primary')\r\n }\r\n }\r\n },\r\n {\r\n name: 'Open Tickets',\r\n type: 'bar',\r\n stack: 'total',\r\n data: [15, 10, 7, 7, 5, 6, 15, 10, 7, 12],\r\n emphasis: {\r\n itemStyle: {\r\n color: utils.isDark() === 'dark' ? '#2567BD' : '#5595E9'\r\n }\r\n }\r\n },\r\n {\r\n name: 'Due Tickets',\r\n type: 'bar',\r\n stack: 'total',\r\n data: [5, 4, 4, 6, 6, 8, 7, 4, 3, 5],\r\n emphasis: {\r\n itemStyle: {\r\n color: utils.isDark() === 'dark' ? '#205396' : '#7FB0EF'\r\n }\r\n }\r\n },\r\n {\r\n name: 'Unassigned Tickets',\r\n type: 'bar',\r\n stack: 'total',\r\n data: [6, 3, 6, 4, 12, 7, 5, 3, 2, 4],\r\n itemStyle: {\r\n barBorderRadius: [2, 2, 0, 0]\r\n },\r\n emphasis: {\r\n itemStyle: {\r\n color: utils.isDark() === 'dark' ? '#1A3F6F' : '#AACAF4'\r\n }\r\n }\r\n }\r\n ],\r\n\r\n grid: {\r\n right: '0px',\r\n left: '23px',\r\n bottom: '6%',\r\n top: '10%'\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n\r\n ticketVolumeLegend.forEach(el => {\r\n el.addEventListener('change', () => {\r\n chart.dispatchAction({\r\n type: 'legendToggleSelect',\r\n name: utils.getData(el, 'ticket-volume')\r\n });\r\n });\r\n });\r\n }\r\n};\r\n\r\nexport default ticketVolumeChartInit;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Audience Chart */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst topCustomersChartInit = () => {\r\n const data = {\r\n hours: ['1H', '2H', '3H', '4H', '5H', '6H', '7H', '8H', '9H', '10H'],\r\n dataset: {\r\n monday: [[18, 50, 45, 80, 45, 60, 55, 82, 61, 50]],\r\n tuesday: [[50, 45, 32, 74, 45, 55, 85, 30, 25, 50]],\r\n wednesday: [[88, 70, 75, 54, 45, 44, 25, 65, 11, 20]],\r\n thursday: [[20, 30, 40, 50, 70, 80, 85, 40, 30, 20]],\r\n friday: [[18, 50, 45, 75, 45, 80, 85, 65, 61, 50]],\r\n saturday: [[25, 50, 45, 75, 80, 44, 55, 85, 61, 45]],\r\n sunday: [[11, 50, 45, 78, 45, 54, 80, 90, 50, 65]]\r\n }\r\n };\r\n\r\n const getDefaultOptions = data1 => () => ({\r\n color: utils.getGrays()['100'],\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n },\r\n axisPointer: {\r\n type: 'none'\r\n }\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: data.hours,\r\n axisLabel: {\r\n color: utils.getGrays()['600'],\r\n margin: 15\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n boundaryGap: false\r\n },\r\n yAxis: {\r\n type: 'value',\r\n axisPointer: { show: false },\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n boundaryGap: false,\r\n axisLabel: {\r\n show: true,\r\n color: utils.getGrays()['600'],\r\n margin: 25\r\n },\r\n axisTick: { show: false },\r\n axisLine: { show: false }\r\n },\r\n series: [\r\n {\r\n type: 'line',\r\n data: data1,\r\n symbol: 'circle',\r\n symbolSize: 10,\r\n itemStyle: {\r\n borderColor: utils.getColors().primary,\r\n borderWidth: 2\r\n },\r\n lineStyle: { color: utils.getColors().primary },\r\n areaStyle: {\r\n color: {\r\n type: 'linear',\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: utils.rgbaColor(utils.getColors().primary, 0.1)\r\n },\r\n {\r\n offset: 1,\r\n color: utils.rgbaColor(utils.getColors().primary, 0)\r\n }\r\n ]\r\n }\r\n }\r\n }\r\n ],\r\n grid: { right: '12px', left: '46px', bottom: '12%', top: '3%' }\r\n });\r\n\r\n const initChart = (el, options) => {\r\n const userOptions = utils.getData(el, 'options');\r\n const chart = window.echarts.init(el);\r\n echartSetOption(chart, userOptions, options);\r\n };\r\n\r\n const tab = document.querySelector('#top-customers-chart-tab');\r\n\r\n if (tab) {\r\n initChart(\r\n document.querySelector('.echart-top-customers'),\r\n getDefaultOptions(data.dataset.monday[0])\r\n );\r\n\r\n const triggerTabList = Array.from(tab.querySelectorAll('[data-bs-toggle=\"tab\"]'));\r\n triggerTabList.forEach(triggerEl => {\r\n triggerEl.addEventListener('shown.bs.tab', () => {\r\n const key = triggerEl.href.split('#').pop();\r\n const $echartTopCustomers = document\r\n .getElementById(key)\r\n .querySelector('.echart-top-customers');\r\n\r\n initChart($echartTopCustomers, getDefaultOptions(data.dataset[key][0]));\r\n });\r\n });\r\n }\r\n};\r\n\r\nexport default topCustomersChartInit;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Top Products */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst topProductsInit = () => {\r\n const ECHART_BAR_TOP_PRODUCTS = '.echart-bar-top-products';\r\n const $echartBarTopProducts = document.querySelector(ECHART_BAR_TOP_PRODUCTS);\r\n\r\n if ($echartBarTopProducts) {\r\n const data = [\r\n ['product', '2019', '2018'],\r\n ['Boots4', 43, 85],\r\n ['Reign Pro', 83, 73],\r\n ['Slick', 86, 62],\r\n ['Falcon', 72, 53],\r\n ['Sparrow', 80, 50],\r\n ['Hideway', 50, 70],\r\n ['Freya', 80, 90]\r\n ];\r\n const userOptions = utils.getData($echartBarTopProducts, 'options');\r\n const chart = window.echarts.init($echartBarTopProducts);\r\n\r\n const getDefaultOptions = () => ({\r\n color: [utils.getColors().primary, utils.getGrays()['300']],\r\n dataset: { source: data },\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n },\r\n formatter(params) {\r\n return `
    ${params.seriesName}
    ${\r\n params.name\r\n }: ${params.value[params.componentIndex + 1]}
    `;\r\n }\r\n },\r\n legend: {\r\n data: ['2019', '2018'],\r\n left: 'left',\r\n itemWidth: 10,\r\n itemHeight: 10,\r\n borderRadius: 0,\r\n icon: 'circle',\r\n inactiveColor: utils.getGrays()['400'],\r\n textStyle: { color: utils.getGrays()['700'] }\r\n },\r\n xAxis: {\r\n type: 'category',\r\n axisLabel: { color: utils.getGrays()['400'] },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisTick: false,\r\n boundaryGap: true\r\n },\r\n yAxis: {\r\n axisPointer: { type: 'none' },\r\n axisTick: 'none',\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisLine: { show: false },\r\n axisLabel: { color: utils.getGrays()['400'] }\r\n },\r\n series: [\r\n {\r\n type: 'bar',\r\n barWidth: '10px',\r\n barGap: '30%',\r\n label: { normal: { show: false } },\r\n z: 10,\r\n itemStyle: {\r\n normal: {\r\n barBorderRadius: [10, 10, 0, 0],\r\n color: utils.getColors().primary\r\n }\r\n }\r\n },\r\n {\r\n type: 'bar',\r\n barWidth: '10px',\r\n barGap: '30%',\r\n label: { normal: { show: false } },\r\n itemStyle: {\r\n normal: {\r\n barBorderRadius: [4, 4, 0, 0],\r\n color: utils.getGrays()[300]\r\n }\r\n }\r\n }\r\n ],\r\n grid: {\r\n right: '0',\r\n left: '30px',\r\n bottom: '10%',\r\n top: '20%'\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default topProductsInit;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Total Order */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst totalOrderInit = () => {\r\n const ECHART_LINE_TOTAL_ORDER = '.echart-line-total-order';\r\n\r\n //\r\n // ─── TOTAL ORDER CHART ──────────────────────────────────────────────────────────\r\n //\r\n const $echartLineTotalOrder = document.querySelector(ECHART_LINE_TOTAL_ORDER);\r\n if ($echartLineTotalOrder) {\r\n // Get options from data attribute\r\n const userOptions = utils.getData($echartLineTotalOrder, 'options');\r\n const chart = window.echarts.init($echartLineTotalOrder);\r\n\r\n // Default options\r\n const getDefaultOptions = () => ({\r\n tooltip: {\r\n triggerOn: 'mousemove',\r\n trigger: 'axis',\r\n padding: [7, 10],\r\n formatter: '{b0}: {c0}',\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getColors().dark },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n }\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: ['Week 4', 'Week 5', 'Week 6', 'Week 7'],\r\n boundaryGap: false,\r\n splitLine: { show: false },\r\n axisLine: {\r\n show: false,\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisLabel: { show: false },\r\n axisTick: { show: false },\r\n axisPointer: { type: 'none' }\r\n },\r\n yAxis: {\r\n type: 'value',\r\n splitLine: { show: false },\r\n axisLine: { show: false },\r\n axisLabel: { show: false },\r\n axisTick: { show: false },\r\n axisPointer: { show: false }\r\n },\r\n series: [\r\n {\r\n type: 'line',\r\n lineStyle: {\r\n color: utils.getColors().primary,\r\n width: 3\r\n },\r\n itemStyle: {\r\n color: utils.getColors().white,\r\n borderColor: utils.getColors().primary,\r\n borderWidth: 2\r\n },\r\n hoverAnimation: true,\r\n data: [20, 40, 100, 120],\r\n // connectNulls: true,\r\n smooth: 0.6,\r\n smoothMonotone: 'x',\r\n showSymbol: false,\r\n symbol: 'circle',\r\n symbolSize: 8,\r\n areaStyle: {\r\n color: {\r\n type: 'linear',\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: utils.rgbaColor(utils.getColors().primary, 0.25)\r\n },\r\n {\r\n offset: 1,\r\n color: utils.rgbaColor(utils.getColors().primary, 0)\r\n }\r\n ]\r\n }\r\n }\r\n }\r\n ],\r\n grid: {\r\n bottom: '2%',\r\n top: '0%',\r\n right: '10px',\r\n left: '10px'\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default totalOrderInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption, getPosition } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Echarts Total Sales E-commerce */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst totalSalesEcommerce = () => {\r\n const ECHART_LINE_TOTAL_SALES_ECOMM = '.echart-line-total-sales-ecommerce';\r\n const $echartsLineTotalSalesEcomm = document.querySelector(ECHART_LINE_TOTAL_SALES_ECOMM);\r\n const months = [\r\n 'Jan',\r\n 'Feb',\r\n 'Mar',\r\n 'Apr',\r\n 'May',\r\n 'Jun',\r\n 'Jul',\r\n 'Aug',\r\n 'Sep',\r\n 'Oct',\r\n 'Nov',\r\n 'Dec'\r\n ];\r\n\r\n function getFormatter(params) {\r\n return params\r\n .map(\r\n ({ value, borderColor, seriesName }) => `\r\n \r\n ${seriesName === 'lastMonth' ? 'Last Month' : 'Previous Year'}: ${value}\r\n `\r\n )\r\n .join('
    ');\r\n }\r\n if ($echartsLineTotalSalesEcomm) {\r\n // Get options from data attribute\r\n const userOptions = utils.getData($echartsLineTotalSalesEcomm, 'options');\r\n const TOTAL_SALES_LAST_MONTH = `#${userOptions.optionOne}`;\r\n const TOTAL_SALES_PREVIOUS_YEAR = `#${userOptions.optionTwo}`;\r\n const totalSalesLastMonth = document.querySelector(TOTAL_SALES_LAST_MONTH);\r\n const totalSalesPreviousYear = document.querySelector(TOTAL_SALES_PREVIOUS_YEAR);\r\n\r\n const chart = window.echarts.init($echartsLineTotalSalesEcomm);\r\n const getDefaultOptions = () => ({\r\n color: utils.getGrays()['100'],\r\n tooltip: {\r\n trigger: 'axis',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n formatter(params) {\r\n return getFormatter(params);\r\n },\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n }\r\n },\r\n legend: {\r\n data: ['lastMonth', 'previousYear'],\r\n show: false\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: [\r\n '2019-01-05',\r\n '2019-01-06',\r\n '2019-01-07',\r\n '2019-01-08',\r\n '2019-01-09',\r\n '2019-01-10',\r\n '2019-01-11',\r\n '2019-01-12',\r\n '2019-01-13',\r\n '2019-01-14',\r\n '2019-01-15',\r\n '2019-01-16'\r\n ],\r\n boundaryGap: false,\r\n axisPointer: {\r\n lineStyle: {\r\n color: utils.getColor('gray-300'),\r\n type: 'dashed'\r\n }\r\n },\r\n splitLine: { show: false },\r\n axisLine: {\r\n lineStyle: {\r\n // color: utils.getGrays()['300'],\r\n color: utils.rgbaColor('#000', 0.01),\r\n type: 'dashed'\r\n }\r\n },\r\n\r\n axisTick: { show: false },\r\n axisLabel: {\r\n color: utils.getColor('gray-400'),\r\n formatter(value) {\r\n const date = new Date(value);\r\n return `${months[date.getMonth()]} ${date.getDate()}`;\r\n },\r\n margin: 15\r\n // showMaxLabel: false\r\n }\r\n },\r\n yAxis: {\r\n type: 'value',\r\n axisPointer: { show: false },\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getColor('gray-300'),\r\n type: 'dashed'\r\n }\r\n },\r\n boundaryGap: false,\r\n axisLabel: {\r\n show: true,\r\n color: utils.getColor('gray-400'),\r\n margin: 15\r\n },\r\n axisTick: { show: false },\r\n axisLine: { show: false }\r\n },\r\n\r\n series: [\r\n {\r\n name: 'lastMonth',\r\n type: 'line',\r\n data: [50, 80, 60, 80, 65, 90, 130, 90, 30, 40, 30, 70],\r\n lineStyle: { color: utils.getColor('primary') },\r\n itemStyle: {\r\n borderColor: utils.getColor('primary'),\r\n borderWidth: 2\r\n },\r\n symbol: 'circle',\r\n symbolSize: 10,\r\n hoverAnimation: true,\r\n areaStyle: {\r\n color: {\r\n type: 'linear',\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: utils.rgbaColor(utils.getColor('primary'), 0.2)\r\n },\r\n {\r\n offset: 1,\r\n color: utils.rgbaColor(utils.getColor('primary'), 0)\r\n }\r\n ]\r\n }\r\n }\r\n },\r\n\r\n {\r\n name: 'previousYear',\r\n type: 'line',\r\n data: [110, 30, 40, 50, 80, 70, 50, 40, 110, 90, 60, 60],\r\n lineStyle: { color: utils.rgbaColor(utils.getColor('warning'), 0.3) },\r\n itemStyle: {\r\n borderColor: utils.rgbaColor(utils.getColor('warning'), 0.6),\r\n borderWidth: 2\r\n },\r\n symbol: 'circle',\r\n symbolSize: 10,\r\n hoverAnimation: true\r\n }\r\n ],\r\n grid: {\r\n right: '18px',\r\n left: '40px',\r\n bottom: '15%',\r\n top: '5%'\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n\r\n totalSalesLastMonth.addEventListener('click', () => {\r\n chart.dispatchAction({\r\n type: 'legendToggleSelect',\r\n name: 'lastMonth'\r\n });\r\n });\r\n\r\n totalSalesPreviousYear.addEventListener('click', () => {\r\n chart.dispatchAction({\r\n type: 'legendToggleSelect',\r\n name: 'previousYear'\r\n });\r\n });\r\n }\r\n};\r\n\r\nexport default totalSalesEcommerce;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Echarts Total Sales */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst totalSalesInit = () => {\r\n const ECHART_LINE_TOTAL_SALES = '.echart-line-total-sales';\r\n const SELECT_MONTH = '.select-month';\r\n\r\n const $echartsLineTotalSales = document.querySelector(ECHART_LINE_TOTAL_SALES);\r\n const months = [\r\n 'Jan',\r\n 'Feb',\r\n 'Mar',\r\n 'Apr',\r\n 'May',\r\n 'Jun',\r\n 'Jul',\r\n 'Aug',\r\n 'Sep',\r\n 'Oct',\r\n 'Nov',\r\n 'Dec'\r\n ];\r\n function getFormatter(params) {\r\n const { name, value } = params[0];\r\n const date = new Date(name);\r\n return `${months[0]} ${date.getDate()}, ${value}`;\r\n }\r\n if ($echartsLineTotalSales) {\r\n // Get options from data attribute\r\n const userOptions = utils.getData($echartsLineTotalSales, 'options');\r\n const chart = window.echarts.init($echartsLineTotalSales);\r\n const monthsnumber = [\r\n [60, 80, 60, 80, 65, 130, 120, 100, 30, 40, 30, 70],\r\n [100, 70, 80, 50, 120, 100, 130, 140, 90, 100, 40, 50],\r\n [80, 50, 60, 40, 60, 120, 100, 130, 60, 80, 50, 60],\r\n [70, 80, 100, 70, 90, 60, 80, 130, 40, 60, 50, 80],\r\n [90, 40, 80, 80, 100, 140, 100, 130, 90, 60, 70, 50],\r\n [80, 60, 80, 60, 40, 100, 120, 100, 30, 40, 30, 70],\r\n [20, 40, 20, 50, 70, 60, 110, 80, 90, 30, 50, 50],\r\n [60, 70, 30, 40, 80, 140, 80, 140, 120, 130, 100, 110],\r\n [90, 90, 40, 60, 40, 110, 90, 110, 60, 80, 60, 70],\r\n [50, 80, 50, 80, 50, 80, 120, 80, 50, 120, 110, 110],\r\n [60, 90, 60, 70, 40, 70, 100, 140, 30, 40, 30, 70],\r\n [20, 40, 20, 50, 30, 80, 120, 100, 30, 40, 30, 70]\r\n ];\r\n const getDefaultOptions = () => ({\r\n color: utils.getGrays()['100'],\r\n tooltip: {\r\n trigger: 'axis',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n formatter(params) {\r\n return getFormatter(params);\r\n },\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n }\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: [\r\n '2019-01-05',\r\n '2019-01-06',\r\n '2019-01-07',\r\n '2019-01-08',\r\n '2019-01-09',\r\n '2019-01-10',\r\n '2019-01-11',\r\n '2019-01-12',\r\n '2019-01-13',\r\n '2019-01-14',\r\n '2019-01-15',\r\n '2019-01-16'\r\n ],\r\n boundaryGap: false,\r\n axisPointer: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n splitLine: { show: false },\r\n axisLine: {\r\n lineStyle: {\r\n // color: utils.getGrays()['300'],\r\n color: utils.rgbaColor('#000', 0.01),\r\n type: 'dashed'\r\n }\r\n },\r\n axisTick: { show: false },\r\n axisLabel: {\r\n color: utils.getGrays()['400'],\r\n formatter: value => {\r\n const date = new Date(value);\r\n return `${months[date.getMonth()]} ${date.getDate()}`;\r\n },\r\n margin: 15\r\n }\r\n },\r\n yAxis: {\r\n type: 'value',\r\n axisPointer: { show: false },\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n boundaryGap: false,\r\n axisLabel: {\r\n show: true,\r\n color: utils.getGrays()['400'],\r\n margin: 15\r\n },\r\n axisTick: { show: false },\r\n axisLine: { show: false }\r\n },\r\n series: [\r\n {\r\n type: 'line',\r\n data: monthsnumber[0],\r\n lineStyle: { color: utils.getColors().primary },\r\n itemStyle: {\r\n borderColor: utils.getColors().primary,\r\n borderWidth: 2\r\n },\r\n symbol: 'circle',\r\n symbolSize: 10,\r\n smooth: false,\r\n hoverAnimation: true,\r\n areaStyle: {\r\n color: {\r\n type: 'linear',\r\n x: 0,\r\n y: 0,\r\n x2: 0,\r\n y2: 1,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: utils.rgbaColor(utils.getColors().primary, 0.2)\r\n },\r\n {\r\n offset: 1,\r\n color: utils.rgbaColor(utils.getColors().primary, 0)\r\n }\r\n ]\r\n }\r\n }\r\n }\r\n ],\r\n grid: {\r\n right: '28px',\r\n left: '40px',\r\n bottom: '15%',\r\n top: '5%'\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n\r\n // Change chart options accordiong to the selected month\r\n const monthSelect = document.querySelector(SELECT_MONTH);\r\n\r\n if (monthSelect) {\r\n monthSelect.addEventListener('change', e => {\r\n const month = e.currentTarget.value;\r\n const data = monthsnumber[month];\r\n\r\n chart.setOption({\r\n tooltip: {\r\n formatter: params => {\r\n const { name, value } = params[0];\r\n const date = new Date(name);\r\n return `${months[month]} ${date.getDate()}, ${value}`;\r\n }\r\n },\r\n xAxis: {\r\n axisLabel: {\r\n formatter: value => {\r\n const date = new Date(value);\r\n return `${months[month]} ${date.getDate()}`;\r\n },\r\n margin: 15\r\n }\r\n },\r\n series: [{ data }]\r\n });\r\n });\r\n }\r\n }\r\n};\r\n\r\nexport default totalSalesInit;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption, tooltipFormatter } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Traffic Channels */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst trafficChannelChartInit = () => {\r\n const $trafficChannels = document.querySelector('.echart-traffic-channels');\r\n\r\n if ($trafficChannels) {\r\n const userOptions = utils.getData($trafficChannels, 'options');\r\n const chart = window.echarts.init($trafficChannels);\r\n\r\n const getDefaultOptions = () => ({\r\n color: [\r\n utils.getColors().primary,\r\n utils.rgbaColor(utils.getColors().primary, 0.8),\r\n utils.rgbaColor(utils.getColors().primary, 0.6),\r\n utils.rgbaColor(utils.getColors().primary, 0.4),\r\n utils.rgbaColor(utils.getColors().primary, 0.2)\r\n ],\r\n legend: {\r\n data: ['Display', 'Direct', 'Organic Search', 'Paid Search', 'Other'],\r\n left: 5,\r\n // bottom: 10,\r\n itemWidth: 10,\r\n itemHeight: 10,\r\n borderRadius: 0,\r\n icon: 'circle',\r\n inactiveColor: utils.getGrays()['400'],\r\n textStyle: { color: utils.getGrays()['700'] },\r\n itemGap: 20\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: utils.getPastDates(7).map(date => window.dayjs(date).format('DD MMM, YYYY')),\r\n axisLine: {\r\n show: false\r\n },\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['200']\r\n }\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n axisLabel: {\r\n color: utils.getGrays()['600'],\r\n formatter: value => window.dayjs(value).format('ddd')\r\n }\r\n },\r\n yAxis: {\r\n type: 'value',\r\n position: 'right',\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['200']\r\n }\r\n },\r\n axisLine: {\r\n show: false\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n axisLabel: {\r\n show: true,\r\n color: utils.getGrays()['600'],\r\n margin: 15\r\n }\r\n },\r\n tooltip: {\r\n trigger: 'axis',\r\n padding: [7, 10],\r\n axisPointer: {\r\n type: 'none'\r\n },\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n },\r\n formatter: tooltipFormatter\r\n },\r\n\r\n series: [\r\n {\r\n name: 'Display',\r\n type: 'bar',\r\n stack: 'total',\r\n data: [320, 302, 301, 334, 390, 330, 320]\r\n },\r\n {\r\n name: 'Direct',\r\n type: 'bar',\r\n stack: 'total',\r\n data: [120, 132, 101, 134, 90, 230, 210]\r\n },\r\n {\r\n name: 'Organic Search',\r\n type: 'bar',\r\n stack: 'total',\r\n data: [220, 182, 191, 234, 290, 330, 310]\r\n },\r\n {\r\n name: 'Paid Search',\r\n type: 'bar',\r\n stack: 'total',\r\n data: [150, 212, 201, 154, 190, 330, 410]\r\n },\r\n {\r\n name: 'Other',\r\n type: 'bar',\r\n stack: 'total',\r\n data: [820, 832, 901, 934, 1290, 1330, 1320],\r\n itemStyle: {\r\n barBorderRadius: [5, 5, 0, 0]\r\n }\r\n }\r\n ],\r\n\r\n grid: {\r\n right: '50px',\r\n left: '0px',\r\n bottom: '10%',\r\n top: '15%'\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default trafficChannelChartInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\nconst echartsUnresolvedTicketsInit = () => {\r\n const $unresolvedTickets = document.querySelector('.echart-unresolved-tickets');\r\n\r\n if ($unresolvedTickets) {\r\n const userOptions = utils.getData($unresolvedTickets, 'options');\r\n const chart = window.echarts.init($unresolvedTickets);\r\n const unresolvedTicketsLegend = document.querySelectorAll('[data-unresolved-tickets]');\r\n const xAxisData = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'];\r\n const data1 = [20, 18, 15, 20, 12, 15, 10];\r\n const data2 = [30, 20, 20, 25, 20, 15, 10];\r\n const data3 = [35, 32, 40, 50, 30, 25, 15];\r\n const data4 = [15, 25, 20, 18, 10, 15, 25];\r\n\r\n const emphasisStyle = {\r\n itemStyle: {\r\n shadowColor: utils.rgbaColor(utils.getColor('dark'), 0.3)\r\n }\r\n };\r\n\r\n const getDefaultOptions = () => ({\r\n color: [\r\n utils.getColor('primary'),\r\n utils.getColor('info'),\r\n utils.isDark() === 'dark' ? '#229BD2' : '#73D3FE',\r\n utils.isDark() === 'dark' ? '#195979' : '#A9E4FF'\r\n ],\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['900'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n axisPointer: {\r\n type: 'none'\r\n }\r\n },\r\n legend: {\r\n data: ['Urgent', 'High', 'Medium', 'Low'],\r\n show: false\r\n },\r\n xAxis: {\r\n data: xAxisData,\r\n splitLine: { show: false },\r\n splitArea: { show: false },\r\n\r\n axisLabel: {\r\n color: utils.getGrays()['600'],\r\n margin: 8\r\n },\r\n\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisTick: {\r\n show: false\r\n }\r\n },\r\n yAxis: {\r\n splitLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['300'],\r\n type: 'dashed'\r\n }\r\n },\r\n axisLabel: {\r\n color: utils.getGrays()['600']\r\n },\r\n position: 'right'\r\n },\r\n series: [\r\n {\r\n name: 'Urgent',\r\n type: 'bar',\r\n stack: 'one',\r\n emphasis: emphasisStyle,\r\n data: data1\r\n },\r\n {\r\n name: 'High',\r\n type: 'bar',\r\n stack: 'one',\r\n emphasis: emphasisStyle,\r\n data: data2\r\n },\r\n {\r\n name: 'Medium',\r\n type: 'bar',\r\n stack: 'one',\r\n emphasis: emphasisStyle,\r\n data: data3\r\n },\r\n {\r\n name: 'Low',\r\n type: 'bar',\r\n stack: 'one',\r\n emphasis: emphasisStyle,\r\n data: data4,\r\n itemStyle: {\r\n borderRadius: [2, 2, 0, 0]\r\n }\r\n }\r\n ],\r\n\r\n barWidth: '15px',\r\n grid: {\r\n top: '8%',\r\n bottom: 10,\r\n left: 0,\r\n right: 2,\r\n containLabel: true\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n\r\n unresolvedTicketsLegend.forEach(el => {\r\n el.addEventListener('change', () => {\r\n chart.dispatchAction({\r\n type: 'legendToggleSelect',\r\n name: utils.getData(el, 'unresolved-tickets')\r\n });\r\n });\r\n });\r\n }\r\n};\r\n\r\nexport default echartsUnresolvedTicketsInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* User By Location Map */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst userByLocationInit = () => {\r\n const $userByLocationMap = document.querySelector('.echart-user-by-location-map');\r\n\r\n const data = [\r\n { name: 'Afghanistan', value: 28397 },\r\n { name: 'Angola', value: 19549 },\r\n { name: 'Albania', value: 3150 },\r\n { name: 'United Arab Emirates', value: 8441 },\r\n { name: 'Argentina', value: 40374 },\r\n { name: 'Armenia', value: 2963 },\r\n { name: 'French Southern and Antarctic Lands', value: 268 },\r\n { name: 'Australia', value: 22404 },\r\n { name: 'Austria', value: 8401 },\r\n { name: 'Azerbaijan', value: 9094 },\r\n { name: 'Burundi', value: 9232 },\r\n { name: 'Belgium', value: 10941 },\r\n { name: 'Benin', value: 9509 },\r\n { name: 'Burkina Faso', value: 15540 },\r\n { name: 'Bangladesh', value: 151125 },\r\n { name: 'Bulgaria', value: 7389 },\r\n { name: 'The Bahamas', value: 66402 },\r\n { name: 'Bosnia and Herzegovina', value: 3845 },\r\n { name: 'Belarus', value: 9491 },\r\n { name: 'Belize', value: 308 },\r\n { name: 'Bermuda', value: 64 },\r\n { name: 'Bolivia', value: 716 },\r\n { name: 'Brazil', value: 195210 },\r\n { name: 'Brunei', value: 27 },\r\n { name: 'Bhutan', value: 716 },\r\n { name: 'Botswana', value: 1969 },\r\n { name: 'Central African Rep.', value: 4349 },\r\n { name: 'Canada', value: 34126 },\r\n { name: 'Switzerland', value: 7830 },\r\n { name: 'Chile', value: 17150 },\r\n { name: 'China', value: 1359821 },\r\n { name: \"Côte d'Ivoire\", value: 60508 },\r\n { name: 'Cameroon', value: 20624 },\r\n { name: 'Dem. Rep. Congo', value: 62191 },\r\n { name: 'Congo', value: 3573 },\r\n { name: 'Colombia', value: 46444 },\r\n { name: 'Costa Rica', value: 4669 },\r\n { name: 'Cuba', value: 11281 },\r\n { name: 'Northern Cyprus', value: 1 },\r\n { name: 'Cyprus', value: 1103 },\r\n { name: 'Czech Republic', value: 10553 },\r\n { name: 'Germany', value: 83017 },\r\n { name: 'Djibouti', value: 834 },\r\n { name: 'Denmark', value: 5550 },\r\n { name: 'Dominican Republic', value: 10016 },\r\n { name: 'Algeria', value: 37062 },\r\n { name: 'Ecuador', value: 15001 },\r\n { name: 'Egypt', value: 78075 },\r\n { name: 'Eritrea', value: 5741 },\r\n { name: 'Spain', value: 46182 },\r\n { name: 'Estonia', value: 1298 },\r\n { name: 'Ethiopia', value: 87095 },\r\n { name: 'Finland', value: 5367 },\r\n { name: 'Fiji', value: 860 },\r\n { name: 'Falkland Islands', value: 49 },\r\n { name: 'France', value: 63230 },\r\n { name: 'Gabon', value: 1556 },\r\n { name: 'United Kingdom', value: 62066 },\r\n { name: 'Georgia', value: 4388 },\r\n { name: 'Ghana', value: 24262 },\r\n { name: 'Eq. Guinea', value: 10876 },\r\n { name: 'Guinea', value: 10876 },\r\n { name: 'Gambia', value: 1680 },\r\n { name: 'Guinea Bissau', value: 10876 },\r\n { name: 'Equatorial Guinea', value: 696 },\r\n { name: 'Greece', value: 11109 },\r\n { name: 'Greenland', value: 56 },\r\n { name: 'Guatemala', value: 14341 },\r\n { name: 'French Guiana', value: 231 },\r\n { name: 'Guyana', value: 786 },\r\n { name: 'Honduras', value: 7621 },\r\n { name: 'Croatia', value: 4338 },\r\n { name: 'Haiti', value: 9896 },\r\n { name: 'Hungary', value: 10014 },\r\n { name: 'Indonesia', value: 240676 },\r\n { name: 'India', value: 1205624 },\r\n { name: 'Ireland', value: 4467 },\r\n { name: 'Iran', value: 240676 },\r\n { name: 'Iraq', value: 30962 },\r\n { name: 'Iceland', value: 318 },\r\n { name: 'Israel', value: 7420 },\r\n { name: 'Italy', value: 60508 },\r\n { name: 'Jamaica', value: 2741 },\r\n { name: 'Jordan', value: 6454 },\r\n { name: 'Japan', value: 127352 },\r\n { name: 'Kazakhstan', value: 15921 },\r\n { name: 'Kenya', value: 40909 },\r\n { name: 'Kyrgyzstan', value: 5334 },\r\n { name: 'Cambodia', value: 14364 },\r\n { name: 'South Korea', value: 51452 },\r\n { name: 'Kosovo', value: 97 },\r\n { name: 'Kuwait', value: 2991 },\r\n { name: 'Laos', value: 6395 },\r\n { name: 'Lebanon', value: 4341 },\r\n { name: 'Liberia', value: 3957 },\r\n { name: 'Libya', value: 6040 },\r\n { name: 'Sri Lanka', value: 20758 },\r\n { name: 'Lesotho', value: 2008 },\r\n { name: 'Lithuania', value: 3068 },\r\n { name: 'Luxembourg', value: 507 },\r\n { name: 'Latvia', value: 2090 },\r\n { name: 'Morocco', value: 31642 },\r\n { name: 'Moldova', value: 103 },\r\n { name: 'Madagascar', value: 21079 },\r\n { name: 'Mexico', value: 117886 },\r\n { name: 'Macedonia', value: 507 },\r\n { name: 'Mali', value: 13985 },\r\n { name: 'Myanmar', value: 51931 },\r\n { name: 'Montenegro', value: 620 },\r\n { name: 'Mongolia', value: 2712 },\r\n { name: 'Mozambique', value: 23967 },\r\n { name: 'Mauritania', value: 3609 },\r\n { name: 'Malawi', value: 15013 },\r\n { name: 'Malaysia', value: 28275 },\r\n { name: 'Namibia', value: 2178 },\r\n { name: 'New Caledonia', value: 246 },\r\n { name: 'Niger', value: 15893 },\r\n { name: 'Nigeria', value: 159707 },\r\n { name: 'Nicaragua', value: 5822 },\r\n { name: 'Netherlands', value: 16615 },\r\n { name: 'Norway', value: 4891 },\r\n { name: 'Nepal', value: 26846 },\r\n { name: 'New Zealand', value: 4368 },\r\n { name: 'Oman', value: 2802 },\r\n { name: 'Pakistan', value: 173149 },\r\n { name: 'Panama', value: 3678 },\r\n { name: 'Peru', value: 29262 },\r\n { name: 'Philippines', value: 93444 },\r\n { name: 'Papua New Guinea', value: 6858 },\r\n { name: 'Poland', value: 38198 },\r\n { name: 'Puerto Rico', value: 3709 },\r\n { name: 'North Korea', value: 1 },\r\n { name: 'Portugal', value: 10589 },\r\n { name: 'Paraguay', value: 6459 },\r\n { name: 'Qatar', value: 1749 },\r\n { name: 'Romania', value: 21861 },\r\n { name: 'Russia', value: 21861 },\r\n { name: 'Rwanda', value: 10836 },\r\n { name: 'Western Sahara', value: 514 },\r\n { name: 'Saudi Arabia', value: 27258 },\r\n { name: 'Sudan', value: 35652 },\r\n { name: 'S. Sudan', value: 9940 },\r\n { name: 'Senegal', value: 12950 },\r\n { name: 'Solomon Islands', value: 526 },\r\n { name: 'Sierra Leone', value: 5751 },\r\n { name: 'El Salvador', value: 6218 },\r\n { name: 'Somaliland', value: 9636 },\r\n { name: 'Somalia', value: 9636 },\r\n { name: 'Republic of Serbia', value: 3573 },\r\n { name: 'Suriname', value: 524 },\r\n { name: 'Slovakia', value: 5433 },\r\n { name: 'Slovenia', value: 2054 },\r\n { name: 'Sweden', value: 9382 },\r\n { name: 'Swaziland', value: 1193 },\r\n { name: 'Syria', value: 7830 },\r\n { name: 'Chad', value: 11720 },\r\n { name: 'Togo', value: 6306 },\r\n { name: 'Thailand', value: 66402 },\r\n { name: 'Tajikistan', value: 7627 },\r\n { name: 'Turkmenistan', value: 5041 },\r\n { name: 'East Timor', value: 10016 },\r\n { name: 'Trinidad and Tobago', value: 1328 },\r\n { name: 'Tunisia', value: 10631 },\r\n { name: 'Turkey', value: 72137 },\r\n { name: 'Tanzania', value: 44973 },\r\n { name: 'Uganda', value: 33987 },\r\n { name: 'Ukraine', value: 46050 },\r\n { name: 'Uruguay', value: 3371 },\r\n { name: 'United States', value: 2526 },\r\n { name: 'Uzbekistan', value: 27769 },\r\n { name: 'Venezuela', value: 236 },\r\n { name: 'Vietnam', value: 89047 },\r\n { name: 'Vanuatu', value: 236 },\r\n { name: 'West Bank', value: 13 },\r\n { name: 'Yemen', value: 22763 },\r\n { name: 'South Africa', value: 51452 },\r\n { name: 'Zambia', value: 13216 },\r\n { name: 'Zimbabwe', value: 13076 }\r\n ];\r\n\r\n const maxZoomLevel = 5;\r\n const minZoomLevel = 1;\r\n\r\n if ($userByLocationMap) {\r\n const userOptions = utils.getData($userByLocationMap, 'options');\r\n const chart = window.echarts.init($userByLocationMap);\r\n\r\n const getDefaultOptions = () => ({\r\n tooltip: {\r\n trigger: 'item',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter: params => `${params.data?.name} : ${params.data?.value}`\r\n },\r\n\r\n visualMap: {\r\n show: false,\r\n min: 800,\r\n max: 50000,\r\n inRange: {\r\n color: [\r\n utils.getColors().primary,\r\n utils.rgbaColor(utils.getColors().primary, 0.8),\r\n utils.rgbaColor(utils.getColors().primary, 0.6),\r\n utils.rgbaColor(utils.getColors().primary, 0.4),\r\n utils.rgbaColor(utils.getColors().primary, 0.2)\r\n ].reverse()\r\n }\r\n },\r\n series: [\r\n {\r\n type: 'map',\r\n map: 'world',\r\n data,\r\n roam: 'move',\r\n\r\n scaleLimit: {\r\n min: minZoomLevel,\r\n max: maxZoomLevel\r\n },\r\n left: 0,\r\n right: 0,\r\n label: {\r\n show: false\r\n },\r\n itemStyle: {\r\n borderColor: utils.getGrays()['300']\r\n },\r\n emphasis: {\r\n label: {\r\n show: false\r\n },\r\n itemStyle: {\r\n areaColor: utils.getColor('warning')\r\n }\r\n }\r\n }\r\n ]\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n\r\n let zoomLevel = 1;\r\n\r\n document.querySelector('.user-by-location-map-zoom')?.addEventListener('click', () => {\r\n if (zoomLevel < maxZoomLevel) {\r\n zoomLevel += 1;\r\n }\r\n chart.setOption({\r\n series: {\r\n zoom: zoomLevel\r\n }\r\n });\r\n });\r\n\r\n document.querySelector('.user-by-location-map-zoomOut')?.addEventListener('click', () => {\r\n if (zoomLevel > minZoomLevel) {\r\n zoomLevel -= 1;\r\n }\r\n chart.setOption({\r\n series: {\r\n zoom: zoomLevel\r\n }\r\n });\r\n });\r\n }\r\n};\r\n\r\nexport default userByLocationInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Echarts Users By Time */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst usersByTimeChartInit = () => {\r\n const $echartUsersByTimeChart = document.querySelector('.echart-users-by-time');\r\n\r\n const hours = [\r\n '12 AM',\r\n '1 AM',\r\n '2 AM',\r\n '3 AM',\r\n '4 AM',\r\n '5 AM',\r\n '6 AM',\r\n '7 AM',\r\n '8 AM',\r\n '9 AM',\r\n '10 AM',\r\n '11 AM',\r\n '12 PM',\r\n '1 PM',\r\n '2 PM',\r\n '3 PM',\r\n '4 PM',\r\n '5 PM',\r\n '6 PM',\r\n '7 PM',\r\n '8 PM',\r\n '9 PM',\r\n '10 PM',\r\n '11 PM'\r\n ];\r\n\r\n const data = [];\r\n for (let i = 0; i < 24; i += 1) {\r\n for (let j = 0; j < 7; j += 1) {\r\n data.push([j, i, utils.getRandomNumber(20, 300)]);\r\n }\r\n }\r\n\r\n const tooltipFormatter = params => `\r\n
    \r\n

    ${window.dayjs(params.name).format('MMM DD, YYYY')}

    \r\n
    \r\n

    \r\n ${window.dayjs().hour(params.data[1]).format('hA')} : ${params.data[2]}\r\n

    \r\n
    \r\n
    \r\n `;\r\n\r\n if ($echartUsersByTimeChart) {\r\n const userOptions = utils.getData($echartUsersByTimeChart, 'options');\r\n const chart = window.echarts.init($echartUsersByTimeChart);\r\n\r\n const getDefaultOptions = () => ({\r\n gradientColor: [utils.getColor('info'), utils.getColor('primary')],\r\n tooltip: {\r\n position: 'top',\r\n padding: [7, 10],\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n formatter: tooltipFormatter\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: utils.getPastDates(7),\r\n splitArea: {\r\n show: true\r\n },\r\n axisTick: { show: false },\r\n axisLabel: {\r\n color: utils.getGrays()['600'],\r\n formatter: value => window.dayjs(value).format('ddd')\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['400']\r\n }\r\n }\r\n },\r\n yAxis: {\r\n position: 'right',\r\n type: 'category',\r\n inverse: true,\r\n data: hours,\r\n splitArea: {\r\n show: true\r\n },\r\n axisTick: { show: false },\r\n axisLabel: {\r\n color: utils.getGrays()['600'],\r\n margin: 20,\r\n padding: [10, 0, 0, 0]\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n color: utils.getGrays()['400']\r\n }\r\n }\r\n },\r\n visualMap: {\r\n type: 'piecewise',\r\n orient: 'horizontal',\r\n left: 'left',\r\n bottom: '3%',\r\n itemSymbol: 'diamond',\r\n itemWidth: '10px',\r\n itemHeight: '10px',\r\n min: 20,\r\n max: 300,\r\n splitNumber: 4,\r\n textGap: 5,\r\n textStyle: {\r\n color: utils.getGrays()['600'],\r\n fontWeight: 500\r\n }\r\n },\r\n series: [\r\n {\r\n name: 'Users By Time',\r\n type: 'heatmap',\r\n data,\r\n label: {\r\n show: false\r\n },\r\n itemStyle: {\r\n borderColor: utils.getGrays()['100'],\r\n borderWidth: 3\r\n },\r\n emphasis: {\r\n itemStyle: {\r\n shadowBlur: 3,\r\n shadowColor: utils.rgbaColor(utils.getColors().emphasis, 0.5)\r\n }\r\n }\r\n }\r\n ],\r\n grid: { right: '60px', left: '0px', bottom: '20%', top: '0%' }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default usersByTimeChartInit;\r\n","import utils from '../../utils';\r\nimport { echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Bandwidth Saved */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst weeklyGoalsInit = () => {\r\n const $echartsBandwidthSaved = document.querySelector('.echart-weekly-goals-lms');\r\n\r\n if ($echartsBandwidthSaved) {\r\n const userOptions = utils.getData($echartsBandwidthSaved, 'options');\r\n const chart = window.echarts.init($echartsBandwidthSaved);\r\n\r\n const getDefaultOptions = () => ({\r\n series: [\r\n {\r\n type: 'gauge',\r\n startAngle: 90,\r\n endAngle: -270,\r\n radius: '85%',\r\n pointer: {\r\n show: false\r\n },\r\n center: ['50%', '50%'],\r\n progress: {\r\n show: true,\r\n overlap: false,\r\n roundCap: true,\r\n clip: false,\r\n itemStyle: {\r\n color: utils.getColor('info')\r\n }\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n width: 8,\r\n color: [[1, utils.getColor('gray-200')]]\r\n }\r\n },\r\n splitLine: {\r\n show: false\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n axisLabel: {\r\n show: false\r\n },\r\n data: [79],\r\n detail: {\r\n show: false\r\n },\r\n animationDuration: 2000\r\n },\r\n {\r\n type: 'gauge',\r\n startAngle: 90,\r\n endAngle: -270,\r\n radius: '70%',\r\n pointer: {\r\n show: false\r\n },\r\n center: ['50%', '50%'],\r\n progress: {\r\n show: true,\r\n overlap: false,\r\n roundCap: true,\r\n clip: false,\r\n itemStyle: {\r\n color: utils.getColor('primary')\r\n }\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n width: 8,\r\n color: [[1, utils.getColor('gray-200')]]\r\n }\r\n },\r\n splitLine: {\r\n show: false\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n axisLabel: {\r\n show: false\r\n },\r\n data: [85],\r\n detail: {\r\n show: false\r\n },\r\n animationDuration: 2000\r\n },\r\n {\r\n type: 'gauge',\r\n startAngle: 90,\r\n endAngle: -270,\r\n radius: '55%',\r\n pointer: {\r\n show: false\r\n },\r\n center: ['50%', '50%'],\r\n progress: {\r\n show: true,\r\n overlap: false,\r\n roundCap: true,\r\n clip: false,\r\n itemStyle: {\r\n color: utils.getColor('success')\r\n }\r\n },\r\n axisLine: {\r\n lineStyle: {\r\n width: 8,\r\n color: [[1, utils.getColor('gray-200')]]\r\n }\r\n },\r\n splitLine: {\r\n show: false\r\n },\r\n axisTick: {\r\n show: false\r\n },\r\n axisLabel: {\r\n show: false\r\n },\r\n data: [70],\r\n detail: {\r\n show: false\r\n },\r\n animationDuration: 2000\r\n }\r\n ]\r\n });\r\n\r\n const initChart = () => {\r\n if (utils.isScrolledIntoView($echartsBandwidthSaved)) {\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n window.removeEventListener('scroll', initChart);\r\n }\r\n };\r\n\r\n window.addEventListener('scroll', initChart);\r\n }\r\n};\r\n\r\nexport default weeklyGoalsInit;\r\n","import utils from '../../utils';\r\nimport { getPosition, echartSetOption } from './echarts-utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Weekly Sales */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst weeklySalesInit = () => {\r\n const ECHART_BAR_WEEKLY_SALES = '.echart-bar-weekly-sales';\r\n const $echartBarWeeklySales = document.querySelector(ECHART_BAR_WEEKLY_SALES);\r\n\r\n if ($echartBarWeeklySales) {\r\n // Get options from data attribute\r\n const userOptions = utils.getData($echartBarWeeklySales, 'options');\r\n\r\n const data = [120, 200, 150, 80, 70, 110, 120];\r\n\r\n // Max value of data\r\n // const yMax = Math.max(...data);\r\n\r\n // const dataBackground = data.map(() => yMax);\r\n const chart = window.echarts.init($echartBarWeeklySales);\r\n\r\n // Default options\r\n const getDefaultOptions = () => ({\r\n tooltip: {\r\n trigger: 'axis',\r\n padding: [7, 10],\r\n formatter: '{b0} : {c0}',\r\n transitionDuration: 0,\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n textStyle: { color: utils.getGrays()['1100'] },\r\n borderWidth: 1,\r\n position(pos, params, dom, rect, size) {\r\n return getPosition(pos, params, dom, rect, size);\r\n }\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\r\n boundaryGap: false,\r\n axisLine: { show: false },\r\n axisLabel: { show: false },\r\n axisTick: { show: false },\r\n axisPointer: { type: 'none' }\r\n },\r\n yAxis: {\r\n type: 'value',\r\n splitLine: { show: false },\r\n axisLine: { show: false },\r\n axisLabel: { show: false },\r\n axisTick: { show: false },\r\n axisPointer: { type: 'none' }\r\n },\r\n series: [\r\n {\r\n type: 'bar',\r\n showBackground: true,\r\n backgroundStyle: {\r\n borderRadius: 10\r\n },\r\n barWidth: '5px',\r\n itemStyle: {\r\n barBorderRadius: 10,\r\n color: utils.getColors().primary\r\n },\r\n data,\r\n z: 10,\r\n emphasis: { itemStyle: { color: utils.getColors().primary } }\r\n }\r\n ],\r\n grid: {\r\n right: 5,\r\n left: 10,\r\n top: 0,\r\n bottom: 0\r\n }\r\n });\r\n\r\n echartSetOption(chart, userOptions, getDefaultOptions);\r\n }\r\n};\r\n\r\nexport default weeklySalesInit;\r\n","import { docReady } from './utils';\r\nimport handleNavbarVerticalCollapsed from './navbar-vertical';\r\nimport detectorInit from './detector';\r\nimport tooltipInit from './tooltip';\r\nimport popoverInit from './popover';\r\nimport navbarTopDropShadow from './navbar-top';\r\nimport toastInit from './toast';\r\nimport progressAnimationToggle from './progress';\r\nimport glightboxInit from './glightbox';\r\nimport plyrInit from './plyr';\r\nimport initMap from './googleMap';\r\nimport dropzoneInit from './dropzone';\r\nimport choicesInit from './choices';\r\nimport barChartInit from './charts/chartjs/chart-bar';\r\nimport formValidationInit from './form-validation';\r\nimport leafletActiveUserInit from './leaflet-active-user';\r\nimport countupInit from './countup';\r\nimport copyLink from './copy-link';\r\nimport typedTextInit from './typed';\r\nimport navbarDarkenOnScroll from './navbar-darken-on-scroll';\r\nimport tinymceInit from './tinymce';\r\nimport bulkSelectInit from './bulk-select';\r\nimport quantityInit from './quantity';\r\nimport navbarComboInit from './navbar-combo';\r\nimport listInit from './list';\r\nimport chatInit from './chat';\r\nimport kanbanInit from './kanban';\r\nimport { fullCalendarInit } from './fullcalendar';\r\nimport appCalendarInit from './calendar/index';\r\nimport managementCalendarInit from './calendar/management-calendar';\r\nimport lottieInit from './lottie';\r\nimport wizardInit from './wizard';\r\nimport swiperInit from './swiper';\r\nimport ratingInit from './rater';\r\nimport searchInit from './search';\r\nimport cookieNoticeInit from './cookie-notice';\r\nimport themeControl from './theme-control';\r\nimport dropdownOnHover from './dropdown-on-hover';\r\nimport productShareDoughnutInit from './charts/chartjs/product-share-doughnut';\r\nimport chartHalfDoughnutInit from './charts/chartjs/chart-half-doughnut';\r\nimport totalSalesEcommerce from './charts/echarts/total-sales-ecommerce';\r\nimport avgEnrollmentRateInit from './charts/echarts/average-enrollment-rate';\r\nimport salesByPosLocationInit from './charts/echarts/sales-by-pos-location';\r\nimport returningCustomerRateInit from './charts/echarts/returning-customer-rate';\r\nimport topProductsInit from './charts/echarts/top-products';\r\nimport courseEnrollmentsInit from './charts/echarts/course-enrollments';\r\nimport marketShareEcommerceInit from './charts/echarts/market-share-ecommerce';\r\nimport totalSalesInit from './charts/echarts/total-sales';\r\nimport weeklySalesInit from './charts/echarts/weekly-sales';\r\nimport marketShareInit from './charts/echarts/market-share';\r\nimport weeklyGoalsInit from './charts/echarts/weekly-goals-lms';\r\nimport totalOrderInit from './charts/echarts/total-order';\r\nimport candleChartInit from './charts/echarts/candle-chart';\r\nimport grossRevenueChartInit from './charts/echarts/gross-revenue';\r\nimport browsedCoursesInit from './charts/echarts/browsed-courses';\r\nimport courseStatusInit from './charts/echarts/course-status';\r\nimport assignmentScoresInit from './charts/echarts/assignment-scores';\r\nimport scrollbarInit from './scrollbar';\r\nimport iconCopiedInit from './icons';\r\nimport reportForThisWeekInit from './charts/echarts/report-for-this-week';\r\nimport basicEchartsInit from './charts/echarts/basic-echarts';\r\nimport trendingKeywordsInit from './charts/d3/trending-keywords';\r\nimport D3PackedBubbleInit from './charts/d3/d3-packed-bubble';\r\nimport chartScatter from './charts/chartjs/chart-scatter';\r\nimport chartDoughnut from './charts/chartjs/chart-doughnut';\r\nimport chartPie from './charts/chartjs/chart-pie';\r\nimport chartPolar from './charts/chartjs/chart-polar';\r\nimport chartRadar from './charts/chartjs/chart-radar';\r\nimport chartCombo from './charts/chartjs/chart-combo';\r\nimport chartBubble from './charts/chartjs/chart-bubble';\r\nimport dropdownMenuInit from './dropdown-menu';\r\nimport audienceChartInit from './charts/echarts/audience';\r\nimport sessionByBrowserChartInit from './charts/echarts/session-by-browser';\r\nimport sessionByCountryChartInit from './charts/echarts/session-by-country';\r\nimport activeUsersChartReportInit from './charts/echarts/active-users-report';\r\nimport trafficChannelChartInit from './charts/echarts/traffic-channels';\r\nimport bounceRateChartInit from './charts/echarts/bounce-rate';\r\nimport usersByTimeChartInit from './charts/echarts/users-by-time';\r\nimport sessionByCountryMapInit from './charts/echarts/session-by-country-map';\r\nimport mostLeadsInit from './charts/echarts/most-leads';\r\nimport closedVsGoalInit from './charts/echarts/closed-vs-goal';\r\nimport leadConversionInit from './charts/echarts/lead-conversion';\r\nimport dealStorageFunnelInit from './charts/echarts/deal-storage-funnel';\r\nimport revenueChartInit from './charts/echarts/crm-revenue';\r\nimport locationBySessionInit from './charts/echarts/location-by-session-crm';\r\nimport realTimeUsersChartInit from './charts/echarts/real-time-users';\r\nimport linePaymentChartInit from './charts/echarts/line-payment';\r\nimport chartLine from './charts/chartjs/chart-line';\r\nimport bandwidthSavedInit from './charts/echarts/bandwidth-saved';\r\nimport marketingExpensesInit from './charts/echarts/marketing-expenses';\r\nimport treeviewInit from './treeview';\r\nimport bottomBarInit from './bottom-bar';\r\nimport scrollInit from './scroll';\r\nimport echartsUnresolvedTicketsInit from './charts/echarts/unresolved-tickets';\r\nimport echartsNumberOfTicketsInit from './charts/echarts/number-of-tickets';\r\nimport echartsCustomerSatisfactionInit from './charts/echarts/customer-satisfaction';\r\nimport echartsDistributionOfPerformanceInit from './charts/echarts/distribution-of-performance';\r\nimport echartsSatisfactionSurveyInit from './charts/echarts/satisfaction-survey';\r\nimport echartsReceivedTicketsInit from './charts/echarts/received-tickets';\r\nimport topCustomersChartInit from './charts/echarts/top-customers';\r\nimport ticketVolumeChartInit from './charts/echarts/ticket-volume';\r\nimport echartTicketPriority from './charts/echarts/ticket-priority';\r\nimport hideOnCollapseInit from './hide-on-collapse';\r\nimport userByLocationInit from './charts/echarts/user-by-location-lms';\r\nimport dataTablesInit from './datatables';\r\nimport select2Init from './select2';\r\nimport inputmaskInit from './inputmask';\r\nimport unresolvedTicketsTabInit from './unresolved-tickets-tab';\r\nimport emojiMartInit from './emoji-mart';\r\nimport nouisliderInit from './nouislider';\r\nimport advanceAjaxTableInit from './advance-ajax-table';\r\nimport sortableInit from './sortable';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Theme Initialization */\r\n/* -------------------------------------------------------------------------- */\r\ndocReady(detectorInit);\r\ndocReady(handleNavbarVerticalCollapsed);\r\ndocReady(totalOrderInit);\r\ndocReady(weeklySalesInit);\r\ndocReady(marketShareInit);\r\ndocReady(totalSalesInit);\r\ndocReady(topProductsInit);\r\ndocReady(navbarTopDropShadow);\r\ndocReady(tooltipInit);\r\ndocReady(popoverInit);\r\ndocReady(toastInit);\r\ndocReady(progressAnimationToggle);\r\ndocReady(glightboxInit);\r\ndocReady(plyrInit);\r\ndocReady(initMap);\r\ndocReady(dropzoneInit);\r\ndocReady(choicesInit);\r\ndocReady(formValidationInit);\r\ndocReady(barChartInit);\r\ndocReady(leafletActiveUserInit);\r\ndocReady(countupInit);\r\ndocReady(copyLink);\r\ndocReady(navbarDarkenOnScroll);\r\ndocReady(typedTextInit);\r\ndocReady(tinymceInit);\r\ndocReady(chatInit);\r\ndocReady(quantityInit);\r\ndocReady(navbarComboInit);\r\ndocReady(swiperInit);\r\ndocReady(ratingInit);\r\ndocReady(kanbanInit);\r\ndocReady(fullCalendarInit);\r\ndocReady(appCalendarInit);\r\ndocReady(managementCalendarInit);\r\ndocReady(lottieInit);\r\ndocReady(wizardInit);\r\ndocReady(searchInit);\r\ndocReady(cookieNoticeInit);\r\ndocReady(themeControl);\r\ndocReady(dropdownOnHover);\r\ndocReady(marketShareEcommerceInit);\r\ndocReady(productShareDoughnutInit);\r\ndocReady(totalSalesEcommerce);\r\ndocReady(avgEnrollmentRateInit);\r\ndocReady(bandwidthSavedInit);\r\ndocReady(salesByPosLocationInit);\r\ndocReady(returningCustomerRateInit);\r\ndocReady(candleChartInit);\r\ndocReady(grossRevenueChartInit);\r\ndocReady(scrollbarInit);\r\ndocReady(iconCopiedInit);\r\ndocReady(reportForThisWeekInit);\r\ndocReady(basicEchartsInit);\r\ndocReady(chartScatter);\r\ndocReady(chartDoughnut);\r\ndocReady(chartPie);\r\ndocReady(chartPolar);\r\ndocReady(chartRadar);\r\ndocReady(chartCombo);\r\ndocReady(dropdownMenuInit);\r\ndocReady(audienceChartInit);\r\ndocReady(sessionByBrowserChartInit);\r\ndocReady(sessionByCountryChartInit);\r\ndocReady(activeUsersChartReportInit);\r\ndocReady(trafficChannelChartInit);\r\ndocReady(bounceRateChartInit);\r\ndocReady(usersByTimeChartInit);\r\ndocReady(sessionByCountryMapInit);\r\ndocReady(mostLeadsInit);\r\ndocReady(closedVsGoalInit);\r\ndocReady(leadConversionInit);\r\ndocReady(dealStorageFunnelInit);\r\ndocReady(revenueChartInit);\r\ndocReady(locationBySessionInit);\r\ndocReady(realTimeUsersChartInit);\r\ndocReady(linePaymentChartInit);\r\ndocReady(chartBubble);\r\ndocReady(chartLine);\r\ndocReady(treeviewInit);\r\ndocReady(scrollInit);\r\ndocReady(echartsUnresolvedTicketsInit);\r\ndocReady(echartsNumberOfTicketsInit);\r\ndocReady(echartsCustomerSatisfactionInit);\r\ndocReady(echartsDistributionOfPerformanceInit);\r\ndocReady(echartsSatisfactionSurveyInit);\r\ndocReady(echartsReceivedTicketsInit);\r\ndocReady(topCustomersChartInit);\r\ndocReady(ticketVolumeChartInit);\r\ndocReady(echartTicketPriority);\r\ndocReady(userByLocationInit);\r\ndocReady(courseEnrollmentsInit);\r\ndocReady(weeklyGoalsInit);\r\ndocReady(assignmentScoresInit);\r\ndocReady(browsedCoursesInit);\r\ndocReady(courseStatusInit);\r\ndocReady(bottomBarInit);\r\ndocReady(marketingExpensesInit);\r\ndocReady(chartHalfDoughnutInit);\r\ndocReady(trendingKeywordsInit);\r\ndocReady(D3PackedBubbleInit);\r\ndocReady(dataTablesInit);\r\ndocReady(select2Init);\r\ndocReady(hideOnCollapseInit);\r\ndocReady(unresolvedTicketsTabInit);\r\ndocReady(inputmaskInit);\r\ndocReady(emojiMartInit);\r\ndocReady(nouisliderInit);\r\ndocReady(bulkSelectInit);\r\ndocReady(advanceAjaxTableInit);\r\ndocReady(listInit);\r\ndocReady(sortableInit);\r\n"]}