47 lines
1.3 KiB
JavaScript
47 lines
1.3 KiB
JavaScript
import Head from "next/head";
|
|
import Image from "next/image";
|
|
import styles from "../styles/Home.module.css";
|
|
import UserInfo from "../components/userInfo";
|
|
import Select from "../components/select";
|
|
import { useEffect, useState } from "react";
|
|
|
|
export default function Home() {
|
|
const [data, setData] = useState(null);
|
|
const [borderData, setBorderData] = useState(null);
|
|
const [selected, setSelected] = useState(0);
|
|
|
|
useEffect(() => {
|
|
fetch("api/border/all")
|
|
.then((res) => res.json())
|
|
.then((data) => setData(data));
|
|
}, []);
|
|
|
|
useEffect(() => {
|
|
fetch("api/user/border/@me")
|
|
.then((res) => res.json())
|
|
.then((data) => {
|
|
setBorderData(data);
|
|
setSelected(data?.borderId || 0);
|
|
});
|
|
}, []);
|
|
|
|
return (
|
|
<div className={styles.container}>
|
|
<Head>
|
|
<title>Create Next App</title>
|
|
<meta name="description" content="Generated by create next app" />
|
|
<link rel="icon" href="/favicon.ico" />
|
|
</Head>
|
|
<header>
|
|
<h1 className={styles.title}>Steam Borders</h1>
|
|
<div className={styles.userinfo}>
|
|
<UserInfo borderData={borderData} />
|
|
</div>
|
|
</header>
|
|
<main>
|
|
<Select data={data} onSelect={setSelected} selected={selected} />
|
|
</main>
|
|
</div>
|
|
);
|
|
}
|