2021-03-10 19:34:21 +01:00
|
|
|
import { connect } from 'react-redux';
|
2021-10-11 09:57:27 +02:00
|
|
|
import { selectClaimForUri, selectMyChannelClaims } from 'redux/selectors/claims';
|
2021-03-16 21:59:31 +01:00
|
|
|
import { doCommentSocketConnect, doCommentSocketDisconnect } from 'redux/actions/websocket';
|
2021-04-23 21:59:48 +02:00
|
|
|
import { doCommentList, doSuperChatList } from 'redux/actions/comments';
|
|
|
|
import {
|
2021-10-11 08:02:17 +02:00
|
|
|
selectTopLevelCommentsForUri,
|
2021-04-23 21:59:48 +02:00
|
|
|
selectIsFetchingComments,
|
|
|
|
makeSelectSuperChatsForUri,
|
|
|
|
makeSelectSuperChatTotalAmountForUri,
|
2021-10-11 08:02:17 +02:00
|
|
|
selectPinnedCommentsForUri,
|
2021-04-23 21:59:48 +02:00
|
|
|
} from 'redux/selectors/comments';
|
2021-07-06 03:29:46 +02:00
|
|
|
import LivestreamComments from './view';
|
2021-03-10 19:34:21 +01:00
|
|
|
|
2021-10-11 08:02:17 +02:00
|
|
|
const MAX_LIVESTREAM_COMMENTS = 75;
|
|
|
|
|
2021-03-10 19:34:21 +01:00
|
|
|
const select = (state, props) => ({
|
2021-10-11 09:57:27 +02:00
|
|
|
claim: selectClaimForUri(state, props.uri),
|
2021-10-11 08:02:17 +02:00
|
|
|
comments: selectTopLevelCommentsForUri(state, props.uri, MAX_LIVESTREAM_COMMENTS),
|
|
|
|
pinnedComments: selectPinnedCommentsForUri(state, props.uri),
|
2021-03-10 19:34:21 +01:00
|
|
|
fetchingComments: selectIsFetchingComments(state),
|
2021-04-23 21:59:48 +02:00
|
|
|
superChats: makeSelectSuperChatsForUri(props.uri)(state),
|
|
|
|
superChatsTotalAmount: makeSelectSuperChatTotalAmountForUri(props.uri)(state),
|
2021-05-04 17:08:36 +02:00
|
|
|
myChannels: selectMyChannelClaims(state),
|
2021-03-10 19:34:21 +01:00
|
|
|
});
|
|
|
|
|
2021-04-23 21:59:48 +02:00
|
|
|
export default connect(select, {
|
|
|
|
doCommentSocketConnect,
|
|
|
|
doCommentSocketDisconnect,
|
|
|
|
doCommentList,
|
|
|
|
doSuperChatList,
|
2021-07-06 03:29:46 +02:00
|
|
|
})(LivestreamComments);
|