import { connect } from "react-redux"; import { goFromRackToMachine } from "../../../../../actions/interaction-level"; import MachineComponent from "../../../../../components/app/sidebars/topology/rack/MachineComponent"; import { getStateLoad } from "../../../../../util/simulation-load"; const mapStateToProps = (state, ownProps) => { const machine = state.objects.machine[ownProps.machineId]; const inSimulation = state.currentExperimentId !== -1; let machineLoad = undefined; if (inSimulation) { if ( state.states.machine[state.currentTick] && state.states.machine[state.currentTick][machine.id] ) { machineLoad = getStateLoad( state.loadMetric, state.states.machine[state.currentTick][machine.id] ); } } return { machine, inSimulation, machineLoad }; }; const mapDispatchToProps = (dispatch, ownProps) => { return { onClick: () => dispatch(goFromRackToMachine(ownProps.position)) }; }; const MachineContainer = connect(mapStateToProps, mapDispatchToProps)( MachineComponent ); export default MachineContainer;