import React, { Component } from 'react'; import { connect } from 'react-redux'; import { Alert, Card, CardHeader, CardBlock, FormGroup, Progress, Label, Input } from 'reactstrap'; import { initialize } from '..'; import { SOCKET_STATE } from '../actions/socket'; class ConnectionOverlay extends Component { constructor() { super(); this.state = { uri: "ws://127.0.0.1:8412", autoconnect: false, connecting: false }; // TODO: "connecting..." UI // TODO: autoconnect // TODO: gracefully handle dis/reconnections } render() { const { socket } = this.props; if (socket.state === SOCKET_STATE.CONNECTED) { return null; } if (socket.state === SOCKET_STATE.CONNECTING) { return (
Connect to synapse

Connecting...

); } const { uri, autoconnect } = this.state; return (
Connect to synapse {socket.reason && {socket.reason}} this.setState({ uri: e.target.value })} />
); } } export default connect(state => ({ socket: state.socket }))(ConnectionOverlay);