import { useState, useEffect } from "react"; import styles from "../styles/Home.module.css"; import Image from "next/image"; import Metrics from "./components/Metrics"; import { convertTime, ctoF, timeToAMPM } from "./services/converters"; export default function Home() { const [input, setInput] = useState("Riga"); const [systemUsed, setSystemUsed] = useState("metric"); const [weatherData, setWeatherData] = useState(); const getData = async () => { const res = await fetch("api/data", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ input }), }); const data = await res.json(); setWeatherData({ ...data }); setInput(""); }; const enterKeydown = (event) => { if (event.keyCode === 13) { getData(); } }; useEffect(() => { getData(); }, []); const isPM = (time) => { let hours = time.split(":")[0]; if (hours >= 12) { return "PM"; } else { return "AM"; } }; const changeSystem = () => systemUsed == "metric" ? setSystemUsed("imperial") : setSystemUsed("metric"); var weekday = [ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", ]; return weatherData && !weatherData.message ? (
{weatherData.weather[0].description}
Feels like{" "} {systemUsed == "metric" ? Math.round(weatherData.main.feels_like) : Math.round(ctoF(weatherData.main.feels_like))} °{systemUsed == "metric" ? "C" : "F"}
Metric System
Imperial System