import type { RocQueryResult } from '../../hooks/use_roc_query.js'; import { useRocQuery } from '../../hooks/use_roc_query.js'; import type { SampleTocEntry } from '../../types/db.js'; import Spinner from '../spinner.js'; import { useHomeContext, useHomeDispatchContext } from './home_context.js'; import HomeSelector from './home_selector.js'; export default function HomeSamples() { const { loading, error, result } = useRocQuery('sample_toc'); if (error) { return
Failed to load sample ToC: {error?.message}
; } return ( <>

Sample TOC

{loading || !result ? : }
); } function SampleToc(props: { samples: Array> }) { const { selectedSample } = useHomeContext(); const dispatch = useHomeDispatchContext(); function selectSample(id: string) { dispatch({ type: 'SELECT_SAMPLE', payload: id }); } return (
{props.samples.map((sample) => ( selectSample(sample.id)} /> ))}
); } function Loading() { return (
); }