/** * Dashboard eCommerce */ 'use strict'; (function () { let cardColor, headingColor, labelColor, shadeColor, borderColor, heatMap1, heatMap2, heatMap3, heatMap4; if (isDarkStyle) { cardColor = config.colors_dark.cardColor; headingColor = config.colors_dark.headingColor; labelColor = config.colors_dark.textMuted; borderColor = config.colors_dark.borderColor; shadeColor = 'dark'; heatMap1 = '#4f51c0'; heatMap2 = '#595cd9'; heatMap3 = '#8789ff'; heatMap4 = '#c3c4ff'; } else { cardColor = config.colors.cardColor; headingColor = config.colors.headingColor; labelColor = config.colors.textMuted; borderColor = config.colors.borderColor; shadeColor = ''; heatMap1 = '#e1e2ff'; heatMap2 = '#c3c4ff'; heatMap3 = '#a5a7ff'; heatMap4 = '#696cff'; } // Visitor Bar Chart // -------------------------------------------------------------------- const visitorBarChartEl = document.querySelector('#visitorsChart'), visitorBarChartConfig = { chart: { height: 120, width: 200, parentHeightOffset: 0, type: 'bar', toolbar: { show: false } }, plotOptions: { bar: { barHeight: '75%', columnWidth: '60%', startingShape: 'rounded', endingShape: 'rounded', borderRadius: 9, distributed: true } }, grid: { show: false, padding: { top: -25, bottom: -12 } }, colors: [ config.colors_label.primary, config.colors_label.primary, config.colors_label.primary, config.colors_label.primary, config.colors_label.primary, config.colors.primary, config.colors_label.primary ], dataLabels: { enabled: false }, series: [ { data: [40, 95, 60, 45, 90, 50, 75] } ], legend: { show: false }, responsive: [ { breakpoint: 1440, options: { plotOptions: { bar: { borderRadius: 9, columnWidth: '60%' } } } }, { breakpoint: 1300, options: { plotOptions: { bar: { borderRadius: 9, columnWidth: '60%' } } } }, { breakpoint: 1200, options: { plotOptions: { bar: { borderRadius: 8, columnWidth: '50%' } } } }, { breakpoint: 1040, options: { plotOptions: { bar: { borderRadius: 8, columnWidth: '50%' } } } }, { breakpoint: 991, options: { plotOptions: { bar: { borderRadius: 8, columnWidth: '50%' } } } }, { breakpoint: 420, options: { plotOptions: { bar: { borderRadius: 8, columnWidth: '50%' } } } } ], xaxis: { categories: ['M', 'T', 'W', 'T', 'F', 'S', 'S'], axisBorder: { show: false }, axisTicks: { show: false }, labels: { style: { colors: labelColor, fontSize: '13px' } } }, yaxis: { labels: { show: false } } }; if (typeof visitorBarChartEl !== undefined && visitorBarChartEl !== null) { const visitorBarChart = new ApexCharts(visitorBarChartEl, visitorBarChartConfig); visitorBarChart.render(); } // Activity Area Chart // -------------------------------------------------------------------- const activityAreaChartEl = document.querySelector('#activityChart'), activityAreaChartConfig = { chart: { height: 120, width: 220, parentHeightOffset: 0, toolbar: { show: false }, type: 'area' }, dataLabels: { enabled: false }, stroke: { width: 2, curve: 'smooth' }, series: [ { data: [15, 22, 17, 40, 12, 35, 25] } ], colors: [config.colors.success], fill: { type: 'gradient', gradient: { shade: shadeColor, shadeIntensity: 0.8, opacityFrom: 0.8, opacityTo: 0.25, stops: [0, 85, 100] } }, grid: { show: false, padding: { top: -20, bottom: -8 } }, legend: { show: false }, xaxis: { categories: ['Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su'], axisBorder: { show: false }, axisTicks: { show: false }, labels: { style: { fontSize: '13px', colors: labelColor } } }, yaxis: { labels: { show: false } } }; if (typeof activityAreaChartEl !== undefined && activityAreaChartEl !== null) { const activityAreaChart = new ApexCharts(activityAreaChartEl, activityAreaChartConfig); activityAreaChart.render(); } // Profit Bar Chart // -------------------------------------------------------------------- const profitBarChartEl = document.querySelector('#profitChart'), profitBarChartConfig = { series: [ { data: [58, 28, 50, 80] }, { data: [50, 22, 65, 72] } ], chart: { type: 'bar', height: 80, toolbar: { tools: { download: false } } }, plotOptions: { bar: { columnWidth: '65%', startingShape: 'rounded', endingShape: 'rounded', borderRadius: 3, dataLabels: { show: false } } }, grid: { show: false, padding: { top: -30, bottom: -12, left: -10, right: 0 } }, colors: [config.colors.success, config.colors_label.success], dataLabels: { enabled: false }, stroke: { show: true, width: 5, colors: labelColor }, legend: { show: false }, xaxis: { categories: ['Jan', 'Apr', 'Jul', 'Oct'], axisBorder: { show: false }, axisTicks: { show: false }, labels: { style: { colors: labelColor, fontSize: '13px' } } }, yaxis: { labels: { show: false } } }; if (typeof profitBarChartEl !== undefined && profitBarChartEl !== null) { const profitBarChart = new ApexCharts(profitBarChartEl, profitBarChartConfig); profitBarChart.render(); } // Total Sales Radial Bar Chart // -------------------------------------------------------------------- const expensesRadialChartEl = document.querySelector('#expensesChart'), expensesRadialChartConfig = { chart: { height: 130, sparkline: { enabled: true }, parentHeightOffset: 0, type: 'radialBar' }, colors: [config.colors.primary], series: [78], plotOptions: { radialBar: { startAngle: -90, endAngle: 90, hollow: { size: '55%' }, track: { background: config.colors_label.secondary }, dataLabels: { name: { show: false }, value: { fontSize: '18px', fontFamily: 'Public Sans', color: headingColor, fontWeight: 500, offsetY: -5 } } } }, grid: { show: false, padding: { left: -10, right: -10, bottom: 5 } }, stroke: { lineCap: 'round' }, labels: ['Progress'] }; if (typeof expensesRadialChartEl !== undefined && expensesRadialChartEl !== null) { const expensesRadialChart = new ApexCharts(expensesRadialChartEl, expensesRadialChartConfig); expensesRadialChart.render(); } // Total Income - Area Chart // -------------------------------------------------------------------- const totalIncomeEl = document.querySelector('#totalIncomeChart'), totalIncomeConfig = { chart: { height: 290, type: 'area', toolbar: false, dropShadow: { enabled: true, top: 14, left: 2, blur: 3, color: config.colors.primary, opacity: 0.15 } }, series: [ { data: [3350, 3350, 4800, 4800, 2950, 2950, 1800, 1800, 3750, 3750, 5700, 5700] } ], dataLabels: { enabled: false }, stroke: { width: 3, curve: 'straight' }, colors: [config.colors.primary], fill: { type: 'gradient', gradient: { shade: shadeColor, shadeIntensity: 0.8, opacityFrom: 0.7, opacityTo: 0.25, stops: [0, 95, 100] } }, grid: { show: true, strokeDashArray: 10, borderColor: borderColor, padding: { top: -15, bottom: -10, left: 0, right: 0 } }, xaxis: { categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'], labels: { offsetX: 0, style: { colors: labelColor, fontFamily: 'Public Sans', fontSize: '13px' } }, axisBorder: { show: false }, axisTicks: { show: false }, lines: { show: false } }, yaxis: { labels: { offsetX: -15, formatter: function (val) { return '$' + parseInt(val / 1000) + 'k'; }, style: { fontSize: '13px', fontFamily: 'Public Sans', colors: labelColor } }, min: 1000, max: 6000, tickAmount: 5 } }; if (typeof totalIncomeEl !== undefined && totalIncomeEl !== null) { const totalIncome = new ApexCharts(totalIncomeEl, totalIncomeConfig); totalIncome.render(); } // Performance - Radar Chart // -------------------------------------------------------------------- const performanceChartEl = document.querySelector('#performanceChart'), performanceChartConfig = { series: [ { name: 'Income', data: [26, 29, 31, 40, 29, 24] }, { name: 'Earning', data: [30, 26, 24, 26, 24, 40] } ], chart: { height: 310, type: 'radar', toolbar: { show: false }, dropShadow: { enabled: true, enabledOnSeries: undefined, top: 6, left: 0, blur: 6, color: '#000', opacity: 0.14 } }, plotOptions: { radar: { polygons: { strokeColors: borderColor, connectorColors: borderColor } } }, stroke: { show: false, width: 0 }, legend: { show: true, fontSize: '13px', position: 'bottom', labels: { colors: '#aab3bf', useSeriesColors: false }, markers: { height: 10, width: 10, offsetX: -5 }, itemMargin: { horizontal: 10 }, onItemHover: { highlightDataSeries: false } }, colors: [config.colors.primary, config.colors.info], fill: { opacity: [1, 0.85] }, markers: { size: 0 }, grid: { show: false, padding: { top: -8, bottom: -5 } }, xaxis: { categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun'], labels: { show: true, style: { colors: [labelColor, labelColor, labelColor, labelColor, labelColor, labelColor], fontSize: '13px', fontFamily: 'Public Sans' } } }, yaxis: { show: false, min: 0, max: 40, tickAmount: 4 } }; if (typeof performanceChartEl !== undefined && performanceChartEl !== null) { const performanceChart = new ApexCharts(performanceChartEl, performanceChartConfig); performanceChart.render(); } // Conversion rate Line Chart // -------------------------------------------------------------------- const conversionLineChartEl = document.querySelector('#conversionRateChart'), conversionLineChartConfig = { chart: { height: 80, width: 140, type: 'line', toolbar: { show: false }, dropShadow: { enabled: true, top: 10, left: 5, blur: 3, color: config.colors.primary, opacity: 0.15 }, sparkline: { enabled: true } }, markers: { size: 6, colors: 'transparent', strokeColors: 'transparent', strokeWidth: 4, discrete: [ { fillColor: config.colors.white, seriesIndex: 0, dataPointIndex: 3, strokeColor: config.colors.primary, strokeWidth: 4, size: 6, radius: 2 } ], hover: { size: 7 } }, grid: { show: false, padding: { right: 8 } }, colors: [config.colors.primary], dataLabels: { enabled: false }, stroke: { width: 5, curve: 'smooth' }, series: [ { data: [137, 210, 160, 245] } ], xaxis: { show: false, lines: { show: false }, labels: { show: false }, axisBorder: { show: false } }, yaxis: { show: false } }; if (typeof conversionLineChartEl !== undefined && conversionLineChartEl !== null) { const conversionLineChart = new ApexCharts(conversionLineChartEl, conversionLineChartConfig); conversionLineChart.render(); } // Conversion rate Line Chart // -------------------------------------------------------------------- const expensesBarChartEl = document.querySelector('#expensesBarChart'), expensesBarChartConfig = { chart: { height: 190, stacked: true, type: 'bar', toolbar: { show: false } }, series: [ { name: '2021', data: [15, 37, 14, 30, 38, 30, 20, 13, 14, 23] }, { name: '2020', data: [-33, -23, -29, -21, -25, -21, -23, -19, -37, -22] } ], plotOptions: { bar: { horizontal: false, columnWidth: '40%', borderRadius: 5, startingShape: 'rounded', endingShape: 'rounded' } }, colors: [config.colors.primary, config.colors.warning], dataLabels: { enabled: false }, stroke: { curve: 'smooth', width: 2, lineCap: 'round', colors: [cardColor] }, legend: { show: false }, grid: { show: false, padding: { top: -10 } }, fill: { opacity: [1, 1] }, xaxis: { show: false, categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul'], labels: { show: false }, axisTicks: { show: false }, axisBorder: { show: false } }, yaxis: { show: false }, responsive: [ { breakpoint: 1440, options: { plotOptions: { bar: { borderRadius: 5, columnWidth: '60%' } } } }, { breakpoint: 1300, options: { plotOptions: { bar: { borderRadius: 5, columnWidth: '70%' } } } }, { breakpoint: 1200, options: { plotOptions: { bar: { borderRadius: 4, columnWidth: '50%' } } } }, { breakpoint: 1040, options: { plotOptions: { bar: { borderRadius: 4, columnWidth: '60%' } } } }, { breakpoint: 991, options: { plotOptions: { bar: { borderRadius: 4, columnWidth: '40%' } } } }, { breakpoint: 420, options: { plotOptions: { bar: { borderRadius: 5, columnWidth: '60%' } } } }, { breakpoint: 360, options: { plotOptions: { bar: { borderRadius: 5, columnWidth: '70%' } } } } ], states: { hover: { filter: { type: 'none' } }, active: { filter: { type: 'none' } } } }; if (typeof expensesBarChartEl !== undefined && expensesBarChartEl !== null) { const expensesBarChart = new ApexCharts(expensesBarChartEl, expensesBarChartConfig); expensesBarChart.render(); } // Total Balance - Line Chart // -------------------------------------------------------------------- const totalBalanceChartEl = document.querySelector('#totalBalanceChart'), totalBalanceChartConfig = { series: [ { data: [137, 210, 160, 275, 205, 315] } ], chart: { height: 245, parentHeightOffset: 0, parentWidthOffset: 0, type: 'line', dropShadow: { enabled: true, top: 10, left: 5, blur: 3, color: config.colors.warning, opacity: 0.15 }, toolbar: { show: false } }, dataLabels: { enabled: false }, stroke: { width: 4, curve: 'smooth' }, legend: { show: false }, colors: [config.colors.warning], markers: { size: 6, colors: 'transparent', strokeColors: 'transparent', strokeWidth: 4, discrete: [ { fillColor: config.colors.white, seriesIndex: 0, dataPointIndex: 5, strokeColor: config.colors.warning, strokeWidth: 8, size: 8, radius: 8 } ], hover: { size: 9 } }, grid: { show: false, padding: { top: -10, left: 0, right: 0, bottom: 10 } }, xaxis: { categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun'], axisBorder: { show: false }, axisTicks: { show: false }, labels: { show: true, style: { fontSize: '13px', fontFamily: 'Public Sans', colors: labelColor } } }, yaxis: { labels: { show: false } } }; if (typeof totalBalanceChartEl !== undefined && totalBalanceChartEl !== null) { const totalBalanceChart = new ApexCharts(totalBalanceChartEl, totalBalanceChartConfig); totalBalanceChart.render(); } })();