diff --git a/android/app/build.gradle b/android/app/build.gradle
index e82d8fc9f2b1..e5ebd2554c17 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -148,8 +148,8 @@ android {
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
multiDexEnabled rootProject.ext.multiDexEnabled
- versionCode 1001006301
- versionName "1.0.63-1"
+ versionCode 1001006302
+ versionName "1.0.63-2"
}
splits {
abi {
diff --git a/ios/ExpensifyCash/Info.plist b/ios/ExpensifyCash/Info.plist
index 2b219b6fa156..6464fb571ac9 100644
--- a/ios/ExpensifyCash/Info.plist
+++ b/ios/ExpensifyCash/Info.plist
@@ -30,7 +30,7 @@
CFBundleVersion
- 1.0.63.1
+ 1.0.63.2
ITSAppUsesNonExemptEncryption
LSApplicationQueriesSchemes
diff --git a/ios/ExpensifyCashTests/Info.plist b/ios/ExpensifyCashTests/Info.plist
index 2f74c0ae34f6..dbe46c7410e2 100644
--- a/ios/ExpensifyCashTests/Info.plist
+++ b/ios/ExpensifyCashTests/Info.plist
@@ -19,6 +19,6 @@
CFBundleSignature
????
CFBundleVersion
- 1.0.63.1
+ 1.0.63.2
diff --git a/package-lock.json b/package-lock.json
index aff785b05177..5f69b6ce1313 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "expensify.cash",
- "version": "1.0.63-1",
+ "version": "1.0.63-2",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@@ -23126,7 +23126,8 @@
"ini": {
"version": "1.3.8",
"resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
- "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew=="
+ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==",
+ "dev": true
},
"inline-style-parser": {
"version": "0.1.1",
diff --git a/package.json b/package.json
index 16eaff106e2b..b714e1373481 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "expensify.cash",
- "version": "1.0.63-1",
+ "version": "1.0.63-2",
"author": "Expensify, Inc.",
"homepage": "https://expensify.cash",
"description": "Expensify.cash is the next generation of Expensify: a reimagination of payments based atop a foundation of chat.",
diff --git a/src/languages/en.js b/src/languages/en.js
index da87f117e21b..acb1a603eb12 100755
--- a/src/languages/en.js
+++ b/src/languages/en.js
@@ -199,6 +199,7 @@ export default {
payPalMe: 'PayPal.me/',
yourPayPalUsername: 'Your PayPal username',
addPayPalAccount: 'Add PayPal Account',
+ growlMessageOnSave: 'Your PayPal username was successfully added',
},
preferencesPage: {
mostRecent: 'Most Recent',
diff --git a/src/pages/settings/PaymentsPage.js b/src/pages/settings/PaymentsPage.js
index 9a9df206ce2b..1f6427f667e8 100755
--- a/src/pages/settings/PaymentsPage.js
+++ b/src/pages/settings/PaymentsPage.js
@@ -15,6 +15,7 @@ import styles from '../../styles/styles';
import withLocalize, {withLocalizePropTypes} from '../../components/withLocalize';
import compose from '../../libs/compose';
import Button from '../../components/Button';
+import Growl from '../../libs/Growl';
const propTypes = {
/** Username for PayPal.Me */
@@ -54,6 +55,7 @@ class PaymentsPage extends React.Component {
*/
setPayPalMeUsername() {
NameValuePair.set(CONST.NVP.PAYPAL_ME_ADDRESS, this.state.payPalMeUsername, ONYXKEYS.NVP_PAYPAL_ME_ADDRESS);
+ Growl.show(this.props.translate('paymentsPage.growlMessageOnSave'), CONST.GROWL.SUCCESS, 3000);
}
render() {
@@ -74,14 +76,18 @@ class PaymentsPage extends React.Component {
{this.props.translate('paymentsPage.payPalMe')}
this.setState({payPalMeUsername: text})}
+ editable={!this.props.payPalMeUsername}
/>