You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

39 lines
1.2 KiB

import { React, StrictMode, useState } from "react"
import ReactDOM from "react-dom/client"
import "./index.css"
import TimelineAreaChart from "./components/TimelineAreaChart"
import TotalPieChart from "./components/TotalPieChart"
import SingleFileUploader from "./components/SingleFileUpload"
import { GeistProvider, CssBaseline, Tabs } from "@geist-ui/core"
export default function App() {
const [fileUploaded, setFileUploaded] = useState(false)
const handleUploadedFile = function () {
setFileUploaded(true)
}
return (
<GeistProvider>
<CssBaseline />
<Tabs initialValue="1">
<Tabs.Item label="Upload File" value="1">
<SingleFileUploader onFileUploaded={handleUploadedFile} />
</Tabs.Item>
<Tabs.Item label="Project timeline" value="2" disabled={!fileUploaded}>
<TimelineAreaChart />
</Tabs.Item>
<Tabs.Item label="Total time spent" value="3" disabled={!fileUploaded}>
<TotalPieChart />
</Tabs.Item>
</Tabs>
</GeistProvider>
)
}
const root = ReactDOM.createRoot(document.getElementById("root"))
root.render(
<StrictMode>
<App />
</StrictMode>,
)