-
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
[HOLD for payment 2023-09-29] [HOLD on #27729] [$500] Dev: Web - "No results found" shown after selecting a new user in split bill #27658
Comments
Job added to Upwork: https://www.upwork.com/jobs/~01b200e8e764e35545 |
Triggered auto assignment to @johncschuster ( |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @parasharrajat ( |
Proposal by Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1694878264647479 ProposalPlease re-state the problem that we are trying to solve in this issue.“No results found” header message shown when clicking on split on a new user in request money What is the root cause of that problem?We are not passing here App/src/pages/iou/steps/MoneyRequstParticipantsPage/MoneyRequestParticipantsSelector.js Lines 199 to 204 in 76c1559
hasMatchedParticipant and the default for this is false and the headerMessage “No results found” appears when the string is a valid email or phone and there are no users to invite nor selectable options.App/src/libs/OptionsListUtils.js Line 1288 in 76c1559
What changes do you think we should make in order to solve the problem?We should add here App/src/pages/iou/steps/MoneyRequstParticipantsPage/MoneyRequestParticipantsSelector.js Line 204 in 76c1559
this check to pass true if the search string matches a participant
_.some(participants, (participant) => participant.login === searchTerm.trim().toLowerCase()), As an aside App/src/pages/iou/steps/MoneyRequstParticipantsPage/MoneyRequestParticipantsSelector.js Line 202 in 76c1559
to ensure that “Invalid Email” error is not shown when we add some leading spaces to the email being searched. If we don’t trim, we will get an error “Invalid Email” even though an option appeared and selected with the email. What alternative solutions did you explore? (Optional)For ease and not to miss any cases we might use a variable called trimmedSearchTerm = searchTerm.toLowerCase(); and use this at all places where |
Posting my proposal with slight change. ProposalPlease re-state the problem that we are trying to solve in this issue.“No results found” header message shown when clicking on split on a new user in request money What is the root cause of that problem?We are not passing here App/src/pages/iou/steps/MoneyRequstParticipantsPage/MoneyRequestParticipantsSelector.js Lines 199 to 204 in 76c1559
hasMatchedParticipant and the default for this is false and the headerMessage “No results found” appears when the string is a valid email or phone and there are no users to invite nor selectable options.App/src/libs/OptionsListUtils.js Line 1288 in 76c1559
What changes do you think we should make in order to solve the problem?We should add here App/src/pages/iou/steps/MoneyRequstParticipantsPage/MoneyRequestParticipantsSelector.js Line 204 in 76c1559
this check to pass true if the search string matches a participant
_.some(participants, (participant) => participant.login.includes(searchTerm.trim().toLowerCase())), As an aside App/src/pages/iou/steps/MoneyRequstParticipantsPage/MoneyRequestParticipantsSelector.js Line 202 in 76c1559
to ensure that “Invalid Email” error is not shown when we add some leading spaces to the email being searched. If we don’t trim, we will get an error “Invalid Email” even though an option appeared and selected with the email. What alternative solutions did you explore? (Optional)For ease and not to miss any cases we might use a variable called trimmedSearchTerm = searchTerm.toLowerCase(); and use this at all places where |
ProposalPlease re-state the problem that we are trying to solve in this issue.While user requesting money by using Manual option and trying to enter partial user's email who is new to Expensify, a no results found message is being shown to the user. The issue here is the search term is not empty and the search term is not either a valid email or phone. The default message "no results found" is showing as per the current behaviour. What is the root cause of that problem?The default message "no results found" is showing as per the current behaviour.
What changes do you think we should make in order to solve the problem?By default, we should return an empty error message if the user's searchTerm is not What alternative solutions did you explore? (Optional)remove the line of default error message which is being thrown to the user. So, that, the Reminder: Please use plain English, be brief and avoid jargon. Feel free to use images, charts or pseudo-code if necessary. Do not post large multi-line diffs or write walls of text. Do not create PRs unless you have been hired for this job. |
📣 @Abdulloh007! 📣
|
Contributor details I think when the split button is pressed, you cut the user from the list of results to the list of selected ones, and at this moment the list of results becomes empty and the condition under which the message should be displayed works. if (searchValue && !hasSelectableOptions && !hasUserToInvite) |
I check it twice with react dev tools and I'm right) |
|
@johncschuster This seems like expected behavior to me. It is the same as other pages like the New Group page. Do you think we should change this? If yes, to what behaviour? @shawnborton Could you please help us determine the best action here? 🙇 |
@parasharrajat There is an issue open for group chat as well. |
The group chat issue is really similar so I'm recommending that we fix this issue in the same PR that fixes the group chat issue. |
OK, let's hold this on #27729. The last remaining thing would be just the reporting payment here. I am unassigning. Please ping me if you need a C+. |
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.3.72-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 2023-09-29. 🎊 After the hold period is over and BZ checklist items are completed, please complete any of the applicable payments for this issue, and check them off once done.
For reference, here are some details about the assignees on this issue:
As a reminder, here are the bonuses/penalties that should be applied for any External issue:
|
📣 @c3024 🎉 An offer has been automatically sent to your Upwork account for the Reporter role 🎉 Thanks for contributing to the Expensify app! |
@c3024 can you please ping me once you've accepted the Reporter role? I'll issue payment for the report once you've done that. Thanks! |
Thanks. Accepted. @johncschuster |
Payment has been issued! |
If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!
Action Performed:
Expected Result:
There should not be any header message.
Actual Result:
There is a header message - "No results found"
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Version Number: Dev 1.3.70.5
Reproducible in staging?: n
Reproducible in production?: n
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
Notes/Photos/Videos: Any additional supporting documentation
Screen.Recording.2023-09-16.at.9.02.18.PM.mov
Expensify/Expensify Issue URL:
Issue reported by: @c3024
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1694878264647479
View all open jobs on GitHub
Upwork Automation - Do Not Edit
The text was updated successfully, but these errors were encountered: