From a4171a4ad132b238e8a0c1d7b6e36df438ea00b5 Mon Sep 17 00:00:00 2001 From: Allen Hujsak Date: Thu, 14 Sep 2017 13:59:28 -0500 Subject: [PATCH 1/4] Integration of the change password and pin components. Some styling and router issues still need to be addressed. --- src/modules/Container.ui.js | 4 ++++ .../ChangePasswordComponent.ui.js | 19 +++++++++++++++++++ .../ChangePasswordConnector.ui.js | 19 +++++++++++++++++++ .../ChangePinComponent.ui.js | 19 +++++++++++++++++++ .../ChangePinConnector.ui.js | 19 +++++++++++++++++++ .../UI/scenes/Settings/SettingsOverview.ui.js | 11 +++++++++++ 6 files changed, 91 insertions(+) create mode 100644 src/modules/UI/scenes/ChangePinPassword/ChangePasswordComponent.ui.js create mode 100644 src/modules/UI/scenes/ChangePinPassword/ChangePasswordConnector.ui.js create mode 100644 src/modules/UI/scenes/ChangePinPassword/ChangePinComponent.ui.js create mode 100644 src/modules/UI/scenes/ChangePinPassword/ChangePinConnector.ui.js diff --git a/src/modules/Container.ui.js b/src/modules/Container.ui.js index 3df46512a1b..c3ca711fcf0 100644 --- a/src/modules/Container.ui.js +++ b/src/modules/Container.ui.js @@ -11,6 +11,8 @@ import platform from '../theme/variables/platform' import Locale from 'react-native-locale' import Login from './UI/scenes/Login/Login.ui' +import ChangePasswordConnector from './UI/scenes/ChangePinPassword/ChangePasswordConnector.ui' +import ChangePinConnector from './UI/scenes/ChangePinPassword/ChangePinConnector.ui' import Layout from './UI/scenes/layout/Layout.ui' import TransactionListConnect from './UI/scenes/TransactionList' import TransactionDetails from './UI/scenes/TransactionDetails' @@ -143,6 +145,8 @@ class Main extends Component { + + diff --git a/src/modules/UI/scenes/ChangePinPassword/ChangePasswordComponent.ui.js b/src/modules/UI/scenes/ChangePinPassword/ChangePasswordComponent.ui.js new file mode 100644 index 00000000000..f044651d166 --- /dev/null +++ b/src/modules/UI/scenes/ChangePinPassword/ChangePasswordComponent.ui.js @@ -0,0 +1,19 @@ +import React, { Component } from 'react' +import { ChangePasswordScreen } from 'airbitz-core-js-ui' + +export default class ChangePassword extends Component { + onComplete = () => { + this.props.onComplete() + } + + render () { + return ( + + ) + } +} diff --git a/src/modules/UI/scenes/ChangePinPassword/ChangePasswordConnector.ui.js b/src/modules/UI/scenes/ChangePinPassword/ChangePasswordConnector.ui.js new file mode 100644 index 00000000000..aeb32e6dc79 --- /dev/null +++ b/src/modules/UI/scenes/ChangePinPassword/ChangePasswordConnector.ui.js @@ -0,0 +1,19 @@ +import { connect } from 'react-redux' +import * as CORE_SELECTORS from '../../../Core/selectors.js' +import { Actions } from 'react-native-router-flux' +import ChangePasswordComponent from './ChangePasswordComponent.ui' + +export const mapStateToProps = (state) => { + return { + context: CORE_SELECTORS.getContext(state), + accountObject: CORE_SELECTORS.getAccount(state) + } +} + +export const mapDispatchToProps = () => { + return { + onComplete: () => Actions['settingsOverview']() + } +} + +export default connect(mapStateToProps, mapDispatchToProps)(ChangePasswordComponent) diff --git a/src/modules/UI/scenes/ChangePinPassword/ChangePinComponent.ui.js b/src/modules/UI/scenes/ChangePinPassword/ChangePinComponent.ui.js new file mode 100644 index 00000000000..30e01341f5c --- /dev/null +++ b/src/modules/UI/scenes/ChangePinPassword/ChangePinComponent.ui.js @@ -0,0 +1,19 @@ +import React, { Component } from 'react' +import { ChangePinScreen } from 'airbitz-core-js-ui' + +export default class ChangePassword extends Component { + onComplete = () => { + this.props.onComplete() + } + + render () { + return ( + + ) + } +} diff --git a/src/modules/UI/scenes/ChangePinPassword/ChangePinConnector.ui.js b/src/modules/UI/scenes/ChangePinPassword/ChangePinConnector.ui.js new file mode 100644 index 00000000000..040206546a7 --- /dev/null +++ b/src/modules/UI/scenes/ChangePinPassword/ChangePinConnector.ui.js @@ -0,0 +1,19 @@ +import { connect } from 'react-redux' +import * as CORE_SELECTORS from '../../../Core/selectors.js' +import { Actions } from 'react-native-router-flux' +import ChangePinComponent from './ChangePinComponent.ui' + +export const mapStateToProps = (state) => { + return { + context: CORE_SELECTORS.getContext(state), + accountObject: CORE_SELECTORS.getAccount(state) + } +} + +export const mapDispatchToProps = () => { + return { + onComplete: () => Actions['settingsOverview']() + } +} + +export default connect(mapStateToProps, mapDispatchToProps)(ChangePinComponent) diff --git a/src/modules/UI/scenes/Settings/SettingsOverview.ui.js b/src/modules/UI/scenes/Settings/SettingsOverview.ui.js index 20bcb28cd87..0d039a0c5c5 100644 --- a/src/modules/UI/scenes/Settings/SettingsOverview.ui.js +++ b/src/modules/UI/scenes/Settings/SettingsOverview.ui.js @@ -80,7 +80,18 @@ class SettingsOverview extends Component { } _onPressDummyRouting = () => { + console.log('trying this shit') + Actions['changePassword']() + //this._handleOnPressRouting('edge') + + } + /* istead of + _onPressDummyRouting () { console.log('dummy routing') + } */ + + _onChangePasswordPress = () => { + console.log('LEts change password') } _onPressOpenLogoffTime = () => { From 756cf58f86871862863f8b1a175a59ef54100c6e Mon Sep 17 00:00:00 2001 From: Allen Hujsak Date: Thu, 14 Sep 2017 16:30:43 -0500 Subject: [PATCH 2/4] Changes to get apps outside the layout and be full screen --- src/modules/Container.ui.js | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/src/modules/Container.ui.js b/src/modules/Container.ui.js index 195708566e4..70243619ea4 100644 --- a/src/modules/Container.ui.js +++ b/src/modules/Container.ui.js @@ -126,34 +126,34 @@ class Main extends Component { - - + + + + - + - - + + - - + + - - + + - + - - - + - - + + - + - - + + From 6b42832f1198c661b7021b9807d28dbfea01d49c Mon Sep 17 00:00:00 2001 From: Allen Hujsak Date: Thu, 14 Sep 2017 16:32:37 -0500 Subject: [PATCH 3/4] formatting changes --- .../ChangePasswordComponent.ui.js | 4 ++-- .../ChangePasswordConnector.ui.js | 22 ++++++++----------- .../ChangePinComponent.ui.js | 4 ++-- .../ChangePinConnector.ui.js | 22 ++++++++----------- 4 files changed, 22 insertions(+), 30 deletions(-) diff --git a/src/modules/UI/scenes/ChangePinPassword/ChangePasswordComponent.ui.js b/src/modules/UI/scenes/ChangePinPassword/ChangePasswordComponent.ui.js index f044651d166..234b20fade5 100644 --- a/src/modules/UI/scenes/ChangePinPassword/ChangePasswordComponent.ui.js +++ b/src/modules/UI/scenes/ChangePinPassword/ChangePasswordComponent.ui.js @@ -1,5 +1,5 @@ -import React, { Component } from 'react' -import { ChangePasswordScreen } from 'airbitz-core-js-ui' +import React, {Component} from 'react' +import {ChangePasswordScreen} from 'airbitz-core-js-ui' export default class ChangePassword extends Component { onComplete = () => { diff --git a/src/modules/UI/scenes/ChangePinPassword/ChangePasswordConnector.ui.js b/src/modules/UI/scenes/ChangePinPassword/ChangePasswordConnector.ui.js index aeb32e6dc79..f5c90d05fe5 100644 --- a/src/modules/UI/scenes/ChangePinPassword/ChangePasswordConnector.ui.js +++ b/src/modules/UI/scenes/ChangePinPassword/ChangePasswordConnector.ui.js @@ -1,19 +1,15 @@ -import { connect } from 'react-redux' +import {connect} from 'react-redux' import * as CORE_SELECTORS from '../../../Core/selectors.js' -import { Actions } from 'react-native-router-flux' +import {Actions} from 'react-native-router-flux' import ChangePasswordComponent from './ChangePasswordComponent.ui' -export const mapStateToProps = (state) => { - return { - context: CORE_SELECTORS.getContext(state), - accountObject: CORE_SELECTORS.getAccount(state) - } -} +export const mapStateToProps = (state) => ({ + context: CORE_SELECTORS.getContext(state), + accountObject: CORE_SELECTORS.getAccount(state) +}) -export const mapDispatchToProps = () => { - return { - onComplete: () => Actions['settingsOverview']() - } -} +export const mapDispatchToProps = () => ({ + onComplete: () => Actions['settingsOverview']() +}) export default connect(mapStateToProps, mapDispatchToProps)(ChangePasswordComponent) diff --git a/src/modules/UI/scenes/ChangePinPassword/ChangePinComponent.ui.js b/src/modules/UI/scenes/ChangePinPassword/ChangePinComponent.ui.js index 30e01341f5c..c8439dbf61f 100644 --- a/src/modules/UI/scenes/ChangePinPassword/ChangePinComponent.ui.js +++ b/src/modules/UI/scenes/ChangePinPassword/ChangePinComponent.ui.js @@ -1,5 +1,5 @@ -import React, { Component } from 'react' -import { ChangePinScreen } from 'airbitz-core-js-ui' +import React, {Component} from 'react' +import {ChangePinScreen} from 'airbitz-core-js-ui' export default class ChangePassword extends Component { onComplete = () => { diff --git a/src/modules/UI/scenes/ChangePinPassword/ChangePinConnector.ui.js b/src/modules/UI/scenes/ChangePinPassword/ChangePinConnector.ui.js index 040206546a7..b881d6ae95c 100644 --- a/src/modules/UI/scenes/ChangePinPassword/ChangePinConnector.ui.js +++ b/src/modules/UI/scenes/ChangePinPassword/ChangePinConnector.ui.js @@ -1,19 +1,15 @@ -import { connect } from 'react-redux' +import {connect} from 'react-redux' import * as CORE_SELECTORS from '../../../Core/selectors.js' -import { Actions } from 'react-native-router-flux' +import {Actions} from 'react-native-router-flux' import ChangePinComponent from './ChangePinComponent.ui' -export const mapStateToProps = (state) => { - return { - context: CORE_SELECTORS.getContext(state), - accountObject: CORE_SELECTORS.getAccount(state) - } -} +export const mapStateToProps = (state) => ({ + context: CORE_SELECTORS.getContext(state), + accountObject: CORE_SELECTORS.getAccount(state) +}) -export const mapDispatchToProps = () => { - return { - onComplete: () => Actions['settingsOverview']() - } -} +export const mapDispatchToProps = () => ({ + onComplete: () => Actions['settingsOverview']() +}) export default connect(mapStateToProps, mapDispatchToProps)(ChangePinComponent) From ca55fd1ed983d490e2f25f68fe7fd7fe73c1f327 Mon Sep 17 00:00:00 2001 From: Allen Hujsak Date: Fri, 15 Sep 2017 03:24:36 -0500 Subject: [PATCH 4/4] Added password Recovery and also set up Scene Keys as a constants file to avoid problems with possible mis-spellings when used throughout the app. --- src/constants/SceneKeys.js | 16 +++++++++ src/constants/index.js | 2 ++ src/modules/Container.ui.js | 34 +++++++++--------- .../ChangePasswordConnector.ui.js | 3 +- .../ChangePinConnector.ui.js | 3 +- .../PasswordRecoveryComponent.ui.js | 19 ++++++++++ .../PasswordRecoveryConnector.ui.js | 16 +++++++++ .../UI/scenes/Settings/SettingsOverview.ui.js | 35 +++++++------------ 8 files changed, 88 insertions(+), 40 deletions(-) create mode 100644 src/constants/SceneKeys.js create mode 100644 src/constants/index.js create mode 100644 src/modules/UI/scenes/PasswordRecovery/PasswordRecoveryComponent.ui.js create mode 100644 src/modules/UI/scenes/PasswordRecovery/PasswordRecoveryConnector.ui.js diff --git a/src/constants/SceneKeys.js b/src/constants/SceneKeys.js new file mode 100644 index 00000000000..ab26357a8ef --- /dev/null +++ b/src/constants/SceneKeys.js @@ -0,0 +1,16 @@ +export const LOGIN = 'login' +export const CHANGE_PASSWORD = 'changePassword' +export const CAHNGE_PIN = 'changePin' +export const RECOVER_PASSWORD = 'passwordRecovery' +export const EDGE = 'edge' +export const WALLET_LIST = 'walletList' +export const CREATE_WALLET = 'createWallet' +export const TRANSACTION_LIST = 'transactionList' +export const TRANSACTION_DETAILS = 'transactionDetails' +export const SCAN = 'scan' +export const SEND_CONFIRMATION = 'sendConfirmation' +export const REQUEST = 'request' +export const SETTINGS_OVERVIEW = 'settingsOverview' +export const BTC_SETTINGS = 'btcSettings' +export const ETH_SETTINGS = 'ethSettings' +export const DIRECTORY= 'directory' diff --git a/src/constants/index.js b/src/constants/index.js new file mode 100644 index 00000000000..7051510168b --- /dev/null +++ b/src/constants/index.js @@ -0,0 +1,2 @@ +export * from './SceneKeys' + diff --git a/src/modules/Container.ui.js b/src/modules/Container.ui.js index 70243619ea4..95a6efaa459 100644 --- a/src/modules/Container.ui.js +++ b/src/modules/Container.ui.js @@ -9,10 +9,11 @@ import {MenuContext} from 'react-native-menu' import getTheme from '../theme/components' import platform from '../theme/variables/platform' import Locale from 'react-native-locale' - +import * as Constants from '../constants' import Login from './UI/scenes/Login/Login.ui' import ChangePasswordConnector from './UI/scenes/ChangePinPassword/ChangePasswordConnector.ui' import ChangePinConnector from './UI/scenes/ChangePinPassword/ChangePinConnector.ui' +import PasswordRecoveryConnector from './UI/scenes/PasswordRecovery/PasswordRecoveryConnector.ui' import Layout from './UI/scenes/layout/Layout.ui' import TransactionListConnect from './UI/scenes/TransactionList' import TransactionDetails from './UI/scenes/TransactionDetails' @@ -127,29 +128,30 @@ class Main extends Component { - - - + + + + - + - - + + - - + + - - + + - + - + - - + + - + diff --git a/src/modules/UI/scenes/ChangePinPassword/ChangePasswordConnector.ui.js b/src/modules/UI/scenes/ChangePinPassword/ChangePasswordConnector.ui.js index f5c90d05fe5..4d62e281d37 100644 --- a/src/modules/UI/scenes/ChangePinPassword/ChangePasswordConnector.ui.js +++ b/src/modules/UI/scenes/ChangePinPassword/ChangePasswordConnector.ui.js @@ -2,6 +2,7 @@ import {connect} from 'react-redux' import * as CORE_SELECTORS from '../../../Core/selectors.js' import {Actions} from 'react-native-router-flux' import ChangePasswordComponent from './ChangePasswordComponent.ui' +import * as Constants from '../../../../constants' export const mapStateToProps = (state) => ({ context: CORE_SELECTORS.getContext(state), @@ -9,7 +10,7 @@ export const mapStateToProps = (state) => ({ }) export const mapDispatchToProps = () => ({ - onComplete: () => Actions['settingsOverview']() + onComplete: () => Actions[Constants.SETTINGS_OVERVIEW]() }) export default connect(mapStateToProps, mapDispatchToProps)(ChangePasswordComponent) diff --git a/src/modules/UI/scenes/ChangePinPassword/ChangePinConnector.ui.js b/src/modules/UI/scenes/ChangePinPassword/ChangePinConnector.ui.js index b881d6ae95c..b9d096156be 100644 --- a/src/modules/UI/scenes/ChangePinPassword/ChangePinConnector.ui.js +++ b/src/modules/UI/scenes/ChangePinPassword/ChangePinConnector.ui.js @@ -2,6 +2,7 @@ import {connect} from 'react-redux' import * as CORE_SELECTORS from '../../../Core/selectors.js' import {Actions} from 'react-native-router-flux' import ChangePinComponent from './ChangePinComponent.ui' +import * as Constants from '../../../../constants' export const mapStateToProps = (state) => ({ context: CORE_SELECTORS.getContext(state), @@ -9,7 +10,7 @@ export const mapStateToProps = (state) => ({ }) export const mapDispatchToProps = () => ({ - onComplete: () => Actions['settingsOverview']() + onComplete: () => Actions[Constants.SETTINGS_OVERVIEW]() }) export default connect(mapStateToProps, mapDispatchToProps)(ChangePinComponent) diff --git a/src/modules/UI/scenes/PasswordRecovery/PasswordRecoveryComponent.ui.js b/src/modules/UI/scenes/PasswordRecovery/PasswordRecoveryComponent.ui.js new file mode 100644 index 00000000000..cd6b89f0bce --- /dev/null +++ b/src/modules/UI/scenes/PasswordRecovery/PasswordRecoveryComponent.ui.js @@ -0,0 +1,19 @@ +import React, {Component} from 'react' +import {PasswordRecoveryScreen} from 'airbitz-core-js-ui' + +export default class PasswordRecovery extends Component { + onComplete = () => { + this.props.onComplete() + } + + render () { + return ( + + ) + } +} diff --git a/src/modules/UI/scenes/PasswordRecovery/PasswordRecoveryConnector.ui.js b/src/modules/UI/scenes/PasswordRecovery/PasswordRecoveryConnector.ui.js new file mode 100644 index 00000000000..3c27158b00e --- /dev/null +++ b/src/modules/UI/scenes/PasswordRecovery/PasswordRecoveryConnector.ui.js @@ -0,0 +1,16 @@ +import {connect} from 'react-redux' +import * as CORE_SELECTORS from '../../../Core/selectors.js' +import {Actions} from 'react-native-router-flux' +import PasswordRecoveryComponent from './PasswordRecoveryComponent.ui' +import * as Constants from '../../../../constants' + +export const mapStateToProps = (state) => ({ + context: CORE_SELECTORS.getContext(state), + accountObject: CORE_SELECTORS.getAccount(state) +}) + +export const mapDispatchToProps = () => ({ + onComplete: () => Actions[Constants.SETTINGS_OVERVIEW]() +}) + +export default connect(mapStateToProps, mapDispatchToProps)(PasswordRecoveryComponent) diff --git a/src/modules/UI/scenes/Settings/SettingsOverview.ui.js b/src/modules/UI/scenes/Settings/SettingsOverview.ui.js index 0578861849c..cdd9d7ea04b 100644 --- a/src/modules/UI/scenes/Settings/SettingsOverview.ui.js +++ b/src/modules/UI/scenes/Settings/SettingsOverview.ui.js @@ -10,6 +10,7 @@ import FAIcon from 'react-native-vector-icons/FontAwesome' import IonIcon from 'react-native-vector-icons/Ionicons' import LinearGradient from 'react-native-linear-gradient' +import * as Constants from '../../../../constants' import strings from '../../../../locales/default' import T from '../../components/FormattedText' import RowModal from './components/RowModal.ui' @@ -34,20 +35,19 @@ class SettingsOverview extends Component { this.settings = [ { - key: 'changePassword', + key: Constants.CHANGE_PASSWORD, text: sprintf(strings.enUS['settings_button_change_password']), - routeFunction: this._onPressDummyRouting + routeFunction: this._onPressChangePasswordRouting }, { - key: 'changePin', + key: Constants.CAHNGE_PIN, text: sprintf(strings.enUS['settings_button_pin']), - routeFunction: this._onPressDummyRouting + routeFunction: this._onPressChangePinRouting }, { - key: 'passwordRecovery', + key: Constants.RECOVER_PASSWORD, text: sprintf(strings.enUS['settings_button_change_pass_recovery']), - routeFunction: this._onPressDummyRouting + routeFunction: this._onPressRecoverPasswordRouting } ] - this.securityRoute = [ { key: 'setup2Factor', @@ -93,25 +93,16 @@ class SettingsOverview extends Component { ] } - _handleOnPressRouting = (route) => { - console.log('in SettingsOverview.ui.js, route is: ', route) - let goRoute = Actions[route] - goRoute() + _onPressChangePasswordRouting = () => { + Actions[Constants.CHANGE_PASSWORD]() } - _onPressDummyRouting = () => { - console.log('trying this shit') - Actions['changePassword']() - //this._handleOnPressRouting('edge') + _onPressChangePinRouting = () => { + Actions[Constants.CAHNGE_PIN]() } - /* istead of - _onPressDummyRouting () { - console.log('dummy routing') - } */ - - _onChangePasswordPress = () => { - console.log('LEts change password') + _onPressRecoverPasswordRouting = () => { + Actions[Constants.CHANGE_PASSWORD]() } _onPressOpenLogoffTime = () => {