diff options
| author | Jules Laplace <julescarbon@gmail.com> | 2021-09-03 15:25:32 +0200 |
|---|---|---|
| committer | Jules Laplace <julescarbon@gmail.com> | 2021-09-03 15:25:32 +0200 |
| commit | f2c4d48523a8a6d541289e2d4c57a65eeb9f5af0 (patch) | |
| tree | 9a8ed86a75b9bb7a85e9431c0d074431bded0d99 /src/views/App.js | |
| parent | 5fffdeb831a7fdc6a8e4c58c7d477dc4af78ec68 (diff) | |
displaying videos
Diffstat (limited to 'src/views/App.js')
| -rw-r--r-- | src/views/App.js | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/views/App.js b/src/views/App.js index 561523d..b435047 100644 --- a/src/views/App.js +++ b/src/views/App.js @@ -12,9 +12,10 @@ export default function App() { const [db, setDb] = useState(null); const [node, setNode] = useState(null); const [graph, setGraph] = useState(null); - const [selected, setSelected] = useState(null); + const [selectedCategory, setSelectedCategory] = useState(null); const [detailVisible, setDetailVisible] = useState(null); + /** Load the database */ useEffect(async () => { const newDb = await loadDB(); setDb(newDb); @@ -25,21 +26,24 @@ export default function App() { ); }, []); + /** Click to open a node */ const handleClick = useCallback((node) => { setNode(node); setDetailVisible(true); }); + /** Click to close the media modal */ const handleClose = useCallback((node) => { setDetailVisible(false); }); + /** Select or clear the category */ const handleSelect = useCallback((category) => { - if (category === selected) { - setSelected(null); + if (category === selectedCategory) { + setSelectedCategory(null); graph.onSelect(null); } else { - setSelected(category); + setSelectedCategory(category); graph.onSelect(category); } }); @@ -49,7 +53,7 @@ export default function App() { <Detail node={node} visible={detailVisible} onClose={handleClose} /> <Legend visible={!detailVisible} - selected={selected} + selected={selectedCategory} onSelect={handleSelect} /> </div> |
