2021-09-26 13:24:10 +09:00
|
|
|
// Base layout
|
2021-09-24 09:15:03 +09:00
|
|
|
import Layout from "../../components/Layout"
|
|
|
|
|
|
|
|
// React
|
|
|
|
import { useRouter } from 'next/router'
|
|
|
|
|
|
|
|
// Data fetching
|
2021-09-24 10:08:30 +09:00
|
|
|
import Players from '../../components/Minecraft/Players'
|
2021-09-26 12:52:37 +09:00
|
|
|
import useSwr from 'swr'
|
|
|
|
const fetcher = (url) => fetch(url).then((res) => res.json())
|
2021-09-24 09:15:03 +09:00
|
|
|
|
2021-09-26 13:36:23 +09:00
|
|
|
// Components
|
|
|
|
import WrongUUID from '../../components/Minecraft/WrongUUID'
|
|
|
|
|
2021-09-24 10:08:30 +09:00
|
|
|
export default function UUID() {
|
2021-09-24 09:15:03 +09:00
|
|
|
const router = useRouter()
|
|
|
|
const { uuid } = router.query
|
2021-09-26 12:52:37 +09:00
|
|
|
const { data, error } = useSwr(
|
2021-09-26 13:24:10 +09:00
|
|
|
uuid ? `/api/PlayerName/${uuid}` : null,
|
2021-09-26 12:52:37 +09:00
|
|
|
fetcher
|
|
|
|
)
|
|
|
|
if (error) {
|
|
|
|
return (
|
|
|
|
<>
|
|
|
|
<Layout title="エラー - プレイヤー情報">
|
|
|
|
<p className="text-2xl">エラーが発生しました。</p>
|
|
|
|
</Layout>
|
|
|
|
</>
|
|
|
|
)
|
2021-09-26 13:24:10 +09:00
|
|
|
} else {
|
|
|
|
if (!data) {
|
|
|
|
return (
|
|
|
|
<>
|
|
|
|
<Layout title="読み込み中... - プレイヤー情報">
|
|
|
|
<Players uuid={uuid} />
|
|
|
|
</Layout>
|
|
|
|
</>
|
|
|
|
)
|
|
|
|
} else {
|
2021-09-26 13:36:23 +09:00
|
|
|
if (!data.username) {
|
|
|
|
return (
|
|
|
|
<>
|
|
|
|
<Layout title="404 - プレイヤー情報">
|
|
|
|
<WrongUUID />
|
|
|
|
</Layout>
|
|
|
|
</>
|
|
|
|
)
|
|
|
|
} else {
|
2021-09-26 13:24:10 +09:00
|
|
|
return (
|
|
|
|
<>
|
|
|
|
<Layout title={data.username + " - " + "プレイヤー情報"}>
|
2021-09-26 13:36:23 +09:00
|
|
|
<Players uuid={uuid} />
|
2021-09-26 13:24:10 +09:00
|
|
|
</Layout>
|
|
|
|
</>
|
|
|
|
)
|
2021-09-26 13:36:23 +09:00
|
|
|
}
|
2021-09-26 13:24:10 +09:00
|
|
|
}
|
2021-09-26 12:52:37 +09:00
|
|
|
}
|
2021-09-24 09:15:03 +09:00
|
|
|
}
|