[Internal QA] Add enable wallet state button if the submitter hasn't completed the kyc#29430
[Internal QA] Add enable wallet state button if the submitter hasn't completed the kyc#29430
Conversation
Deploying with
|
| Latest commit: |
3fdc0df
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://6478cbcd.helpdot.pages.dev |
| Branch Preview URL: | https://techievivek-add-waiting-wall.helpdot.pages.dev |
fedirjh
left a comment
There was a problem hiding this comment.
The code looks good, but it still should be tested. Is there a beta for the gold wallet?
|
@techievivek can you also merge main into this branch? |
I'm testing now. Everyone is on the wallet beta (with a silver wallet) but we do not have the ability to create test gold wallets at the moment. |
|
@techievivek I notice that the send money flow keeps redirecting the payer to the KYC flow even if the payer's wallet is activated: Screen.Recording.2023-10-18.at.3.58.17.PM.mov |
MariaHCD
left a comment
There was a problem hiding this comment.
Noticed a few things:
- We need to direct the user to add a PBA first if they don't have one, this logic is handled by the KYCWall component, I think we should be able to use it here.
- I'm seeing the report action twice and with incorrect messaging:
Payer with gold wallet sees this:
Payee with silver wallet sees this:
|
In the interest of saving time, I've DRY'd some code and added the use of the KYCWall |
|
We still need to:
|
| ) : null} | ||
| )} | ||
| {shouldShowEnableWalletButton && ( | ||
| <KYCWall |
There was a problem hiding this comment.
I believe there may be a console error due to using KYCWall in ReportActionItemBasicMessage. IIRC that was the case when I attempted the same change.
There was a problem hiding this comment.
Testing it, thanks.
There was a problem hiding this comment.
That worked 🎉, but I am curious to learn how it fixed that error? Because there is just a single element right? KYCWall so why do we need a fragment here?
There was a problem hiding this comment.
As ReportActionItemBasicMessage expects only one element, it is necessary to wrap both the "Add Bank" button and the KYCWall with a fragment. Without this fragment, React will treat both elements (the first button and the KYCWall) as an array. It's important to note that even if the { bool && <Component /> } condition evaluates to false, it will still be passed to the parent component as a false value. So, in our case, it's passed as [false, KYCWall]. By wrapping them in a single fragment, it ensures that they are always passed as a single element.
There was a problem hiding this comment.
Interesting, but by just wrapping the KycWall in a fragment it looks like the error is gone, how does that work? Any idea?
There was a problem hiding this comment.
Ah no, the user is alreadt on the gold wallet that's why this condition is not being called.
There was a problem hiding this comment.
The error is still there. What you explained make sense now. Thanks 👍
fedirjh
left a comment
There was a problem hiding this comment.
The code looks good. I just tested some hardcoded values and it seems to be working fine
CleanShot.2023-10-18.at.18.13.08-converted.mp4
| ) : null} | ||
| )} | ||
| {shouldShowEnableWalletButton && ( | ||
| <KYCWall |
Reviewer Checklist
Screenshots/VideosWebScreen.Recording.2023-10-19.at.11.46.58.AM.movScreen.Recording.2023-10-19.at.11.54.57.AM.movMobile Web - ChromeScreen.Recording.2023-10-19.at.11.56.57.AM.movMobile Web - SafariScreen.Recording.2023-10-19.at.12.06.15.PM.movDesktopScreen.Recording.2023-10-19.at.11.55.35.AM.moviOSScreen.Recording.2023-10-19.at.12.08.33.PM.movAndroidScreen.Recording.2023-10-19.at.12.51.13.PM.mov |
|
LGTM, we're going to address polish items in follow up PRs. Please final review, @fedirjh 🙏🏼 |
fedirjh
left a comment
There was a problem hiding this comment.
Looks good to me, just one little change and should be ready to get merged.
| /> | ||
| ) : null} | ||
| )} | ||
| <> |
There was a problem hiding this comment.
This fragment should wrap both elements, the button and the KYCWall.
|
@thienlnam Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
|
✋ 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/MariaHCD in version: 1.3.88-0 🚀
|
|
🚀 Deployed to production by https://github.com/chiragsalian in version: 1.3.88-11 🚀
|
| duplicateWaypointsErrorMessage: 'Por favor elimina los puntos de ruta duplicados', | ||
| emptyWaypointsErrorMessage: 'Por favor introduce al menos dos puntos de ruta', | ||
| }, | ||
| waitingOnEnabledWallet: ({submitterDisplayName}: WaitingOnBankAccountParams) => `nicio el pago, pero no se procesará hasta que ${submitterDisplayName} active su Billetera`, |
There was a problem hiding this comment.
@techievivek this should be Inició or inició, can you submit a PR to update please?




Details
If there are queued reimbursements for the user and if they are on silver wallet then let's show an enable wallet button that will allow the user to add the wallet to receive the reimbursements.
Fixed Issues
$ https://github.com/Expensify/Expensify/issues/324579
PROPOSAL:
Tests
enable walletbutton.enable walletbutton and it should open theenable-paymentpage.Offline tests
QA Steps
Same as tests.
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectiontoggleReportand notonIconClick)myBool && <MyComponent />.src/languages/*files and using the translation methodWaiting for Copylabel for a copy review on the original GH to get the correct copy.STYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)/** comment above it */thisproperly so there are no scoping issues (i.e. foronClick={this.submit}the methodthis.submitshould be bound tothisin the constructor)thisare necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);ifthis.submitis never passed to a component event handler likeonClick)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))Avataris modified, I verified thatAvataris working as expected in all cases)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
MacOS: Chrome / Safari
Screen.Recording.2023-10-17.at.10.52.27.PM.mov
Android: Native
Android: mWeb Chrome
iOS: Native
iOS: mWeb Safari
MacOS: Desktop