2017-06-06 23:19:12 +02:00
|
|
|
import React from "react";
|
|
|
|
import { connect } from "react-redux";
|
|
|
|
import { selectCurrentModal } from "selectors/app";
|
2017-07-16 18:29:46 +02:00
|
|
|
import {
|
|
|
|
doCheckUpgradeAvailable,
|
|
|
|
doOpenModal,
|
|
|
|
doAlertError,
|
|
|
|
} from "actions/app";
|
2017-06-06 23:19:12 +02:00
|
|
|
import { doUpdateBalance } from "actions/wallet";
|
2017-07-16 18:29:46 +02:00
|
|
|
import { selectWelcomeModalAcknowledged } from "selectors/app";
|
|
|
|
import rewards from "rewards";
|
|
|
|
import {
|
|
|
|
selectFetchingRewards,
|
|
|
|
makeSelectHasClaimedReward,
|
|
|
|
} from "selectors/rewards";
|
|
|
|
import { selectUser } from "selectors/user";
|
2017-06-06 23:19:12 +02:00
|
|
|
import App from "./view";
|
2017-07-16 18:29:46 +02:00
|
|
|
import * as modals from "constants/modal_types";
|
2017-04-07 07:15:22 +02:00
|
|
|
|
2017-07-16 18:29:46 +02:00
|
|
|
const select = (state, props) => {
|
|
|
|
const selectHasClaimed = makeSelectHasClaimedReward();
|
|
|
|
|
|
|
|
return {
|
|
|
|
modal: selectCurrentModal(state),
|
|
|
|
isWelcomeAcknowledged: selectWelcomeModalAcknowledged(state),
|
|
|
|
isFetchingRewards: selectFetchingRewards(state),
|
|
|
|
isWelcomeRewardClaimed: selectHasClaimed(state, {
|
|
|
|
reward_type: rewards.TYPE_NEW_USER,
|
|
|
|
}),
|
|
|
|
user: selectUser(state),
|
|
|
|
};
|
|
|
|
};
|
2017-04-07 07:15:22 +02:00
|
|
|
|
2017-06-06 06:21:55 +02:00
|
|
|
const perform = dispatch => ({
|
2017-06-06 23:19:12 +02:00
|
|
|
alertError: errorList => dispatch(doAlertError(errorList)),
|
2017-04-07 07:15:22 +02:00
|
|
|
checkUpgradeAvailable: () => dispatch(doCheckUpgradeAvailable()),
|
2017-07-16 18:29:46 +02:00
|
|
|
openWelcomeModal: () => dispatch(doOpenModal(modals.WELCOME)),
|
2017-06-06 23:19:12 +02:00
|
|
|
updateBalance: balance => dispatch(doUpdateBalance(balance)),
|
2017-06-06 06:21:55 +02:00
|
|
|
});
|
2017-04-07 07:15:22 +02:00
|
|
|
|
2017-06-06 06:21:55 +02:00
|
|
|
export default connect(select, perform)(App);
|