import React from 'react'; import { connect } from 'react-redux'; import PropTypes from 'prop-types'; import ImmutablePropTypes from 'react-immutable-proptypes'; import { injectIntl } from 'react-intl'; import ImmutablePureComponent from 'react-immutable-pure-component'; // import { getSettings } from 'soapbox/actions/settings'; import ChatList from './chat_list'; import { FormattedMessage } from 'react-intl'; import { makeGetChat } from 'soapbox/selectors'; import { fromJS } from 'immutable'; import Avatar from 'soapbox/components/avatar'; import { acctFull } from 'soapbox/utils/accounts'; const addChatsToPanes = (state, panesData) => { const getChat = makeGetChat(); const newPanes = panesData.get('panes').map(pane => { const chat = getChat(state, { id: pane.get('chat_id') }); return pane.set('chat', chat); }); return panesData.set('panes', newPanes); }; const mapStateToProps = state => { // const panesData = getSettings(state).get('chats'); const panesData = fromJS({ panes: [ { chat_id: '9ySoi8J7eTY0x78OBc', state: 'open' }, { chat_id: '9ySoi8J7eTY0x78OBc', state: 'open' }, { chat_id: '9ySoi8J7eTY0x78OBc', state: 'open' }, ], }); return { panesData: addChatsToPanes(state, panesData), }; }; export default @connect(mapStateToProps) @injectIntl class ChatPanes extends ImmutablePureComponent { static propTypes = { dispatch: PropTypes.func.isRequired, intl: PropTypes.object.isRequired, panesData: ImmutablePropTypes.map, } renderChatPane = (pane, i) => { const chat = pane.get('chat'); const account = pane.getIn(['chat', 'account']); if (!chat || !account) return null; const right = (285 * (i + 1)) + 20; return (