-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
[Search v2.1] Keep user on search page if expense is created from Search page #47721
[Search v2.1] Keep user on search page if expense is created from Search page #47721
Conversation
@ikevin127 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] |
Reviewer Checklist
Screenshots/VideosAndroid: Nativeandroid.webmAndroid: mWeb Chromeandroid-mweb.webmiOS: Nativeios.mp4iOS: mWeb Safariios-mweb.mp4MacOS: Chrome / Safariweb.movMacOS: Desktopdesktop.mov |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! NAB should we add isSearchTopmostCentralPane
directly into dismissModal
? That way we don't need to make the changes everywhere.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🟢 LGTM, tests well on all platforms!
I think the ❌ Jest Unit Tests
failing are not related to this PR as I've seen the tests failing on other PRs as well, but I might be wrong.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@luacmartins We might want to HOLD on merge to address #47179 (comment) if you think it's within scope for this PR. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@adamgrzybowski it seems like the jest failures are related to this PR. I see several of these in the logs:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's fix the failing tests
This comment was marked as outdated.
This comment was marked as outdated.
@adamgrzybowski Thanks for addressing the report fields issue 🚀 Tests well, fixed the issue: Video[| Before | After | Screen.Recording.2024-08-22.at.12.14.25.mov🟢 Approved once again, ready to merge once the failing tests are addressed 👍 |
CC: @Expensify/design if you want eyes on this one! :) |
@luacmartins tests should be fixed |
🧪🧪 Use the links below to test this adhoc build on Android, iOS, Desktop, and Web. Happy testing! 🧪🧪 |
This definitely keeps you on the Search page after you make the expense, but I had to refresh the page to actually see the new expense I just created. Is there a way to make that happen automatically? And bonus - can we somehow highlight (animate or slide) the new expense so it's super obvious it was just added? |
The only way to do that with the search design we have is to trigger another API request which would refresh the search page, since we don't optimistically add/update/delete data in search. So we can trigger the additional request, but that would trigger a loading skeleton, so no animation. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
I'll merge this PR as is. I'll add the comments above to the issue. |
✋ 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/luacmartins in version: 9.0.25-0 🚀
|
1 similar comment
🚀 Deployed to staging by https://github.com/luacmartins in version: 9.0.25-0 🚀
|
Details
We check what is the topmost central pane to decide if we want to dismiss with
reportID
or undefined.We want to stay on search if this is the topmost central pane page.
Fixed Issues
$ #47179
PROPOSAL:
Tests
Offline tests
QA Steps
1 Make sure that you are on the inbox tab (you can see a report or report list)
2. Press the + button.
3. Split expense
4. Press the "next" button
5. Select a person and press the "next" button
6. Press the "split" button
7. RHP is closed and you are on the report screen. 🟢
1 Make sure that you are on the search tab
2. Press the + button.
3. Split expense
4. Press the "next" button
5. Select a person and press the "next" button
6. Press the "split" button
7. RHP is closed and you are still on the search page. 🟢
You should test different IOU types e.g. "Track expense", "Submit expense" etc.
PR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)myBool && <MyComponent />
.src/languages/*
files and using the translation methodSTYLE.md
) were followedAvatar
, I verified the components usingAvatar
are working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)Design
label and/or tagged@Expensify/design
so the design team can review the changes.ScrollView
component to make it scrollable when more elements are added to the page.main
branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTest
steps.Screenshots/Videos
Android: Native
android.mp4
Android: mWeb Chrome
androidWeb.mp4
iOS: Native
ios.mp4
iOS: mWeb Safari
iosWeb.mp4
MacOS: Chrome / Safari
web.mp4
MacOS: Desktop
desktop.mp4