30 lines
722 B
JavaScript
30 lines
722 B
JavaScript
|
import React, {useState} from 'react';
|
||
|
import TermInput from './TermInput.js';
|
||
|
import DiseaseGraph from './DiseaseGraph.js';
|
||
|
import {useAsync} from '../util.js';
|
||
|
import {
|
||
|
diseasesBySymptoms,
|
||
|
exploreSymptoms
|
||
|
} from '../fetch.js';
|
||
|
|
||
|
const App = () =>
|
||
|
{
|
||
|
const [terms, setTerms] = useState([]);
|
||
|
|
||
|
const diseases = useAsync([], diseasesBySymptoms, terms);
|
||
|
const results = useAsync([], exploreSymptoms, diseases);
|
||
|
|
||
|
return (
|
||
|
<div className="App">
|
||
|
<TermInput
|
||
|
terms={terms}
|
||
|
availableTerms={results}
|
||
|
setTerms={setTerms}
|
||
|
/>
|
||
|
<DiseaseGraph terms={terms} results={results} />
|
||
|
</div>
|
||
|
);
|
||
|
};
|
||
|
|
||
|
export default App;
|