2023-08-11 10:53:27 -04:00
|
|
|
import React from "react"
|
2023-08-15 08:24:32 -07:00
|
|
|
import { Footer, Header, IP, State } from "src/components/legacy"
|
|
|
|
import useNodeData from "src/hooks/node-data"
|
2023-08-11 10:53:27 -04:00
|
|
|
|
|
|
|
export default function App() {
|
2023-08-16 18:52:31 -04:00
|
|
|
// TODO(sonia): use isPosting value from useNodeData
|
|
|
|
// to fill loading states.
|
|
|
|
const { data, updateNode } = useNodeData()
|
2023-08-15 08:24:32 -07:00
|
|
|
|
|
|
|
return (
|
|
|
|
<div className="py-14">
|
2023-08-15 11:38:13 -04:00
|
|
|
{!data ? (
|
|
|
|
// TODO(sonia): add a loading view
|
|
|
|
<div className="text-center">Loading...</div>
|
|
|
|
) : (
|
|
|
|
<>
|
|
|
|
<main className="container max-w-lg mx-auto mb-8 py-6 px-8 bg-white rounded-md shadow-2xl">
|
|
|
|
<Header data={data} />
|
|
|
|
<IP data={data} />
|
2023-08-16 18:52:31 -04:00
|
|
|
<State data={data} updateNode={updateNode} />
|
2023-08-15 11:38:13 -04:00
|
|
|
</main>
|
|
|
|
<Footer data={data} />
|
|
|
|
</>
|
|
|
|
)}
|
2023-08-15 08:24:32 -07:00
|
|
|
</div>
|
|
|
|
)
|
2023-08-11 10:53:27 -04:00
|
|
|
}
|