Feat: Add account validation step to Invoices page#52356
Feat: Add account validation step to Invoices page#52356pecanoro merged 14 commits intoExpensify:mainfrom
Conversation
| Navigation.goBack(); | ||
| Navigation.navigate(navigateBackTo); |
There was a problem hiding this comment.
@getusha This PR is ready for review. I think you might need to test the case I mentioned in our DM.
Also another flow that used VerifyAccountPage and see if there's problem with this goBack here.
There was a problem hiding this comment.
@adamgrzybowski @WojtekBoman I am not sure if this is a best practice for managing the navigation. Should we use dismissModal here?
I see this goBack and navigate pattern in two other places in the app, but not sure
There was a problem hiding this comment.
There is a problem with both dismissModal and goBack for cases where navigateBackTo leads to RHP.
If you look closely at the video for web, you'll see that the overlay doesn't work properly because we close the RHP and immediately open a new one.
To solve this, we can try to replace the validate account flow with the add bank account flow. This way RHP will stay opened the whole time.
Please try this Navigation.navigate(navigateBackTo, CONST.NAVIGATION.TYPE.UP). This should force replace action. You don't need any goBack() and dismissModal() with this solution.
I think it should work with other cases e.g. replacing the whole RHP with central pane but it's something worth checking.
Please let me know if the above works for you. Thanks! 🙇
There was a problem hiding this comment.
Thanks for your advice @adamgrzybowski. I'll give it a try 👍
There was a problem hiding this comment.
It's working well 🚀 . Should be ready for your final review @mountiny
|
After merge main, after I entered the magic code, I got logged out 😂 |
|
go ahead @getusha, the offending PR was reverted |
Reviewer Checklist
Screenshots/VideosAndroid: NativeScreen.Recording.2024-11-14.at.11.25.32.at.night.movAndroid: mWeb ChromeScreen.Recording.2024-11-14.at.11.16.00.at.night.moviOS: NativeScreen.Recording.2024-11-14.at.11.29.34.at.night.moviOS: mWeb SafariScreen.Recording.2024-11-14.at.11.11.34.at.night.movMacOS: Chrome / SafariScreen.Recording.2024-11-14.at.10.55.07.at.night.movMacOS: DesktopScreen.Recording.2024-11-14.at.11.33.07.at.night.mov |
| Navigation.goBack(); | ||
| Navigation.navigate(navigateBackTo); |
There was a problem hiding this comment.
@adamgrzybowski @WojtekBoman I am not sure if this is a best practice for managing the navigation. Should we use dismissModal here?
I see this goBack and navigate pattern in two other places in the app, but not sure
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🚀 Deployed to staging by https://github.com/pecanoro in version: 9.0.65-0 🚀
|
|
🚀 Deployed to production by https://github.com/chiragsalian in version: 9.0.65-5 🚀
|
Explanation of Change
This PR adds validation steps to Invoices page and also fixes some issues left by our previous PR.
Fixed Issues
$ #51166
$ #52336
PROPOSAL: N/A
Tests
More featureand enableInvoicesfeature.Invoicespage and pressAdd bank account.Offline tests
N/A
QA Steps
// TODO: These must be filled out, or the issue title must include "[No QA]."
Same as Tests.
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectiontoggleReportand notonIconClick)src/languages/*files and using the translation methodSTYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.ScrollViewcomponent to make it scrollable when more elements are added to the page.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Android: Native
Screen.Recording.2024-11-15.at.13.35.11.mov
Android: mWeb Chrome
Screen.Recording.2024-11-15.at.13.42.02.mov
iOS: Native
Screen.Recording.2024-11-15.at.13.28.07.mov
iOS: mWeb Safari
Screen.Recording.2024-11-15.at.13.28.48.mov
MacOS: Chrome / Safari
Screen.Recording.2024-11-15.at.13.19.31.mov
MacOS: Desktop
Screen.Recording.2024-11-15.at.13.19.31.mov