From 2bbd7bf03466e2151bf5822699a5252db4501b84 Mon Sep 17 00:00:00 2001
From: OSBotify <76178356+OSBotify@users.noreply.github.com>
Date: Mon, 27 Sep 2021 16:40:52 -0700
Subject: [PATCH 1/2] Merge pull request #5546 from
Expensify/version-BUILD-5ddc191d562a2853db7625e7b095b1fdb7ef9b28
(cherry picked from commit ee98b489b8421fa031d27e595519f3cd79baf93f)
---
android/app/build.gradle | 4 ++--
ios/NewExpensify/Info.plist | 2 +-
ios/NewExpensifyTests/Info.plist | 2 +-
package-lock.json | 2 +-
package.json | 2 +-
5 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/android/app/build.gradle b/android/app/build.gradle
index 2f0a06914834..e2730df66932 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -150,8 +150,8 @@ android {
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
multiDexEnabled rootProject.ext.multiDexEnabled
- versionCode 1001010206
- versionName "1.1.2-6"
+ versionCode 1001010207
+ versionName "1.1.2-7"
}
splits {
abi {
diff --git a/ios/NewExpensify/Info.plist b/ios/NewExpensify/Info.plist
index 2dece4813d3c..91ffde0a2c1b 100644
--- a/ios/NewExpensify/Info.plist
+++ b/ios/NewExpensify/Info.plist
@@ -31,7 +31,7 @@
CFBundleVersion
- 1.1.2.6
+ 1.1.2.7
ITSAppUsesNonExemptEncryption
LSApplicationQueriesSchemes
diff --git a/ios/NewExpensifyTests/Info.plist b/ios/NewExpensifyTests/Info.plist
index 538ef4d80789..12dde7cdf3b5 100644
--- a/ios/NewExpensifyTests/Info.plist
+++ b/ios/NewExpensifyTests/Info.plist
@@ -19,6 +19,6 @@
CFBundleSignature
????
CFBundleVersion
- 1.1.2.6
+ 1.1.2.7
diff --git a/package-lock.json b/package-lock.json
index 84fed12ca91b..12a8967f2da4 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "new.expensify",
- "version": "1.1.2-6",
+ "version": "1.1.2-7",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
diff --git a/package.json b/package.json
index 95de0a347b1e..0ec54bb83410 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "new.expensify",
- "version": "1.1.2-6",
+ "version": "1.1.2-7",
"author": "Expensify, Inc.",
"homepage": "https://new.expensify.com",
"description": "New Expensify is the next generation of Expensify: a reimagination of payments based atop a foundation of chat.",
From 8b9a9e9f40b79ea10c0e27f2b5cfa74a830ac4eb Mon Sep 17 00:00:00 2001
From: Carlos Martins
Date: Mon, 27 Sep 2021 17:38:37 -0600
Subject: [PATCH 2/2] Merge pull request #5524 from
Expensify/robert-vbaUnvalidatedError
Store account validated state and display error early on VBA flow
(cherry picked from commit 5ddc191d562a2853db7625e7b095b1fdb7ef9b28)
---
src/components/MenuItem.js | 1 +
src/languages/en.js | 1 +
src/languages/es.js | 1 +
src/libs/actions/User.js | 3 ++-
.../ReimbursementAccount/BankAccountStep.js | 18 ++++++++++++++++--
5 files changed, 21 insertions(+), 3 deletions(-)
diff --git a/src/components/MenuItem.js b/src/components/MenuItem.js
index b7ffacc1e14d..03b3f4847e48 100644
--- a/src/components/MenuItem.js
+++ b/src/components/MenuItem.js
@@ -116,6 +116,7 @@ const MenuItem = ({
getButtonBackgroundColorStyle(getButtonState(focused || hovered, pressed, success, disabled)),
wrapperStyle,
])}
+ disabled={disabled}
>
{({hovered, pressed}) => (
<>
diff --git a/src/languages/en.js b/src/languages/en.js
index fb85686d62b5..06a211e07a5c 100755
--- a/src/languages/en.js
+++ b/src/languages/en.js
@@ -384,6 +384,7 @@ export default {
toGetStarted: 'To get started with the Expensify Card, you first need to add a bank account.',
plaidBodyCopy: 'Give your employees an easier way to pay - and get paid back - for company expenses.',
checkHelpLine: 'Your routing number and account number can be found on a check for the account.',
+ validateAccountError: 'In order to finish setting up your bank account, you must validate your account. Please check your email to validate your account, and return here to finish up!',
hasPhoneLoginError: 'To add a verified bank account please ensure your primary login is a valid email and try again. You can add your phone number as a secondary login.',
hasBeenThrottledError: ({fromNow}) => `For security reasons, we're taking a break from bank account setup so you can double-check your company information. Please try again ${fromNow}. Sorry!`,
buttonConfirm: 'Got it',
diff --git a/src/languages/es.js b/src/languages/es.js
index 99b3b7ceb785..8386f878938f 100644
--- a/src/languages/es.js
+++ b/src/languages/es.js
@@ -384,6 +384,7 @@ export default {
toGetStarted: 'Para comenzar con la tarjeta Expensify, primero debe agregar una cuenta bancaria.',
plaidBodyCopy: 'Ofrezca a sus empleados una forma más sencilla de pagar - y recuperar - los gastos de la empresa.',
checkHelpLine: 'Su número de ruta y número de cuenta se pueden encontrar en un cheque de la cuenta bancaria.',
+ validateAccountError: 'Para terminar de configurar tu cuenta bancaria, debes validar tu cuenta de Expensify. Por favor revisa tu correo electrónico para validar tu cuenta y regresa aquí para continuar.',
hasPhoneLoginError: 'Para agregar una cuenta bancaria verificada, asegúrate de que tu nombre de usuario principal sea un correo electrónico válido y vuelve a intentarlo. Puedes agregar tu número de teléfono como nombre de usuario secundario.',
hasBeenThrottledError: ({fromNow}) => `Por razones de seguridad, nos tomamos un descanso en la configuración de la cuenta bancaria para que pueda verificar la información de su empresa. Inténtalo de nuevo ${fromNow}. ¡Lo siento!`,
buttonConfirm: 'OK',
diff --git a/src/libs/actions/User.js b/src/libs/actions/User.js
index 799510b06228..faaafe5d1b5b 100644
--- a/src/libs/actions/User.js
+++ b/src/libs/actions/User.js
@@ -80,7 +80,8 @@ function getUserDetails() {
// Update the User onyx key
const loginList = _.where(response.loginList, {partnerName: 'expensify.com'});
const expensifyNewsStatus = lodashGet(response, 'account.subscribed', true);
- Onyx.merge(ONYXKEYS.USER, {loginList, expensifyNewsStatus: !!expensifyNewsStatus});
+ const validatedStatus = lodashGet(response, 'account.validated', false);
+ Onyx.merge(ONYXKEYS.USER, {loginList, expensifyNewsStatus: !!expensifyNewsStatus, validated: !!validatedStatus});
// Update the nvp_payPalMeAddress NVP
const payPalMeAddress = lodashGet(response, `nameValuePairs.${CONST.NVP.PAYPAL_ME_ADDRESS}`, '');
diff --git a/src/pages/ReimbursementAccount/BankAccountStep.js b/src/pages/ReimbursementAccount/BankAccountStep.js
index 70e2896bb8c4..e0b446623d74 100644
--- a/src/pages/ReimbursementAccount/BankAccountStep.js
+++ b/src/pages/ReimbursementAccount/BankAccountStep.js
@@ -5,7 +5,7 @@ import {withOnyx} from 'react-native-onyx';
import HeaderWithCloseButton from '../../components/HeaderWithCloseButton';
import MenuItem from '../../components/MenuItem';
import {
- Paycheck, Bank, Lock,
+ Paycheck, Bank, Lock, Exclamation,
} from '../../components/Icon/Expensicons';
import styles from '../../styles/styles';
import TextLink from '../../components/TextLink';
@@ -182,7 +182,7 @@ class BankAccountStep extends React.Component {
icon={Bank}
title={this.props.translate('bankAccount.logIntoYourBank')}
onPress={() => setBankAccountSubStep(CONST.BANK_ACCOUNT.SETUP_TYPE.PLAID)}
- disabled={this.props.isPlaidDisabled}
+ disabled={this.props.isPlaidDisabled || !this.props.user.validated}
shouldShowRightIcon
/>
{this.props.isPlaidDisabled && (
@@ -193,9 +193,20 @@ class BankAccountStep extends React.Component {