import { connect } from 'react-redux'; import { doHideModal } from 'redux/actions/app'; import { makeSelectClaimForUri, selectTitleForUri, selectRepostError, selectRepostLoading, selectMyClaimsWithoutChannels, makeSelectEffectiveAmountForUri, selectIsUriResolving, selectFetchingMyChannels, } from 'redux/selectors/claims'; import { selectBalance } from 'redux/selectors/wallet'; import { doRepost, doClearRepostError, doCheckPublishNameAvailability, doCheckPendingClaims, } from 'redux/actions/claims'; import { doToast } from 'redux/actions/notifications'; import { selectActiveChannelClaim, selectIncognito } from 'redux/selectors/app'; import RepostCreate from './view'; const select = (state, props) => ({ claim: makeSelectClaimForUri(props.uri)(state), passedRepostClaim: makeSelectClaimForUri(props.name, false)(state), passedRepostAmount: makeSelectEffectiveAmountForUri(props.name)(state), enteredContentClaim: makeSelectClaimForUri(props.contentUri)(state), enteredRepostClaim: makeSelectClaimForUri(props.repostUri, false)(state), enteredRepostAmount: makeSelectEffectiveAmountForUri(props.repostUri)(state), title: selectTitleForUri(state, props.uri), balance: selectBalance(state), error: selectRepostError(state), reposting: selectRepostLoading(state), myClaims: selectMyClaimsWithoutChannels(state), isResolvingPassedRepost: props.name && selectIsUriResolving(state, `lbry://${props.name}`), isResolvingEnteredRepost: props.repostUri && selectIsUriResolving(state, `lbry://${props.repostUri}`), activeChannelClaim: selectActiveChannelClaim(state), fetchingMyChannels: selectFetchingMyChannels(state), incognito: selectIncognito(state), }); export default connect(select, { doHideModal, doRepost, doClearRepostError, doToast, doCheckPublishNameAvailability, doCheckPendingClaims, })(RepostCreate);