Merge branch 'master' of ssh://stash.dyson.global.corp:7999/~thowitz/tremor-tracker i think this works?!
This commit is contained in:
commit
8f70ac60c6
115
src/app/page.tsx
115
src/app/page.tsx
@ -1,11 +1,11 @@
|
|||||||
"use client";
|
"use client";
|
||||||
import useSWR from "swr";
|
|
||||||
import Image from "next/image";
|
import Image from "next/image";
|
||||||
import Link from "next/link";
|
import Link from "next/link";
|
||||||
|
import { TbHexagon } from "react-icons/tb";
|
||||||
|
import useSWR from "swr";
|
||||||
import BottomFooter from "@components/BottomFooter";
|
import BottomFooter from "@components/BottomFooter";
|
||||||
import { createPoster } from "@utils/axiosHelpers";
|
import { createPoster } from "@utils/axiosHelpers";
|
||||||
import getMagnitudeColor from "@utils/getMagnitudeColour";
|
import getMagnitudeColor from "@utils/getMagnitudeColour";
|
||||||
import { TbHexagon } from "react-icons/tb";
|
|
||||||
|
|
||||||
// formats the date
|
// formats the date
|
||||||
function getRelativeDate(dateString: string): string {
|
function getRelativeDate(dateString: string): string {
|
||||||
@ -22,7 +22,6 @@ function getRelativeDate(dateString: string): string {
|
|||||||
function MagnitudeNumber({ magnitude }: { magnitude: number }) {
|
function MagnitudeNumber({ magnitude }: { magnitude: number }) {
|
||||||
const magnitudeStr = magnitude.toFixed(1);
|
const magnitudeStr = magnitude.toFixed(1);
|
||||||
const [whole, decimal] = magnitudeStr.split(".");
|
const [whole, decimal] = magnitudeStr.split(".");
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="relative" style={{ color: getMagnitudeColor(magnitude) }}>
|
<div className="relative" style={{ color: getMagnitudeColor(magnitude) }}>
|
||||||
<TbHexagon size={40} className="drop-shadow-sm" />
|
<TbHexagon size={40} className="drop-shadow-sm" />
|
||||||
@ -38,8 +37,10 @@ function MagnitudeNumber({ magnitude }: { magnitude: number }) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export default function Home() {
|
export default function Home() {
|
||||||
const { data, error, isLoading } = useSWR("/api/earthquakes", createPoster({ rangeDaysPrev: 6 }));
|
const { data, error, isLoading } = useSWR(
|
||||||
|
"/api/earthquakes",
|
||||||
|
createPoster({ rangeDaysPrev: 6 })
|
||||||
|
);
|
||||||
// Take 5 most recent
|
// Take 5 most recent
|
||||||
const recents = (data?.earthquakes ?? [])
|
const recents = (data?.earthquakes ?? [])
|
||||||
.sort((a, b) => new Date(b.date).getTime() - new Date(a.date).getTime())
|
.sort((a, b) => new Date(b.date).getTime() - new Date(a.date).getTime())
|
||||||
@ -159,14 +160,11 @@ export default function Home() {
|
|||||||
<div className="font-semibold">
|
<div className="font-semibold">
|
||||||
Earthquake in {eq.location || (eq.code && eq.code.split("-")[2])}
|
Earthquake in {eq.location || (eq.code && eq.code.split("-")[2])}
|
||||||
</div>
|
</div>
|
||||||
<div className="text-sm text-gray-500">
|
<div className="text-sm text-gray-500">{getRelativeDate(eq.date)}</div>
|
||||||
{getRelativeDate(eq.date)}
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<MagnitudeNumber magnitude={eq.magnitude} />
|
<MagnitudeNumber magnitude={eq.magnitude} />
|
||||||
</div>
|
</div>
|
||||||
))}
|
))}
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<p className="mt-20"></p>
|
<p className="mt-20"></p>
|
||||||
@ -213,103 +211,4 @@ export default function Home() {
|
|||||||
</section>
|
</section>
|
||||||
</main>
|
</main>
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
// return (
|
|
||||||
// <div className="grid grid-rows-[20px_1fr_20px] items-center justify-items-center min-h-screen p-8 pb-20 gap-16 sm:p-20 font-[family-name:var(--font-geist-sans)]">
|
|
||||||
// <main className="flex flex-col gap-8 row-start-2 items-center sm:items-start">
|
|
||||||
// <Image
|
|
||||||
// className="dark:invert"
|
|
||||||
// src="/next.svg"
|
|
||||||
// alt="Next.js logo"
|
|
||||||
// width={180}
|
|
||||||
// height={38}
|
|
||||||
// priority
|
|
||||||
// />
|
|
||||||
// <ol className="list-inside list-decimal text-sm text-center sm:text-left font-[family-name:var(--font-geist-mono)]">
|
|
||||||
// <li className="mb-2">
|
|
||||||
// Get started by editing{" "}
|
|
||||||
// <code className="bg-black/[.05] dark:bg-white/[.06] px-1 py-0.5 rounded font-semibold">
|
|
||||||
// src/app/page.tsx
|
|
||||||
// </code>
|
|
||||||
// .
|
|
||||||
// </li>
|
|
||||||
// <li>Save and see your changes instantly.</li>
|
|
||||||
// </ol>
|
|
||||||
|
|
||||||
// <div className="flex gap-4 items-center flex-col sm:flex-row">
|
|
||||||
// <a
|
|
||||||
// className="rounded-full border border-solid border-transparent transition-colors flex items-center justify-center bg-foreground text-background gap-2 hover:bg-[#383838] dark:hover:bg-[#ccc] text-sm sm:text-base h-10 sm:h-12 px-4 sm:px-5"
|
|
||||||
// href="https://vercel.com/new?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
|
|
||||||
// target="_blank"
|
|
||||||
// rel="noopener noreferrer"
|
|
||||||
// >
|
|
||||||
// <Image
|
|
||||||
// className="dark:invert"
|
|
||||||
// src="/vercel.svg"
|
|
||||||
// alt="Vercel logomark"
|
|
||||||
// width={20}
|
|
||||||
// height={20}
|
|
||||||
// />
|
|
||||||
// Deploy now
|
|
||||||
// </a>
|
|
||||||
// <a
|
|
||||||
// className="rounded-full border border-solid border-black/[.08] dark:border-white/[.145] transition-colors flex items-center justify-center hover:bg-[#f2f2f2] dark:hover:bg-[#1a1a1a] hover:border-transparent text-sm sm:text-base h-10 sm:h-12 px-4 sm:px-5 sm:min-w-44"
|
|
||||||
// href="https://nextjs.org/docs?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
|
|
||||||
// target="_blank"
|
|
||||||
// rel="noopener noreferrer"
|
|
||||||
// >
|
|
||||||
// Read our docs
|
|
||||||
// </a>
|
|
||||||
// </div>
|
|
||||||
// </main>
|
|
||||||
// <footer className="row-start-3 flex gap-6 flex-wrap items-center justify-center">
|
|
||||||
// <a
|
|
||||||
// className="flex items-center gap-2 hover:underline hover:underline-offset-4"
|
|
||||||
// href="https://nextjs.org/learn?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
|
|
||||||
// target="_blank"
|
|
||||||
// rel="noopener noreferrer"
|
|
||||||
// >
|
|
||||||
// <Image
|
|
||||||
// aria-hidden
|
|
||||||
// src="/file.svg"
|
|
||||||
// alt="File icon"
|
|
||||||
// width={16}
|
|
||||||
// height={16}
|
|
||||||
// />
|
|
||||||
// Learn
|
|
||||||
// </a>
|
|
||||||
// <a
|
|
||||||
// className="flex items-center gap-2 hover:underline hover:underline-offset-4"
|
|
||||||
// href="https://vercel.com/templates?framework=next.js&utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
|
|
||||||
// target="_blank"
|
|
||||||
// rel="noopener noreferrer"
|
|
||||||
// >
|
|
||||||
// <Image
|
|
||||||
// aria-hidden
|
|
||||||
// src="/window.svg"
|
|
||||||
// alt="Window icon"
|
|
||||||
// width={16}
|
|
||||||
// height={16}
|
|
||||||
// />
|
|
||||||
// Examples
|
|
||||||
// </a>
|
|
||||||
// <a
|
|
||||||
// className="flex items-center gap-2 hover:underline hover:underline-offset-4"
|
|
||||||
// href="https://nextjs.org?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
|
|
||||||
// target="_blank"
|
|
||||||
// rel="noopener noreferrer"
|
|
||||||
// >
|
|
||||||
// <Image
|
|
||||||
// aria-hidden
|
|
||||||
// src="/globe.svg"
|
|
||||||
// alt="Globe icon"
|
|
||||||
// width={16}
|
|
||||||
// height={16}
|
|
||||||
// />
|
|
||||||
// Go to nextjs.org →
|
|
||||||
// </a>
|
|
||||||
// </footer>
|
|
||||||
// </div>
|
|
||||||
// );
|
|
||||||
}
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user