import React, { Component } from "react"; import { connect } from "react-redux"; import { RemoteService } from "../../remote"; import Device from "./devices/Device"; import NewSceneDevice from "./NewSceneDevice"; import { Grid, Button } from "semantic-ui-react"; class ScenesPanel extends Component { constructor(props) { super(props); this.applyScene = this.applyScene.bind(this); } applyScene() { console.log(this.props.activeScene); this.props.sceneApply(this.props.activeScene); } render() { return ( {!this.props.isActiveDefaultScene ? ( ) : null} {!this.props.isActiveDefaultScene ? this.props.sceneStates.map((e, i) => { return ( ); }) : null} {!this.props.isActiveDefaultScene ? ( ) : ( Welcome to the Scene View, you add a Scene )} ); } } const mapStateToProps = (state, _) => ({ get sceneStates() { if (state.active.activeScene !== -1) { const stateArray = [ ...state.scenes[state.active.activeScene].sceneStates, ].sort(); console.log(stateArray); return stateArray; } else { return []; } }, get isActiveDefaultScene() { return state.active.activeScene === -1; }, activeScene: state.active.activeScene, }); const ScenesPanelContainer = connect( mapStateToProps, RemoteService )(ScenesPanel); export default ScenesPanelContainer;