'use client' // MUI Imports import Grid from '@mui/material/Grid2' // Component Imports import DistributedBarChartOrder from '@views/dashboards/crm/DistributedBarChartOrder' import EarningReportsWithTabs from '@views/dashboards/crm/EarningReportsWithTabs' // Server Action Imports import Loading from '../../../../../../components/layout/shared/Loading' import { useDashboardAnalytics } from '../../../../../../services/queries/analytics' import { DashboardReport, PaymentDataItem, ProductData, RecentSale } from '../../../../../../types/services/analytic' const DashboardOverview = () => { const { data, isLoading } = useDashboardAnalytics() const formatDate = (dateString: any) => { return new Date(dateString).toLocaleDateString('id-ID', { month: 'short', day: 'numeric' }) } const transformSalesData = (data: DashboardReport) => { return [ { type: 'products', avatarIcon: 'tabler-package', date: data.top_products.map((d: ProductData) => d.product_name), series: [{ data: data.top_products.map((d: ProductData) => d.revenue) }] }, { type: 'orders', avatarIcon: 'tabler-shopping-cart', date: data.recent_sales.map((d: RecentSale) => formatDate(d.date)), series: [{ data: data.recent_sales.map((d: RecentSale) => d.net_sales) }] }, { type: 'payments', avatarIcon: 'tabler-credit-card-pay', date: data.payment_methods.map((d: PaymentDataItem) => d.payment_method_name), series: [{ data: data.payment_methods.map((d: PaymentDataItem) => d.total_amount) }] }, ] } if (isLoading) return return ( ) } export default DashboardOverview