1- import React , { useMemo , CSSProperties } from 'react' ;
2- import { useGetList } from 'react-admin' ;
3- import { useMediaQuery , Theme } from '@mui/material' ;
1+ import React , { useMemo , CSSProperties , Suspense } from 'react' ;
2+ import { Translate , useGetList } from 'react-admin' ;
3+ import {
4+ useMediaQuery ,
5+ Theme ,
6+ Skeleton ,
7+ Card ,
8+ CardHeader ,
9+ CardContent ,
10+ } from '@mui/material' ;
411import { subDays , startOfDay } from 'date-fns' ;
512
613import Welcome from './Welcome' ;
@@ -9,7 +16,6 @@ import NbNewOrders from './NbNewOrders';
916import PendingOrders from './PendingOrders' ;
1017import PendingReviews from './PendingReviews' ;
1118import NewCustomers from './NewCustomers' ;
12- import OrderChart from './OrderChart' ;
1319
1420import { Order } from '../types' ;
1521
@@ -37,6 +43,8 @@ const styles = {
3743const Spacer = ( ) => < span style = { { width : '1em' } } /> ;
3844const VerticalSpacer = ( ) => < span style = { { height : '1em' } } /> ;
3945
46+ const OrderChart = React . lazy ( ( ) => import ( './OrderChart' ) ) ;
47+
4048const Dashboard = ( ) => {
4149 const isXSmall = useMediaQuery ( ( theme : Theme ) =>
4250 theme . breakpoints . down ( 'sm' )
@@ -109,7 +117,18 @@ const Dashboard = () => {
109117 < NbNewOrders value = { nbNewOrders } />
110118 </ div >
111119 < div style = { styles . singleCol } >
112- < OrderChart orders = { recentOrders } />
120+ < Card >
121+ < CardHeader
122+ title = {
123+ < Translate i18nKey = "pos.dashboard.month_history" />
124+ }
125+ />
126+ < CardContent >
127+ < Suspense fallback = { < Skeleton height = { 300 } /> } >
128+ < OrderChart orders = { recentOrders } />
129+ </ Suspense >
130+ </ CardContent >
131+ </ Card >
113132 </ div >
114133 < div style = { styles . singleCol } >
115134 < PendingOrders orders = { pendingOrders } />
@@ -126,7 +145,18 @@ const Dashboard = () => {
126145 < NbNewOrders value = { nbNewOrders } />
127146 </ div >
128147 < div style = { styles . singleCol } >
129- < OrderChart orders = { recentOrders } />
148+ < Card >
149+ < CardHeader
150+ title = {
151+ < Translate i18nKey = "pos.dashboard.month_history" />
152+ }
153+ />
154+ < CardContent >
155+ < Suspense fallback = { < Skeleton height = { 300 } /> } >
156+ < OrderChart orders = { recentOrders } />
157+ </ Suspense >
158+ </ CardContent >
159+ </ Card >
130160 </ div >
131161 < div style = { styles . singleCol } >
132162 < PendingOrders orders = { pendingOrders } />
0 commit comments