spee.ch/react/containers/ShowChannel/index.js

41 lines
1.3 KiB
JavaScript
Raw Normal View History

import { connect } from 'react-redux';
import { newChannelRequest, showNewChannel } from 'actions/show';
import View from './view';
const mapStateToProps = ({ show }) => {
let props = {};
props['requestId'] = show.request.id;
props['requestType'] = show.request.type;
props['requestChannelName'] = show.request.data.name;
props['requestChannelId'] = show.request.data.id;
// select request
const existingRequest = show.channelRequests[show.request.id];
if (existingRequest) {
props['existingRequest'] = existingRequest;
console.log('existing channel request found', existingRequest);
// select channel info
const channelKey = `c#${existingRequest.name}#${existingRequest.longId}`;
const channel = show.channelList[channelKey];
if (channel) {
props['channel'] = channel;
};
}
return props;
};
2018-02-03 03:16:18 +01:00
const mapDispatchToProps = dispatch => {
return {
2018-02-09 01:42:13 +01:00
// request
onNewChannelRequest (requestId, requestChannelName, requestChannelId) {
dispatch(newChannelRequest(requestId, requestChannelName, requestChannelId));
},
2018-02-09 01:42:13 +01:00
// show channel
onShowNewChannel: (name, shortId, longId) => {
dispatch(showNewChannel(name, shortId, longId));
2018-02-08 07:22:17 +01:00
},
2018-02-03 03:16:18 +01:00
};
};
export default connect(mapStateToProps, mapDispatchToProps)(View);