30 lines
929 B
JavaScript
30 lines
929 B
JavaScript
import { createStructuredSelector } from 'reselect';
|
|
import App from 'components/App';
|
|
import { getConnected } from 'state/app';
|
|
import { getSortedChannels } from 'state/channels';
|
|
import { getHasOpenModals } from 'state/modals';
|
|
import { getPrivateChats } from 'state/privateChats';
|
|
import { getServers } from 'state/servers';
|
|
import { getSelectedTab, select } from 'state/tab';
|
|
import { getShowTabList, hideMenu } from 'state/ui';
|
|
import connect from 'utils/connect';
|
|
import { push } from 'utils/router';
|
|
|
|
const mapState = createStructuredSelector({
|
|
channels: getSortedChannels,
|
|
connected: getConnected,
|
|
privateChats: getPrivateChats,
|
|
servers: getServers,
|
|
showTabList: getShowTabList,
|
|
tab: getSelectedTab,
|
|
newVersionAvailable: state => state.app.newVersionAvailable,
|
|
hasOpenModals: getHasOpenModals
|
|
});
|
|
|
|
const mapDispatch = { push, select, hideMenu };
|
|
|
|
export default connect(
|
|
mapState,
|
|
mapDispatch
|
|
)(App);
|