import React, { Component } from 'react'; import { View } from 'react-native'; import { BottomTabs } from './BottomTabs'; import { ComponentProps } from '../ComponentProps'; import { ComponentScreen } from './ComponentScreen'; import { Stack } from './Stack'; import { SideMenuRoot, SideMenuCenter, SideMenuLeft, SideMenuRight } from './SideMenu'; export const LayoutComponent = class extends Component { render() { switch (this.props.layoutNode.type) { case 'BottomTabs': return ; case 'Stack': return ; case 'Component': return ; case 'SideMenuRoot': return ; case 'SideMenuLeft': return ; case 'SideMenuCenter': return ; case 'SideMenuRight': return ; } return ; } componentDidCatch(error: Error, errorInfo: React.ErrorInfo) { const err = new Error( `Error while trying to render layout ${this.props.layoutNode.nodeId} of type ${this.props.layoutNode.type}: ${error}\n${errorInfo?.componentStack}` ); (err as any).cause = error; throw err; } };