Skip to content

Commit 58b0528

Browse files
committed
⚡️ Lazy load all charts
1 parent f2bd999 commit 58b0528

File tree

3 files changed

+43
-14
lines changed

3 files changed

+43
-14
lines changed

src/components/card/OrpVaccinations/DoseOrderCumulativeDosesChart/DoseOrderCumulativeDosesChartContainer.js

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,15 @@
1-
import React, { useState } from "react";
1+
import React, { lazy, Suspense, useState } from "react";
22
import PropTypes from "prop-types";
33

44
import { Box, Grid, Typography } from "@material-ui/core";
5+
import { Skeleton } from "@material-ui/lab";
56

67
import { DateLimitSelect } from "../..";
78
import { convertToDoseOrderCumulativeDosesData } from "../orpVaccinationsUtils";
8-
import DoseOrderCumulativeDosesChart from "./DoseOrderCumulativeDosesChart";
9+
10+
const DoseOrderCumulativeDosesChart = lazy(() =>
11+
import("./DoseOrderCumulativeDosesChart")
12+
);
913

1014
export default function DoseOrderCumulativeDosesChartContainer({
1115
data,
@@ -39,10 +43,16 @@ export default function DoseOrderCumulativeDosesChartContainer({
3943
</Grid>
4044
</Grid>
4145
</Box>
42-
<DoseOrderCumulativeDosesChart
43-
data={convertToDoseOrderCumulativeDosesData(data, limit)}
44-
population={orpPopulation}
45-
/>
46+
<Suspense
47+
fallback={
48+
<Skeleton variant="rect" width="100%" height={300} animation="wave" />
49+
}
50+
>
51+
<DoseOrderCumulativeDosesChart
52+
data={convertToDoseOrderCumulativeDosesData(data, limit)}
53+
population={orpPopulation}
54+
/>
55+
</Suspense>
4656
</>
4757
);
4858
}

src/components/card/OrpVaccinations/DoseOrderNewDosesChart/DoseOrderNewDosesChartContainer.js

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
1-
import React, { useState } from "react";
1+
import React, { useState, lazy, Suspense } from "react";
22
import PropTypes from "prop-types";
33
import { Box, Grid, Typography } from "@material-ui/core";
4+
import { Skeleton } from "@material-ui/lab";
5+
46
import { DateLimitSelect } from "../..";
5-
import DoseOrderNewDosesChart from "./DoseOrderNewDosesChart";
67
import { convertToDoseOrderNewDosesData } from "../orpVaccinationsUtils";
78

9+
const DoseOrderNewDosesChart = lazy(() => import("./DoseOrderNewDosesChart"));
10+
811
export default function DoseOrderNewDosesChartContainer({ data }) {
912
const [limit, setLimit] = useState(90);
1013
const handleDateLimitChange = ({ select }) => {
@@ -34,9 +37,15 @@ export default function DoseOrderNewDosesChartContainer({ data }) {
3437
</Grid>
3538
</Grid>
3639
</Box>
37-
<DoseOrderNewDosesChart
38-
data={convertToDoseOrderNewDosesData(data, limit)}
39-
/>
40+
<Suspense
41+
fallback={
42+
<Skeleton variant="rect" width="100%" height={300} animation="wave" />
43+
}
44+
>
45+
<DoseOrderNewDosesChart
46+
data={convertToDoseOrderNewDosesData(data, limit)}
47+
/>
48+
</Suspense>
4049
</>
4150
);
4251
}

src/components/card/OrpVaccinations/VaccineTypesChart/VaccineTypesChartContainer.js

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,27 @@
1-
import React from "react";
1+
import React, { lazy, Suspense } from "react";
22
import PropTypes from "prop-types";
33
import { Typography } from "@material-ui/core";
4+
import { Skeleton } from "@material-ui/lab";
45

5-
import VaccineTypesChart from "./VaccineTypesChart";
66
import { convertToVaccineTypes } from "../orpVaccinationsUtils";
77

8+
const VaccineTypesChart = lazy(() => import("./VaccineTypesChart"));
9+
810
export default function VaccineTypesChartContainer({ vaccines, vaccineNames }) {
911
return (
1012
<>
1113
<Typography variant="h6">
1214
Vykázaná očkování celkem dle typu očkovací látky
1315
</Typography>
14-
<VaccineTypesChart data={convertToVaccineTypes(vaccines, vaccineNames)} />
16+
<Suspense
17+
fallback={
18+
<Skeleton variant="rect" width="100%" height={260} animation="wave" />
19+
}
20+
>
21+
<VaccineTypesChart
22+
data={convertToVaccineTypes(vaccines, vaccineNames)}
23+
/>
24+
</Suspense>
1525
</>
1626
);
1727
}

0 commit comments

Comments
 (0)