edit metrics
This commit is contained in:
parent
69450a7f67
commit
36429c61c6
@ -1,6 +1,8 @@
|
|||||||
import Image from "next/image";
|
import Image from "next/image";
|
||||||
|
|
||||||
const MetricCard = ({ title, iconSrc, metric, unit = "", styles }) => {
|
import styles from "./MetricCard.module.css";
|
||||||
|
|
||||||
|
const MetricCard = ({ title, iconSrc, metric, unit = "" }) => {
|
||||||
return (
|
return (
|
||||||
<div className={styles.statsCard}>
|
<div className={styles.statsCard}>
|
||||||
<p>{title}</p>
|
<p>{title}</p>
|
||||||
|
16
components/MetricCard.module.css
Normal file
16
components/MetricCard.module.css
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
.statsCard {
|
||||||
|
background: rgba(255, 255, 255, 0.95);
|
||||||
|
border-radius: 20px;
|
||||||
|
padding: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.statsCardContent {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 1fr;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (max-width: 475px) {
|
||||||
|
.statsCardContent {
|
||||||
|
grid-template-columns: 1fr 2fr;
|
||||||
|
}
|
||||||
|
}
|
@ -7,7 +7,9 @@ import {
|
|||||||
} from "../services/utils";
|
} from "../services/utils";
|
||||||
import MetricCard from "./MetricCard";
|
import MetricCard from "./MetricCard";
|
||||||
|
|
||||||
const Metrics = ({ styles, data, systemUsed }) => {
|
import styles from "./Metrics.module.css";
|
||||||
|
|
||||||
|
const Metrics = ({ data, systemUsed }) => {
|
||||||
return (
|
return (
|
||||||
<div className={styles.statsBox}>
|
<div className={styles.statsBox}>
|
||||||
<MetricCard
|
<MetricCard
|
||||||
@ -15,7 +17,6 @@ const Metrics = ({ styles, data, systemUsed }) => {
|
|||||||
iconSrc={"/icons/humidity.png"}
|
iconSrc={"/icons/humidity.png"}
|
||||||
metric={data.main.humidity}
|
metric={data.main.humidity}
|
||||||
unit={"%"}
|
unit={"%"}
|
||||||
styles={styles}
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<MetricCard
|
<MetricCard
|
||||||
@ -23,14 +24,12 @@ const Metrics = ({ styles, data, systemUsed }) => {
|
|||||||
iconSrc={"/icons/wind.png"}
|
iconSrc={"/icons/wind.png"}
|
||||||
metric={getWindSpeed(systemUsed, data.wind.speed)}
|
metric={getWindSpeed(systemUsed, data.wind.speed)}
|
||||||
unit={systemUsed == "metric" ? "m/s" : "m/h"}
|
unit={systemUsed == "metric" ? "m/s" : "m/h"}
|
||||||
styles={styles}
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<MetricCard
|
<MetricCard
|
||||||
title={"Wind direction"}
|
title={"Wind direction"}
|
||||||
iconSrc={"/icons/compass.png"}
|
iconSrc={"/icons/compass.png"}
|
||||||
metric={degToCompass(data.wind.deg)}
|
metric={degToCompass(data.wind.deg)}
|
||||||
styles={styles}
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<MetricCard
|
<MetricCard
|
||||||
@ -38,7 +37,6 @@ const Metrics = ({ styles, data, systemUsed }) => {
|
|||||||
iconSrc={"/icons/binocular.png"}
|
iconSrc={"/icons/binocular.png"}
|
||||||
metric={getVisibility(systemUsed, data.visibility)}
|
metric={getVisibility(systemUsed, data.visibility)}
|
||||||
unit={systemUsed == "metric" ? "km" : "miles"}
|
unit={systemUsed == "metric" ? "km" : "miles"}
|
||||||
styles={styles}
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<MetricCard
|
<MetricCard
|
||||||
@ -46,7 +44,6 @@ const Metrics = ({ styles, data, systemUsed }) => {
|
|||||||
iconSrc={"/icons/sunrise.png"}
|
iconSrc={"/icons/sunrise.png"}
|
||||||
metric={getTime(systemUsed, data.sys.sunrise, data.timezone)}
|
metric={getTime(systemUsed, data.sys.sunrise, data.timezone)}
|
||||||
unit={getAMPM(systemUsed, data.sys.sunrise, data.timezone)}
|
unit={getAMPM(systemUsed, data.sys.sunrise, data.timezone)}
|
||||||
styles={styles}
|
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<MetricCard
|
<MetricCard
|
||||||
@ -54,7 +51,6 @@ const Metrics = ({ styles, data, systemUsed }) => {
|
|||||||
iconSrc={"/icons/sunset.png"}
|
iconSrc={"/icons/sunset.png"}
|
||||||
metric={getTime(systemUsed, data.sys.sunset, data.timezone)}
|
metric={getTime(systemUsed, data.sys.sunset, data.timezone)}
|
||||||
unit={getAMPM(systemUsed, data.sys.sunset, data.timezone)}
|
unit={getAMPM(systemUsed, data.sys.sunset, data.timezone)}
|
||||||
styles={styles}
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
19
components/Metrics.module.css
Normal file
19
components/Metrics.module.css
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
.statsBox {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 1fr 1fr;
|
||||||
|
gap: 20px;
|
||||||
|
border-radius: 20px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (max-width: 600px) {
|
||||||
|
.statsBox {
|
||||||
|
grid-template-columns: 1fr 1fr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (max-width: 475px) {
|
||||||
|
.statsBox {
|
||||||
|
grid-template-columns: 1fr;
|
||||||
|
}
|
||||||
|
}
|
@ -129,7 +129,7 @@ const App = () => {
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<Metrics styles={styles} data={weatherData} systemUsed={systemUsed} />
|
<Metrics data={weatherData} systemUsed={systemUsed} />
|
||||||
<SwitchBox onClick={changeSystem} systemUsed={systemUsed} />
|
<SwitchBox onClick={changeSystem} systemUsed={systemUsed} />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -42,25 +42,6 @@
|
|||||||
gap: 20px;
|
gap: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.statsBox {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 1fr 1fr;
|
|
||||||
gap: 20px;
|
|
||||||
border-radius: 20px;
|
|
||||||
margin-bottom: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.statsCard {
|
|
||||||
background: rgba(255, 255, 255, 0.95);
|
|
||||||
border-radius: 20px;
|
|
||||||
padding: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.statsCardContent {
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 1fr 1fr;
|
|
||||||
}
|
|
||||||
|
|
||||||
.mainTemp {
|
.mainTemp {
|
||||||
font-size: 84px;
|
font-size: 84px;
|
||||||
}
|
}
|
||||||
@ -96,10 +77,6 @@
|
|||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
border-radius: 0;
|
border-radius: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.statsBox {
|
|
||||||
grid-template-columns: 1fr 1fr;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@media only screen and (max-width: 520px) {
|
@media only screen and (max-width: 520px) {
|
||||||
@ -112,13 +89,3 @@
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@media only screen and (max-width: 475px) {
|
|
||||||
.statsBox {
|
|
||||||
grid-template-columns: 1fr;
|
|
||||||
}
|
|
||||||
|
|
||||||
.statsCardContent {
|
|
||||||
grid-template-columns: 1fr 2fr;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user