-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor/36648 wallet enablement flow #39038
Refactor/36648 wallet enablement flow #39038
Conversation
src/pages/EnablePayments/AddBankAccount/substeps/Confirmation.tsx
Outdated
Show resolved
Hide resolved
Bug: On plaid exit flow it turns to infinite loading, I think we should take user back to the method selection screen. Screen.Recording.2024-04-03.at.09.37.30.mov |
Bug: Post adding the account successfully we show the additional details screen at the moment in main branch, but with this PR it doesn't show automatically and the user needs to click again on Enable Wallet. Staging Screen.Recording.2024-04-03.at.15.15.29.movThis PR Screen.Recording.2024-04-03.at.09.36.22.mov |
@shawnborton @Pujan92 shouldn't we go straight to the Additional Details Steps in the new flow? Should we leave the flow and resume it after Enable Wallet is clicked like is it now and @Pujan92 mentions? |
@@ -62,6 +62,9 @@ type AddPlaidBankAccountProps = AddPlaidBankAccountOnyxProps & { | |||
/** Is displayed in new VBBA */ | |||
isDisplayedInNewVBBA?: boolean; | |||
|
|||
/** Is displayed in new enable wallet flow */ | |||
isNewWalletFlow?: boolean; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
isNewWalletFlow?: boolean; | |
isDisplayedInWalletFlow?: boolean; |
How about making the name similar to isDisplayedInNewVBBA
<Section | ||
icon={Illustrations.MoneyWings} | ||
title={translate('walletPage.addYourBankAccount')} | ||
titleStyles={[styles.textXLarge]} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
titleStyles={[styles.textXLarge]} | |
titleStyles={[styles.textHeadlineLineHeightXXL]} |
I think we can use the already defined textHeadlineLineHeightXXL
here
// To allow upgrading to a gold wallet, continue with the KYC flow after adding a bank account | ||
BankAccounts.setPersonalBankAccountContinueKYCOnSuccess(ROUTES.SETTINGS_WALLET); | ||
}} | ||
onSelectPaymentMethod={() => Navigation.navigate(ROUTES.SETTINGS_ADD_BANK_ACCOUNT)} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure why we need this change?
@koko57 I am referring to the old flow here, there is an inconsistency between the main branch and this PR. I just added a recording of staging here to differentiate where the additional details screen opens automatically once we click on the Continue button in the success screen. |
@Pujan92 ah, ok, now I get it - sorry for the misunderstanding. Thanks! |
@Pujan92 all issues fixed |
Reviewer Checklist
Screenshots/VideosAndroid: Nativeabc1.webmAndroid: mWeb Chromeabc2.webmiOS: NativeSimulator.Screen.Recording.-.iPhone.15.Pro.-.2024-04-03.at.21.33.11.mp4iOS: mWeb SafariSimulator.Screen.Recording.-.iPhone.15.Pro.-.2024-04-03.at.21.36.38.mp4MacOS: DesktopScreen.Recording.2024-04-03.at.21.52.10.mov |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, Thanks :)
Any more feedback from the @Expensify/design team on this one? It wont be used in the App straight away so not big pressure |
Design-wise this looks good to me! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thank you for the quick review and work here everyone, we can continue onto the next part
@@ -82,6 +86,23 @@ function openPersonalBankAccountSetupView(exitReportID?: string) { | |||
}); | |||
} | |||
|
|||
/** | |||
* TODO: remove the previous function and rename this function to openPersonalBankAccountSetupView after migrating to the new flow |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
NAB: Usually its a good practice to add a link to the issue where we are already going to do this too, so the main issue would work here
🚀 Deployed to staging by https://github.com/mountiny in version: 1.4.61-0 🚀
|
🚀 Deployed to staging by https://github.com/mountiny in version: 1.4.61-0 🚀
|
🚀 Deployed to production by https://github.com/Julesssss in version: 1.4.61-8 🚀
|
Details
First draft PR for the refactor - it contains the changes for the first step of the flow - add your bank account.
Fixed Issues
$ #36648
PROPOSAL: -
Tests
Prerequisites: in settings/about/troubleshoot you should enable Use Staging Server if testing locally
Mobile: run
npx uri-scheme open new-expensify://settings/wallet/add-bank-account-refactor --android
or
npx uri-scheme open new-expensify://settings/wallet/add-bank-account-refactor --ios
Desktop:
typedeep links are not working properly for nested routesnew-expensify://settings/wallet/add-bank-account-refactor
in your browser's searchbar (with app opened)Offline tests
QA Steps
Prerequisites: in settings/about/troubleshoot you should enable Use Staging Server if testing locally
Mobile: run
npx uri-scheme open new-expensify://settings/wallet/add-bank-account-refactor --android
or
npx uri-scheme open new-expensify://settings/wallet/add-bank-account-refactor --ios
Desktop: type
new-expensify://settings/wallet/add-bank-account-refactor
in your browser's searchbar (with app opened)PR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)myBool && <MyComponent />
.src/languages/*
files and using the translation methodWaiting for Copy
label for a copy review on the original GH to get the correct copy.STYLE.md
) were followedAvatar
, I verified the components usingAvatar
are working as expected)/** comment above it */
this
are necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);
ifthis.submit
is never passed to a component event handler likeonClick
)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)Design
label so the design team can review the changes.ScrollView
component to make it scrollable when more elements are added to the page.main
branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTest
steps.Screenshots/Videos
Android: Native
Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-04-02.at.14.19.43.mp4
Android: mWeb Chrome
Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-04-02.at.14.49.34.mp4
iOS: Native
Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-04-02.at.14.19.43.mp4
iOS: mWeb Safari
Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-04-02.at.14.49.34.mp4
MacOS: Chrome / Safari
Screen.Recording.2024-04-02.at.16.06.14.mp4
MacOS: Desktop
weren't able to test desktop - deep links are not working for nested routes