import { useExperimentsState } from "./store";
import ExperimentList from "./components/ExperimentList";
import ExperimentDetail from "./components/ExperimentDetail";
import SubExperimentView from "./components/SubExperimentView";
import NoteView from "./components/NoteView";
export default function ExperimentsApp() {
const state = useExperimentsState();
if (state.loading && state.experiments.length === 0) {
return (
Loading experiments...
);
}
if (state.error && state.experiments.length === 0) {
return (
);
}
if (state.view.kind === "note" && state.currentNote && state.currentDetail) {
return (
state.navigateToDetail(state.view.kind === "note" ? state.view.expId : "")}
/>
);
}
if (state.view.kind === "sub" && state.currentSub && state.currentDetail) {
return (
state.navigateToDetail(state.view.kind === "sub" ? state.view.expId : "")}
onRefresh={state.refreshDetail}
/>
);
}
if (state.view.kind === "detail" && state.currentDetail) {
return (
state.navigateToNote(state.view.kind === "detail" ? state.view.expId : "", noteId)}
onRefresh={state.refreshDetail}
/>
);
}
return (
);
}