-
Notifications
You must be signed in to change notification settings - Fork 2.6k
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
[HOLD for payment 2024-06-13] [$500] Login with edit description does not open edit description page #29115
Comments
Job added to Upwork: https://www.upwork.com/jobs/~017838f4eb8f52a1be |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @abdulrahuman5196 ( |
@m-natarajan can you add |
ProposalPlease re-state the problem that we are trying to solve in this issue.Logging with the edit description/merchant page does open these pages What is the root cause of that problem?in this use effect, we check if the https://github.com/Expensify/App/blob/main/src/pages/EditRequestPage.js#L133-L140 What changes do you think we should make in order to solve the problem?Use the is isLoadingReportData: {
key: ONYXKEYS.IS_LOADING_REPORT_DATA,
}, useEffect(() => {
if (canEdit || isLoadingReportData) {
return;
}
Navigation.isNavigationReady().then(() => {
Navigation.dismissModal();
});
}, [canEdit, isLoadingReportData]); Then show the loading component whenever the report is loading: if (isLoadingReportData) {
return <FullScreenLoadingIndicator />;
} This way the loading indicator will be shown until the results are shown. POCScreen.Recording.2023-10-13.at.12.00.56.PM.mov |
ProposalPlease re-state the problem that we are trying to solve in this issue.Login with edit description deep link does not open edit description page What is the root cause of that problem?App/src/pages/EditRequestPage.js Lines 133 to 140 in c0fe505
we are dismissing modal if canEdit returns to false, by default as the data is loading, it return as false as the report object and parentreport object is empty What changes do you think we should make in order to solve the problem?We should change the use effect to this, also add report id in the dependncy array to re run the use effect once the report id changes as with the above proposal this condition will always returns false as by default report obect or parent report objcet will be null and the below code will never be executed. useEffect(() => {
if (canEdit || !report.reportID) ) {
return;
}
Navigation.isNavigationReady().then(() => {
Navigation.dismissModal();
});
}, [canEdit,report.reportID]); What alternative solutions did you explore? (Optional)N/A |
POC was added here |
#28645 this PR got merged today which does have some issues which is a blocker for re-producing this issue. We can put this on-hold for till that completed. |
ProposalPlease re-state the problem that we are trying to solve in this issue.Logging with the edit description/merchant page does open these pages What is the root cause of that problem?The problem is here, we'll close the modal as soon as What changes do you think we should make in order to solve the problem?Checking if report is empty or We should connect to
We need to connect What alternative solutions did you explore? (Optional)IMO we should check both report loading and transaction loading for maximum safety, but if we want to omit the report loading check, we can try that along with rigorous testing. |
Triggered auto assignment to @kevinksullivan ( |
Bug0 Triage Checklist (Main S/O)
|
@abzokhattab @saranshbalyan-1234 @b4s36t4 @dukenv0307 We should fix this how TasK description works. Like it shows loading indicator until data is loaded then proceeds with showing the screen. Screen.Recording.2023-10-13.at.1.07.23.PM.mov |
@abdulrahuman5196 how you want it be handled, any suggestions? |
ProposalPlease re-state the problem that we are trying to solve in this issue.Login with edit description does not open edit description page What is the root cause of that problem?There's no report data available after login, causing the modal's rendering condition to be falsy which makes modal to close automatically. What changes do you think we should make in order to solve the problem?Proposal Update
We should wrap the the component with HOC we already have With wrapping To resolve this following are the options.
Code for option-2 const isTransactionLoading = _.isEmpty(transaction) || lodashGet(transaction, ['comment', 'isLoading'], false);
useEffect(() => {
if (isTransactionLoading) {
return;
}
// Do not dismiss the modal, when a current user can edit this property of the money request.
if (ReportUtils.canEditFieldOfMoneyRequest(parentReportAction, parentReport.reportID, fieldToEdit)) {
return;
}
// Dismiss the modal when a current user cannot edit a money request.
Navigation.isNavigationReady().then(() => {
Navigation.dismissModal();
});
}, [parentReportAction, parentReport.reportID, fieldToEdit, isTransactionLoading]);
What alternative solutions did you explore? (Optional)NA |
Proposal is updated @abdulrahuman5196 .. now the loading indactor is shown while the page is loading , please check the POC |
@kevinksullivan, @abdulrahuman5196 Whoops! This issue is 2 days overdue. Let's get this updated quick! |
@b4s36t4 I tried your 3 rd option
It shows loading and proper open. But it doesn't show the existing description and always shows up empty? I assume it should be the case for other options as well. We should fix that as well IMO . |
Yes, there are some other changes might require to complete things correctly. Would you want me to update my proposal to cover all things using the third Option? |
📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸 |
@abdulrahuman5196 sorry, what do you mean by "could have issues", can you give a specific case where it doesn't work as expected. Thank you! |
📣 @abdulrahuman5196 🎉 An offer has been automatically sent to your Upwork account for the Reviewer role 🎉 Thanks for contributing to the Expensify app! |
📣 @dukenv0307 🎉 An offer has been automatically sent to your Upwork account for the Contributor role 🎉 Thanks for contributing to the Expensify app! Offer link |
📣 @dhanashree-sawant 🎉 An offer has been automatically sent to your Upwork account for the Reporter role 🎉 Thanks for contributing to the Expensify app! |
@robertjchen But he just gave the proposal to show the editor view only, but it doesn't contain the fix/root cause to show loader while transaction is loading. I was the first to find the both root causes (loader for report & loading state for transaction). I request you to re-consider. |
@abdulrahuman5196 The PR is ready for review |
Hi @b4s36t4, Thank you for raising the concern. |
This issue has not been updated in over 15 days. @robertjchen, @kevinksullivan, @abdulrahuman5196, @dukenv0307 eroding to Monthly issue. P.S. Is everyone reading this sure this is really a near-term priority? Be brave: if you disagree, go ahead and close it out. If someone disagrees, they'll reopen it, and if they don't: one less thing to do! |
Its in PR state. Seems we hit a blocker. Will check and update on that soon. |
@robertjchen, @kevinksullivan, @abdulrahuman5196, @dukenv0307, this Monthly task hasn't been acted upon in 6 weeks; closing. If you disagree, feel encouraged to reopen it -- but pick your least important issue to close instead. |
@kevinksullivan PLease re-open this issue. |
Waiting review from @abdulrahuman5196. @kevinksullivan Can you please add |
If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results. If a regression has occurred and you are the assigned CM follow the instructions here. If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future. |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.4.79-11 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue: If no regressions arise, payment will be issued on 2024-06-13. 🎊 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:
|
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.3.79-3
Reproducible in staging?: Yes
Reproducible in production?: Yes
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: @dhanashree-sawant
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1696834330715939
Action Performed:
Expected Result:
After we login, app should open URL which we use before login
Actual Result:
After we login, app does not open edit description URL that we used before login
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Android: Native
Android: mWeb Chrome
android.chrome.login.with.edit.description.does.not.open.edit.mp4
iOS: Native
iOS: mWeb Safari
ios.safari.login.with.edit.description.does.not.open.mov
MacOS: Chrome / Safari
mac.chrome.login.with.edit.description.does.not.open.mov
edit.description.mp4
MacOS: Desktop
View all open jobs on GitHub
Upwork Automation - Do Not Edit
Issue Owner
Current Issue Owner: @kevinksullivanThe text was updated successfully, but these errors were encountered: