import React, { Component } from 'react'; import { DEFAULT_STATE } from './redux'; import ActionPreviewHeader from './ActionPreviewHeader'; import DiffTab from './tabs/DiffTab'; import StateTab from './tabs/StateTab'; import ActionTab from './tabs/ActionTab'; const DEFAULT_TABS = [ { name: 'Action', component: ActionTab, }, { name: 'Diff', component: DiffTab, }, { name: 'State', component: StateTab, }, ]; class ActionPreview extends Component { static defaultProps = { tabName: DEFAULT_STATE.tabName, }; render() { const { styling, delta, error, nextState, onInspectPath, inspectedPath, tabName, isWideLayout, onSelectTab, action, actions, selectedActionId, startActionId, computedStates, base16Theme, invertTheme, tabs, dataTypeKey, monitorState, updateMonitorState, } = this.props; const renderedTabs = typeof tabs === 'function' ? tabs(DEFAULT_TABS) : tabs ? tabs : DEFAULT_TABS; const { component: TabComponent } = renderedTabs.find((tab) => tab.name === tabName) || renderedTabs.find((tab) => tab.name === DEFAULT_STATE.tabName); return (