import { useBackend, useLocalState } from '../backend'; import { Box, Button, Flex, Icon, LabeledList, Section } from '../components'; import { Window } from '../layouts'; /* This is all basically stolen from routes.js. */ import { routingError } from '../routes'; const requirePdaInterface = require.context('./pda', false, /\.js$/); const getPdaApp = (name) => { let appModule; try { appModule = requirePdaInterface(`./${name}.js`); } catch (err) { if (err.code === 'MODULE_NOT_FOUND') { return routingError('notFound', name); } throw err; } const Component = appModule[name]; if (!Component) { return routingError('missingExport', name); } return Component; }; export const Pda = (props, context) => { const { act, data } = useBackend(context); const { app, owner, useRetro } = data; if (!owner) { return (
Warning: No ID information found! Please swipe ID!
); } let App = getPdaApp(app.template); const [settingsMode, setSettingsMode] = useLocalState(context, 'settingsMode', false); return ( {(settingsMode && ) || (
{app.name} } p={1}>
)}
); }; const PDAHeader = (props, context) => { const { act, data } = useBackend(context); const { settingsMode, setSettingsMode } = props; const { idInserted, idLink, cartridge_name, stationTime } = data; return ( {!!idInserted && (