2020-01-06 13:32:35 -05:00
|
|
|
import { connect } from 'react-redux';
|
2021-11-17 17:23:01 +08:00
|
|
|
import { selectClaimIdForUri } from 'redux/selectors/claims';
|
|
|
|
import { selectViewersForId } from 'redux/selectors/livestream';
|
2022-01-11 08:42:12 -08:00
|
|
|
import { selectLanguage } from 'redux/selectors/settings';
|
2021-11-15 22:08:23 +08:00
|
|
|
import { doFetchViewCount, selectViewCountForUri } from 'lbryinc';
|
2020-01-06 13:32:35 -05:00
|
|
|
import FileViewCount from './view';
|
|
|
|
|
2021-11-17 17:23:01 +08:00
|
|
|
const select = (state, props) => {
|
|
|
|
const claimId = selectClaimIdForUri(state, props.uri);
|
|
|
|
return {
|
|
|
|
claimId,
|
|
|
|
viewCount: selectViewCountForUri(state, props.uri),
|
2021-11-18 17:41:43 -06:00
|
|
|
activeViewers: props.livestream && claimId ? selectViewersForId(state, claimId) : undefined,
|
2022-01-11 08:42:12 -08:00
|
|
|
lang: selectLanguage(state),
|
2021-11-17 17:23:01 +08:00
|
|
|
};
|
|
|
|
};
|
2020-01-06 13:32:35 -05:00
|
|
|
|
2021-04-14 11:40:36 -04:00
|
|
|
const perform = (dispatch) => ({
|
|
|
|
fetchViewCount: (claimId) => dispatch(doFetchViewCount(claimId)),
|
2020-04-01 14:43:50 -04:00
|
|
|
});
|
|
|
|
|
|
|
|
export default connect(select, perform)(FileViewCount);
|