complete authentication flow and email verification link implementation #232

Merged
akinwale merged 9 commits from authentication-flow into master 2018-08-16 11:48:35 +02:00
4 changed files with 32 additions and 14 deletions
Showing only changes of commit 2f9616a487 - Show all commits
app/src

View file

@ -39,9 +39,10 @@ import {
import { makeSelectClientSetting } from '../redux/selectors/settings';
import { decode as atob } from 'base-64';
import Icon from 'react-native-vector-icons/FontAwesome5';
import Constants from '../constants';
import discoverStyle from '../styles/discover';
import searchStyle from '../styles/search';
import SearchRightHeaderIcon from "../component/searchRightHeaderIcon";
import SearchRightHeaderIcon from '../component/searchRightHeaderIcon';
const discoverStack = StackNavigator({
Discover: {
@ -210,10 +211,14 @@ class AppWithNavigationState extends React.Component {
!emailVerifyPending &&
!this.state.emailVerifyDone &&
(emailToVerify || emailVerifyErrorMessage)) {
this.setState({ emailVerifyDone: true });
const message = emailVerifyErrorMessage ?
String(emailVerifyErrorMessage) : 'Your email address was successfully verified.';
dispatch(doNotify({ message, displayType: ['toast'] }));
AsyncStorage.getItem(Constants.KEY_SHOULD_VERIFY_EMAIL).then(shouldVerify => {
if ('true' === shouldVerify) {
this.setState({ emailVerifyDone: true });
const message = emailVerifyErrorMessage ?
String(emailVerifyErrorMessage) : 'Your email address was successfully verified.';
dispatch(doNotify({ message, displayType: ['toast'] }));
}
});
}
}
@ -243,6 +248,7 @@ class AppWithNavigationState extends React.Component {
}
if (verification.token && verification.recaptcha) {
AsyncStorage.setItem(Constants.KEY_SHOULD_VERIFY_EMAIL, 'true');
try {
dispatch(doUserEmailVerify(verification.token, verification.recaptcha));
} catch (error) {

View file

@ -1,5 +1,6 @@
const Constants = {
KEY_FIRST_RUN_EMAIL: "firstRunEmail",
KEY_SHOULD_VERIFY_EMAIL: "shouldVerifyEmail",
skhameneh commented 2018-08-16 10:20:58 +02:00 (Migrated from github.com)
Review

Why is this value camel case unlike the others?

Why is this value camel case unlike the others?
akinwale commented 2018-08-16 10:51:26 +02:00 (Migrated from github.com)
Review

The value for the SETTING_* key should actually be camel case.

The value for the `SETTING_*` key should actually be camel case.
SETTING_ALPHA_UNDERSTANDS_RISKS: "ALPHA_UNDERSTANDS_RISKS",

View file

@ -10,15 +10,19 @@ import {
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
} from 'react-native';
import Button from '../../../component/button';
import Colors from '../../../styles/colors';
import Constants from '../../../constants';
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
import firstRunStyle from '../../../styles/firstRun';
class EmailCollectPage extends React.PureComponent {
static MAX_STATUS_TRIES = 15;
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
constructor() {
super();
this.state = {
email: null,
authenticationStarted: false,
authenticationFailed: false
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
authenticationFailed: false,
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
statusTries: 0
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
};
}
@ -34,7 +38,7 @@ class EmailCollectPage extends React.PureComponent {
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
// call user/new
const { generateAuthToken, authenticating, authToken } = this.props;
if (!authToken && !authenticating) {
this.startAuthenticating(true);
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
this.startAuthenticating();
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
}
AsyncStorage.getItem('firstRunEmail').then(email => {
@ -44,22 +48,27 @@ class EmailCollectPage extends React.PureComponent {
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
});
}
startAuthenticating = (useTimeout) => {
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
startAuthenticating = () => {
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
const { generateAuthToken } = this.props;
this.setState({ authenticationStarted: true, authenticationFailed: false });
setTimeout(() => {
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
Lbry.status().then(info => {
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
Lbry.status().then(info => {
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
generateAuthToken(info.installation_id)
}).catch(error => {
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
}).catch(error => {
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
if (this.state.statusTries >= EmailCollectPage.MAX_STATUS_TRIES) {
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
this.setState({ authenticationFailed: true });
});
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
}, useTimeout ? 10000 : 0); // if useTimeout is set, wait 10s to give the daemon some time to start
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
} else {
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
setTimeout(() => {
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
this.startAuthenticating();
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
this.setState({ statusTries: this.state.statusTries + 1 });
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
}, 1000); // Retry every second for a maximum of MAX_STATUS_TRIES tries (15 seconds)
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
}
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
});
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
}
handleChangeText = (text) => {
// save the value to the state email
this.setState({ email: text });
AsyncStorage.setItem('firstRunEmail', text);
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
AsyncStorage.setItem(Constants.KEY_FIRST_RUN_EMAIL, text);
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
}
render() {

skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`
skhameneh commented 2018-08-16 10:22:29 +02:00 (Migrated from github.com)
Review

No aliases (or resolves) for paths?
*Remove the long relative paths

No aliases (or resolves) for paths? *Remove the long relative paths
skhameneh commented 2018-08-16 10:25:25 +02:00 (Migrated from github.com)
Review

Don’t need a full constructor (see comment above)

Don’t need a full constructor (see comment above)
skhameneh commented 2018-08-16 10:27:30 +02:00 (Migrated from github.com)
Review

This is a legacy lifecycle method, should use getDerivedStateFromProps

This is a legacy lifecycle method, should use `getDerivedStateFromProps`

View file

@ -13,6 +13,7 @@ import { NavigationActions } from 'react-navigation';
import { decode as atob } from 'base-64';
import PropTypes from 'prop-types';
import Colors from '../../styles/colors';
import Constants from '../../constants';
import splashStyle from '../../styles/splash';
class SplashScreen extends React.PureComponent {
@ -78,6 +79,7 @@ class SplashScreen extends React.PureComponent {
console.log(error);
}
if (verification.token && verification.recaptcha) {
AsyncStorage.setItem(Constants.KEY_SHOULD_VERIFY_EMAIL, 'true');
try {
verifyUserEmail(verification.token, verification.recaptcha);
} catch (error) {