2019-06-28 09:27:55 +02:00
|
|
|
import { connect } from 'react-redux';
|
|
|
|
import {
|
2019-07-03 04:30:34 +02:00
|
|
|
doResolveUri,
|
2019-06-28 09:27:55 +02:00
|
|
|
selectPublishFormValues,
|
|
|
|
selectIsStillEditing,
|
|
|
|
selectMyClaimForUri,
|
|
|
|
selectIsResolvingPublishUris,
|
|
|
|
selectTakeOverAmount,
|
|
|
|
doResetThumbnailStatus,
|
|
|
|
doClearPublish,
|
|
|
|
doUpdatePublishForm,
|
|
|
|
doPrepareEdit,
|
2020-04-24 15:51:00 +02:00
|
|
|
doCheckPublishNameAvailability,
|
2020-08-11 11:54:09 +02:00
|
|
|
SETTINGS,
|
2019-07-03 04:30:34 +02:00
|
|
|
} from 'lbry-redux';
|
2019-07-12 16:58:24 +02:00
|
|
|
import { doPublishDesktop } from 'redux/actions/publish';
|
2020-06-15 22:33:03 +02:00
|
|
|
import { selectUnclaimedRewardValue } from 'redux/selectors/rewards';
|
2021-02-09 17:05:56 +01:00
|
|
|
import { selectModal, selectActiveChannelClaim, selectIncognito } from 'redux/selectors/app';
|
2020-08-11 11:54:09 +02:00
|
|
|
import { makeSelectClientSetting } from 'redux/selectors/settings';
|
2019-06-28 09:27:55 +02:00
|
|
|
import PublishPage from './view';
|
2021-03-23 18:27:30 +01:00
|
|
|
import { selectUser } from '../../redux/selectors/user';
|
2017-06-30 10:45:54 +02:00
|
|
|
|
2019-06-28 09:27:55 +02:00
|
|
|
const select = state => ({
|
|
|
|
...selectPublishFormValues(state),
|
2021-03-23 18:27:30 +01:00
|
|
|
user: selectUser(state),
|
2019-06-28 09:27:55 +02:00
|
|
|
// The winning claim for a short lbry uri
|
|
|
|
amountNeededForTakeover: selectTakeOverAmount(state),
|
|
|
|
// My previously published claims under this short lbry uri
|
|
|
|
myClaimForUri: selectMyClaimForUri(state),
|
|
|
|
// If I clicked the "edit" button, have I changed the uri?
|
|
|
|
// Need this to make it easier to find the source on previously published content
|
|
|
|
isStillEditing: selectIsStillEditing(state),
|
|
|
|
isResolvingUri: selectIsResolvingPublishUris(state),
|
|
|
|
totalRewardValue: selectUnclaimedRewardValue(state),
|
2020-08-03 09:57:55 +02:00
|
|
|
modal: selectModal(state),
|
2020-08-11 11:54:09 +02:00
|
|
|
enablePublishPreview: makeSelectClientSetting(SETTINGS.ENABLE_PUBLISH_PREVIEW)(state),
|
2021-02-09 17:05:56 +01:00
|
|
|
activeChannelClaim: selectActiveChannelClaim(state),
|
|
|
|
incognito: selectIncognito(state),
|
2019-06-28 09:27:55 +02:00
|
|
|
});
|
|
|
|
|
|
|
|
const perform = dispatch => ({
|
|
|
|
updatePublishForm: value => dispatch(doUpdatePublishForm(value)),
|
|
|
|
clearPublish: () => dispatch(doClearPublish()),
|
|
|
|
resolveUri: uri => dispatch(doResolveUri(uri)),
|
2020-07-31 15:33:49 +02:00
|
|
|
publish: (filePath, preview) => dispatch(doPublishDesktop(filePath, preview)),
|
2019-06-28 09:27:55 +02:00
|
|
|
prepareEdit: (claim, uri) => dispatch(doPrepareEdit(claim, uri)),
|
|
|
|
resetThumbnailStatus: () => dispatch(doResetThumbnailStatus()),
|
2020-04-24 15:51:00 +02:00
|
|
|
checkAvailability: name => dispatch(doCheckPublishNameAvailability(name)),
|
2019-06-28 09:27:55 +02:00
|
|
|
});
|
|
|
|
|
2020-04-24 15:51:00 +02:00
|
|
|
export default connect(select, perform)(PublishPage);
|