import * as React from 'react' import useStateMachine from './services/state/useStateMachine' import { Router, Route } from './components/Router' import ErrorView from './components/Error' import LoadingPage from './containers/Loading' import StartPage from './containers/Start' import SelectTutorialPage from './containers/SelectTutorial' import TutorialPage from './containers/Tutorial' import logger from './services/logger' /* * NOTE: due to a lack of URLs and a dependency on xstate * we have to implement a custom router here */ const Routes = () => { const { context, route, send } = useStateMachine() // TODO: handle only full page errors if (context.error) { return } logger( `ROUTE: "${route}": ${context.position?.complete ? 'Completed' : 'On'} level ${ context.position?.levelId || 'unknown' }, step ${context.position?.stepId || 'unknown'}`, ) return ( {/* Setup */} {/* Tutorial */} ) } export default Routes