44 lines
1.3 KiB
TypeScript
Raw Normal View History

2025-03-23 15:24:10 +00:00
"use client";
2025-05-04 16:04:44 +01:00
import { useMemo, useState } from "react";
import useSWR from "swr";
2025-04-28 19:03:29 +01:00
2025-05-12 12:20:28 +01:00
import Map from "@components/map";
2025-05-04 16:04:44 +01:00
import Sidebar from "@components/Sidebar";
import { fetcher } from "@utils/fetcher";
2025-03-19 19:43:34 +00:00
2025-03-17 13:21:02 +00:00
export default function Earthquakes() {
2025-04-28 19:03:29 +01:00
const [selectedEventId, setSelectedEventId] = useState("");
const [hoveredEventId, setHoveredEventId] = useState("");
// todo properly integrate loading
const { data, error, isLoading } = useSWR("/api/earthquakes", fetcher);
2025-03-23 15:24:10 +00:00
2025-04-28 19:03:29 +01:00
return (
<div className="h-full flex overflow-hidden">
<div className="flex-grow">
<Map
events={data ? data.earthquakes : []}
2025-04-28 19:03:29 +01:00
selectedEventId={selectedEventId}
setSelectedEventId={setSelectedEventId}
hoveredEventId={hoveredEventId}
setHoveredEventId={setHoveredEventId}
mapType="Earthquakes"
></Map>
</div>
<Sidebar
logTitle="Log an Earthquake"
logSubtitle="Record new earthquakes - time/date, location, magnitude, observatory and scientists"
recentsTitle="Recent Earthquakes"
events={data ? data.earthquakes : []}
2025-04-28 19:03:29 +01:00
selectedEventId={selectedEventId}
setSelectedEventId={setSelectedEventId}
hoveredEventId={hoveredEventId}
setHoveredEventId={setHoveredEventId}
button1Name="Log an Earthquake"
button2Name="Search Earthquakes"
></Sidebar>
{/* <SidebarTest></SidebarTest> */}
</div>
);
2025-03-19 19:20:18 +00:00
}