import { Fragment } from 'inferno'; import { useBackend, useLocalState } from '../backend'; import { ComplexModal, modalRegisterBodyOverride } from '../interfaces/common/ComplexModal'; import { Box, Button, Flex, NoticeBox, LabeledList, Section, Tabs } from '../components'; import { Window } from '../layouts'; const virusModalBodyOverride = (modal, context) => { const { act, data } = useBackend(context); const { can_print } = data; const virus = modal.args; return (
); }; export const PathogenicIsolator = (props, context) => { const { act, data } = useBackend(context); const { isolating } = data; const [tabIndex, setTabIndex] = useLocalState(context, 'tabIndex', 0); let tab = null; if (tabIndex === 0) { tab = ; } else if (tabIndex === 1) { tab = ; } modalRegisterBodyOverride('virus', virusModalBodyOverride); return ( {(isolating && The Isolator is currently isolating...) || null} setTabIndex(0)}> Home setTabIndex(1)}> Database {tab} ); }; const PathogenicIsolatorTabHome = (props, context) => { const { act, data } = useBackend(context); const { syringe_inserted, pathogen_pool, can_print } = data; return (
))) || (syringe_inserted ? ( No samples detected. ) : ( No syringe inserted. ))} ); }; const PathogenicIsolatorTabDatabase = (props, context) => { const { act, data } = useBackend(context); const { database, can_print } = data; return (
act('print', { type: 'virus_list' })} /> }> {(database.length && database.map((entry) => ( ))) || The viral database is empty.}
); };