Skip to content

Commit b8cb206

Browse files
committed
Update the function to to display the information details
1 parent 39afc0a commit b8cb206

1 file changed

Lines changed: 88 additions & 9 deletions

File tree

src/components/Details.js

Lines changed: 88 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,93 @@
1+
/* eslint-disable no-underscore-dangle */
12
import { BsArrowRightCircle } from 'react-icons/bs';
3+
import { FaVirus } from 'react-icons/fa';
4+
import { useSelector, useDispatch } from 'react-redux';
5+
import { useParams } from 'react-router-dom';
6+
import { useEffect } from 'react';
7+
import { displayInformations } from '../redux/actions/AllInfo';
8+
import '../styles/Details.css';
29

3-
const Details = () => (
4-
<div className="dRegions">
5-
<span>CITY/TOWN BREAKDOWN - 2022 </span>
6-
<div className="region">
7-
<h3>{}</h3>
8-
<span>{}</span>
9-
<BsArrowRightCircle className="arrow" />
10+
const Details = () => {
11+
const params = useParams();
12+
const countriesInfo = useSelector((state) => state.RegionsReducer);
13+
const filtered = countriesInfo.filter((item) => item.country === params.country);
14+
const dispatch = useDispatch();
15+
16+
useEffect(() => {
17+
if (countriesInfo.length === 0) {
18+
dispatch(displayInformations());
19+
}
20+
}, []);
21+
22+
return (
23+
<div className="dRegions">
24+
{ filtered.map((info) => (
25+
<div key={info.country}>
26+
<div className="header">
27+
<FaVirus className="virsus-icon" />
28+
<div className="naCases">
29+
<h1>
30+
{info.country}
31+
{' '}
32+
</h1>
33+
<span>{info.cases}</span>
34+
</div>
35+
</div>
36+
<div>
37+
<div className="info">
38+
<p>Today cases in the country</p>
39+
<div className="cases-number">
40+
<span>{info.todayCases}</span>
41+
<BsArrowRightCircle className="arrow" />
42+
</div>
43+
</div>
44+
<div className="info">
45+
<p>General deaths</p>
46+
<div className="cases-number">
47+
<span>{info.deaths}</span>
48+
<BsArrowRightCircle className="arrow" />
49+
</div>
50+
</div>
51+
<div className="info">
52+
<p>Total Recovered</p>
53+
<div className="cases-number">
54+
<span>{info.recovered}</span>
55+
<BsArrowRightCircle className="arrow" />
56+
</div>
57+
</div>
58+
<div className="info">
59+
<p>Continent name</p>
60+
<div className="cases-number">
61+
<span>{info.continent}</span>
62+
<BsArrowRightCircle className="arrow" />
63+
</div>
64+
</div>
65+
<div className="info">
66+
<p>Total tests that made</p>
67+
<div className="cases-number">
68+
<span>{info.tests}</span>
69+
<BsArrowRightCircle className="arrow" />
70+
</div>
71+
</div>
72+
<div className="info">
73+
<p>Today deaths</p>
74+
<div className="cases-number">
75+
<span>{info.todayDeaths}</span>
76+
<BsArrowRightCircle className="arrow" />
77+
</div>
78+
</div>
79+
<div className="info">
80+
<p>Today Recovered</p>
81+
<div className="cases-number">
82+
<span>{info.todayRecovered}</span>
83+
<BsArrowRightCircle className="arrow" />
84+
</div>
85+
</div>
86+
</div>
87+
</div>
88+
))}
1089
</div>
11-
</div>
12-
);
90+
);
91+
};
1392

1493
export default Details;

0 commit comments

Comments
 (0)