This commit is contained in:
QkoSad
2023-08-08 16:02:54 +03:00
commit 0a7a469d56
315 changed files with 426907 additions and 0 deletions
+67
View File
@@ -0,0 +1,67 @@
import { useState, useEffect } from "react";
import axios from "axios";
import { BrowserRouter as Router, Route, Link, Routes } from "react-router-dom";
import { Button, Divider, Container, Typography } from "@mui/material";
import { apiBaseUrl } from "./constants";
import { Diagnosis, Patient } from "./types";
import patientService from "./services/patients";
import diagnosesService from "./services/diagnoses";
import PatientListPage from "./components/PatientListPage";
import SinglePatient from "./components/SinglePatient";
const App = () => {
const [patients, setPatients] = useState<Patient[]>([]);
const [diagnoses, setDiagnoses] = useState<Diagnosis[]>([]);
useEffect(() => {
void axios.get<void>(`${apiBaseUrl}/ping`);
const fetchPatientList = async () => {
const patients = await patientService.getAll();
setPatients(patients);
};
const fetchDiagnosesList = async () => {
const diagnoses = await diagnosesService.getAllDiagnoses();
setDiagnoses(diagnoses);
};
void fetchPatientList();
void fetchDiagnosesList();
}, []);
return (
<div className="App">
<Router>
<Container>
<Typography variant="h3" style={{ marginBottom: "0.5em" }}>
Patientor
</Typography>
<Button component={Link} to="/" variant="contained" color="primary">
Home
</Button>
<Divider hidden />
<Routes>
<Route
path="/"
element={
<PatientListPage
patients={patients}
setPatients={setPatients}
/>
}
/>
<Route
path="/patient/:id"
element={
<SinglePatient patients={patients} diagnoses={diagnoses} />
}
/>
</Routes>
</Container>
</Router>
</div>
);
};
export default App;