mirror of
https://github.com/LBRYFoundation/lbry-desktop.git
synced 2025-08-28 07:51:31 +00:00
37 lines
1.3 KiB
JavaScript
37 lines
1.3 KiB
JavaScript
import { connect } from 'react-redux';
|
|
import { doNavigate } from 'redux/actions/navigation';
|
|
import { doResolveUri } from 'redux/actions/content';
|
|
import { selectShowNsfw } from 'redux/selectors/settings';
|
|
import { makeSelectClaimForUri, makeSelectMetadataForUri } from 'redux/selectors/claims';
|
|
import { makeSelectFileInfoForUri } from 'redux/selectors/file_info';
|
|
import { makeSelectIsUriResolving, selectRewardContentClaimIds } from 'redux/selectors/content';
|
|
import { selectPendingPublish } from 'redux/selectors/publish';
|
|
import FileCard from './view';
|
|
|
|
const select = (state, props) => {
|
|
let pendingPublish;
|
|
if (props.checkPending) {
|
|
pendingPublish = selectPendingPublish(props.uri)(state);
|
|
}
|
|
|
|
const fileCardInfo = pendingPublish || {
|
|
claim: makeSelectClaimForUri(props.uri)(state),
|
|
fileInfo: makeSelectFileInfoForUri(props.uri)(state),
|
|
metadata: makeSelectMetadataForUri(props.uri)(state),
|
|
isResolvingUri: makeSelectIsUriResolving(props.uri)(state),
|
|
};
|
|
|
|
return {
|
|
obscureNsfw: !selectShowNsfw(state),
|
|
rewardedContentClaimIds: selectRewardContentClaimIds(state, props),
|
|
...fileCardInfo,
|
|
pending: !!pendingPublish,
|
|
};
|
|
};
|
|
|
|
const perform = dispatch => ({
|
|
navigate: (path, params) => dispatch(doNavigate(path, params)),
|
|
resolveUri: uri => dispatch(doResolveUri(uri)),
|
|
});
|
|
|
|
export default connect(select, perform)(FileCard);
|