Closed m-natarajan closed 1 week ago
Triggered auto assignment to @joekaufmanexpensify (Bug
), see https://stackoverflow.com/c/expensify/questions/14418 for more details. Please add this bug to a GH project, as outlined in the SO.
@joekaufmanexpensify FYI I haven't added the External label as I wasn't 100% sure about this issue. Please take a look and add the label if you agree it's a bug and can be handled by external contributors
Hold request education modal opens on the top left.
We use Popover
component here to show ProcessMoneyRequestHoldMenu
so it doesn't show in RHP
We should use Modal
component instead of Popover
<Modal
type={CONST.MODAL.MODAL_TYPE.RIGHT_DOCKED}
isVisible={isVisible}
onClose={onClose}
onModalHide={onClose}
hideModalContentWhileAnimating
useNativeDriver
shouldUseModalPaddingStyle={false}
>
NA
On web, when using new search - Hold request education modal opens on the top left.
shouldUseNarrowLayout
becomes true when isReportOpenInRHP
is true.
This leads to ProcessMoneyRequestHoldMenu
being used in MoneyRequestHeader when the report is opened in RHP, while we should be navigating to PROCESS_MONEY_REQUEST_HOLD
on web like it is being done when the report is normally opened.
The ProcessMoneyRequestHoldMenu
is designed for small screen devices, it shouldn't be used on web.
Use isSmallScreenWidth
instead of shouldUseNarrowLayout
.
{(isSmallScreenWidth) && shouldShowHoldMenu && (
<ProcessMoneyRequestHoldMenu
onClose={handleHoldRequestClose}
onConfirm={handleHoldRequestClose}
isVisible={shouldShowHoldMenu}
/>
)}
We also need to update the useEffect
to check isSmallScreenWidth
and navigate based on that.
useEffect(() => {
if (!shouldShowHoldMenu) {
return;
}
if (isSmallScreenWidth) {
if (Navigation.getActiveRoute().slice(1) === ROUTES.PROCESS_MONEY_REQUEST_HOLD) {
Navigation.goBack();
}
} else {
Navigation.navigate(ROUTES.PROCESS_MONEY_REQUEST_HOLD);
}
}, [isSmallScreenWidth, shouldShowHoldMenu]);
This fixes the issue on web + makes sure that the hold education UI doesn't change on mobile.
Will triage today
Hold request education modal opens on the top left
Let's make sure about something first, we are here talking about two components:
This component is designed to be displayed only on small screens, it replace the Right Hand Panel educational window on scmall screens.
This is the Right Hand Panel educational component. it's displayed only on large screens.
On the "New Search Page" when we open a report with a hold from Right Hand Panel.
On ReportScreen, the value shouldUseNarrowLayout
is true
because isSmallScreenWidth
is false but isReportOpenInRHP
is true, so shouldUseNarrowLayout
is true.
This value shouldUseNarrowLayout
is true will be used here
where it should be opened only on small screens, it's now open when the report is on Right Hand Panel because the condition isSmallScreenWidth || isReportOpenInRHP
We should not allow ProcessMoneyRequestHoldMenu to be displayed on Right Hand Panel and fix the value here https://github.com/Expensify/App/blob/97097ff13b086c3d44d26d44335921323b211669/src/components/MoneyRequestHeader.tsx#L249-L255
We can use isSmallScreenWidth
instead of shouldUseNarrowLayout
We need to allow ProcessMoneyRequestHoldPage
to be displayed on Right Hand Panel
We can use isSmallScreenWidth
instead of shouldUseNarrowLayout
here
https://github.com/Expensify/App/blob/97097ff13b086c3d44d26d44335921323b211669/src/components/MoneyRequestHeader.tsx#L162-L169
https://github.com/Expensify/App/assets/12425932/046f2635-725b-4943-85d7-db0a05962b80
Job added to Upwork: https://www.upwork.com/jobs/~01c80194fe29f72a2f
Triggered auto assignment to Contributor-plus team member for initial proposal review - @rojiphil (External
)
waiting for review of proposals
Thanks all for your proposals. @ShridharGoel proposal LGTM as that was the first one to have the correct RCA and solution. πππ C+ reviewed
Triggered auto assignment to @aldo-expensify, see https://stackoverflow.com/c/expensify/questions/7972 for more details.
π£ @rojiphil π An offer has been automatically sent to your Upwork account for the Reviewer role π Thanks for contributing to the Expensify app!
π£ @ShridharGoel π An offer has been automatically sent to your Upwork account for the Contributor role π Thanks for contributing to the Expensify app!
Offer link Upwork job Please accept the offer and leave a comment on the Github issue letting us know when we can expect a PR to be ready for review π§βπ» Keep in mind: Code of Conduct | Contributing π
@ShridharGoel is there an ETA for PR here?
Will open PR today
Great. TY!
PR in review
Reviewing
label has been removed, please complete the "BugZero Checklist".
The solution for this issue has been :rocket: deployed to production :rocket: in version 1.4.77-11 and is now subject to a 7-day regression period :calendar:. Here is the list of pull requests that resolve this issue:
If no regressions arise, payment will be issued on 2024-06-06. :confetti_ball:
For reference, here are some details about the assignees on this issue:
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
@rojiphil could you handle BZ so we can issue payment this week?
bump @rojiphil , we're all set to issue payment here as soon as checklist is done
@joekaufmanexpensify Accepted offer and completed BZ. Thanks
TY!
All set to issue payment. We need to pay:
@rojiphil $250 sent and contract ended!
@ShridharGoel please accept upwork offer so we can pay you
@ShridharGoel $250 sent and contract ended!
All set. Thanks everyone!
If you havenβt already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!
Version Number: 1.4.72-1 Reproducible in staging?: y Reproducible in production?: (this is happening in "test preferences") If this was caught during regression testing, add the test name, ID and link from TestRail: Email or phone of affected tester (no customers): Logs: https://stackoverflow.com/c/expensify/questions/4856 Expensify/Expensify Issue URL: Issue reported by: Applause internal team Slack conversation:
Action Performed:
Precondition:
Expected Result:
Hold request education modal will show up as RHP.
Actual Result:
Hold request education modal opens on the top left.
Workaround:
unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Add any screenshot/video evidence
https://github.com/Expensify/App/assets/38435837/600ff318-996a-4dc1-9a2a-d5877f350cec
View all open jobs on GitHub
Upwork Automation - Do Not Edit
Issue Owner
Current Issue Owner: @joekaufmanexpensify