2020-01-06 19:32:35 +01:00
|
|
|
import { connect } from 'react-redux';
|
2021-11-17 10:23:01 +01:00
|
|
|
import { selectClaimIdForUri } from 'redux/selectors/claims';
|
|
|
|
import { selectViewersForId } from 'redux/selectors/livestream';
|
2021-11-15 15:08:23 +01:00
|
|
|
import { doFetchViewCount, selectViewCountForUri } from 'lbryinc';
|
2021-04-14 17:40:36 +02:00
|
|
|
import { doAnalyticsView } from 'redux/actions/app';
|
2020-01-06 19:32:35 +01:00
|
|
|
import FileViewCount from './view';
|
|
|
|
|
2021-11-17 10:23:01 +01:00
|
|
|
const select = (state, props) => {
|
|
|
|
const claimId = selectClaimIdForUri(state, props.uri);
|
|
|
|
return {
|
|
|
|
claimId,
|
|
|
|
viewCount: selectViewCountForUri(state, props.uri),
|
2021-11-19 00:41:43 +01:00
|
|
|
activeViewers: props.livestream && claimId ? selectViewersForId(state, claimId) : undefined,
|
2021-11-17 10:23:01 +01:00
|
|
|
};
|
|
|
|
};
|
2020-01-06 19:32:35 +01:00
|
|
|
|
2021-04-14 17:40:36 +02:00
|
|
|
const perform = (dispatch) => ({
|
|
|
|
fetchViewCount: (claimId) => dispatch(doFetchViewCount(claimId)),
|
|
|
|
doAnalyticsView: (uri) => dispatch(doAnalyticsView(uri)),
|
2020-04-01 20:43:50 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
export default connect(select, perform)(FileViewCount);
|