// Tinode config panel. import React from 'react'; import { FormattedMessage } from 'react-intl'; import HostSelector from '../widgets/host-selector.jsx'; export default class SettingsView extends React.PureComponent { constructor(props) { super(props); this.state = { transport: props.transport || 'def', serverAddress: props.serverAddress, }; this.handleSubmit = this.handleSubmit.bind(this); this.handleTransportSelected = this.handleTransportSelected.bind(this); this.handleServerAddressChange = this.handleServerAddressChange.bind(this); } handleSubmit(e) { e.preventDefault(); this.props.onUpdate({ transport: this.state.transport, serverAddress: this.state.serverAddress }); } handleTransportSelected(e) { this.setState({transport: e.currentTarget.value}); } handleServerAddressChange(name) { this.setState({serverAddress: name}); } render() { const names = {def: "default", ws: "websocket", lp: "long polling"}; const transportOptions = []; ['def', 'ws', 'lp'].map((item) => { const id = 'transport-' + item; const name = names[item]; transportOptions.push(
  • ); }); return (
      {transportOptions}
    ); } };