lbry-desktop/src/renderer/modal/modalCreditIntro/index.js

40 lines
1.3 KiB
JavaScript
Raw Normal View History

import React from 'react';
import { connect } from 'react-redux';
import { doCloseModal } from 'redux/actions/app';
import { doNavigate } from 'redux/actions/navigation';
import { doSetClientSetting } from 'redux/actions/settings';
import { selectUserIsRewardApproved } from 'redux/selectors/user';
import { selectBalance } from 'redux/selectors/wallet';
2017-06-08 23:15:34 +02:00
import {
makeSelectHasClaimedReward,
makeSelectRewardByType,
selectUnclaimedRewardValue,
} from 'redux/selectors/rewards';
import * as settings from 'constants/settings';
import ModalCreditIntro from './view';
2017-06-08 02:56:52 +02:00
const select = (state, props) => {
2017-06-08 23:15:34 +02:00
const selectHasClaimed = makeSelectHasClaimedReward(),
selectReward = makeSelectRewardByType();
2017-06-08 02:56:52 +02:00
return {
2017-08-21 05:38:34 +02:00
currentBalance: selectBalance(state),
2017-06-08 02:56:52 +02:00
isRewardApproved: selectUserIsRewardApproved(state),
totalRewardValue: selectUnclaimedRewardValue(state),
2017-06-08 02:56:52 +02:00
};
};
2017-12-13 22:36:30 +01:00
const perform = dispatch => () => ({
addBalance: () => {
dispatch(doSetClientSetting(settings.CREDIT_REQUIRED_ACKNOWLEDGED, true));
dispatch(doNavigate('/getcredits'));
2017-12-13 22:36:30 +01:00
dispatch(doCloseModal());
},
closeModal: () => {
dispatch(doSetClientSetting(settings.CREDIT_REQUIRED_ACKNOWLEDGED, true));
dispatch(doCloseModal());
},
});
2017-06-08 02:56:52 +02:00
export default connect(select, perform)(ModalCreditIntro);