lbry-desktop/ui/modal/modalPublishPreview/index.js

40 lines
1.6 KiB
JavaScript
Raw Permalink Normal View History

2020-08-13 21:06:43 +02:00
import { connect } from 'react-redux';
import { doHideModal } from 'redux/actions/app';
import ModalPublishPreview from './view';
import {
makeSelectPublishFormValue,
selectPublishFormValues,
selectIsStillEditing,
selectMyChannelClaims,
makeSelectClaimIsStreamPlaceholder,
SETTINGS,
} from 'lbry-redux';
import { selectFfmpegStatus, makeSelectClientSetting } from 'redux/selectors/settings';
2020-08-13 21:06:43 +02:00
import { doPublishDesktop } from 'redux/actions/publish';
import { doSetClientSetting } from 'redux/actions/settings';
2020-08-13 21:06:43 +02:00
const select = (state, props) => {
const editingUri = makeSelectPublishFormValue('editingURI')(state);
return {
...selectPublishFormValues(state),
myChannels: selectMyChannelClaims(state),
isVid: makeSelectPublishFormValue('fileVid')(state),
publishSuccess: makeSelectPublishFormValue('publishSuccess')(state),
publishing: makeSelectPublishFormValue('publishing')(state),
remoteFile: makeSelectPublishFormValue('remoteFileUrl')(state),
isStillEditing: selectIsStillEditing(state),
ffmpegStatus: selectFfmpegStatus(state),
enablePublishPreview: makeSelectClientSetting(SETTINGS.ENABLE_PUBLISH_PREVIEW)(state),
isLivestreamClaim: makeSelectClaimIsStreamPlaceholder(editingUri)(state),
};
};
2020-08-13 21:06:43 +02:00
const perform = (dispatch) => ({
2020-08-13 21:06:43 +02:00
publish: (filePath, preview) => dispatch(doPublishDesktop(filePath, preview)),
closeModal: () => dispatch(doHideModal()),
setEnablePublishPreview: (value) => dispatch(doSetClientSetting(SETTINGS.ENABLE_PUBLISH_PREVIEW, value)),
2020-08-13 21:06:43 +02:00
});
export default connect(select, perform)(ModalPublishPreview);