-
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
Fix route in distance editor doesn't load after fresh sign in #45139
Fix route in distance editor doesn't load after fresh sign in #45139
Conversation
@thesahindia 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: NativeScreen.Recording.2024-07-10.at.8.57.24.PM.movAndroid: mWeb ChromeScreen.Recording.2024-07-10.at.8.48.53.PM.moviOS: NativeScreen.Recording.2024-07-10.at.9.14.28.PM.moviOS: mWeb SafariSimulator.Screen.Recording.-.iPhone.15.Pro.-.2024-07-10.at.21.10.26.mp4MacOS: Chrome / SafariScreen.Recording.2024-07-10.at.7.33.04.PM.movMacOS: DesktopScreen.Recording.2024-07-10.at.7.27.21.PM.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.
Looks good!
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.
Looks great, just one small defensive change I would like to see.
@@ -90,7 +90,7 @@ function IOURequestStepDistance({ | |||
const previousValidatedWaypoints = usePrevious(validatedWaypoints); | |||
const haveValidatedWaypointsChanged = !isEqual(previousValidatedWaypoints, validatedWaypoints); | |||
const isRouteAbsentWithoutErrors = !hasRoute && !hasRouteError; | |||
const shouldFetchRoute = (isRouteAbsentWithoutErrors || haveValidatedWaypointsChanged) && !isLoadingRoute && Object.keys(validatedWaypoints).length > 1; | |||
const shouldFetchRoute = (!transaction?.routes || isRouteAbsentWithoutErrors || haveValidatedWaypointsChanged) && !isLoadingRoute && Object.keys(validatedWaypoints).length > 1; |
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 be a bit more precise with this to guard against weird edge cases that might arise. Let's look for (transaction?.routes?.route0?.coordinates ?? []).length
or something similar.
✋ 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/neil-marcellini in version: 9.0.7-3 🚀
|
🚀 Cherry-picked to staging by https://github.com/thienlnam in version: 9.0.7-4 🚀
@Expensify/applauseleads please QA this PR and check it off on the deploy checklist if it passes. |
🚀 Deployed to production by https://github.com/thienlnam in version: 9.0.7-8 🚀
|
🚀 Deployed to production by https://github.com/mountiny in version: 9.0.8-6 🚀
|
Details
The route coordinate is only saved locally retrieved from GetRoute API. When we log out, the coordinate data is lost, so reopening the distance page won't show the coordinate. This PR fix it by refetching the routes when the routes is empty.
Fixed Issues
$ #44156
PROPOSAL: #44156 (comment)
Tests
Same as QA Steps
Offline tests
Same as QA Steps
QA Steps
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
iOS: Native
ios.mp4
iOS: mWeb Safari
ios.mweb.mp4
MacOS: Chrome / Safari
web.mp4
MacOS: Desktop
desktop.mp4