{"version":3,"sources":["utils.js","detector.js","node.js","anchor.js","bottom-bar.js","bulk-select.js","chat.js","choices.js","cookie-notice.js","copy-link.js","countup.js","draggable.js","dropdown-menu.js","dropdown-on-hover.js","dropzone.js","form-validation.js","fullcalendar.js","glightbox.js","googleMap.js","icons.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","plyr.js","popover.js","progress.js","quantity.js","rater.js","scroll.js","scrollbar.js","search.js","swiper.js","theme-control.js","tinymce.js","toast.js","tooltip.js","treeview.js","typed.js","wizard.js","calendar/events.js","calendar/index.js","calendar/management-calendar.js","calendar/management-events.js","calendar/template.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/d3/d3-packed-bubble.js","charts/d3/trending-keywords.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/deal-storage-funnel.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/real-time-users.js","charts/echarts/report-for-this-week.js","charts/echarts/returning-customer-rate.js","charts/echarts/sales-by-pos-location.js","charts/echarts/session-by-browser.js","charts/echarts/session-by-country-map.js","charts/echarts/session-by-country.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/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","_","c","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","getSoftColors","getGrays","white","100","200","300","400","500","600","700","800","900","1000","1100","black","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","setCookie","expire","expires","Date","setTime","getTime","cookie","toUTCString","getCookie","keyValue","match","settings","tinymce","theme","chart","borderColor","newChart","config","ctx","getContext","Chart","getItemFromStore","key","defaultValue","store","localStorage","getItem","_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","node","_classCallCheck","this","isValidNode","toggle","contains","setAttribute","removeAttribute","event","cb","anchors","AnchorJS","bottomBarInit","options","icon","isElementInViewport","offsetTop","bottom","right","bottomBars","querySelectorAll","navbarButtons","forEach","bar","barOptions","_window$_$merge","merge","target","breakPoint","targetEl","getElementById","matchMedia","matches","btn","BulkSelect","element","option","_objectSpread","displayNoneClassName","attachNodes","clickBulkCheckbox","clickRowCheckbox","_this$element$data","body","actions","replacedElement","bulkSelectRows","_this","on","attr","removeBulkCheck","rowCheck","setProp","toggleDisplay","_this2","_toConsumableArray","every","checked","toggleClass","bulkSelectInit","bulkSelects","init","chatInit","setScrollbarPosition","$chatArea","scrollHeight","Events","Selector","ClassName","DATA_KEY","$chatSidebar","$chatContact","$chatEmojiarea","$btnSend","$currentChatArea","$this","currentTarget","style","innerHTML","TargetChatArea","textContent","dataIndex","picker","selection","emoji","choicesInit","Choices","item","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","show","toastOptions","_ref","id","_element","hide","copyLink","copyLinkModal","copyButtons","select","button","tooltip","Tooltip","stopPropagation","update","inputID","execCommand","countupInit","countUp","_utils$getData","endValue","_objectWithoutProperties","_excluded","CountUp","error","console","start","draggableInit","Selectors","columns","columnContainers","container","sortable","Draggable","Sortable","draggable","delay","mirror","appendTo","constrainDimensions","scrollable","scrollableElements","column","_ref2","source","columnContainer","closest","form","nextElementSibling","appendChild","dropdownMenuInit","Event","table","t","scrollWidth","paddingBottom","dropdownOnHover","navbarArea","dropdownInstance","Dropdown","_menu","parentNode","dropzoneInit","Dropzone","autoDiscover","dropzones","url","addRemoveLinks","previewsContainer","previewTemplate","thumbnailWidth","thumbnailHeight","maxFilesize","autoProcessQueue","filesizeBase","thisDropzone","mockFile","size","addedfile","call","thumbnail","maxFiles","files","removeFile","file","message","previewElement","_step","_iterator","_createForOfIteratorHelper","s","n","done","err","f","dropzone","formValidationInit","forms","prototype","slice","checkValidity","preventDefault","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","map","infowindow","marker","latLng","markerPopup","zoom","mapElement","mapStyle","pov","position","lat","Number","lng","gestureHandling","scrollwheel","maps","StreetViewPanorama","LatLng","styles","Map","InfoWindow","content","Marker","addListener","open","_ref3","_ref3$detail","detail","control","set","iconCopiedInit","iconList","iconCopiedToast","iconCopiedToastInstance","tagName","setSelectionRange","kanbanInit","addCardButtons","formHideButtons","addListForm","collapseDismissButtons","_ref4","focus","scrollTo","_ref5","_ref6","nextElement","_ref7","_ref8","collapseElement","collapse","Collapse","getInstance","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","_ref9","_ref9$detail","updateFilter","togglePaginationButtonDisable","disabled","listInit","lists","List","updateListControls","listInfo","list","numberOfcurrentItems","totalItem","paginationButtonPrev","pageCount","paginationButtonNext","pageQuantity","toggleViewBtn","viewLess","viewAll","pagination","listFilter","fallback","matchingItems","items","itemsPerPage","page","btnDropdownClose","listContainer","ceil","visibleItems","fuzzySearch","nextInitialIndex","prevItem","innerText","values","payment","lottieInit","lotties","bodymovin","loadAnimation","path","renderer","loop","autoplay","navbarComboInit","moveNavContent","moveableContainer","navbarNav","navbarVerticalBreakpoint","navbarVertical","navbarTopBreakpoint","navbarTopCombo","navbarTopContent","navbarCollapse","targetID","targetElement","insertAdjacentHTML","navbarDarkenOnScroll","navbar","removeNavbarBgClass","toggleThemeClass","defaultColorName","colorRgb","backgroundImage","transition","getBgClassName","parent","allColors","colorName","Object","keys","bgClassName","_ref10","_ref10$detail","backgroundColor","navbarTopDropShadow","setDropShadow","$elem","navDropShadowFlag","$navbar","$navbarVertical","$navbarVerticalContent","$navbarVerticalCollapse","outerWidth","handleNavbarVerticalCollapsed","navbarVerticalToggle","navbarVerticalCollapse","blur","isNavbarVerticalCollapsed","CustomEvent","dispatchEvent","plyrInit","Plyr","plyr","captions","active","popoverInit","popoverTriggerEl","Popover","progressAnimationToggle","progress","progressID","quantityInit","Attributes","DataKey","quantity","type","numberInput","ratingInit","rater","reverse","starSize","step","rateCallback","rating","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","input","_ref11","dropdown","swiperInit","swipers","swiper","slides","thumbs","thumbsOptions","thumb","swiperNav","thumbImages","img","src","createElement","thumbsInit","Swiper","newSwiper","navigation","nextEl","prevEl","initialDomSetup","dataUrlDom","hasDataUrl","inputDataAttributeValue","localStorageValue","changeTheme","themeControl","clickControl","pageUrl","reload","CONFIG","tinymceInit","menubar","skin","content_style","toolbar","statusbar","plugins","directionality","theme_advanced_toolbar_align","setup","editor","triggerSave","_ref12","tinyMCE","editors","addStyle","toastInit","toastEl","liveToast","liveToastBtn","tooltipInit","tooltipTriggerEl","trigger","treeviewInit","makeStriped","treeview","tag","parentElement","index","treeviews","striped","collapseElementList","wholeRow","prepend","collapseId","childs","parents","unshift","collapseEl","typedTextInit","typedTexts","Typed","typedText","strings","typeSpeed","backDelay","wizardInit","dividedProgressbar","wizards","tabPillEl","tabProgressBar","wizard","validatePattern","pattern","RegExp","test","String","tabToggleButtonEl","inputEmail","emailPattern","inputPassword","inputConfirmPassword","nextButton","prevButton","cardFooter","count","Tab","tab","j","_window3","dayjs","currentDay","format","currentMonth","prevMonth","subtract","nextMonth","currentYear","events","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","dateStr","currentData","viewTitle","prev","next","today","link","changeView","_e$target","label","addEvent","reset","_ref13","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","join","schedule","href","barChartInit","barChartElement","chartJsInit","labels","datasets","borderWidth","chartJsDefaultTooltip","scales","x","grid","y","drawBorder","chartBubble","pie","getBubbleDataset","hoverBackgroundColor","legend","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","animation","chartEl","_ref14","destroy","titleColor","callbacks","labelTextColor","rmin","rmax","productShareDoughnutInit","marketShareDoughnutElement","tooltips","D3PackedBubbleInit","tooltipDot","tooltipName","tooltipValue","tooltipStyles","labelStyles","circle","svg","d3","tooltipNameColor","tooltipValueColor","bubbleData","root","pack","padding","hierarchy","children","sum","d","selectAll","enter","append","clientY","clientX","ease","easeExpInOut","diagram","trendingKeywordsInit","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","emphasis","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","_ref15","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","_ref16","getMonth","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","componentIndex","courseStatusInit","$echartsCourseStatus","revenueChartInit","revenue","deals","profit","dealStorageFunnelInit","dataAxis1","dataAxis2","$echartDealStorageFunnel","inside","inverse","showBackground","backgroundStyle","contentSize","_ref17","tooltipItem","_typeof","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","stack","containLabel","linePaymentChartInit","$echartsLinePaymentChart","all","successful","failed","locationBySessionInit","zoomLevel","$locationBySessionMap","_params$data2","_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","realTimeUsersChartInit","axisData","userCounterDom","$echartsRealTimeUsers","barCategoryGap","setInterval","rndData","shift","reportForThisWeekInit","legendLastWeek","legendThisWeek","$echartBarReportForThisWeek","selectChart","option1","option2","returningCustomerRateInit","LEGEND_NEW_MONTH","LEGEND_RETURNING_MONTH","$legendNewMonth","$legendReturningMonth","monthNumbers","$echartsLineReturningCustomerRate","dataNewMonth","dataReturningMonth","salesByPosLocationInit","$echartsRadarSalesByPosLocation","getformatter","splitArea","indicator","sessionByBrowserChartInit","$sessionByBroswser","year","sessionByCountryMapInit","$sessionByCountryMap","_params$data4","_params$data3","toolbox","feature","restore","_document$querySelect5","sessionByCountryChartInit","$sessionByCountry","alignWithLabel","topProductsInit","$echartBarTopProducts","totalOrderInit","$echartLineTotalOrder","triggerOn","smoothMonotone","totalSalesEcommerce","totalSalesLastMonth","totalSalesPreviousYear","$echartsLineTotalSalesEcomm","TOTAL_SALES_LAST_MONTH","TOTAL_SALES_PREVIOUS_YEAR","_ref18","totalSalesInit","_params$","_params$2","trafficChannelChartInit","$trafficChannels","userByLocationInit","$userByLocationMap","_params$data6","_params$data5","_document$querySelect6","_document$querySelect7","usersByTimeChartInit","$echartUsersByTimeChart","hours","gradientColor","orient","itemSymbol","textGap","shadowBlur","shadowColor","weeklyGoalsInit","weeklySalesInit","$echartBarWeeklySales","apply"],"mappings":"mgHAGA,IAAAA,SAAA,SAAAC,GAEA,YAAAC,SAAAC,WACAD,SAAAE,iBAAA,mBAAAH,CAAA,EAEAI,WAAAJ,EAAA,CAAA,CAEA,EAEAK,OAAA,SAAAL,GAAA,OAAAM,OAAAH,iBAAA,SAAAH,CAAA,CAAA,EAEAO,gBAAA,SAAAC,GAAA,OAAAC,MAAAC,QAAAF,CAAA,GAAA,CAAA,CAAAA,EAAAG,MAAA,EAEAC,SAAA,SAAAC,GACAC,EAAAD,EAAAE,QAAA,gBAAA,SAAAC,EAAAC,GAAA,OACAA,EAAAA,EAAAC,YAAA,EAAA,EADA,CAAA,EAGA,MAAA,GAAAC,OAAAL,EAAAM,OAAA,EAAA,CAAA,EAAAC,YAAA,CAAA,EAAAF,OAAAL,EAAAM,OAAA,CAAA,CAAA,CACA,EAEAE,QAAA,SAAAC,EAAAC,GACA,IACA,OAAAC,KAAAC,MAAAH,EAAAI,QAAAf,SAAAY,CAAA,EAAA,CAGA,CAFA,MAAAI,GACA,OAAAL,EAAAI,QAAAf,SAAAY,CAAA,EACA,CACA,EAIAK,SAAA,SAAAC,GAGAC,EADA,IAAAD,EAAAE,QAAA,GAAA,EACAF,EAAAG,UAAA,CAAA,EACAH,EAGAI,EAAA,4CAAAC,KACAJ,EAAAhB,QAFA,mCAEA,SAAAqB,EAAAC,EAAAC,EAAAC,GAAA,OAAAF,EAAAA,EAAAC,EAAAA,EAAAC,EAAAA,CAAA,CAAA,CADA,EAGA,OAAAL,EACA,CACAM,SAAAN,EAAA,GAAA,EAAA,EACAM,SAAAN,EAAA,GAAA,EAAA,EACAM,SAAAN,EAAA,GAAA,EAAA,GAEA,IACA,EAEAO,UAAA,WAAA,IAAAC,EAAA,EAAAC,UAAAhC,QAAAiC,KAAAA,IAAAD,UAAA,GAAAA,UAAA,GAAA,OAAAE,EAAA,EAAAF,UAAAhC,QAAAiC,KAAAA,IAAAD,UAAA,GAAAA,UAAA,GAAA,GAAA,MAAA,QAAAxB,OACAU,SAAAa,CAAA,EADA,IAAA,EAAAvB,OACA0B,EADA,GAAA,CAAA,EAKAC,SAAA,SAAAC,GAAA,IAAAC,EAAA,EAAAL,UAAAhC,QAAAiC,KAAAA,IAAAD,UAAA,GAAAA,UAAA,GAAA1C,SAAAgD,gBAAA,OACAC,iBAAAF,CAAA,EAAAG,iBAAA,YAAAhC,OAAA4B,CAAA,CAAA,EAAAK,KAAA,CADA,EAGAC,UAAA,SAAAL,GAAA,MAAA,CACAM,QAAAR,SAAA,UAAAE,CAAA,EACAO,UAAAT,SAAA,YAAAE,CAAA,EACAQ,QAAAV,SAAA,UAAAE,CAAA,EACAS,KAAAX,SAAA,OAAAE,CAAA,EACAU,QAAAZ,SAAA,UAAAE,CAAA,EACAW,OAAAb,SAAA,SAAAE,CAAA,EACAY,MAAAd,SAAA,QAAAE,CAAA,EACAa,KAAAf,SAAA,OAAAE,CAAA,CARA,CAAA,EAWAc,cAAA,SAAAd,GAAA,MAAA,CACAM,QAAAR,SAAA,eAAAE,CAAA,EACAO,UAAAT,SAAA,iBAAAE,CAAA,EACAQ,QAAAV,SAAA,eAAAE,CAAA,EACAS,KAAAX,SAAA,YAAAE,CAAA,EACAU,QAAAZ,SAAA,eAAAE,CAAA,EACAW,OAAAb,SAAA,cAAAE,CAAA,EACAY,MAAAd,SAAA,aAAAE,CAAA,EACAa,KAAAf,SAAA,YAAAE,CAAA,CARA,CAAA,EAWAe,SAAA,SAAAf,GAAA,MAAA,CACAgB,MAAAlB,SAAA,aAAAE,CAAA,EACAiB,IAAAnB,SAAA,WAAAE,CAAA,EACAkB,IAAApB,SAAA,WAAAE,CAAA,EACAmB,IAAArB,SAAA,WAAAE,CAAA,EACAoB,IAAAtB,SAAA,WAAAE,CAAA,EACAqB,IAAAvB,SAAA,WAAAE,CAAA,EACAsB,IAAAxB,SAAA,WAAAE,CAAA,EACAuB,IAAAzB,SAAA,WAAAE,CAAA,EACAwB,IAAA1B,SAAA,WAAAE,CAAA,EACAyB,IAAA3B,SAAA,WAAAE,CAAA,EACA0B,IAAA5B,SAAA,YAAAE,CAAA,EACA2B,KAAA7B,SAAA,YAAAE,CAAA,EACA4B,MAAA9B,SAAA,aAAAE,CAAA,CAbA,CAAA,EAgBA6B,SAAA,SAAAtD,EAAAuD,GAEA,OAAAvD,EAAAwD,UAAAC,MAAAC,SAAAH,CAAA,CACA,EAEAI,SAAA,SAAA3D,EAAAuD,GACAvD,EAAAwD,UAAAI,IAAAL,CAAA,CACA,EAEAM,YAAA,SAAA7D,EAAAuD,GACAvD,EAAAwD,UAAAM,OAAAP,CAAA,CACA,EAEAQ,UAAA,SAAA/D,GACA,IAAAgE,EAAAhE,EAAAiE,sBAAA,EACAC,EAAAnF,OAAAoF,aAAAzF,SAAAgD,gBAAAwC,WACAE,EAAArF,OAAAsF,aAAA3F,SAAAgD,gBAAA0C,UACA,MAAA,CAAAE,IAAAN,EAAAM,IAAAF,EAAAG,KAAAP,EAAAO,KAAAL,CAAA,CACA,EAEA,SAAAM,mBAAAxE,GACA,IAAAgE,EAAAhE,EAAAiE,sBAAA,EACAQ,EAAA1F,OAAA2F,aAAAhG,SAAAgD,gBAAAiD,aACAC,EAAA7F,OAAA8F,YAAAnG,SAAAgD,gBAAAoD,YAEAC,EAAAf,EAAAM,KAAAG,GAAA,GAAAT,EAAAM,IAAAN,EAAAgB,OACAC,EAAAjB,EAAAO,MAAAK,GAAA,GAAAZ,EAAAO,KAAAP,EAAAkB,MAEA,OAAAH,GAAAE,CACA,CAEA,IAAAE,YAAA,CACAC,GAAA,EACAC,GAAA,IACAC,GAAA,IACAC,GAAA,IACAC,GAAA,KACAC,IAAA,IANA,EASAC,cAAA,SAAA1F,GACA,IACA2F,EADAC,EAAA5F,GAAAA,EAAAwD,UAAAC,MAYA,OATAkC,EADAC,EACAT,YACAS,EACAC,MAAA,GADA,EAEAC,OAAA,SAAAC,GAAA,OAAAA,EAAArC,SAAA,gBAAA,CAAA,CAFA,EAGAsC,IAHA,EAIAH,MAAA,GAJA,EAKAG,IALA,GAQAL,CACA,EAIAM,UAAA,SAAAzE,EAAAiC,EAAAyC,GACA,IAAAC,EAAA,IAAAC,KACAD,EAAAE,QAAAF,EAAAG,QAAA,EAAAJ,CAAA,EACAxH,SAAA6H,OAAA,GAAA3G,OAAA4B,EAAA,GAAA,EAAA5B,OAAA6D,EAAA,WAAA,EAAA7D,OAAAuG,EAAAK,YAAA,CAAA,CACA,EAEAC,UAAA,SAAAjF,GACAkF,EAAAhI,SAAA6H,OAAAI,MAAA,UAAA/G,OAAA4B,EAAA,eAAA,CAAA,EACA,OAAAkF,GAAAA,EAAA,EACA,EAEAE,SAAA,CACAC,QAAA,CACAC,MAAA,OADA,EAGAC,MAAA,CACAC,YAAA,0BADA,CAJA,EAWAC,SAAA,SAAAF,EAAAG,GACAC,EAAAJ,EAAAK,WAAA,IAAA,EACA,OAAA,IAAArI,OAAAsI,MAAAF,EAAAD,CAAA,CACA,EAIAI,iBAAA,SAAAC,EAAAC,GAAA,IAAAC,EAAA,EAAArG,UAAAhC,QAAAiC,KAAAA,IAAAD,UAAA,GAAAA,UAAA,GAAAsG,aACA,IACA,OAAAxH,KAAAC,MAAAsH,EAAAE,QAAAJ,CAAA,CAAA,GAAAC,CAGA,CAFA,MAAAI,GACA,OAAAH,EAAAE,QAAAJ,CAAA,GAAAC,CACA,CACA,EAEAK,eAAA,SAAAN,EAAAO,GAAA,OAAA,EAAA1G,UAAAhC,QAAAiC,KAAAA,IAAAD,UAAA,GAAAA,UAAA,GAAAsG,cACAK,QAAAR,EAAAO,CAAA,CADA,EAEAE,cAAA,WAAA,IAAAP,EAAA,EAAArG,UAAAhC,QAAAiC,KAAAA,IAAAD,UAAA,GAAAA,UAAA,GAAAsG,aAAA,OACAO,YAEAC,OAAAC,mBAAAjI,KAAAkI,UAAAX,CAAA,CAAA,CAAA,EAAArI,OAAA,SAEAiJ,QAAA,CAHA,CADA,CADA,EAUAC,SAAA,SAAAC,EAAAC,GAAA,IAAAC,EAAA,EAAArH,UAAAhC,QAAAiC,KAAAA,IAAAD,UAAA,GAAAA,UAAA,GAAA,MAGA,OAAAlC,MAAAwJ,KACA,CAAAtJ,OAAA,GAHAoJ,EAAAD,GACAE,CAEA,EACA,SAAAE,EAAAC,GAAA,OAAA,IAAAxC,KAAAmC,EAAAM,QAAA,EAAAJ,EAAAG,CAAA,CAAA,CAFA,CAIA,EAEAE,aAAA,SAAAC,GACA,IAAAC,EAEA,OAAAD,GACA,IAAA,OACAC,EAAA,EACA,MACA,IAAA,QACAA,EAAA,GACA,MACA,IAAA,OACAA,EAAA,IACA,MAEA,QACAA,EAAAD,CAZA,CAeA,IAAAE,EAAA,IAAA7C,KACAoC,EAAAS,EACAV,EAAA,IAAAnC,MAAA,IAAAA,MAAA8C,QAAAD,EAAAE,QAAA,GAAAH,EAAA,EAAA,CAAA,EACA,OAAAV,SAAAC,EAAAC,CAAA,CACA,EAGAY,gBAAA,SAAAC,EAAAC,GAAA,OACAC,KAAAC,MAAAD,KAAAE,OAAA,GAAAH,EAAAD,GAAAA,CAAA,CADA,EAGAK,MAAA,CACAlL,SAAAA,SACA2G,YAAAA,YACArG,OAAAA,OACAE,gBAAAA,gBACAK,SAAAA,SACAU,QAAAA,QACAuD,SAAAA,SACAK,SAAAA,SACArD,SAAAA,SACAY,UAAAA,UACAK,SAAAA,SACAO,UAAAA,UACAS,cAAAA,cACAC,SAAAA,SACAuB,UAAAA,UACAS,mBAAAA,mBACAkB,cAAAA,cACAO,UAAAA,UACAQ,UAAAA,UACAQ,SAAAA,SACAL,SAAAA,SACAU,iBAAAA,iBACAO,eAAAA,eACAG,cAAAA,cACAM,SAAAA,SACAQ,aAAAA,aACAM,gBAAAA,gBACAvF,YAAAA,WA5BA,EC7OA8F,aAAA,WACA,IAAAC,EAAA7K,OAAA6K,GACAC,EAAAnL,SAAAoL,cAAA,MAAA,EAEAF,EAAAG,MAAA,GAAApG,SAAAkG,EAAA,OAAA,EACAD,EAAAI,OAAA,GAAArG,SAAAkG,EAAA,QAAA,EACAD,EAAAK,QAAA,GAAAtG,SAAAkG,EAAA,SAAA,EACAD,EAAAM,OAAA,GAAAvG,SAAAkG,EAAA,QAAA,EACAD,EAAAO,IAAA,GAAAxG,SAAAkG,EAAA,KAAA,EACAD,EAAAQ,OAAA,GAAAzG,SAAAkG,EAAA,QAAA,EACAD,EAAAS,KAAA,GAAA1G,SAAAkG,EAAA,MAAA,EACAD,EAAAU,GAAA,GAAA3G,SAAAkG,EAAA,IAAA,EACAD,EAAAW,KAAA,GAAA5G,SAAAkG,EAAA,MAAA,EACAD,EAAAY,OAAA,GAAA7G,SAAAkG,EAAA,QAAA,EACAD,EAAAa,IAAA,GAAA9G,SAAAkG,EAAA,KAAA,EACAD,EAAAc,QAAA,GAAA/G,SAAAkG,EAAA,SAAA,EACAc,UAAAC,UAAAjE,MAAA,OAAA,GAAAhD,SAAAkG,EAAA,QAAA,CACA,ECnBAgB,Q,WACA,SAAAA,EAAAC,GAAAC,gBAAAC,KAAAH,CAAA,EACAG,KAAAF,KAAAA,CACA,C,6CAEA,SAAAvH,GACAyH,KAAAC,YAAA,GAAAD,KAAAF,KAAAtH,UAAAI,IAAAL,CAAA,CACA,C,2BAEA,SAAAA,GACAyH,KAAAC,YAAA,GAAAD,KAAAF,KAAAtH,UAAAM,OAAAP,CAAA,CACA,C,2BAEA,SAAAA,GACAyH,KAAAC,YAAA,GAAAD,KAAAF,KAAAtH,UAAA0H,OAAA3H,CAAA,CACA,C,wBAEA,SAAAA,GACAyH,KAAAC,YAAA,GAAAD,KAAAF,KAAAtH,UAAA2H,SAAA5H,CAAA,CACA,C,oBAEA,SAAAgE,GACA,GAAAyD,KAAAC,YAAA,EACA,IACA,OAAA/K,KAAAC,MAAA6K,KAAAF,KAAA1K,QAAA4K,KAAA3L,SAAAkI,CAAA,EAAA,CAGA,CAFA,MAAAlH,GACA,OAAA2K,KAAAF,KAAA1K,QAAA4K,KAAA3L,SAAAkI,CAAA,EACA,CAEA,OAAA,IACA,C,oBAEA,SAAA/F,GACA,OAAAwJ,KAAAC,YAAA,GAAAD,KAAAF,KAAAtJ,EACA,C,4BAEA,SAAAA,EAAAiC,GACAuH,KAAAC,YAAA,GAAAD,KAAAF,KAAAM,aAAA5J,EAAAiC,CAAA,CACA,C,+BAEA,SAAAjC,GACAwJ,KAAAC,YAAA,GAAAD,KAAAF,KAAAO,gBAAA7J,CAAA,CACA,C,uBAEA,SAAAA,EAAAiC,GACAuH,KAAAC,YAAA,IAAAD,KAAAF,KAAAtJ,GAAAiC,EACA,C,kBAEA,SAAA6H,EAAAC,GACAP,KAAAC,YAAA,GAAAD,KAAAF,KAAAlM,iBAAA0M,EAAAC,CAAA,CACA,C,2BAEA,WACA,MAAA,CAAA,CAAAP,KAAAF,IACA,C,wBAGA,SAAAxL,GACAC,EAAAD,EAAAE,QAAA,gBAAA,SAAAC,EAAAC,GAAA,OAAAA,EAAAA,EAAAC,YAAA,EAAA,EAAA,CAAA,EACA,MAAA,GAAAC,OAAAL,EAAAM,OAAA,EAAA,CAAA,EAAAC,YAAA,CAAA,EAAAF,OAAAL,EAAAM,OAAA,CAAA,CAAA,CACA,C,SC3DA2L,QAAA,IAAAzM,OAAA0M,SCCAC,eDAAF,QAAAG,QAAA,CACAC,KAAA,GADA,EAGAJ,QAAA5H,IAAA,eAAA,ECHA,WAOA,SAAAiI,EAAA7L,GAAA,IAAA8L,EAAA,EAAA1K,UAAAhC,QAAAiC,KAAAA,IAAAD,UAAA,GAAAA,UAAA,GAAA,EACA4C,EAAAhE,EAAAiE,sBAAA,EAEA,OACA,EAAAD,EAAA+H,QACA/H,EAAAM,IAAAwH,GACA,EAAA9H,EAAAgI,OACAhI,EAAAO,MAAAxF,OAAA8F,YAAAnG,SAAAgD,gBAAAoD,cACAd,EAAAM,KAAAvF,OAAA2F,aAAAhG,SAAAgD,gBAAAiD,aAEA,CAhBA,IAAAsH,EAAAvN,SAAAwN,iBAAA,mBAAA,EACAC,EAAA,CACAzN,SAAAoL,cAAA,4CAAA,EACApL,SAAAoL,cAAA,oCAAA,GAeAmC,EAAA7M,QACA6M,EAAAG,QAAA,SAAAC,GAEA,IAAAC,EAAA5C,MAAA3J,QAAAsM,EAAA,YAAA,EAMAE,EAAAxN,OAAAU,EAAA+M,MALA,CACAC,OAAA,qBACAX,UAAA,EACAY,WAAA,IAHA,EAOAJ,CAFA,EAAAG,EAAAF,EAAAE,OAAAX,EAAAS,EAAAT,UAAAY,EAAAH,EAAAG,WAMAC,EAAAjO,SAAAkO,eAAAH,CAAA,EAgBA1N,OAAAH,iBAAA,SAbA,WAEAG,OAAA8N,WAAA,eAAAjN,OAAA8J,MAAAvE,YAAAuH,GAAA,KAAA,CAAA,EACAI,UAEAjB,EAAAc,EAAAb,CAAA,EAGApC,MAAA/F,SAAA0I,EAAA,MAAA,EAFA3C,MAAA7F,YAAAwI,EAAA,MAAA,EAKA,CAEA,EAUAF,EAAAC,QACA,SAAAW,GAAA,OACAA,GACAA,EAAAnO,iBAAA,QAAA,WAVA8K,MAAApG,SAWAyJ,EAXA,WAAA,EAEAlB,EAAAc,EAAAb,CAAA,GACApC,MAAA7F,YAAAwI,EAAA,MAAA,EAFA3C,MAAA/F,SAAA0I,EAAA,MAAA,CASA,CAAA,CAFA,CADA,CAOA,CA/CA,CAiDA,GCrEAW,W,WACA,SAAAA,EAAAC,EAAAC,GAAAnC,gBAAAC,KAAAgC,CAAA,EACAhC,KAAAiC,QAAA,IAAApC,QAAAoC,CAAA,EACAjC,KAAAkC,OAAAC,cAAA,CACAC,qBAAA,QADA,EAEAF,CAFA,CAIA,C,yCAEA,WACAlC,KAAAqC,YAAA,EACArC,KAAAsC,kBAAA,EACAtC,KAAAuC,iBAAA,CACA,C,2BAEA,WACA,IAAAC,EAAAxC,KAAAiC,QAAAhN,KAAA,aAAA,EAAAwN,EAAAD,EAAAC,KAAAC,EAAAF,EAAAE,QAAAC,EAAAH,EAAAG,gBACA3C,KAAA0C,QAAA,IAAA7C,QAAAnM,SAAAkO,eAAAc,CAAA,CAAA,EACA1C,KAAA2C,gBAAA,IAAA9C,QAAAnM,SAAAkO,eAAAe,CAAA,CAAA,EACA3C,KAAA4C,eAAAlP,SACAkO,eAAAa,CADA,EAEAvB,iBAAA,wBAFA,CAGA,C,iCAEA,WAAA,IAAA2B,EAAA7C,KAEAA,KAAAiC,QAAAa,GAAA,QAAA,WACA,kBAAAD,EAAAZ,QAAAc,KAAA,eAAA,GACAF,EAAAH,QAAA/J,SAAAkK,EAAAX,OAAAE,oBAAA,EACAS,EAAAF,gBAAA9J,YAAAgK,EAAAX,OAAAE,oBAAA,EAEAS,EAAAG,gBAAA,EAEAH,EAAAD,eAAAxB,QAAA,SAAApM,GACAiO,EAAA,IAAApD,QAAA7K,CAAA,EACAiO,EAAAC,QAAA,UAAA,CAAA,CAAA,EACAD,EAAA7C,aAAA,UAAA,CAAA,CAAA,CACA,CAJA,IAQAyC,EAAAM,cAAA,EACAN,EAAAD,eAAAxB,QAAA,SAAApM,GACAiO,EAAA,IAAApD,QAAA7K,CAAA,EACAiO,EAAAC,QAAA,UAAAL,EAAAZ,QAAAc,KAAA,SAAA,CAAA,EACAE,EAAA7C,aAAA,UAAAyC,EAAAZ,QAAAc,KAAA,SAAA,CAAA,CACA,CAJA,EAKA,CArBA,CAsBA,C,gCAEA,WAAA,IAAAK,EAAApD,KAEAA,KAAA4C,eAAAxB,QAAA,SAAApM,GACA,IAAA6K,QAAA7K,CAAA,EACA8N,GAAA,QAAA,WACA,kBAAAM,EAAAnB,QAAAc,KAAA,eAAA,IACAK,EAAAnB,QAAAiB,QAAA,gBAAA,CAAA,CAAA,EACAE,EAAAnB,QAAA7B,aAAA,gBAAA,eAAA,EACAgD,EAAAnB,QAAAiB,QAAA,UAAA,CAAA,CAAA,EACAE,EAAAnB,QAAA7B,aAAA,UAAA,CAAA,CAAA,EAEAgD,EAAAV,QAAA7J,YAAAuK,EAAAlB,OAAAE,oBAAA,EACAgB,EAAAT,gBAAAhK,SAAAyK,EAAAlB,OAAAE,oBAAA,GAGAiB,mBAAAD,EAAAR,cAAA,EAAAU,MAAA,SAAArB,GAAA,OAAAA,EAAAsB,OAAA,CAAA,IACAH,EAAAnB,QAAAiB,QAAA,gBAAA,CAAA,CAAA,EACAE,EAAAnB,QAAA7B,aAAA,gBAAA,CAAA,CAAA,GAGAiD,mBAAAD,EAAAR,cAAA,EAAAU,MAAA,SAAArB,GAAA,MAAA,CAAAA,EAAAsB,OAAA,CAAA,IACAH,EAAAJ,gBAAA,EACAI,EAAAD,cAAA,EAEA,CApBA,CAqBA,CAvBA,CAwBA,C,+BAEA,WACAnD,KAAAiC,QAAAiB,QAAA,gBAAA,CAAA,CAAA,EACAlD,KAAAiC,QAAA5B,gBAAA,eAAA,EACAL,KAAAiC,QAAAiB,QAAA,UAAA,CAAA,CAAA,EACAlD,KAAAiC,QAAA7B,aAAA,UAAA,CAAA,CAAA,CACA,C,6BAEA,WACAJ,KAAA0C,QAAAc,YAAAxD,KAAAkC,OAAAE,oBAAA,EACApC,KAAA2C,gBAAAa,YAAAxD,KAAAkC,OAAAE,oBAAA,CACA,C,SAGA,SAAAqB,iBACA,IAAAC,EAAAhQ,SAAAwN,iBAAA,mBAAA,EAEAwC,EAAAtP,QACAsP,EAAAtC,QAAA,SAAApM,GACA,IAAAgN,WAAAhN,CAAA,EACA2O,KAAA,CACA,CAHA,CAKA,CCpGA,IAAAC,SAAA,WAyCA,SAAAC,EAAAC,GACAA,IACAA,EACA1K,UAAA0K,EAAAC,aAEA,CA7CA,IAAAC,EACA,QADAA,EAEA,eAFAA,EAGA,QAHAA,EAIA,QAGAC,EACA,gBADAA,EAEA,gBAFAA,EAGA,4BAHAA,EAKA,mDALAA,EAMA,sCANAA,EAOA,YAPAA,EAQA,oBARAA,EASA,iBATAA,EAUA,qBAVAA,EAWA,sBAGAC,EACA,iBADAA,EAEA,eAFAA,EAGA,OAGAC,EACA,QAGAC,EAAA1Q,SAAAoL,cAAAmF,CAAA,EACAI,EAAA3Q,SAAAwN,iBAAA+C,CAAA,EACAK,EAAA5Q,SAAAoL,cAAAmF,CAAA,EACAM,EAAA7Q,SAAAoL,cAAAmF,CAAA,EACAO,EAAA9Q,SAAAoL,cACAmF,CADA,EAYApQ,WAAA,WACAgQ,EAAAW,CAAA,CACA,EAAA,GAFA,EAIA9Q,SAAAwN,iBAAA+C,CAAA,EAAA7C,QAAA,SAAApM,GACAA,EAAApB,iBAAAoQ,EAAA,SAAA3O,GACA,IAAAoP,EAAApP,EAAAqP,cACAD,EAAAjM,UAAAI,IAAA,QAAA,EAEA7E,OAAA8F,WAAA,KACA,CAAAxE,EAAAoM,OAAAjJ,UAAA2H,SAAA,eAAA,IACAiE,EAAAO,MAAApL,KAAA,SAGAkL,EAAAjM,UAAA2H,SAAA+D,CAAA,GACAO,EAAAjM,UAAAM,OAAAoL,CAAA,CACA,CAXA,CAYA,CAbA,EAeAG,EAAAjD,QAAA,SAAApM,GACAA,EAAApB,iBAAAoQ,EAAA,WACAM,EAAAM,UAAA,GACAL,EAAA/L,UAAAM,OAAAoL,CAAA,EACA,IAAAW,EAAAnR,SAAAoL,cACAmF,CADA,EAGAJ,EAAAgB,CAAA,CACA,CAPA,CAQA,CATA,EAaAP,IACAA,EAAAlE,aAAA,cAAA,mBAAA,EACAkE,EAAA1Q,iBAAAoQ,EAAA,SAAA3O,GACAA,EAAAoM,OAAAqD,YAAA1Q,QAAA,GACAmQ,EAAA/L,UAAAM,OAAAoL,CAAA,EACA,SAAA7O,EAAAoM,OAAAmD,YACAvP,EAAAoM,OAAAmD,UAAA,KAGAL,EAAA/L,UAAAI,IAAAsL,CAAA,EAGAW,EAAAnR,SAAAoL,cACAmF,CADA,EAGAJ,EAAAgB,CAAA,CACA,CAdA,GAiBAP,GACA5Q,SAAAwN,iBAAA+C,CAAA,EAAA7C,QAAA,SAAApM,GACAA,EAAApB,iBAAAoQ,EAAA,SAAA3O,GACAoP,EAAApP,EAAAqP,cACAK,EAAArG,MAAA3J,QAAA0P,EAAAN,CAAA,EACAzQ,SAAAoL,cAAA,GAAAlK,OACAqP,EADA,QAAA,EAAArP,OACAuP,EADA,IAAA,EAAAvP,OACAmQ,EADA,IAAA,CAAA,EAGAvM,UAAA0H,OAAAgE,CAAA,CACA,CAPA,CAQA,CATA,EAYAxQ,SAAAwN,iBAAA+C,CAAA,EAAA7C,QAAA,SAAApM,GACAA,EAAApB,iBAAAoQ,EAAA,WACAI,EAAAO,MAAApL,KAAA,CACA,CAFA,CAGA,CAJA,EAOAmF,MAAA5K,OAAA,WACA,IAAA+Q,EAAAnR,SAAAoL,cACAmF,CADA,EAGAJ,EAAAgB,CAAA,CACA,CALA,EAQAP,GACAvQ,OAAAiR,OAAAlC,GAAAkB,EAAA,SAAAiB,GACAvR,SAAAoL,cAAAmF,CAAA,EAAAW,WACAK,EAAAC,KACA,CAHA,CAIA,ECpIAC,YAAA,WACApR,OAAAqR,SACA1R,SAAAwN,iBAAA,YAAA,EACAE,QAAA,SAAAiE,GACA,IAAAC,EAAA5G,MAAA3J,QAAAsQ,EAAA,SAAA,EACAE,EAAA,IAAAxR,OAAAqR,QAAAC,EAAAlD,cAAA,CACAqD,eAAA,EADA,EAEAF,CAFA,CAAA,EAwDA,OAnDA5R,SAAAwN,iBAAA,mBAAA,EAEAE,QAAA,SAAAqE,GACA,SAAAC,IACAD,EAAAvE,iBAAA,UAAA,EAAAE,QAAA,SAAAuE,GACA,IAAAC,EAAAD,EAAA7G,cACA,wBADA,EAGA+G,EAAAF,EAAA7G,cACA,0BADA,EAIA6G,EAAA7G,cAAA,YAAA,IACA8G,IAIA,MAFA,OAAAE,EAAAF,EACA9G,cAAA,4BADA,GAAA,KAAA,EAAAgH,EAEAC,aAAA,YAFA,IAIAJ,EAAAnN,UAAAM,OAAA,SAAA,EACA6M,EAAAnN,UAAAI,IAAA,OAAA,IAEA+M,EAAAnN,UAAAM,OAAA,OAAA,EACA6M,EAAAnN,UAAAI,IAAA,SAAA,IAIAiN,IACAF,EAAAK,qBAAA,QAAA,EAAA5R,QACAuR,EAAAnN,UAAAM,OAAA,SAAA,EACA6M,EAAAnN,UAAAI,IAAA,OAAA,IAEA+M,EAAAnN,UAAAM,OAAA,OAAA,EACA6M,EAAAnN,UAAAI,IAAA,SAAA,IAMA,CAnCA,CAoCA,CAEA6M,EAAA7R,iBAAA,SAAA,WACA8R,EAAA,CACA,CAFA,EAIAL,EAAAzR,iBAAA,SAAA,WACA8R,EAAA,CACA,CAFA,CAGA,CA/CA,EAiDAH,CACA,CA3DA,CA6DA,EChEAU,iBAAA,WACA,IAAAhC,EACA,UADAA,EAEA,4BAGAD,EACA,QADAA,EAEA,kBAGAkC,EACA,UAGAC,EACA,OAGAC,EAAA1S,SAAAwN,iBAAA+C,CAAA,EACAoC,EAAA,CAAA,EAmCAC,GAlCAF,EAAAhF,QAAA,SAAAiE,GACA,IAAAkB,EAAA,IAAAxS,OAAAyS,UAAAC,MAAApB,CAAA,EACA1E,EAAAwB,cAAA,CACAuE,SAAA,CAAA,EACAC,cAAA,EACAC,SAAA,CAAA,EACAC,iBAAA,IAJA,EAKAnI,MAAA3J,QAAAsQ,EAAAa,CAAA,CALA,EAOAU,EAAAjG,EAAAiG,SAAAF,EAAA/F,EAAA+F,SAAAC,EAAAhG,EAAAgG,cAEAC,IACAE,EAAApI,MAAAjD,UAAA,QAAA,EACA4K,EAAA,OAAAS,GAGAJ,GAAAL,GACAxS,WAAA,WACA0S,EAAAQ,KAAA,CACA,EAAAJ,CAFA,EAKAtB,EAAAzR,iBAAAoQ,EAAA,SAAA3O,GACAL,EAAAK,EAAAqP,cACAsC,EAAA7E,cAAA,CACA0E,iBAAA,KACAD,SAAA,CAAA,CAFA,EAGAlI,MAAA3J,QAAAC,EAAAkR,CAAA,CAHA,EAKAc,EAAAJ,UACAlI,MAAAzD,UAAA,SAAA,CAAA,EAAA+L,EAAAH,gBAAA,CACA,CATA,CAUA,CAhCA,EAkCAnT,SAAAoL,cAAAmF,CAAA,GACAqC,GACAA,EAAA1S,iBAAAoQ,EAAA,SAAAiD,GAAA,IACAC,EADAD,EAAAvC,cACAqB,aAAA,MAAA,EACAQ,EAAA,IAAAxS,OAAAyS,UAAAC,MAAA/S,SAAAoL,cAAAoI,CAAA,CAAA,EAGAlS,EAAAuR,EAAAY,SACAzI,MAAApG,SAAAtD,EAAAmR,CAAA,EAAAI,EAAAQ,KAAA,EAAAR,EAAAa,KAAA,CACA,CAPA,CAQA,EChEAC,SAAA,WACA,IAAAC,EAAA5T,SAAAkO,eAAA,eAAA,EAOA2F,GANAD,GACAA,EAAA1T,iBAAA,iBAAA,WACAF,SAAAoL,cAAA,kBAAA,EACA0I,OAAA,CACA,CAHA,EAKA9T,SAAAwN,iBAAA,aAAA,GACAqG,GACAA,EAAAnG,QAAA,SAAAqG,GACA,IAAAC,EAAA,IAAA3T,OAAAyS,UAAAmB,QAAAF,CAAA,EAEAA,EAAA7T,iBAAA,YAAA,WAAA,OAAA8T,EAAAX,KAAA,CAAA,CAAA,EACAU,EAAA7T,iBAAA,aAAA,WAAA,OAAA8T,EAAAN,KAAA,CAAA,CAAA,EAEAK,EAAA7T,iBAAA,QAAA,SAAAyB,GACAA,EAAAuS,gBAAA,EACA5S,EAAAK,EAAAoM,OACAzM,EAAAoL,aAAA,sBAAA,QAAA,EACAsH,EAAAX,KAAA,EACA/R,EAAAoL,aAAA,sBAAA,mBAAA,EACAsH,EAAAG,OAAA,EACAC,EAAApJ,MAAA3J,QAAAC,EAAA,MAAA,EACAtB,SAAAoL,cAAAgJ,CAAA,EACAN,OAAA,EACA9T,SAAAqU,YAAA,MAAA,CACA,CAXA,CAYA,CAlBA,CAmBA,EC7BAC,YAAA,WACAjU,OAAAkU,SACAvU,SAAAwN,iBAAA,gBAAA,EACAE,QAAA,SAAAtB,GACA,IAAAoI,EAAAxJ,MAAA3J,QAAA+K,EAAA,SAAA,EAAAqI,EAAAD,EAAAC,SAAAxH,EAAAyH,yBAAAF,EAAAG,SAAA,EACAJ,EAAA,IAAAlU,OAAAkU,QAAAK,QAAAxI,EAAAqI,EAAAhG,cAAA,CACApE,SAAA,CADA,EAEA4C,CAFA,CAAA,EAIAsH,EAAAM,MAGAC,QAAAD,MAAAN,EAAAM,KAAA,EAFAN,EAAAQ,MAAA,CAIA,CAXA,CAaA,EChBAC,cAAA,WACA,IAAAC,EACA,OADAA,EAEA,oBAFAA,EAGA,iBAHAA,EAIA,0BAJAA,EAKA,eALAA,EAMA,iBAGA3E,EACA,aADAA,EAEA,YAGAmC,EACA,aAGAyC,EAAAlV,SAAAwN,iBAAAyH,CAAA,EACAE,EAAAnV,SAAAwN,iBACAyH,CADA,EAGAG,EAAApV,SAAAoL,cAAA6J,CAAA,EAEAE,EAAAzU,UAEA2U,EAAA,IAAAhV,OAAAiV,UAAAC,SAAAJ,EAAA,CACAK,UAAAP,EACAQ,MAAA,IACAC,OAAA,CACAC,SAAAV,EACAW,oBAAA,CAAA,CAFA,EAIAC,WAAA,CACAL,UAAAP,EACAa,mBAAA,GAAA5U,OAAAyO,mBAAAwF,CAAA,EAAA,CAAAC,EAAA,CAFA,CAPA,CAAA,GAcAhG,GAAAkB,EAAA,WACA4E,EAAAxH,QAAA,SAAAqI,GACA/K,MAAApG,SAAAmR,EAAAtD,CAAA,GACAsD,EAAAjR,UAAAM,OAAAqN,CAAA,CACA,CAHA,CAIA,CALA,EAQA4C,EAAAjG,GAAAkB,EAAA,SAAA0F,GAAA,IAAA1U,EAAA0U,EAAAzU,KAAA0U,OACAC,EAAA5U,EAAA6U,QAAAlB,CAAA,EACAmB,EAAAF,EAAA9K,cAAA6J,CAAA,EAEA3T,EAAA+U,oBAAAH,EAAAI,YAAAF,CAAA,CACA,CALA,EAOA,EC3DAG,iBAAA,WAEA,IACAC,EAAAA,EADAnW,OAAA6K,GAAAO,IAAA,IACA+K,EACA,oBADAA,EAEA,qBAMAxW,SAAAwN,iBAHA,mBAGA,EAAAE,QAAA,SAAA+I,GACAA,EAAAvW,iBAAAsW,EAAA,SAAA7U,GACA,IAAA+U,EAAA/U,EAAAqP,cACA0F,EAAAC,YAAAD,EAAAtQ,cACAsQ,EAAAzF,MAAA2F,cAAA,GAAA1V,OAAAS,EAAAoM,OAAAsI,mBAAApQ,aAAA,IAAA,EAEA,CALA,EAMAwQ,EAAAvW,iBAAAsW,EAAA,SAAA7U,GACAA,EAAAqP,cAAAC,MAAA2F,cAAA,EACA,CAFA,CAIA,CAXA,EAaA,ECvBAC,gBAAA,WACA,IAAAC,EAAA9W,SAAAoL,cAAA,0BAAA,EAEA0L,GACAA,EAAA5W,iBAAA,YAAA,SAAAyB,GACA,IAIAoV,EAHApV,EAAAoM,OAAAlJ,UAAAG,SAAA,iBAAA,GACA,IAAA3E,OAAA8F,cAEA4Q,EAAA,IAAA1W,OAAAyS,UAAAkE,SAAArV,EAAAoM,MAAA,GAGA0F,SAAA3O,UAAAI,IAAA,MAAA,EACA6R,EAAAE,MAAAnS,UAAAI,IAAA,MAAA,EACA6R,EAAAE,MAAAvK,aAAA,iBAAA,MAAA,EAEA/K,EAAAoM,OAAAmJ,WAAAhX,iBAAA,aAAA,WACA6W,EAAArD,KAAA,CACA,CAFA,EAIA,CAhBA,CAkBA,ECjBAyD,cAFA9W,OAAA+W,WAAA/W,OAAA+W,SAAAC,aAAA,CAAA,GAEA,WACA,IAAAvJ,EAAAzN,OAAAU,EAAA+M,MAEAyC,EACA,kBADAA,EAGA,cAHAA,EAKA,gCAGAC,EACA,qBADAA,EAEA,mBAFAA,EAIA,gBAGAC,EACA,UAGAH,EACA,YADAA,EAEA,cAFAA,EAGA,WAGAgH,EAAAtX,SAAAwN,iBAAA+C,CAAA,EAEA+G,EAAA5W,QACA4W,EAAA5J,QAAA,SAAAiE,GACA,IAAAC,EAAA5G,MAAA3J,QAAAsQ,EAAAlB,CAAA,EAEAlP,GAAAqQ,EADAA,GAAA,IACArQ,MAAA,GACA0L,EAAAa,EACA,CACAyJ,IAAA,eACAC,eAAA,CAAA,EACAC,kBAAA9F,EAAAvG,cAAAmF,CAAA,EACAmH,gBAAA/F,EAAAvG,cAAAmF,CAAA,EAAAW,UACAyG,eAAA,KACAC,gBAAA,KACAC,YAAA,GACAC,iBAAA,CAAA,EACAC,aAAA,IACA9H,KAAA,WACA,IAAA+H,EAAA1L,KAEA/K,EAAAb,QACAa,EAAAmM,QAAA,SAAAzD,GACA,IAAAgO,EAAA,CAAAnV,KAAAmH,EAAAnH,KAAAoV,KAAAjO,EAAAiO,IAAA,EACAF,EAAA/K,QAAAkL,UAAAC,KAAAJ,EAAAC,CAAA,EACAD,EAAA/K,QAAAoL,UAAAD,KAAAJ,EAAAC,EAAA,GAAA/W,OAAA+I,EAAAsN,IAAA,GAAA,EAAArW,OAAA+I,EAAAnH,IAAA,CAAA,CACA,CAJA,EAOAkV,EAAA5I,GAAAkB,EAAA,WACA,aAAAsB,IAEA,IAAAA,EAAA0G,UACA,EAAA3G,EAAAnE,iBAAA+C,CAAA,EAAA7P,QAEAiR,EAAAvG,cAAAmF,CAAA,EAAAnL,OAAA,EAEA,IAAAwM,EAAA0G,UAAA,EAAAhM,KAAAiM,MAAA7X,QACA4L,KAAAkM,WAAAlM,KAAAiM,MAAA,EAAA,EAGA,CAZA,CAaA,EACA1D,MAnCA,SAmCA4D,EAAAC,GACA,GAAAD,EAAAE,eAAA,CACAF,EAAAE,eAAA7T,UAAAI,IAAA,UAAA,EACA,UAAA,OAAAwT,GAAAA,EAAA7D,QACA6D,EAAAA,EAAA7D,OAHA,IAAA+D,EAAAC,EAAAC,2BAKAL,EAAAE,eAAAnL,iBAAA,wBAAA,CALA,EAAA,IAKA,IAAAqL,EAAAE,EAAA,EAAA,EAAAH,EAAAC,EAAAG,EAAA,GAAAC,MAAAL,EAAA7T,MACAqM,YAAAsH,CANA,CAAA,MAAAQ,GAAAL,EAAAlX,EAAAuX,CAAA,CAAA,CAAA,QAAAL,EAAAM,EAAA,CAAA,CAQA,CACA,CA7CA,EA+CAvH,CAhDA,EAqDAwH,GAFAzH,EAAAvG,cAAAmF,CAAA,EAAAW,UAAA,GAEA,IAAA7Q,OAAA+W,SAAAzF,EAAA1E,CAAA,GAEAmM,EAAAhK,GAAAkB,EAAA,WACAqB,EAAAvG,cAAAmF,CAAA,GACAoB,EACAvG,cAAAmF,CADA,EAEAzL,UAAAM,OAAAoL,CAFA,EAIAmB,EAAA7M,UAAAI,IAAAsL,CAAA,CACA,CAPA,EAQA4I,EAAAhK,GAAAkB,EAAA,WACAqB,EAAAvG,cAAAmF,CAAA,GACAoB,EAAAvG,cAAAmF,CAAA,EAAAzL,UAAAM,OAAAoL,CAAA,EAEAmB,EAAA7M,UAAAI,IAAAsL,CAAA,CACA,CALA,EAMA4I,EAAAhK,GAAAkB,EAAA,WACAqB,EAAAvG,cAAAmF,CAAA,GACAoB,EAAAvG,cAAAmF,CAAA,EAAAzL,UAAAM,OAAAoL,CAAA,EAGAmB,EAAA7M,UAAAI,IAAAsL,CAAA,CACA,CANA,CAOA,CAhFA,CAiFA,GCrHA6I,mBAAA,WAIA,IAAAC,EAAAtZ,SAAAwN,iBAAA,mBAAA,EAGAhN,MAAA+Y,UAAAC,MAAApB,KAAAkB,CAAA,EAAA5L,QAAA,SAAA0I,GACAA,EAAAlW,iBACA,SACA,SAAA0M,GACAwJ,EAAAqD,cAAA,IACA7M,EAAA8M,eAAA,EACA9M,EAAAsH,gBAAA,GAGAkC,EAAAtR,UAAAI,IAAA,eAAA,CACA,EACA,CAAA,CAVA,CAYA,CAbA,CAcA,ECnBA4I,MAAAzN,OAAAU,EAAA+M,MAEA6L,eAAA,SAAArY,EAAAkN,GAAA,IACAvB,EAAAa,MACA,CACA8L,YAAA,eACAC,SAAA,CAAA,EACAC,UAAA9Z,SAAAoL,cAAA,MAAA,EAAAiH,aAAA,KAAA,EACA0H,cAAA,CACAlU,KAAA,kBACAmU,OAAA,QACA1M,MAAA,uCAHA,EAKA2M,WAAA,CACAC,MAAA,QACAC,KAAA,OACAC,IAAA,KAHA,CATA,EAeA5L,CAhBA,EAkBA6L,EAAA,IAAAha,OAAAia,aAAAC,SAAAjZ,EAAA2L,CAAA,EAKA,OAJAoN,EAAAG,OAAA,EACA,OAAAC,EAAAza,SACAoL,cAAA,yBADA,IAAAqP,EAEAva,iBAAA,yBAAA,WAAA,OAAAma,EAAAK,WAAA,CAAA,CAFA,EAGAL,CACA,EAEAM,iBAAA,WACA3a,SAAAwN,iBAAA,iBAAA,EACAE,QAAA,SAAAiE,GACA,IAAA1E,EAAAjC,MAAA3J,QAAAsQ,EAAA,UAAA,EACAgI,eAAAhI,EAAA1E,CAAA,CACA,CAHA,CAIA,EAEA2N,aAAA,CACAjB,eAAAA,eACAgB,iBAAAA,gBAFA,ECvCAE,cAAA,WACAxa,OAAAya,WACAza,OAAAya,UAAA,CACAC,SAAA,gBADA,CAAA,CAIA,ECLA,SAAAC,UACA,IAKAC,EALAC,EAAAlb,SAAA+O,KACAoM,EAAAnb,SAAAwN,iBAAA,YAAA,EAEA2N,EAAAza,QAAAL,OAAA+a,SAEAH,EAAA,CACAI,QAAA,CACA,CACAC,YAAA,QACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,YACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,eACAC,YAAA,gBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,eACAC,YAAA,kBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAAA,CAAAC,OAAA,EAAA,EAHA,EAKA,CACAJ,YAAA,gBACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,aACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,MACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,WACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAF,YAAA,qBACAC,QAAA,CACA,CAAAG,WAAA,IAAA,EACA,CAAAlZ,MAAA,SAAA,EACA,CAAAgZ,UAAA,EAAA,EALA,EAQA,CACAF,YAAA,mBACAC,QAAA,CACA,CAAAI,WAAA,EAAA,EACA,CAAAnZ,MAAA,SAAA,EACA,CAAAgZ,UAAA,EAAA,EALA,EAQA,CAAAF,YAAA,cAAAC,QAAA,CAAA,CAAAG,WAAA,KAAA,EAAA,EACA,CACAL,YAAA,UACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,iBACAC,YAAA,gBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,iBACAC,YAAA,kBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAAA,CAAAC,OAAA,GAAA,EAHA,GAMAG,KAAA,CACA,CACAP,YAAA,MACAC,YAAA,mBACAC,QAAA,CACA,CAAAI,WAAA,EAAA,EACA,CAAAnZ,MAAA,SAAA,EACA,CAAAgZ,UAAA,EAAA,EANA,EASA,CACAH,YAAA,MACAC,YAAA,qBACAC,QAAA,CACA,CAAAG,WAAA,IAAA,EACA,CAAAlZ,MAAA,SAAA,EACA,CAAAgZ,UAAA,EAAA,EANA,EASA,CACAH,YAAA,MACAC,YAAA,cACAC,QAAA,CAAA,CAAAG,WAAA,KAAA,EAHA,EAKA,CACAL,YAAA,iBACAC,YAAA,gBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,iBACAC,YAAA,kBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAAA,CAAAC,OAAA,GAAA,EAHA,EAKA,CACAJ,YAAA,YACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,MACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,eACAC,YAAA,gBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,eACAC,YAAA,kBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAAA,CAAAC,OAAA,EAAA,EAHA,EAKA,CACAJ,YAAA,gBACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,aACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,UACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,QACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,GAMAK,SAAA,CACA,CACAR,YAAA,MACAC,YAAA,mBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,MACAC,YAAA,qBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,iBACAC,YAAA,gBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,iBACAC,YAAA,kBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAAA,CAAAC,OAAA,GAAA,EAHA,EAKA,CACAJ,YAAA,YACAC,YAAA,MACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,MACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,CAAA,EAHA,EAKA,CACAH,YAAA,eACAC,YAAA,gBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,eACAC,YAAA,kBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,gBACAC,YAAA,gBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,gBACAC,YAAA,kBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,aACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,UACAC,YAAA,MACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,QACAC,YAAA,MACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,GAMAsZ,OAAA,CACA,CACAT,YAAA,QACAC,YAAA,WACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAJ,WAAA,EAAA,EACA,CAAAH,UAAA,CAAA,EAAA,EACA,CAAAE,WAAA,IAAA,EAPA,EAUA,CACAL,YAAA,YACAC,YAAA,WACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAJ,WAAA,CAAA,EAAA,EACA,CAAAH,UAAA,CAAA,EAAA,EACA,CAAAE,WAAA,IAAA,EAPA,EAUA,CACAL,YAAA,qBACAC,YAAA,MACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAJ,WAAA,CAAA,CAAA,EACA,CAAAH,UAAA,CAAA,CAAA,EACA,CAAAE,WAAA,IAAA,EAPA,EAUA,CACAL,YAAA,OACAC,YAAA,WACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAJ,WAAA,CAAA,EAAA,EACA,CAAAH,UAAA,CAAA,EAAA,EACA,CAAAE,WAAA,IAAA,EAPA,EAUA,CACAL,YAAA,eACAC,YAAA,WACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAJ,WAAA,CAAA,EAAA,EACA,CAAAH,UAAA,EAAA,EACA,CAAAE,WAAA,YAAA,EAPA,EAUA,CACAL,YAAA,gBACAC,YAAA,WACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAJ,WAAA,CAAA,EAAA,EACA,CAAAH,UAAA,CAAA,CAAA,EACA,CAAAE,WAAA,YAAA,EAPA,EAUA,CACAL,YAAA,aACAC,YAAA,WACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAJ,WAAA,CAAA,EAAA,EACA,CAAAH,UAAA,CAAA,EAAA,EACA,CAAAE,WAAA,IAAA,EAPA,EAUA,CACAL,YAAA,MACAC,YAAA,WACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAJ,WAAA,EAAA,EACA,CAAAH,UAAA,CAAA,EAAA,EACA,CAAAE,WAAA,IAAA,EAPA,EAUA,CACAL,YAAA,WACAC,YAAA,MACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAJ,WAAA,CAAA,EAAA,EACA,CAAAH,UAAA,CAAA,EAAA,EACA,CAAAE,WAAA,IAAA,EAPA,EAUA,CACAL,YAAA,UACAC,YAAA,WACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAJ,WAAA,EAAA,EACA,CAAAH,UAAA,CAAA,EAAA,EACA,CAAAE,WAAA,YAAA,EAPA,EAUA,CACAL,YAAA,0BACAC,YAAA,MACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAJ,WAAA,CAAA,EACA,CAAAH,UAAA,GAAA,EACA,CAAAE,WAAA,YAAA,EAPA,EAUA,CACAL,YAAA,8BACAC,YAAA,MACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAJ,WAAA,CAAA,EACA,CAAAH,UAAA,GAAA,EACA,CAAAE,WAAA,KAAA,EAPA,EAUA,CACAL,YAAA,0BACAC,YAAA,SACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAJ,WAAA,CAAA,EACA,CAAAH,UAAA,GAAA,EACA,CAAAE,WAAA,KAAA,EAPA,EAUA,CACAL,YAAA,6BACAC,YAAA,MACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAJ,WAAA,CAAA,EACA,CAAAH,UAAA,GAAA,EACA,CAAAE,WAAA,KAAA,EAPA,EAUA,CACAL,YAAA,iBACAC,YAAA,MACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAJ,WAAA,CAAA,EACA,CAAAH,UAAA,CAAA,EAAA,EACA,CAAAE,WAAA,KAAA,EAPA,EAUA,CACAL,YAAA,cACAC,YAAA,WACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAJ,WAAA,EAAA,EACA,CAAAH,UAAA,CAAA,EAAA,EACA,CAAAE,WAAA,IAAA,EAPA,GAWAM,MAAA,CACA,CACAX,YAAA,eACAC,YAAA,cACAC,QAAA,CAAA,CAAAG,WAAA,IAAA,EAAA,CAAAlZ,MAAA,SAAA,EAHA,GAMAyZ,eAAA,CACA,CACAZ,YAAA,MACAC,YAAA,MACAC,QAAA,CAAA,CAAAG,WAAA,IAAA,EAHA,EAKA,CACAL,YAAA,MACAC,YAAA,SACAC,QAAA,CAAA,CAAAG,WAAA,KAAA,EAAA,CAAAC,WAAA,MAAA,EAHA,EAKA,CACAN,YAAA,MACAC,YAAA,mBACAC,QAAA,CACA,CAAAI,WAAA,EAAA,EACA,CAAAnZ,MAAA,SAAA,EACA,CAAAgZ,UAAA,EAAA,EACA,CAAAE,WAAA,KAAA,EAPA,EAUA,CACAL,YAAA,MACAC,YAAA,qBACAC,QAAA,CACA,CAAAG,WAAA,KAAA,EACA,CAAAlZ,MAAA,SAAA,EACA,CAAAgZ,UAAA,EAAA,EANA,EASA,CACAH,YAAA,MACAC,YAAA,cACAC,QAAA,CAAA,CAAAG,WAAA,KAAA,EAHA,EAKA,CACAL,YAAA,iBACAC,YAAA,gBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,iBACAC,YAAA,kBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAAA,CAAAC,OAAA,GAAA,EAHA,EAKA,CACAJ,YAAA,YACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,YACAC,YAAA,gBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,YACAC,YAAA,kBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,oBACAC,YAAA,gBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,MACAC,YAAA,WACAC,QAAA,CAAA,CAAAC,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,MACAC,YAAA,gBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,MACAC,YAAA,kBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,OACAC,YAAA,WACAC,QAAA,CAAA,CAAAG,WAAA,IAAA,EAAA,CAAAlZ,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,OACAC,YAAA,gBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,eACAC,YAAA,gBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,eACAC,YAAA,kBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAAA,CAAAC,OAAA,EAAA,EAHA,EAKA,CACAJ,YAAA,gBACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,gBACAC,YAAA,gBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,gBACAC,YAAA,kBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,aACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,aACAC,YAAA,gBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,aACAC,YAAA,kBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,UACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,QACAC,YAAA,MACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAkZ,WAAA,IAAA,EAHA,EAKA,CACAL,YAAA,QACAC,YAAA,WACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAgZ,UAAA,EAAA,EAHA,EAKA,CACAH,YAAA,QACAC,YAAA,gBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,QACAC,YAAA,kBACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,QACAC,YAAA,SACAC,QAAA,CAAA,CAAAG,WAAA,KAAA,EAHA,EAKA,CACAL,YAAA,QACAC,YAAA,cACAC,QAAA,CAAA,CAAAG,WAAA,MAAA,EAHA,EAKA,CACAL,YAAA,QACAC,YAAA,mBACAC,QAAA,CAAA,CAAAG,WAAA,KAAA,EAHA,EAKA,CACAL,YAAA,QACAC,YAAA,qBACAC,QAAA,CAAA,CAAAG,WAAA,KAAA,EAHA,EAKA,CACAL,YAAA,QACAC,YAAA,cACAC,QAAA,CAAA,CAAAG,WAAA,KAAA,EAHA,GAMAQ,WAAA,CACA,CACAb,YAAA,iBACAC,YAAA,MACAC,QAAA,CAAA,CAAAI,WAAA,MAAA,EAHA,EAKA,CACAN,YAAA,0BACAC,YAAA,MACAC,QAAA,CAAA,CAAAG,WAAA,KAAA,EAHA,EAKA,CACAL,YAAA,YACAC,YAAA,MACAC,QAAA,CACA,CAAAI,WAAA,CAAA,GAAA,EACA,CAAAH,UAAA,EAAA,EACA,CAAAE,WAAA,IAAA,EANA,EASA,CACAL,YAAA,MACAC,YAAA,MACAC,QAAA,CACA,CAAAI,WAAA,CAAA,GAAA,EACA,CAAAH,UAAA,IAAA,EACA,CAAAE,WAAA,YAAA,EANA,EASA,CACAL,YAAA,OACAC,YAAA,MACAC,QAAA,CAAA,CAAAI,WAAA,CAAA,GAAA,EAHA,EAKA,CACAN,YAAA,eACAC,YAAA,MACAC,QAAA,CAAA,CAAAG,WAAA,YAAA,EAHA,EAKA,CACAL,YAAA,gBACAC,YAAA,MACAC,QAAA,CAAA,CAAAC,UAAA,IAAA,EAHA,EAKA,CACAH,YAAA,aACAC,YAAA,MACAC,QAAA,CAAA,CAAAC,UAAA,IAAA,EAHA,EAKA,CACAH,YAAA,UACAC,YAAA,MACAC,QAAA,CAAA,CAAAI,WAAA,CAAA,GAAA,EAAA,CAAAD,WAAA,YAAA,EAHA,EAKA,CACAL,YAAA,QACAC,YAAA,WACAC,QAAA,CACA,CAAAQ,IAAA,SAAA,EACA,CAAAP,UAAA,CAAA,EAAA,EACA,CAAAG,WAAA,CAAA,EAAA,EANA,EASA,CACAN,YAAA,QACAC,YAAA,SACAC,QAAA,CAAA,CAAAC,UAAA,CAAA,EAAA,EAAA,CAAAG,WAAA,CAAA,GAAA,EAHA,GAMAQ,SAAA,CACA,CACAd,YAAA,MACAC,YAAA,SACAC,QAAA,CAAA,CAAAG,WAAA,KAAA,EAHA,EAKA,CACAL,YAAA,iBACAC,YAAA,MACAC,QAAA,CAAA,CAAAG,WAAA,KAAA,EAHA,EAKA,CACAL,YAAA,YACAC,YAAA,MACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,MACAC,YAAA,MACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAHA,EAKA,CACA6Y,YAAA,OACAC,YAAA,MACAC,QAAA,CAAA,CAAAG,WAAA,KAAA,EAHA,EAKA,CACAL,YAAA,UACAC,YAAA,MACAC,QAAA,CAAA,CAAAG,WAAA,KAAA,EAHA,EAKA,CACAL,YAAA,QACAC,YAAA,MACAC,QAAA,CAAA,CAAA/Y,MAAA,SAAA,EAAA,CAAAkZ,WAAA,IAAA,EAHA,GAMAU,OAAA,CACA,CACAf,YAAA,MACAC,YAAA,MACAC,QAAA,CACA,CACAc,iBAAA,CAAA,CADA,EAGA,CACAV,WAAA,EADA,EAGA,CACAH,UAAA,EADA,EAGA,CACAc,MAAA,EADA,EAGA,CACAP,IAAA,SADA,EAhBA,EAlqBA,EA0rBAb,EAAAzN,QAAA,SAAA8O,GACA,IAyBAC,EAUAC,EACAC,EAGAC,EAvCAC,EAAA7R,MAAA3J,QAAAmb,EAAA,QAAA,EAAArV,MAAA,GAAA,EACA2V,EAAAN,EAAAtL,UACAhE,EAAAlC,MAAA3J,QAAAmb,EAAA,MAAA,EACAxR,MAAA3J,QAAAmb,EAAA,MAAA,EACA,mEACAO,EAAA/R,MAAA3J,QAAAmb,EAAA,MAAA,EACAQ,EAAAR,EACAS,EAAAjS,MAAA3J,QAAAmb,EAAA,OAAA,EAEA,MAAA,eAAAxR,MAAA3J,QAAAmb,EAAA,OAAA,GACAU,EAAAlS,MAAA3J,QAAAmb,EAAA,KAAA,EACAC,EAAA,CACAU,SAAA,CAAAC,IAAAC,OAAAR,EAAA,EAAA,EAAAS,IAAAD,OAAAR,EAAA,EAAA,CAAA,EACAK,IAAAA,EACAH,KAAAA,EACAQ,gBAAA,OACAC,YAAA,CAAA,CALA,EAQA,IAAAnd,OAAA+a,OAAAqC,KAAAC,mBACAV,EACAP,CAFA,IAMAA,EAAA,CACAM,KAAAA,EACAS,YAAAxS,MAAA3J,QAAAmb,EAAA,aAAA,EACAxC,OAAA,IAAA3Z,OAAA+a,OAAAqC,KAAAE,OAAAd,EAAA,GAAAA,EAAA,EAAA,EACAe,OACA,SAAA5U,aAAAC,QAAA,OAAA,EACAgS,EAAAoB,OACApB,EAAAgC,EAPA,EAUAP,EAAA,IAAArc,OAAA+a,OAAAqC,KAAAI,IAAAb,EAAAP,CAAA,EACAE,EAAA,IAAAtc,OAAA+a,OAAAqC,KAAAK,WAAA,CACAC,QAAAjB,CADA,CAAA,GAGAF,EAAA,IAAAvc,OAAA+a,OAAAqC,KAAAO,OAAA,CACAb,SAAA,IAAA9c,OAAA+a,OAAAqC,KAAAE,OAAAd,EAAA,GAAAA,EAAA,EAAA,EACA3P,KAAAA,EACAwP,IAAAA,CAHA,CAAA,GAMAuB,YAAA,QAAA,WACAtB,EAAAuB,KAAAxB,EAAAE,CAAA,CACA,CAFA,EAIA1B,GACAA,EAAAhb,iBACA,eACA,SAAAie,GAAA,IAAAC,EAAAD,EAAAE,OAAAC,EAAAF,EAAAE,QAAAvZ,EAAAqZ,EAAArZ,MACA,UAAAuZ,GACA5B,EAAA6B,IACA,SACA,SAAAxZ,EAAAkW,EAAAoB,OAAApB,EAAAgC,EAFA,CAKA,CATA,EAWA,KACA,CA/DA,EAiEA,CClwBA,IAAAuB,eAAA,WACA,IAAAC,EAAAze,SAAAkO,eAAA,WAAA,EACAwQ,EAAA1e,SAAAkO,eAAA,mBAAA,EACAyQ,EAAA,IAAAte,OAAAyS,UAAAC,MAAA2L,CAAA,EAEAD,GACAA,EAAAve,iBAAA,QAAA,SAAAyB,GACAL,EAAAK,EAAAoM,OACA,UAAAzM,EAAAsd,UACAtd,EAAAwS,OAAA,EACAxS,EAAAud,kBAAA,EAAA,KAAA,EACA7e,SAAAqU,YAAA,MAAA,EACAqK,EAAAtT,cACA,aADA,EAEA8F,UAFA,+CAAAhQ,OAEAI,EAAAyD,MAFA,SAAA,EAGA4Z,EAAAtL,KAAA,EAEA,CAXA,CAaA,ECjBAyL,WAAA,WACA,IAAA7J,EACA,iBADAA,EAEA,0BAFAA,EAGA,gBAHAA,EAIA,YAJAA,EAKA,eALAA,EAMA,4BANAA,EAOA,yBAPAA,EAQA,0BARAA,EASA,0BAGAxC,EACA,aADAA,EAEA,SAGAnC,EACA,QADAA,EAEA,mBAFAA,EAGA,oBAGAyO,EAAA/e,SAAAwN,iBAAAyH,CAAA,EACA+J,EAAAhf,SAAAwN,iBAAAyH,CAAA,EACAgK,EAAAjf,SAAAoL,cAAA6J,CAAA,EACAiK,EAAAlf,SAAAwN,iBACAyH,CADA,EAKA8J,GACAA,EAAArR,QAAA,SAAAqG,GACAA,EAAA7T,iBAAAoQ,EAAA,SAAA6O,GAAA,IACApJ,EADAoJ,EAAAnO,cACAmF,QAAAlB,CAAA,EACAG,EAAAW,EAAA3K,cACA6J,CADA,EAGA5E,EAAA+E,EAAA/E,aAEA0F,EAAAjR,UAAAI,IAAAuN,CAAA,EACA2C,EAAAhK,cAAA6J,CAAA,EAAAmK,MAAA,EACAhK,EAAAiK,SAAA,CAAAzZ,IAAAyK,CAAA,CAAA,CACA,CAVA,CAWA,CAZA,EAeA2O,EAAAtR,QAAA,SAAAqG,GACAA,EAAA7T,iBAAAoQ,EAAA,SAAAgP,GAAAA,EAAAtO,cACAmF,QAAAlB,CAAA,EAAAnQ,UAAAM,OACAqN,CADA,CAGA,CAJA,CAKA,CANA,EAQAwM,IAEAA,EAAA/e,iBACAoQ,EACA,SAAAiP,GACAC,EADAD,EAAAvO,cACAqF,mBACAmJ,GAAAA,EAAA1a,UAAAI,IAAAuN,CAAA,CACA,CALA,EASAwM,EAAA/e,iBACAoQ,EACA,SAAAmP,GAAAA,EAAAzO,cACA5F,cAAA6J,CAAA,EAAAmK,MAAA,CACA,CAJA,GASAF,EAAAxR,QAAA,SAAAqG,GACAA,EAAA7T,iBAAAoQ,EAAA,SAAAoP,GAAA,IACAC,EADAD,EAAA1O,cACAmF,QAAAlB,CAAA,EACA2K,EAAAvf,OAAAyS,UAAA+M,SAAAC,YAAAH,CAAA,EAEA3U,MAAApG,SAAA+a,EAAAtJ,mBAAA5D,CAAA,GACAkN,EAAAtJ,mBAAAvR,UAAAM,OAAAqN,CAAA,EACAmN,EAAAlM,KAAA,CACA,CAPA,CAQA,CATA,CAUA,ECxFAqM,sBAAA,WACA,IAmoCAC,EAgBAC,EAhCAC,EAAA7f,OAAA6f,EACAC,EAAAngB,SAAAkO,eAAA,KAAA,EACAgS,GAAAC,IAcAH,EAAAE,EAAAE,UAAAC,YAFA,iEAEA,CACAC,YAAA,KACAC,YAAA,CAAA,EACAnZ,OAhBA,SAAA4B,aAAAC,QAAA,OAAA,EACA,CACA,aACA,gBACA,aACA,gBACA,aACA,kBAEA,CAAA,cAAA,gBAAA,YAAA,gBAIA,CAAA,EAMAyT,EAAAwD,EAAAxD,IAAA,MAAA,CACA1C,OAAAkG,EAAArD,OAAA,OAAA,CAAA,EACAE,KAAA,EACAyD,OAAA,CAAAR,GACAS,QAAA,IACAC,SAAA,GACAC,SAAA,CAAAT,EAAAU,QAAAtV,OACAuV,IAAA,CAAAX,EAAAU,QAAAtV,MAPA,CAAA,EAUA2U,EAAAC,EAAAY,mBAAA,CACAC,eAAA,CAAA,EACAC,kBAAA,CAAA,CAFA,CAAA,EAnpCA,CACA,CACA5D,IAAA,UACA6D,KAAA,CAAA,SACAne,KAAA,cACAoe,OAAA,kBACAC,SAAA,gBALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,SACAne,KAAA,cACAoe,OAAA,kBACAC,SAAA,gBALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,SACAne,KAAA,cACAoe,OAAA,kBACAC,SAAA,gBALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,SACAne,KAAA,cACAoe,OAAA,kBACAC,SAAA,gBALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,SACAne,KAAA,cACAoe,OAAA,kBACAC,SAAA,gBALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,SACAne,KAAA,cACAoe,OAAA,kBACAC,SAAA,gBALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,SACAne,KAAA,cACAoe,OAAA,kBACAC,SAAA,gBALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,SACAne,KAAA,cACAoe,OAAA,kBACAC,SAAA,gBALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,SACAne,KAAA,cACAoe,OAAA,kBACAC,SAAA,gBALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,SACAne,KAAA,cACAoe,OAAA,kBACAC,SAAA,gBALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,KACAne,KAAA,gBACAoe,OAAA,iBACAC,SAAA,YALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,KACAne,KAAA,gBACAoe,OAAA,iBACAC,SAAA,YALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,KACAne,KAAA,gBACAoe,OAAA,iBACAC,SAAA,YALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,KACAne,KAAA,gBACAoe,OAAA,iBACAC,SAAA,YALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,KACAne,KAAA,gBACAoe,OAAA,iBACAC,SAAA,YALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,KACAne,KAAA,gBACAoe,OAAA,iBACAC,SAAA,YALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,KACAne,KAAA,gBACAoe,OAAA,iBACAC,SAAA,YALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,KACAne,KAAA,gBACAoe,OAAA,iBACAC,SAAA,YALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,KACAne,KAAA,gBACAoe,OAAA,iBACAC,SAAA,YALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,eACAoe,OAAA,iBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,OACA6D,KAAA,CAAA,MACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,MACA6D,KAAA,CAAA,KACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,MACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,SACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,OACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,QACAne,KAAA,oBACAoe,OAAA,oBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,SACAne,KAAA,kBACAoe,OAAA,sBAJA,EAMA,CACA9D,IAAA,OACA6D,KAAA,CAAA,OACAne,KAAA,oBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,OACA6D,KAAA,CAAA,OACAne,KAAA,oBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,OACA6D,KAAA,CAAA,OACAne,KAAA,oBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,OACA6D,KAAA,CAAA,OACAne,KAAA,oBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,OACA6D,KAAA,CAAA,OACAne,KAAA,oBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,OACA6D,KAAA,CAAA,OACAne,KAAA,oBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,OACA6D,KAAA,CAAA,OACAne,KAAA,oBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,OACA6D,KAAA,CAAA,OACAne,KAAA,oBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,OACA6D,KAAA,CAAA,OACAne,KAAA,oBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,OACA6D,KAAA,CAAA,OACAne,KAAA,oBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,QACA6D,KAAA,OACAne,KAAA,qBACAoe,OAAA,qBACAC,SAAA,iBALA,EAOA,CACA/D,IAAA,QACA6D,KAAA,QACAne,KAAA,qBACAoe,OAAA,qBACAC,SAAA,iBALA,EAOA,CACA/D,IAAA,OACA6D,KAAA,QACAne,KAAA,iBACAoe,OAAA,kBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,OACA6D,KAAA,QACAne,KAAA,iBACAoe,OAAA,kBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,OACA6D,KAAA,QACAne,KAAA,iBACAoe,OAAA,kBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,OACA6D,KAAA,QACAne,KAAA,iBACAoe,OAAA,kBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,QACA6D,KAAA,QACAne,KAAA,iBACAoe,OAAA,uBACAC,SAAA,SALA,EAOA,CACA/D,IAAA,QACA6D,KAAA,QACAne,KAAA,iBACAoe,OAAA,uBACAC,SAAA,SALA,EAOA,CACA/D,IAAA,QACA6D,KAAA,QACAne,KAAA,mBACAoe,OAAA,8BACAC,SAAA,UALA,EAOA,CACA/D,IAAA,QACA6D,KAAA,QACAne,KAAA,mBACAoe,OAAA,8BACAC,SAAA,UALA,EAOA,CACA/D,IAAA,CAAA,cACA6D,KAAA,eACAne,KAAA,mBACAoe,OAAA,kBACAC,SAAA,WALA,EAOA,CACA/D,IAAA,CAAA,cACA6D,KAAA,eACAne,KAAA,mBACAoe,OAAA,kBACAC,SAAA,WALA,EAOA,CACA/D,IAAA,CAAA,UACA6D,KAAA,CAAA,UACAne,KAAA,gBACAoe,OAAA,kBACAC,SAAA,QALA,EAOA,CACA/D,IAAA,CAAA,UACA6D,KAAA,CAAA,UACAne,KAAA,iBACAoe,OAAA,6BACAC,SAAA,OALA,EAOA,CACA/D,IAAA,CAAA,UACA6D,KAAA,CAAA,UACAne,KAAA,gBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,CAAA,UACA6D,KAAA,CAAA,UACAne,KAAA,gBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,CAAA,UACA6D,KAAA,CAAA,UACAne,KAAA,gBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,CAAA,UACA6D,KAAA,CAAA,UACAne,KAAA,gBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,WACAne,KAAA,gBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,WACAne,KAAA,gBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,WACAne,KAAA,gBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,QACAne,KAAA,gBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,UACAne,KAAA,gBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,UACAne,KAAA,gBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,CAAA,UACA6D,KAAA,UACAne,KAAA,gBACAoe,OAAA,uBACAC,SAAA,UALA,EAOA,CACA/D,IAAA,CAAA,KACA6D,KAAA,QACAne,KAAA,gBACAoe,OAAA,sBACAC,SAAA,YALA,EAOA,CACA/D,IAAA,CAAA,UACA6D,KAAA,UACAne,KAAA,gBACAoe,OAAA,sBACAC,SAAA,YALA,EAOA,CACA/D,IAAA,CAAA,UACA6D,KAAA,UACAne,KAAA,gBACAoe,OAAA,sBACAC,SAAA,YALA,EAOA,CACA/D,IAAA,CAAA,UACA6D,KAAA,UACAne,KAAA,gBACAoe,OAAA,sBACAC,SAAA,YALA,EAOA,CACA/D,IAAA,CAAA,UACA6D,KAAA,UACAne,KAAA,gBACAoe,OAAA,sBACAC,SAAA,YALA,EAOA,CACA/D,IAAA,CAAA,UACA6D,KAAA,UACAne,KAAA,gBACAoe,OAAA,sBACAC,SAAA,YALA,EAOA,CACA/D,IAAA,CAAA,UACA6D,KAAA,UACAne,KAAA,gBACAoe,OAAA,sBACAC,SAAA,YALA,EAOA,CACA/D,IAAA,SACA6D,KAAA,CAAA,WACAne,KAAA,kBACAoe,OAAA,sBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,WACAne,KAAA,kBACAoe,OAAA,sBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,WACAne,KAAA,kBACAoe,OAAA,sBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,QACA6D,KAAA,CAAA,UACAne,KAAA,kBACAoe,OAAA,sBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,WACAne,KAAA,kBACAoe,OAAA,sBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,WACAne,KAAA,kBACAoe,OAAA,sBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,WACAne,KAAA,kBACAoe,OAAA,sBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,WACAne,KAAA,kBACAoe,OAAA,sBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,WACAne,KAAA,kBACAoe,OAAA,sBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,UACAne,KAAA,kBACAoe,OAAA,sBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,SACA6D,KAAA,CAAA,WACAne,KAAA,kBACAoe,OAAA,sBACAC,SAAA,eALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,UACAne,KAAA,0BACAoe,OAAA,sBACAC,SAAA,aALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,UACAne,KAAA,0BACAoe,OAAA,sBACAC,SAAA,aALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,SACAne,KAAA,0BACAoe,OAAA,sBACAC,SAAA,aALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,UACAne,KAAA,0BACAoe,OAAA,sBACAC,SAAA,aALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,UACAne,KAAA,0BACAoe,OAAA,sBACAC,SAAA,aALA,EAOA,CACA/D,IAAA,UACA6D,KAAA,CAAA,UACAne,KAAA,0BA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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, (_, c) =>\r\n c ? c.toUpperCase() : ''\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\r\n ? (hex = hexValue.substring(1))\r\n : (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 ? [\r\n parseInt(result[1], 16),\r\n parseInt(result[2], 16),\r\n parseInt(result[3], 16),\r\n ]\r\n : null;\r\n};\r\n\r\nconst rgbaColor = (color = '#fff', alpha = 0.5) =>\r\n `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});\r\n\r\nconst getSoftColors = (dom) => ({\r\n primary: getColor('soft-primary', dom),\r\n secondary: getColor('soft-secondary', dom),\r\n success: getColor('soft-success', dom),\r\n info: getColor('soft-info', dom),\r\n warning: getColor('soft-warning', dom),\r\n danger: getColor('soft-danger', dom),\r\n light: getColor('soft-light', dom),\r\n dark: getColor('soft-dark', dom),\r\n});\r\n\r\nconst getGrays = (dom) => ({\r\n white: getColor('gray-white', 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 black: getColor('gray-black', 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 =\r\n 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\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) =>\r\n store.setItem(key, payload);\r\nconst getStoreSpace = (store = localStorage) =>\r\n parseFloat(\r\n (\r\n escape(encodeURIComponent(JSON.stringify(store))).length /\r\n (1024 * 1024)\r\n ).toFixed(2)\r\n );\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(\r\n { length: steps + 1 },\r\n (v, i) => new Date(startDate.valueOf() + interval * i)\r\n );\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) =>\r\n 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 getSoftColors,\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};\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","/* -------------------------------------------------------------------------- */\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(\r\n defaultOptions,\r\n barOptions\r\n );\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 (\r\n window.matchMedia(`(max-width: ${utils.breakpoints[breakPoint]}px)`)\r\n .matches\r\n ) {\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) =>\r\n btn &&\r\n btn.addEventListener('click', () =>\r\n toggleBottomBarOnNavbarCollapse(btn)\r\n )\r\n );\r\n });\r\n }\r\n};\r\n\r\nexport default bottomBarInit;\r\n","import DomNode from './node';\r\n\r\n/*-----------------------------------------------\r\n| Bulk Select\r\n-----------------------------------------------*/\r\nclass BulkSelect {\r\n constructor(element, option) {\r\n this.element = new DomNode(element);\r\n this.option = {\r\n displayNoneClassName: 'd-none',\r\n ...option,\r\n };\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 attachNodes() {\r\n const { body, actions, replacedElement } = this.element.data('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\r\n .getElementById(body)\r\n .querySelectorAll('[data-bulk-select-row]');\r\n }\r\n\r\n clickBulkCheckbox() {\r\n // Handle click event in bulk checkbox\r\n this.element.on('click', () => {\r\n if (this.element.attr('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 const rowCheck = new DomNode(el);\r\n rowCheck.setProp('checked', this.element.attr('checked'));\r\n rowCheck.setAttribute('checked', this.element.attr('checked'));\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.attr('indeterminate') !== 'indeterminate') {\r\n this.element.setProp('indeterminate', true);\r\n this.element.setAttribute('indeterminate', 'indeterminate');\r\n this.element.setProp('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.setProp('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.setProp('indeterminate', false);\r\n this.element.removeAttribute('indeterminate');\r\n this.element.setProp('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}\r\n\r\nexport default bulkSelectInit;\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:\r\n '.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(\r\n Selector.CHAT_CONTENT_SCROLL_AREA\r\n );\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(\r\n Selector.CHAT_CONTENT_SCROLL_AREA_ACTIVE\r\n );\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(\r\n Selector.CHAT_CONTENT_SCROLL_AREA_ACTIVE\r\n );\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, function () {\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(\r\n Selector.CHAT_CONTENT_SCROLL_AREA_ACTIVE\r\n );\r\n setScrollbarPosition(TargetChatArea);\r\n });\r\n\r\n // Emoji append in message text\r\n $chatEmojiarea &&\r\n window.picker.on(Events.EMOJI, (selection) => {\r\n document.querySelector(Selector.EMOJIEAREA_EDITOR).innerHTML +=\r\n selection.emoji;\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(\r\n '.choices__list--single'\r\n );\r\n const multipleSelect = choicesItem.querySelector(\r\n '.choices__list--multiple'\r\n );\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, function (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 toastOptions.showOnce &&\r\n utils.setCookie('notice', false, toastOptions.cookieExpireTime);\r\n });\r\n });\r\n\r\n const btnNoticeToggle = document.querySelector(Selector.DATA_TOGGLE_Notice);\r\n 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 /*eslint-disable-next-line*/\r\n const el = notice._element;\r\n utils.hasClass(el, ClassNames.HIDE) ? notice.show() : notice.hide();\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","/* -------------------------------------------------------------------------- */\r\n/* Draggable */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nimport utils from './utils';\r\n\r\nconst draggableInit = () => {\r\n const Selectors = {\r\n BODY: 'body',\r\n KANBAN_CONTAINER: '.kanban-container',\r\n KABNBAN_COLUMN: '.kanban-column',\r\n KANBAN_ITEMS_CONTAINER: '.kanban-items-container',\r\n KANBAN_ITEM: '.kanban-item',\r\n ADD_CARD_FORM: '.add-card-form',\r\n };\r\n\r\n const Events = {\r\n DRAG_START: 'drag:start',\r\n DRAG_STOP: 'drag:stop',\r\n };\r\n\r\n const ClassNames = {\r\n FORM_ADDED: 'form-added',\r\n };\r\n\r\n const columns = document.querySelectorAll(Selectors.KABNBAN_COLUMN);\r\n const columnContainers = document.querySelectorAll(\r\n Selectors.KANBAN_ITEMS_CONTAINER\r\n );\r\n const container = document.querySelector(Selectors.KANBAN_CONTAINER);\r\n\r\n if (!!columnContainers.length) {\r\n // Initialize Sortable\r\n const sortable = new window.Draggable.Sortable(columnContainers, {\r\n draggable: Selectors.KANBAN_ITEM,\r\n delay: 200,\r\n mirror: {\r\n appendTo: Selectors.BODY,\r\n constrainDimensions: true,\r\n },\r\n scrollable: {\r\n draggable: Selectors.KANBAN_ITEM,\r\n scrollableElements: [...columnContainers, container],\r\n },\r\n });\r\n\r\n // Hide form when drag start\r\n sortable.on(Events.DRAG_START, () => {\r\n columns.forEach((column) => {\r\n utils.hasClass(column, ClassNames.FORM_ADDED) &&\r\n column.classList.remove(ClassNames.FORM_ADDED);\r\n });\r\n });\r\n\r\n // Place forms and other contents bottom of the sortable container\r\n sortable.on(Events.DRAG_STOP, ({ data: { source: el } }) => {\r\n const columnContainer = el.closest(Selectors.KANBAN_ITEMS_CONTAINER);\r\n const form = columnContainer.querySelector(Selectors.ADD_CARD_FORM);\r\n\r\n !el.nextElementSibling && columnContainer.appendChild(form);\r\n });\r\n }\r\n};\r\n\r\nexport default draggableInit;\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\r\n// Reference\r\n// https://github.com/twbs/bootstrap/issues/11037#issuecomment-274870381\r\n\r\nexport default dropdownMenuInit;","/* -------------------------------------------------------------------------- */\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 (\r\n e.target.className.includes(\"dropdown-toggle\") &&\r\n window.innerWidth > 992\r\n ) {\r\n const dropdownInstance = new window.bootstrap.Dropdown(e.target);\r\n \r\n /* eslint-disable no-underscore-dangle */\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","/* eslint-disable */\r\nimport 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 ? 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 for (let node of file.previewElement.querySelectorAll('[data-dz-errormessage]')) {\r\n node.textContent = message;\r\n }\r\n }\r\n }\r\n },\r\n userOptions\r\n );\r\n // eslint-disable-next-line\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","/* -------------------------------------------------------------------------- */\r\n/* from-validation */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst formValidationInit = () => {\r\n // Example starter JavaScript for disabling form submissions if there are invalid fields\r\n \"use strict\";\r\n\r\n // Fetch all the forms we want to apply custom Bootstrap validation styles to\r\n var forms = document.querySelectorAll(\".needs-validation\");\r\n\r\n // Loop over them and prevent submission\r\n Array.prototype.slice.call(forms).forEach(function (form) {\r\n form.addEventListener(\r\n \"submit\",\r\n function (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","/* -------------------------------------------------------------------------- */\r\n/* FullCalendar */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nimport utils from './utils';\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: [\r\n { visibility: 'on' },\r\n { color: '#ffffff' },\r\n { lightness: 16 },\r\n ],\r\n },\r\n {\r\n elementType: 'labels.text.fill',\r\n stylers: [\r\n { saturation: 36 },\r\n { color: '#333333' },\r\n { lightness: 40 },\r\n ],\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: [\r\n { saturation: 36 },\r\n { color: '#000000' },\r\n { lightness: 40 },\r\n ],\r\n },\r\n {\r\n featureType: 'all',\r\n elementType: 'labels.text.stroke',\r\n stylers: [\r\n { visibility: 'on' },\r\n { color: '#000000' },\r\n { lightness: 16 },\r\n ],\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: [\r\n { hue: '#cbdac1' },\r\n { saturation: -6 },\r\n { lightness: -9 },\r\n { visibility: 'on' },\r\n ],\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: [\r\n { visibility: 'off' },\r\n { color: '#000000' },\r\n { lightness: 16 },\r\n ],\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: [\r\n { saturation: -100 },\r\n { lightness: 65 },\r\n { visibility: 'on' },\r\n ],\r\n },\r\n {\r\n featureType: 'poi',\r\n elementType: 'all',\r\n stylers: [\r\n { saturation: -100 },\r\n { lightness: '50' },\r\n { visibility: 'simplified' },\r\n ],\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: [\r\n { hue: '#ffff00' },\r\n { lightness: -25 },\r\n { saturation: -97 },\r\n ],\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(\r\n mapElement,\r\n mapOptions\r\n );\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:\r\n localStorage.getItem('theme') === 'dark'\r\n ? mapStyles.Cobalt\r\n : 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(\r\n 'clickControl',\r\n ({ detail: { control, value } }) => {\r\n if (control === 'theme') {\r\n map.set(\r\n 'styles',\r\n value === 'dark' ? mapStyles.Cobalt : mapStyles[mapStyle]\r\n );\r\n }\r\n }\r\n );\r\n return null;\r\n });\r\n }\r\n}\r\n\r\nexport default initMap;\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(\r\n \".toast-body\"\r\n ).innerHTML = `Copied: ${el.value}`;\r\n iconCopiedToastInstance.show();\r\n }\r\n });\r\n }\r\n};\r\n\r\nexport default iconCopiedInit;\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(\r\n Selectors.BTN_COLLAPSE_DISMISS\r\n );\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(\r\n Selectors.KANBAN_ITEMS_CONTAINER\r\n );\r\n const scrollHeight = container.scrollHeight;\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(\r\n ClassNames.FORM_ADDED\r\n );\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(\r\n Events.SHOW_BS_COLLAPSE,\r\n ({ currentTarget: el }) => {\r\n const nextElement = el.nextElementSibling;\r\n nextElement && nextElement.classList.add(ClassNames.D_NONE);\r\n }\r\n );\r\n\r\n // Focus input field when the form is shown\r\n addListForm.addEventListener(\r\n Events.SHOWN_BS_COLLAPSE,\r\n ({ currentTarget: el }) => {\r\n el.querySelector(Selectors.INPUT_ADD_LIST).focus();\r\n }\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","/* -------------------------------------------------------------------------- */\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 let getFilterColor = () => {\r\n return localStorage.getItem(\"theme\") === \"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 let tileLayerTheme =\r\n \"https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}{r}.png\";\r\n\r\n let tiles = L.tileLayer.colorFilter(tileLayerTheme, {\r\n attribution: null,\r\n transparent: true,\r\n filter: getFilterColor(),\r\n });\r\n\r\n let 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 let 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: name,\r\n location: 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(\r\n \"clickControl\",\r\n ({ 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\n\r\nexport default leafletActiveUserInit;\r\n","import utils from './utils';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Data Table */\r\n/* -------------------------------------------------------------------------- */\r\n/* eslint-disable no-param-reassign */\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 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(\r\n '[data-list-pagination=\"next\"]'\r\n );\r\n const paginationButtonPrev = el.querySelector(\r\n '[data-list-pagination=\"prev\"]'\r\n );\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 listFilter = document.querySelector('[data-list-filter]');\r\n const list = new window.List(el, options);\r\n\r\n //-------fallback-----------\r\n\r\n list.on('updated', function (item) {\r\n const fallback =\r\n el.querySelector('.fallback') ||\r\n 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 &&\r\n (listInfo.innerHTML = `${list.i} to ${numberOfcurrentItems} of ${totalItem}`);\r\n paginationButtonPrev &&\r\n togglePaginationButtonDisable(\r\n paginationButtonPrev,\r\n pageCount === 1\r\n );\r\n paginationButtonNext &&\r\n togglePaginationButtonDisable(\r\n paginationButtonNext,\r\n 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\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 = pageCount + 1;\r\n\r\n const nextInitialIndex = list.i + itemsPerPage;\r\n nextInitialIndex <= list.size() &&\r\n 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 = pageCount - 1;\r\n\r\n numberOfcurrentItems =\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 (options.filter) {\r\n listFilter.addEventListener('change', (e) => {\r\n list.filter((item) => {\r\n if (e.target.value === '') {\r\n return true;\r\n } else\r\n return item\r\n .values()\r\n .payment.toLowerCase()\r\n .includes(e.target.value.toLowerCase());\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(\r\n Selector.DATA_MOVE_CONTAINER\r\n );\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\r\n .querySelector(Selector.NAVBAR_VERTICAL_DIVIDER)\r\n .remove();\r\n navbarTopCombo.querySelector(Selector.COLLAPSE).innerHTML =\r\n 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)\r\n ? name\r\n : 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 = localStorage.getItem('theme');\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(\r\n 'clickControl',\r\n ({ detail: { control, value } }) => {\r\n if (control === 'theme') {\r\n toggleThemeClass(value);\r\n defaultColorName = value === 'dark' ? '100' : 'dark';\r\n if (\r\n navbar.classList.contains('bg-dark') ||\r\n navbar.classList.contains('bg-100')\r\n ) {\r\n removeNavbarBgClass();\r\n navbar.classList.add(\r\n getBgClassName(name, defaultColorName).bgClassName\r\n );\r\n }\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(\r\n getBgClassName(name, defaultColorName).color\r\n );\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')\r\n ? backgroundImage\r\n : 'none';\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\r\n ? backgroundImage\r\n : 'none';\r\n navbar.style.transition = 'none';\r\n } else if (\r\n utils.hasClass(\r\n navbar.querySelector(Selector.NAVBAR_TOGGLER),\r\n ClassNames.COLLAPSED\r\n )\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')\r\n ? transition\r\n : '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(\r\n Selector.NAVBAR_VERTICAL_CONTENT\r\n );\r\n const $navbarVerticalCollapse = document.getElementById(\r\n Selector.NAVBAR_VERTICAL_COLLAPSE\r\n );\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\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(\r\n Selector.NAVBAR_VERTICAL_TOGGLE\r\n );\r\n const html = document.querySelector(Selector.HTML);\r\n const navbarVerticalCollapse = document.querySelector(\r\n Selector.NAVBAR_VERTICAL_COLLAPSE\r\n );\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(\r\n 'isNavbarVerticalCollapsed'\r\n );\r\n utils.setItemToStore(\r\n 'isNavbarVerticalCollapsed',\r\n !isNavbarVerticalCollapsed\r\n );\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| 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(\r\n document.querySelectorAll('[data-bs-toggle=\"popover\"]')\r\n );\r\n popoverTriggerList.map(popoverTriggerEl => {\r\n return new window.bootstrap.Popover(popoverTriggerEl);\r\n });\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(\r\n '[data-progress-animation]'\r\n );\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 let 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\n\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\tconst dropdownElements = Array.from(document.querySelectorAll('[data-hide-on-body-scroll]'));\r\n\r\n\tif (window.innerWidth < 1200) {\r\n\t\twindow.addEventListener('scroll', () => {\r\n\t\t\tdropdownElements.forEach(dropdownElement => {\r\n\t\t\t\tconst instanceEl = window.bootstrap.Dropdown.getInstance(dropdownElement);\r\n\t\t\t\tinstanceEl && instanceEl.hide();\r\n\t\t\t});\r\n\t\t});\r\n\t}\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 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 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","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(\r\n '.navbar-vertical-toggle'\r\n );\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-container 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\n\r\nexport default swiperInit;\r\n","import { setItemToStore, getData, getItemFromStore } from './utils';\r\nimport DomNode from './node';\r\n\r\n/* -------------------------------------------------------------------------- */\r\n/* Theme Control */\r\n/* -------------------------------------------------------------------------- */\r\n/* eslint-disable no-param-reassign */\r\n/* eslint-disable */\r\nimport CONFIG from './config';\r\nconst initialDomSetup = element => {\r\n\tif (!element) return;\r\n\tconst dataUrlDom = element.querySelector('[data-theme-control = \"navbarPosition\"]');\r\n\tconst hasDataUrl = dataUrlDom ? getData(dataUrlDom, 'page-url') : null;\r\n\r\n\telement.querySelectorAll('[data-theme-control]').forEach(el => {\r\n\t\tconst inputDataAttributeValue = getData(el, 'theme-control');\r\n\t\tconst localStorageValue = getItemFromStore(inputDataAttributeValue);\r\n\t\tif (\r\n\t\t\tinputDataAttributeValue === 'navbarStyle' &&\r\n\t\t\t!hasDataUrl &&\r\n\t\t\tgetItemFromStore('navbarPosition') === 'top'\r\n\t\t) {\r\n\t\t\tel.setAttribute('disabled', true);\r\n\t\t}\r\n\t\tif (el.type === 'checkbox') {\r\n\t\t\tif (inputDataAttributeValue === 'theme') {\r\n\t\t\t\tlocalStorageValue === 'dark' && el.setAttribute('checked', true);\r\n\t\t\t} else {\r\n\t\t\t\tlocalStorageValue && el.setAttribute('checked', true);\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tconst isChecked = localStorageValue === el.value;\r\n\t\t\tisChecked && el.setAttribute('checked', true);\r\n\t\t}\r\n\t});\r\n};\r\n\r\nconst changeTheme = element => {\r\n\telement.querySelectorAll('[data-theme-control = \"theme\"]').forEach(el => {\r\n\t\tconst inputDataAttributeValue = getData(el, 'theme-control');\r\n\t\tconst localStorageValue = getItemFromStore(inputDataAttributeValue);\r\n\r\n\t\tif (el.type === 'checkbox') {\r\n\t\t\tlocalStorageValue === 'dark' ? (el.checked = true) : (el.checked = false);\r\n\t\t} else {\r\n\t\t\tlocalStorageValue === el.value ? (el.checked = true) : (el.checked = false);\r\n\t\t}\r\n\t});\r\n};\r\n\r\nconst themeControl = () => {\r\n\tconst themeController = new DomNode(document.body);\r\n\r\n\tconst navbarVertical = document.querySelector('.navbar-vertical');\r\n\tinitialDomSetup(themeController.node);\r\n\r\n\tthemeController.on('click', e => {\r\n\t\tconst target = new DomNode(e.target);\r\n\r\n\t\tif (target.data('theme-control')) {\r\n\t\t\tconst control = target.data('theme-control');\r\n\t\t\tlet value = e.target[e.target.type === 'radio' ? 'value' : 'checked'];\r\n\t\t\tif (control === 'theme') {\r\n\t\t\t\ttypeof value === 'boolean' && (value = value ? 'dark' : 'light');\r\n\t\t\t}\r\n\t\t\tsetItemToStore(control, value);\r\n\t\t\tswitch (control) {\r\n\t\t\t\tcase 'theme': {\r\n\t\t\t\t\tdocument.documentElement.classList[value === 'dark' ? 'add' : 'remove']('dark');\r\n\t\t\t\t\tconst clickControl = new CustomEvent('clickControl', {\r\n\t\t\t\t\t\tdetail: { control, value }\r\n\t\t\t\t\t});\r\n\t\t\t\t\te.currentTarget.dispatchEvent(clickControl);\r\n\t\t\t\t\tchangeTheme(themeController.node);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t\tcase 'navbarStyle': {\r\n\t\t\t\t\tnavbarVertical.classList.remove('navbar-card');\r\n\t\t\t\t\tnavbarVertical.classList.remove('navbar-inverted');\r\n\t\t\t\t\tnavbarVertical.classList.remove('navbar-vibrant');\r\n\t\t\t\t\tif (value !== 'transparent') {\r\n\t\t\t\t\t\tnavbarVertical.classList.add(`navbar-${value}`);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t\tcase 'navbarPosition': {\r\n\t\t\t\t\tconst pageUrl = getData(target.node, 'page-url');\r\n\t\t\t\t\t!!pageUrl ? window.location.replace(pageUrl) : window.location.reload();\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tcase 'reset': {\r\n\t\t\t\t\tObject.keys(CONFIG).forEach(key => {\r\n\t\t\t\t\t\tlocalStorage.setItem(key, CONFIG[key]);\r\n\t\t\t\t\t});\r\n\t\t\t\t\twindow.location.reload();\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tdefault:\r\n\t\t\t\t\twindow.location.reload();\r\n\t\t\t}\r\n\t\t}\r\n\t});\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('.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 skin: utils.settings.tinymce.theme,\r\n content_style: `.mce-content-body { color: ${utils.getGrays().black} }`,\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:\r\n 'styleselect | 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 themeController &&\r\n themeController.addEventListener(\r\n 'clickControl',\r\n ({ detail: { control } }) => {\r\n if (control === 'theme') {\r\n window.tinyMCE.editors.forEach((el) => {\r\n el.dom.addStyle(\r\n `.mce-content-body{color: ${\r\n utils.getGrays().black\r\n } !important;}`\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\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\n\r\nexport default toastInit;\r\n","/* -------------------------------------------------------------------------- */\r\n/* Tooltip */\r\n/* -------------------------------------------------------------------------- */\r\nconst tooltipInit = () => {\r\n const tooltipTriggerList = [].slice.call(\r\n document.querySelectorAll('[data-bs-toggle=\"tooltip\"]')\r\n );\r\n\r\n tooltipTriggerList.map(\r\n (tooltipTriggerEl) => new window.bootstrap.Tooltip(tooltipTriggerEl,{\r\n trigger:'hover'\r\n })\r\n );\r\n};\r\n\r\nexport default tooltipInit;\r\n","/* eslint-disable no-param-reassign */\r\nimport 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.path[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.path[2].querySelectorAll(Selector.CHILD_SELECTOR);\r\n if (!e.path[2].classList.contains(ClassName.TREEVIEW) && childs.length === 0) {\r\n e.path[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((typedText) => {\r\n return 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","/* -------------------------------------------------------------------------- */\r\n/* step wizard */\r\n/* -------------------------------------------------------------------------- */\r\nconst wizardInit = () => {\r\n const wizards = document.querySelectorAll('.theme-wizard');\r\n\r\n const tabPillEl = document.querySelectorAll(\r\n '#pill-tab2 [data-bs-toggle=\"pill\"]'\r\n );\r\n const tabProgressBar = document.querySelector('.theme-wizard .progress');\r\n\r\n wizards.forEach(wizard => {\r\n let tabToggleButtonEl = wizard.querySelectorAll('[data-wizard-step]');\r\n let inputEmail = wizard.querySelector('[data-wizard-validate-email]');\r\n let emailPattern = inputEmail.getAttribute('pattern');\r\n let inputPassword = wizard.querySelector('[data-wizard-validate-password]');\r\n let inputConfirmPassword = wizard.querySelector(\r\n '[data-wizard-validate-confirm-password]'\r\n );\r\n let form = wizard.querySelector('[novalidate]');\r\n let nextButton = wizard.querySelector('.next button');\r\n let prevButton = wizard.querySelector('.previous button');\r\n let cardFooter = wizard.querySelector('.theme-wizard .card-footer');\r\n let count = 0;\r\n\r\n const validatePattern = (pattern, value) => {\r\n const regexPattern = new RegExp(pattern);\r\n return regexPattern.test(String(value).toLowerCase());\r\n };\r\n\r\n prevButton.classList.add('d-none');\r\n\r\n // on button click tab change\r\n nextButton.addEventListener('click', () => {\r\n if (\r\n (!(\r\n inputEmail.value && validatePattern(emailPattern, inputEmail.value)\r\n ) ||\r\n !inputPassword.value ||\r\n !inputConfirmPassword.value) &&\r\n form.className.includes('needs-validation')\r\n ) {\r\n form.classList.add('was-validated');\r\n } else {\r\n count = count + 1;\r\n const tab = new window.bootstrap.Tab(tabToggleButtonEl[count]);\r\n tab.show();\r\n }\r\n });\r\n\r\n prevButton.addEventListener('click', () => {\r\n count = count - 1;\r\n const tab = new window.bootstrap.Tab(tabToggleButtonEl[count]);\r\n tab.show();\r\n });\r\n if (tabToggleButtonEl.length) {\r\n tabToggleButtonEl.forEach((item, index) => {\r\n /* eslint-disable */\r\n\r\n item.addEventListener('shown.bs.tab', e => {\r\n if (\r\n (!(\r\n inputEmail.value &&\r\n validatePattern(emailPattern, inputEmail.value)\r\n ) ||\r\n !inputPassword.value ||\r\n !inputConfirmPassword.value) &&\r\n form.className.includes('needs-validation')\r\n ) {\r\n e.preventDefault();\r\n form.classList.add('was-validated');\r\n return null;\r\n /* eslint-enable */\r\n }\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 = i + 1) {\r\n tabToggleButtonEl[i].classList.add('done');\r\n }\r\n //remove done class\r\n for (let j = count; j < tabToggleButtonEl.length; j = j + 1) {\r\n tabToggleButtonEl[j].classList.remove('done');\r\n }\r\n // card footer remove at last step\r\n if (count > tabToggleButtonEl.length - 2) {\r\n item.classList.add('done');\r\n cardFooter.classList.add('d-none');\r\n } else {\r\n cardFooter.classList.remove('d-none');\r\n }\r\n // prev-button removing\r\n if (count > 0) {\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 // control wizard progressbar\r\n if (tabPillEl.length) {\r\n const dividedProgressbar = 100 / tabPillEl.length;\r\n tabProgressBar.querySelector('.progress-bar').style.width =\r\n dividedProgressbar + '%';\r\n\r\n tabPillEl.forEach((item, index) => {\r\n item.addEventListener('shown.bs.tab', () => {\r\n tabProgressBar.querySelector('.progress-bar').style.width =\r\n dividedProgressbar * (index + 1) + '%';\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-soft-success',\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 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-soft-primary',\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-soft-success',\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:\r\n 'Time to start the conference and will briefly describe all information about the event. ',\r\n className: 'event-bg-soft-success',\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-soft-success',\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-soft-success',\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-soft-success',\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-soft-warning',\r\n },\r\n {\r\n title: 'Meeting',\r\n start: `${currentYear}-${currentMonth}-07 10:00:00`,\r\n description:\r\n '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:\r\n 'Sample example of a event with url. Click the event, will redirect to the given link.',\r\n className: 'bg-soft-success',\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-soft-danger',\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-soft-primary',\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-soft-primary',\r\n },\r\n];\r\n\r\nexport default events;\r\n","'use strict';\r\n\r\nimport 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(\r\n (acc, val) =>\r\n val.schedules ? acc.concat(val.schedules.concat(val)) : acc.concat(val),\r\n []\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(\r\n Selectors.EVENT_DETAILS_MODAL\r\n );\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(\r\n Selectors.EVENT_DETAILS_MODAL_CONTENT\r\n ).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 /*eslint-disable-next-line*/\r\n const flatpickr = document.querySelector(Selectors.EVENT_START_DATE)\r\n ._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\r\n .querySelector(Selectors.ACTIVE)\r\n .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 {\r\n title,\r\n startDate,\r\n endDate,\r\n label,\r\n description,\r\n allDay,\r\n } = 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:\r\n allDay.checked && label.value ? `bg-soft-${label.value}` : '',\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(\r\n Events.SHOWN_BS_MODAL,\r\n ({ currentTarget }) => {\r\n currentTarget.querySelector(Selectors.INPUT_TITLE).focus();\r\n }\r\n );\r\n};\r\n\r\nexport default appCalendarInit;\r\n","'use strict';\r\n\r\nimport 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(\r\n calendarData?.events\r\n );\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(\r\n Selectors.EVENT_DETAILS_MODAL\r\n );\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 = [\r\n 'Sunday',\r\n 'Monday',\r\n 'Tuesday',\r\n 'Wednesday',\r\n 'Thursday',\r\n 'Friday',\r\n 'Saturday',\r\n ];\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 || ''} ${\r\n e.endTime ? '-' : ''\r\n } ${e.endTime || ''}

    \r\n
    \r\n
  • `;\r\n });\r\n }\r\n\r\n const eventManagementInfo = document.querySelectorAll(\r\n Selectors.EVENT_MANAGEMENT_INFO\r\n );\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(\r\n Selectors.EVENT_DETAILS_MODAL_CONTENT\r\n ).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 /*eslint-disable-next-line*/\r\n const flatpickr = document.querySelector(\r\n Selectors.EVENT_START_DATE\r\n )._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 &&\r\n 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 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.rgbaColor(utils.getColor('secondary'), 0.2),\r\n utils.rgbaColor(utils.getColor('warning'), 0.2),\r\n utils.rgbaColor(utils.getColor('info'), 0.2),\r\n utils.rgbaColor(utils.getColor('success'), 0.2),\r\n utils.rgbaColor(utils.getColor('info'), 0.2),\r\n utils.rgbaColor(utils.getColor('primary'), 0.2)\r\n ],\r\n borderColor: [\r\n utils.getColor('secondary'),\r\n utils.getColor('warning'),\r\n utils.getColor('info'),\r\n utils.getColor('success'),\r\n utils.getColor('info'),\r\n utils.getColor('primary')\r\n ],\r\n borderWidth: 1\r\n }\r\n ]\r\n },\r\n options: {\r\n plugins: {\r\n tooltip: chartJsDefaultTooltip()\r\n },\r\n scales: {\r\n x: {\r\n grid: {\r\n color: utils.rgbaColor(utils.getGrays()['black'], 0.1)\r\n }\r\n },\r\n y: {\r\n grid: {\r\n color: utils.rgbaColor(utils.getGrays()['black'], 0.1),\r\n drawBorder: true\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","/* eslint-disable */\r\nimport 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.getSoftColors()['primary'],\r\n hoverBackgroundColor: utils.getColors()['primary']\r\n },\r\n {\r\n label: 'Dataset 2',\r\n data: getBubbleDataset(5, 5, 15, 0, 100),\r\n backgroundColor: utils.getSoftColors()['success'],\r\n hoverBackgroundColor: utils.getColors()['success']\r\n },\r\n {\r\n label: 'Dataset 3',\r\n data: getBubbleDataset(5, 5, 15, 0, 100),\r\n backgroundColor: utils.getSoftColors()['danger'],\r\n hoverBackgroundColor: utils.getColors()['danger']\r\n }\r\n ]\r\n },\r\n options: {\r\n plugins: {\r\n legend: {\r\n position: 'top'\r\n },\r\n tooltip: chartJsDefaultTooltip()\r\n },\r\n scales: {\r\n x: {\r\n grid: {\r\n color: utils.rgbaColor(utils.getGrays()['black'], 0.1)\r\n }\r\n },\r\n y: {\r\n grid: {\r\n color: utils.rgbaColor(utils.getGrays()['black'], 0.1)\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.getSoftColors()['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.getSoftColors()['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 },\r\n scales: {\r\n x: {\r\n grid: {\r\n color: utils.rgbaColor(utils.getGrays()['black'], 0.1)\r\n }\r\n },\r\n y: {\r\n grid: {\r\n color: utils.rgbaColor(utils.getGrays()['black'], 0.1)\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.2),\r\n utils.rgbaColor(utils.getColor('youtube'), 0.2),\r\n utils.rgbaColor(utils.getColor('twitter'), 0.2),\r\n utils.rgbaColor(utils.getColor('linkedin'), 0.2),\r\n utils.rgbaColor(utils.getColor('github'), 0.2)\r\n ],\r\n borderWidth: 1,\r\n borderColor: [\r\n utils.getColor('facebook'),\r\n utils.getColor('youtube'),\r\n utils.getColor('twitter'),\r\n utils.getColor('linkedin'),\r\n utils.getColor('github')\r\n ]\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 },\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 },\r\n scales: {\r\n x: {\r\n grid: {\r\n color: utils.rgbaColor(utils.getGrays()['black'], 0.1)\r\n }\r\n },\r\n y: {\r\n grid: {\r\n color: utils.rgbaColor(utils.getGrays()['black'], 0.1)\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 },\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 },\r\n maintainAspectRatio: false,\r\n scales: {\r\n r: {\r\n grid: {\r\n color: utils.rgbaColor(utils.getGrays()['black'], 0.1)\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 },\r\n maintainAspectRatio: false,\r\n scales: {\r\n r: {\r\n grid: {\r\n color: utils.rgbaColor(utils.getGrays()['black'], 0.1)\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 },\r\n scales: {\r\n x: {\r\n grid: {\r\n color: utils.rgbaColor(utils.getGrays()['black'], 0.1)\r\n }\r\n },\r\n y: {\r\n grid: {\r\n color: utils.rgbaColor(utils.getGrays()['black'], 0.1)\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(\r\n 'clickControl',\r\n ({ 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\n\r\nconst chartJsDefaultTooltip = () => ({\r\n backgroundColor: utils.getGrays()['100'],\r\n borderColor: utils.getGrays()['300'],\r\n borderWidth: 1,\r\n titleColor: utils.getGrays()['black'],\r\n callbacks: {\r\n labelTextColor() {\r\n return utils.getGrays()['black'];\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","/* eslint-disable */\r\nimport 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(\r\n 'marketShareDoughnut'\r\n );\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 * 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\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(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 { 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(\r\n '.echart-active-users-report'\r\n );\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 return `\r\n
    \r\n

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

    \r\n
    \r\n
    ${\r\n params[0].value\r\n }
    \r\n
    ${\r\n params[1].value\r\n }
    \r\n
    ${\r\n params[2].value\r\n }
    \r\n
    \r\n
    \r\n `;\r\n };\r\n const getDefaultOptions = () => ({\r\n color: [\r\n utils.getColor('primary'),\r\n utils.getColor('success'),\r\n utils.getColor('info'),\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.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 formatter: tooltipFormatter,\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: utils\r\n .getPastDates(30)\r\n .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,\r\n 5877, 6086, 6146, 6199, 6431, 6704, 7939, 8127, 8296, 8322, 8389,\r\n 8411, 8502, 8868, 8977, 9273, 9325, 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,\r\n 3840, 3932, 3949, 4003, 4298, 4424, 4869, 4922, 4973, 5155, 5267,\r\n 5566, 5689, 5692, 5758, 5773, 5799, 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,\r\n 1395, 1439, 1564, 1581, 1590, 1656, 1815, 1868, 2010, 2133, 2179,\r\n 2264, 2265, 2278, 2343, 2354, 2456, 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: { right: '30px', left: '5px', bottom: '20px', top: '20px' },\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(\r\n '.echart-assignment-scores'\r\n );\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.getColors().dark },\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 =\r\n ((params[0].value - params[1].value) / params[1].value) * 100;\r\n const perTemp = `\r\n
    \r\n \r\n
    ${Math.abs(percentage).toFixed(\r\n 2\r\n )} %
    \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\r\n .dayjs(params[0].axisValue)\r\n .format('MMM DD')} vs ${window.dayjs(prevDate).format('MMM DD')}

    \r\n
    \r\n

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

    \r\n ${perTemp}\r\n
    \r\n
    `;\r\n };\r\n\r\n const getDefaultOptions = (data1, data2) => () => ({\r\n color: utils.getGrays().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.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 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: { right: '40px', left: '5px', bottom: '10%', 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('#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(\r\n tab.querySelectorAll('[data-bs-toggle=\"tab\"]')\r\n );\r\n triggerTabList.forEach(function (triggerEl) {\r\n triggerEl.addEventListener('shown.bs.tab', function () {\r\n const key = triggerEl.href.split('#').pop();\r\n const $echartAudience = document\r\n .getElementById(key)\r\n .querySelector('.echart-audience');\r\n\r\n initChart(\r\n $echartAudience,\r\n getDefaultOptions(data.dataset[key][0], data.dataset[key][1])\r\n );\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 E-commerce */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst avgEnrollmentRateInit = () => {\r\n const $echartsLineAvgEnrollmentLms = document.querySelector(\r\n '.echart-avg-enrollment-rate'\r\n );\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(\r\n `#${userOptions.optionOne}`\r\n );\r\n const regularPaidCourseRate = document.querySelector(\r\n `#${userOptions.optionTwo}`\r\n );\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.getColors().dark },\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: [\r\n 2000, 2800, 2200, 3001, 600, 600, 2000, 2000, 700, 1000, 200, 900,\r\n 1200,\r\n ],\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: [\r\n 1700, 1200, 500, 700, 1500, 1100, 700, 1100, 2600, 2050, 1050, 600,\r\n 700,\r\n ],\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(\r\n '.echart-bandwidth-saved'\r\n );\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.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 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 return `
    \r\n

    ${window\r\n .dayjs(params[0].axisValue)\r\n .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,\r\n 34, 41, 37, 41, 40, 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().white,\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.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 formatter: tooltipFormatter,\r\n },\r\n xAxis: {\r\n type: 'category',\r\n data: utils\r\n .getPastDates(30)\r\n .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,\r\n 44, 34, 41, 37, 41, 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(\r\n \"[data-target='.echart-bounce-rate']\"\r\n );\r\n\r\n if (selectMenu) {\r\n selectMenu.addEventListener('change', e => {\r\n const value = e.currentTarget.value;\r\n chart.setOption({\r\n xAxis: {\r\n data: utils\r\n .getPastDates(value)\r\n .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(\r\n '.echart-browsed-courses'\r\n );\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 ${\r\n window.dayjs(params[0].axisValue).isValid()\r\n ? window.dayjs(params[0].axisValue).format('MMMM YYYY')\r\n : params[0].axisValue\r\n }\r\n

    \r\n ${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\r\n if ($echartsBrowsedCourses) {\r\n const userOptions = utils.getData($echartsBrowsedCourses, 'options');\r\n const newCourseBrowsedEl = document.querySelector(\r\n `#${userOptions.optionOne}`\r\n );\r\n const paidCourseBrowsedEl = document.querySelector(\r\n `#${userOptions.optionTwo}`\r\n );\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.getColors().dark },\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,\r\n 600, 832, 901, 934, 1290, 1330, 1320, 1250, 1190, 1345, 1009, 1320,\r\n ],\r\n itemStyle: {\r\n emphasis: {\r\n color: utils.getSoftColors().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.getSoftColors().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,\r\n 420, 800, 100, 1000, 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\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 let warning = utils.getColors()[\"warning\"];\r\n let primary = utils.getColors()[\"primary\"];\r\n\r\n const splitData = (rawData) => {\r\n let categoryData = [];\r\n let 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.getColors().dark },\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: function (value) {\r\n return new Date(value).toLocaleString(\"en-US\", {\r\n month: \"short\",\r\n day: \"numeric\",\r\n });\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\", function (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.getColors().dark },\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: function (value) {\r\n var 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: function (value) {\r\n return `$${value}`;\r\n },\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(\r\n '.echart-bar-course-enrollments'\r\n );\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.getColors().dark },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter: (params) =>\r\n `
    ${\r\n params.seriesName\r\n }
    ${params.name}: ${\r\n params.value[params.componentIndex + 1]\r\n }
    `,\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.getColors().dark },\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(\r\n new Date('5-6-2019'),\r\n new Date('5-6-2021'),\r\n 1000 * 60 * 60 * 24 * 30\r\n ),\r\n dataset: {\r\n revenue: [\r\n [\r\n 645, 500, 550, 550, 473, 405, 286, 601, 743, 450, 604, 815, 855, 722,\r\n 700, 896, 866, 952, 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,\r\n 400, 688, 650, 721, 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,\r\n 727, 816, 836, 952, 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,\r\n 500, 630, 680, 500, 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,\r\n 727, 716, 736, 820, 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,\r\n 527, 516, 536, 620, 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,\r\n 627, 716, 736, 952, 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,\r\n 500, 630, 680, 400, 420, 450, 650, 620, 700, 450, 340,\r\n ],\r\n ],\r\n },\r\n };\r\n\r\n const tooltipFormatter = params => {\r\n return `
    \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.getGrays().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 && \r\n initChart(\r\n el, \r\n getDefaultOptions(data.dataset[key][0], data.dataset[key][1])\r\n );\r\n });\r\n};\r\n\r\nexport default revenueChartInit;","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 },\r\n borderRadius: 5,\r\n backgroundColor: utils.getSoftColors().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: 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\n\r\nexport default dealStorageFunnelInit;\r\n","/* eslint-disable */\r\nconst 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 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()\r\n ? window.dayjs(params[0].axisValue).format('MMMM DD')\r\n : params[0].axisValue\r\n }\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 ? 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\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 return utils.getDates(\r\n window.dayjs().month(month).date(1), \r\n window.dayjs().month(Number(month) + 1).date(0),\r\n 1000 * 60 * 60 * 24 * 3\r\n );\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 = 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.getGrays().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.getColors().dark },\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: function (value) {\r\n var date = new Date(value);\r\n return `${months[date.getMonth()].substring(\r\n 0,\r\n 3\r\n )} ${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: { right: '8px', left: '40px', bottom: '15%', top: '20%' },\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.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 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(\r\n '.echart-line-payment'\r\n );\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.getColors().dark,\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:\r\n localStorage.getItem('theme') === 'light'\r\n ? utils.getGrays()['white']\r\n : utils.getColors().primary,\r\n },\r\n lineStyle: {\r\n color:\r\n localStorage.getItem('theme') === 'light'\r\n ? utils.rgbaColor(utils.getGrays()['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 localStorage.getItem('theme') === '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 localStorage.getItem('theme') === '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.value;\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.getColors().dark },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter: params =>\r\n `${params.data?.name} : ${((params.data?.value / total) * 100).toFixed(\r\n 2\r\n )}%`\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: [\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.getColors().dark },\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: [\r\n utils.getColors().primary,\r\n utils.getColors().info,\r\n utils.getGrays()[300],\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.getColors().dark },\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(\r\n '.echart-marketing-expenses'\r\n );\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.getColors().dark },\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.getColors().dark },\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 { 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(\r\n '.echart-real-time-users'\r\n );\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,\r\n 900, 906, 973, 911, 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,\r\n 22, 23, 24, 25,\r\n ];\r\n\r\n const tooltipFormatter = params => {\r\n return `\r\n
    \r\n
    \r\n Users : ${params[0].value}\r\n
    \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.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 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: { right: '0px', left: '0px', bottom: 0, top: 0 },\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 { 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(\r\n ECHART_BAR_REPORT_FOR_THIS_WEEK\r\n );\r\n\r\n if ($echartBarReportForThisWeek) {\r\n const selectChart = utils.getData($echartBarReportForThisWeek, \"chart\");\r\n const legendLastWeek = document.getElementById(selectChart?.option1);\r\n const legendThisWeek = 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.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 formatter: function (params) {\r\n return `
    ${\r\n params.seriesName\r\n }
    ${params.name}: ${\r\n params.value[params.componentIndex + 1]\r\n }
    `;\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: { right: \"0\", left: \"40px\", bottom: \"10%\", top: \"15%\" },\r\n });\r\n\r\n legendLastWeek && 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 && 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 return 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 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.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 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.getColors().dark },\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, 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(\r\n '.echart-session-by-browser'\r\n );\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: [\r\n utils.getColors().primary,\r\n utils.getColors().success,\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.getColors().dark },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter: params =>\r\n `${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(\r\n \"[data-target='.echart-session-by-browser']\"\r\n );\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.getColors().dark },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter: params =>\r\n `${params.data?.name} : ${((params.data?.value / total) * 100).toFixed(\r\n 2\r\n )}%`\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(\r\n '.echart-session-by-country'\r\n );\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.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 // 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 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.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 formatter: function (params) {\r\n return `
    ${\r\n params.seriesName\r\n }
    ${params.name}: ${\r\n params.value[params.componentIndex + 1]\r\n }
    `;\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: { right: '0', left: '30px', bottom: '10%', top: '20%' },\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\tconst ECHART_LINE_TOTAL_ORDER = '.echart-line-total-order';\r\n\r\n\t//\r\n\t// ─── TOTAL ORDER CHART ──────────────────────────────────────────────────────────\r\n\t//\r\n\tconst $echartLineTotalOrder = document.querySelector(ECHART_LINE_TOTAL_ORDER);\r\n\tif ($echartLineTotalOrder) {\r\n\t\t// Get options from data attribute\r\n\t\tconst userOptions = utils.getData($echartLineTotalOrder, 'options');\r\n\t\tconst chart = window.echarts.init($echartLineTotalOrder);\r\n\r\n\t\t// Default options\r\n\t\tconst getDefaultOptions = () => ({\r\n\t\t\ttooltip: {\r\n\t\t\t\ttriggerOn: 'mousemove',\r\n\t\t\t\ttrigger: 'axis',\r\n\t\t\t\tpadding: [7, 10],\r\n\t\t\t\tformatter: '{b0}: {c0}',\r\n\t\t\t\tbackgroundColor: utils.getGrays()['100'],\r\n\t\t\t\tborderColor: utils.getGrays()['300'],\r\n\t\t\t\ttextStyle: { color: utils.getColors().dark },\r\n\t\t\t\tborderWidth: 1,\r\n\t\t\t\ttransitionDuration: 0,\r\n\t\t\t\tposition(pos, params, dom, rect, size) {\r\n\t\t\t\t\treturn getPosition(pos, params, dom, rect, size);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\txAxis: {\r\n\t\t\t\ttype: 'category',\r\n\t\t\t\tdata: ['Week 4', 'Week 5', 'Week 6', 'Week 7'],\r\n\t\t\t\tboundaryGap: false,\r\n\t\t\t\tsplitLine: { show: false },\r\n\t\t\t\taxisLine: {\r\n\t\t\t\t\tshow: false,\r\n\t\t\t\t\tlineStyle: {\r\n\t\t\t\t\t\tcolor: utils.getGrays()['300'],\r\n\t\t\t\t\t\ttype: 'dashed'\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\taxisLabel: { show: false },\r\n\t\t\t\taxisTick: { show: false },\r\n\t\t\t\taxisPointer: { type: 'none' }\r\n\t\t\t},\r\n\t\t\tyAxis: {\r\n\t\t\t\ttype: 'value',\r\n\t\t\t\tsplitLine: { show: false },\r\n\t\t\t\taxisLine: { show: false },\r\n\t\t\t\taxisLabel: { show: false },\r\n\t\t\t\taxisTick: { show: false },\r\n\t\t\t\taxisPointer: { show: false }\r\n\t\t\t},\r\n\t\t\tseries: [\r\n\t\t\t\t{\r\n\t\t\t\t\ttype: 'line',\r\n\t\t\t\t\tlineStyle: {\r\n\t\t\t\t\t\tcolor: utils.getColors().primary,\r\n\t\t\t\t\t\twidth: 3\r\n\t\t\t\t\t},\r\n\t\t\t\t\titemStyle: {\r\n\t\t\t\t\t\tcolor: utils.getGrays().white,\r\n\t\t\t\t\t\tborderColor: utils.getColors().primary,\r\n\t\t\t\t\t\tborderWidth: 2\r\n\t\t\t\t\t},\r\n\t\t\t\t\thoverAnimation: true,\r\n\t\t\t\t\tdata: [20, 40, 100, 120],\r\n\t\t\t\t\t// connectNulls: true,\r\n\t\t\t\t\tsmooth: 0.6,\r\n\t\t\t\t\tsmoothMonotone: 'x',\r\n\t\t\t\t\tshowSymbol: false,\r\n\t\t\t\t\tsymbol: 'circle',\r\n\t\t\t\t\tsymbolSize: 8,\r\n\t\t\t\t\tareaStyle: {\r\n\t\t\t\t\t\tcolor: {\r\n\t\t\t\t\t\t\ttype: 'linear',\r\n\t\t\t\t\t\t\tx: 0,\r\n\t\t\t\t\t\t\ty: 0,\r\n\t\t\t\t\t\t\tx2: 0,\r\n\t\t\t\t\t\t\ty2: 1,\r\n\t\t\t\t\t\t\tcolorStops: [\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\toffset: 0,\r\n\t\t\t\t\t\t\t\t\tcolor: utils.rgbaColor(utils.getColors().primary, 0.25)\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\toffset: 1,\r\n\t\t\t\t\t\t\t\t\tcolor: utils.rgbaColor(utils.getColors().primary, 0)\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t]\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\tgrid: {\r\n\t\t\t\tbottom: '2%',\r\n\t\t\t\ttop: '0%',\r\n\t\t\t\tright: '10px',\r\n\t\t\t\tleft: '10px'\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\techartSetOption(chart, userOptions, getDefaultOptions);\r\n\t}\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(\r\n ECHART_LINE_TOTAL_SALES_ECOMM\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 function getFormatter(params) {\r\n return params\r\n .map(\r\n (\r\n { value, borderColor },\r\n index\r\n ) => `\r\n ${\r\n index === 0 ? 'Last Month' : 'Previous Year'\r\n }: ${value}`\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(\r\n TOTAL_SALES_PREVIOUS_YEAR\r\n );\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.getColors().dark },\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(\r\n ECHART_LINE_TOTAL_SALES\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 function getFormatter(params) {\r\n const { name, value } = params[0];\r\n var 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.getColors().dark },\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: function (value) {\r\n var 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: { right: \"28px\", left: \"40px\", bottom: \"15%\", top: \"5%\" },\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\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: function (params) {\r\n const { name, value } = params[0];\r\n var 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: function (value) {\r\n var 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.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 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\n/* -------------------------------------------------------------------------- */\r\n/* User By Location Map */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst userByLocationInit = () => {\r\n const $userByLocationMap = document.querySelector(\r\n '.echart-user-by-location-map'\r\n );\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.getColors().dark },\r\n borderWidth: 1,\r\n transitionDuration: 0,\r\n formatter: (params) =>\r\n `${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\r\n .querySelector('.user-by-location-map-zoom')\r\n ?.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\r\n .querySelector('.user-by-location-map-zoomOut')\r\n ?.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(\r\n '.echart-users-by-time'\r\n );\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 return `
    \r\n

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

    \r\n
    \r\n

    \r\n ${window\r\n .dayjs()\r\n .hour(params.data[1])\r\n .format('hA')} : ${\r\n params.data[2]\r\n }\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.getColors().dark },\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: data,\r\n label: {\r\n show: false,\r\n },\r\n itemStyle: {\r\n borderColor: utils.getColor('white'),\r\n borderWidth: 3,\r\n },\r\n emphasis: {\r\n itemStyle: {\r\n shadowBlur: 3,\r\n shadowColor: utils.rgbaColor(utils.getGrays()['black'], 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(\r\n '.echart-weekly-goals-lms'\r\n );\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","/* eslint-disable */\r\nimport 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.getColors().dark },\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: { right: 5, left: 10, top: 0, bottom: 0 }\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 draggableInit from './draggable';\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 userByLocationInit from './charts/echarts/user-by-location-lms';\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(bulkSelectInit);\r\ndocReady(chatInit);\r\ndocReady(quantityInit);\r\ndocReady(navbarComboInit);\r\ndocReady(listInit);\r\ndocReady(swiperInit);\r\ndocReady(ratingInit);\r\ndocReady(draggableInit);\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(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\n"]}