import React, { Component } from 'react' import PropTypes from 'prop-types' import { FaAlignJustify, FaGlobe } from 'react-icons/lib/fa' import { MdSearch } from 'react-icons/lib/md' import Channel from 'components/Channels/Channel' import NetworkChannels from 'components/Channels/NetworkChannels' import ChannelForm from 'components/ChannelForm' import styles from './Channels.scss' class Channels extends Component { componentWillMount() { const { fetchChannels, fetchPeers, fetchDescribeNetwork } = this.props fetchChannels() fetchPeers() fetchDescribeNetwork() } render() { const { channels: { searchQuery, viewType }, allChannels, openChannels, updateChannelSearchQuery, setViewType, openChannelForm, ticker, currentTicker, channelFormProps, network, identity_pubkey, setCurrentChannel } = this.props return (
updateChannelSearchQuery(event.target.value)} className={`${styles.text} ${styles.input}`} placeholder='Search channels by funding transaction or remote public key' type='text' id='channelSearch' />
setViewType(0)}> setViewType(1)}>
Create new channel
{ viewType === 0 &&
    { allChannels.map((channel, index) => ( {}} currentTicker={currentTicker} /> )) }
} { viewType === 1 && }
) } } Channels.propTypes = { fetchChannels: PropTypes.func.isRequired, fetchPeers: PropTypes.func.isRequired, channels: PropTypes.object.isRequired, allChannels: PropTypes.array.isRequired, openChannels: PropTypes.array.isRequired, updateChannelSearchQuery: PropTypes.func.isRequired, setViewType: PropTypes.func.isRequired, setCurrentChannel: PropTypes.func.isRequired, openChannelForm: PropTypes.func.isRequired, ticker: PropTypes.object.isRequired, currentTicker: PropTypes.object.isRequired, channelFormProps: PropTypes.object.isRequired, network: PropTypes.object.isRequired, fetchDescribeNetwork: PropTypes.func.isRequired, identity_pubkey: PropTypes.string.isRequired } export default Channels