import { useLayoutEffect, useState } from 'react'; import BackendError from '../../components/BackendError' import { ConceptLoader } from '../../components/Common/ConceptLoader' import { useLibrary } from '../../context/LibraryContext'; import { ILibraryFilter, ILibraryItem } from '../../utils/models'; import SearchPanel from './SearchPanel'; import ViewLibrary from './ViewLibrary'; function LibraryPage() { const library = useLibrary(); const [ filter, setFilter ] = useState({}); const [ items, setItems ] = useState([]); useLayoutEffect( () => { setItems(library.filter(filter)); }, [library, filter, filter.query]); return (
{ library.loading && } { library.error && } { !library.loading && library.items &&
setFilter({})} items={items} />
}
); } export default LibraryPage;