summaryrefslogtreecommitdiffhomepage
path: root/gui/src/renderer/containers/AccountPage.tsx
blob: accd4287b29178e2fe8b17b5a4c10c735c5b5970 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import { connect } from 'react-redux';
import { RouteComponentProps, withRouter } from 'react-router';
import { links } from '../../config.json';
import consumePromise from '../../shared/promise';
import Account from '../components/Account';

import withAppContext, { IAppContext } from '../context';
import { IReduxState, ReduxDispatch } from '../redux/store';

const mapStateToProps = (state: IReduxState) => ({
  accountToken: state.account.accountToken,
  accountExpiry: state.account.expiry,
  expiryLocale: state.userInterface.locale,
  isOffline: state.connection.isBlocked,
});
const mapDispatchToProps = (_dispatch: ReduxDispatch, props: RouteComponentProps & IAppContext) => {
  return {
    onLogout: () => {
      consumePromise(props.app.logout());
    },
    onClose: () => {
      props.history.goBack();
    },
    onBuyMore: () => props.app.openLinkWithAuth(links.purchase),
  };
};

export default withAppContext(withRouter(connect(mapStateToProps, mapDispatchToProps)(Account)));