2017-06-07 20:56:52 -04:00
|
|
|
import React from "react";
|
|
|
|
import { connect } from "react-redux";
|
2017-07-16 12:29:46 -04:00
|
|
|
import {
|
|
|
|
makeSelectRewardByType,
|
|
|
|
selectFetchingRewards,
|
|
|
|
selectRewards,
|
|
|
|
} from "selectors/rewards";
|
2017-07-20 15:03:01 -04:00
|
|
|
import { selectUser } from "selectors/user";
|
2017-07-19 21:07:17 -04:00
|
|
|
import { doAuthNavigate, doNavigate } from "actions/app";
|
2017-06-23 12:29:40 +07:00
|
|
|
import { doRewardList } from "actions/rewards";
|
2017-07-16 12:29:46 -04:00
|
|
|
import rewards from "rewards";
|
2017-06-07 20:56:52 -04:00
|
|
|
import RewardsPage from "./view";
|
2017-05-26 12:53:32 +04:00
|
|
|
|
2017-07-16 12:29:46 -04:00
|
|
|
const select = (state, props) => {
|
|
|
|
const selectReward = makeSelectRewardByType();
|
|
|
|
|
|
|
|
return {
|
|
|
|
fetching: selectFetchingRewards(state),
|
|
|
|
rewards: selectRewards(state),
|
|
|
|
newUserReward: selectReward(state, { reward_type: rewards.TYPE_NEW_USER }),
|
2017-07-19 21:07:17 -04:00
|
|
|
user: selectUser(state),
|
2017-07-16 12:29:46 -04:00
|
|
|
};
|
|
|
|
};
|
2017-05-26 12:53:32 +04:00
|
|
|
|
2017-06-23 12:29:40 +07:00
|
|
|
const perform = dispatch => ({
|
|
|
|
fetchRewards: () => dispatch(doRewardList()),
|
2017-07-19 21:07:17 -04:00
|
|
|
navigate: path => dispatch(doNavigate(path)),
|
2017-07-19 11:09:40 -04:00
|
|
|
doAuth: () => {
|
|
|
|
dispatch(doAuthNavigate("/rewards"));
|
|
|
|
},
|
2017-06-23 12:29:40 +07:00
|
|
|
});
|
|
|
|
|
|
|
|
export default connect(select, perform)(RewardsPage);
|